:root{color-scheme:dark;--bg:#0d1117;--panel:#161b22;--line:#30363d;--text:#eef2f7;--muted:#9ba7b4;--accent:#6ea8fe;--accent-strong:#3d8bfd;--danger:#ff6b6b;--warning:#f6c453;--ok:#51cf66}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
.topbar{min-height:64px;border-bottom:1px solid var(--line);background:rgba(13,17,23,.96);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:10}.brand{color:var(--text);font-weight:750;font-size:18px}nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.container{width:min(1180px,calc(100% - 32px));margin:32px auto 60px}h1{margin:0 0 10px;font-size:clamp(28px,4vw,40px)}h2{margin-top:0;font-size:20px}.muted{color:var(--muted)}.small{font-size:13px}
.auth-card,.form-card,.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px}.auth-card{width:min(460px,100%);margin:8vh auto 0}.form-card{width:min(620px,100%);margin:0 auto}.form-card.wide{width:min(760px,100%)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.stack{display:grid;gap:14px}.card.accent{border-color:rgba(110,168,254,.7)}
.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.page-head.compact{margin-bottom:10px}
form{display:grid;gap:15px}.inline{display:inline}label{display:grid;gap:7px;font-weight:650}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#0f141b;color:var(--text);padding:12px 13px;font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid rgba(110,168,254,.45);border-color:var(--accent)}
button,.button{border:0;border-radius:10px;padding:11px 15px;background:var(--accent-strong);color:#fff;font:inherit;font-weight:700;cursor:pointer;display:inline-flex;justify-content:center;align-items:center}button:hover,.button:hover{filter:brightness(1.08);text-decoration:none}.button.secondary{background:transparent;border:1px solid var(--line);color:var(--text)}.button.danger,button.danger{background:#b4232c}.button.tiny{padding:7px 10px;font-size:12px}.primary{width:fit-content;min-width:140px}.link-button{background:none;padding:0;color:var(--accent);font-weight:500}
.notice{padding:12px 14px;border-radius:10px;margin-bottom:16px;border:1px solid}.notice.error{border-color:#7f1d1d;background:#301518}.notice.warning{border-color:#7a5d16;background:#2d2614}.notice.success{border-color:#1f6f39;background:#132c1b}
.badge{display:inline-block;border:1px solid;border-radius:999px;padding:4px 8px;font-size:12px}.badge.ok{color:var(--ok);border-color:rgba(81,207,102,.45)}.badge.warning{color:var(--warning);border-color:rgba(246,196,83,.45)}.badge.danger{color:var(--danger);border-color:rgba(255,107,107,.45)}
.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px}.status-dot.ok{background:var(--ok)}.actions,.row-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.row-actions form{display:inline-flex}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hint{color:var(--muted);font-size:12px;font-weight:400}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:900px;background:var(--panel)}th,td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-size:13px}code,.message{white-space:pre-wrap;word-break:break-word;color:#d5dde7}.message{padding:12px;border-radius:10px;background:#0f141b;border:1px solid var(--line)}.error-code{color:var(--accent);font-size:56px;font-weight:800}
@media(max-width:720px){.topbar{align-items:flex-start;flex-direction:column;gap:12px;padding:16px}nav{gap:11px}.container{width:min(100% - 20px,1180px);margin-top:20px}.page-head{flex-direction:column}.two-cols{grid-template-columns:1fr}.auth-card,.form-card,.card{padding:18px}}

.delete-box{display:inline-block}.delete-box summary{list-style:none}.delete-box[open]{padding:8px;border:1px solid var(--line);border-radius:10px}.delete-box form{margin-top:8px;min-width:190px}
