:root{--bg-0:#140c07;--bg-1:#1d1209;--bg-2:#2a1a10;--mortar:#3a2a20;--brick:#7c4231;--stone:#a89477;--wood:#3d2717;--iron:#262019;--torch:#ffb04a;--torch-deep:#ff7a1a;--brass:#c9a24a;--brass-dark:#7a5f24;--blood:#9c1f22;--blood-bright:#d4302f;--paper:#efe2c4;--paper-2:#ddcaa3;--paper-line:#c2ab84;--ink:#2a2118;--green:#6f9b46;--fg:#f2e6d4;--fg-dim:#b39a7d;--fg-faint:#806a53;--line:#c9a24a66;--line-soft:#c9a24a2e;--shadow-deep:0 14px 40px #000000b8;--shadow-plate:0 6px 0 #00000073, 0 16px 34px #0009;--glow-torch:0 0 16px #ffb04a80, 0 0 48px #ff7a1a2e;--glow-blood:0 0 16px #d4302f80;--serif:"Yu Mincho", YuMincho, "Hiragino Mincho ProN", "MS PMincho", "Noto Serif JP", serif;--sans:"Yu Gothic UI", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, system-ui, sans-serif;--mono:"Cascadia Mono", Consolas, "SFMono-Regular", ui-monospace, "Courier New", monospace;--radius:3px;--maxw:1200px;--cyan:var(--brass);--amber:var(--torch);--gold:var(--brass);--magenta:var(--blood-bright);--red:var(--blood);--red-bright:var(--blood-bright);--red-deep:#6a1013;--blue:#4a6a8a;--blue-pale:#9ab4c9;--glow-cyan:var(--glow-torch);--glow-amber:var(--glow-torch);--glow-gold:var(--glow-torch);--glow-magenta:var(--glow-blood);--glow-red:var(--glow-blood);--shadow-koma:var(--shadow-plate);--shadow-koma-sm:0 4px 0 #00000073, 0 10px 22px #00000080}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg-0);min-height:100%;color:var(--fg);font-family:var(--sans);overscroll-behavior-y:none;margin:0;padding:0;font-size:16px;line-height:1.85}body{background-image:radial-gradient(600px 520px at 4% 22%,#ff96324d,#0000 62%),radial-gradient(600px 520px at 96% 22%,#ff963247,#0000 62%),radial-gradient(1100px 780px at 50% 120%,#000000bf,#0000 60%),url(/textures/brick-wall.svg);background-repeat:no-repeat,no-repeat,no-repeat,repeat;background-size:auto,auto,auto,240px 120px;background-attachment:fixed,fixed,fixed,fixed;background-color:var(--mortar)}body:before{content:"";pointer-events:none;z-index:0;background:linear-gradient(#0c0704d1,#0c0704b8 40%,#080503eb);position:fixed;inset:0}::selection{color:#fff;background:#ffb04a59}a{color:var(--torch);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}:focus-visible{outline:2px solid var(--torch);outline-offset:2px}.fx-layer{pointer-events:none;z-index:60;position:fixed;inset:0}.fx-grain{opacity:.5;background-image:radial-gradient(#ffdcaa0d .5px,#0000 .6px);background-size:3px 3px}.fx-vignette{background:radial-gradient(#0000 44%,#000000db 100%)}.fx-canvas{z-index:0;pointer-events:none;position:fixed;inset:0}.shell{z-index:1;flex-direction:column;min-height:100dvh;display:flex;position:relative}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 20px}.stack{flex-direction:column;display:flex}.stack-8>*+*{margin-top:8px}.stack-12>*+*{margin-top:12px}.stack-16>*+*{margin-top:16px}.stack-24>*+*{margin-top:24px}.stack-32>*+*{margin-top:32px}.row{align-items:center;gap:12px;display:flex}.row-between{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1}.grid-2{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:26px;display:grid}@media (max-width:900px){.grid-2{grid-template-columns:minmax(0,1fr)}}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.serif{font-family:var(--serif)}.eyebrow{font-family:var(--sans);letter-spacing:.28em;color:#2a1e08;background:linear-gradient(#e8c86a 0%,#b98f34 100%);border:1px solid #6b5223;border-radius:2px;padding:4px 12px;font-size:11px;font-weight:800;display:inline-block;box-shadow:0 2px #00000073,inset 0 1px #fff6}.eyebrow-plain{font-family:var(--sans);letter-spacing:.28em;color:var(--torch);box-shadow:none;background:0 0;border:0;padding:0;font-size:11px}.title{font-family:var(--serif);letter-spacing:.06em;color:#fbf1e0;text-shadow:0 2px #000c,0 0 30px #ff963259;margin:0;font-size:clamp(28px,5.4vw,50px);font-weight:900;line-height:1.18}.title-red{color:var(--blood-bright);text-shadow:0 2px 0 #000000d9, var(--glow-blood)}.subtitle{font-family:var(--serif);color:var(--fg-dim);letter-spacing:.08em;margin:0;font-size:clamp(15px,2.4vw,20px)}.lead{color:var(--fg);font-size:16px;line-height:2.05}.dim{color:var(--fg-dim)}.faint{color:var(--fg-faint)}.cyan{color:var(--brass)}.amber{color:var(--torch)}.magenta{color:var(--blood-bright)}.green{color:var(--green)}.small{font-size:13px}.tiny{letter-spacing:.12em;font-size:11px}.center{text-align:center}.nowrap{white-space:nowrap}.mark{background:linear-gradient(#0000 64%,#9c1f228c 64%);padding:0 2px}.panel{border:2px solid var(--brass-dark);border-radius:var(--radius);box-shadow:var(--shadow-plate), inset 0 1px 0 #ffc88224, inset 0 -30px 60px #0006;background:linear-gradient(#2e1e14f2,#1c120cf5);padding:26px;position:relative}.panel:before{content:"";pointer-events:none;border:1px solid #c9a24a38;border-radius:2px;position:absolute;inset:7px}.panel:after{content:"";width:7px;height:7px;box-shadow:calc(100% + 0px) 0 0 0 transparent, 0 0 0 1px #0006;background:radial-gradient(circle at 35% 30%,#f0d089,#8a6a24);border-radius:50%;position:absolute;top:9px;left:9px}.panel-flat{border:1px solid var(--line-soft);border-left:3px solid var(--brass-dark);border-radius:var(--radius);background:#140c07b3;padding:16px}.panel-danger{border-color:var(--blood);box-shadow:var(--shadow-plate), 0 0 60px #9c1f2233, inset 0 -30px 70px #46060873}.koma-tilt{transform:rotate(-.4deg)}.koma-tilt-r{transform:rotate(.4deg)}.panel-title{font-family:var(--serif);letter-spacing:.2em;color:var(--torch);text-shadow:0 1px #000000b3;align-items:center;gap:10px;margin:0 0 18px;font-size:15px;font-weight:900;display:flex}.panel-title:before{content:"";background:var(--brass);flex:none;width:9px;height:9px;transform:rotate(45deg);box-shadow:0 0 8px #ffb04a99}.panel-title:after{content:"";background:linear-gradient(to right, var(--line), transparent);flex:1;height:1px}.paper{background:repeating-linear-gradient(180deg, transparent 0 28px, #c2ab8466 28px 29px), radial-gradient(circle at 12% 8%, #a0783c2e, transparent 40%), radial-gradient(circle at 88% 92%, #8c643233, transparent 45%), linear-gradient(155deg, var(--paper) 0%, var(--paper-2) 100%);color:var(--ink);box-shadow:var(--shadow-deep), inset 0 0 60px #966e3740;font-family:var(--serif);border:1px solid #6b5734;padding:30px;line-height:29px}.paper h1,.paper h2,.paper h3{font-family:var(--serif);color:#7a1518;letter-spacing:.06em}.tape{color:var(--torch);font-family:var(--serif);letter-spacing:.44em;text-align:center;background:linear-gradient(#3b3128 0%,#211a14 48%,#171008 100%);border-top:1px solid #ffc88233;border-bottom:1px solid #000000b3;padding:10px 0;font-weight:900;position:relative;box-shadow:0 6px 22px #0009,inset 0 0 40px #00000080}.tape:before,.tape:after{content:"";background:radial-gradient(circle at 35% 30%,#f0d089,#6b5223);border-radius:50%;width:9px;height:9px;margin-top:-4.5px;position:absolute;top:50%;box-shadow:0 0 0 1px #00000080}.tape:before{left:16px}.tape:after{right:16px}.tape-red{color:#ffb3b0;background:linear-gradient(#4a1f1c 0%,#2a0f0e 50%,#180809 100%)}.tape-text{text-shadow:0 0 14px #ffb04a8c,0 1px #000c;display:inline-block}.stamp{color:#ffd9c8;min-width:118px;min-height:118px;font-family:var(--serif);letter-spacing:.18em;text-align:center;text-shadow:0 1px 2px #00000080;background:radial-gradient(circle at 34% 28%,#c33b32,#8e1a1c 55%,#5e0f11 100%);border-radius:50%;justify-content:center;align-items:center;padding:12px;font-size:17px;font-weight:900;line-height:1.4;display:inline-flex;transform:rotate(-7deg);box-shadow:0 6px 18px #0009,inset 0 2px 6px #ffffff40,inset 0 -8px 16px #0006}.btn{min-height:50px;font-family:var(--serif);letter-spacing:.16em;color:#2a1e08;border-radius:var(--radius);cursor:pointer;background:linear-gradient(#e8c86a 0%,#c9a24a 45%,#9d7a2c 100%);border:1px solid #6b5223;justify-content:center;align-items:center;gap:10px;padding:12px 26px;font-size:15px;font-weight:900;transition:transform 90ms,box-shadow .12s,filter .16s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 5px #5b451c,0 12px 24px #0000008c,inset 0 1px #ffffff80}.btn:after{content:"";background:linear-gradient(105deg,#0000 36%,#fff6 50%,#0000 64%);transition:transform .6s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;transform:translate(-130%)}.btn:hover:not(:disabled){filter:brightness(1.12);box-shadow:0 5px 0 #5b451c, 0 12px 30px #0000008c, inset 0 1px 0 #fff9, var(--glow-torch)}.btn:hover:not(:disabled):after{transform:translate(130%)}.btn:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px #5b451c,0 4px 10px #00000080,inset 0 1px #fff6}.btn:disabled{filter:grayscale(.72)brightness(.6);cursor:not-allowed;box-shadow:0 3px #0006}.btn-ghost{color:var(--fg-dim);border-color:var(--line-soft);background:linear-gradient(#3c2c1ee6,#20160ee6);box-shadow:0 3px #00000080,inset 0 1px #ffc8821a}.btn-ghost:hover:not(:disabled){color:var(--torch);filter:none;border-color:var(--brass);box-shadow:0 3px #00000080,0 0 20px #ffb04a33}.btn-danger{color:#ffe6e0;background:linear-gradient(#c8342f 0%,#9c1f22 48%,#6a1013 100%);border-color:#4d0c0e;box-shadow:0 5px #440a0c,0 12px 24px #0000008c,inset 0 1px #ffffff47}.btn-danger:active:not(:disabled){box-shadow:0 1px #440a0c,0 4px 10px #00000080}.btn-amber{color:#2a1e08;background:linear-gradient(#ffd479 0%,#ffb04a 50%,#c9791a 100%);border-color:#7a4a12;box-shadow:0 5px #6c4310,0 12px 24px #0000008c,inset 0 1px #ffffff8c}.btn-amber:active:not(:disabled){box-shadow:0 1px #6c4310,0 4px 10px #00000080}.btn-sm{letter-spacing:.1em;min-height:36px;padding:6px 14px;font-size:12px;box-shadow:0 3px #00000073,inset 0 1px #ffffff59}.btn-sm:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #00000073}.btn-block{width:100%}.field{display:block}.field-label{font-family:var(--serif);letter-spacing:.18em;color:var(--torch);text-shadow:0 1px #0009;margin-bottom:8px;font-size:13px;font-weight:900;display:block}.input,.select,.textarea{border:1px solid var(--brass-dark);border-radius:var(--radius);width:100%;min-height:50px;color:var(--fg);font-family:var(--serif);letter-spacing:.08em;background:linear-gradient(#100a06,#1b1109);padding:12px 14px;font-weight:700;transition:border-color .16s,box-shadow .16s;box-shadow:inset 0 2px 8px #000000bf}.textarea{resize:vertical;min-height:96px;line-height:1.8}.input:focus,.select:focus,.textarea:focus{border-color:var(--torch);outline:none;box-shadow:inset 0 2px 8px #000000bf,0 0 18px #ffb04a47}.input::placeholder{color:var(--fg-faint);font-weight:400}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--brass) 50%), linear-gradient(135deg, var(--brass) 50%, transparent 50%), linear-gradient(180deg, #100a06, #1b1109);background-position:calc(100% - 18px) 23px,calc(100% - 12px) 23px,0 0;background-repeat:no-repeat;background-size:6px 6px,6px 6px,100% 100%;padding-right:40px}.select option{color:var(--fg);background:#241811}.codebox{justify-content:center;gap:14px;display:flex}.codebox-cell{text-align:center;width:68px;height:88px;font-family:var(--serif);color:var(--torch);border:2px solid var(--brass-dark);text-shadow:0 0 14px #ffb04a99,0 2px #000c;caret-color:var(--torch);background:linear-gradient(#3a2a1c 0%,#1a1009 46%,#2a1c11 100%);border-radius:4px;font-size:38px;font-weight:900;transition:border-color .14s,box-shadow .18s,transform .1s;box-shadow:inset 0 3px 10px #000c,inset 0 -3px 8px #ffb45a14,0 4px #00000080}.codebox-cell:focus{border-color:var(--torch);box-shadow:inset 0 3px 10px #000c, 0 6px 0 #00000080, var(--glow-torch);outline:none;transform:translateY(-3px)}.codebox-cell.filled{color:#ffe0ac;border-color:var(--brass)}.codebox-cell:disabled{filter:grayscale(.8)brightness(.55);box-shadow:inset 0 3px 10px #000c}.codebox.shake{animation:.42s shake}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-9px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}@media (max-width:420px){.codebox-cell{width:56px;height:72px;font-size:30px}}.hud{z-index:40;border-bottom:2px solid var(--brass-dark);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#23160dfa,#120b06f0);position:sticky;top:0;box-shadow:0 6px 22px #0009}.hud-inner{align-items:center;gap:14px;height:64px;display:flex}.hud-brand{font-family:var(--serif);letter-spacing:.14em;color:#fbf1e0;text-shadow:0 2px #000c,0 0 18px #ff963266;white-space:nowrap;font-size:18px;font-weight:900}.hud-brand span{color:var(--torch)}.hud-chip{font-family:var(--sans);letter-spacing:.14em;border:1px solid var(--line-soft);color:var(--fg-dim);white-space:nowrap;background:#0000004d;border-radius:2px;padding:4px 10px;font-size:11px}.hud-timer{font-family:var(--mono);color:var(--torch);letter-spacing:.06em;text-shadow:0 0 16px #ffb04a99;font-variant-numeric:tabular-nums;font-size:21px;font-weight:700}.hud-rank-btn{color:#2a1e08;cursor:pointer;background:linear-gradient(#e8c86a,#9d7a2c);border:1px solid #6b5223;border-radius:3px;place-items:center;width:46px;height:46px;transition:transform 90ms,filter .16s;display:grid;position:relative;box-shadow:0 4px #5b451c,inset 0 1px #ffffff80}.hud-rank-btn:hover{filter:brightness(1.15)}.hud-rank-btn:active{transform:translateY(3px);box-shadow:0 1px #5b451c}.hud-rank-btn .pulse{border:1px solid #ffb04a8c;border-radius:4px;animation:2.8s ease-out infinite pulsering;position:absolute;inset:-5px}@keyframes pulsering{0%{opacity:.7;transform:scale(.92)}70%{opacity:0;transform:scale(1.18)}to{opacity:0}}@media (max-width:640px){.hud-hide-sm{display:none}}.drawer-backdrop{z-index:70;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#080402cc;position:fixed;inset:0}.drawer{z-index:71;border-left:3px solid var(--brass-dark);background:linear-gradient(#281a10fc,#120b06fc),url(/textures/stone-block.svg) 0 0/160px 200px;flex-direction:column;width:min(560px,100vw);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-30px 0 80px #000c}.drawer-head{border-bottom:2px solid var(--brass-dark);align-items:center;gap:12px;padding:16px 20px;display:flex}.drawer-body{flex:1;padding:16px 20px 40px;overflow-y:auto}.tabs{border-bottom:2px solid var(--brass-dark);scrollbar-width:none;gap:5px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{font-family:var(--serif);letter-spacing:.1em;color:var(--fg-faint);cursor:pointer;white-space:nowrap;background:linear-gradient(#342214b3,#1a1009b3);border:1px solid #0000;border-bottom:0;border-radius:3px 3px 0 0;padding:10px 17px;font-size:13px;font-weight:900;transition:color .14s,background .14s}.tab:hover{color:var(--fg-dim)}.tab.active{color:#2a1e08;background:linear-gradient(#e8c86a,#b98f34);border-color:#6b5223;box-shadow:inset 0 1px #ffffff73}.rank-list{flex-direction:column;gap:5px;display:flex}.rank-row{background:#ffdcaa09;border:1px solid #c9a24a1f;border-left:4px solid #c9a24a47;border-radius:2px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;transition:background .16s,border-color .16s;display:grid}.rank-row:hover{background:#ffb04a17}.rank-row.me{border-color:var(--torch);border-left-color:var(--torch);background:#ffb04a24;box-shadow:0 0 22px #ffb04a29}.rank-row.top1{border-left-color:var(--brass);background:#c9a24a21}.rank-row.top2{border-left-color:#cbc3b4}.rank-row.top3{border-left-color:#a9682f}.rank-num{font-family:var(--serif);color:var(--fg-dim);text-align:right;font-variant-numeric:tabular-nums;text-shadow:0 1px #000000b3;font-size:22px;font-weight:900}.rank-row.top1 .rank-num{color:var(--brass);text-shadow:0 0 14px #c9a24ab3}.rank-row.top2 .rank-num{color:#efe8db}.rank-row.top3 .rank-num{color:#c07f3c}.rank-name{font-family:var(--serif);letter-spacing:.04em;color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:700;overflow:hidden}.rank-meta{font-family:var(--mono);color:var(--fg-faint);text-align:right;font-variant-numeric:tabular-nums;font-size:12px}.badge{font-family:var(--sans);letter-spacing:.1em;white-space:nowrap;border:1px solid;border-radius:2px;align-items:center;gap:5px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.badge-true{color:var(--green)}.badge-recovery{color:var(--torch)}.badge-site{color:var(--fg-faint);border-color:var(--line-soft)}.badge-live{color:var(--blood-bright)}.table{border-collapse:collapse;width:100%;font-family:var(--mono);font-size:12px}.table th{text-align:left;color:var(--torch);letter-spacing:.1em;border-bottom:2px solid var(--brass-dark);white-space:nowrap;padding:9px 10px;font-size:11px;font-weight:700}.table td{color:var(--fg-dim);white-space:nowrap;border-bottom:1px solid #c9a24a1a;padding:9px 10px}.table tbody tr:hover td{color:var(--fg);background:#ffb04a12}.table-scroll{max-height:420px;overflow:auto}.meter{border:1px solid var(--brass-dark);background:linear-gradient(#100a06,#241710);border-radius:2px;height:10px;overflow:hidden;box-shadow:inset 0 2px 6px #000000b3}.meter-fill{background:linear-gradient(#ffd479,#ff7a1a);height:100%;transition:width .6s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 12px #ff7a1ab3}.statline{font-family:var(--serif);align-items:baseline;gap:10px;display:flex}.stat-value{color:#fbf1e0;font-variant-numeric:tabular-nums;text-shadow:0 2px #000000bf,0 0 22px #ff96324d;font-size:36px;font-weight:900;line-height:1.1}.stat-label{font-family:var(--sans);letter-spacing:.18em;color:var(--fg-faint);font-size:10px;font-weight:700}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(124px,1fr));gap:12px;display:grid}.result-ranks{max-width:640px;color:var(--dim);margin:16px auto;font-size:12px;line-height:1.8}.result-ranks summary{cursor:pointer}.result-certificate{max-width:820px;margin:28px auto}.result-certificate-image{border:1px solid #b89553;border-radius:8px;width:100%;height:auto;display:block}.stat-card{border:1px solid var(--line-soft);border-top:3px solid var(--brass-dark);background:linear-gradient(#ffdcaa0d,#00000040);border-radius:2px;padding:15px}.glitch{display:inline-block;position:relative}.glitch:before{content:attr(data-text);color:#0000008c;z-index:-1;pointer-events:none;width:100%;position:absolute;top:0;left:0;transform:translate(2px,2px)}.flicker{animation:3.4s infinite flicker}@keyframes flicker{0%,to{opacity:1}42%{opacity:.92}47%{opacity:1}62%{opacity:.85}66%{opacity:1}84%{opacity:.9}}.caret:after{content:"";vertical-align:baseline;background:var(--torch);width:8px;height:2px;margin-left:3px;animation:1.05s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.flash-correct{animation:.9s ease-out flashc}@keyframes flashc{0%{box-shadow:0 0 #ffb04ab3,inset 0 0 70px #ffb04a59}to{box-shadow:var(--shadow-plate)}}.flash-wrong{animation:.55s ease-out flashw}@keyframes flashw{0%{box-shadow:inset 0 0 90px #9c1f228c, var(--shadow-plate)}to{box-shadow:var(--shadow-plate)}}.rise-in{animation:.6s cubic-bezier(.2,.8,.2,1) both risein}@keyframes risein{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.pulse-slow{animation:2.6s ease-in-out infinite pulseslow}@keyframes pulseslow{0%,to{opacity:.55}50%{opacity:1}}.spin-ring{border:2px solid #c9a24a40;border-top-color:var(--torch);border-radius:50%;width:16px;height:16px;animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.puzzle-frame{box-shadow:var(--shadow-deep), inset 0 0 0 1px #c9a24a59;background:#efe2c4;border:8px solid #241811;border-radius:2px;margin:0;position:relative;overflow:hidden}.puzzle-frame img,.puzzle-frame svg{width:100%;height:auto;display:block}.puzzle-frame figcaption{color:#b8944b;font-family:var(--mono);letter-spacing:.16em;text-align:right;background:#1b110b;border-top:1px solid #6b5734;padding:9px 14px;font-size:10px}.puzzle-frame:after{content:"証 拠 資 料";font-family:var(--serif);letter-spacing:.24em;color:#ffe6c2;pointer-events:none;background:#6e1416eb;border-radius:2px;padding:3px 10px;font-size:11px;font-weight:900;position:absolute;top:10px;left:10px;box-shadow:0 2px 6px #00000080}.doc-link{border:1px solid #6b5734;border-left:5px solid var(--brass);background:repeating-linear-gradient(180deg, transparent 0 22px, #c2ab8459 22px 23px), linear-gradient(155deg, var(--paper) 0%, var(--paper-2) 100%);color:#5a2318;font-family:var(--serif);letter-spacing:.06em;box-shadow:var(--shadow-koma-sm);text-align:left;cursor:pointer;border-radius:2px;align-items:center;gap:10px;padding:14px 16px;font-size:15px;font-weight:900;transition:transform .14s,filter .16s;display:flex}.doc-link:hover{filter:brightness(1.06);text-decoration:none;transform:translate(-2px,-2px)rotate(-.4deg)}.puzzle-workspace{grid-template-columns:minmax(0,1.22fr) minmax(320px,.78fr);align-items:start}.puzzle-title{margin-top:7px;font-size:clamp(23px,3.6vw,35px)}.puzzle-prompt{margin:0;line-height:1.95}.answer-card{position:sticky;top:16px;overflow:hidden}.answer-heading{align-items:flex-start}.evidence-number{color:#c9a24a26;font-family:var(--mono);margin-top:-12px;font-size:56px;font-weight:900;line-height:1}.answer-grid{gap:14px;display:grid}.answer-input{letter-spacing:.16em;text-align:center;text-transform:uppercase;min-height:58px;font-size:20px}.submit-evidence{letter-spacing:.14em;min-height:54px}.riddle-reference{border-left:5px solid var(--brass);background:linear-gradient(#170e08e0,#170e08eb),repeating-linear-gradient(0deg,#0000 0 27px,#c9a24a1f 27px 28px)}.code-ledger{background:#c9a24a29;border:1px solid #c9a24a47;gap:1px;margin-top:12px;display:grid}.code-ledger>div{background:#160d08;grid-template-columns:minmax(90px,1fr) .72fr .72fr;display:grid}.code-ledger strong,.code-ledger span{border-right:1px solid #c9a24a33;padding:10px 12px}.code-ledger span{color:var(--torch);font-family:var(--mono);letter-spacing:.12em;text-align:center}.fixed-ranking{background:#c9a24a2e;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:12px 0 0;padding:1px;list-style:none;display:grid}.fixed-ranking li{background:#160d08;grid-template-columns:36px 1fr;align-items:center;min-height:38px;display:grid}.fixed-ranking li>span{color:var(--brass);font-family:var(--mono);text-align:center}.fixed-ranking strong{text-overflow:ellipsis;white-space:nowrap;padding-right:8px;font-size:13px;overflow:hidden}.suit-reference>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.suit-reference span{color:#ead6af;font-family:var(--mono);text-align:center;border:1px solid #c9a24a40;padding:10px}.final-reference p{color:#d64a3b;font-family:var(--serif);letter-spacing:.12em;margin:12px 0 0;font-size:clamp(17px,2vw,22px);font-weight:900;transform:rotate(-1deg)}.interaction-fieldset{background:#00000029;border:1px solid #c9a24a59;min-width:0;margin:0;padding:14px}.interaction-fieldset legend{color:var(--torch);font-family:var(--serif);letter-spacing:.08em;padding:0 8px;font-size:12px;font-weight:900}.sigil-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.sigil-button{color:#dfba67;cursor:pointer;touch-action:manipulation;background:radial-gradient(circle at 50% 35%,#3b2813,#150d07 72%);border:1px solid #75501c;border-radius:50% 50% 44% 44%;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:122px;transition:transform .12s,border-color .2s,filter .2s;display:flex;box-shadow:inset 0 0 22px #e0a2371c,0 6px 18px #00000047}.sigil-button:hover:not(:disabled){filter:brightness(1.14);border-color:#d6a53f}.sigil-button:active:not(:disabled){transform:translateY(2px)scale(.97)}.sigil-button.complete{color:#fff0b6;opacity:1;background:radial-gradient(circle at 50% 35%,#8b661e,#2b1b08 72%);border-color:#c9a24a}.sigil-symbol{font-size:33px;line-height:1}.sigil-count{font-family:var(--mono);font-size:11px}.interaction-status{text-align:center;margin:10px 0 0}.meta-instruction{margin:0;line-height:1.7}.meta-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.meta-choice{color:#d8c7a2;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#140c07;border:1px solid #6b5734;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:182px;display:flex;position:relative;overflow:hidden}.meta-choice:before{content:"";pointer-events:none;border:1px solid #c9a24a33;position:absolute;inset:7px}.meta-choice strong{font-family:var(--serif);letter-spacing:.12em;font-size:28px}.meta-choice small{z-index:1;color:#9f8c66;font-family:var(--mono)}.meta-symbol{z-index:1;font-size:49px;line-height:1}.diamond-choice:active{background:#24120f;box-shadow:inset 0 0 35px #8f1e2459}.gold-choice{color:#f1cd68;background:radial-gradient(circle at 50% 38%,#4a3511,#130c05 72%);border-color:#9a752b}.gold-choice:active{filter:brightness(1.2);transform:translateY(2px)}.investigator-note p{margin:8px 0 0;line-height:1.75}.notice-dialog{z-index:80;width:min(620px,100vw - 32px);max-height:80dvh;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}@media (max-width:820px){.puzzle-workspace{grid-template-columns:1fr}.answer-card{position:static}.puzzle-frame{border-width:5px}}@media (max-width:520px){.fixed-ranking{grid-template-columns:1fr}.sigil-grid{gap:5px}.sigil-button{min-height:104px}.sigil-button .tiny{letter-spacing:0;font-size:8px}.meta-choice-grid{grid-template-columns:1fr}.meta-choice{min-height:142px}}.toast-wrap{z-index:90;pointer-events:none;flex-direction:column;gap:8px;width:min(560px,100vw - 32px);display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{border:1px solid var(--brass-dark);border-left:6px solid var(--brass);font-family:var(--serif);box-shadow:var(--shadow-deep);background:linear-gradient(#2f1e12,#1a1008);border-radius:2px;padding:14px 16px;font-size:15px;font-weight:700}.toast.err{border-left-color:var(--blood-bright);color:#ffd7cf}.toast.ok{border-left-color:var(--green);color:#dff0cb}.toast.warn{border-left-color:var(--torch);color:#ffe6c2}.banner{border:1px solid var(--brass-dark);border-left:6px solid var(--torch);color:#ffe6c2;font-family:var(--serif);background:linear-gradient(#5a3a1480,#1e120999);border-radius:2px;padding:12px 16px;font-size:15px;font-weight:700}.banner.critical{border-left-color:var(--blood-bright);color:#ffd7cf;background:linear-gradient(#60141680,#1e0a0a99)}.mg-wrap{box-shadow:var(--shadow-deep), inset 0 0 0 1px #c9a24a4d;touch-action:manipulation;background:radial-gradient(circle at 50% 36%,#3a2618,#150d07 74%);border:8px solid #241811;border-radius:2px;position:relative;overflow:hidden}.mg-canvas{cursor:crosshair;width:100%;height:auto;display:block}.mg-overlay{text-align:center;background:#100905e0;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.host{flex-direction:column;gap:18px;min-height:100dvh;padding:26px 34px;display:flex}.host-title{font-family:var(--serif);letter-spacing:.1em;color:#fbf1e0;text-shadow:0 3px #000c,0 0 34px #ff963266;margin:0;font-size:clamp(30px,3.6vw,58px);font-weight:900}.host-grid{flex:1;grid-template-columns:1.35fr 1fr;gap:18px;min-height:0;display:grid}.host-rank-row{background:#ffdcaa0d;border-left:5px solid #c9a24a47;border-radius:2px;grid-template-columns:74px 1fr auto;align-items:center;gap:16px;padding:10px 16px;display:grid}.host-rank-num{font-family:var(--serif);text-align:right;color:var(--fg-dim);font-size:clamp(22px,2.1vw,36px);font-weight:900}.host-rank-name{font-family:var(--serif);color:#fbf1e0;letter-spacing:.05em;font-size:clamp(18px,1.8vw,30px);font-weight:700}.divider{background:linear-gradient(to right, transparent, var(--brass-dark), transparent);height:1px;margin:22px 0;box-shadow:0 1px #ffc8821f}.hairline{border-top:1px dashed #c9a24a38}.scroll-y{overflow-y:auto}.blur-lock{filter:blur(8px)saturate(.5);-webkit-user-select:none;user-select:none;pointer-events:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:#00000059}::-webkit-scrollbar-thumb{background:var(--brass-dark);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--brass)}.intro-root{z-index:200;background:#04030a;position:fixed;inset:0;overflow:hidden}.intro-bar{z-index:5;background:#000;height:11vh;transition:transform .6s cubic-bezier(.2,.8,.2,1);position:absolute;left:0;right:0}.intro-bar.top{top:0;transform:translateY(-100%)}.intro-bar.bottom{bottom:0;transform:translateY(100%)}.intro-bar.in{transform:translateY(0)}.intro-scene{perspective:420em;perspective-origin:50% 42%;opacity:0;font-size:min(1vh,2.2vw);transition:opacity 1.1s;position:absolute;inset:0;overflow:hidden}.intro-scene.in{opacity:1}.intro-cam{transform-style:preserve-3d;position:absolute;inset:0}.intro-cam.shock{animation:.62s cubic-bezier(.2,.7,.3,1) camShock}.intro-cam.rumble{animation:2.6s linear camRumble}@keyframes camShock{0%{transform:translate(0)rotate(0)}8%{transform:translate(-1.1em,.5em)rotate(-.5deg)}18%{transform:translate(.9em,-.4em)rotate(.35deg)}30%{transform:translate(-.55em,.25em)rotate(-.2deg)}45%{transform:translate(.3em,-.15em)rotate(.1deg)}65%{transform:translate(-.12em,.06em)}to{transform:translate(0)rotate(0)}}@keyframes camRumble{0%{transform:translate(0)}5%{transform:translate(.22em,-.14em)}10%{transform:translate(-.18em,.12em)}15%{transform:translate(.14em,.1em)}20%{transform:translate(-.12em,-.1em)}30%{transform:translate(.1em,.06em)}40%{transform:translate(-.08em,-.05em)}55%{transform:translate(.06em,.04em)}70%{transform:translate(-.04em,.02em)}to{transform:translate(0)}}.intro-world{width:0;height:0;transform-style:preserve-3d;transition:transform 2.9s cubic-bezier(.3,0,.6,1);position:absolute;top:42%;left:50%;transform:translateZ(-190em)}.intro-world.creep{transform:translateZ(-165em)}.intro-world.dolly{animation:3.4s cubic-bezier(.55,0,.8,.55) forwards camDolly}@keyframes camDolly{0%{transform:translateZ(-165em)}to{transform:translateZ(245em)}}.intro-plane{backface-visibility:visible;position:absolute;overflow:hidden}.intro-plane.floor{transform-origin:50% 0;background-color:#2b221a;background-image:linear-gradient(#0000002e 0%,#0000008c 45%,#000000e6 85%,#000000fc 100%),radial-gradient(60em 40em at 50% 0,#ffaa5029,#0000 70%),url(/textures/stone-block.svg);background-size:100% 100%,100% 100%,24em 30em;width:210em;height:168em;top:42em;left:-105em;transform:rotateX(90deg)}.intro-floor-light{clip-path:polygon(36% 0,64% 0,100% 100%,0 100%);opacity:0;transform-origin:50% 0;background:linear-gradient(#ffecbef2 0%,#ffc8788c 30%,#ffa05029 65%,#0000 100%);width:140em;height:160em;margin-left:-70em;position:absolute;top:0;left:50%;transform:scaleX(.04)}.intro-floor-light.on{animation:2.6s cubic-bezier(.4,0,.6,1) forwards floorLight}@keyframes floorLight{0%{opacity:0;transform:scaleX(.04)}18%{opacity:.7;transform:scaleX(.08)}55%{opacity:.9;transform:scaleX(.55)}to{opacity:1;transform:scaleX(1)}}.intro-plane.ceiling{transform-origin:50% 0;background-color:#1a120c;background-image:linear-gradient(#00000052 0%,#000000b8 45%,#000000fa 100%),url(/textures/brick-wall.svg);background-size:100% 100%,24em 12em;width:210em;height:168em;top:-42em;left:-105em;transform:rotateX(90deg)}.intro-ceil-light{clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);opacity:0;background:linear-gradient(#ffd28c8c 0%,#ffaa5a24 45%,#0000 100%);width:120em;height:100em;margin-left:-60em;transition:opacity 2s .5s;position:absolute;top:0;left:50%}.intro-ceil-light.on{opacity:1}.intro-plane.wall-l,.intro-plane.wall-r{background-image:linear-gradient(#0000008c,#0000001a 40%,#00000073),url(/textures/brick-wall.svg);background-size:100% 100%,24em 12em;background-color:var(--mortar);width:168em;height:84em;top:-42em}.intro-plane.wall-l{transform-origin:100%;left:-273em;transform:rotateY(90deg)}.intro-plane.wall-r{transform-origin:0;left:105em;transform:rotateY(-90deg)}.intro-wall-torchlight{background:radial-gradient(50em 42em at 50% 40%,#ff963c6b,#ff78281a 55%,#0000 75%);width:90em;animation:2.3s ease-in-out infinite wallFlicker;position:absolute;top:0;bottom:0}.intro-plane.wall-l .intro-wall-torchlight{right:0}.intro-plane.wall-r .intro-wall-torchlight{left:0}@keyframes wallFlicker{0%,to{opacity:1}30%{opacity:.82}55%{opacity:.95}75%{opacity:.78}}.intro-wall-doorlight{opacity:0;width:120em;transition:opacity 1.8s .6s;position:absolute;top:0;bottom:0}.intro-plane.wall-l .intro-wall-doorlight{background:linear-gradient(270deg,#ffdca08c,#ffbe782e 45%,#0000 100%);right:0}.intro-plane.wall-r .intro-wall-doorlight{background:linear-gradient(90deg,#ffdca08c,#ffbe782e 45%,#0000 100%);left:0}.intro-wall-doorlight.on{opacity:1}.intro-back{background-image:radial-gradient(110em 80em at 50% 60%,#0000 0%,#0000008c 60%,#000000eb 100%),url(/textures/brick-wall.svg);background-size:210em 84em,24em 12em;background-color:var(--mortar);height:84em;position:absolute;top:-42em}.intro-back.left{background-position:0 0,0 0;width:85em;left:-105em}.intro-back.right{background-position:-125em 0,-125em 0;width:85em;left:20em}.intro-back.top{background-position:-85em 0,-85em 0;width:40em;height:22em;left:-20em}.intro-back-glow{opacity:0;pointer-events:none;background:radial-gradient(at 50% 60%,#ffe1aa80 0%,#ffbe7838 35%,#0000 70%);width:140em;height:100em;transition:opacity 1.8s .5s;position:absolute;top:-50em;left:-70em;transform:translateZ(.6em)}.intro-back-glow.on{opacity:1}.intro-beyond{opacity:0;background:radial-gradient(at 50% 58%,#fff8e6 0%,#ffd58a 22%,#d9862a 48%,#5a2a0c 78%,#1a0c04 100%);width:90em;height:105em;transition:opacity 1.6s .35s;position:absolute;top:-45em;left:-45em;overflow:hidden;transform:translateZ(-40em)}.intro-beyond.on{opacity:1}.intro-beyond-core{background:radial-gradient(circle,#fff 0%,#fff6dce6 30%,#ffdc9600 70%);border-radius:50%;width:40em;height:40em;margin:-20em 0 0 -20em;animation:2.4s ease-in-out infinite beyondPulse;position:absolute;top:58%;left:50%}@keyframes beyondPulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.18)}}.intro-leaf{width:20em;height:62em;transform-style:preserve-3d;position:absolute;top:-20em;transform:translateZ(-1em)rotateY(0)}.intro-leaf.left{transform-origin:0;left:-20em}.intro-leaf.right{transform-origin:100%;left:0}.intro-leaf.left.open{animation:2.6s linear forwards doorOpenLeft}.intro-leaf.right.open{animation:2.6s linear forwards doorOpenRight}@keyframes doorOpenLeft{0%{transform:translateZ(-1em)rotateY(0)}3%{transform:translateZ(-1em)rotateY(1.4deg)}6%{transform:translateZ(-1em)rotateY(.4deg)}12%{transform:translateZ(-1em)rotateY(2.4deg)}16%{transform:translateZ(-1em)rotateY(2.7deg)}23%{transform:translateZ(-1em)rotateY(6deg)}27%{transform:translateZ(-1em)rotateY(6.8deg)}38%{transform:translateZ(-1em)rotateY(16deg)}52%{transform:translateZ(-1em)rotateY(34deg)}66%{transform:translateZ(-1em)rotateY(56deg)}80%{transform:translateZ(-1em)rotateY(76deg)}90%{transform:translateZ(-1em)rotateY(88deg)}95%{transform:translateZ(-1em)rotateY(84deg)}to{transform:translateZ(-1em)rotateY(86deg)}}@keyframes doorOpenRight{0%{transform:translateZ(-1em)rotateY(0)}3%{transform:translateZ(-1em)rotateY(-1.4deg)}6%{transform:translateZ(-1em)rotateY(-.4deg)}12%{transform:translateZ(-1em)rotateY(-2.4deg)}16%{transform:translateZ(-1em)rotateY(-2.7deg)}23%{transform:translateZ(-1em)rotateY(-6deg)}27%{transform:translateZ(-1em)rotateY(-6.8deg)}38%{transform:translateZ(-1em)rotateY(-16deg)}52%{transform:translateZ(-1em)rotateY(-34deg)}66%{transform:translateZ(-1em)rotateY(-56deg)}80%{transform:translateZ(-1em)rotateY(-76deg)}90%{transform:translateZ(-1em)rotateY(-88deg)}95%{transform:translateZ(-1em)rotateY(-84deg)}to{transform:translateZ(-1em)rotateY(-86deg)}}.intro-leaf-face{background-color:#2c1a0e;background-image:repeating-linear-gradient(90deg,#0000008c 0 .16em,#ffc88c0f .16em .32em,#0000 .32em 3.3em),repeating-linear-gradient(91deg,#00000017 0 .08em,#0000 .08em .7em),repeating-linear-gradient(#0000000d 0 .4em,#0000 .4em 2.6em),linear-gradient(#4a3220 0%,#2e1c0f 50%,#1c1108 100%);position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 6em #000000bf}.intro-leaf-face:before{content:"";pointer-events:none;border:1.3em solid #0000;border-image:linear-gradient(135deg,#5a3f28,#2a1a0e 45%,#4a3320) 1;position:absolute;inset:0;box-shadow:inset 0 0 0 .12em #0009,inset 0 0 1.2em #0000008c}.intro-leaf-panel{background:linear-gradient(#00000059,#0000001f 40%,#0000004d);border-radius:.2em;position:absolute;left:3.2em;right:3.2em;box-shadow:inset .18em .18em #0009,inset -.18em -.18em #ffd2961f,0 0 0 .12em #00000073}.intro-leaf-panel.a{height:19em;top:6.5em}.intro-leaf-panel.b{height:19em;top:36em}.intro-leaf-studs{filter:drop-shadow(0 .12em .1em #000000b3);background:radial-gradient(circle at 50% 42%,#f0d27a 0%,#a37c2e 32%,#3a2a12 52%,#0000 58%) 0 0/1.1em 3.6em repeat-y;width:1.1em;position:absolute;top:3.4em;bottom:3.4em}.intro-leaf.left .intro-leaf-studs{right:2.7em}.intro-leaf.right .intro-leaf-studs{left:2.7em}.intro-kick{background:linear-gradient(#c9a24a 0%,#8a6a24 30%,#d9b85c 55%,#6b5223 100%);height:3.6em;position:absolute;bottom:1.3em;left:1.3em;right:1.3em;box-shadow:0 -.15em .4em #0009,inset 0 .1em #fff6}.intro-hinge-slot{width:15.5em;height:4.5em;position:absolute}.intro-hinge-slot.top{top:6.6em}.intro-hinge-slot.bottom{top:47em}.intro-leaf.left .intro-hinge-slot{left:-.2em}.intro-leaf.right .intro-hinge-slot{right:-.2em;transform:scaleX(-1)}.intro-hinge{width:100%;height:100%;display:block;overflow:visible}.intro-ring{transform-origin:50% 0;background:radial-gradient(circle at 50% 30%,#fff0c840,#0000 60%);border:.55em solid #c9a24a;border-radius:50%;width:3.4em;height:3.4em;position:absolute;top:29.6em;box-shadow:0 .3em .6em #000000b3,inset 0 0 .3em #0009}.intro-ring:before{content:"";background:radial-gradient(circle at 40% 35%,#f0d27a,#7a5f24 70%);border-radius:50%;width:1.6em;height:1.6em;margin-left:-.8em;position:absolute;top:-1.4em;left:50%;box-shadow:0 .15em .3em #000000b3}.intro-leaf.left .intro-ring{right:4.2em}.intro-leaf.right .intro-ring{left:4.2em}.intro-leaf.open .intro-ring{animation:2.6s ease-out forwards ringSwing}@keyframes ringSwing{0%{transform:rotate(0)}4%{transform:rotate(10deg)}12%{transform:rotate(-7deg)}22%{transform:rotate(4.5deg)}34%{transform:rotate(-2.5deg)}50%{transform:rotate(1.5deg)}70%{transform:rotate(-.8deg)}to{transform:rotate(0)}}.intro-leaf-shade{opacity:0;pointer-events:none;background:linear-gradient(90deg,#0003,#000000b3);position:absolute;inset:0}.intro-leaf.right .intro-leaf-shade{background:linear-gradient(270deg,#0003,#000000b3)}.intro-leaf.open .intro-leaf-shade{animation:2.6s linear forwards leafShade}@keyframes leafShade{0%{opacity:0}30%{opacity:.18}70%{opacity:.55}to{opacity:.78}}.intro-leaf-rim{opacity:0;pointer-events:none;width:4em;position:absolute;top:0;bottom:0}.intro-leaf.left .intro-leaf-rim{background:linear-gradient(270deg,#ffdca0d9,#0000);right:0}.intro-leaf.right .intro-leaf-rim{background:linear-gradient(90deg,#ffdca0d9,#0000);left:0}.intro-leaf.open .intro-leaf-rim{animation:2.6s linear forwards leafRim}@keyframes leafRim{0%{opacity:0}12%{opacity:.35}50%{opacity:.9}to{opacity:.6}}.intro-leaf-edge{background:linear-gradient(90deg,#6b4a2c,#b9955f 45%,#ffdca0 100%);width:1.8em;height:100%;position:absolute;top:0;box-shadow:inset 0 0 .4em #0006}.intro-leaf.left .intro-leaf-edge{transform-origin:100%;background:linear-gradient(270deg,#ffdca0 0%,#b9955f 55%,#6b4a2c 100%);right:0;transform:rotateY(-90deg)}.intro-leaf.right .intro-leaf-edge{transform-origin:0;left:0;transform:rotateY(90deg)}.intro-blade{transform-origin:50%;opacity:0;background:linear-gradient(90deg,#fff0c800 0%,#fffaf0 40%,#fff3d6 60%,#fff0c800 100%);width:1em;height:62em;position:absolute;top:-20em;left:-.5em;transform:translateZ(.3em)scaleX(.3);box-shadow:0 0 2em .6em #ffdca08c}.intro-blade.on{animation:2.6s linear forwards doorBlade}@keyframes doorBlade{0%{opacity:0;transform:translateZ(.3em)scaleX(.3)}4%{opacity:1;transform:translateZ(.3em)scaleX(.7)}16%{opacity:1;transform:translateZ(.3em)scaleX(1.6)}30%{opacity:.9;transform:translateZ(.3em)scaleX(4)}55%{opacity:.55;transform:translateZ(.3em)scaleX(14)}to{opacity:0;transform:translateZ(.3em)scaleX(40)}}.intro-jamb,.intro-lintel,.intro-arch,.intro-pillar,.intro-cap,.intro-base{background-color:#7a6a52;background-image:url(/textures/stone-block.svg);background-size:16em 20em}.intro-jamb{width:3.2em;height:64em;position:absolute;top:-22em;transform:translateZ(2em);box-shadow:inset 0 0 0 .12em #00000080,0 0 1.5em #000000b3}.intro-jamb.left{background-image:linear-gradient(90deg,#00000040,#0000008c),url(/textures/stone-block.svg);background-size:100% 100%,16em 20em;left:-23.2em}.intro-jamb.right{background-image:linear-gradient(270deg,#00000040,#0000008c),url(/textures/stone-block.svg);background-size:100% 100%,16em 20em;left:20em}.intro-lintel{background-image:linear-gradient(#fff0d229,#00000059),url(/textures/stone-block.svg);background-size:100% 100%,16em 20em;width:49em;height:4.2em;position:absolute;top:-24em;left:-24.5em;transform:translateZ(2.2em);box-shadow:0 .6em 1.4em #000000b3}.intro-arch{background-image:linear-gradient(#0000008c,#00000026 60%,#0006),url(/textures/stone-block.svg);background-size:100% 100%,16em 20em;border-radius:50% 50% 0 0/100% 100% 0 0;width:56em;height:20em;position:absolute;top:-42em;left:-28em;transform:translateZ(1.2em);box-shadow:inset 0 -.3em #00000073,0 .8em 2em #0009}.intro-keystone{clip-path:polygon(18% 0,82% 0,100% 100%,0 100%);background:linear-gradient(#c2ad8a,#8f7a5c 60%,#5b4b38);width:6em;height:7em;margin-left:-3em;position:absolute;top:.6em;left:50%;box-shadow:inset 0 .15em #ffffff4d}.intro-pillar{background-blend-mode:normal, multiply, normal;background-image:repeating-linear-gradient(#00000059 0 .14em,#0000 .14em 9em),linear-gradient(90deg,#3a2f24 0%,#8f7a5c 22%,#c2ad8a 42%,#a08c6c 62%,#4a3c2e 100%),url(/textures/stone-block.svg);background-size:100% 100%,100% 100%,16em 20em;width:6.4em;height:78em;position:absolute;top:-36em;transform:translateZ(4em);box-shadow:.6em 0 2em #000000b3}.intro-pillar.left{left:-33.2em}.intro-pillar.right{left:26.8em}.intro-cap,.intro-base{background-image:linear-gradient(90deg,#00000059,#ffffff1f 40%,#00000073),url(/textures/stone-block.svg);background-size:100% 100%,16em 20em;width:9.6em;height:3.2em;position:absolute;left:-1.6em;box-shadow:0 .5em 1em #0009}.intro-cap{clip-path:polygon(0 0,100% 0,88% 100%,12% 100%);top:0}.intro-base{clip-path:polygon(12% 0,88% 0,100% 100%,0 100%);bottom:0}.intro-torch{width:6em;height:12em;position:absolute;top:-6em;transform:translateZ(6em)}.intro-torch.left{left:-52em}.intro-torch.right{left:46em}.intro-torch-bracket{background:linear-gradient(90deg,#1a1410,#4a3d30 50%,#15100c);border-radius:0 0 .5em .5em;width:1em;height:9em;margin-left:-.5em;position:absolute;top:4em;left:50%;box-shadow:0 .3em .6em #000c}.intro-torch-bracket:after{content:"";background:linear-gradient(#4a3d30,#1a1410);border-radius:.2em;width:3.4em;height:.8em;position:absolute;top:0;left:-1.2em}.intro-torch-bowl{clip-path:polygon(0 0,100% 0,74% 100%,26% 100%);background:linear-gradient(#e8c86a 0%,#c9a24a 35%,#6b5223 100%);width:5em;height:2.4em;margin-left:-2.5em;position:absolute;top:2.6em;left:50%;box-shadow:0 .3em .8em #000000b3}.intro-flame{transform-origin:50% 100%;filter:blur(.12em);border-radius:50% 50% 45% 45%/65% 65% 35% 35%;position:absolute;bottom:9em;left:50%}.intro-flame.outer{background:radial-gradient(at 50% 80%,#ffaa3cf2 0%,#ff6e14b3 45%,#c83c0a00 78%);width:4.6em;height:8em;margin-left:-2.3em;animation:1.1s ease-in-out infinite flameOuter}.intro-flame.mid{background:radial-gradient(at 50% 80%,#ffe08a 0%,#ffb340 45%,#ff8c1e00 78%);width:3em;height:5.6em;margin-left:-1.5em;animation:.8s ease-in-out infinite flameMid}.intro-flame.core{background:radial-gradient(at 50% 80%,#fff 0%,#fff4c8 40%,#ffe6a000 80%);width:1.5em;height:3em;margin-left:-.75em;animation:.55s ease-in-out infinite flameCore}@keyframes flameOuter{0%,to{transform:scale(1)skew(0)}25%{transform:scale(.92,1.1)skew(-4deg)}50%{transform:scale(1.06,.94)skew(3deg)}75%{transform:scale(.95,1.06)skew(-2deg)}}@keyframes flameMid{0%,to{transform:scale(1)skew(0)}33%{transform:scale(1.08,.92)skew(4deg)}66%{transform:scale(.9,1.12)skew(-3deg)}}@keyframes flameCore{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(.85,1.15)}}.intro-torch-glow{pointer-events:none;background:radial-gradient(circle,#ffaa4680 0%,#ff82282e 35%,#0000 70%);border-radius:50%;width:40em;height:40em;margin:-20em 0 0 -20em;animation:1.7s ease-in-out infinite glowFlicker;position:absolute;top:3em;left:50%}@keyframes glowFlicker{0%,to{opacity:1;transform:scale(1)}28%{opacity:.8;transform:scale(.96)}55%{opacity:.95;transform:scale(1.03)}80%{opacity:.75;transform:scale(.97)}}.intro-embers{width:0;height:0;position:absolute;top:3em;left:50%}.intro-embers i{opacity:0;width:.35em;height:.35em;animation:2.6s linear infinite emberRise;animation-delay:calc(var(--i) * -.37s);left:calc((var(--i) - 3) * .5em);background:#ffd27a;border-radius:50%;position:absolute;box-shadow:0 0 .5em #ff9a2a}@keyframes emberRise{0%{opacity:0;transform:translate(0)scale(1)}10%{opacity:1}50%{transform:translate(calc((var(--i) - 3) * 1.2em), -9em) scale(.8);opacity:.8}to{transform:translate(calc((var(--i) - 3) * 2.2em), -19em) scale(.3);opacity:0}}.intro-dust{pointer-events:none;width:38em;height:40em;position:absolute;top:-19em;left:-19em;transform:translateZ(3em)}.intro-dust span{opacity:0;background:#ffe6bee6;border-radius:50%;width:.3em;height:.3em;position:absolute;top:0}.intro-dust span:first-child{left:6%}.intro-dust span:nth-child(2){left:22%}.intro-dust span:nth-child(3){left:41%}.intro-dust span:nth-child(4){left:58%}.intro-dust span:nth-child(5){left:77%}.intro-dust span:nth-child(6){left:92%}.intro-dust.on span{animation:1.6s ease-in forwards dustFall}.intro-dust.on span:nth-child(2){animation-delay:.12s}.intro-dust.on span:nth-child(3){animation-delay:50ms}.intro-dust.on span:nth-child(4){animation-delay:.2s}.intro-dust.on span:nth-child(5){animation-delay:90ms}.intro-dust.on span:nth-child(6){animation-delay:.16s}@keyframes dustFall{0%{opacity:0;transform:translateY(0)scale(1)}8%{opacity:.95}to{opacity:0;transform:translateY(36em)scale(.5)}}.intro-lock{width:7.2em;height:7.2em;transition:opacity .35s,transform .45s;position:absolute;top:8em;left:-3.6em;transform:translateZ(.8em)}.intro-lock-ring{background:radial-gradient(circle at 34% 30%,#6b5223,#2a1e08);border:.7em solid #d8b45c;border-radius:50%;transition:transform .7s cubic-bezier(.3,1.6,.4,1);position:absolute;inset:0;box-shadow:0 0 2em #ffb04a73,inset 0 0 1.6em #0009,0 .4em .8em #000000b3}.intro-lock-ring:after{content:"";clip-path:polygon(0 0,100% 0,100% 45%,70% 45%,80% 100%,20% 100%,30% 45%,0 45%);background:#0e0904;border-radius:.8em .8em .2em .2em;width:1.6em;height:2.2em;margin:-1.1em 0 0 -.8em;position:absolute;top:50%;left:50%}.intro-lock-bar{background:linear-gradient(#e8c86a,#7a5f24);border-radius:.2em;width:200%;height:14%;transition:transform .6s cubic-bezier(.4,0,.2,1);position:absolute;top:44%;left:-50%;box-shadow:0 .4em .9em #000000bf}.intro-lock.open .intro-lock-ring{transform:rotate(140deg)}.intro-lock.open .intro-lock-bar{transform:translate(-58%)}.intro-lock.gone{opacity:0;transform:translateZ(.8em)scale(.86)translateY(.6em)}.intro-rays{opacity:0;pointer-events:none;background:radial-gradient(circle,#fff0c88c 0%,#ffdca040 18%,#0000 60%),repeating-conic-gradient(#ffebbe00 0deg 5deg,#ffebbe29 7deg 9deg,#ffebbe00 11deg 17deg,#ffebbe1a 19deg 20.5deg,#ffebbe00 22deg 29deg);border-radius:50%;width:220em;height:220em;position:absolute;top:-99em;left:-110em;transform:translateZ(30em)rotate(0)scale(.6);-webkit-mask-image:radial-gradient(circle,#000 0%,#000000e6 25%,#0000 60%);mask-image:radial-gradient(circle,#000 0%,#000000e6 25%,#0000 60%)}.intro-rays.on{animation:3.4s ease-out forwards raysGrow}@keyframes raysGrow{0%{opacity:0;transform:translateZ(30em)rotate(0)scale(.6)}15%{opacity:.3;transform:translateZ(30em)rotate(2deg)scale(.75)}60%{opacity:.85;transform:translateZ(30em)rotate(8deg)scale(1.1)}to{opacity:1;transform:translateZ(30em)rotate(14deg)scale(1.5)}}.intro-vignette{z-index:3;pointer-events:none;background:linear-gradient(#000000f2 0%,#0009 9%,#0000 22%),linear-gradient(#0000 78%,#0009 91%,#000000f2 100%),radial-gradient(#0000 55%,#00000080 100%);position:absolute;inset:0}.intro-bloom{z-index:4;opacity:0;pointer-events:none;background:radial-gradient(at 50% 52%,#fff8e6f2 0%,#ffe1aa99 25%,#ffbe6e26 50%,#0000 75%);position:absolute;inset:0}.intro-bloom.on{animation:3.1s ease-in forwards bloomGrow}@keyframes bloomGrow{0%{opacity:0;transform:scale(.3)}45%{opacity:.12;transform:scale(.55)}to{opacity:.85;transform:scale(1.3)}}.intro-caption{z-index:6;text-align:center;pointer-events:none;position:absolute;bottom:14vh;left:0;right:0}.intro-line{font-family:var(--serif);letter-spacing:.6em;color:var(--torch);text-shadow:0 2px #000000d9,0 0 24px #ff963299;opacity:0;font-size:clamp(15px,2.2vw,22px);font-weight:900;transition:opacity .6s,transform .6s;transform:translateY(10px)}.intro-line.in{opacity:1;transform:none}.intro-stamp{border:3px double var(--blood-bright);color:#ffd9c8;opacity:0;background:#1406068c;align-items:baseline;gap:14px;margin-top:14px;padding:8px 26px;transition:opacity .28s,transform .34s cubic-bezier(.2,1.5,.4,1);display:inline-flex;transform:rotate(-4deg)scale(2.4);box-shadow:0 10px 30px #0009}.intro-stamp.in{opacity:1;transform:rotate(-4deg)scale(1)}.intro-stamp-name{font-family:var(--serif);letter-spacing:.14em;font-size:clamp(22px,3.6vw,40px);font-weight:900}.intro-stamp-site{font-family:var(--mono);color:var(--torch);letter-spacing:.2em;font-size:clamp(12px,1.6vw,17px)}.intro-sub{min-height:26px;font-family:var(--serif);letter-spacing:.5em;color:#ffe6c2;opacity:0;text-shadow:0 2px #000c,0 0 18px #ffc87880;margin-top:12px;font-size:clamp(14px,2vw,20px);font-weight:900;transition:opacity .5s}.intro-sub.in{opacity:1}.intro-flash{z-index:8;opacity:0;pointer-events:none;background:radial-gradient(circle,#fffdf5,#ffe4b0 45%,#ffbe5c 80%);transition:opacity .7s ease-in;position:absolute;inset:0}.intro-flash.on{opacity:1}.intro-skip{z-index:9;font-family:var(--sans);letter-spacing:.18em;color:#ffebc8bf;cursor:pointer;background:#00000073;border:1px solid #ffdcaa59;border-radius:2px;padding:8px 18px;font-size:12px;font-weight:700;position:absolute;bottom:calc(11vh + 18px);right:18px}.intro-skip:hover{color:#fff;border-color:var(--torch)}@media (prefers-reduced-motion:reduce){.intro-scene{transition:opacity .2s}.intro-world,.intro-world.creep,.intro-world.dolly{transition:none;animation:none;transform:translateZ(-80em)}.intro-cam.shock,.intro-cam.rumble,.intro-embers i,.intro-flame,.intro-torch-glow,.intro-wall-torchlight,.intro-beyond-core{animation:none}}.tab.locked{color:var(--fg-faint);cursor:not-allowed;opacity:.65;letter-spacing:.02em;background:repeating-linear-gradient(-45deg,#ffffff08 0 6px,#00000029 6px 12px)}.tab.locked:hover{color:var(--fg-faint)}html.museum-mode,body.museum-mode{overscroll-behavior:none;width:100%;height:100%;overflow:hidden}body.museum-mode .shell{height:100dvh;min-height:0;overflow:hidden}body.museum-mode .hud{flex:0 0 54px}body.museum-mode .hud-inner{height:54px}body.museum-mode main.container{flex:1;max-width:none;min-height:0;overflow:hidden;padding:8px 10px!important}body.museum-mode main.container>div{width:100%;height:100%;min-height:0}.museum-game-shell{grid-template-rows:auto minmax(0,1fr) auto;gap:8px;width:min(1800px,100%);height:100%;min-height:0;margin:0 auto;display:grid}.museum-game-shell>*+*{margin-top:0!important}.museum-game-hud,.museum-room-nav{justify-content:space-between;align-items:center;gap:18px;display:flex}.museum-game-heading{align-items:center;gap:12px;min-width:0;display:flex}.museum-back-button{white-space:nowrap;flex:none}.museum-game-title{font-family:var(--serif);letter-spacing:.08em;margin-top:4px;font-size:clamp(18px,2.4vw,30px);display:block}.museum-game-hud{padding:9px 14px}.museum-stage{min-height:0}.museum-rank{text-align:right;grid-template-columns:auto auto;align-items:baseline;column-gap:5px;min-width:110px;display:grid}.museum-rank .tiny{grid-column:1/-1}.museum-rank b{font:900 clamp(26px, 4vw, 44px)/1 var(--mono);color:var(--gold)}.museum-stage>div{height:100%;aspect-ratio:auto!important;min-height:0!important}.museum-interact-button{z-index:12;color:#ffe7b6;min-width:min(330px,100% - 250px);font-family:var(--serif);letter-spacing:.12em;cursor:pointer;white-space:nowrap;background:#100c0beb;border:2px solid #e8c36c;border-radius:4px;padding:12px 22px;font-weight:900;position:absolute;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 0 28px #e0ba5c4d}.museum-puzzle-dialog,.museum-gate-dialog{z-index:91;pointer-events:none;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.museum-puzzle-dialog>*,.museum-gate-dialog>*{pointer-events:auto}.museum-puzzle-panel{overscroll-behavior:contain;width:min(980px,100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto}.museum-gate-dialog .panel{width:min(560px,100vw - 32px)}.museum-puzzle-image{background:#f4f0e7;border:1px solid #d6b87473;place-items:center;margin:14px 0;padding:10px;display:grid;box-shadow:inset 0 0 0 1px #1f160d1f}.museum-puzzle-image img{object-fit:contain;opacity:1;filter:none;background:#fff;max-width:100%;max-height:52dvh;display:block}.museum-judgement{border:2px solid var(--brass-dark);background:#1c120af0;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:12px 0;padding:12px 14px;display:grid;box-shadow:0 8px 24px #00000073}.museum-judgement strong{font:900 15px/1 var(--mono);letter-spacing:.12em}.museum-judgement span{font-weight:700}.museum-judgement.correct{border-color:var(--green);color:#e5ffd2;background:#184327eb}.museum-judgement.incorrect{border-color:var(--blood-bright);color:#ffe0d8;background:#5b1719ed}.museum-judgement.info{color:#ffe9b5}.museum-passage-button{margin-top:10px}.museum-passage-alert{z-index:11;color:#e9fbff;pointer-events:none;background:#04121be6;border:2px solid #65dfff;grid-template-columns:auto auto auto;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 32px);padding:9px 14px;animation:1.8s ease-in-out infinite alternate passage-notice;display:grid;position:absolute;top:72px;left:50%;transform:translate(-50%);box-shadow:0 0 30px #48d7ff59}.museum-passage-alert strong{font:900 13px/1 var(--mono);letter-spacing:.12em;color:#7ee7ff}.museum-passage-alert span{font-size:12px;font-weight:800}.museum-passage-arrow{line-height:1;font-size:25px!important}@keyframes passage-notice{0%{filter:brightness(.95);transform:translate(-50%)scale(.99)}to{filter:brightness(1.15);transform:translate(-50%)scale(1.01)}}.museum-book-dialog{z-index:32;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:radial-gradient(circle at 28% 42%,#c3d6011f,#0000 34%),#04050ce6;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.museum-book-promo{overscroll-behavior:contain;color:#171229;background:linear-gradient(135deg,#fffdf4 0%,#f4efe1 58%,#fff7de 100%);border:2px solid #c3d601;grid-template-columns:minmax(360px,.95fr) minmax(0,1.05fr);gap:clamp(18px,3vw,38px);width:min(1120px,100%);max-height:calc(100% - 4px);padding:clamp(18px,3vw,34px);display:grid;position:relative;overflow:auto;box-shadow:0 24px 80px #000000b8,0 0 34px #c3d6012e}.museum-book-close{z-index:2;cursor:pointer;color:#080058;width:36px;height:36px;font:900 25px/1 var(--sans);background:#ffffffd9;border:1px solid #08005840;border-radius:50%;position:absolute;top:8px;right:10px}.museum-book-visual{background:#fff;border:2px solid #c3d601;align-self:center;margin:0;padding:8px;overflow:hidden;box-shadow:0 18px 34px #08005838}.museum-book-visual img{object-fit:contain;width:100%;height:auto;display:block}.museum-book-copy{align-self:center;min-width:0}.museum-book-copy .eyebrow{color:#e56f17}.museum-book-copy h2{color:#080058;margin:8px 38px 5px 0;font-size:clamp(25px,4vw,44px);line-height:1.08}.museum-book-lead{color:#473e61;margin:0 0 17px;font-size:clamp(14px,1.8vw,18px);font-weight:800}.museum-book-copy h3{color:#080058;margin:0 0 8px;font-size:16px}.museum-book-copy ul{gap:7px;margin:0;padding-left:1.25em;display:grid}.museum-book-copy li{padding-left:3px;font-size:clamp(12px,1.4vw,15px);font-weight:650;line-height:1.5}.museum-book-copy li::marker{color:#e56f17}.museum-book-cta{color:#fff;letter-spacing:.02em;background:#080058;border-left:6px solid #c3d601;margin:18px 0 12px;padding:11px 13px;font-size:clamp(17px,2.2vw,24px);font-weight:950}@media (max-width:700px){body.museum-mode .hud{flex-basis:50px}body.museum-mode .hud-inner{height:50px}body.museum-mode main.container{padding:5px!important}.museum-game-shell{gap:5px}.museum-game-hud{padding:7px 9px}.museum-game-title{text-overflow:ellipsis;white-space:nowrap;max-width:68vw;font-size:16px;overflow:hidden}.museum-game-heading{gap:6px}.museum-back-button{padding:6px 7px!important}.museum-rank{min-width:76px}.museum-rank b{font-size:28px}.museum-stage>div{height:100%;border-width:4px!important;min-height:0!important}.museum-room-nav{padding:6px 8px}.museum-room-nav>.small{display:none}.museum-room-nav>.row{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;display:grid;overflow:hidden;gap:4px!important}.museum-room-nav .btn{min-width:0;padding:6px 3px;font-size:9px;overflow:hidden}.museum-interact-button{white-space:normal;width:min(70%,280px);min-width:0;padding:10px 12px;font-size:12px;bottom:140px}.museum-puzzle-dialog,.museum-gate-dialog{padding:8px}.museum-puzzle-panel{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:14px}.museum-puzzle-image img{max-height:40dvh}.museum-judgement{grid-template-columns:1fr;gap:5px;padding:9px 10px}.museum-passage-alert{grid-template-columns:auto auto;width:calc(100% - 24px);padding:7px 9px;top:58px}.museum-passage-alert span:not(.museum-passage-arrow){font-size:10px}.museum-passage-arrow{grid-area:1/2/3;justify-self:end}.museum-book-dialog{padding:6px}.museum-book-promo{grid-template-columns:minmax(0,1fr);gap:8px;width:100%;padding:13px 11px}.museum-book-visual{justify-self:center;width:min(100%,430px);padding:4px}.museum-book-visual img{max-height:31dvh}.museum-book-close{width:30px;height:30px;font-size:21px;top:5px;right:6px}.museum-book-copy h2{margin-top:5px;font-size:19px}.museum-book-lead{margin-bottom:9px;font-size:11px;line-height:1.35}.museum-book-copy h3{margin-bottom:5px;font-size:12px}.museum-book-copy ul{gap:3px;padding-left:1.05em}.museum-book-copy li{font-size:10px;line-height:1.3}.museum-book-cta{border-left-width:4px;margin:9px 0 7px;padding:7px 8px;font-size:13px}.museum-book-copy .btn{padding:7px 10px;font-size:10px}}@media (max-width:420px),(max-height:720px){.museum-game-title{font-size:14px}.museum-rank b{font-size:24px}}.museum-motion-controls{z-index:12;text-align:center;pointer-events:none;position:absolute;inset:0}.museum-motion-controls .museum-interact-button{pointer-events:auto}.museum-motion-caption{color:#fff0cf;background:#2e251ded;border:1px solid #c9a24a;border-radius:10px;width:max-content;max-width:84%;padding:8px 14px;font-size:13px;position:absolute;top:128px;left:50%;transform:translate(-50%)}.museum-motion-controls small{color:#ffedc7;background:#201a17d9;border-radius:8px;width:max-content;padding:3px 9px;font-size:11px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.museum-motion-error{color:#fff0cf;pointer-events:none;font-size:12px;position:absolute;top:55px;left:12px;right:12px}@media (max-width:700px){.museum-motion-controls .museum-interact-button{bottom:116px}.museum-motion-controls small{bottom:94px}.museum-motion-caption{font-size:11px;top:96px}}.museum-controls-guide{color:#302417;text-align:left;pointer-events:none;background:#fff6e1f5;border:1px solid #9b8053;border-radius:8px;max-width:calc(100% - 140px);padding:8px 12px;font-size:13px;font-weight:700;line-height:1.7;position:absolute;top:12px;right:14px;box-shadow:0 2px 8px #281a0c2e}@media (max-width:700px){.museum-controls-guide{max-width:calc(100% - 116px);padding:6px 8px;font-size:11px;right:10px}}.museum-puzzle-extra{background:#f4f0e7;border:1px solid #d6b87473;margin:12px 0 0;padding:10px}.museum-puzzle-extra img{object-fit:contain;background:#fff;width:100%;max-height:46dvh;display:block}.museum-puzzle-extra figcaption{text-align:center;color:#6b5a3c;margin-top:6px}.museum-poster-list,.museum-hint-list{border:1px dashed var(--brass-dark);background:#1c120a80;margin-top:12px;padding:10px 12px}.museum-poster-list>summary,.museum-hint-list>summary{cursor:pointer;font:700 13px/1.4 var(--mono);letter-spacing:.08em;color:var(--brass)}.museum-poster-list ul{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 14px;margin:10px 0 0;padding:0;list-style:none;display:grid}.museum-poster-list li{gap:10px;font-size:14px;display:flex}.museum-poster-list li .mono{color:var(--cyan,#8fd6e6);min-width:3.5em}.museum-hint-title{font:700 13px/1.4 var(--mono);letter-spacing:.08em;color:var(--brass)}.museum-help-row{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.museum-help-row .btn{flex:200px}.museum-giveup-button{color:#ffb3a6;border-color:#d4142c8c}.museum-revealed-answer{background:#3c0a0e8c;border:1px solid #d4142c99;gap:6px;margin-top:12px;padding:12px 14px;display:grid}.museum-revealed-answer strong{color:#ffe0a8;letter-spacing:.06em;font-size:22px}.museum-revealed-answer p{margin:0;line-height:1.6}.museum-revealed-label{font:700 12px/1.4 var(--mono);letter-spacing:.12em;color:#ff9d8c}.result-share-row{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.btn-x{color:#fff;background:#000;border-color:#444}.btn-x:hover{filter:brightness(1.3)}.museum-hint-list ol{gap:6px;margin:10px 0 0;padding-left:1.2em;font-size:14px;display:grid}.review-card{background:#181009b8;border:1px solid #d6b87459;padding:12px 14px 14px}.review-head{font:900 11px/1 var(--mono);letter-spacing:.18em;align-items:center;gap:10px;display:flex}.review-room{color:var(--brass)}.review-case{color:#ffe7bdb3;border:1px solid #d6b87473;padding:2px 6px}.review-title{font:900 17px/1.3 var(--serif);color:#ffe9c4;margin-top:8px}.review-sub{color:#ffe7bd8c;font-size:12px}.review-answer-sheet{background:#fff;border:3px solid #111;align-items:center;gap:14px;margin-top:10px;padding:10px 14px;display:flex}.review-answer-label{flex:none;align-self:center;width:78px;height:auto;display:block}.review-answer-value{color:#111;letter-spacing:.06em;word-break:break-all;font:900 26px/1 sans-serif}.review-answer-tile{flex:none;width:48px;height:48px;margin-left:auto;display:block;transform:scaleY(-1)}.review-meta{margin-top:8px}.review-meta .amber{margin-left:6px}.review-go{color:#ffe3ab;font:900 11px/1 var(--mono);letter-spacing:.12em;cursor:pointer;background:#d6b8741f;border:1px solid #d6b8748c;flex:none;padding:5px 10px;transition:background .15s,border-color .15s}.review-go:hover,.review-go:focus-visible{border-color:var(--brass);background:#d6b87442}.review-go span{margin-left:2px}.review-here{color:#ffe7bd99;font:900 11px/1 var(--mono);letter-spacing:.12em;border:1px dashed #d6b87466;flex:none;padding:5px 10px}.review-card.here{border-color:var(--brass);box-shadow:inset 0 0 0 1px #d6b87440}.museum-closed-banner{border:1px solid #d6b87473;border-left:3px solid var(--brass);color:#ffe3ab;background:#d6b8741a;margin-bottom:10px;padding:8px 12px;font-size:13px;line-height:1.5}.hud-timer-countdown{background:#00000059;border:1px solid #ffb04a73;border-radius:3px;align-items:baseline;gap:8px;padding:2px 10px;display:inline-flex}.hud-timer-label{white-space:nowrap;font-family:var(--sans,sans-serif);letter-spacing:.16em;color:#ffe7bdb3;text-shadow:none;font-size:11px;font-weight:700}.hud-timer-urgent{color:#ff8a7a;text-shadow:0 0 18px #d4142cbf;border-color:#d4142cbf;animation:1s ease-in-out infinite timer-pulse}.hud-timer-urgent .hud-timer-label{color:#ffc9c0}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.62}}.admin-round-timer{border:1px solid var(--brass-dark);min-width:96px;font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--torch);background:#00000059;border-radius:3px;align-items:baseline;gap:6px;padding:3px 10px;font-weight:700;display:inline-flex}.admin-round-timer.idle{color:#ffe7bd73}.admin-round-timer.urgent{color:#ff8a7a;border-color:#d4142cbf}.badge-on{border-color:var(--green);color:#d6ffd0;background:#184327e6;box-shadow:0 0 14px #34b36b73}.badge-off{border-color:var(--brass-dark);color:#ffe7bd8c;background:#00000059}.museum-catalog-dialog{z-index:6;background:#0c0704d1;place-items:center;padding:18px;display:grid;position:absolute;inset:0;overflow-y:auto}.museum-catalog{color:#2a2118;background:#f2e7cd;border:3px solid #b08a4a;width:min(640px,100%);padding:18px 20px 22px;box-shadow:0 18px 44px #0000008c}.museum-catalog .eyebrow{color:#a08a5a}.museum-catalog-title{font:900 26px/1.2 var(--serif);color:#6d0d18;letter-spacing:.06em;margin:2px 0 0}.museum-catalog .btn-ghost{color:#5a4a2c;background:#fff6;border-color:#a98f5f}.museum-catalog-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 20px;margin:0;padding:0;list-style:none;display:grid}.museum-catalog-list li{border-bottom:1px dashed #c9b98f;grid-template-columns:5.2em 1fr;align-items:baseline;gap:4px 10px;padding-bottom:6px;display:grid}.museum-catalog-region{font:700 15px/1.4 var(--sans,sans-serif);color:#5a4a2c;grid-row:span 2}.museum-catalog-dish{font:900 19px/1.2 var(--serif);color:#2a2118}.museum-catalog-reading{color:#8a7a55;grid-column:2;font-size:13px}.room-return{z-index:200;color:#fff5e6;isolation:isolate;background:#32251e;outline:none;grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed;inset:0}.room-return-heading{padding:max(24px, env(safe-area-inset-top)) 24px 8px;text-align:center;background:linear-gradient(#211713,#32251e)}.room-return-heading .eyebrow{color:#eebda4;letter-spacing:.25em}.room-return-heading h2{letter-spacing:.1em;margin:8px 0 0;font-size:clamp(22px,4vw,34px)}.room-return-stage{width:100%;min-height:0;overflow:hidden}.room-return-stage canvas{width:100%;height:100%;display:block}.room-return-caption{padding:12px 20px max(22px, env(safe-area-inset-bottom));text-align:center;background:linear-gradient(#32251e,#211713)}.room-return-caption p{letter-spacing:.05em;margin:0 0 16px;font-size:clamp(14px,2vw,18px)}.room-return-caption .btn{color:#ead6c9;border-color:#947c68}@media (max-height:500px){.room-return-heading{padding:8px}.room-return-heading h2{margin:0;font-size:20px}.room-return-caption{padding:6px 12px}.room-return-caption p{margin-right:16px;display:inline}}.review-frame{color:#ffe7bdd9;font:900 11px/1 var(--mono);letter-spacing:.08em;cursor:pointer;background:0 0;border:1px solid #d6b87473;flex:none;padding:4px 8px}.review-frame:hover,.review-frame:focus-visible{border-color:var(--brass);background:#d6b8742e}.review-head{flex-wrap:wrap;row-gap:6px}.review-frame-dialog{z-index:120;background:#080502d1;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.review-frame-panel{background:#1a120b;border:1px solid #d6b8748c;width:min(920px,100%);max-height:calc(100dvh - 32px);padding:16px;overflow:auto}.review-frame-image{background:#fff;width:100%;height:auto;margin-top:12px;display:block}.museum-poster-dialog{z-index:1000;background:#0c0704db;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.museum-poster{color:#2a2118;background:#f2e7cd;border:3px solid #b08a4a;flex-direction:column;max-width:100%;max-height:100%;padding:10px 12px 12px;display:flex;box-shadow:0 18px 44px #0000008c}.museum-poster .eyebrow{color:#a08a5a}.museum-poster img{aspect-ratio:2/3;object-fit:contain;flex:auto;width:auto;max-width:100%;height:calc(100vh - 150px);min-height:0;margin:8px auto 0;display:block}.museum-exhibit-note{color:#7a2a1c;text-align:center;border-top:1px dashed #b9a57c;margin:10px 0 0;padding-top:10px;font-size:13px;font-weight:700}.museum-stage{position:relative}.museum-clear-banner{z-index:20;pointer-events:none;background:radial-gradient(#0a08048c,#0a080400 70%);place-items:center;display:grid;position:absolute;inset:0}.museum-clear-banner strong{font:900 clamp(48px, 11vw, 132px)/1 var(--serif);letter-spacing:.14em;color:#fff3cf;text-shadow:0 0 18px #ffd678d9,0 4px #6b4a14,0 10px 30px #0009}.museum-clear-banner.all strong{color:#fff8e1;text-shadow:0 0 26px #7ee7ffe6,0 4px #1c5a6b,0 10px 30px #0009}.elevator-kicker{font:600 10px/1.5 var(--font-mono,monospace);letter-spacing:.2em;color:#e6b65e;display:block}.elevator-escape{z-index:140;isolation:isolate;color:#fff9ed;background:#11171e;outline:none;position:fixed;inset:0;overflow:hidden}.elevator-escape:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#081015b3,#0000 23% 54%,#081015a6 75%,#080c11 100%);position:absolute;inset:0}.elevator-escape-canvas{z-index:-2;position:absolute;inset:0}.elevator-escape-canvas canvas{width:100%;height:100%;display:block}.elevator-escape-header{top:max(25px, env(safe-area-inset-top));justify-content:space-between;align-items:flex-start;gap:16px;display:flex;position:absolute;left:clamp(22px,4vw,64px);right:clamp(22px,4vw,64px)}.elevator-escape-header p{letter-spacing:.06em;margin:7px 0 0;font-size:14px;font-weight:600}.elevator-floor{background:#11171ecc;border:1px solid #e4b76d60;border-radius:10px;justify-items:center;min-width:76px;padding:9px 15px;display:grid;box-shadow:inset 0 1px #ffffff15}.elevator-floor span{color:#ffd284;font:400 30px/1.2 monospace}.elevator-floor small{letter-spacing:.13em;color:#b3b4b4;font:9px/1.8 monospace}.elevator-loading{color:#e6dbc6;justify-content:center;align-items:center;gap:16px;display:flex}.elevator-escape>.elevator-loading{position:absolute;inset:0}.elevator-escape-story{bottom:max(30px, env(safe-area-inset-bottom));text-align:center;position:absolute;left:clamp(22px,4vw,64px);right:clamp(22px,4vw,64px)}.elevator-caption{text-wrap:balance;text-shadow:0 2px 10px #000;margin:16px 0 18px;font-size:clamp(13px,1.5vw,17px);line-height:1.8}.elevator-destination{animation:.7s both elevator-arrive}.elevator-destination h1{text-align:left;letter-spacing:-.035em;margin:8px 0;font:500 clamp(23px,3vw,43px)/1.12 Arial,sans-serif;display:inline-block;position:relative}.elevator-destination h1>span{color:#c79aff;font-size:42px;position:absolute;top:-5px;right:-30px;transform:rotate(90deg)}.elevator-destination>p{letter-spacing:.1em;color:#dcd5cb;margin:8px 0;font-size:12px}.elevator-continue,.elevator-skip{cursor:pointer;font:inherit;border-radius:8px;min-height:46px;transition:background .2s,transform .2s}.elevator-continue{color:#201b14;background:#f0ce8f;border:1px solid #fff0ce;justify-content:center;align-items:center;gap:30px;padding:12px 26px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 5px 24px #e4ad3820}.elevator-continue:hover{background:#ffe5b4;transform:translateY(-1px)}.elevator-actions{justify-content:center;gap:12px;display:flex}.elevator-actions>button{gap:8px;min-width:0;padding:12px 18px}.elevator-skip{color:#f1e9dc;background:#11171eaa;border:1px solid #ffffff45;padding:10px 20px;font-size:12px}.elevator-skip:hover{background:#30373f}.elevator-continue:focus-visible,.elevator-skip:focus-visible{outline-offset:5px;outline:3px solid #d8b4ff}.elevator-fallback{color:#c8c0b2;font-size:12px}@keyframes elevator-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.elevator-escape.has-credits .elevator-destination,.elevator-escape.has-credits .elevator-caption{pointer-events:none;animation:.8s both elevator-depart}.elevator-credits{z-index:0;pointer-events:none;background:#070b10e0;animation:1.2s both elevator-credits-fade;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 8%,#000 22% 72%,#0000 86%);mask-image:linear-gradient(#0000 8%,#000 22% 72%,#0000 86%)}.elevator-credits-roll{text-align:center;padding:0 22px;animation:26s linear 1s both elevator-credits-roll;position:absolute;top:0;left:0;right:0}.elevator-credits-roll.is-done{display:none}.elevator-credits-title{letter-spacing:.3em;color:#fff4dc;margin:0 0 12vh;font:600 clamp(26px,3.4vw,40px)/1.2 Arial,sans-serif}.elevator-credits-title .elevator-kicker{margin-bottom:10px;font-size:12px}.elevator-credits dl{gap:9vh;margin:0;display:grid}.elevator-credit dt{letter-spacing:.18em;color:#e6b65e;font-size:clamp(13px,1.4vw,16px);font-weight:600}.elevator-credit dd{letter-spacing:.06em;color:#fff9ed;text-shadow:0 2px 12px #000;margin:10px 0 0;font-size:clamp(18px,2.2vw,26px);font-weight:600}.elevator-credits-thanks{letter-spacing:.12em;color:#fff4dc;justify-content:center;align-items:center;margin:0;font:500 clamp(24px,3.2vw,40px)/1.3 Arial,sans-serif;animation:1.2s both elevator-arrive;display:flex;position:absolute;inset:0}@keyframes elevator-credits-roll{0%{transform:translateY(100dvh)}to{transform:translateY(-100%)}}@keyframes elevator-credits-fade{0%{opacity:0}to{opacity:1}}@keyframes elevator-depart{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.elevator-credits{animation:none;-webkit-mask-image:none;mask-image:none}.elevator-credits-roll,.elevator-credits-roll.is-done{padding:12vh 22px 0;animation:none;display:block;position:static}.elevator-credits-title{margin-bottom:4vh}.elevator-credits dl{gap:2.4vh}.elevator-credits-thanks{margin-top:4vh;animation:none;position:static}}@media (max-width:600px){.elevator-escape-story{bottom:max(22px, env(safe-area-inset-bottom))}.elevator-destination h1{font-size:clamp(21px,6vw,30px)}.elevator-destination>p{letter-spacing:0;font-size:10px}.elevator-caption{margin:12px 0;font-size:12px}}@media (prefers-reduced-motion:reduce){.elevator-destination{animation:none}.elevator-continue,.elevator-skip{transition:none}}.museum-elevator-hint{color:#ffdc91;text-align:center;pointer-events:none;background:#17212bdb;border-radius:6px;width:max-content;max-width:calc(100% - 32px);padding:8px 14px;font-size:12px;position:absolute;bottom:126px;left:50%;transform:translate(-50%)}.museum-elevator-hint button{pointer-events:auto;margin-left:8px}.museum-elevator-error{z-index:12;top:112px;bottom:auto}.ait-office-view,.ait-office-placeholder{background:#18232c;border:8px solid #241811;height:clamp(360px,56vw,650px);position:relative;overflow:hidden}.ait-office-placeholder{color:#f3dfb4;place-items:center;display:grid}.ait-office-canvas{position:absolute;inset:0}.ait-office-canvas canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block}.ait-office-canvas canvas:focus-visible{outline-offset:-3px;outline:2px solid #f2ce7f}.ait-office-badge{color:#201c18;font:700 12px var(--mono);letter-spacing:.14em;pointer-events:none;background:#dac085;padding:9px 15px;position:absolute;top:16px;left:16px}.ait-office-guide{color:#352d20;pointer-events:none;background:#fbf2dcdf;border:1px solid #bd9d65;border-radius:8px;padding:12px 15px;font-size:12px;line-height:1.8;position:absolute;top:14px;right:14px}.ait-office-loading{color:#f3dfb4;background:#18232ce8;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:absolute;inset:0}.ait-office-touch,.ait-office-joystick{display:none}.ait-office-joystick{touch-action:none;background:#10171e77;border:2px solid #e2c18588;border-radius:50%;width:100px;height:100px;position:absolute;bottom:20px;left:20px}.ait-office-joystick span{pointer-events:none;background:radial-gradient(circle at 30% 25%,#eed18d,#a88442);border-radius:50%;width:40px;height:40px;margin:-20px;position:absolute;top:50%;left:50%}.ait-office-footer{justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.ait-office-footer p{margin:0}.ait-rescue-hud{color:#f3f4e9;width:min(340px,100% - 155px);position:absolute;bottom:18px;right:18px}.ait-rescue-hud p{background:#132d31ed;border:1px solid #a3dcd366;border-radius:10px;margin:0 0 10px;padding:12px 14px;font-size:13px;line-height:1.6}.ait-rescue-action{color:#143230;width:100%;min-height:48px;font:700 13px var(--sans);cursor:pointer;background:#b6e7db;border:1px solid #b0e5d7;border-radius:8px;padding:10px}.ait-rescue-action:disabled{color:#bccdcc;cursor:default;background:#253c3ee8;border-color:#6d8986}.ait-rescue-action kbd{border:1px solid;border-radius:4px;margin-right:4px;padding:2px 6px;display:inline-block}.ait-rescue-stage{z-index:110;color:#e0eee9;background:#101c23;padding:20px;position:fixed;inset:0;overflow:auto}.ait-rescue-stage header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ait-rescue-stage h1{margin:6px 0 0;font-size:clamp(18px,3vw,30px)}.ait-rescue-stage .ait-office-view{height:calc(100dvh - 170px);min-height:360px}@media (max-width:640px){.ait-rescue-stage{padding:10px}.ait-rescue-hud{width:calc(100% - 140px);bottom:14px;right:12px}.ait-rescue-hud p{padding:8px 10px;font-size:11px}.ait-rescue-action{font-size:11px}}@media (pointer:coarse){.ait-office-touch,.ait-office-joystick{display:block}.ait-office-desktop{display:none}}@media (max-width:640px){.ait-office-view,.ait-office-placeholder{height:min(65dvh,540px);min-height:360px}.ait-office-guide{max-width:65%;padding:8px 10px;font-size:10px;top:12px;right:12px}.ait-office-badge{padding:8px;font-size:10px;top:12px;left:12px}.ait-office-footer{flex-direction:column;align-items:flex-start}}.review-board{flex-direction:column;gap:8px;min-height:0;display:flex}.review-intro{flex:none}.review-grid{grid-template-columns:1fr;gap:6px;min-height:0;display:grid}.review-board .review-card{flex-direction:column;justify-content:center;gap:4px;min-height:0;padding:6px 8px;display:flex;overflow:hidden}.review-board .review-card.unvisited{opacity:.45}.review-board .review-card.timed-out{border-color:#ffb3478c}.review-board .review-head{letter-spacing:.1em;flex-wrap:nowrap;gap:6px;min-width:0}.review-board .review-room{flex:none}.review-board .review-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;font:900 13px/1.2 var(--serif);letter-spacing:0;margin:0;overflow:hidden}.review-board .review-frame,.review-board .review-go,.review-board .review-here{letter-spacing:.04em;padding:3px 7px;font-size:11px}.review-board .review-answer-sheet{border-width:2px;gap:8px;min-height:0;margin:0;padding:3px 8px}.review-board .review-answer-label{width:52px}.review-board .review-answer-value{word-break:normal;white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-size:22px;overflow:hidden}.review-board .review-meta{color:#555;flex:none;margin:0;font-size:11px}.review-board .review-meta.warn{color:#a45a00}.review-board .review-answer-tile{width:30px;height:30px;margin-left:0}.drawer.drawer-review{width:min(560px,100vw)}.drawer-body.drawer-body-fit{flex-direction:column;padding:10px 12px;display:flex;overflow:hidden}.review-fit{flex:auto}.review-fit .review-grid{flex:auto;grid-template-rows:repeat(8,minmax(0,1fr))}.review-fit .review-card{gap:clamp(2px,.5vh,4px);padding-block:clamp(2px,.6vh,6px)}.review-fit .review-answer-value{font-size:clamp(15px,2.6vh,24px)}.review-fit .review-answer-tile{width:clamp(20px,3.6vh,34px);height:clamp(20px,3.6vh,34px)}.review-fit .review-answer-label{width:clamp(40px,6vh,56px)}@media (min-width:900px){.drawer.drawer-review{width:min(980px,100vw)}.review-fit .review-grid{grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:1fr 1fr;gap:10px}.review-fit .review-card{gap:8px;padding:8px 12px}.review-fit .review-title{font-size:16px}.review-fit .review-answer-sheet{padding:6px 12px}.review-fit .review-answer-value{font-size:clamp(18px,4vh,34px)}.review-fit .review-answer-label{width:70px}.review-fit .review-answer-tile{width:clamp(28px,5.5vh,48px);height:clamp(28px,5.5vh,48px)}.review-fit .review-meta{font-size:12px}}@media (max-height:520px) and (min-width:560px){.drawer.drawer-review{width:100vw}.review-fit .review-grid{grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:1fr 1fr}.review-fit .review-intro{display:none}}
