:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#f3f7fa;background:#02070c}
*{box-sizing:border-box}
body{min-height:100svh;margin:0;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 20%,#16354a 0,#07141e 42%,#02070c 75%)}
main{width:min(440px,100%);padding:32px;border:1px solid #284557;border-radius:20px;background:rgba(6,19,28,.88);box-shadow:0 24px 70px #000}
.brand{margin:0;color:#fff;font-size:14px;font-weight:800;letter-spacing:.18em}.brand span{color:#d7a94c}
h1{margin:36px 0 8px;font-size:clamp(30px,8vw,44px);line-height:1}
.intro{margin:0 0 28px;color:#a9bac5}
nav{display:grid;gap:12px}
a{display:flex;flex-direction:column;gap:4px;padding:18px;border:1px solid #355363;border-radius:12px;color:#eff7fb;text-decoration:none;background:#0b202d}
a.primary{border-color:#b48b3d;background:#8f6e31;color:#fff}
a strong{font-size:18px}a span{font-size:13px;opacity:.78}
a:focus-visible{outline:3px solid #f4c65e;outline-offset:3px}
#landing-tools{position:fixed;z-index:5;top:max(12px,env(safe-area-inset-top));right:14px;width:min(310px,calc(100% - 28px));color:#eef7fb}
#landing-tools>summary{margin-left:auto;width:max-content;padding:10px 13px;border:1px solid #355363;border-radius:9px;background:#0b202df2;cursor:pointer;font-size:13px;font-weight:700;list-style:none}
#landing-tools summary::-webkit-details-marker{display:none}
#landing-tools section{display:grid;gap:9px;margin-top:8px;padding:16px;border:1px solid #355363;border-radius:12px;background:#071722f5;box-shadow:0 12px 35px #000b}
#landing-tools small{color:#9db2bd;line-height:1.35}#landing-tools label{font-size:12px;color:#c3d2da}
#landing-tools input{width:100%;padding:10px;border:1px solid #476275;border-radius:7px;color:#fff;background:#061019;color-scheme:dark}
#landing-tools section div{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
#landing-tools button{padding:9px 4px;border:1px solid #355363;border-radius:7px;color:#eaf3f7;background:#102938}
#landing-tools a{display:block;padding:11px;text-align:center;background:#8f6e31;border-color:#b48b3d;font-weight:700}
#day-difficulty{display:grid;gap:8px;margin:5px 0 0;padding:11px;border:1px solid #294757;border-radius:9px}#day-difficulty legend{padding:0 5px;font-size:12px;font-weight:700;color:#e6c375}#day-difficulty label{display:grid;grid-template-columns:1fr 145px;align-items:center;gap:8px}#day-difficulty select{min-width:0;padding:7px;border:1px solid #476275;border-radius:7px;color:#fff;background:#061019;color-scheme:dark}#day-difficulty #save-difficulty{padding:9px;background:#17384a}#difficulty-status{min-height:14px;text-align:center;font-size:11px;color:#7ee0a6}
#day-difficulty .apply-all{padding-bottom:2px;color:#e6c375}#day-difficulty #apply-all-difficulty{margin-bottom:5px;border-color:#8f6e31;background:#59451f}
@media(max-height:700px){#landing-tools section{max-height:calc(100svh - 70px);overflow:auto}}
.tool-section{border:1px solid #294757;border-radius:9px;overflow:hidden}.tool-section>summary{width:auto!important;margin:0!important;padding:12px!important;border:0!important;border-radius:0!important;background:#102938!important;color:#eef7fb;cursor:pointer;list-style:none}.tool-section>summary::after{float:right;content:'+';color:#e6c375}.tool-section[open]>summary::after{content:'−'}.tool-body{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;padding:11px}#player-simulator{display:grid;gap:9px}.player-slot{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}.player-slot a,.player-slot button{padding:10px 5px!important;font-size:12px}.player-slot button{border-color:#714747!important;background:#3a2020!important}#player-reset-status{min-height:14px;text-align:center;font-size:11px;color:#7ee0a6}

#admin-login{display:grid;gap:10px}#admin-login label{font-size:13px;color:#c3d2da}#admin-login input{width:100%;padding:13px;border:1px solid #476275;border-radius:8px;background:#061019;color:#fff;font-size:16px}#admin-login button{padding:13px;border:1px solid #b48b3d;border-radius:9px;background:#8f6e31;color:#fff;font-weight:750}#admin-login-status{min-height:20px;color:#ffb0a8;font-size:12px}
