:root{
--bg:#FFFBF3;--bg2:#FFF6E4;--pale:#F8E7B8;--title:#1C1608;--text:#3A3120;--muted:#6B5E43;--soft:#8A7B5E;--gold:#D4A017;--bright:#E8C547;--warm:#F0C94A;--deep:#B8860B;--line:rgba(212,160,23,.18);--shadow:0 16px 42px rgba(80,55,10,.10);--footer:#1A1508;--wrap:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;line-height:1.75;overflow-x:hidden;padding-top:126px}body.layer-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto;display:block}.wrap{width:min(calc(100% - 32px),var(--wrap));margin:0 auto}.site-header{position:fixed;inset:0 0 auto 0;z-index:70}.curtain-line{height:20px;background:#2A2110;color:#F8E7B8;font-size:12px}.curtain-inner{height:20px;display:flex;align-items:center;justify-content:space-between}.text-button{border:0;background:transparent;color:#F8E7B8;padding:0 8px;height:20px}.emcee-bar{height:64px;background:rgba(255,251,243,.98);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.emcee-inner{height:64px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}.brand-lockup{justify-self:start;display:inline-flex;align-items:center;min-height:44px}.brand-logo,.footer-logo,.drawer-logo{height:36px;width:auto;max-width:220px;object-fit:contain}.brand-word{font-weight:800;letter-spacing:.08em;font-size:20px;color:var(--title)}.menu-trigger{min-width:96px;height:44px;border:1px solid rgba(184,134,11,.35);background:#FFF6E4;color:var(--title);border-radius:10px;padding:0 18px}.apply-link{justify-self:end;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:10px;background:linear-gradient(135deg,#F0C94A 0%,#D4A017 55%,#B8860B 100%);color:#1C1608;font-weight:800}.sequence-bar{height:42px;background:#F8E7B8;border-bottom:1px solid var(--line)}.sequence-inner{height:42px;display:flex;align-items:center;gap:8px}.sequence-inner a{display:inline-flex;align-items:center;min-height:32px;padding:0 13px;border-radius:8px;color:#3A3120;font-size:14px}.sequence-inner a.is-current{background:#F0C94A;color:#1C1608;font-weight:800}.site-main{min-height:60vh}.hero-section{padding:34px 0 24px}.hero-media{background:var(--bg2);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:12px;display:flex;align-items:center;justify-content:center;min-height:210px;overflow:hidden}.hero-image{width:100%;max-height:300px;object-fit:contain;object-position:center}.hero-fallback{height:260px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#FFF6E4,#F8E7B8);color:var(--title);border-radius:10px}.hero-fallback strong{font-size:32px;letter-spacing:.14em}.hero-fallback span{font-size:13px;letter-spacing:.24em;color:var(--muted)}.hero-copy{max-width:850px;margin:24px 0 0}.eyebrow{font-size:13px;letter-spacing:.18em;color:var(--deep);font-weight:800;text-transform:uppercase}.hero-copy h1,.page-intro h1{font-size:clamp(28px,4vw,32px);line-height:1.22;margin:8px 0 10px;color:var(--title)}.lead{font-size:17px;color:var(--muted);margin:0}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid var(--line);font-weight:800}.btn-primary{background:linear-gradient(135deg,#F0C94A 0%,#D4A017 55%,#B8860B 100%);color:#1C1608;border-color:transparent}.btn-secondary{background:#FFF6E4;color:#3A3120}.section{padding:34px 0}.section-soft{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:18px}.section-head h2{margin:0;color:var(--title);font-size:26px}.section-head p{margin:0;max-width:700px;color:var(--muted)}.ticket-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ticket-card{padding:18px;border:1px solid var(--line);border-radius:12px;background:#FFFDF8;min-height:138px}.ticket-card:nth-child(3n+1){border-top:4px solid var(--warm)}.ticket-card:nth-child(3n+2){border-top:4px solid var(--deep)}.ticket-card:nth-child(3n){border-top:4px solid var(--gold)}.ticket-card h3{margin:0 0 8px;color:var(--title);font-size:18px}.ticket-card p{margin:0;color:var(--muted)}.text-link{display:inline-flex;margin-top:12px;color:#7A5903;font-weight:800}.split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:28px;align-items:center}.split.reverse{grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr)}.media-frame{background:#FFF8E9;border:1px solid var(--line);border-radius:14px;padding:10px;min-height:210px;display:flex;align-items:center;justify-content:center;overflow:hidden}.section-image{width:100%;height:220px;object-fit:contain;object-position:center}.section-image.tall{height:340px}.media-fallback{background:linear-gradient(145deg,#FFF6E4,#F8E7B8);color:var(--muted);display:flex;align-items:center;justify-content:center;text-align:center;padding:24px}.copy h2{margin:0 0 10px;color:var(--title);font-size:26px}.copy h3{margin:22px 0 8px;color:var(--title)}.copy p{margin:0 0 13px}.number-list{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.number-list li{display:flex;gap:14px;align-items:flex-start;background:#FFFDF8;border:1px solid var(--line);border-radius:10px;padding:14px}.number-list b{font-size:20px;color:var(--deep)}.cards-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.content-card{border:1px solid var(--line);border-radius:14px;background:#FFFDF8;overflow:hidden}.content-card .media-frame{border:0;border-bottom:1px solid var(--line);border-radius:0;min-height:180px}.content-card .section-image{height:200px}.card-body{padding:18px}.card-body h3{margin:0 0 8px;color:var(--title)}.card-body p{margin:0;color:var(--muted)}.status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.status-card{padding:18px;border-radius:12px;background:#FFFDF8;border:1px solid var(--line)}.status-card strong{display:block;color:var(--title);margin-bottom:6px}.status-tag{display:inline-flex;margin-top:10px;padding:4px 8px;border-radius:6px;background:#F8E7B8;color:#4D3A08;font-weight:700;font-size:13px}.page-intro{padding:36px 0 22px}.page-intro-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:30px;align-items:center}.page-intro p{margin:8px 0 0;color:var(--muted)}.article-shell{padding:18px 0 46px}.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px}.article-main{min-width:0}.content-section{padding:24px 0;border-bottom:1px solid var(--line)}.content-section:first-child{padding-top:0}.content-section h2{margin:0 0 10px;color:var(--title);font-size:24px}.content-section h3{margin:18px 0 8px;color:var(--title)}.content-section p{margin:0 0 12px}.content-section ul,.content-section ol{margin:10px 0 0;padding-left:1.2em}.content-section li{margin:6px 0}.side-card{position:sticky;top:146px;background:#FFF6E4;border:1px solid var(--line);border-radius:14px;padding:18px;height:max-content}.side-card h2{font-size:18px;margin:0 0 10px}.side-card a{display:block;padding:8px 0;border-bottom:1px solid var(--line);color:#5B4308}.notice-box{background:#FFF6E4;border-left:4px solid var(--gold);padding:16px 18px;border-radius:0 10px 10px 0;margin:16px 0}.stage-index{counter-reset:item;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stage-index article{padding:18px;border:1px solid var(--line);border-radius:12px;background:#FFFDF8}.stage-index article::before{counter-increment:item;content:counter(item,decimal-leading-zero);display:block;font-weight:900;font-size:22px;color:var(--deep);margin-bottom:8px}.stage-index h3{margin:0 0 6px}.timeline{display:grid;gap:12px}.timeline article{display:grid;grid-template-columns:76px 1fr;gap:18px;padding:18px;background:#FFFDF8;border:1px solid var(--line);border-radius:12px}.timeline .num{font-size:28px;color:var(--deep);font-weight:900}.timeline h3{margin:0 0 6px}.faq-list{display:grid;gap:12px}.faq-item{border:1px solid var(--line);border-radius:12px;background:#FFFDF8;padding:18px}.faq-item h2{font-size:19px;margin:0 0 8px}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.contact-card{border:1px solid var(--line);background:#FFFDF8;border-radius:12px;padding:18px}.app-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:center}.app-icon{width:64px;height:64px;object-fit:contain;margin-bottom:12px}.site-footer{background:var(--footer);color:#FFF6E4;border-top:1px solid rgba(240,201,74,.25);padding:42px 0 78px}.footer-grid{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(0,1.7fr);gap:46px}.footer-lockup{display:flex;gap:14px;align-items:center}.footer-logo{height:34px;filter:none}.footer-lockup strong{display:block;color:#FFF6E4}.footer-lockup span{display:block;color:#E8C547;font-size:12px;letter-spacing:.16em}.footer-brand p{color:#DCCFAF}.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.footer-links h2{font-size:14px;color:#E8C547;margin:0 0 10px}.footer-links a{display:block;color:#FFF6E4;padding:4px 0;font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:24px;margin-top:28px;border-top:1px solid rgba(240,201,74,.18);font-size:13px;color:#DCCFAF}.site-overlay{position:fixed;inset:0;background:rgba(26,21,8,.48);z-index:90;opacity:0;visibility:hidden;pointer-events:none;transition:.22s}.site-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}.seat-drawer{position:fixed;z-index:100;top:0;right:0;width:min(390px,86vw);height:100dvh;background:#FFFBF3;box-shadow:-22px 0 60px rgba(40,28,5,.18);transform:translateX(103%);visibility:hidden;pointer-events:none;transition:transform .25s ease,visibility .25s;overflow:auto}.seat-drawer.is-open{transform:translateX(0);visibility:visible;pointer-events:auto}.drawer-head{position:sticky;top:0;background:#FFFBF3;border-bottom:1px solid var(--line);padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:2}.drawer-brand{display:flex;align-items:center;gap:10px}.drawer-logo{height:30px}.drawer-brand strong{display:block}.drawer-brand span{display:block;font-size:10px;letter-spacing:.12em;color:var(--muted)}.close-button{min-height:44px;border:1px solid var(--line);background:#FFF6E4;color:var(--title);border-radius:9px;padding:0 14px}.drawer-groups{padding:14px}.drawer-groups section{background:#FFFDF8;border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:12px}.drawer-groups h2{font-size:14px;color:var(--deep);margin:0 0 6px}.drawer-groups a{display:block;padding:10px 4px;border-bottom:1px solid var(--line)}.drawer-groups a:last-child{border-bottom:0}.drawer-groups strong{display:block;color:var(--title);font-size:15px}.drawer-groups span{display:block;color:var(--muted);font-size:12px;line-height:1.55;margin-top:2px}.search-layer{position:fixed;z-index:105;left:50%;top:94px;width:min(900px,calc(100% - 32px));transform:translate(-50%,-14px);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.search-layer.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.search-card{background:#FFFBF3;border:1px solid var(--line);box-shadow:var(--shadow);padding:20px}.search-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.search-head h2{margin:0;color:var(--title)}.search-card label{display:block;font-weight:800;margin:14px 0 8px}.search-input{width:100%;height:48px;border:1px solid rgba(184,134,11,.35);border-radius:8px;background:white;padding:0 14px;color:var(--title)}.search-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.search-presets a{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;background:#FFF6E4;border:1px solid var(--line);border-radius:8px}.search-note{color:var(--soft);font-size:13px;margin:12px 0 0}.mobile-nav{display:none}a:hover,.btn:hover,.menu-trigger:hover,.close-button:hover{filter:brightness(.97)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(212,160,23,.45);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.cards-4{grid-template-columns:repeat(2,1fr)}.status-grid{grid-template-columns:repeat(2,1fr)}.article-grid{grid-template-columns:1fr}.side-card{position:static}.footer-grid{grid-template-columns:1fr}.page-intro-inner,.app-hero{grid-template-columns:1fr}.split,.split.reverse{grid-template-columns:1fr}.split.reverse .media-frame{order:-1}}
@media(max-width:760px){body{padding-top:84px;padding-bottom:calc(58px + env(safe-area-inset-bottom))}.sequence-bar{display:none}.emcee-inner{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.brand-logo{max-width:150px;height:32px}.brand-word{font-size:17px}.menu-trigger{min-width:80px;padding:0 11px}.apply-link{padding:0 12px}.hero-section{padding-top:22px}.hero-media{min-height:180px;padding:8px}.hero-fallback{height:210px}.hero-fallback strong{font-size:28px}.ticket-grid{grid-template-columns:1fr 1fr}.cards-4,.status-grid,.stage-index,.contact-grid{grid-template-columns:1fr}.section-head{display:block}.section-head p{margin-top:8px}.number-list{grid-template-columns:1fr}.page-intro{padding-top:24px}.page-intro-inner{gap:18px}.section-image{height:210px}.section-image.tall{height:320px}.timeline article{grid-template-columns:54px 1fr;gap:10px}.footer-links{grid-template-columns:repeat(2,1fr)}.footer-bottom{display:block}.footer-bottom a{display:inline-block;margin-top:8px}.site-footer{padding-bottom:80px}.search-layer{top:20px;width:100%;height:calc(100dvh - 20px);transform:none;left:0}.search-layer.is-open{transform:none}.search-card{height:100%;overflow:auto;border-left:0;border-right:0;border-bottom:0}.mobile-nav{position:fixed;z-index:60;left:0;right:0;bottom:0;height:calc(50px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#FFFBF3;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr)}.mobile-nav a{display:flex;align-items:center;justify-content:center;min-height:50px;font-size:13px}.mobile-nav a.is-current{background:#F0C94A;color:#1C1608;font-weight:800}.layer-open .mobile-nav{z-index:50}}
@media(max-width:480px){.wrap{width:min(calc(100% - 32px),var(--wrap))}.curtain-inner{font-size:11px}.ticket-grid{grid-template-columns:1fr}.hero-copy .button-row .btn{width:100%}.footer-links{grid-template-columns:1fr 1fr}.brand-logo{max-width:120px}.apply-link,.menu-trigger{font-size:13px}.hero-copy h1,.page-intro h1{font-size:28px}}

/* 页面结构差异化 */
body[data-page="stage"] .article-main{counter-reset:stageItem;display:grid;grid-template-columns:1fr 1fr;gap:14px}
body[data-page="stage"] .content-section{counter-increment:stageItem;border:1px solid var(--line);background:#FFFDF8;border-radius:12px;padding:20px}
body[data-page="stage"] .content-section::before{content:counter(stageItem,decimal-leading-zero);display:block;font-size:24px;font-weight:900;color:var(--deep);margin-bottom:6px}
body[data-page="roll"] .article-main{display:grid;grid-template-columns:1fr 1fr;gap:12px}
body[data-page="roll"] .content-section{border:1px solid var(--line);border-radius:10px;padding:18px;background:#FFFDF8}
body[data-page="look"] .content-section{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:start}
body[data-page="look"] .content-section h2{font-size:29px;line-height:1.2}
body[data-page="look"] .content-section:nth-child(even){background:#FFF6E4;padding:22px;border-radius:12px;border-bottom:0}
body[data-page="shot"] .article-main{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
body[data-page="shot"] .content-section{border:1px solid var(--line);border-radius:12px;padding:20px;background:linear-gradient(180deg,#FFFDF8,#FFF6E4)}
body[data-page="brief"] .article-main,body[data-page="route"] .article-main,body[data-page="rule"] .article-main,body[data-page="apply"] .article-main{counter-reset:flow}
body[data-page="brief"] .content-section,body[data-page="route"] .content-section,body[data-page="rule"] .content-section,body[data-page="apply"] .content-section{position:relative;padding-left:76px;min-height:92px}
body[data-page="brief"] .content-section::before,body[data-page="route"] .content-section::before,body[data-page="rule"] .content-section::before,body[data-page="apply"] .content-section::before{counter-increment:flow;content:counter(flow,decimal-leading-zero);position:absolute;left:0;top:22px;width:56px;height:56px;display:grid;place-items:center;background:#F8E7B8;border:1px solid var(--line);border-radius:10px;color:var(--deep);font-size:20px;font-weight:900}
body[data-page="folio"] .article-main{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;background:#F8E7B8;padding:14px;border-radius:14px}
body[data-page="folio"] .content-section{background:#FFFBF3;border:1px solid rgba(184,134,11,.22);border-radius:8px;padding:20px;box-shadow:0 8px 22px rgba(80,55,10,.06)}
body[data-page="night"] .content-section,body[data-page="agenda"] .content-section{display:grid;grid-template-columns:190px 1fr;gap:26px;padding:18px 0}
body[data-page="night"] .content-section h2,body[data-page="agenda"] .content-section h2{font-size:20px;color:var(--deep);border-right:1px solid var(--line);padding-right:18px}
body[data-page="notice"] .article-main{display:grid;grid-template-columns:1fr 1fr;gap:14px}
body[data-page="notice"] .content-section{border:1px solid rgba(184,134,11,.28);border-top:5px solid var(--gold);border-radius:8px;padding:18px;background:#FFFDF8}
body[data-page="wing"] .content-section{display:grid;grid-template-columns:170px 1fr;gap:24px;padding:20px;background:#FFFDF8;border:1px solid var(--line);border-radius:10px;margin-bottom:12px}
body[data-page="lesson"] .article-main{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
body[data-page="lesson"] .content-section{padding:18px;border:1px solid var(--line);border-radius:12px;background:#FFFDF8}
body[data-page="view"] .content-section:first-child{font-size:18px;background:#FFF6E4;border:1px solid var(--line);border-radius:14px;padding:24px}
body[data-page="view"] .content-section:not(:first-child){display:grid;grid-template-columns:180px 1fr;gap:22px}
body[data-page="manual"] .article-main{counter-reset:chapter}
body[data-page="manual"] .content-section{counter-increment:chapter;border-left:4px solid var(--gold);padding-left:20px;margin-bottom:10px}
body[data-page="manual"] .content-section h2::before{content:"CH." counter(chapter,decimal-leading-zero) " ";color:var(--deep);font-size:13px;letter-spacing:.12em}
body[data-page="app"] .page-intro-inner{grid-template-columns:minmax(0,1fr) 360px}
body[data-page="app"] .page-intro .section-image{height:400px}
body[data-page="protection"] .content-section,body[data-page="privacy"] .content-section{padding:20px 0 20px 24px;border-left:2px solid var(--gold);border-bottom:0;margin-bottom:8px}
body[data-page="about"] .content-section h2{font-size:28px}
@media(max-width:760px){body[data-page="stage"] .article-main,body[data-page="roll"] .article-main,body[data-page="shot"] .article-main,body[data-page="folio"] .article-main,body[data-page="notice"] .article-main,body[data-page="lesson"] .article-main{grid-template-columns:1fr}body[data-page="look"] .content-section,body[data-page="night"] .content-section,body[data-page="agenda"] .content-section,body[data-page="wing"] .content-section,body[data-page="view"] .content-section:not(:first-child){grid-template-columns:1fr;gap:8px}body[data-page="night"] .content-section h2,body[data-page="agenda"] .content-section h2{border-right:0;border-bottom:1px solid var(--line);padding:0 0 8px}body[data-page="brief"] .content-section,body[data-page="route"] .content-section,body[data-page="rule"] .content-section,body[data-page="apply"] .content-section{padding-left:64px}body[data-page="app"] .page-intro-inner{grid-template-columns:1fr}}
