:root{--bg-canvas: #e5e5e5;--surface: #f4f4f4;--surface-white: #ffffff;--ink: #343642;--ink-strong: #23252e;--ink-soft: #6e6e6e;--brand: #343642;--lime: #c7f33c;--lime-pale: #e1f2ae;--radius-card: 24px;--radius-pill: 999px;--radius-input: 14px;--shadow-soft: 0 2px 12px rgba(0, 0, 0, .06);--hairline: 1px solid rgba(0, 0, 0, .05);--danger: #d64545;--bg: var(--bg-canvas);--border: rgba(0, 0, 0, .06);--text: var(--ink);--text-2: var(--ink-soft);--accent: var(--ink);--accent-2: var(--ink);--radius: var(--radius-input);--ok: #4a7a1f}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg-canvas);color:var(--ink);font-size:15px;font-weight:400;line-height:1.45}h1{font-size:34px;font-weight:500;letter-spacing:-.02em;margin:0 0 4px}h2{font-size:28px;font-weight:500;letter-spacing:-.01em;margin:0 0 4px}h3{font-size:18px;font-weight:500;letter-spacing:-.01em;margin:0}.kpi{font-size:48px;font-weight:500;line-height:1;letter-spacing:-.02em}.kpi small{font-size:.5em;color:var(--ink-soft);font-weight:400}.muted{color:var(--ink-soft)}.error-text{color:var(--danger);font-size:13px}.meta{font-size:12px;color:var(--ink-soft)}:focus{outline:none}:focus-visible{outline:2px solid rgba(0,0,0,.22);outline-offset:2px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.control:focus-visible{outline:none}button{font:inherit;cursor:pointer}.btn{border:none;background:var(--surface-white);color:var(--ink);border-radius:var(--radius-pill);padding:10px 18px;font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:8px;transition:background .15s ease,opacity .15s ease;box-shadow:var(--shadow-soft)}.btn:hover{background:#fbfbfb}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:var(--ink-strong)}.btn-accent{background:var(--lime);color:var(--ink)}.btn-accent:hover{background:#bced2f}.btn-ghost{background:transparent;box-shadow:none}.btn-ghost:hover{background:#0000000a}.btn-danger{color:var(--danger)}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-pill);padding:6px 14px;background:var(--surface-white);font-size:13px}.card{background:var(--surface);border-radius:var(--radius-card);padding:24px;box-shadow:var(--shadow-soft)}.card-white{background:var(--surface-white)}.card-active{background:var(--lime);box-shadow:none}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-weight:500;font-size:13px;color:var(--ink)}.field input,.field select,.field textarea,input.control,select.control,textarea.control{border:none;border-radius:var(--radius-input);padding:11px 14px;background:var(--surface-white);color:var(--ink);font-size:14px;box-shadow:inset 0 0 0 1px #0000000f}.field input:focus,.field select:focus,.field textarea:focus,.control:focus{outline:none;box-shadow:inset 0 0 0 1.5px var(--ink)}table.tbl{width:100%;border-collapse:collapse;font-size:14px}table.tbl th{text-align:left;color:var(--ink-soft);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;padding:14px 22px;border-bottom:var(--hairline)}table.tbl td{padding:18px 22px;border-bottom:var(--hairline)}table.tbl th:first-child,table.tbl td:first-child{padding-left:28px}table.tbl th:last-child,table.tbl td:last-child{padding-right:28px}table.tbl tr:last-child td{border-bottom:none}.badge{display:inline-block;padding:4px 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:500}.badge-ok{background:var(--lime-pale);color:#3d5c12}.badge-warn{background:#0000000f;color:var(--ink-soft)}.badge-lime{background:var(--lime);color:var(--ink);font-weight:500}.chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-pill);background:var(--surface-white);font-size:12px;box-shadow:inset 0 0 0 1px #0000000f}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:13px;font-weight:500}.hatch{background:repeating-linear-gradient(45deg,rgba(0,0,0,.28) 0 1.5px,transparent 1.5px 6px)}
