:root{color-scheme:dark;--bg:#0a1712;--panel:#14271d;--line:#36543e;--text:#eef4e8;--muted:#b5c5b4;--green:#a1da7c}*{box-sizing:border-box}html{min-height:100%}body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);min-height:100svh;isolation:isolate}a{color:var(--green);text-underline-offset:4px}input,button{font:inherit}.auth-ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 18% 35%,#203d293b,transparent 50%),radial-gradient(ellipse at 95% 20%,#71823b12,transparent 42%),linear-gradient(125deg,#0b1a13,#0a1511 70%)}header{max-width:1240px;margin:auto;padding:24px 40px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:inline-flex}.brand img{width:166px;height:auto;display:block}header nav{display:flex;gap:24px;align-items:center}header nav a{font-size:14px;color:#c9d8c3;text-decoration:none;font-weight:600}#auth-motion{background:transparent;border:1px solid #38513b;color:#b4c8ad;border-radius:30px;min-height:38px;padding:8px 12px;cursor:pointer;font-size:12px}main{width:min(1100px,calc(100% - 80px));margin:28px auto 32px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:clamp(35px,6vw,100px);align-items:center}aside{padding:12px 0;min-width:0}.kicker{display:inline-flex;gap:8px;align-items:center;color:#b7d295;font-size:11px;letter-spacing:.13em;font-weight:700}.kicker span{font-size:20px;color:#e0b56e}aside h2{font-size:clamp(34px,4vw,49px);letter-spacing:-1.7px;line-height:1.15;margin:20px 0 18px;font-weight:760}aside h2 span{color:#a9d58c}aside>p{color:var(--muted);font-size:15px;max-width:395px;line-height:1.8;margin:0}.halloween-scene{margin:0 -22px -9px;width:calc(100% + 44px);max-width:580px;pointer-events:none}.halloween-scene svg{display:block;width:100%;height:auto;overflow:visible}.shortcuts{display:flex;flex-wrap:wrap;gap:12px}.shortcuts a{min-height:44px;padding:10px 16px;border:1px solid #3d5439;border-radius:12px;text-decoration:none;background:#14271b;display:flex;gap:22px;align-items:center;font-size:13px;color:#d9e7ce}.shortcuts span{color:#a6d089}.scene-caption{display:block;font-size:11px;color:#a8b99d;margin-top:14px;letter-spacing:.04em}.panel{min-width:0;background:linear-gradient(145deg,#1b3022,#11231a);border:1px solid #45603e;border-radius:26px;padding:34px;box-shadow:0 24px 70px #0004;position:relative}.panel:before{content:'✦';position:absolute;right:24px;top:-19px;color:#d5ac6e;font-size:29px}.panel h1{font-size:27px;letter-spacing:-.6px;line-height:1.3;margin:0 0 9px}.muted,.small{color:var(--muted)}.muted{font-size:13px;margin:0 0 25px}.small{font-size:12px}.tabs{display:flex;gap:4px;background:#0b1c12;border:1px solid #2c462f;padding:5px;border-radius:13px;margin-bottom:28px}.tabs a{flex:1;text-align:center;min-height:40px;padding:9px 6px;border-radius:9px;color:#acbea5;text-decoration:none;font-size:13px;font-weight:650}.tabs a[aria-current=page]{background:#315239;color:#e0f1cf;box-shadow:0 3px 8px #0002}form{display:grid;gap:13px}.field{display:grid;gap:7px;font-size:13px;font-weight:650}input:not([type=checkbox]){width:100%;min-width:0;padding:13px 14px;font-size:16px;min-height:48px;border:1px solid #4e6748;border-radius:11px;background:#0e2016;color:var(--text);transition:border-color .18s,box-shadow .18s}input::placeholder{color:#96ad91}.password{display:flex;gap:8px;min-width:0}.password input{flex:1}.password button{min-width:48px;min-height:48px;padding:10px;background:#213b28;color:#d4e5cc;border:1px solid #4d6747;border-radius:10px;cursor:pointer;font-size:12px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #bbe58d;outline-offset:4px}input:not([type=checkbox]):focus{border-color:#b8dd88;box-shadow:0 0 0 3px #96ce7120}.check{display:flex;gap:9px;align-items:flex-start;font-size:12px;color:#c5d6bb;margin:4px 0}.check input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--green);flex-shrink:0}.btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;border:1px solid #b1e185;border-radius:12px;padding:12px 16px;font-weight:750;background:linear-gradient(110deg,#b5e58b,#8dcd6e);color:#152a16;cursor:pointer;text-decoration:none;transition:transform .18s,box-shadow .18s;font-size:14px}.btn:hover{transform:translateY(-2px);box-shadow:0 7px 20px #95d07622}.btn.secondary{background:#172d20;color:#e1ebd9;border-color:#4d6747}.btn.secondary:hover{background:#213d28}.btn:disabled{opacity:.65;cursor:wait;transform:none}#auth-google:before{content:'G';width:23px;height:23px;display:grid;place-items:center;background:#e7efdd;color:#294936;border-radius:50%;font-weight:850;margin-right:10px}.separator{display:flex;align-items:center;gap:12px;color:#9bb191;font-size:12px;margin:19px 0}.separator:before,.separator:after{content:'';height:1px;background:#3e5438;flex:1}.foot{text-align:center;font-size:12px;margin:18px 0 0}.foot a{font-weight:600}.alert{padding:12px 14px;border:1px solid #ad8b58;background:#3a3020;color:#ffe6b8;border-radius:12px;margin-bottom:20px;font-size:13px;overflow-wrap:anywhere}.recovery{display:block;padding:14px;font:700 19px/1.6 ui-monospace,monospace;overflow-wrap:anywhere;background:#102117;border:1px dashed var(--green);border-radius:10px;user-select:all;margin:18px 0}details{margin-top:18px;color:#a9bd9f;font-size:12px}summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px}summary:after{content:'⌄';font-size:19px}details[open] summary:after{content:'⌃'}footer{text-align:center;padding:14px 20px 24px;color:#8fa386;font-size:11px;letter-spacing:.04em}footer span{color:#c8a66a;margin-right:8px}.health-list{padding:0;list-style:none;font-size:13px}.health-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.health-list span{overflow-wrap:anywhere;min-width:0}.health-list strong{color:var(--green);white-space:nowrap}
.friendly-ghost,.bat,.stars,.fireflies,.pumpkin-friend,.tiny-pumpkin,.moon-halo,.window-light,.ghost-shadow{transform-box:fill-box;transform-origin:center}.ghost-hands{transform-box:fill-box;transform-origin:center;transition:transform .35s}.auth-secret .ghost-hands{transform:translateY(-57px)}.auth-secret .word-card{opacity:.45;transition:opacity .3s}.auth-secret .ghost-eyes{opacity:.3}
@keyframes ghostFloat{50%{transform:translateY(-13px) rotate(2deg)}}@keyframes batFly{50%{transform:translate(12px,-9px) rotate(-8deg)}}@keyframes starLight{50%{opacity:.35}}@keyframes pumpkinNod{50%{transform:rotate(-4deg) translateY(-2px)}}@keyframes glowBreathe{50%{opacity:.2;transform:scale(1.06)}}@keyframes candle{30%,70%{opacity:.55}45%{opacity:1}}@keyframes authEntrance{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){.friendly-ghost{animation:ghostFloat 5s ease-in-out infinite}.ghost-shadow{animation:glowBreathe 5s ease-in-out infinite}.bat{animation:batFly 7s ease-in-out infinite}.bat-two{animation-delay:-3s;animation-duration:9s}.stars{animation:starLight 4s ease-in-out infinite}.fireflies{animation:ghostFloat 8s ease-in-out infinite,starLight 3s ease-in-out infinite}.pumpkin-friend{animation:pumpkinNod 6s ease-in-out infinite}.tiny-pumpkin{animation:starLight 7s ease-in-out infinite}.moon-halo{animation:glowBreathe 6s ease-in-out infinite}.window-light{animation:candle 6s ease-in-out infinite}.panel{animation:authEntrance .6s ease-out both}aside{animation:authEntrance .7s ease-out both}}.motion-paused *{animation-play-state:paused!important}.motion-paused .ghost-hands{transition:none}.motion-paused .ghost-hands{transform:none}.motion-paused .ghost-eyes,.motion-paused .word-card{opacity:1}
@media(max-width:800px){header{padding:18px 22px}main{width:min(470px,calc(100% - 32px));grid-template-columns:1fr;gap:18px;margin:8px auto 24px}aside{padding:0 8px;position:relative;min-height:100px}aside h2{font-size:28px;letter-spacing:-.8px;margin:8px 0;max-width:270px}aside>p,.shortcuts,.scene-caption{display:none}.kicker{font-size:9px;letter-spacing:.09em}.kicker span{font-size:14px}.halloween-scene{position:absolute;right:-8px;top:-3px;width:140px;max-width:140px;margin:0;opacity:.8;z-index:-1}header nav{gap:16px}header nav a{font-size:12px}#auth-motion{font-size:10px;min-height:34px;padding:6px 9px}.brand img{width:136px}.panel{padding:25px;border-radius:21px}.panel:before{right:16px;top:-17px;font-size:25px}.panel h1{font-size:25px}.tabs{margin-bottom:22px}.bat-two,.tiny-pumpkin,.fireflies{animation:none!important}body[data-auth-mode=settings] aside,body[data-auth-mode=health] aside{display:none}}
@media(max-width:380px){header{padding:16px;gap:10px}.brand img{width:123px}header nav{gap:11px}header nav a{font-size:11px}#auth-motion{font-size:9px;padding:6px}.panel{padding:22px}aside h2{font-size:26px}.halloween-scene{right:-8px;opacity:.55}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.ghost-hands{transform:none!important}#auth-motion{display:none}}
@media(max-height:700px) and (min-width:801px){main{margin:8px auto 20px;align-items:start}aside h2{font-size:39px}.halloween-scene{max-width:410px}.panel{padding:28px}.tabs{margin-bottom:20px}header{padding-block:16px}}
.tab-hidden *{animation-play-state:paused!important}
.check,details,summary{color:var(--muted);font-size:13px}
/* Match the site palette before paint; the login entry contains only account controls. */
:root{color-scheme:light;--bg:#e8ede8;--panel:#f1f4ee;--line:#708a79;--text:#1e3029;--muted:#52665a;--green:#246747;--auth-soft:#e1e9e0;--auth-on:#fff}
html[data-dg-mode=dark]{color-scheme:dark;--bg:#131c1a;--panel:#1b2924;--line:#8ba894;--text:#edf4ed;--muted:#b9cbbf;--green:#b7d9a5;--auth-soft:#24372e;--auth-on:#18291e}
body{background:var(--bg);color:var(--text)}.panel{background:var(--panel);border-color:var(--line);box-shadow:0 8px 28px #12261b12}.panel:before{display:none}.tabs{background:var(--auth-soft);border-color:var(--line)}.tabs a{color:var(--muted)}.tabs a[aria-current=page]{background:var(--green);color:var(--auth-on);box-shadow:none}.password button,input:not([type=checkbox]){background:var(--auth-soft);color:var(--text);border-color:var(--line)}input::placeholder{color:var(--muted)}input:not([type=checkbox]):focus{border-color:var(--green);box-shadow:0 0 0 2px var(--line)}a:focus-visible,button:focus-visible,input:focus-visible{outline-color:var(--green)}.btn{background:var(--green);color:var(--auth-on);border-color:var(--green);box-shadow:none}.btn.secondary,.btn.secondary:hover{background:var(--auth-soft);color:var(--text);border-color:var(--line)}.btn:disabled{opacity:1;border-style:dashed}.separator,.small,.muted,.foot,footer,header nav a{color:var(--muted)}.separator:before,.separator:after{background:var(--line)}.alert{background:var(--auth-soft);color:var(--text);border-color:var(--line)}.recovery{background:var(--auth-soft);color:var(--text)}#auth-theme{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-size:14px;cursor:pointer}
body[data-auth-mode=login] .auth-ambient,body[data-auth-mode=login] aside,body[data-auth-mode=login] #auth-motion,body[data-auth-mode=login]>header nav>a{display:none!important}body[data-auth-mode=login] main{display:block;width:min(460px,calc(100% - 32px));margin:24px auto;min-height:0}body[data-auth-mode=login] .panel{animation:none}body[data-auth-mode=login]>header{max-width:1100px;padding:20px 24px}body[data-auth-mode=login] footer{font-size:13px}body[data-auth-mode=login] .panel .small,body[data-auth-mode=login] .panel .foot{font-size:13px}body[data-auth-mode=login] .panel h1{color:var(--text)}
header nav a,#auth-motion{white-space:nowrap}
@media(max-width:800px){aside h2{font-size:24px;max-width:270px}.halloween-scene{width:110px;max-width:110px}}
@media(max-width:380px){aside h2{font-size:23px;max-width:260px}.halloween-scene{width:95px;max-width:95px}}
