:root{--color-bg:#f4f6f8;--color-surface:#fff;--color-border:#dde3ea;--color-text:#1f2937;--color-text-muted:#6b7280;--color-navy:#103a4f;--color-primary:#2c7a99;--color-primary-dark:#235f78;--color-primary-soft:#eaf3f6;--color-success:#16a34a;--color-warning:#d97706;--color-danger:#dc2626;--radius:10px;--radius-sm:7px;--shadow:0 1px 3px #00000014, 0 1px 2px #0000000f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0;font-size:16px}#root{min-height:100vh}button{cursor:pointer;font-family:inherit}.btn{border-radius:var(--radius);background:var(--color-primary);color:#fff;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:16px;font-weight:600;transition:background .15s;display:inline-flex}.btn:hover{background:var(--color-primary-dark)}.btn.secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn.secondary:hover{background:#eef1f5}.btn.danger{background:var(--color-danger)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.small{border-radius:var(--radius-sm);gap:6px;padding:7px 13px;font-size:13.5px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}input,select,textarea{border:1px solid var(--color-border);width:100%;color:var(--color-text);background:#fff;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:16px}input:focus,select:focus,textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px}label{color:var(--color-text-muted);margin-bottom:4px;font-size:14px;font-weight:600;display:block}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--color-border);padding:12px 14px}th{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:13px}tr:hover td{background:#f9fafb}.badge{border-radius:999px;padding:4px 10px;font-size:13px;font-weight:600;display:inline-block}.badge.green{color:#166534;background:#dcfce7}.badge.yellow{color:#92400e;background:#fef3c7}.badge.red{color:#991b1b;background:#fee2e2}.badge.gray{color:#475569;background:#f1f5f9}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--color-navy);color:#e5e7eb;flex-direction:column;flex-shrink:0;width:250px;padding:20px 0;display:flex}.sidebar-brand{margin-bottom:12px;padding:4px 20px 20px}.sidebar-logo{background:#fff;border-radius:8px;width:100%;max-width:170px;height:auto;padding:10px 12px;display:block}.sidebar-link{color:#a9c3cf;border-left:3px solid #0000;align-items:center;gap:13px;padding:12px 20px;font-size:14.5px;font-weight:500;text-decoration:none;display:flex}.sidebar-icon{color:#7ba0b1;flex-shrink:0}.sidebar-link:hover{color:#fff;background:#ffffff0f}.sidebar-link:hover .sidebar-icon{color:#fff}.sidebar-link.active{color:#fff;border-left-color:var(--color-primary);background:#0000002e}.sidebar-link.active .sidebar-icon{color:var(--color-primary)}.sidebar-footer{border-top:1px solid #ffffff1a;margin-top:auto;padding:16px 20px 0}.sidebar-user{color:#a9c3cf;margin-bottom:10px;font-size:14px}.sidebar-logout{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.sidebar-company-info{color:#7ba0b1;text-align:center;border-top:1px solid #ffffff1a;margin-top:14px;padding-top:14px;font-size:11px;line-height:1.6}.main-content{flex:1;max-width:1200px;padding:28px 36px}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.page-header h1{color:var(--color-navy);margin:0;font-size:26px}.login-screen{min-height:100vh;display:flex}.login-brand-panel{background:linear-gradient(135deg, var(--color-navy), #0a2632);flex-direction:column;flex:1.15;justify-content:center;align-items:center;padding:48px;display:flex}.login-brand-logo-plate{background:#fff;border-radius:18px;padding:36px 44px;box-shadow:0 24px 60px #00000047}.login-brand-logo{width:340px;max-width:60vw;height:auto;display:block}.login-brand-tagline{color:#a9c3cf;letter-spacing:.02em;text-align:center;margin-top:28px;font-size:16px}.login-form-panel{background:var(--color-surface);flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.login-form-wrap{width:100%;max-width:340px}.login-greeting{color:var(--color-navy);margin-bottom:4px;font-size:24px;font-weight:700}.login-clock{color:var(--color-text-muted);margin-bottom:28px;font-size:15px}.login-form{text-align:left;flex-direction:column;gap:16px;display:flex}.login-form .btn{margin-top:6px}@media (width<=860px){.login-screen{flex-direction:column}.login-brand-panel{flex:none;padding:32px}.login-brand-logo-plate{padding:22px 28px}.login-brand-logo{width:220px}.login-brand-tagline{margin-top:18px;font-size:14px}.login-form-panel{flex:none;padding:32px 24px 48px}}.login-error{color:#991b1b;background:#fee2e2;border-radius:8px;padding:10px 14px;font-size:14px}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.card h2{color:var(--color-navy);margin:0 0 14px;font-size:16px}.dashboard-grid .card h2{justify-content:space-between;align-items:center;display:flex}.stat-row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:10px 0;font-size:14px;display:flex}.stat-row:last-child{border-bottom:none}.empty-state{color:var(--color-text-muted);padding:8px 0;font-size:14px}.toolbar{gap:12px;margin-bottom:18px;display:flex}.modal-overlay{z-index:50;background:#0f172a80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius);background:#fff;width:480px;max-width:100%;max-height:90vh;padding:28px;overflow-y:auto}.modal h2{color:var(--color-navy);margin-top:0;font-size:19px}.form-grid{gap:14px;margin-bottom:20px;display:grid}.form-actions{justify-content:flex-end;gap:10px;display:flex}.items-table input{padding:6px 8px}.line-total{white-space:nowrap;font-weight:600}.total-row td{font-size:16px;font-weight:700}
