/* Welcome: full official wordmark above, one primary action at the bottom. */
#splash { z-index:25; touch-action:pan-y; -webkit-user-select:text; user-select:text; }
.welcome-layout { display:flex; flex-direction:column; gap:32px; min-height:100svh; min-height:100dvh; max-width:520px; margin:auto; padding:calc(env(safe-area-inset-top,0px) + 24px) max(22px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 20px) max(22px,env(safe-area-inset-left,0px)); }
.welcome-brand { margin:0; line-height:0; }
#splash .rotate-screen__logo { width:100%; max-width:360px; height:auto; }
.welcome-actions { width:100%; max-width:390px; margin-top:auto; align-self:center; padding:22px 26px 26px; background:url('menu_panel.png') 0 0/100% 100%; filter:drop-shadow(0 10px 22px #07111688); }
.welcome-play,.welcome-install { display:block; width:100%; min-height:56px; margin:16px 0 0; padding:12px 16px; border:3px double #eed69c; border-radius:4px; background:linear-gradient(#e2c88c,#b49253); box-shadow:0 3px 12px #0005; color:#24281f; font:22px/1.2 Georgia,serif; cursor:pointer; }
.welcome-play:hover:not(:disabled),.welcome-install:hover { filter:brightness(1.1); }
.welcome-play:active:not(:disabled),.welcome-install:active { transform:translateY(1px); }
.welcome-play:disabled { opacity:.65; cursor:wait; }
#splash :focus-visible { outline:2px solid #f2dfac; outline-offset:5px; }
.welcome-help { border-bottom:1px solid #a18c5755; padding-bottom:8px; text-align:left; }
.welcome-help summary { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; color:#dfc88e; font:13px/1.4 system-ui,sans-serif; cursor:pointer; list-style:none; }
.welcome-help summary::-webkit-details-marker { display:none; }
.welcome-help summary::after { content:'+'; font-size:21px; font-weight:300; }
.welcome-help[open] summary::after { content:'−'; }
.welcome-help ol { margin:8px 0 12px; padding-left:20px; color:#c7d0c5; font:13px/1.6 system-ui,sans-serif; }
.welcome-help li { padding-left:3px; margin:8px 0; }
.welcome-help b { color:#eee1bf; font-weight:600; }
.welcome-install { min-height:44px; margin:12px 0; font:14px/1.4 system-ui,sans-serif; }
.welcome-status { margin:16px 0 0; text-align:center; color:#b0beb4; font:12px/1.5 system-ui,sans-serif; }
.welcome-status:empty { display:none; }
.welcome-spinner { display:inline-block; width:10px; height:10px; margin-right:8px; border:2px solid #d2b77955; border-top-color:#d2b779; border-radius:50%; vertical-align:-2px; animation:welcome-spin 1s linear infinite; }
.welcome-legal { max-width:280px; margin:14px auto 0; text-align:center; font:10px/1.6 system-ui,sans-serif; color:#a3b3aa; }
#splash-install[hidden],body:not(.phone) .welcome-help,body:not(.phone) .welcome-play,.welcome-help .steps { display:none; }
body.ios .welcome-help .steps.ios,body.android .welcome-help .steps.android { display:block; }
@keyframes welcome-spin { to { transform:rotate(360deg); } }
@media(max-width:350px) { .welcome-layout { padding-inline:14px; } .welcome-actions { padding-inline:22px; } }
@media(orientation:landscape) and (max-height:500px) { .welcome-layout { max-width:620px; gap:18px; padding-top:calc(env(safe-area-inset-top,0px) + 16px); padding-bottom:calc(env(safe-area-inset-bottom,0px) + 16px); } #splash .rotate-screen__logo { max-width:260px; } .welcome-actions { max-width:420px; padding:16px 24px 20px; } .welcome-legal { max-width:none; margin-top:10px; } .welcome-play { margin-top:12px; } }
@media(prefers-reduced-motion:reduce) { .welcome-spinner { animation:none; } }
