:root{--bg:#0f1115;--panel:#171a21;--panel-border:#262b36;--text:#e7e9ee;--text-dim:#9aa1ae;--accent:#5b8cff;--accent-hover:#7aa2ff;--danger:#ff6b6b;--success:#4ade80;--warn:#fbbf24;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}a{color:var(--accent)}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--panel);border-right:1px solid var(--panel-border);flex-shrink:0;width:220px;padding:20px 12px}.sidebar h1{margin:0 0 24px 12px;font-size:18px}.sidebar nav a{color:var(--text-dim);border-radius:8px;margin-bottom:4px;padding:10px 12px;text-decoration:none;display:block}.sidebar nav a.active,.sidebar nav a:hover{color:var(--text);background:#1f2430}.main{flex:1;max-width:900px;padding:28px 32px}.card{background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;margin-bottom:16px;padding:20px}.btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:9px 16px;font-size:14px}.btn:hover{background:var(--accent-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{border:1px solid var(--panel-border);color:var(--text);background:0 0}.btn.danger{background:var(--danger)}input,textarea,select{border:1px solid var(--panel-border);color:var(--text);background:#10131a;border-radius:8px;width:100%;padding:8px 10px;font-size:14px}label{color:var(--text-dim);margin-top:14px;margin-bottom:6px;font-size:13px;display:block}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 8px;font-size:11px;display:inline-block}.badge.draft{color:var(--text-dim);background:#2a2f3a}.badge.scheduled,.badge.publishing{color:var(--accent);background:#2a3550}.badge.published{color:var(--success);background:#17301f}.badge.failed{color:var(--danger);background:#3a1e1e}.badge.partially_published{color:var(--warn);background:#3a331e}.row{align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.checkbox-row{align-items:center;gap:8px;margin-top:8px;display:flex}.checkbox-row input{width:auto}.error-text{color:var(--danger);margin-top:8px;font-size:13px}.hint{color:var(--text-dim);margin-top:4px;font-size:12px}
