.welcome-page{background:#8d927d;min-height:100svh;padding:12px;overflow-x:hidden}.welcome-machine{width:100%;max-width:none;min-height:calc(100svh - 24px);height:calc(100svh - 24px);margin:0;padding:clamp(30px,5.2vh,70px) clamp(24px,4.3vw,80px) 0;position:relative;display:flex;flex-direction:column;isolation:isolate;border-radius:18px;background:linear-gradient(120deg,#b0b09a 0%,#c2c0a7 38%,#a7aa90 100%);border:2px solid #777d68;box-shadow:inset 3px 4px 5px #dedbc5,inset -4px -5px 6px #555b49,inset 16px 16px 20px #e5e0bd55,inset -16px -16px 28px #55534255}.welcome-machine:before{content:'';position:absolute;inset:17px 16px 22px;border-radius:16px;box-shadow:inset 11px 12px 20px #3d3d2e7a,inset -10px -10px 15px #e4dfc078;z-index:-1;pointer-events:none}.welcome-machine>.case-label{position:absolute;top:13px;left:calc(4.3vw + 5px);right:calc(4.3vw + 5px);font-size:10px;color:#59604b;padding:0;letter-spacing:1.6px}.welcome-screen{flex:1;min-height:0;border:3px solid #394137;border-radius:48% / 4%;position:relative;display:flex;flex-direction:column;background:#031328;box-shadow:0 0 0 3px #6e7561,0 -6px 10px #3b3c2d66,0 6px 5px #e1dec688,inset 0 0 55px #000b}.welcome-wallpaper{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;z-index:-3;image-rendering:pixelated}.welcome-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#031027bd 0%,#06133025 32%,#03112800 48%,#03112805 66%,#031128b8 100%);box-shadow:inset 0 0 90px #0009}.welcome-screen:after{border-radius:inherit;background:repeating-linear-gradient(0deg,transparent 0px,transparent 2px,#000 3px,transparent 4px)}.welcome-page.crt-on .welcome-screen:after{opacity:.19}.welcome-header{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;padding:25px 38px;z-index:2}.welcome-header nav{display:flex;align-items:center;gap:28px;font-family:var(--pixel);font-size:23px;line-height:1.2;white-space:nowrap;color:var(--green)}.welcome-header nav a{padding:8px 0;text-shadow:2px 2px 0 #001e33}.welcome-header nav a:hover{color:#efffbc;text-decoration:underline;text-underline-offset:5px}.welcome-brand{font:45px/.95 var(--pixel);color:var(--green);letter-spacing:-1px;text-shadow:3px 3px 0 #143549;white-space:nowrap}.welcome-brand span{color:#ecf3d0}.welcome-version{justify-self:end;font:14px var(--mono);letter-spacing:1px;color:#bacad0;text-shadow:2px 2px #001020}.welcome-stage{position:relative;flex:1;display:flex;align-items:center;flex-direction:column;padding:clamp(24px,5.3vh,78px) 20px 40px;text-align:center;z-index:2}.welcome-kicker{font:12px/1.5 var(--mono);color:#c2e3e0;letter-spacing:2px;margin:0 0 16px;text-shadow:1px 2px 2px #00132b}.welcome-stage h1{font:400 clamp(44px,5.1vw,86px)/1 var(--pixel);letter-spacing:-.5px;color:#e5ff82;white-space:normal;margin:0 0 28px;text-shadow:3px 4px 0 #112f3d,0 0 15px #a0ff361f}.enter-button{display:inline-flex;align-items:center;justify-content:center;min-width:280px;min-height:64px;background:#cafa60;border:2px solid #14272a;border-radius:5px;color:#0d252a;font:400 31px/1 var(--pixel);padding:16px 32px;box-shadow:0 0 0 2px #d6fc9099,4px 5px 0 #092731b3;text-shadow:1px 0 currentColor;transition:background .15s,transform .15s,box-shadow .15s}.enter-button:hover{background:#e2ff9a;transform:translateY(-3px);box-shadow:0 0 0 2px #d6fc9099,4px 8px 0 #092731b3}.enter-button:active{transform:translateY(2px);box-shadow:0 0 0 2px #d6fc9099,2px 2px 0 #092731b3}.readme-link{font:21px/1.2 var(--pixel);padding:12px 10px;margin-top:12px;color:#edfad6;text-shadow:2px 2px 0 #071c2e;background:#05162e55}.readme-link:hover{color:var(--green)}.welcome-footer{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 38px 25px;color:#bad3d5;font-size:11px;letter-spacing:1px;text-shadow:1px 2px 0 #07132b}.welcome-footer button{font:12px var(--mono);color:#d2eace;border:1px solid #c8ecb74d;background:#07223488;padding:8px 10px;min-height:34px;white-space:nowrap}.welcome-footer button:hover{border-color:var(--green);color:var(--green)}.welcome-machine>.case-bottom{flex:none;min-height:clamp(40px,7vh,76px);padding:6px 10px;display:grid;grid-template-columns:1fr auto 1fr;gap:15px}.welcome-machine .case-brand{font:italic 700 28px/1 var(--mono);letter-spacing:-2px;color:#828972;text-shadow:1px 1px 0 #d4d6bc}.welcome-machine .power{justify-self:end}.welcome-case-model{font-size:10px;letter-spacing:1px;color:#5b644f}.welcome-page .power-light{background:#d2ff76;box-shadow:0 0 7px #c4f966}.welcome-page .skip:focus{top:5px}.welcome-page .skip{color:#142a2d}
@media(min-width:1600px){.welcome-machine{margin:0}.welcome-stage{padding-top:6vh}.welcome-header{padding-top:34px}.welcome-stage h1{margin-bottom:34px}}
@media(max-width:950px){.welcome-header{padding:24px 25px;gap:15px}.welcome-header nav{gap:20px;font-size:21px}.welcome-brand{font-size:38px}.welcome-version{font-size:11px}.welcome-stage{padding-top:5vh}.welcome-kicker{font-size:11px;letter-spacing:1.5px}.welcome-footer{padding:18px 25px 23px;font-size:10px;letter-spacing:.5px}}
@media(max-width:650px){.welcome-page{padding:6px}.welcome-machine{height:calc(100svh - 12px);min-height:600px;padding:35px 16px 0;border-radius:15px}.welcome-machine:before{inset:12px 8px 17px;border-radius:10px}.welcome-machine>.case-label{top:14px;left:24px;right:24px;font-size:8px;letter-spacing:.8px}.welcome-screen{border-radius:48% / 3%;border-width:2px}.welcome-header{grid-template-columns:1fr;justify-items:center;padding:25px 16px 0;gap:15px}.welcome-brand{grid-row:1;font-size:40px}.welcome-header nav{grid-row:2;gap:40px;font-size:22px}.welcome-version{display:none}.welcome-stage{padding:40px 16px 120px;min-height:0}.welcome-kicker{font-size:9px;letter-spacing:1.2px;max-width:210px;line-height:1.8;margin-bottom:13px}.welcome-stage h1{font-size:44px;line-height:.95;max-width:270px;margin-bottom:24px}.enter-button{font-size:26px;min-width:0;width:100%;max-width:245px;min-height:57px;padding:14px 15px}.readme-link{font-size:20px;margin-top:9px;padding:10px}.welcome-wallpaper{object-position:center 52%}.welcome-shade{background:linear-gradient(180deg,#031028c2,#03102845 40%,#03102810 62%,#031028bc)}.welcome-footer{flex-wrap:wrap;justify-content:center;gap:9px 20px;padding:12px 12px 19px;font-size:9px;letter-spacing:.5px}.welcome-footer>span:nth-child(2){order:3;width:100%;text-align:center}.welcome-footer button{font-size:10px;min-height:30px;padding:6px 8px}.welcome-machine>.case-bottom{min-height:46px;padding:4px 2px;gap:5px}.welcome-machine .case-brand{font-size:22px}.welcome-case-model{font-size:8px}.welcome-machine .power{font-size:8px;gap:5px}.welcome-machine .power-light{width:6px;height:6px}}
@media(max-width:360px){.welcome-stage{padding-top:24px}.welcome-stage h1{font-size:39px}.welcome-kicker{font-size:8px;letter-spacing:1px}.welcome-header nav{gap:29px;font-size:21px}.welcome-brand{font-size:36px}.welcome-footer{gap:8px 12px}.welcome-machine>.case-bottom{grid-template-columns:1fr auto}.welcome-case-model{display:none}}
@media(max-height:700px) and (min-width:651px){.welcome-machine{min-height:540px}.welcome-header{padding-top:18px;padding-bottom:18px}.welcome-stage{padding-top:15px;padding-bottom:20px}.welcome-kicker{margin-bottom:8px}.welcome-stage h1{font-size:55px;margin-bottom:20px}.enter-button{min-height:55px;font-size:28px;padding:12px 25px}.welcome-footer{padding-top:12px;padding-bottom:18px}}

/* A clipped slab lifts behind the existing lintel, inside the portal opening.
   Coordinates follow the artwork's independent horizontal/vertical scaling. */
.welcome-door{display:none;position:absolute;left:39.77%;top:27.63%;width:20.52%;height:49.10%;overflow:hidden;z-index:3;pointer-events:none}
.welcome-page .screen-picture[data-stone-door]>.welcome-door{display:block}
.welcome-door-slab{position:absolute;inset:0;background:#292529;will-change:transform}
.welcome-door-slab::before{content:'';position:absolute;inset:0;box-shadow:0 8px 14px #000b;opacity:var(--door-shadow-opacity,1);pointer-events:none}
.welcome-door-slab img{display:block;width:100%;height:100%;object-fit:fill}
.welcome-door-slab::after{content:'';position:absolute;inset:0;box-shadow:inset 5px 0 9px #0009,inset -5px 0 9px #0009,inset 0 5px 8px #000b,inset 0 -3px 3px #8e557250;pointer-events:none}
.welcome-page .screen-picture[data-stone-door] .enter-button{opacity:var(--door-enter-opacity,0);pointer-events:none}
@media(max-aspect-ratio:1/1){.welcome-door{left:34.22%;top:29.25%;width:31.67%;height:30.86%}}
@media(prefers-reduced-motion:reduce){
 .welcome-page .screen-picture[data-stone-door]>.welcome-door{display:none}
 .welcome-page .screen-picture[data-stone-door] .enter-button{opacity:1;pointer-events:auto}
}
