:root{--bg:#f7f6f4;--surface:#fff;--sidebar-bg:#fafaf8;--text:#0f1a1c;--text-muted:#6b7a7d;--text-faint:#9eaaad;--border:#e2e8ea;--accent:#23b4a5;--accent-dark:#1a9187;--accent-tint:#eaf7f6;--success:#16a34a;--success-tint:#dcfce7;--warning:#d97706;--warning-tint:#fef3c7;--error:#dc2626;--error-tint:#fee2e2;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"Geist Mono", "Courier New", monospace}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}#root{width:100%;min-height:100vh}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=640px){.table-responsive .table-min-width{min-width:600px}.dashboard-main{padding-bottom:72px!important}}.table-row-hover:hover{background:var(--accent-tint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-tint)!important}button.btn-primary:hover,button[data-variant=primary]:hover,.btn-teal:hover{background:var(--accent-dark)!important}.btn-secondary:hover{border-color:var(--accent)!important;color:var(--accent)!important}.nav-item-link:hover,.nav-item-link.active{background:var(--accent-tint)!important;color:var(--accent)!important}.dashboard-mobile-nav a.active{background:var(--accent-tint);border-radius:var(--radius-md)}@media (width<=640px){.dashboard-sidebar{display:none!important}.dashboard-main{padding:20px 16px!important}.dashboard-mobile-nav{display:flex!important}}.dashboard-mobile-nav{background:var(--surface);border-top:1px solid var(--border);z-index:100;padding:8px 0 env(safe-area-inset-bottom,8px);display:none;position:fixed;bottom:0;left:0;right:0}.dashboard-mobile-nav a{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-height:44px;padding:6px 0;font-size:11px;font-weight:500;text-decoration:none;display:flex}.dashboard-mobile-nav a.active{color:var(--accent)}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:var(--font-sans);font-size:14px}input,select,textarea{font-family:var(--font-sans);font-size:14px}h1,h2,h3,h4{margin:0;font-weight:600}
