:root{--bg:#0f0f17;--surface:#141826;--surface-alt:#101421;--border:#273249;--text:#e8edf9;--text-muted:#99a9c8;--accent:#7fb0ff;--accent-strong:#9ec4ff;--danger:#ff7b7b;--success:#5fc495;--shell-max:1120px;--font-shell-sans:"Avenir Next",Avenir,"Segoe UI",Helvetica,Arial,sans-serif;--font-shell-mono:"SFMono-Regular","SF Mono","IBM Plex Mono",Consolas,"Liberation Mono",monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%}body{color:var(--text);font-family:var(--font-shell-sans),sans-serif;background:radial-gradient(1200px 520px at 10% -15%,#1d2f52 0%,transparent 70%),radial-gradient(1000px 480px at 90% -25%,#1f2942 0%,transparent 68%),var(--bg)}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}.shell-header{z-index:20;background:color-mix(in srgb,var(--bg)86%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.shell-header-inner{max-width:var(--shell-max);grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin:0 auto;padding:.95rem 1.15rem;display:grid}.shell-brand{font-family:var(--font-shell-mono),monospace;letter-spacing:.14em;color:var(--accent-strong);justify-self:start;font-size:.88rem}.shell-nav{justify-self:end;gap:.55rem;display:flex}.shell-nav a{color:var(--text-muted);border:1px solid #0000;border-radius:999px;padding:.42rem .72rem;font-size:.86rem;transition:all .12s}.shell-nav a:hover{color:var(--text);border-color:var(--border);background:color-mix(in srgb,var(--surface)88%,transparent)}.locale-switcher{border:1px solid var(--border);background:color-mix(in srgb,var(--surface)84%,transparent);border-radius:999px;justify-self:center;align-items:center;gap:.35rem;padding:.26rem;display:inline-flex;box-shadow:inset 0 1px #ffffff0a}.locale-switcher-link{min-height:36px;color:var(--text-muted);letter-spacing:.04em;border-radius:999px;align-items:center;gap:.42rem;padding:.42rem .72rem;font-size:.8rem;font-weight:700;transition:color .14s,background .14s,border-color .14s,transform .14s;display:inline-flex}.locale-switcher-link:hover{color:var(--text)}.locale-switcher-link--active{color:#08111e;box-shadow:0 10px 24px color-mix(in srgb,var(--accent)22%,transparent);background:linear-gradient(135deg,#d7e6ff 0%,#8fb8ff 45%,#6f9dff 100%)}.shell-main{padding:1.35rem 1rem 2.25rem}.shell-content{max-width:var(--shell-max);margin:0 auto}.ui-card{border:1px solid var(--border);background:linear-gradient(180deg,#ffffff0a,transparent 28%),color-mix(in srgb,var(--surface)95%,transparent);border-radius:24px;padding:clamp(1rem,2.4vw,1.45rem);box-shadow:0 24px 56px #0206116b}.ui-form-row{gap:.48rem;display:grid}.ui-form-row-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem}.ui-input{border:1px solid color-mix(in srgb,var(--border)88%,#34435f);background:color-mix(in srgb,var(--surface-alt)96%,transparent);width:100%;min-height:52px;color:var(--text);border-radius:14px;padding:.92rem 1rem;transition:border-color .14s,transform .14s,box-shadow .14s,background .14s}.ui-input::placeholder{color:color-mix(in srgb,var(--text-muted)88%,transparent)}.ui-input:hover{border-color:color-mix(in srgb,var(--accent)26%,var(--border))}.ui-input:focus{border-color:color-mix(in srgb,var(--accent)55%,var(--border));background:color-mix(in srgb,#16213a 78%,var(--surface-alt));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent)12%,transparent);outline:none}.ui-input:disabled,.ui-button:disabled,.ui-textarea:disabled{opacity:.58;cursor:not-allowed}.ui-button{letter-spacing:.01em;cursor:pointer;border:1px solid #0000;border-radius:999px;min-height:50px;padding:.8rem 1.1rem;font-weight:700;transition:transform .14s,box-shadow .14s,border-color .14s,background .14s,color .14s}.ui-button:hover:not(:disabled){transform:translateY(-1px)}.ui-button--primary{color:#08111e;box-shadow:0 18px 34px color-mix(in srgb,var(--accent)28%,transparent);background:linear-gradient(135deg,#d7e6ff 0%,#8fb8ff 45%,#6f9dff 100%)}.ui-button--primary:hover:not(:disabled){box-shadow:0 20px 40px color-mix(in srgb,var(--accent)36%,transparent)}.ui-button--secondary{color:var(--text);border-color:var(--border);background:color-mix(in srgb,var(--surface-alt)92%,transparent)}.ui-button--secondary:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent)34%,var(--border));background:color-mix(in srgb,var(--surface)96%,transparent)}.ui-button--danger{color:#ffe6e6;border-color:color-mix(in srgb,var(--danger)40%,var(--border));background:color-mix(in srgb,var(--danger)18%,#23131a)}.ui-error-message{border:1px solid var(--border);border-radius:14px;padding:.85rem .95rem;line-height:1.45}.ui-error-message--error{border-color:color-mix(in srgb,var(--danger)34%,var(--border));background:color-mix(in srgb,var(--danger)10%,transparent);color:#ffd7d7}.ui-error-message--info{border-color:color-mix(in srgb,var(--accent)36%,var(--border));background:color-mix(in srgb,var(--accent)12%,transparent);color:#d9e7ff}.auth-shell{align-content:center;gap:1.2rem;min-height:calc(100vh - 110px);padding:clamp(1.2rem,4vw,2.8rem) 0;display:grid}.auth-header{grid-template-columns:minmax(0,1.45fr) minmax(280px,.95fr);align-items:stretch;gap:1rem;display:grid}.auth-header-copy,.auth-story-card{border:1px solid var(--border);background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent)16%,transparent),transparent 44%),linear-gradient(160deg,#172137 0%,#0f1523 76%);border-radius:28px;padding:clamp(1.2rem,3vw,2rem);position:relative;overflow:hidden}.auth-header-copy{gap:.85rem;display:grid}.auth-kicker,.auth-story-kicker{color:var(--accent-strong);letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-family:var(--font-shell-mono),monospace}.auth-header h1{max-width:11ch;font-size:clamp(2rem,5vw,4rem);line-height:.96}.auth-lead{color:var(--text-muted);max-width:54ch;font-size:1.02rem;line-height:1.65}.auth-story-card{align-content:start;gap:.9rem;display:grid}.auth-story-orb{opacity:.28;filter:blur(2px);background:radial-gradient(circle at 35% 35%,#d6e5ff 0%,#95b8ff 24%,#4264aa 55%,#0000 72%);border-radius:50%;width:150px;height:150px;position:absolute;top:-32px;right:-32px}.auth-story-list{color:var(--text);gap:.75rem;padding-left:1.2rem;line-height:1.5;display:grid}.auth-story-list li::marker{color:var(--accent-strong)}.auth-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.auth-card{align-content:start;gap:1rem;display:grid}.auth-card-head{grid-template-columns:auto 1fr;align-items:start;gap:.85rem;display:grid}.auth-card-head h2{margin-bottom:.3rem;font-size:1.3rem;line-height:1.1}.auth-card-head p,.auth-card-note{color:var(--text-muted);line-height:1.55}.auth-step{border:1px solid color-mix(in srgb,var(--accent)50%,var(--border));background:color-mix(in srgb,var(--accent)18%,transparent);width:2.25rem;height:2.25rem;color:var(--accent-strong);font-family:var(--font-shell-mono),monospace;border-radius:999px;place-items:center;font-size:.82rem;display:inline-grid}.auth-card-actions{gap:.7rem;display:grid}.auth-card-actions .ui-button{width:100%}.auth-email-label{color:var(--text);font-weight:700}.auth-debug{border:1px dashed color-mix(in srgb,var(--accent)44%,var(--border));background:color-mix(in srgb,var(--accent)9%,transparent);border-radius:16px;justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1rem;display:flex}.auth-debug-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}.auth-debug strong{font-family:var(--font-shell-mono),monospace;letter-spacing:.14em;color:var(--accent-strong);font-size:1rem}.auth-status-row{display:grid}.panel{border:1px solid var(--border);background:color-mix(in srgb,var(--surface)94%,transparent);border-radius:18px;padding:clamp(1rem,2.5vw,1.45rem);box-shadow:0 24px 56px #0206117a}.hero-panel{gap:1rem;display:grid}.panel-head{gap:.35rem;margin-bottom:.8rem;display:grid}.kicker{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-family:var(--font-shell-mono),monospace}.hero-title,.page-title{font-size:clamp(1.5rem,3.2vw,2.2rem);line-height:1.05}.hero-copy{color:var(--text-muted);max-width:70ch}.cta-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem;display:grid}.cta-card{border:1px solid var(--border);background:linear-gradient(160deg,#1a2132 0%,#121827 80%);border-radius:14px;gap:.3rem;padding:.95rem;display:grid}.cta-card strong{font-size:1rem}.cta-card small{color:var(--text-muted);line-height:1.35}.cta-label{color:var(--accent-strong);font-family:var(--font-shell-mono),monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.stack{gap:.9rem;display:grid}.meta-row{color:var(--text-muted);flex-wrap:wrap;gap:.75rem;font-size:.82rem;display:flex}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;display:grid}.metric-grid--secondary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.split-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;display:grid}.metric-card{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-alt)94%,transparent);border-radius:14px;gap:.26rem;padding:.82rem;display:grid}.metric-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem}.metric-value{font-size:1.7rem;line-height:1}.metric-meta{color:var(--text-muted);font-size:.83rem}.list-rows{gap:.4rem;list-style:none;display:grid}.list-rows li{border:1px solid var(--border);color:var(--text-muted);border-radius:10px;justify-content:space-between;align-items:center;gap:.5rem;padding:.46rem .58rem;font-size:.84rem;display:flex}.list-rows li strong{color:var(--text)}.toolbar{flex-wrap:wrap;gap:.5rem;display:flex}.chip{border:1px solid var(--border);color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.36rem .66rem;font-size:.78rem}.chip--active{border-color:color-mix(in srgb,var(--accent)58%,var(--border));color:var(--text);background:color-mix(in srgb,var(--accent)18%,transparent)}.console-box{border:1px solid var(--border);background:#0a0d16;border-radius:14px;gap:.32rem;min-height:420px;max-height:620px;padding:.55rem;display:grid;overflow:auto}.console-line{font-family:var(--font-shell-mono),monospace;border:1px solid #1b2439;border-radius:10px;grid-template-columns:auto auto minmax(220px,1fr) auto auto auto 1fr;align-items:center;gap:.45rem;padding:.34rem .42rem;font-size:.74rem;display:grid}.console-line--failure{border-color:color-mix(in srgb,var(--danger)40%,#1b2439);background:color-mix(in srgb,var(--danger)12%,transparent)}.console-line--event{border-color:color-mix(in srgb,var(--success)28%,#1b2439);background:color-mix(in srgb,var(--success)8%,transparent)}.console-time,.console-kind,.console-status,.console-code,.console-event{color:var(--text-muted)}.console-route,.console-message{color:var(--text)}.status-copy{color:var(--text-muted);font-size:.9rem}.status-copy--error{color:var(--danger)}.admin-shell{gap:1rem;display:grid}.admin-bar{border:1px solid var(--border);background:linear-gradient(160deg,#171f31 0%,#101724 78%);border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex}.admin-bar-copy{gap:.2rem;display:grid}.admin-bar-user{color:var(--text);font-size:.95rem}.admin-nav{flex-wrap:wrap;gap:.55rem;display:flex}.admin-nav a{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:.42rem .72rem;font-size:.84rem}.admin-nav a:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent)45%,var(--border))}.challenge-admin-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.85rem;display:grid}.challenge-editor-card{gap:.85rem;display:grid}.challenge-editor-head{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.challenge-editor-head h2{font-size:1.1rem}.challenge-source-switch{flex-wrap:wrap;gap:.45rem;display:flex}.challenge-list{gap:.85rem;display:grid}.challenge-template-card{gap:.8rem;display:grid}.challenge-template-card--inactive{opacity:.72}.challenge-template-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;display:flex}.challenge-template-meta,.challenge-template-actions,.challenge-toggle-row,.challenge-inline-actions{flex-wrap:wrap;gap:.5rem;display:flex}.challenge-badge{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-family:var(--font-shell-mono),monospace;border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:.28rem .56rem}.challenge-badge--user{border-color:color-mix(in srgb,var(--accent)45%,var(--border));color:var(--accent-strong)}.challenge-badge--admin{border-color:color-mix(in srgb,var(--success)45%,var(--border));color:#9de0bc}.challenge-badge--active{color:#9de0bc}.challenge-badge--inactive{color:#f4c48a}.challenge-template-copy{gap:.48rem;display:grid}.challenge-template-copy h3{font-size:1.05rem;line-height:1.25}.challenge-template-copy p{color:var(--text-muted);line-height:1.45}.challenge-template-copy strong{color:var(--text)}.challenge-template-byline{color:var(--accent-strong);font-size:.85rem}.challenge-inline-editor{border-top:1px solid var(--border);gap:.8rem;padding-top:.85rem;display:grid}.ui-textarea{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-alt)95%,transparent);color:var(--text);min-height:92px;font:inherit;resize:vertical;border-radius:12px;padding:.82rem .9rem}.ui-textarea:focus{outline:2px solid color-mix(in srgb,var(--accent)55%,transparent);outline-offset:2px}@media (max-width:860px){.shell-header-inner{grid-template-columns:1fr;justify-items:center}.shell-brand,.shell-nav,.locale-switcher{justify-self:center}.auth-shell{align-content:start;min-height:auto}.auth-header,.auth-grid{grid-template-columns:1fr}.auth-header h1{max-width:none}.auth-debug{flex-direction:column;align-items:start}.console-line{grid-template-columns:1fr;gap:.18rem}}
