:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-page:#0b1220;--app-shell:#111c2b;--app-card:#1a2738;--app-input:#0f1a2a;--app-line:#2b3b50;--app-text:#f4f7fb;--app-secondary:#91a4bb;--app-accent:#58a6ff;--app-accent-strong:#2f81f7;--app-accent-soft:#19395f;--app-focus:#8bc1ff;--app-success:#3ddc97;--app-success-bg:#123b32;--app-warning:#f6c453;--app-warning-bg:#443617;--app-danger:#ff7b8b;--app-danger-bg:#4b202c;--app-shadow-shell:0 16px 40px #00000038;--app-shadow-card:0 8px 24px #00000029;color:var(--app-text);background:var(--app-page);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}html{background:var(--app-page)}body{background:var(--app-page);color:var(--app-text);margin:0;overflow-x:hidden}#root{min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--app-page)}main{width:100%;max-width:760px;padding:18px 16px max(24px, env(safe-area-inset-bottom));margin:0 auto}main.admin-shell{background:var(--app-shell);max-width:920px;min-height:100dvh;box-shadow:var(--app-shadow-shell)}.app-state{align-content:center;justify-items:start;gap:12px;display:grid}.app-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.brand{gap:4px;display:grid}.brand strong{color:var(--app-text);letter-spacing:-.03em;font-size:clamp(1.4rem,5vw,1.8rem);line-height:1.15}.brand span,.muted,small{color:var(--app-secondary)}.eyebrow{color:var(--app-accent);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}nav.tabbar{scrollbar-width:none;gap:6px;margin:0 -4px 26px;padding:4px;display:flex;overflow-x:auto}nav.tabbar::-webkit-scrollbar{display:none}nav.tabbar a{color:var(--app-secondary);border-radius:10px;flex:none;padding:10px 13px;font-size:.92rem;font-weight:700;text-decoration:none;transition:background-color .16s,color .16s}nav.tabbar a:hover,nav.tabbar a:focus-visible{color:var(--app-text);background:var(--app-card)}nav.tabbar a.active{color:#fff;background:var(--app-accent-strong)}h1{color:var(--app-text);letter-spacing:-.045em;margin:0;font-size:clamp(1.75rem,7vw,2.4rem);line-height:1.1}h2{color:var(--app-text);letter-spacing:-.02em;margin:0;font-size:1.1rem;line-height:1.3}.page-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.page-heading p{color:var(--app-secondary);margin:5px 0 0}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.stat-card,article,.form-card,.empty-state,.error-state{background:var(--app-card);border:1px solid var(--app-line);box-shadow:var(--app-shadow-card);border-radius:14px}.stat-card{gap:9px;min-height:118px;padding:18px;display:grid}.stat-card strong{color:var(--app-text);align-self:end;font-size:2rem;line-height:1}.stat-card span{color:var(--app-secondary);font-size:.86rem;font-weight:700}.stack{gap:12px;margin-top:16px;display:grid}article{padding:18px}article p{color:var(--app-secondary);line-height:1.5}.material-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.form-card{gap:14px;margin-top:18px;padding:18px;display:grid}label{color:var(--app-text);gap:7px;font-size:.88rem;font-weight:750;display:grid}input,select{border:1px solid var(--app-line);width:100%;color:var(--app-text);background:var(--app-input);font:inherit;border-radius:10px;outline:none;padding:12px 13px}input::placeholder{color:var(--app-secondary);opacity:.8}input:focus,select:focus{border-color:var(--app-accent);box-shadow:0 0 0 3px #8bc1ff38}button{color:#fff;background:var(--app-accent-strong);font:inherit;cursor:pointer;border:0;border-radius:10px;padding:11px 15px;font-weight:750;transition:transform .16s,filter .16s,opacity .16s}button:hover{filter:brightness(1.08);transform:translateY(-1px)}button:active{transform:translateY(0)}button:disabled{opacity:.6;cursor:wait;transform:none}button.secondary{color:var(--app-accent);background:var(--app-accent-soft)}button.danger{color:#fff;background:var(--app-danger-bg)}button:focus-visible,a:focus-visible{outline:3px solid var(--app-focus);outline-offset:2px}.actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.actions a,.reader-source,.article-content a{color:var(--app-accent)}.badge{width:fit-content;color:var(--app-text);background:var(--app-line);border-radius:999px;align-items:center;padding:5px 9px;font-size:.75rem;font-weight:800;display:inline-flex}.badge.active,.badge.success{color:var(--app-success);background:var(--app-success-bg)}.badge.warning{color:var(--app-warning);background:var(--app-warning-bg)}.badge.danger{color:var(--app-danger);background:var(--app-danger-bg)}.timer{color:var(--app-accent);background:var(--app-accent-soft);font-variant-numeric:tabular-nums;border-radius:999px;margin-left:8px;padding:5px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.empty-state,.error-state{text-align:center;margin-top:16px;padding:28px 18px}.empty-state p,.error-state p{color:var(--app-secondary);margin:7px 0 0}.error{color:var(--app-danger)}.error-state{border-color:var(--app-danger)}.access-denied{text-align:center}.access-denied img{border-radius:14px;width:min(260px,70vw);margin:16px auto;display:block}.reader{max-width:760px}.reader h1{margin:8px 0 22px}.reader-cover{object-fit:cover;border-radius:14px;width:100%;max-height:460px;margin-bottom:22px;display:block}.article-content{box-shadow:none;background:0 0;border:0;padding:0;line-height:1.7}.article-content p,.article-content li{color:var(--app-text)}.article-content img{border-radius:10px;max-width:100%;height:auto;margin:18px auto;display:block}.article-content pre{color:var(--app-text);background:var(--app-input);border-radius:10px;padding:14px;overflow-x:auto}.reader-source{margin-top:22px;font-weight:750;display:inline-block}@media (width>=640px){#root{padding:16px}main.admin-shell{border-radius:18px;min-height:calc(100dvh - 32px);padding:24px}}@media (width<=620px){.cards{grid-template-columns:1fr}.stat-card{min-height:auto}.page-heading{flex-direction:column;align-items:start}.actions button{flex:auto}}
