:root{--bg:#F4F6FF;--deep:#E4E8F6;--card:#FBFBFF;--soft:#EEF0FA;--title:#1E1A2A;--text:#2E2A3A;--muted:#5A5668;--quiet:#7A7688;--coral:#E07070;--gold:#E0B050;--mint:#70C090;--blue:#70A8D8;--violet:#A080D0;--border:rgba(30,26,42,.12);--focus:rgba(160,128,208,.48);--shadow:0 12px 28px rgba(30,26,42,.08);--max:980px}*{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}button{color:inherit}.skip-link{position:fixed;left:12px;top:-60px;z-index:200;background:var(--title);color:#FBFBFF;padding:8px 12px;border-radius:8px}.skip-link:focus{top:8px}.rain-edge{position:fixed;left:0;top:0;bottom:0;width:6px;z-index:140;pointer-events:none;background:linear-gradient(to bottom,var(--coral) 0 20%,var(--gold) 20% 40%,var(--mint) 40% 60%,var(--blue) 60% 80%,var(--violet) 80% 100%)}.top-strip{position:fixed;z-index:120;top:0;left:0;right:0;height:20px;background:var(--card);border-bottom:1px solid var(--border);font-size:12px}.top-strip__inner{max-width:var(--max);height:100%;margin:0 auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between}.text-button{border:0;background:transparent;min-height:20px;padding:0 4px;cursor:pointer}.text-button:hover,.text-button:focus-visible{color:var(--violet);text-decoration:underline}.site-header{position:fixed;z-index:119;top:20px;left:0;right:0;height:54px;background:var(--card);border-bottom:1px solid var(--focus)}.site-header__inner{height:100%;max-width:var(--max);margin:0 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;width:auto;max-width:150px;object-fit:contain}.brand__text{font-size:16px;font-weight:800;color:var(--title)}.header-actions{display:flex;align-items:center;gap:8px}.header-app,.menu-button{height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;font-size:14px}.header-app{padding:0 14px;border:1px solid var(--violet);background:var(--card)}.menu-button{gap:8px;padding:0 12px;border:1px solid var(--border);background:var(--soft);cursor:pointer}.menu-button i,.menu-button i::before,.menu-button i::after{display:block;width:14px;height:1px;background:var(--title);content:"";position:relative}.menu-button i::before{position:absolute;top:-4px}.menu-button i::after{position:absolute;top:4px}.primary-ring{position:fixed;z-index:110;top:74px;left:0;right:0;height:52px;background:var(--card);border-bottom:1px solid var(--border)}.primary-ring__inner{max-width:720px;height:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.ring-link{height:44px;display:flex;align-items:center;gap:7px;padding:0 10px;font-size:13px;border-radius:10px}.ring-link:hover,.ring-link:focus-visible{background:var(--soft)}.ring-number{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--title);border:1px solid rgba(30,26,42,.08);font-size:12px}.ring-number--coral{background:var(--coral)}.ring-number--gold{background:var(--gold)}.ring-number--mint{background:var(--mint)}.ring-number--blue{background:var(--blue)}.ring-number--violet{background:var(--violet)}.ring-link.is-current .ring-number{outline:2px solid var(--title);outline-offset:2px}.ring-link.is-current{font-weight:800}.site-main{max-width:var(--max);margin:0 auto;padding:158px 16px 72px}.eyebrow{font-size:12px;letter-spacing:.08em;color:var(--violet);font-weight:800}.hero-copy{max-width:760px}.hero-copy h1,.page-hero h1{font-size:24px;line-height:1.3;margin:8px 0 12px;color:var(--title)}h2{font-size:20px;line-height:1.4;color:var(--title);margin:0 0 12px}h3{font-size:16px;line-height:1.5;color:var(--title);margin:0 0 8px}p{margin:0 0 12px}.lead{font-size:16px;color:var(--muted);max-width:760px}.section{margin:28px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.section-head p{color:var(--muted);margin:0;max-width:560px}.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.btn{min-height:44px;padding:0 16px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.btn--primary{background:linear-gradient(90deg,#70A8D8 0%,#A080D0 100%);color:#FBFBFF}.btn--secondary{background:var(--card);border:1px solid var(--violet);color:var(--title)}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.btn:focus-visible,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:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:92px}.media-slot img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.media-slot--wide{height:176px}.media-slot--banner{height:200px}.media-slot--portrait{height:320px;max-width:500px;margin:0 auto}.media-slot--thumb{height:154px}.media-slot--icon{height:64px;width:64px;min-height:64px;margin:0 auto;border:0;background:transparent}.media-slot--icon img{width:48px;height:48px}.index-links{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px}.index-links a{padding:7px 10px;border:1px solid var(--border);background:var(--card);border-radius:999px;font-size:13px}.home-intro{padding:20px 0 6px}.cut-scene{position:relative;min-height:230px;border:1px solid var(--border);background:var(--card);border-radius:12px;overflow:hidden;padding:22px 44% 22px 22px}.cut-scene .media-slot{position:absolute;right:0;top:0;width:43%;height:176px;border:0;border-radius:0;clip-path:polygon(22% 0,100% 0,100% 100%,0 100%)}.timeline{position:relative;margin-left:10px;padding-left:28px;border-left:2px solid var(--deep)}.timeline-item{position:relative;padding:0 0 24px}.timeline-item::before{content:"";position:absolute;left:-35px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--card);border:3px solid var(--violet)}.timeline-item .media-slot{margin:12px 0 14px;max-width:520px}.ring-cards,.two-cards,.ring-grid,.method-grid,.help-grid,.contact-paths,.faq-preview{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ring-card{position:relative;background:var(--card);border:1px solid var(--border);border-radius:50% 50% 12px 12px/32px 32px 12px 12px;padding:24px 18px 18px;min-height:210px}.ring-card::before{content:"";position:absolute;left:18px;right:18px;top:10px;height:5px;border-radius:99px;background:linear-gradient(90deg,var(--mint),var(--blue),var(--violet))}.info-card,.center-card,.method-card,.topic-card,.term-block,.memo-card,.help-card,.contact-path,.scene-note{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:18px}.month-bands{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.month-band{background:var(--card);border-left:5px solid var(--blue);padding:16px;border-radius:8px}.month-band:nth-child(2){border-color:var(--mint)}.month-band:nth-child(3){border-color:var(--violet)}.status-list{display:grid;gap:10px}.status-row{display:grid;grid-template-columns:120px 1fr auto;gap:14px;align-items:center;background:var(--card);border:1px solid var(--border);padding:14px;border-radius:10px}.status-pill{display:inline-flex;min-height:34px;align-items:center;padding:0 11px;border-radius:999px;background:var(--soft);font-size:13px}.status-pill--done{border-left:4px solid var(--mint)}.status-pill--work{border-left:4px solid var(--blue)}.status-pill--wait{border-left:4px solid var(--gold)}.app-showcase{text-align:center;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:22px}.app-showcase__art{display:grid;grid-template-columns:minmax(0,1fr) 80px;gap:12px;max-width:600px;margin:0 auto 18px;align-items:center}.app-showcase__copy{text-align:left;max-width:720px;margin:0 auto}.faq-preview details,.faq-list details{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:0 15px}.faq-preview summary,.faq-list summary{cursor:pointer;min-height:48px;display:flex;align-items:center;font-weight:800;color:var(--title)}.faq-preview details p,.faq-list details p{padding:0 0 15px;margin:0;color:var(--muted)}.page-hero{padding:10px 0 18px;border-bottom:1px solid var(--border);margin-bottom:24px}.page-hero--with-media{display:grid;grid-template-columns:1fr minmax(260px,420px);gap:24px;align-items:center}.diagonal-layout{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px 45% 24px 24px;min-height:260px}.diagonal-layout .media-slot{position:absolute;right:0;top:0;bottom:0;width:42%;height:100%;border:0;border-radius:0;clip-path:polygon(25% 0,100% 0,100% 100%,0 100%)}.scene-notes{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.ring-grid .ring-card{border-radius:70px 70px 12px 12px}.single-column{max-width:760px;margin:0 auto}.single-column .term-block{margin-bottom:14px}.period-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;position:relative}.period-flow::before{content:"";position:absolute;left:12%;right:12%;top:32px;height:2px;background:var(--deep);z-index:0}.period-step{position:relative;z-index:1;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:58px 18px 18px}.period-step::before{content:"";position:absolute;top:20px;left:50%;transform:translateX(-50%);width:24px;height:24px;border-radius:50%;background:var(--blue);border:5px solid var(--bg)}.period-step:nth-child(2)::before{background:var(--mint)}.period-step:nth-child(3)::before{background:var(--violet)}.memo-list{display:grid;gap:12px}.memo-card{display:grid;grid-template-columns:48px 1fr;gap:14px}.memo-index{width:42px;height:42px;border-radius:50%;background:var(--soft);display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--violet)}.method-card{border-top:4px solid var(--blue)}.method-card:nth-child(2n){border-top-color:var(--violet)}.topic-list{display:grid;gap:12px}.topic-card{display:grid;grid-template-columns:170px 1fr;gap:18px;align-items:start}.topic-label{font-weight:900;color:var(--title);padding:8px 10px;border-radius:8px;background:var(--soft);text-align:center}.center-cards{max-width:760px;margin:0 auto;display:grid;gap:14px}.center-card{text-align:center;padding:22px}.center-card p{max-width:620px;margin-left:auto;margin-right:auto}.terms,.brand-statement{display:grid;gap:14px}.term-block{border-left:5px solid var(--violet)}.site-footer{position:relative;background:var(--title);color:#F4F6FF;font-size:13px}.footer-edge{position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(to bottom,var(--coral) 0 20%,var(--gold) 20% 40%,var(--mint) 40% 60%,var(--blue) 60% 80%,var(--violet) 80% 100%)}.footer-inner{max-width:var(--max);margin:0 auto;padding:28px 16px 30px}.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.footer-logo{height:24px;max-width:150px;object-fit:contain}.footer-brand div{display:flex;flex-direction:column}.footer-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:20px 0;border-top:1px solid rgba(244,246,255,.15);border-bottom:1px solid rgba(244,246,255,.15)}.footer-groups h2{font-size:13px;color:#F4F6FF;margin-bottom:8px}.footer-groups a{display:block;color:#E4E8F6;padding:3px 0}.footer-note{color:#E4E8F6;max-width:820px;margin:18px 0 8px}.footer-copy{color:#BFC4D5;margin:0}.drop-menu,.search-layer,.site-overlay{visibility:hidden;pointer-events:none}.drop-menu{position:fixed;z-index:155;top:74px;left:0;right:0;transform:translateY(-14px);opacity:0;transition:.2s ease}.drop-menu.is-open{visibility:visible;pointer-events:auto;transform:translateY(0);opacity:1}.drop-menu__panel{max-height:32vh;min-height:230px;overflow:auto;background:var(--card);border-bottom:1px solid var(--focus);box-shadow:var(--shadow);padding:14px max(16px,calc((100vw - var(--max))/2 + 16px)) 16px}.drop-menu__head,.search-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.drop-menu__brand{display:flex;align-items:center;gap:10px}.drop-menu__brand img{height:24px;max-width:140px;object-fit:contain}.icon-close{width:44px;height:44px;border:1px solid var(--border);border-radius:9px;background:var(--soft);cursor:pointer;font-size:22px}.drop-menu__grid{display:grid;grid-template-columns:1.1fr 1.1fr .8fr 1.2fr;gap:12px}.drop-menu__grid h2{font-size:13px;color:var(--violet);margin:0 0 6px}.drop-menu__grid a{display:block;padding:6px 8px;border-radius:8px}.drop-menu__grid a:hover{background:var(--soft)}.drop-menu__grid b{font-size:13px}.drop-menu__grid span{display:block;font-size:11px;color:var(--quiet);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-layer{position:fixed;z-index:160;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:0 auto;background:var(--card);border:1px solid var(--focus);border-top:0;border-radius:0 0 12px 12px;padding:16px;box-shadow:var(--shadow)}.search-card label{display:block;font-weight:800;margin-bottom:8px}.search-card input{width:100%;height:44px;border:1px solid var(--border);border-radius:9px;background:#fff;padding:0 12px;color:var(--title)}.search-help{font-size:12px;color:var(--quiet);margin:7px 0 10px}.search-presets{display:flex;flex-wrap:wrap;gap:8px}.search-presets a{padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:var(--soft)}.site-overlay{position:fixed;z-index:150;inset:0;background:rgba(30,26,42,.26);opacity:0;transition:.2s ease}.site-overlay.is-open{visibility:visible;pointer-events:auto;opacity:1}.nav-locked{overflow:hidden}.mobile-bottom{display:none}@media(max-width:760px){body{padding-bottom:calc(48px + env(safe-area-inset-bottom))}.primary-ring{display:none}.site-main{padding-top:102px;padding-bottom:38px}.header-app,.menu-button{padding:0 10px}.menu-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.page-hero--with-media{grid-template-columns:1fr}.cut-scene{padding:198px 18px 18px}.cut-scene .media-slot{width:100%;height:176px;clip-path:polygon(0 0,100% 0,100% 84%,12% 100%,0 100%)}.ring-cards,.two-cards,.ring-grid,.method-grid,.help-grid,.contact-paths,.faq-preview,.scene-notes{grid-template-columns:1fr}.month-bands,.period-flow{grid-template-columns:1fr}.period-flow::before{display:none}.status-row{grid-template-columns:1fr;gap:7px}.app-showcase__art{grid-template-columns:1fr}.topic-card{grid-template-columns:1fr}.footer-groups{grid-template-columns:repeat(2,1fr)}.drop-menu__panel{max-height:46vh;min-height:270px;padding:12px 16px}.drop-menu__grid{grid-template-columns:1fr 1fr;gap:8px}.drop-menu__grid span{white-space:normal}.search-layer{top:0;bottom:0;background:var(--title);transform:none}.search-layer.is-open{transform:none}.search-card{height:100%;max-width:none;border:0;border-radius:0;background:var(--title);color:#F4F6FF;padding:20px 16px}.search-card strong,.search-card label{color:#F4F6FF}.search-card .icon-close{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff}.search-card input{background:#FBFBFF}.search-help{color:#C9CDDC}.search-presets a{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15);color:#F4F6FF}.mobile-bottom{position:fixed;z-index:130;display:grid;grid-template-columns:repeat(4,1fr);left:0;right:0;bottom:0;height:calc(48px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--card);border-top:1px solid var(--border)}.mobile-bottom a{min-height:48px;display:flex;align-items:center;justify-content:center;font-size:13px}.mobile-bottom a.is-current{background:var(--violet);color:#FBFBFF;font-weight:800}.site-footer{padding-bottom:48px}}@media(max-width:420px){.drop-menu__grid{grid-template-columns:1fr}.drop-menu__panel{max-height:52vh}.brand__logo{max-width:110px}.site-main{padding-left:16px;padding-right:16px}.ring-card{border-radius:42px 42px 10px 10px/26px 26px 10px 10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
