:root{color-scheme:light dark;--border: #d9d9df;--muted: #6b7280;--bg-card: #ffffff;--bg-page: #f4f5f7;--accent: #1d4ed8;--danger: #b91c1c;--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #e34948;--donut-track: #e1e0d9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--border: #333844;--muted: #9aa1ac;--bg-card: #1b1e26;--bg-page: #12141a;--accent: #6d9bff;--danger: #f87171;--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #e66767;--donut-track: #2c2c2a}}:root[data-theme=dark]{color-scheme:dark;--border: #333844;--muted: #9aa1ac;--bg-card: #1b1e26;--bg-page: #12141a;--accent: #6d9bff;--danger: #f87171;--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #e66767;--donut-track: #2c2c2a}:root[data-theme=light]{color-scheme:light}*{box-sizing:border-box}input[type=date]{color:inherit;background:transparent;border:1px solid var(--border);border-radius:6px;padding:.3rem .4rem;font:inherit}body{margin:0;background:var(--bg-page);color:inherit}.muted{color:var(--muted)}.error-banner{color:#b91c1c;background:#fee2e2;padding:.75rem 1rem;border-radius:8px}.info-banner{background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid var(--accent);padding:.75rem 1rem;border-radius:8px;font-size:.9rem}.login-screen,.loading-screen,.not-configured{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;text-align:center}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:2rem;width:min(360px,100%);display:flex;flex-direction:column;gap:.9rem;text-align:left}.login-subtitle{margin-top:-.5rem;color:var(--muted)}.login-card label{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem}.login-card input{padding:.6rem .7rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit}.login-card button,.app-shell button{padding:.6rem 1rem;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;font-weight:600}.login-error{color:#b91c1c;font-size:.85rem}.login-info{color:#15803d;font-size:.85rem}.login-switch{text-align:center;font-size:.85rem;margin-top:.25rem}.login-card button.link-button{background:none;border:none;color:var(--accent);font-weight:500;padding:0}.app-shell{max-width:1000px;margin:0 auto;padding:1.5rem}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header-right{display:flex;align-items:center;gap:1rem}.app-nav{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border)}.app-nav .nav-tab{background:transparent;border:none;color:var(--muted);padding:.6rem .2rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-right:1rem}.app-nav .nav-tab.active{color:var(--accent);border-bottom-color:var(--accent)}button.link-button{background:none;border:none;color:var(--accent);cursor:pointer;font-weight:500;padding:0}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1.25rem;margin-bottom:1.25rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.company-switcher{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.company-settings-link{margin-left:auto}.company-tab{padding:.5rem 1rem;border-radius:999px;border:1px solid var(--border);background:transparent;color:inherit;cursor:pointer}.company-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--border)}.period-list{list-style:none;padding:0;margin:0}.period-list li{padding:.4rem 0;border-bottom:1px solid var(--border)}.status{font-size:.75rem;padding:.15rem .5rem;border-radius:999px;border:1px solid var(--border)}.status-draft{color:var(--muted)}.status-calculated{color:var(--accent);border-color:var(--accent)}.status-finalized{color:#15803d;border-color:#15803d}.status-expired{color:var(--danger);border-color:var(--danger);margin-left:.5rem}.run-controls{display:flex;align-items:end;gap:1rem;margin:1rem 0}.header-actions{display:flex;gap:.6rem}.employee-form{margin-bottom:1.25rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin:1rem 0}.form-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem}.form-grid input{padding:.5rem .6rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit}.form-grid input[type=checkbox]{width:1.1rem;height:1.1rem;align-self:flex-start}.form-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}button.secondary{background:transparent;color:inherit}.salary-preview{background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:8px;padding:.75rem 1rem;margin-top:.5rem}.salary-preview table{font-size:.85rem}.period-toggle{font-size:1rem}.payslip-history{margin:.6rem 0 1rem 1rem;width:calc(100% - 1rem)}.empty-state{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:2rem 0}.add-company-tab{border-style:dashed;background:transparent;color:var(--accent)}.run-controls label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.run-controls input,.run-controls select{padding:.5rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit}.period-row{display:flex;justify-content:space-between;align-items:center}.link-button.danger{color:var(--danger)}.hero-result{margin-top:1.25rem}.hero-net-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin:1rem 0 1.5rem}.hero-figure{font-size:1.6rem;font-weight:700;margin-top:.25rem}.hero-figure--cost{color:var(--danger)}.calculator .form-grid select{padding:.5rem .6rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit}.theme-toggle{display:inline-flex;align-items:center;gap:.4rem;background:transparent;border:1px solid var(--border);color:inherit;border-radius:8px;padding:.45rem .9rem;font-size:.85rem;font-weight:600;line-height:1;cursor:pointer}.calculator-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.lang-toggle{display:flex;gap:.25rem;flex-shrink:0}.lang-tab{padding:.35rem .7rem;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;font-weight:600;font-size:.8rem}.lang-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.donut-chart{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;margin:1rem 0 1.5rem}.donut-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;font-size:.85rem}.donut-legend li{display:flex;align-items:center;gap:.5rem}.donut-swatch{width:.7rem;height:.7rem;border-radius:2px;flex-shrink:0}.donut-legend-label{color:inherit}.donut-legend-value{color:var(--muted)}.employee-table-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem}.employee-table-controls input[type=search]{flex:1;max-width:280px;padding:.5rem .7rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit}.admin-members-panel{padding:.75rem 0}.admin-add-member-form,.admin-code-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin:.75rem 0 1.25rem}.admin-add-member-form input,.admin-code-form input,.admin-add-member-form select,.admin-code-form select{padding:.5rem .6rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit}.admin-code-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem}.admin-code-input-row{display:flex;gap:.5rem}.self-service-panel{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1rem}.self-service-invite-form{display:flex;gap:.5rem;align-items:center}.self-service-invite-form input{padding:.5rem .6rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit}.employee-portal .card{margin-bottom:1.25rem}
