:root{--bg:#f5f7fb;--card:#fff;--text:#172033;--muted:#667085;--pri:#1f6feb;--danger:#b42318;--line:#e4e7ec}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}.wrap{max-width:1100px;margin:0 auto;padding:24px}header{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;margin-bottom:18px;box-shadow:0 8px 25px rgba(16,24,40,.05)}h1{margin:0 0 12px}nav{display:flex;gap:10px;flex-wrap:wrap}a{color:var(--pri);text-decoration:none}.card,form,table{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 8px 25px rgba(16,24,40,.04)}label{display:block;margin:12px 0 6px;font-weight:600}input,textarea,select{width:100%;padding:10px 12px;border:1px solid #cfd4dc;border-radius:10px;font:inherit}textarea{min-height:100px}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checks label{font-weight:400;display:flex;gap:8px;align-items:center}.checks input{width:auto}button,.btn{display:inline-block;background:var(--pri);color:white;border:0;border-radius:10px;padding:10px 14px;margin-top:14px;cursor:pointer}.btn.secondary{background:#475467}.btn.danger{background:var(--danger)}table{width:100%;border-collapse:separate;border-spacing:0;margin-top:16px;padding:0;overflow:hidden}th,td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}tr:last-child td{border-bottom:0}.muted{color:var(--muted)}.error{background:#fee4e2;color:#912018;padding:10px;border-radius:10px}.ok{background:#dcfae6;color:#05603a;padding:10px;border-radius:10px}.actions{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:700px){.row{grid-template-columns:1fr}.wrap{padding:12px}}

.alert {
    padding: 12px 14px;
    border-radius: 10px;
    margin: 0 0 16px 0;
    border: 1px solid #ddd;
}

.alert.success {
    background: #eefaf0;
    border-color: #b8e6c0;
}

.alert.danger {
    background: #fff0f0;
    border-color: #f0b8b8;
}

.inline-form {
    display: inline;
    margin: 0;
    padding: 0;
}

.inline-form button {
    display: inline-block;
}

.muted {
    color: #777;
    font-size: 0.9em;
}
