.level-check{color:#eee9df;background:#111916;display:block}.level-backdrop{filter:saturate(.45)contrast(1.08);background:url(/metro-reference.png) 50%/cover no-repeat;position:absolute;inset:0;transform:scale(1.015)}.level-vignette{background:linear-gradient(90deg,#111916f2 0 48%,#111916a8 68%,#11191677),linear-gradient(#101714aa,#0000 52%,#101714e8);position:absolute;inset:0}.level-console{color:#f1ede4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1a231fe8;border:1px solid #77847d;width:min(1180px,100% - 64px);min-height:calc(100vh - 64px);margin:32px auto;padding:34px 38px;position:relative;box-shadow:18px 20px #0b100e99}.level-console:before{content:"";background:linear-gradient(90deg,#d58a2d 0 14%,#3f7660 14% 42%,#647b91 42% 75%,#a55b54 75%);height:5px;position:absolute;top:0;left:0;right:0}.level-console>header{z-index:1;border-bottom:1px solid #66736d;grid-template-columns:1fr .8fr;align-items:end;column-gap:56px;padding-bottom:24px;display:grid;position:relative}.level-console>header small{color:#9aaba2;letter-spacing:.17em;grid-column:1/-1}.level-console>header h1{margin:12px 0 0;font:700 46px/1.05 Georgia,Noto Serif SC,serif}.level-console>header p{color:#bcc6c0;margin:0;font-size:13px;line-height:1.7}.level-body{z-index:1;grid-template-columns:.78fr 1.22fr;gap:18px;margin-top:22px;display:grid;position:relative}.level-profile{color:#202a25;background:#e9e4d8;min-height:482px;padding:28px;position:relative;overflow:hidden}.level-profile>small{letter-spacing:.15em;color:#69736d;font-size:9px;font-weight:800}.level-number{color:#d2cec2;font:700 124px/1 Georgia,serif;position:absolute;top:4px;right:20px}.level-profile h2{margin:62px 0 14px;font:700 30px Georgia,Noto Serif SC,serif;position:relative}.level-profile>p{color:#5d6761;max-width:340px;min-height:48px;margin:0;font-size:12px;line-height:1.65;position:relative}.level-explain{max-width:390px;position:relative}.level-explain small{color:#96704a;letter-spacing:.1em;margin-bottom:7px;font-size:9px;font-weight:800;display:block}.level-explain p{color:#46514b;margin:0;font-size:12px;line-height:1.72}.level-explain em{color:#73766f;border-left:2px solid #c87f30;margin-top:9px;padding-left:10px;font-size:10px;font-style:normal;line-height:1.5;display:block}.level-track{--progress:0%;border-top:3px solid #b8b9b2;justify-content:space-between;margin:27px 0 18px;padding-top:19px;display:flex;position:relative}.level-track:before{content:"";width:var(--progress);background:#d58a2d;height:3px;transition:width .45s;position:absolute;top:-3px;left:0}.level-track i{left:var(--progress);background:#d58a2d;border:4px solid #e9e4d8;border-radius:50%;width:17px;height:17px;transition:left .45s;position:absolute;top:-10px;transform:translate(-50%);box-shadow:0 0 0 2px #d58a2d}.level-track b{color:#737b76;font-size:8px}.level-profile dl{border-top:1px solid #b1b3ad;margin:0}.level-profile dl div{border-bottom:1px solid #c5c4bc;justify-content:space-between;padding:9px 0;font-size:10px;display:flex}.level-profile dd{margin:0;font-weight:800}.level-profile>button{color:#fff;cursor:pointer;background:#27342e;border:0;width:100%;margin-top:22px;padding:14px;font-weight:800}.scanner-ring{z-index:0;opacity:.2;pointer-events:none;border:1px solid #78827c;border-radius:50%;place-items:center;width:300px;height:300px;margin:0;display:grid;position:absolute;top:50%;right:-55px;transform:translateY(-50%)}.scanner-ring:before,.scanner-ring:after{content:"";border:1px solid #a2aaa5;border-radius:50%;position:absolute}.scanner-ring:before{inset:17px}.scanner-ring:after{inset:38px}.scanner-ring i{transform-origin:0;background:#d58a2d;width:72px;height:2px;animation:2.7s linear infinite level-scan;position:absolute;top:50%;left:50%}.scanner-ring span{color:#56635c;font:700 86px Georgia,serif}.console-scanner{z-index:2;opacity:1;border:1px dashed #aab5af70;width:430px;height:430px;top:54%;left:70%;right:auto;transform:translate(-50%,-50%);box-shadow:inset 0 0 35px #9eaaa414,0 0 24px #9eaaa410}.console-scanner:before{border-color:#aab5af55}.console-scanner:after{border-color:#aab5af38}.console-scanner i{background:linear-gradient(90deg,#d58a2dcc,#d58a2d22);width:165px;height:2px;box-shadow:0 0 9px #d58a2d66}.console-scanner span{color:#56635c12}.level-profile.empty{flex-direction:column;justify-content:center;display:flex}.level-profile.empty h2,.level-profile.empty>p{z-index:1;text-align:left;margin-left:0;margin-right:0}.level-profile.empty h2{margin-top:0;font-size:34px}.level-profile.empty>p{max-width:270px;font-size:13px}.level-profile.empty>small{z-index:1;position:absolute;top:28px;left:28px}.level-list{background:#11181599;border:1px solid #56625c;grid-template-columns:1fr;gap:0;margin:0;display:grid;position:relative}.level-list:before{content:"";background:#65726c;width:2px;position:absolute;top:37px;bottom:37px;left:35px}.level-list button,.level-list button:first-child{color:#eee9df;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #48534e;grid-template-columns:52px 150px 1fr 65px;align-items:center;min-height:68px;padding:8px 14px;display:grid;position:relative}.level-list button:last-child{border-bottom:0}.level-list button:hover{background:#ffffff0b}.level-list button.checked{color:#202a25;background:#e8e3d7;outline:0}.level-list button>span{z-index:1;color:#e9e4d8;background:#19221e;border:3px solid #829088;border-radius:50%;place-items:center;width:38px;height:38px;margin:0;font:700 11px ui-monospace,monospace;display:grid;position:relative}.level-list button.checked>span{color:#fff;background:#d58a2d;border-color:#d58a2d;box-shadow:0 0 0 5px #e8e3d7}.level-list button b{margin:0;font-size:14px}.level-list button small{color:#aeb9b3;margin:0;font-size:9px;line-height:1.45}.level-list button.checked small{color:#5e6862}.level-list button i{text-align:right;color:#8f9b94;font:8px ui-monospace,monospace;position:static;transform:none}.level-list button.checked i{color:#9a5c24;font-weight:800}@keyframes level-scan{to{transform:rotate(360deg)}}@media (max-width:820px){.level-console{width:calc(100% - 24px);margin:12px;padding:24px 18px}.level-console>header{display:block}.level-console>header p{margin-top:12px}.level-body{grid-template-columns:1fr}.level-list{order:1}.level-profile{order:2;min-height:390px}.level-list button,.level-list button:first-child{grid-template-columns:48px 125px 1fr}.level-list button i{display:none}.console-scanner{opacity:1;width:380px;height:380px;top:48%;left:63%;right:auto;transform:translate(-50%,-50%)}.console-scanner i{width:145px}}@media (max-width:540px){.level-console{width:100%;min-height:100vh;box-shadow:none;border:0;margin:0}.level-console>header h1{font-size:36px}.level-profile{min-height:360px}.level-list button,.level-list button:first-child{grid-template-columns:44px 1fr;min-height:72px}.level-list button small{grid-column:2}.level-number{font-size:100px}}.restored-opening .opening-wash{background:linear-gradient(90deg,#e9e3d6f5 0 37%,#e9e3d6a8 55%,#0000 78%)}.restored-opening .opening-copy{width:min(540px,46vw);top:50%;left:6%;transform:translateY(-53%)}.restored-opening .opening-copy>small{letter-spacing:.16em;font-size:10px}.restored-opening .opening-copy h1{margin:20px 0 16px;font-size:clamp(44px,5.1vw,70px);line-height:1.04}.restored-opening .opening-copy p{color:#4e5953;max-width:500px;margin:0;font-size:16px;line-height:1.7}.restored-opening .opening-copy>button{margin-top:22px;padding:15px 22px;font-size:14px}.restored-opening .opening-footer{bottom:5%;left:6%;right:auto}.restored-opening .opening-footer span{letter-spacing:.06em;font-size:10px}.restored-opening .opening-footer button{color:#29342e;letter-spacing:.06em;cursor:pointer;background:0 0;border:0;border-left:1px solid #69716b;border-right:1px solid #69716b;padding:0 25px;font-size:10px;font-weight:800}.opening-game-board{z-index:3;color:#26312c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#e7e2d7ed;border:1px solid #747b76;width:320px;padding:17px 18px;position:absolute;top:12%;right:2%;box-shadow:8px 9px #25302a38}.opening-challenge{color:#37423c;border-bottom:1px solid #afb2ac;margin:0 0 12px;padding:0 0 11px;font-size:13px;line-height:1.55}.opening-challenge b{color:#9c612a;font:800 14px ui-monospace,monospace}.opening-challenge span{color:#56615b;font-weight:700}.opening-game-board>header{border-bottom:1px solid #afb2ac;padding-bottom:10px}.opening-game-board>header span,.opening-game-board>header b,.opening-game-board>header small{display:block}.opening-game-board>header span{color:#6b746f;letter-spacing:.1em;font-size:10px;font-weight:800}.opening-game-board>header b{margin:5px 0 2px;font:800 29px ui-monospace,monospace}.opening-game-board>header small{color:#6b746f;font-size:10px}.opening-rule-strip{border-block:1px solid #b5b7b1;gap:0;margin:9px 0 11px;display:grid}.opening-rule-strip span{color:#445049;border-bottom:1px solid #c4c4bd;padding:8px 2px;font-size:11px}.opening-rule-strip span:last-child{border-bottom:0}.opening-rule-strip span:before{content:"→";color:#d58a2d;margin-right:8px}.opening-mini-leaders>small{color:#59635e;letter-spacing:.07em;font-size:10px;font-weight:900}.opening-mini-leaders ol{margin:7px 0 0;padding:0;list-style:none}.opening-mini-leaders li{border-top:1px solid #c2c3bc;grid-template-columns:25px 1fr auto;gap:7px;padding:8px 5px;display:grid}.opening-mini-leaders li:first-child{background:#d8ddd3}.opening-mini-leaders i{color:#a9682b;font:800 10px ui-monospace,monospace}.opening-mini-leaders b{font:700 11px ui-monospace,monospace}.opening-mini-leaders strong{font:800 12px ui-monospace,monospace}.opening-rules-modal{z-index:30;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#16201bc7;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.opening-rules-modal>section{color:#26312c;background:#eee9de;border:1px solid #747b76;width:min(540px,100%);padding:32px 34px;position:relative;box-shadow:12px 14px #0b100e66}.opening-rules-modal>section>small{color:#737c77;letter-spacing:.16em;font-size:9px;font-weight:800}.opening-rules-modal h2{margin:9px 0 21px;font:700 31px Georgia,Noto Serif SC,serif}.opening-rule-story{color:#3f4a44!important;margin:0!important;font-size:14px!important;line-height:1.75!important}.opening-rules-modal ol{border-top:1px solid #b8bab4;margin:0;padding:0;list-style:none}.opening-rules-modal li{border-bottom:1px solid #c6c6bf;grid-template-columns:34px 1fr;gap:10px;padding:14px 0;font-size:13px;line-height:1.55;display:grid}.opening-rules-modal li b{color:#a7662a;font:800 10px ui-monospace,monospace}.opening-rules-modal p{color:#69716c;margin:18px 0 0;font-size:10px}.rules-close{cursor:pointer;background:0 0;border:1px solid #929790;width:32px;height:32px;font-size:20px;position:absolute;top:14px;right:16px}@media (max-width:900px){.opening-game-board{width:250px;top:auto;bottom:12%;right:3%}}@media (max-width:700px){.restored-opening{min-height:100vh;padding-bottom:34px;position:relative;overflow:auto}.restored-opening .opening-image,.restored-opening .opening-wash{position:fixed}.restored-opening .opening-wash{background:linear-gradient(#e9e3d6ed 0 52%,#e9e3d688 75%,#0000)}.restored-opening .opening-copy{width:auto;padding:54px 24px 22px;position:relative;top:auto;left:auto;right:auto;transform:none}.restored-opening .opening-copy h1{font-size:43px}.restored-opening .opening-copy p{font-size:14px}.opening-game-board{width:auto;margin:0 24px 105px;padding:14px 16px;position:relative;top:auto;bottom:auto;right:auto}.opening-game-board>header{grid-template-columns:1fr auto;align-items:end;display:grid}.opening-game-board>header span{grid-column:1/-1}.opening-game-board>header b{margin:7px 0 0}.opening-game-board>header small{text-align:right}.opening-rule-strip{grid-template-columns:repeat(3,1fr)}.opening-rule-strip span{border-bottom:0;border-right:1px solid #35413b;padding:8px 5px;font-size:8px;line-height:1.35}.opening-rule-strip span:last-child{border-right:0}.opening-rule-strip span:before{margin:0 0 3px;display:block}.opening-mini-leaders li{padding:6px 0}.restored-opening .opening-footer{gap:12px;display:flex;position:absolute;bottom:25px;left:24px;right:24px}.restored-opening .opening-footer span{font-size:8px}.restored-opening .opening-footer span+span{padding-left:12px}.restored-opening .opening-footer button{padding:0 12px;font-size:8px}.opening-rules-modal>section{padding:28px 24px}}
