:root{--bg: #2b1005;--surface: rgba(62, 31, 15, .72);--surface-2: rgba(80, 42, 21, .88);--border: #7d4622;--text: #f8ece2;--muted: #d8b295;--accent: #e0700c}*{box-sizing:border-box}body{margin:0;background-color:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}body:before{content:"";position:fixed;top:-10%;right:-10%;bottom:-10%;left:-10%;z-index:-2;pointer-events:none;background:radial-gradient(45% 38% at 18% 22%,rgba(226,108,18,.46),transparent 70%),radial-gradient(40% 34% at 82% 30%,rgba(184,66,12,.42),transparent 70%),radial-gradient(50% 42% at 62% 82%,rgba(255,158,46,.24),transparent 72%),radial-gradient(60% 50% at 35% 70%,rgba(140,44,8,.38),transparent 75%);filter:blur(14px);animation:nebula-drift 90s ease-in-out infinite alternate}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:radial-gradient(1.4px 1.4px at 40px 60px,rgba(255,244,232,.85),transparent 60%),radial-gradient(1.2px 1.2px at 170px 30px,rgba(255,214,168,.7),transparent 60%),radial-gradient(1.6px 1.6px at 110px 190px,rgba(255,248,240,.75),transparent 60%),radial-gradient(1px 1px at 230px 130px,rgba(255,198,140,.6),transparent 60%),radial-gradient(1px 1px at 60px 250px,rgba(255,226,180,.6),transparent 60%),radial-gradient(2px 2px at 300px 220px,rgba(255,236,214,.5),transparent 60%);background-size:340px 340px,340px 340px,420px 420px,420px 420px,560px 560px,560px 560px;animation:star-drift 240s linear infinite}@keyframes nebula-drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(2%,-2%,0) scale(1.08)}}@keyframes star-drift{0%{background-position:0 0,0 0,0 0,0 0,0 0,0 0}to{background-position:340px 340px,-340px 340px,420px 420px,-420px 420px,560px 560px,-560px 560px}}@media (prefers-reduced-motion: reduce){body:before,body:after{animation:none}}.muted{color:var(--muted)}.center{display:flex;justify-content:center;padding:3rem}.topbar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--surface);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.brand{color:var(--text);font-weight:700;text-decoration:none}.topbar-right{display:flex;align-items:center;gap:.75rem}.version{color:var(--muted);font-size:.8rem}.content{max-width:900px;margin:0 auto;padding:1rem}.card{background:var(--surface);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:10px;padding:1rem;margin:.75rem 0}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.login-card{width:100%;max-width:360px;background:var(--surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:12px;padding:1.5rem;box-shadow:0 18px 50px #00000073}.login-title{margin:0 0 .25rem}.login-sub{margin:0 0 1rem}.login-version{display:block;margin-top:1rem;text-align:center}.field{display:block;margin-bottom:.9rem}.field span{display:block;margin-bottom:.3rem;color:var(--muted);font-size:.9rem}.field input,.field textarea,.field select{width:100%;padding:.6rem .7rem;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:1rem}.field input:focus{outline:2px solid var(--accent);border-color:transparent}.primary-btn{width:100%;padding:.7rem;border:none;border-radius:8px;background:var(--accent);color:#fff;font-size:1rem;font-weight:600;cursor:pointer}.primary-btn:disabled{opacity:.6;cursor:default}.ghost-btn{padding:.4rem .8rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer}.error{background:#3a1f24;border:1px solid #71323c;color:#ffb4be;border-radius:8px;padding:.6rem .8rem;margin-bottom:.9rem}.joke-card{min-height:6.5rem}.joke-label{margin:0 0 .5rem;color:var(--muted);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.joke-text{margin:0;font-size:1.1rem;line-height:1.5}.joke-punchline{margin:.5rem 0 0;font-size:1.1rem;font-weight:600;color:var(--accent)}.topbar-link{text-decoration:none}.topbar-link:hover{color:var(--text)}.card-title{margin:0 0 .5rem;font-size:1.1rem}.notice{background:var(--surface-2);border:1px solid var(--accent);color:var(--text);border-radius:8px;padding:.6rem .8rem;margin-bottom:.9rem}
