:root{--bg:#2B2C30;--deep:#1A1B1E;--card:#34363C;--soft:#3E4046;--title:#F2F2F4;--text:#D8D8DC;--muted:#A8A8B0;--quiet:#888890;--gold:#D4B06A;--blue:#7A92B0;--border:rgba(242,242,244,.12);--focus:rgba(212,176,106,.48);--shadow:0 12px 28px rgba(0,0,0,.28);--max:960px}
*{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","Hiragino Sans GB","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.7;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}.topline{position:fixed;z-index:130;top:0;left:0;right:0;height:20px;background:var(--deep);border-bottom:1px solid var(--border);font-size:12px;color:var(--text)}.topline__inner{max-width:var(--max);height:100%;margin:auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between}.plain-btn{border:0;background:transparent;color:var(--text);padding:0 4px;cursor:pointer}.plain-btn:hover,.plain-btn:focus-visible{color:var(--gold)}
.brandbar{position:fixed;z-index:129;top:20px;left:0;right:0;height:54px;background:var(--card);border-bottom:1px solid var(--focus)}.brandbar__inner{max-width:var(--max);height:100%;margin:auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between}.brand{min-height:44px;display:inline-flex;align-items:center}.brand__logo{height:24px;max-width:150px;width:auto;object-fit:contain}.brand__text{font-size:16px;font-weight:800;color:var(--title)}.brandbar__actions{display:flex;gap:8px;align-items:center}.app-link,.menu-toggle{height:44px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.app-link{padding:0 14px;border:1px solid var(--gold);color:var(--title);background:var(--deep)}.menu-toggle{padding:0 12px;gap:8px;border:1px solid var(--border);background:var(--soft);color:var(--title);cursor:pointer}.menu-toggle i,.menu-toggle i:before,.menu-toggle i:after{content:"";display:block;position:relative;width:14px;height:1px;background:var(--title)}.menu-toggle i:before{position:absolute;top:-4px}.menu-toggle i:after{position:absolute;top:4px}
.daygrid{position:fixed;z-index:120;top:74px;left:0;right:0;height:46px;background:var(--deep);border-bottom:1px solid var(--border)}.daygrid__inner{height:100%;max-width:520px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:0 16px}.daygrid__item{height:46px;min-width:64px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px}.daygrid__box{width:36px;height:36px;border-radius:6px;background:var(--soft);display:inline-flex;align-items:center;justify-content:center;color:var(--title);border:1px solid var(--border)}.daygrid__item.is-current .daygrid__box{border:2px solid var(--gold);box-shadow:0 0 0 2px rgba(212,176,106,.12)}.daygrid__item:hover .daygrid__box{background:#474A50}.daygrid__label{color:var(--muted)}.daygrid__item.is-current .daygrid__label{color:var(--title);font-weight:800}
.site-main{max-width:var(--max);margin:auto;padding:150px 16px 70px}.eyebrow{font-size:12px;letter-spacing:.1em;color:var(--gold);font-weight:800;margin:0 0 6px}.hero h1,.page-hero h1{font-size:24px;line-height:1.3;color:var(--title);margin:0 0 12px}h2{font-size:20px;line-height:1.4;color:var(--title);margin:0 0 12px}h3{font-size:16px;line-height:1.45;color:var(--title);margin:0 0 8px}p{margin:0 0 12px}.lead{font-size:16px;color:var(--muted);max-width:760px}.section{margin:30px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.section-head p{max-width:560px;color:var(--muted);margin:0}.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.btn{min-height:44px;padding:0 16px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:800}.btn--primary{background:linear-gradient(135deg,#7A92B0 0%,#D4B06A 100%);color:var(--deep)}.btn--secondary{background:var(--deep);border:1px solid var(--gold);color:var(--title)}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.media-slot{background:var(--card);border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:90px}.media-slot img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.media-slot--wide{height:200px}.media-slot--thumb{height:150px}.media-slot--portrait{height:320px}.media-slot--banner{height:200px}.media-slot--icon{height:64px;min-height:64px;border:0;background:transparent}.media-slot--icon img{width:48px;height:48px}
.home-index{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.home-index a{min-height:36px;padding:6px 10px;background:var(--deep);border:1px solid var(--border);border-radius:6px;color:var(--muted)}.home-index a:hover{color:var(--title);border-color:var(--gold)}.hero{padding:6px 0 10px}.vertical-scene{display:grid;grid-template-columns:minmax(150px,280px) 1fr;gap:22px;align-items:stretch;background:var(--deep);border:1px solid var(--border);border-radius:10px;padding:18px}.vertical-scene .media-slot{height:200px}.vertical-scene__copy{display:flex;flex-direction:column;justify-content:center}.list-rows{display:grid;gap:10px}.list-row{display:grid;grid-template-columns:130px 1fr;gap:16px;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:14px}.list-row__mark{font-size:12px;color:var(--gold);font-weight:800;text-transform:uppercase}.list-row:first-child{grid-template-columns:170px 1fr}.list-row:first-child .media-slot{height:130px}.list-row__lead{display:grid;gap:8px}.grid-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid-card,.info-card,.term,.method-card,.topic-card,.memo-card,.center-card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:18px}.grid-card{min-height:220px}.grid-card--gold{border-top:3px solid var(--gold)}.grid-card--blue{border-top:3px solid var(--blue)}.shelf-head{margin-bottom:14px}.shelf-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.periods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.period{background:var(--deep);border:1px solid var(--border);border-radius:8px;padding:16px}.period:nth-child(2){border-top:3px solid var(--blue)}.period:nth-child(3){border-top:3px solid var(--gold)}.status-list{display:grid;gap:10px}.status-row{display:grid;grid-template-columns:130px 1fr auto;gap:14px;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:14px}.status{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;background:var(--deep);border:1px solid var(--border);font-size:13px}.status--done{border-color:rgba(212,176,106,.5)}.status--work{border-color:rgba(122,146,176,.6)}.status--wait{border-color:rgba(168,168,176,.4)}.app-split{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:24px;background:var(--deep);border:1px solid var(--border);border-radius:10px;padding:20px}.app-art{display:grid;grid-template-columns:1fr 70px;gap:10px;align-items:center}.faq-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px}.faq-preview details,.faq-list details{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:0 14px}.faq-preview summary,.faq-list summary{cursor:pointer;min-height:48px;display:flex;align-items:center;color:var(--title);font-weight:800}.faq-preview details p,.faq-list details p{color:var(--muted);padding:0 0 14px;margin:0}
.page-hero{padding:8px 0 20px;border-bottom:1px solid var(--border);margin-bottom:24px}.page-hero--media{display:grid;grid-template-columns:1fr minmax(260px,400px);gap:20px;align-items:center}.scene-cut{display:grid;grid-template-columns:minmax(160px,280px) 1fr;gap:18px;background:var(--deep);border:1px solid var(--border);border-radius:8px;padding:18px}.scene-cut .media-slot{height:100%;min-height:260px}.scene-stack{display:grid;gap:12px}.scene-block{border-left:3px solid var(--gold);padding:12px 0 12px 16px}.single{max-width:760px;margin:auto}.single .term{margin-bottom:12px}.memo-list{display:grid;gap:10px}.memo-card{display:grid;grid-template-columns:52px 1fr;gap:14px}.memo-no{width:44px;height:44px;border-radius:6px;background:var(--deep);border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;color:var(--gold);font-weight:800}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.method-card:nth-child(2n){border-top:3px solid var(--blue)}.method-card:nth-child(2n+1){border-top:3px solid var(--gold)}.topic-list{display:grid;gap:12px}.topic-card{display:grid;grid-template-columns:160px 1fr;gap:18px}.topic-tag{background:var(--deep);border:1px solid var(--border);border-radius:6px;padding:10px;text-align:center;color:var(--gold);font-weight:800}.center-cards{max-width:760px;margin:auto;display:grid;gap:12px}.center-card{text-align:center}.terms{display:grid;gap:12px}.term{border-left:3px solid var(--gold)}.term:nth-child(even){border-left-color:var(--blue)}.help-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.help-card,.contact-card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:18px}.brand-notes{display:grid;gap:12px}
.site-footer{background:var(--deep);color:var(--text);border-top:1px solid rgba(212,176,106,.35);font-size:13px}.footer-inner{max-width:var(--max);margin:auto;padding:28px 16px 32px}.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}.footer-logo{height:24px;max-width:150px;object-fit:contain}.footer-brand div{display:flex;flex-direction:column;line-height:1.35}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.footer-grid h2{font-size:13px;color:var(--gold);margin:0 0 8px}.footer-grid a{display:block;padding:3px 0;color:var(--muted)}.footer-grid a:hover{color:var(--title)}.footer-note{max-width:820px;margin:16px 0 8px;color:var(--muted)}.footer-copy{margin:0;color:var(--quiet)}
.lift-menu,.search-layer,.overlay{visibility:hidden;pointer-events:none}.lift-menu{position:fixed;z-index:170;left:20px;bottom:20px;width:280px;max-height:400px;transform:translateY(24px);opacity:0;transition:.2s ease}.lift-menu.is-open{visibility:visible;pointer-events:auto;transform:translateY(0);opacity:1}.lift-menu__panel{max-height:400px;background:var(--card);border:1px solid var(--focus);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}.lift-menu__head{height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 10px 0 14px;border-bottom:1px solid var(--border)}.lift-menu__brand{display:flex;align-items:center;gap:10px}.lift-menu__brand img{height:24px;max-width:120px;object-fit:contain}.close-btn{width:44px;height:44px;border:1px solid var(--border);background:var(--deep);color:var(--title);border-radius:8px;font-size:21px;cursor:pointer}.lift-menu__scroll{max-height:345px;overflow:auto;padding:10px 12px}.lift-menu__scroll section+section{margin-top:10px}.lift-menu__scroll h2{font-size:12px;color:var(--gold);margin:0 0 4px}.lift-menu__scroll a{display:block;padding:6px 8px;border-radius:6px}.lift-menu__scroll a:hover{background:var(--soft)}.lift-menu__scroll b{display:block;font-size:13px}.lift-menu__scroll span{display:block;font-size:11px;color:var(--quiet)}
.search-layer{position:fixed;z-index:175;top:74px;left:0;right:0;opacity:0;transform:translateY(-10px);transition:.2s ease}.search-layer.is-open{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0)}.search-card{max-width:var(--max);margin:auto;background:var(--card);border:1px solid var(--focus);border-top:0;border-radius:0 0 8px 8px;padding:16px;box-shadow:var(--shadow)}.search-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.search-card label{display:block;color:var(--title);font-weight:800;margin-bottom:7px}.search-card input{width:100%;height:44px;background:var(--deep);border:1px solid var(--border);border-radius:8px;color:var(--title);padding:0 12px}.search-card p{font-size:12px;color:var(--quiet);margin:7px 0 10px}.search-preset{display:flex;flex-wrap:wrap;gap:8px}.search-preset a{padding:7px 11px;border-radius:999px;background:var(--deep);border:1px solid var(--border);color:var(--muted)}.overlay{position:fixed;z-index:160;inset:0;background:rgba(0,0,0,.48);opacity:0;transition:.2s}.overlay.is-open{visibility:visible;pointer-events:auto;opacity:1}.locked{overflow:hidden}.mobile-nav{display:none}
@media(max-width:760px){body{padding-bottom:calc(48px + env(safe-area-inset-bottom))}.daygrid{display:none}.site-main{padding-top:102px;padding-bottom:40px}.menu-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.app-link,.menu-toggle{padding:0 10px}.vertical-scene,.scene-cut,.page-hero--media,.app-split{grid-template-columns:1fr}.vertical-scene .media-slot{height:200px}.scene-cut .media-slot{min-height:200px;height:200px}.list-row,.list-row:first-child{grid-template-columns:1fr}.grid-cards,.shelf-cards,.method-grid,.help-grid,.contact-grid,.faq-preview{grid-template-columns:1fr}.periods{grid-template-columns:1fr}.status-row{grid-template-columns:1fr;gap:7px}.topic-card{grid-template-columns:1fr}.app-art{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.lift-menu{left:6%;bottom:calc(64px + env(safe-area-inset-bottom));width:88%;max-height:400px}.search-layer{top:0;bottom:0;background:var(--deep);transform:none}.search-layer.is-open{transform:none}.search-card{height:100%;max-width:none;border:0;border-radius:0;background:var(--deep);padding:18px 16px}.search-card input{background:var(--card)}.mobile-nav{position:fixed;z-index:140;left:0;right:0;bottom:0;height:calc(48px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);background:var(--card);border-top:1px solid var(--border)}.mobile-nav a{min-height:48px;display:flex;align-items:center;justify-content:center;font-size:13px}.mobile-nav a.is-current{background:var(--gold);color:var(--deep);font-weight:800}.site-footer{padding-bottom:48px}}
@media(max-width:420px){.brand__logo{max-width:112px}.site-main{padding-left:16px;padding-right:16px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
