:root {
  color-scheme: light;
  --bg: #f4f7fb;
  --surface: #ffffff;
  --surface-soft: #eef4ff;
  --surface-alt: #f8fafc;
  --border: #dbe5f0;
  --text: #132238;
  --muted: #61728b;
  --primary: #2f6fed;
  --primary-strong: #2458bd;
  --success: #0f766e;
  --warning: #b7791f;
  --danger: #be123c;
  --radius-xl: 28px;
  --radius-lg: 20px;
  --radius-md: 16px;
  --shadow: 0 18px 40px rgba(27, 48, 83, 0.08);
}
*{box-sizing:border-box} html,body{margin:0;padding:0;font-family:Inter,ui-sans-serif,system-ui,sans-serif;background:var(--bg);color:var(--text)}
a{color:inherit;text-decoration:none} button,input,select,textarea{font:inherit} button{cursor:pointer}
.app-shell{min-height:100vh;display:grid;grid-template-columns:290px 1fr}.sidebar{background:linear-gradient(180deg,#132238 0%,#172c46 100%);color:#f8fbff;padding:28px 20px;position:sticky;top:0;height:100vh}.brand{display:grid;gap:8px;margin-bottom:28px}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700;opacity:.75}.brand h1,.hero-copy h2,.section-title h3,.panel h3,.login-card h2,.sheet h3{margin:0}.brand p,.muted{color:var(--muted)}.sidebar .muted,.sidebar .eyebrow{color:rgba(248,251,255,.72)}.sidebar .brand p{color:rgba(248,251,255,.82);margin:0;line-height:1.6}.nav-list{display:grid;gap:8px}.nav-link{border:1px solid transparent;border-radius:16px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;color:rgba(248,251,255,.9);background:rgba(255,255,255,.03)}.nav-link.active{background:rgba(47,111,237,.22);border-color:rgba(146,182,255,.32)}.nav-hint{margin-top:22px;padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.nav-hint p{margin:8px 0 0;line-height:1.6;font-size:14px}.content{padding:28px}.hero,.panel,.stat,.table-row,.login-card,.timeline-item,.detail-card,.task-card,.ticket-card,.deploy-card,.note-card,.sheet{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.hero{padding:28px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.hero-copy{max-width:760px}.hero-copy p{margin:10px 0 0;line-height:1.75;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.btn{border:0;border-radius:14px;padding:12px 16px;font-weight:700}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-strong)}.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border)}.btn-ghost{background:var(--surface-soft);color:var(--primary-strong)}.btn-danger{background:#fff1f2;color:var(--danger);border:1px solid #fecdd3}.grid-4,.grid-3,.grid-2{display:grid;gap:16px;margin-top:18px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:20px}.stat strong{display:block;font-size:34px;margin-top:8px}.stat small{display:block;margin-top:8px;color:var(--muted)}.panel{padding:22px;margin-top:18px}.priority-item,.timeline-item,.task-card,.ticket-card,.table-row{padding:18px}.priority-item{border-radius:18px;border:1px solid var(--border)}.priority-item.danger{background:#fff1f2}.priority-item.warning{background:#fff7ed}.priority-item.success{background:#ecfdf5}.priority-item p,.table-row p,.ticket-card p,.task-card p,.detail-card p,.timeline-item p,.sheet p{margin:8px 0 0;color:var(--muted);line-height:1.6}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;border:1px solid transparent}.badge.blue{background:#e9f1ff;color:#2458bd;border-color:#cdddff}.badge.green{background:#ecfdf5;color:#0f766e;border-color:#bde5da}.badge.amber{background:#fff7ed;color:#b7791f;border-color:#f8d3a8}.badge.rose{background:#fff1f2;color:#be123c;border-color:#fecdd3}.badge.slate{background:#f1f5f9;color:#475569;border-color:#cbd5e1}.kpi-line,.meta-line{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.kpi-chip,.meta-chip{background:var(--surface-alt);border:1px solid var(--border);border-radius:999px;padding:8px 10px;font-size:13px;color:var(--muted)}.table{display:grid;gap:12px}.table-row{display:grid;grid-template-columns:1.5fr 1fr auto;gap:18px;align-items:center}.table-row strong{font-size:18px}.table-row .row-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-grid{width:min(1120px,100%);display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.login-card{padding:28px}.login-card p{line-height:1.7}.login-form,.inline-form{display:grid;gap:14px;margin-top:20px}.field{display:grid;gap:8px}.field input,.field select,.field textarea{border:1px solid var(--border);border-radius:14px;padding:13px 14px;background:#fff;width:100%}.field textarea{min-height:110px;resize:vertical}.form-note{padding:16px;background:var(--surface-soft);border-radius:16px;border:1px solid #cadcff;color:var(--primary-strong)}.section-title{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}.detail-card,.sheet{padding:22px}.detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.list-stack{display:grid;gap:14px}.stack{display:grid;gap:18px}.footer-note{margin-top:24px;color:var(--muted);font-size:14px;text-align:center}.flash{margin-top:16px;padding:12px 14px;border-radius:14px;background:#ecfdf5;border:1px solid #bde5da;color:#0f766e}.small{font-size:13px;color:var(--muted)} code{background:#eff4fb;padding:2px 6px;border-radius:8px}.hidden{display:none!important}@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.grid-2,.detail-grid,.login-grid{grid-template-columns:1fr}.table-row{grid-template-columns:1fr}}@media (max-width:720px){.content{padding:18px}.hero,.panel,.login-card,.sheet{padding:20px}.grid-4{grid-template-columns:1fr}.hero,.section-title{flex-direction:column;align-items:flex-start}}
