:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#e9f1ed;--page-accent:#cfe5dc;--surface:#ffffffe0;--surface-strong:#fff;--surface-soft:#f0f4f2;--row-alt:#14785f0b;--field:#fff;--text:#17201b;--muted:#68756e;--accent:#14785f;--accent-strong:#0f604c;--accent-muted:#2d7764;--border:#17201b1a;--field-border:#d7dfda;--button-soft:#edf3f0;--button-soft-hover:#dfeae5;--danger:#b43a31;--danger-soft:#fff0ed;--danger-border:#f1c5be;--error-bg:#fff5f2;--shadow:#2130291a;--shadow-strong:#2130292e;--overlay:#0f171380;color:var(--text);background:var(--page);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=midnight],:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#151719;--page-accent:#22262a;--surface:#2a2d31e0;--surface-strong:#2a2d31;--surface-soft:#22262a;--row-alt:#ffffff0b;--field:#1d2024;--text:#f2f4f6;--muted:#b7bec7;--accent:#8b98a6;--accent-strong:#a2aebb;--accent-muted:#d5dae0;--border:#f2f4f61f;--field-border:#4c535d;--button-soft:#343940;--button-soft-hover:#424850;--danger:#ffaaa1;--danger-soft:#4a2421;--danger-border:#743b35;--error-bg:#301a18;--shadow:#00000047;--shadow-strong:#00000061;--overlay:#000000ad}:root[data-theme=ocean]{--page:#e3f2f8;--page-accent:#bee5f3;--surface-soft:#edf7fb;--row-alt:#087aa50d;--accent:#087aa5;--accent-strong:#056486;--accent-muted:#176d8a;--field-border:#c9dfe8;--button-soft:#e7f3f8;--button-soft-hover:#d5eaf2}:root[data-theme=indigo]{--page:#ecebfa;--page-accent:#d6d3f5;--surface-soft:#f0effc;--row-alt:#4f46c80d;--accent:#4f46c8;--accent-strong:#4037ad;--accent-muted:#5850a8;--field-border:#d7d4ec;--button-soft:#eeedfa;--button-soft-hover:#dfdcf4}:root[data-theme=plum]{--page:#f2e8f3;--page-accent:#e7cfe9;--surface-soft:#f7eff8;--row-alt:#8a3f840d;--accent:#8a3f84;--accent-strong:#71336c;--accent-muted:#7e4b7a;--field-border:#e3d2e3;--button-soft:#f5eaf5;--button-soft-hover:#ead9eb}:root[data-theme=rose]{--page:#f9e9ef;--page-accent:#f4ccd9;--surface-soft:#fff0f4;--row-alt:#b33d620d;--accent:#b33d62;--accent-strong:#96314f;--accent-muted:#9a4963;--field-border:#edd2da;--button-soft:#fbeaf0;--button-soft-hover:#f4d9e2}:root[data-theme=amber]{--page:#f8ecd7;--page-accent:#f2d9aa;--surface-soft:#fff6e5;--row-alt:#a65a090d;--accent:#a65a09;--accent-strong:#884907;--accent-muted:#8d5d29;--field-border:#ead9bd;--button-soft:#fbf0dc;--button-soft-hover:#f2e1c2}:root[data-theme=slate]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#111820;--page-accent:#243241;--surface:#212c38e6;--surface-strong:#212c38;--surface-soft:#18222d;--row-alt:#93a4b80e;--field:#16202a;--text:#f1f5f9;--muted:#b6c1ce;--accent:#7189a5;--accent-strong:#829ab5;--accent-muted:#ced8e3;--border:#f1f5f91f;--field-border:#465768;--button-soft:#2b3947;--button-soft-hover:#394a5b;--danger:#ffaaa1;--danger-soft:#472725;--danger-border:#71403b;--error-bg:#2f1d1b;--shadow:#0000004d;--shadow-strong:#0000006b;--overlay:#000000b3}:root[data-theme=teal]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0c1918;--page-accent:#173b37;--surface:#19302de6;--surface-strong:#19302d;--surface-soft:#122522;--row-alt:#55c7b30e;--field:#10211f;--text:#effbf8;--muted:#afd0ca;--accent:#238f7c;--accent-strong:#31a08d;--accent-muted:#a5e3d8;--border:#effbf81f;--field-border:#3d615b;--button-soft:#25403c;--button-soft-hover:#31514c;--danger:#ffaaa1;--danger-soft:#472725;--danger-border:#71403b;--error-bg:#2f1d1b;--shadow:#0000004d;--shadow-strong:#0000006b;--overlay:#000000b3}:root[data-theme=sand]{--page:#f1e9dc;--page-accent:#e1d2b9;--surface-soft:#f4eee3;--row-alt:#81643b0e;--accent:#81643b;--accent-strong:#6c522f;--accent-muted:#735f42;--field-border:#ded3c1;--button-soft:#f0e8da;--button-soft-hover:#e5dac8}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}.app-shell{background:radial-gradient(circle at top left, var(--page-accent), transparent 36rem), linear-gradient(180deg, #ffffff40, transparent 18rem), var(--page);min-height:100vh;padding:28px}.workspace{width:min(1240px,100%);margin:0 auto}.login-shell{place-items:center;display:grid}.login-panel{border:1px solid var(--border);background:var(--surface);width:min(410px,100%);box-shadow:0 24px 70px var(--shadow-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:18px;gap:22px;padding:28px;display:grid}.login-mark{color:#fff;background:var(--accent);width:48px;height:48px;box-shadow:0 14px 30px color-mix(in srgb, var(--accent) 26%, transparent);border-radius:14px;place-items:center;display:grid}.login-panel h1{font-size:clamp(2rem,10vw,3.1rem)}.login-form{gap:14px;display:grid}.topbar,.entry-form,.table-header,.table-row,.total-bar{background:var(--surface);border:1px solid var(--border);box-shadow:0 18px 50px var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar{border-radius:16px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex}.invoice-number-badges{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.invoice-number-badge{border:1px solid var(--border);background:var(--surface-muted);color:var(--muted);border-radius:999px;align-items:baseline;gap:8px;padding:8px 12px;font-size:.85rem;display:inline-flex}.invoice-number-badge.secondary{background:var(--surface)}.invoice-number-badge strong{color:var(--text);font-size:.95rem}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:10px;display:flex}.topbar-actions>.icon-button{margin-top:19px}.project-switcher{align-items:flex-end;gap:8px;display:flex}.project-switcher label{gap:4px;min-width:180px}.project-switcher select{height:44px}.currency-selector{gap:4px;min-width:205px;display:grid}.currency-selector label{gap:4px}.currency-selector select{height:44px}.currency-selector small,.field-help{color:var(--muted);font-size:.72rem;font-weight:700}.eyebrow{color:var(--accent-muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 7px;font-size:.75rem;font-weight:850}h1,h2{letter-spacing:0;margin:0}h1{font-size:clamp(2.15rem,5vw,3.7rem);line-height:.96}h2{font-size:1.55rem}.currency-toggle,.theme-toggle{border:1px solid var(--field-border);background:var(--button-soft);border-radius:999px;grid-template-columns:1fr 1fr;padding:4px;display:inline-grid}.currency-toggle{height:44px}.theme-toggle{gap:4px;width:min(320px,100%)}.currency-toggle button,.theme-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;font-weight:850}.currency-toggle button{min-width:58px}.theme-toggle button{justify-content:center;align-items:center;gap:8px;height:40px;display:inline-flex}.currency-toggle button.active,.theme-toggle button.active{color:#fff;background:var(--accent);box-shadow:0 8px 18px #14785f42}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.theme-card{border:1px solid var(--field-border);min-height:52px;color:var(--text);background:var(--field);cursor:pointer;text-align:left;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 12px;font-weight:800;display:grid}.theme-card:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--field-border))}.theme-card.active{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent)}.theme-swatches{border:1px solid var(--border);border-radius:9px;width:42px;height:28px;display:inline-flex;overflow:hidden}.theme-swatches span{flex:1}.entry-form{border-radius:16px;grid-template-columns:minmax(135px,.9fr) minmax(135px,.9fr) minmax(95px,.65fr) minmax(220px,1.6fr) minmax(110px,.75fr) minmax(130px,.85fr) auto;align-items:end;gap:14px;margin-top:18px;padding:18px;display:grid}label,.draft-total{gap:7px;display:grid}label span,.draft-total span{color:var(--muted);font-size:.78rem;font-weight:800}input,select,textarea{border:1px solid var(--field-border);width:100%;min-width:0;color:var(--text);background:var(--field);border-radius:12px;outline:none;transition:border-color .15s,box-shadow .15s,background .15s;box-shadow:inset 0 1px #ffffff73}input,select{height:46px;padding:0 13px}textarea{resize:vertical;min-height:96px;padding:11px 13px}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--accent-muted) 50%), linear-gradient(135deg, var(--accent-muted) 50%, transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 12px) 20px;background-repeat:no-repeat;background-size:6px 6px;padding-right:34px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent)}.draft-total{justify-content:center;min-height:46px;padding:0 4px}.draft-total strong{font-size:1.06rem}.form-actions,.row-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.icon-button,.primary-button{cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.icon-button{width:44px;height:44px;color:var(--text);background:var(--button-soft)}.icon-button:hover,.primary-button:hover{transform:translateY(-1px)}.icon-button:hover{background:var(--button-soft-hover)}.icon-button:disabled{cursor:not-allowed;opacity:.68;transform:none}.icon-button.danger{color:var(--danger);background:var(--danger-soft)}.primary-button{color:#fff;background:var(--accent);height:44px;box-shadow:0 14px 30px color-mix(in srgb, var(--accent) 24%, transparent);gap:8px;padding:0 18px;font-weight:850}.primary-button:hover{background:var(--accent-strong)}.primary-button:disabled{cursor:wait;opacity:.72;transform:none}.error-banner,.notice-banner{border-radius:14px;margin-top:14px;padding:13px 15px;font-weight:750}.error-banner{border:1px solid var(--danger-border);color:var(--danger);background:var(--error-bg)}.notice-banner{border:1px solid var(--border);color:var(--text);background:var(--surface-soft);justify-content:space-between;align-items:center;gap:12px;display:flex}.notice-banner a{color:var(--accent-muted);font-weight:850}.modal-backdrop{z-index:20;background:var(--overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);place-items:center;padding:18px;display:grid;position:fixed;inset:0}.settings-modal{border:1px solid var(--border);background:var(--surface-strong);width:min(720px,100%);max-height:min(760px,100vh - 36px);box-shadow:0 30px 90px var(--shadow-strong);border-radius:20px;gap:18px;padding:24px;display:grid;overflow:auto}.compact-modal{width:min(520px,100%)}.project-name-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.danger-text-button{border:1px solid var(--danger-border);min-height:42px;color:var(--danger);background:var(--danger-soft);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:800;display:inline-flex}.danger-text-button:disabled{cursor:not-allowed;opacity:.58}.modal-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-tabs{z-index:2;border:1px solid var(--border);background:var(--surface-strong);box-shadow:0 8px 20px color-mix(in srgb, var(--shadow-strong) 14%, transparent);border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:6px;display:grid;position:sticky;top:0}.settings-tab{min-height:40px;color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:10px;padding:8px 12px;font-weight:800}.settings-tab:hover{color:var(--text);background:var(--surface-soft)}.settings-tab[aria-selected=true]{color:var(--button-text);background:var(--accent);box-shadow:0 6px 16px var(--shadow)}.settings-tab:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.settings-tab-panel{gap:18px;display:grid}.settings-section{border-top:1px solid var(--border);gap:13px;padding-top:17px;display:grid}.settings-section[hidden]{display:none}.settings-section[data-panel-start]{border-top:0;padding-top:0}.settings-label{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:850}.settings-form,.password-settings-form,.invoice-settings-grid{gap:12px;display:grid}.checkbox-field{border:1px solid var(--field-border);background:var(--surface-soft);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.checkbox-field input{width:18px;height:18px;accent-color:var(--accent);margin:1px 0 0}.checkbox-field span{color:var(--text);line-height:1.45}.archive-modal{width:min(820px,100%)}.archive-list{gap:10px;display:grid}.archive-item{border:1px solid var(--field-border);background:var(--field);border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:14px;display:grid}.archive-item>div:first-child{gap:5px;display:grid}.archive-item span{color:var(--muted);font-size:.85rem;font-weight:700}.settings-form{grid-template-columns:minmax(240px,1fr) minmax(120px,.35fr) auto;align-items:end}.password-settings-form{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end}.invoice-settings-grid{grid-template-columns:1fr 1fr}.option-list{grid-template-columns:1fr;gap:8px;display:grid}.option-item{border:1px solid var(--field-border);background:var(--field);min-height:52px;color:var(--text);border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(110px,140px) auto;align-items:center;gap:10px;padding:6px 6px 6px 13px;font-weight:750;display:grid}.option-item>span{overflow-wrap:anywhere}.option-rate-field{gap:4px}.option-rate-field input{height:38px}.option-item .icon-button{width:40px;height:40px}.muted{color:var(--muted);font-weight:750}.table-wrap{gap:8px;margin-top:18px;display:grid}.table-grid{grid-template-columns:minmax(115px,.85fr) minmax(115px,.85fr) minmax(72px,.55fr) minmax(190px,1.8fr) minmax(95px,.85fr) minmax(115px,.9fr) 104px;align-items:center;gap:12px;display:grid}.table-header{color:var(--muted);text-transform:uppercase;border-radius:14px;padding:13px 16px;font-size:.74rem;font-weight:850}.table-row{border-radius:14px;min-height:66px;padding:13px 16px;transition:transform .15s,box-shadow .15s,border-color .15s}.table-row:nth-of-type(2n){background:linear-gradient(0deg, var(--row-alt), var(--row-alt)), var(--surface)}.table-row:hover{border-color:color-mix(in srgb, var(--accent) 28%, var(--border));box-shadow:0 20px 46px var(--shadow);transform:translateY(-1px)}.table-row strong{overflow-wrap:anywhere}.empty-state{border:1px dashed var(--field-border);min-height:160px;color:var(--muted);background:var(--surface);border-radius:16px;justify-content:center;align-items:center;font-weight:750;display:flex}.total-bar{border-radius:16px;justify-content:flex-end;align-items:baseline;gap:24px;margin-top:18px;padding:20px 24px;display:flex}.total-bar span{color:var(--muted);font-weight:850}.total-bar strong{font-size:1.85rem}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1020px){.entry-form{grid-template-columns:1fr 1fr 1fr}.description-field{grid-column:span 2}}@media (width<=880px){.app-shell{padding:16px}.entry-form,.settings-form,.project-name-form,.password-settings-form,.invoice-settings-grid{grid-template-columns:1fr}.option-item{grid-template-columns:1fr auto}.option-rate-field,.description-field,.form-actions{grid-column:1/-1}.table-header{display:none}.table-grid,.table-row{grid-template-columns:1fr}.table-row{gap:8px}.row-actions{justify-content:flex-start}.archive-item{grid-template-columns:1fr}}@media (width<=520px){.entry-form{grid-template-columns:1fr}.topbar,.total-bar{flex-direction:column;align-items:flex-start}.topbar-actions{flex-wrap:wrap}.theme-grid{grid-template-columns:1fr}.settings-tabs{display:flex;overflow-x:auto}.settings-tab{flex:1 0 auto}}
