@import"https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@500;600;700;900&family=Noto+Sans+SC:wght@400;500;700;900&family=Teko:wght@500;600;700&display=swap";:root{--radius-xl: 26px;--radius-lg: 18px;--radius-md: 13px;--shell-gutter: clamp(16px, 4vw, 40px);--content-width: 1160px;--topbar-gap: 22px;--font-serif: "Noto Serif SC", "Songti SC", "STSong", "Source Han Serif SC", serif;--font-sans: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-display: "Teko", "Arial Narrow", sans-serif;color:var(--ink);font-family:var(--font-serif);font-synthesis:none;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{height:100%;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:radial-gradient(1000px 560px at 12% -10%,color-mix(in srgb,var(--accent) 7%,transparent),transparent 62%),radial-gradient(900px 520px at 90% 4%,color-mix(in srgb,var(--accent2) 6%,transparent),transparent 62%),linear-gradient(165deg,var(--bg),var(--bg2) 62%,var(--bg));background-attachment:fixed;transition:background .5s ease,color .4s ease}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%}.site-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.42}html[data-bg-pattern=grid] .site-bg{background-image:linear-gradient(color-mix(in srgb,var(--line) 90%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--line) 90%,transparent) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 78% 62% at 50% 0%,#000 18%,transparent 76%);mask-image:radial-gradient(ellipse 78% 62% at 50% 0%,#000 18%,transparent 76%)}html[data-bg-pattern=dots] .site-bg{background-image:radial-gradient(color-mix(in srgb,var(--line) 75%,transparent) 1px,transparent 1.6px);background-size:24px 24px;-webkit-mask-image:radial-gradient(ellipse 82% 64% at 50% 0%,#000 22%,transparent 78%);mask-image:radial-gradient(ellipse 82% 64% at 50% 0%,#000 22%,transparent 78%)}html[data-bg-pattern=rays] .site-bg{background-image:repeating-conic-gradient(from 10deg at 50% -14%,color-mix(in srgb,var(--line) 55%,transparent) 0deg .7deg,transparent .7deg 13deg);-webkit-mask-image:linear-gradient(180deg,#000,transparent 72%);mask-image:linear-gradient(180deg,#000,transparent 72%)}html[data-bg-pattern=waves] .site-bg{background-image:repeating-radial-gradient(ellipse 120% 44% at 50% -20%,transparent 0 26px,color-mix(in srgb,var(--line) 38%,transparent) 26px 29px);-webkit-mask-image:linear-gradient(180deg,#000,transparent 80%);mask-image:linear-gradient(180deg,#000,transparent 80%)}html[data-bg-pattern=diagonal] .site-bg{background-image:repeating-linear-gradient(135deg,color-mix(in srgb,var(--line) 32%,transparent) 0 1px,transparent 1px 16px);-webkit-mask-image:linear-gradient(180deg,#000,transparent 85%);mask-image:linear-gradient(180deg,#000,transparent 85%)}html[data-bg-pattern=linen] .site-bg{background-image:repeating-linear-gradient(0deg,color-mix(in srgb,var(--line) 26%,transparent) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--line) 22%,transparent) 0 1px,transparent 1px 4px);opacity:.5;-webkit-mask-image:radial-gradient(ellipse 84% 62% at 50% 0%,#000 20%,transparent 80%);mask-image:radial-gradient(ellipse 84% 62% at 50% 0%,#000 20%,transparent 80%)}#root{min-height:100vh}.app-shell{width:min(calc(100% - var(--shell-gutter)),var(--content-width));margin:0 auto;padding:16px 0 56px;display:flex;flex-direction:column;min-height:100vh}.page-shell{flex:1}.topbar{position:sticky;top:14px;z-index:60;display:flex;align-items:center;gap:16px;padding:10px 14px 10px 22px;border:1px solid var(--line2);border-radius:18px;background:color-mix(in srgb,var(--panel) 88%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 6px 22px color-mix(in srgb,var(--ink) 8%,transparent);margin-bottom:var(--topbar-gap)}.brand-lockup{display:flex;flex-direction:column;line-height:1.1}.brand-lockup__eyebrow{font-family:var(--font-display);font-size:11px;letter-spacing:2.5px;color:var(--accent)}.brand-lockup strong{font-family:var(--font-serif);font-size:18px;font-weight:900;letter-spacing:3px}.topbar__nav{display:flex;gap:2px;margin-left:auto;flex-wrap:wrap}.topbar__nav a{padding:7px 13px;border-radius:9px;font-family:var(--font-sans);font-size:14px;font-weight:700;color:var(--muted);transition:color .18s,background .18s}.topbar__nav a:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.topbar__nav a.active{color:var(--accent-ink);background:var(--accent);box-shadow:0 2px 10px color-mix(in srgb,var(--accent) 34%,transparent)}.theme-switcher{position:relative}.theme-switcher__btn{display:inline-flex;align-items:center;gap:9px;padding:8px 13px 8px 9px;border-radius:12px;cursor:pointer;border:1px solid var(--line2);background:var(--panel2);font-family:var(--font-sans);font-size:12.5px;font-weight:700;color:var(--muted);transition:border-color .2s}.theme-switcher__btn:hover{border-color:var(--accent)}.theme-switcher__swatches{display:inline-flex}.theme-switcher__swatches i{width:12px;height:12px;border-radius:50%;margin-right:-4px;outline:1.5px solid var(--panel2)}.theme-switcher__caret{font-size:10px}.theme-switcher__menu{position:absolute;right:0;top:calc(100% + 10px);z-index:90;list-style:none;margin:0;padding:8px;width:216px;border:1px solid var(--line2);border-radius:var(--radius-md);background:var(--panel);box-shadow:0 18px 50px color-mix(in srgb,var(--ink) 18%,transparent);display:grid;grid-template-columns:1fr 1fr;gap:3px;animation:menu-pop .16s ease}@keyframes menu-pop{0%{opacity:0;transform:translateY(-6px)}}.theme-switcher__option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 9px;border-radius:9px;cursor:pointer;border:1px solid transparent;background:none;font-family:var(--font-sans);font-size:12.5px;color:var(--muted);text-align:left}.theme-switcher__option:hover{background:var(--panel2);color:var(--ink)}.theme-switcher__option.is-active{border-color:var(--accent);color:var(--ink)}.home-zone{padding:6px 0 0}.zone-rail{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;padding:4px 0}.zone-rail__item{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 8px 16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--panel) 90%,transparent);transition:transform .2s,border-color .2s,box-shadow .2s;min-width:0}.zone-rail__item:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 10px 26px color-mix(in srgb,var(--ink) 12%,transparent)}.zone-rail__icon{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:color-mix(in srgb,var(--panel2) 85%,transparent);border:1px solid var(--line2);box-shadow:inset 0 0 0 4px color-mix(in srgb,var(--panel) 72%,transparent);transition:transform .2s,border-color .2s,box-shadow .2s}.zone-rail__item:hover .zone-rail__icon{transform:translateY(-3px) scale(1.05);border-color:var(--accent)}.zone-rail__icon img{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 3px 6px color-mix(in srgb,var(--ink) 22%,transparent));transition:transform .25s ease}.zone-rail__item:hover .zone-rail__icon img{transform:scale(1.08)}.zone-rail__label{font-family:var(--font-serif);font-size:15px;font-weight:700;letter-spacing:1px}.zone-rail__tag{font-family:var(--font-display);font-size:12px;letter-spacing:1.6px;color:var(--gold);text-transform:uppercase}.home-figure{margin-top:26px}.home-figure__frame{width:100%;padding:0;border:1px solid var(--line);border-radius:var(--radius-xl);overflow:hidden;cursor:zoom-in;background:var(--panel);display:block;transition:border-color .25s,box-shadow .25s}.home-figure__frame:hover{border-color:var(--accent);box-shadow:0 14px 40px color-mix(in srgb,var(--ink) 14%,transparent)}.home-figure__frame img{width:100%;height:auto}.home-figure__note{margin:12px 4px 0;font-family:var(--font-sans);font-size:12px;color:var(--faint);letter-spacing:1px;text-align:right}.service-page{padding-top:10px}.poster-tabs{display:flex;flex-direction:column;gap:16px}.poster-tabs__strip{display:flex;gap:6px;flex-wrap:wrap;padding:8px;border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb,var(--panel) 82%,transparent)}.poster-tabs__tab{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:9px;cursor:pointer;background:transparent;font-family:var(--font-sans);font-size:13.5px;font-weight:700;color:var(--muted);transition:background .18s,color .18s}.poster-tabs__tab:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.poster-tabs__tab.is-active{color:var(--accent-ink);background:var(--accent)}.poster-tabs__dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.5}.poster-tabs__stage{display:block;width:100%;padding:0;border:1px solid var(--line);border-radius:var(--radius-xl);overflow:hidden;cursor:zoom-in;background:var(--panel);animation:stage-in .3s ease;transition:border-color .25s}.poster-tabs__stage:hover{border-color:var(--accent)}@keyframes stage-in{0%{opacity:0;transform:translateY(6px)}}.poster-tabs__stage img{width:100%;height:auto}.not-found{text-align:center;padding:80px 0 40px}.not-found h1{font-size:clamp(30px,4.4vw,46px);font-weight:900;margin:10px 0}.not-found__sub{color:var(--muted);margin-bottom:26px;font-family:var(--font-sans);font-size:14px}.not-found__brand{margin-top:34px;color:var(--faint);font-family:var(--font-display);font-size:13px;letter-spacing:4px}.btn{display:inline-block;padding:12px 26px;border-radius:10px;font-family:var(--font-sans);font-weight:800;font-size:14px;color:var(--accent-ink);background:var(--accent);transition:box-shadow .2s,transform .2s}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 32%,transparent)}.site-footer{margin-top:60px;padding-top:22px;border-top:1px solid var(--line);text-align:center;color:var(--faint);font-family:var(--font-sans)}.site-footer__slogan{font-family:var(--font-serif);font-size:14px;color:var(--muted);letter-spacing:2px}.site-footer__brand{margin-top:4px;font-size:12px;letter-spacing:1.5px}.site-footer__fineprint{margin-top:2px;font-size:11px}.image-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:24px;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fade-in .2s ease}@keyframes fade-in{0%{opacity:0}}.image-modal__close{position:absolute;top:14px;right:18px;width:44px;height:44px;border-radius:50%;font-size:26px;line-height:1;cursor:pointer;color:var(--ink);background:var(--panel);border:1px solid var(--line2);transition:transform .2s,border-color .2s}.image-modal__close:hover{transform:rotate(90deg);border-color:var(--accent)}.image-modal__body{display:flex;flex-direction:column;gap:12px;max-width:min(660px,94vw);max-height:92vh}.image-modal__body img{max-height:86vh;object-fit:contain;border-radius:var(--radius-lg);box-shadow:0 24px 70px color-mix(in srgb,var(--ink) 30%,transparent)}.image-modal__body figcaption{display:flex;justify-content:center;align-items:baseline;gap:14px;color:var(--muted);font-size:12px;font-family:var(--font-sans)}.image-modal__body figcaption strong{font-family:var(--font-serif);font-weight:700;font-size:14px;color:var(--ink);letter-spacing:1px}.image-modal__body figcaption span{color:var(--faint);letter-spacing:2px}@media(max-width:980px){.zone-rail{grid-template-columns:repeat(3,1fr);gap:8px}.topbar{flex-wrap:wrap}.topbar__nav{order:3;width:100%;overflow-x:auto;flex-wrap:nowrap;margin-left:0;padding-top:2px}.topbar__nav a{white-space:nowrap}.theme-switcher{margin-left:auto}}@media(max-width:760px){.poster-tabs__strip{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.poster-tabs__tab{flex-shrink:0}}@media(max-width:560px){.topbar{padding:8px 10px}.brand-lockup strong{font-size:16px;letter-spacing:2px}.theme-switcher__name{display:none}.zone-rail{grid-template-columns:repeat(3,1fr)}.zone-rail__item{padding:14px 6px 12px;gap:8px}.zone-rail__icon{width:56px;height:56px}.zone-rail__icon img{width:38px;height:38px}.zone-rail__label{font-size:13.5px}}
