/* MS Update Hub - style minimal et propre. */
:root{
  --accent:#00abc5; --accent-2:#0891a8; --accent-soft:#e6f7fa;
  --ink:#12303a; --muted:#6a808a; --line:#e2e8ea; --panel:#fff; --panel-2:#f5f9fa;
  --ok:#1a8f4c; --warn:#b06b15; --err:#c0392b; --radius:12px;
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:#eef3f5;line-height:1.5}
code{font-family:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;font-size:.92em}
a{color:var(--accent-2)}

.topbar{display:flex;align-items:center;gap:20px;background:var(--accent);color:#fff;padding:12px 22px;flex-wrap:wrap}
.brand{font-weight:800;font-size:18px;letter-spacing:.3px}
.nav{display:flex;gap:6px;flex:1;flex-wrap:wrap}
.nav a{color:rgba(255,255,255,.9);text-decoration:none;padding:7px 12px;border-radius:9px;font-weight:600;font-size:14px}
.nav a:hover{background:rgba(255,255,255,.15);color:#fff}
.nav a.on{background:#fff;color:var(--accent-2)}
.user{display:flex;align-items:center;gap:12px;font-size:14px}

.wrap{max-width:1080px;margin:22px auto;padding:0 18px}
.foot{max-width:1080px;margin:10px auto 30px;padding:0 18px;color:var(--muted);font-size:12px}

.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;margin-bottom:18px}
.card h2{margin:0 0 4px;font-size:17px}
.sub{color:var(--muted);font-size:13px;margin:4px 0}
.empty{color:var(--muted)}

.cards-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:680px){.cards-2{grid-template-columns:1fr}}
.stat .stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:700}
.stat .stat-value{font-size:30px;font-weight:800;margin:4px 0 6px}

.urlbox{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:12px 14px;word-break:break-all}

.tbl{width:100%;border-collapse:collapse;font-size:14px;margin-top:6px}
.tbl th{text-align:left;padding:9px 10px;border-bottom:2px solid var(--line);color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.3px}
.tbl td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl tr:hover td{background:var(--panel-2)}
.row-act{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.sha{color:var(--muted)}

.pill{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700}
.pill-ok{background:#e4f6ec;color:var(--ok)}
.pill-warn{background:#fbefd9;color:var(--warn)}
.pill-mut{background:#eef2f4;color:var(--muted)}

.btn{display:inline-block;border:1.5px solid var(--line);background:#fff;color:var(--ink);border-radius:9px;padding:9px 14px;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:.15s}
.btn:hover{border-color:var(--accent);color:var(--accent)}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-2);border-color:var(--accent-2);color:#fff}
.btn-ghost{background:transparent}
.btn-danger{color:var(--err);border-color:#f0d3cf}
.btn-danger:hover{background:#fdf0ef;border-color:var(--err);color:var(--err)}
.btn-sm{padding:5px 10px;font-size:12.5px;border-radius:8px}

label{display:block;font-size:13px;font-weight:600;margin:10px 0 5px}
.inp{width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:9px;font-size:14px;font-family:inherit;background:#fff}
.inp:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
textarea.inp{resize:vertical}
.chk label{display:flex;align-items:center;gap:8px;font-weight:500}
.chk input{width:auto}

.grid-form{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;align-items:end;margin-top:8px}
.grid-form .col2{grid-column:1 / -1}
@media(max-width:680px){.grid-form{grid-template-columns:1fr}}

.inline-edit{position:relative;display:inline-block}
.inline-edit>summary{list-style:none;display:inline-block}
.inline-edit>summary::-webkit-details-marker{display:none}
.edit-pop{position:absolute;right:0;top:100%;z-index:20;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 50px rgba(0,0,0,.18);padding:14px;width:280px}

.alert{border-radius:10px;padding:11px 14px;margin-bottom:16px;font-size:14px}
.alert-ok{background:#e4f6ec;color:var(--ok)}
.alert-warn{background:#fbefd9;color:var(--warn)}
.alert-err{background:#fdECEA;color:var(--err)}

.login-body{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#0891a8,#00abc5)}
.login-card{background:#fff;border-radius:16px;padding:30px 28px;width:100%;max-width:360px;box-shadow:0 30px 70px rgba(0,0,0,.25)}
.login-card .brand{color:var(--accent-2)}
