:root{--bg:#05070a;--paper:#eee4d0;--paper-strong:#f7efdd;--muted:#e6dcc88f;--muted-soft:#e6dcc859;--gold:#d8b66b;--gold-bright:#ecd49a;--gold-soft:#d8b66b29;--line:#d8b66b24;--line-soft:#ffffff0f;--panel:#080b0da8;--panel-strong:#080b0de6;--serif:"Songti SC", "STSong", "Noto Serif SC", "SimSun", serif;--kai:"Kaiti SC", "STKaiti", "KaiTi", "Songti SC", "Noto Serif SC", serif;--sans:-apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;color:var(--paper);background:var(--bg);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{width:100%;height:100%}body{background:radial-gradient(62% 48% at 52% 28%,#303a3238,#0000 64%),radial-gradient(80% 62% at 50% 108%,#68481e2b,#0000 62%),radial-gradient(38% 30% at 80% 15%,#4b3a251a,#0000 70%),#05070a;margin:0;overflow:hidden}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline-offset:3px;outline:1px solid #d8b66bc7}::selection{color:#080a0b;background:var(--gold)}.app{isolation:isolate;width:100vw;height:100dvh;min-height:560px;position:relative;overflow:hidden}.ambient-glow{z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 44%,#707e6517,#0000 38%),radial-gradient(circle at 18% 24%,#7c5d3013,#0000 34%),radial-gradient(circle at 78% 28%,#5b6c5f0d,#0000 32%);position:fixed;inset:0}.scene-shell{z-index:1;position:absolute;inset:0}.graph-canvas{animation:2.2s cubic-bezier(.22,1,.36,1) both scene-in;display:block;width:100%!important;height:100%!important}@keyframes scene-in{0%{opacity:0;filter:blur(5px)}to{opacity:1;filter:blur()}}.vignette{z-index:2;pointer-events:none;background:linear-gradient(#040608b8 0%,#0000 20% 77%,#040608b8 100%),radial-gradient(72% 66% at 50% 46%,#0000 38%,#00000061 100%);position:fixed;inset:0}.film-grain{z-index:90;pointer-events:none;opacity:.036;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");position:fixed;inset:0}.topbar{z-index:50;pointer-events:none;justify-content:space-between;align-items:flex-start;padding:25px 30px 0;display:flex;position:fixed;top:0;left:0;right:0}.brand{pointer-events:auto;align-items:center;gap:14px;animation:1.1s cubic-bezier(.22,1,.36,1) .1s both rise-in;display:flex}.brand-seal{color:#e2b9a2;width:48px;height:48px;font-family:var(--kai);background:linear-gradient(145deg,#65241d8c,#1e0e0cb8),#080a0bb3;border:1px solid #ca5b45b8;flex:none;place-items:center;font-size:25px;line-height:1;display:grid;position:relative;box-shadow:0 0 28px #ba463324,inset 0 0 18px #c7584114}.brand-seal:before,.brand-seal:after{content:"";border-style:solid;border-color:#dbac9061;width:7px;height:7px;position:absolute}.brand-seal:before{border-width:1px 0 0 1px;top:4px;left:4px}.brand-seal:after{border-width:0 1px 1px 0;bottom:4px;right:4px}.brand-copy{flex-direction:column;display:flex}.brand-kicker{color:#d8b66bb3;letter-spacing:.34em;font-size:8px;font-weight:500;line-height:1}.brand h1{color:var(--paper-strong);font-family:var(--serif);letter-spacing:.11em;text-shadow:0 2px 20px #0000007a;margin:6px 0 3px;font-size:clamp(24px,2.15vw,31px);font-weight:600;line-height:1}.brand-year{color:var(--gold);font-family:var(--sans);letter-spacing:.07em;vertical-align:4px;margin-left:9px;font-size:.56em;font-weight:300}.brand p{color:#e6dcc87a;letter-spacing:.2em;margin:0;font-size:9px;font-weight:400;line-height:1.2}.brand p span{color:#d8b66b7a;letter-spacing:.24em;margin-left:8px;font-size:7px}.era-mark{color:#e6dcc859;letter-spacing:.22em;pointer-events:none;align-items:center;gap:11px;font-size:9px;animation:1.4s .6s both fade-in;display:flex;position:absolute;top:37px;left:50%;transform:translate(-50%)}.era-mark i{background:linear-gradient(90deg,#0000,#d8b66b66,#0000);width:30px;height:1px}.top-actions{pointer-events:auto;align-items:center;gap:8px;animation:1.1s cubic-bezier(.22,1,.36,1) .22s both rise-in;display:flex}.icon-button{color:#e6dcc899;cursor:pointer;-webkit-backdrop-filter:blur(18px);background:#080b0d85;border:1px solid #d8b66b24;border-radius:11px;flex:none;place-items:center;width:42px;height:42px;padding:0;transition:color .18s,border-color .18s,background .18s,transform .18s;display:grid}.icon-button svg{width:17px;height:17px}.icon-button:hover,.icon-button.is-active{color:var(--gold-bright);background:#d8b66b1a;border-color:#d8b66b6b}.icon-button:active{transform:scale(.95)}.top-actions__filter{display:none}.search-box{width:292px;transition:width .26s cubic-bezier(.22,1,.36,1);position:relative}.search-box__field{-webkit-backdrop-filter:blur(18px);background:#080b0d85;border:1px solid #d8b66b24;border-radius:11px;align-items:center;height:42px;padding:0 10px 0 13px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.search-box.is-open .search-box__field{background:#080b0ddb;border-color:#d8b66b5e;box-shadow:0 0 32px #d8b66b0f}.search-box__icon{color:#d8b66ba6;flex:none;width:16px;height:16px;margin-right:9px}.search-box input{width:100%;min-width:0;color:var(--paper);font-family:var(--sans);letter-spacing:.04em;background:0 0;border:0;outline:0;padding:0;font-size:11px}.search-box input::placeholder{color:#e6dcc85c}.search-box input::-webkit-search-cancel-button{display:none}.search-box__kbd{color:#e6dcc852;font-family:var(--sans);letter-spacing:.06em;white-space:nowrap;border:1px solid #e6dcc81c;border-radius:4px;flex:none;padding:2px 5px;font-size:8px}.search-box__clear{color:#e6dcc873;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:22px;height:22px;padding:0;display:grid}.search-box__clear:hover{color:var(--paper);background:#ffffff0f}.search-box__clear svg{width:13px;height:13px}.search-results{z-index:90;-webkit-backdrop-filter:blur(26px);background:#080b0df2;border:1px solid #d8b66b2e;border-radius:12px;animation:.18s ease-out both drop-in;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden;box-shadow:0 28px 80px #0000009e,inset 0 1px #ffffff09}@keyframes drop-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.search-results__label{color:#d8b66b94;letter-spacing:.22em;padding:12px 14px 7px;font-size:8px}.search-result{width:100%;color:var(--paper);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:9px 12px;transition:background .14s;display:flex}.search-result.is-active{background:linear-gradient(90deg,#d8b66b1d,#d8b66b04)}.search-result__seal{width:32px;height:32px;font-family:var(--kai);background:#00000042;border:1px solid;border-radius:50%;flex:none;place-items:center;font-size:16px;display:grid}.search-result__copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.search-result__name{font-family:var(--serif);letter-spacing:.06em;align-items:baseline;gap:7px;font-size:13px;display:flex}.search-result__name em{color:#e6dcc861;font-family:var(--sans);letter-spacing:.06em;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-style:normal;overflow:hidden}.search-result__role{color:#e6dcc86b;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;font-size:8.5px;overflow:hidden}.search-result__faction{letter-spacing:.14em;opacity:.68;flex:none;font-size:8px}.search-result mark{color:var(--gold-bright);background:0 0;border-bottom:1px solid #d8b66b80}.search-results__empty{color:#e6dcc861;letter-spacing:.08em;padding:22px 14px;font-size:10px}.search-results__footer{color:#e6dcc847;letter-spacing:.08em;border-top:1px solid #ffffff0d;gap:14px;padding:9px 13px;font-size:8px;display:flex}.search-results__footer b{color:#e6dcc894;font-weight:500}.panel-kicker{color:#d8b66b9e;font-family:var(--sans);letter-spacing:.22em;white-space:nowrap;font-size:8px;font-weight:500}.legend-panel{z-index:44;-webkit-backdrop-filter:blur(20px);scrollbar-width:thin;background:linear-gradient(165deg,#0c1012b3,#070a0c75);border:1px solid #d8b66b21;border-radius:14px;width:252px;max-height:calc(100dvh - 260px);padding:15px 14px 13px;animation:1s cubic-bezier(.22,1,.36,1) .55s both slide-in-left;position:fixed;top:148px;left:30px;overflow-y:auto;box-shadow:0 24px 70px #00000040,inset 0 1px #ffffff09}.legend-panel:before{content:"";background:linear-gradient(90deg, var(--gold), transparent);opacity:.75;width:46px;height:1px;position:absolute;top:-1px;left:16px}.legend-panel__header{align-items:center;gap:8px;margin-bottom:7px;padding:0 2px;display:flex}.legend-panel__header .panel-kicker{flex:1}.legend-panel__header--ties{margin-top:1px}.legend-panel__reset{color:#d8b66b80;letter-spacing:.12em;cursor:pointer;background:0 0;border:0;padding:0;font-size:8px;transition:color .16s}.legend-panel__reset:hover:not(:disabled){color:var(--gold-bright)}.legend-panel__reset:disabled{opacity:.24;cursor:default}.legend-panel__close{color:#e6dcc873;cursor:pointer;background:0 0;border:0;place-items:center;width:22px;height:22px;padding:0;display:none}.legend-panel__close svg{width:14px;height:14px}.faction-list{flex-direction:column;gap:1px;display:flex}.faction-row{width:100%;color:var(--paper);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;padding:7px 6px;transition:background .16s,opacity .2s;display:flex}.faction-row:hover{background:#ffffff09}.faction-row:not(.is-active){opacity:.27}.faction-row__dot{border-radius:50%;flex:none;width:6px;height:6px;transition:box-shadow .2s}.faction-row__copy{flex:1;align-items:baseline;gap:8px;min-width:0;display:flex}.faction-row__name{font-family:var(--serif);letter-spacing:.12em;white-space:nowrap;font-size:12.5px}.faction-row__eyebrow{color:#e6dcc852;letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.faction-row__count{color:#e6dcc84d;font-variant-numeric:tabular-nums;font-size:9px}.legend-divider{background:linear-gradient(90deg,#0000,#d8b66b2e,#0000);height:1px;margin:11px 6px 12px}.tie-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.tie-chip{color:#e6dcc8b3;cursor:pointer;background:#ffffff05;border:1px solid #ffffff0e;border-radius:7px;align-items:center;gap:7px;min-width:0;padding:7px 7px 7px 8px;transition:background .16s,border-color .16s,opacity .18s;display:flex}.tie-chip:hover{background:#ffffff09;border-color:#d8b66b33}.tie-chip:not(.is-active){opacity:.28}.tie-chip__line{background:var(--tie-color);width:14px;height:1px;box-shadow:0 0 7px var(--tie-color);flex:none}.tie-chip__line.is-dashed{background:repeating-linear-gradient(90deg, var(--tie-color) 0 3px, transparent 3px 5px);box-shadow:none}.tie-chip__name{letter-spacing:.08em;font-size:9px}.tie-chip__count{color:#e6dcc840;font-variant-numeric:tabular-nums;margin-left:auto;font-size:8px}.legend-note{color:#e6dcc838;letter-spacing:.1em;margin:11px 2px 0;font-size:8px}.legend-backdrop{display:none}.detail-panel{z-index:46;background:linear-gradient(170deg, color-mix(in srgb, var(--accent) 7%, transparent), transparent 34%), linear-gradient(160deg, #0d1113d4, #070a0cab);-webkit-backdrop-filter:blur(26px);border:1px solid #d8b66b29;border-radius:16px;flex-direction:column;width:354px;animation:.85s cubic-bezier(.22,1,.36,1) .35s both panel-in;display:flex;position:fixed;top:94px;bottom:100px;right:24px;overflow:hidden;box-shadow:0 36px 100px #00000075,inset 0 1px #ffffff0b}.detail-panel:before{content:"";background:linear-gradient(90deg, var(--accent), transparent);opacity:.9;width:78px;height:1px;position:absolute;top:-1px;left:26px}.detail-panel:after{content:attr(data-glyph);color:var(--accent);font-family:var(--kai);opacity:.032;pointer-events:none;font-size:250px;line-height:1;position:absolute;top:26px;right:-16px}@keyframes panel-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.detail-toolbar{z-index:1;justify-content:space-between;align-items:center;padding:15px 16px 6px 20px;display:flex;position:relative}.detail-toolbar__actions{gap:5px;display:flex}.detail-toolbar .icon-button{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000;width:28px;height:28px}.detail-toolbar .icon-button:hover{background:#d8b66b14;border-color:#d8b66b33}.detail-toolbar .icon-button svg{width:14px;height:14px}.detail-scroll{z-index:1;scrollbar-width:thin;scrollbar-color:#d8b66b40 transparent;flex:1;padding:3px 22px 22px;position:relative;overflow-y:auto}.detail-scroll::-webkit-scrollbar{width:4px}.legend-panel::-webkit-scrollbar{width:4px}.detail-scroll::-webkit-scrollbar-thumb{background:#d8b66b3d;border-radius:99px}.legend-panel::-webkit-scrollbar-thumb{background:#d8b66b3d;border-radius:99px}.detail-hero{border-bottom:1px solid #d8b66b1a;padding:8px 0 20px}.detail-eyebrow{color:var(--accent);letter-spacing:.18em;opacity:.85;align-items:center;gap:7px;font-size:8.5px;display:flex}.detail-eyebrow__dot{background:var(--accent);width:4px;height:4px;box-shadow:0 0 9px var(--accent);border-radius:50%}.detail-hero h2{color:var(--paper-strong);font-family:var(--serif);letter-spacing:.12em;text-shadow:0 4px 30px #0006;margin:12px 0 3px;font-size:40px;font-weight:600;line-height:1.08}.detail-courtesy{color:#e6dcc870;letter-spacing:.14em;margin:0;font-size:10px}.detail-hero blockquote{border-left:1px solid color-mix(in srgb, var(--accent) 55%, transparent);color:#f4ebdadb;font-family:var(--serif);letter-spacing:.05em;margin:21px 0 18px;padding-left:14px;font-size:15px;font-weight:400;line-height:1.85;position:relative}.detail-meta{color:#e6dcc852;letter-spacing:.06em;flex-wrap:wrap;align-items:center;gap:8px;font-size:8px;display:flex}.detail-meta__actor{color:#d8b66ba8}.detail-meta__rule{background:#e6dcc826;width:1px;height:8px}.detail-section{padding-top:20px}.detail-section__heading{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.detail-section__heading h3{color:var(--paper);font-family:var(--serif);letter-spacing:.22em;margin:0;font-size:13px;font-weight:500}.detail-section__index{color:#d8b66b57;letter-spacing:.14em;font-size:8px}.detail-bio{color:#e6dcc8ad;font-family:var(--serif);letter-spacing:.035em;margin:0;font-size:12.5px;font-weight:400;line-height:2.02}.trait-list{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.trait{border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);background:color-mix(in srgb, var(--accent) 5%, transparent);color:color-mix(in srgb, var(--accent) 74%, #e9dfca);letter-spacing:.1em;border-radius:99px;padding:3px 9px 4px;font-size:8.5px}.detail-section--relations{padding-top:23px}.relation-list{flex-direction:column;display:flex}.relation-row{width:100%;color:var(--paper);text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff0b;align-items:center;gap:10px;padding:10px 5px;transition:background .16s,padding .16s;display:flex}.relation-row:hover{background:color-mix(in srgb, var(--accent) 6%, transparent);border-radius:7px;padding-left:8px;padding-right:8px}.relation-row__glyph{width:29px;height:29px;font-family:var(--kai);opacity:.8;background:#0003;border:1px solid;border-radius:50%;flex:none;place-items:center;font-size:14px;display:grid}.relation-row__body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.relation-row__top{align-items:baseline;gap:7px;min-width:0;display:flex}.relation-row__name{font-family:var(--serif);letter-spacing:.08em;flex:none;font-size:12.5px}.relation-row__role{color:#e6dcc84d;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.relation-row__bottom{align-items:center;gap:7px;display:flex}.relation-row__line{opacity:.65;background:currentColor;flex:none;width:14px;height:1px}.relation-row__line.is-dashed{background:repeating-linear-gradient(90deg,currentColor 0 3px,#0000 3px 5px)}.relation-row__label{color:#e6dcc87a;letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;font-size:8.5px;overflow:hidden}.relation-row__type{letter-spacing:.08em;opacity:.82;flex:none;margin-left:auto;font-size:8px}.relation-row__arrow{color:#e6dcc82e;flex:none;width:13px;height:13px;transition:color .16s,transform .16s}.relation-row:hover .relation-row__arrow{color:var(--gold);transform:translate(2px)}.detail-fade{z-index:2;pointer-events:none;background:linear-gradient(#070a0c00,#070a0ceb);height:58px;position:absolute;bottom:0;left:0;right:0}.detail-footer{color:#e6dcc83d;font-family:var(--serif);letter-spacing:.12em;border-top:1px solid #d8b66b17;justify-content:space-between;align-items:center;margin-top:24px;padding-top:14px;font-size:9px;display:flex}.detail-footer__mark{color:#d8b66b47;font-size:8px}.bottom-dock{z-index:44;-webkit-backdrop-filter:blur(20px);background:#080b0dab;border:1px solid #d8b66b24;border-radius:13px;align-items:stretch;gap:11px;padding:7px 9px 7px 15px;animation:.9s cubic-bezier(.22,1,.36,1) .8s both dock-in;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 22px 60px #00000052,inset 0 1px #ffffff0a}@keyframes dock-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.bottom-dock__meta{border-right:1px solid #d8b66b21;flex-direction:column;justify-content:center;gap:2px;min-width:106px;padding-right:12px;display:flex}.bottom-dock__caption{color:#d8b66b99;letter-spacing:.22em;font-size:7.5px}.bottom-dock__hint{color:#e6dcc859;letter-spacing:.03em;white-space:nowrap;font-size:8px}.bottom-dock__options{gap:2px;display:flex}.layout-button{color:#e6dcc873;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:7px;padding:8px 12px;transition:color .18s,background .18s,border-color .18s;display:flex}.layout-button:hover{color:#f4ebdae6;background:#ffffff09}.layout-button.is-active{color:var(--gold-bright);background:#d8b66b1a;border-color:#d8b66b38;box-shadow:inset 0 0 18px #d8b66b0a}.layout-button__icon{opacity:.9;width:16px;height:16px}.layout-button__name{font-family:var(--serif);letter-spacing:.12em;white-space:nowrap;font-size:11px}.layout-button__english{color:#e6dcc83d;font-family:var(--sans);letter-spacing:.1em;font-size:6.5px}.layout-button.is-active .layout-button__english{color:#d8b66b70}.scene-hint{z-index:30;color:#e6dcc84d;letter-spacing:.13em;pointer-events:none;align-items:center;gap:9px;font-size:8px;animation:1.4s 1s both fade-in;display:flex;position:fixed;bottom:29px;left:30px}.scene-hint svg{color:#d8b66b73;width:14px;height:14px;margin-right:2px}.scene-hint i{background:#e6dcc824;width:1px;height:8px}.scene-credit{z-index:30;color:#e6dcc83d;letter-spacing:.1em;pointer-events:none;align-items:center;gap:9px;font-size:8px;animation:1.4s 1.1s both fade-in;display:flex;position:fixed;bottom:29px;right:30px}.scene-credit i{background:#e6dcc824;width:1px;height:8px}.edge-label{border:1px solid color-mix(in srgb, currentColor 42%, transparent);-webkit-backdrop-filter:blur(10px);font-family:var(--sans);letter-spacing:.1em;white-space:nowrap;text-shadow:0 1px 6px #000c;background:#06090bb8;border-radius:99px;align-items:center;gap:5px;padding:3px 8px 4px;font-size:9px;line-height:1.1;display:flex;box-shadow:0 4px 16px #00000059}.edge-label__dot{background:currentColor;border-radius:50%;width:3px;height:3px;box-shadow:0 0 7px}.mobile-hint{display:none}.webgl-fallback{color:#e6dcc88c;width:100%;height:100%;font-family:var(--serif);letter-spacing:.12em;place-items:center;font-size:14px;display:grid}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (max-width:1280px){.search-box{width:258px}.detail-panel{width:336px}.era-mark{display:none}}@media (max-width:1180px){.scene-credit,.bottom-dock__english{display:none}.layout-button{padding:8px 10px}}@media (max-width:1280px){.top-actions__filter{display:grid}.legend-panel{z-index:70;opacity:0;pointer-events:none;background:#090d0ff2;width:286px;max-height:calc(100dvh - 150px);transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .22s;animation:none;top:120px;left:16px;transform:translate(-118%)}.legend-panel.is-open{opacity:1;pointer-events:auto;transform:translate(0)}.legend-panel__close{display:grid}.legend-backdrop{z-index:60;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(4px);background:#0204059e;border:0;transition:opacity .24s;display:block;position:fixed;inset:0}.legend-backdrop.is-open{opacity:1;pointer-events:auto}.scene-hint{display:none}.search-box{width:244px}}@media (max-width:900px){.app{min-height:520px}.topbar{padding:16px 16px 0}.brand{gap:10px}.brand-seal{width:38px;height:38px;font-size:20px}.brand-kicker{letter-spacing:.24em;font-size:6.5px}.brand h1{letter-spacing:.08em;margin-top:5px;font-size:19px}.brand-year{vertical-align:2px;margin-left:5px;font-size:.55em}.brand p{letter-spacing:.1em;font-size:7px}.brand p span{display:none}.top-actions{gap:6px;animation:none;transform:none}.top-actions .icon-button{width:38px;height:38px}.search-box{z-index:55;width:auto;position:fixed;top:64px;left:16px;right:16px}.search-box__field{background:#080b0dbd;height:40px}.search-results{max-height:min(58dvh,430px);overflow-y:auto}.legend-panel{width:min(310px,100vw - 24px);max-height:calc(100dvh - 138px);top:119px;left:12px}.detail-panel{top:auto;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));border-radius:16px;width:auto;max-height:52dvh;animation:.5s cubic-bezier(.22,1,.36,1) both sheet-in;left:12px}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.detail-panel:after{font-size:180px}.detail-toolbar{padding:12px 13px 4px 18px}.detail-scroll{padding:2px 18px 18px}.detail-hero h2{margin-top:8px;font-size:32px}.detail-hero blockquote{margin:16px 0 14px;font-size:13.5px;line-height:1.8}.detail-bio{font-size:12px;line-height:1.9}.detail-fade{z-index:2;pointer-events:none;background:linear-gradient(#070a0c00,#070a0ceb);height:58px;position:absolute;bottom:0;left:0;right:0}.detail-footer{margin-top:18px}.mobile-hint{bottom:calc(82px + env(safe-area-inset-bottom));z-index:30;color:#e6dcc84d;letter-spacing:.16em;white-space:nowrap;pointer-events:none;font-size:8px;animation:1.4s 1.1s both fade-in;display:block;position:fixed;left:50%;transform:translate(-50%)}.app.has-selection .mobile-hint{display:none}.bottom-dock{bottom:calc(13px + env(safe-area-inset-bottom));justify-content:center;width:calc(100vw - 24px);max-width:420px;padding:6px}.bottom-dock__meta{display:none}.bottom-dock__options{width:100%}.layout-button{flex:1;justify-content:center;padding:9px 6px}.layout-button__name{font-size:10.5px}.app.has-selection .bottom-dock,.scene-hint,.scene-credit{display:none}}@media (max-width:560px){.brand-copy p{display:none}.brand h1{font-size:17px}.brand-kicker{font-size:6px}.brand-seal{width:34px;height:34px;font-size:18px}.top-actions .icon-button{width:35px;height:35px}.top-actions .icon-button svg{width:15px;height:15px}.search-box{top:58px}.detail-panel{max-height:55dvh}.detail-fade{height:42px}.detail-meta{display:none}.detail-hero h2{font-size:29px}.detail-hero blockquote{font-size:12.5px}.detail-section__heading h3{font-size:12px}}@media (max-height:760px) and (min-width:901px){.detail-panel{top:82px;bottom:84px}.legend-panel{max-height:calc(100dvh - 218px);top:128px}.bottom-dock{bottom:16px}.scene-hint,.scene-credit{bottom:19px}.detail-hero h2{font-size:34px}.detail-hero blockquote{margin:16px 0 14px;font-size:14px}.detail-section{padding-top:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}@media (min-width:1281px){.app.has-selection .bottom-dock{left:calc(50% - 45px)}}@media (min-width:901px) and (max-width:1280px){.app.has-selection .bottom-dock{left:calc(50% - 172px)}}
