:root{--coral:#d85a30;--coral-dark:#b84623;--teal:#0f6e56;--cream:#faece7;--ink:#0e1a17;--ink-2:#1a1a1a;--text:#241a16;--text-muted:#6b6560;--border:#241a1621;--font:"Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}body{background:var(--cream);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0}.login-screen{background:var(--ink);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--ink-2);border-radius:8px;flex-direction:column;gap:10px;width:100%;max-width:360px;padding:40px 32px;display:flex}.login-card h1{color:#fff;margin:0;font-size:22px}.login-subtitle{color:#ffffff8c;margin:0 0 18px;font-size:14px}.login-card label{color:#ffffffb3;font-size:13px;font-weight:600}.login-card input{color:#fff;font-family:var(--font);background:#ffffff0f;border:1px solid #ffffff26;border-radius:4px;margin-bottom:4px;padding:10px 12px;font-size:14px}.login-card input:focus{outline:2px solid var(--coral);outline-offset:1px}.login-card button{background:var(--coral);color:#fff;font-family:var(--font);cursor:pointer;border:none;border-radius:4px;margin-top:14px;padding:12px;font-size:14.5px;font-weight:600}.login-card button:hover{background:var(--coral-dark)}.login-card button:disabled{opacity:.6;cursor:default}.login-error{color:#e6825f;margin:4px 0 0;font-size:13px}.dashboard-header{background:var(--ink-2);color:#fff;justify-content:space-between;align-items:center;padding:16px 32px;display:flex}.header-right{align-items:center;gap:16px;display:flex}.dashboard-header button{color:#fff;font-family:var(--font);cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:4px;padding:8px 14px}.app-body{align-items:flex-start;display:flex}.dashboard-main{flex:1;max-width:960px;margin:0 auto;padding:32px 32px 48px}.dashboard-note{color:var(--text-muted);font-size:14px}.sidebar{border-right:1px solid var(--border);background:#fff;flex-shrink:0;width:200px;min-height:calc(100vh - 61px);padding:20px 0}.sidebar-group{margin-bottom:22px}.sidebar-group-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:0 20px 8px;font-size:11px;font-weight:700}.sidebar-item{text-align:left;width:100%;font-family:var(--font);color:var(--text);cursor:pointer;background:0 0;border:none;border-left:3px solid #0000;padding:9px 20px;font-size:14px;font-weight:500;display:block}.sidebar-item:hover{background:var(--cream)}.sidebar-item.active{border-left-color:var(--coral);background:var(--cream);color:var(--coral-dark);font-weight:600}@media (width<=760px){.app-body{flex-direction:column}.sidebar{gap:4px;width:100%;min-height:auto;padding:10px 12px;display:flex;overflow-x:auto}.sidebar-group{align-items:center;gap:4px;margin-bottom:0;display:flex}.sidebar-group-label{display:none}.sidebar-item{white-space:nowrap;border-bottom:2px solid #0000;border-left:none;width:auto}.sidebar-item.active{border-left:none;border-bottom-color:var(--coral)}}.page-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.page h2{margin:0 0 4px}.page h3{margin:24px 0 8px;font-size:16px}button{font-family:var(--font);cursor:pointer}.page button,.card-list button{background:var(--coral);color:#fff;border:none;border-radius:4px;padding:9px 16px;font-size:13.5px;font-weight:600}.page button:hover{background:var(--coral-dark)}.page button:disabled{opacity:.5;cursor:default}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);border-bottom:1px solid var(--border);padding:8px 10px;font-size:12px}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px}td select,td input{width:100%;font-family:var(--font);border:1px solid var(--border);border-radius:4px;padding:6px 8px}.card-list{flex-direction:column;gap:16px;display:flex}.card{border:1px solid var(--border);background:#fff;border-radius:8px;padding:20px}.card h3{margin:0 0 12px}.inline-form{border:1px solid var(--border);background:#fff;border-radius:8px;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;padding:16px;display:flex}.inline-form label{color:var(--text-muted);flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.inline-form input{font-family:var(--font);border:1px solid var(--border);border-radius:4px;padding:8px 10px;font-size:14px}.checkbox-label{align-items:center;flex-direction:row!important;gap:8px!important}.page>label{color:var(--text-muted);flex-direction:column;gap:4px;max-width:420px;margin-bottom:16px;font-size:13px;font-weight:600;display:flex}.page select{font-family:var(--font);border:1px solid var(--border);border-radius:4px;padding:9px 10px;font-size:14px}.total-line{margin:20px 0;font-size:18px;font-weight:700}.inline-confirm{align-items:center;gap:8px;display:flex}.inline-confirm input{font-family:var(--font);border:1px solid var(--border);border-radius:4px;padding:7px 9px}.muted{color:var(--text-muted)}.error-text{color:var(--coral-dark);font-size:13.5px}.success-text{color:var(--teal);font-size:13.5px}.badge{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.badge-gray{color:var(--text-muted);background:#eceae8}.badge-blue{color:#2a5d8c;background:#e3eaf1}.badge-amber{color:#93650a;background:#fdf3d9}.badge-teal{color:var(--teal);background:#e1f2ed}.badge-green{color:#2f7d3d;background:#e7f3e9}.badge-coral{color:var(--coral-dark);background:#fdece6}.kpi-row{gap:12px;margin-bottom:20px;display:flex}.kpi{border:1px solid var(--border);background:#fff;border-radius:8px;min-width:120px;padding:14px 18px}.kpi-val{font-size:22px;font-weight:700}.kpi-label{color:var(--text-muted);font-size:12.5px}.roles-checkboxes{flex-wrap:wrap;gap:4px 14px;display:flex}.roles-checkboxes .checkbox-label{color:var(--text);font-size:13px;font-weight:500}
