:root{--sidebar: #0b1220;--sidebar-hover: #151d2e;--sidebar-active: #1d4ed8;--sidebar-text: #94a3b8;--sidebar-width: 248px;--surface: #f4f6f9;--surface-main: #f4f6f9;--white: #ffffff;--ink: #0f172a;--muted: #64748b;--muted-2: #94a3b8;--line: #e8edf3;--accent: #eff4ff;--accent-text: #1d4ed8;--link: #1d4ed8;--success: #16a34a;--warning: #d97706;--danger: #dc2626;--info: #2563eb;--shadow: 0 1px 2px rgb(15 23 42 / 6%);--radius: 12px;--radius-sm: 8px;--font-head: "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--touch: 44px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;height:100dvh;overflow:hidden}body{font-family:var(--font-body);background:var(--surface);color:var(--ink);-webkit-font-smoothing:antialiased}body.is-layered{overflow:hidden}button,input,select,textarea,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.btn,input,select,textarea{min-height:var(--touch)}input,select,textarea{font-size:16px}.page{display:flex;flex-direction:column;gap:20px;padding:24px 28px 32px;min-width:0}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.actions,[actions]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}[actions]{justify-content:flex-end;width:100%}.crumb{margin:0 0 6px;color:var(--muted-2);font-size:12px}.page h1,.page-head h1{margin:0 0 4px;font-family:var(--font-head);font-size:26px;font-weight:700;letter-spacing:-.03em}.page-head p,.lede{margin:0;color:var(--muted);font-size:13px}.card,.table-wrap,.kpi,.summary{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--touch);padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer}.btn.primary{border-color:var(--ink);background:var(--ink);color:var(--white)}.btn.danger{border-color:#fecaca;background:#fef2f2;color:var(--danger)}.btn:disabled{opacity:.5;cursor:default}.status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-radius:var(--radius-sm);background:var(--white);border:1px solid var(--line);color:var(--muted);font-size:13px}.status p{margin:0}.status.error{color:var(--danger);border-color:#fecaca;background:#fef2f2}.search-field{display:flex;align-items:center;gap:8px;min-height:var(--touch);padding:0 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white)}.search-field input{width:100%;min-height:0;border:0;outline:0;background:transparent;color:var(--ink)}.table-wrap{overflow:auto}table{width:100%;min-width:640px;border-collapse:collapse}th,td{padding:12px 14px;text-align:left;font-size:13px}th{background:#f8fafc;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line)}td{border-bottom:1px solid var(--line)}.num{text-align:right;font-variant-numeric:tabular-nums}.mobile-list,.mobile-only,.mobile-dock,.fab{display:none}@media(max-width:900px){:root{--touch: 48px}.page{gap:14px;padding:12px 14px calc(108px + env(safe-area-inset-bottom))}.page-head{flex-direction:column;gap:10px}.page-head .actions{width:100%;flex-direction:column;align-items:stretch}.page-head .btn,.page-head .btn.primary{width:100%}.crumb,.lede{display:none}.page h1,.page-head h1{font-size:22px}.desktop-table,.desktop-only{display:none!important}.mobile-list,.mobile-only{display:flex;flex-direction:column;gap:10px}.mobile-card,.card.mobile-card{min-height:var(--touch);padding:16px;border-radius:14px}.mobile-dock{position:fixed;left:0;right:0;bottom:calc(58px + env(safe-area-inset-bottom));z-index:28;display:flex;gap:8px;padding:10px 14px;background:#fffffff5;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-dock .btn{flex:1}.fab{position:fixed;right:14px;bottom:calc(78px + env(safe-area-inset-bottom));z-index:24;display:inline-flex;min-height:52px;padding:0 18px;border-radius:999px;box-shadow:0 10px 28px #0f172a38}table{min-width:0}.btn{font-size:14px}}
