@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_dd5f33c6-module__WggDGG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_dd5f33c6-module__WggDGG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0ee55_hj9qcer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0.qu-9752pffj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0mao5jbfbduzp.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0uzt.a6d44yda.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0mvwgmnhv29no.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.09zddjkbdep5a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_d6617093-module__z61v7q__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_d6617093-module__z61v7q__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--font-sans:var(--font-geist-sans,ui-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:var(--font-geist-mono,"SFMono-Regular"), Consolas, monospace;--parchment:#f8f2ec;--paper:#fffdfa;--paper-strong:#f0e6dd;--sage:#667368;--sage-soft:#6d7d701f;--cipria:#eec8ba;--rosa-antico:#c98470;--terracotta:#965241;--deep-warm:#2f211b;--ink-muted:#2f211ba3;--line:#2f211b1f;--line-strong:#2f211b33;--surface:#fffdfac2;--surface-warm:#eec8ba47;--shadow:0 10px 30px #523b310f}*{box-sizing:border-box}html,body{min-height:100%;margin:0}html{scroll-behavior:smooth}body{min-height:100dvh;color:var(--deep-warm);font-family:var(--font-geist-sans,ui-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;background:linear-gradient(135deg,#fbf4ed 0%,#f6ede5 48%,#eef1ec 100%);font-size:14px;line-height:1.45}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.skip-link{z-index:20;background:var(--deep-warm);color:var(--paper);border-radius:8px;padding:10px 12px;transition:transform .18s;position:fixed;top:12px;left:16px;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.dashboard-shell{grid-template-columns:246px minmax(0,1fr);min-height:100dvh;display:grid}.dashboard-sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf5c7;flex-direction:column;height:100dvh;padding:20px;display:flex;position:sticky;top:0}.sidebar-brand{gap:2px;margin-bottom:26px;display:grid}.sidebar-brand h1{letter-spacing:0;margin:0;font-size:32px;font-weight:650;line-height:1}.sidebar-brand span{color:var(--ink-muted);letter-spacing:0;text-transform:none;font-size:11px;font-weight:600}.sidebar-brand.compact{margin:0}.sidebar-brand.compact h1{font-size:26px}.dashboard-nav{gap:6px}.desktop-nav{display:grid}.mobile-nav{display:none}.nav-link{min-height:38px;color:var(--ink-muted);border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:13px;font-weight:580;transition:background .18s,border-color .18s,color .18s,transform .18s;display:flex}.nav-link:hover{border-color:var(--line);color:var(--deep-warm);background:#ffffff75}.nav-link:active{transform:translateY(1px)}.nav-link[aria-current=page]{background:var(--surface-warm);color:var(--terracotta);border-color:#a6533f57}.nav-link small{color:var(--sage);letter-spacing:0;text-transform:none;font-size:10px}.sidebar-account{border-top:1px solid var(--line);gap:10px;margin-top:auto;padding-top:16px;display:grid}.sidebar-account div{gap:3px;display:grid}.sidebar-account span{overflow-wrap:anywhere;color:var(--ink-muted);font-size:12px}.sidebar-account strong{color:var(--terracotta);letter-spacing:0;text-transform:none;font-size:12px}.dashboard-main{min-width:0}.mobile-header{display:none}.dashboard-content{gap:22px;width:min(100%,1160px);margin:0 auto;padding:28px 32px 50px;display:grid}.page-intro{justify-content:space-between;align-items:end;gap:22px;display:flex}.page-intro h2{letter-spacing:0;text-wrap:balance;max-width:720px;margin:0;font-size:clamp(24px,2.4vw,36px);font-weight:650;line-height:1.12}.page-intro p{max-width:620px}.intro-action{flex:none}.eyebrow{color:var(--sage);letter-spacing:0;text-transform:none;margin:0 0 6px;font-size:12px;font-weight:620}.muted{color:var(--ink-muted)}p.muted{line-height:1.5}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:10px;display:grid}.stat,.dashboard-card,.entry,.challenge-overview,.challenge-form,.admin-compose,.term-compose,.security-card,.security-form,.admin-row,.audit-row,.term-row{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.stat{min-height:84px;padding:14px}.stat strong,.challenge-metrics strong{font-family:var(--font-geist-mono,"SFMono-Regular"), Consolas, monospace;font-variant-numeric:tabular-nums;margin-top:8px;font-weight:520;display:block}.stat strong{font-size:25px}.overview-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.overview-grid .dashboard-card:first-child,.overview-grid .dashboard-card:nth-child(2),.overview-grid .dashboard-card:nth-child(n+3){grid-column:span 3}.dashboard-card{gap:12px;min-height:142px;padding:16px;transition:border-color .18s,background .18s,transform .18s;display:grid}.dashboard-card:hover{background:#fffaf5f0;border-color:#a6533f5c;transform:translateY(-2px)}.dashboard-card:active{transform:translateY(0)}.dashboard-card div{justify-content:space-between;align-items:start;gap:18px;display:flex}.dashboard-card h3{margin:0;font-size:18px;font-weight:650;line-height:1.16}.dashboard-card strong{color:var(--terracotta);font-family:var(--font-geist-mono,"SFMono-Regular"), Consolas, monospace;font-variant-numeric:tabular-nums;font-size:24px;font-weight:520}.dashboard-card p{color:var(--ink-muted);margin:0;line-height:1.5}.queue,.admin-list,.audit-list,.terms-list,.task-stats{gap:12px;display:grid}.entry{grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:16px;padding:16px;display:grid}.entry-body{white-space:pre-wrap;color:var(--deep-warm);margin:12px 0 14px;font-size:16px;line-height:1.55}.meta{flex-wrap:wrap;gap:8px;display:flex}.pill{border:1px solid var(--line);min-height:24px;color:var(--ink-muted);background:#ffffff6b;border-radius:6px;align-items:center;padding:4px 8px;font-size:11px;line-height:1.2;display:inline-flex}.pill.flagged{color:var(--terracotta);background:#a6533f1c;border-color:#a6533f57}.pill.published,.pill.approved{background:var(--sage-soft);color:var(--sage);border-color:#6d7d7052}.challenge-admin,.security-grid,.admin-grid{grid-template-columns:minmax(0,1fr) minmax(340px,420px);align-items:start;gap:16px;display:grid}.challenge-overview,.challenge-form,.admin-compose,.term-compose,.security-card,.security-form{padding:16px}.admin-compose.wide{max-width:760px}.challenge-overview h3,.security-card h3,.admin-row h3,.subsection-head h3{margin:12px 0 7px;font-size:19px;font-weight:650;line-height:1.18}.challenge-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0;display:grid}.challenge-metrics div,.task-stat{border:1px solid var(--line);background:#ffffff61;border-radius:8px;padding:12px}.challenge-metrics strong{font-size:22px}.task-stat{justify-content:space-between;align-items:start;gap:14px;display:flex}.task-stat span{line-height:1.45}.task-stat strong{color:var(--terracotta);font-variant-numeric:tabular-nums}.challenge-form,.admin-compose,.term-compose,.term-edit,.security-form,.moderation-form{align-content:start;gap:12px;display:grid}.challenge-form label,.admin-compose label,.term-compose label,.term-edit label,.security-form label,.moderation-form label{color:var(--ink-muted);letter-spacing:0;text-transform:none;gap:6px;font-size:12px;font-weight:620;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-grid label:nth-child(-n+2){grid-column:1/-1}textarea,input{border:1px solid var(--line);width:100%;color:var(--deep-warm);background:#ffffffa3;border-radius:8px;outline:none;padding:10px 11px;transition:border-color .16s,background .16s,box-shadow .16s}input[type=checkbox]{width:auto}textarea:focus,input:focus{border-color:var(--terracotta);background:var(--paper);box-shadow:0 0 0 3px #a6533f1f}.actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.btn,.logout{border:1px solid var(--line);min-height:38px;color:var(--deep-warm);background:#ffffff7a;border-radius:8px;padding:9px 11px;font-weight:650;transition:background .16s,border-color .16s,color .16s,transform .16s}.btn:hover,.logout:hover{border-color:var(--line-strong);background:#ffffffbd}.btn:active,.logout:active{transform:translateY(1px)}.btn:focus-visible,.logout:focus-visible,.nav-link:focus-visible,.dashboard-card:focus-visible{outline-offset:2px;outline:3px solid #6d7d7047}.btn.primary{border-color:var(--terracotta);background:var(--terracotta);color:var(--paper)}.btn.primary:hover{background:#924936}.btn.warning{color:var(--terracotta);border-color:#a6533f66}.empty{border:1px dashed var(--line-strong);color:var(--ink-muted);background:#ffffff42;border-radius:8px;padding:18px}.empty.compact{padding:16px}.admin-row,.audit-row{justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.admin-row form{flex:none}.audit-row strong{margin-bottom:5px;display:block}.audit-row p{margin:0}.audit-target{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.term-grid{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.term-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px;display:grid}.term-row>form:not(.term-edit){align-self:end}.term-edit{grid-template-columns:minmax(160px,1.2fr) minmax(86px,.35fr) auto auto;align-items:end}.check-row{align-items:center;min-height:38px;color:var(--deep-warm)!important;gap:8px!important;display:flex!important}.subsection-head{margin:6px 0 10px}.subsection-head p{margin:0}.login-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-panel{border:1px solid var(--line);background:var(--surface);width:min(100%,420px);box-shadow:var(--shadow);border-radius:8px;padding:24px}.login-panel h1{margin:0 0 8px;font-size:32px;font-weight:650}.login-panel form{gap:12px;margin-top:22px;display:grid}.error{color:var(--terracotta);background:#a6533f1a;border:1px solid #a6533f57;border-radius:8px;margin:0;padding:10px 12px}@media (max-width:980px){.dashboard-shell{display:block}.dashboard-sidebar{display:none}.dashboard-main{min-height:100dvh}.mobile-header{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf5e0;justify-content:space-between;align-items:center;gap:14px;padding:12px 18px;display:flex;position:sticky;top:0}.mobile-nav{z-index:9;border-bottom:1px solid var(--line);scrollbar-width:none;background:#fffaf5e6;gap:8px;padding:9px 18px;display:flex;position:sticky;top:61px;overflow-x:auto}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav .nav-link{white-space:nowrap;flex:none;min-height:36px}.dashboard-content{padding:22px 18px 42px}.page-intro{flex-direction:column;align-items:start}}@media (max-width:760px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-grid,.entry,.challenge-admin,.security-grid,.admin-grid,.term-grid,.term-row,.term-edit{grid-template-columns:1fr}.overview-grid .dashboard-card:nth-child(n){grid-column:1/-1}.admin-row,.audit-row{flex-direction:column;align-items:start}.audit-target{justify-content:flex-start}.challenge-metrics,.form-grid{grid-template-columns:1fr}}@media (max-width:520px){.dashboard-content{gap:22px;padding-inline:14px}.mobile-header,.mobile-nav{padding-inline:14px}.page-intro h2{font-size:26px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat{min-height:82px;padding:12px}.stat strong{font-size:22px}.entry,.challenge-overview,.challenge-form,.admin-compose,.term-compose,.security-card,.security-form{padding:14px}.actions{grid-template-columns:1fr}}
