:root{--xt-bg: #f5f7fb;--xt-card: #ffffff;--xt-border: #e5e7eb;--xt-text: #111827;--xt-muted: #6b7280;--xt-primary: #0f766e;--xt-primary-hover: #115e59;--xt-success: #16a34a;--xt-warning: #f59e0b;--xt-danger: #dc2626;--xt-radius: 14px;--xt-shadow: 0 10px 30px rgba(15, 23, 42, .08)}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--xt-bg);color:var(--xt-text)}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:#0f172a;color:#e5e7eb;padding:22px 16px;position:sticky;top:0;height:100vh}.sidebar .brand{font-size:18px;font-weight:800;color:#fff;margin-bottom:24px}.sidebar a{display:block;color:#cbd5e1;text-decoration:none;padding:10px 12px;border-radius:10px;margin-bottom:8px;font-size:14px}.sidebar a.active,.sidebar a:hover{background:#1f2937;color:#fff}.main{padding:24px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card{background:var(--xt-card);border:1px solid var(--xt-border);border-radius:var(--xt-radius);padding:18px;margin-bottom:14px;box-shadow:var(--xt-shadow)}.card h2{margin:0 0 8px;font-size:18px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{background:#f9fafb;border:1px solid var(--xt-border);border-radius:12px;padding:14px}.metric .label{color:var(--xt-muted);font-size:13px;margin-bottom:6px}.metric .value{font-size:22px;font-weight:700}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{padding:10px 12px;border-bottom:1px solid var(--xt-border);text-align:left}.table th{background:#f9fafb;color:var(--xt-muted);font-weight:600}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600}.badge.green{background:#dcfce7;color:#166534}.badge.yellow{background:#fef3c7;color:#92400e}.badge.red{background:#fee2e2;color:#991b1b}.badge.blue{background:#dbeafe;color:#1e40af}.btn{border:none;background:var(--xt-primary);color:#fff;padding:10px 14px;border-radius:10px;font-weight:600;cursor:pointer}.btn:hover{background:var(--xt-primary-hover)}.btn.secondary{background:#ecfdf5;color:var(--xt-primary)}.input{width:100%;padding:10px 12px;border:1px solid var(--xt-border);border-radius:10px;font-size:14px;margin:8px 0 12px}.toolbar{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}.muted{color:var(--xt-muted);font-size:13px}
