.local-vault-shell{min-height:100svh;display:grid;place-items:center;padding:24px 16px}.local-vault-panel{width:min(100%,440px);padding:clamp(20px,5vw,36px);overflow-wrap:anywhere}.local-vault-brand{display:flex;align-items:center;gap:10px;margin-bottom:28px;color:var(--color-primary)}.local-vault-panel h1{font-family:var(--font-heading);font-weight:400;font-size:clamp(26px,5vw,32px);line-height:1.2}.local-vault-panel p{line-height:1.6}.local-vault-panel .book-form{display:grid;gap:16px;margin:24px 0}.local-vault-panel label{display:grid;gap:8px}.local-vault-panel input{width:100%;min-width:0;min-height:44px;font-size:16px}.local-vault-panel button{min-height:44px;white-space:normal;font:600 14px/1.4 var(--font-body)}.local-vault-hint{font-size:13px;color:var(--color-text-secondary)}.local-vault-panel .local-vault-remember{min-height:44px;display:flex;align-items:center;gap:10px}.local-vault-panel .local-vault-remember input{width:20px;height:20px;min-height:20px;flex:0 0 20px}.local-vault-remember span{font:500 14px/1.5 var(--font-body)}@media(hover:none)and (pointer:coarse){html{touch-action:pan-x pan-y;-webkit-text-size-adjust:100%;text-size-adjust:100%}:root :is(input,select,textarea){font-size:max(16px,1em)!important}}.recovery-screen{--recovery-surface: var(--color-surface, #fff);--recovery-text: var(--color-text, var(--palette-ink, #153325));--recovery-muted: var(--color-text-muted, #565c54);--recovery-green: var(--palette-brand, #1b4332);--recovery-clay: #b65b42;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-content:center;gap:24px;min-width:0;min-height:340px;padding:32px 24px;color:var(--recovery-text);background:var(--recovery-surface);border:1px solid var(--color-border, #e2ddd5);border-radius:14px;text-align:center;font-family:var(--font-body, "Plus Jakarta Sans", Arial, sans-serif);line-height:1.6}.recovery-shell{min-height:100dvh;border:0;border-radius:0;background:var(--color-background, #fcf9f2)}.settings-hub-content>.recovery-screen{padding:16px 0;border:0;border-radius:0;background:transparent}.recovery-copy{min-width:0;width:100%;max-width:min(62ch,100%);overflow-wrap:anywhere}.recovery-copy :is(h1,h2){margin:0 0 12px;font:500 28px/1.25 var(--font-heading, "Newsreader", Georgia, serif);overflow-wrap:anywhere}.recovery-copy p{margin:0;font-size:14px;color:var(--recovery-muted)}.recovery-copy .recovery-note{margin-top:12px;font-size:12px}.recovery-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;min-width:0}.recovery-actions :is(button,a){box-sizing:border-box;min-height:44px;max-width:100%;padding:10px 16px;border:1px solid transparent;border-radius:10px;background:var(--recovery-green);color:#fff;font:600 13px/1.6 var(--font-body, Arial, sans-serif);cursor:pointer;text-decoration:none;overflow-wrap:anywhere}.recovery-actions .recovery-secondary{background:var(--recovery-surface);color:var(--recovery-text);border-color:var(--color-border, #e2ddd5)}.recovery-actions :is(button,a):hover:not(:disabled){filter:brightness(.92)}.recovery-actions :is(button,a):focus-visible{outline:3px solid var(--recovery-clay);outline-offset:3px}.recovery-actions button:disabled{opacity:.6;cursor:wait}.recovery-scene{position:relative;width:160px;height:96px;color:var(--recovery-green)}.recovery-leaf{position:absolute;width:64px;height:64px;left:48px;top:12px;transform-origin:50% 75%;animation:recovery-leaf-hop 3.6s ease-in-out 1}.recovery-dot{position:absolute;width:12px;height:12px;top:68px;border-radius:50%;background:var(--recovery-green)}.recovery-dot-start{left:4px}.recovery-dot-end{right:4px;background:var(--recovery-clay);animation:recovery-dot-wait 3.6s ease-in-out 1}.recovery-thread{position:absolute;left:22px;right:22px;top:73px;border-top:2px dashed var(--color-border, #e2ddd5)}@keyframes recovery-leaf-hop{0%,to{transform:translate(0) rotate(-8deg)}30%{transform:translate(18px,-12px) rotate(14deg)}50%{transform:translate(18px) rotate(8deg)}75%{transform:translate(-12px,-8px) rotate(-15deg)}}@keyframes recovery-dot-wait{0%,to{transform:scale(1)}40%{transform:scale(.7)}55%{transform:scale(1.2)}}.recovery-connection{min-height:0;gap:16px;margin-bottom:16px;padding:20px}.recovery-connection .recovery-scene{height:84px}.recovery-connection h2{font-size:23px}.recovery-connected{font-size:12px;color:var(--color-text-muted, #565c54)}[data-startup-recovery] .recovery-startup-description,[data-startup-recovery] .recovery-actions{display:none}[data-startup-recovery][data-state=failed] .recovery-startup-description{display:block}[data-startup-recovery][data-state=failed] .recovery-actions{display:flex}@media(min-width:800px){.recovery-connection{grid-template-columns:auto minmax(0,1fr) auto;justify-items:start;text-align:left}.recovery-connection .recovery-scene{width:112px;transform:scale(.7);transform-origin:left center}.recovery-connection .recovery-actions{max-width:220px}}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .recovery-screen{--recovery-surface: #1a261e;--recovery-text: #e4ece6;--recovery-muted: #b7c4b9;--recovery-green: #a0ceb1;--recovery-clay: #edb39f;--color-border: var(--theme-border, #35473a)}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .recovery-actions button:not(.recovery-secondary){color:var(--palette-ink, #153325)}@media(prefers-color-scheme:dark){.recovery-shell{--recovery-surface: #1a261e;--recovery-text: #e4ece6;--recovery-muted: #b7c4b9;--recovery-green: #a0ceb1;--recovery-clay: #edb39f;--color-background: var(--theme-background, #111a14);--color-border: var(--theme-border, #35473a);color-scheme:dark}.recovery-shell .recovery-actions :is(a,button):not(.recovery-secondary){color:var(--palette-ink, #153325)}}@media(prefers-reduced-motion:reduce){.recovery-screen *,.recovery-screen *:before,.recovery-screen *:after{animation:none!important;transition:none!important}}.splash{--splash-background: var(--color-background);--splash-surface: var(--color-surface);--splash-secondary: var(--color-surface-secondary);--splash-text: var(--color-text);--splash-muted: var(--color-text-muted);--splash-border: var(--color-border);--splash-primary: var(--color-primary);--splash-accent: var(--color-action);--splash-focus: var(--color-focus);--splash-on-primary: var(--color-on-primary, #fff);--splash-error: var(--color-negative);position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:100svh;overflow:hidden;color:var(--splash-text);background:var(--splash-background);background-image:radial-gradient(color-mix(in srgb,var(--splash-primary) 5%,transparent) 1px,transparent 1px);background-size:24px 24px}.splash__ambience{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}.splash__aura{position:absolute;width:min(650px,110vw);aspect-ratio:1;border-radius:50%;filter:blur(70px);opacity:.5;animation:splash-aura 9s ease-in-out infinite}.splash__aura--top{top:-280px;left:calc(50% - min(325px,55vw));background:radial-gradient(var(--splash-secondary),transparent 70%)}.splash__aura--warm{right:-160px;bottom:-250px;background:radial-gradient(color-mix(in srgb,var(--splash-accent) 15%,var(--splash-background)),transparent 70%);animation-delay:-3s}.splash__particle{position:absolute;left:26%;top:65%;width:5px;height:5px;border-radius:50%;background:var(--splash-accent);opacity:0;animation:splash-float 7s linear infinite}.splash__particle:nth-last-child(2){left:74%;top:35%;animation-delay:-2s}.splash__particle:last-child{left:65%;top:78%;animation-delay:-4s}.splash__dot{display:inline-block;flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:currentColor}.splash__main{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;width:min(100%,600px);margin:0 auto;padding:54px 24px 38px;text-align:center}.splash__emblem{position:relative;display:grid;place-items:center;width:96px;height:96px;margin:0 0 38px}.splash__ring{position:absolute;width:148px;height:148px;border-radius:50%;border:1px solid color-mix(in srgb,var(--splash-primary) 18%,transparent);animation:splash-ring 4s ease-out infinite}.splash__ring--outer{width:192px;height:192px;animation-delay:-1.5s}.splash__tile{position:relative;display:grid;place-items:center;width:96px;height:96px;border-radius:25px;background:var(--splash-primary);color:var(--splash-on-primary);box-shadow:0 14px 30px color-mix(in srgb,var(--splash-primary) 18%,transparent);animation:splash-breathe 6s ease-in-out infinite}.splash__tile>svg{width:58px;height:58px}.splash__leaf{stroke-dasharray:150;stroke-dashoffset:0;animation:splash-draw-leaf 1.5s ease-out both}.splash__stem{stroke-dasharray:50;stroke-dashoffset:0;animation:splash-draw-stem 1s .4s ease-out both}.splash__seed{fill:var(--splash-accent)}.splash__seal{position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;width:25px;height:25px;border:2px solid var(--splash-primary);border-radius:50%;color:var(--splash-primary);background:var(--splash-background)}.splash__seal svg{width:15px;height:15px}.splash__wordmark{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}.splash__wordmark h1{margin:0;font-family:var(--font-heading);font-size:clamp(44px,8vw,64px);font-weight:500;letter-spacing:-.045em;line-height:1.15}.splash__wordmark>span{padding:3px 8px;border-radius:999px;color:var(--splash-primary);background:var(--splash-secondary);font-size:10px;font-weight:600;letter-spacing:.08em}.splash__loading{width:min(100%,384px);margin-top:32px;padding:20px;border:1px solid var(--splash-border);border-radius:16px;background:var(--splash-surface);box-shadow:var(--shadow-soft)}.splash__track{height:5px;overflow:hidden;border-radius:999px;background:var(--splash-secondary)}.splash__track>span{display:block;height:100%;border-radius:inherit;background:var(--splash-primary);transition:width .3s ease-out}.splash__status-row{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-top:12px;text-align:left;font-size:11px;line-height:1.6}.splash__status-row p{display:flex;align-items:baseline;gap:8px;margin:0}.splash__percent{flex-shrink:0;color:var(--splash-muted);font-variant-numeric:tabular-nums}.splash__loading--error .splash__status-row p{color:var(--splash-error)}.splash__continue{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;margin-top:16px;padding:10px 16px;border:1px solid transparent;border-radius:12px;color:var(--splash-primary);background:transparent;font-size:12px;font-weight:600;cursor:pointer}.splash__continue:hover{border-color:var(--splash-border);background:var(--splash-secondary)}.splash__continue:focus-visible{outline:3px solid var(--splash-focus);outline-offset:3px}.splash__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 30px;padding:20px 24px max(20px,env(safe-area-inset-bottom));border-top:1px solid var(--splash-border);color:var(--splash-muted);font-size:10px;line-height:1.6;text-align:center}@media(min-width:640px){.splash__main{padding-top:64px;padding-bottom:52px}}.app-shell[data-theme=dark] .splash{--splash-background: #111a14;--splash-surface: #1a261e;--splash-secondary: #24372b;--splash-text: #e4ece6;--splash-muted: #b4c4b8;--splash-border: #3f5546;--splash-primary: var(--color-primary);--splash-accent: #ddaa8f;--splash-focus: #b4d3bc;--splash-on-primary: var(--color-on-primary, #15271b);--splash-error: #ff9b9b}@media(prefers-color-scheme:dark){.app-shell[data-theme=system] .splash{--splash-background: #111a14;--splash-surface: #1a261e;--splash-secondary: #24372b;--splash-text: #e4ece6;--splash-muted: #b4c4b8;--splash-border: #3f5546;--splash-primary: var(--color-primary);--splash-accent: #ddaa8f;--splash-focus: #b4d3bc;--splash-on-primary: var(--color-on-primary, #15271b);--splash-error: #ff9b9b}}@keyframes splash-aura{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@keyframes splash-float{0%{opacity:0;transform:translateY(0)}20%,80%{opacity:.35}to{opacity:0;transform:translateY(-60px)}}@keyframes splash-ring{0%{opacity:.55;transform:scale(.95)}to{opacity:0;transform:scale(1.2)}}@keyframes splash-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes splash-draw-leaf{0%{stroke-dashoffset:150}to{stroke-dashoffset:0}}@keyframes splash-draw-stem{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.splash *,.splash *:before,.splash *:after{animation:none!important;transition:none!important}}.savings-workspace{--sg-green: var(--palette-brand, #1b4332);--sg-clay: var(--palette-accent, #c86d51);--sg-sage: var(--palette-sage, #8fa382);display:grid;gap:24px;padding:16px 0 36px;min-width:0;color:var(--color-text)}.savings-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.savings-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:8px}.savings-heading h1{font-family:var(--font-heading);font-size:clamp(30px,3vw,40px);font-weight:400;line-height:1.1;margin:0 0 8px}.savings-heading p{margin:0;color:var(--color-text-muted);font-size:13px;max-width:580px;line-height:1.6}.savings-workspace button,.savings-workspace input,.savings-workspace select,.savings-workspace textarea{font:inherit}.savings-workspace button{cursor:pointer}.savings-workspace button:disabled{opacity:.5;cursor:not-allowed}.savings-workspace button:focus-visible,.savings-workspace input:focus-visible,.savings-workspace select:focus-visible,.savings-workspace textarea:focus-visible{outline:3px solid var(--sg-sage);outline-offset:3px}.savings-workspace svg{width:18px;height:18px;flex-shrink:0}.savings-primary,.savings-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:10px 16px;border-radius:10px;border:1px solid transparent;font-size:12px!important;font-weight:600!important;transition:background .18s,transform .18s}.savings-primary{background:var(--sg-green);color:#fcf9f2}.savings-primary:hover:not(:disabled){background:#295b44;transform:translateY(-1px)}.savings-secondary{border-color:var(--color-border);background:var(--color-surface);color:var(--color-text)}.savings-secondary:hover:not(:disabled){background:var(--color-surface-secondary)}.savings-icon-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--color-border);border-radius:10px;background:transparent;color:var(--color-text-muted)}.savings-overview{display:flex;gap:32px;align-items:center;padding:26px 30px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface);box-shadow:0 3px 12px #1b433204}.savings-overview-intro{display:flex;align-items:center;gap:16px;min-width:200px}.savings-overview-intro>div{display:grid;gap:5px}.savings-overview-intro span:not(.savings-icon),.savings-totals span{font-size:11px;color:var(--color-text-muted)}.savings-overview-intro strong{font-family:var(--font-heading);font-size:25px;font-weight:400}.savings-overview small{font-size:11px;color:var(--color-text-muted)}.savings-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#8fa38220;color:var(--sg-green);flex-shrink:0}.savings-icon svg{width:22px;height:22px}.savings-totals{display:flex;flex-wrap:wrap;gap:24px 36px;padding-left:32px;border-left:1px solid var(--color-border)}.savings-totals>div{display:grid;gap:6px;min-width:145px}.savings-totals strong{font-size:23px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.035em}.savings-totals p{font-size:13px;color:var(--color-text-muted);line-height:1.6;max-width:340px;margin:0}.savings-toolbar{display:flex;gap:10px;align-items:center}.savings-search{display:flex;align-items:center;gap:9px;flex:1;max-width:440px;color:var(--color-text-muted);border:1px solid var(--color-border);background:var(--color-surface);padding:0 12px;border-radius:10px}.savings-search input{width:100%;min-width:0;height:42px;border:0;outline:none;background:transparent;color:var(--color-text);font-size:12px}.savings-toolbar select{min-width:140px;max-width:100%;height:44px;border:1px solid var(--color-border);border-radius:10px;padding:0 12px;background:var(--color-surface);color:var(--color-text);font-size:12px}.savings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.savings-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:17px;padding:22px;background:var(--color-surface);box-shadow:0 3px 10px #1b433204;animation:savings-enter .28s ease-out;transition:box-shadow .2s,border-color .2s}.savings-card:hover{box-shadow:0 7px 22px #1b433209;border-color:var(--sg-sage)}.savings-card-top{display:flex;gap:8px;align-items:center;margin-bottom:20px}.savings-card-top .savings-icon-button{margin-left:auto;width:34px;height:34px;border-color:transparent}.savings-tag{font-size:10px;font-weight:600;padding:5px 8px;border-radius:6px;color:var(--color-text-muted);background:var(--color-surface-secondary)}.savings-card.completed .savings-tag{color:var(--sg-green);background:#8fa38230}.savings-card:nth-child(3n+2) .savings-icon{background:#c86d5117;color:#a44f37}.savings-card:nth-child(3n+3) .savings-icon{background:#8fa38228}.savings-kind{font-size:10px;color:var(--color-text-muted);margin-bottom:5px}.savings-card h3{font-family:var(--font-heading);font-size:25px;line-height:1.15;font-weight:400;margin:0 0 22px;overflow-wrap:anywhere}.savings-amount{display:grid;gap:5px;margin-bottom:22px}.savings-amount strong{font-size:25px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.035em;overflow-wrap:anywhere}.savings-amount span{font-size:11px;color:var(--color-text-muted)}.savings-progress-label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:9px}.savings-progress-label span{color:var(--color-text-muted)}.savings-card progress{display:block;width:100%;height:6px;appearance:none;border:0;border-radius:10px;overflow:hidden;background:var(--color-surface-secondary);accent-color:var(--sg-sage)}.savings-card progress::-webkit-progress-bar{background:var(--color-surface-secondary);border-radius:10px}.savings-card progress::-webkit-progress-value{background:var(--sg-sage);border-radius:10px;transition:width .3s}.savings-card progress::-moz-progress-bar{background:var(--sg-sage);border-radius:10px}.savings-card.completed progress{accent-color:var(--sg-green)}.savings-card.completed progress::-webkit-progress-value{background:var(--sg-green)}.savings-card-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:11px 0 22px;font-size:10px;line-height:1.5;color:var(--color-text-muted)}.savings-card-meta>span{display:inline-flex;align-items:center;gap:4px}.savings-card-meta svg{width:13px;height:13px}.savings-card-note{font-size:11px;line-height:1.6;color:var(--color-text-muted);margin:0 0 18px;overflow-wrap:anywhere}.savings-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.savings-card-actions button{padding:10px 8px}.savings-archive{align-self:center;font-size:10px!important;margin-top:13px;padding:5px 10px;min-height:30px;border:0;background:none;color:var(--color-text-muted);text-decoration:underline;text-underline-offset:3px}.savings-footnote{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.7;color:var(--color-text-muted);margin:0;max-width:780px}.savings-footnote svg{margin-top:2px;width:15px;height:15px}.savings-review,.savings-alert{display:flex;gap:8px;align-items:flex-start;background:#c86d5112;border:1px solid #c86d5140;color:var(--color-text);padding:12px;border-radius:9px;font-size:12px;line-height:1.6;margin:0 0 12px}.savings-review{font-size:11px}.savings-alert button{color:inherit;background:none;border:0;text-decoration:underline}.savings-notice{font-size:12px;color:var(--color-text);margin:0}.savings-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:54px 24px;border:1px dashed var(--color-border);border-radius:16px;background:var(--color-surface)}.savings-empty>svg{width:36px;height:36px;color:var(--sg-sage);margin-bottom:12px}.savings-empty h3,.savings-empty h2{font-family:var(--font-heading);font-size:28px;font-weight:400;margin:8px 0}.savings-empty p{font-size:13px;color:var(--color-text-muted);max-width:400px;line-height:1.7;margin:0 0 24px}.savings-skeleton{height:360px;border-radius:17px;background:var(--color-surface-secondary);animation:savings-pulse 1.4s ease-in-out infinite}.savings-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#102a2099;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:24px;overflow-y:auto}.savings-dialog{width:min(100%,560px);min-width:0;max-height:calc(var(--modal-viewport-height, 100dvh) - 48px);overflow:auto;overscroll-behavior:contain;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:18px;padding:24px;box-shadow:0 24px 80px #0003}.savings-dialog[data-motion=enter]{animation:savings-enter .2s ease-out}.savings-dialog>header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.savings-dialog h3{font-family:var(--font-heading);font-size:29px;font-weight:400;line-height:1.1;margin:0;overflow-wrap:anywhere}.savings-dialog form{display:grid;gap:22px}.savings-dialog fieldset{min-width:0;margin:0;padding:0;border:0;display:grid;gap:18px}.savings-dialog label{display:grid;gap:8px;font-size:11px;font-weight:600;min-width:0}.savings-dialog input,.savings-dialog select,.savings-dialog textarea{box-sizing:border-box;min-width:0;width:100%;border:1px solid var(--color-border);background:var(--color-background);color:var(--color-text);padding:12px;border-radius:9px;font-size:13px;min-height:44px}.savings-dialog textarea{resize:vertical}.savings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}.savings-dialog footer{display:flex;justify-content:flex-end;gap:10px;padding-top:18px;border-top:1px solid var(--color-border)}.savings-dialog-hint{font-size:12px;color:var(--color-text-muted);line-height:1.7;margin:0}.savings-history{margin:18px 0;display:grid}.savings-history-row{display:flex;align-items:flex-start;gap:12px;padding:17px 0;border-bottom:1px solid var(--color-border);min-width:0}.savings-history-row .savings-icon{width:33px;height:33px;border-radius:9px}.savings-history-row .savings-icon svg{width:17px;height:17px}.savings-history-row>div:not(.savings-history-value){min-width:0;flex:1}.savings-history-row strong{font-size:12px;font-weight:600}.savings-history-row small{display:block;font-size:10px;color:var(--color-text-muted);margin-top:6px;line-height:1.6}.savings-history-row p{font-size:11px;color:var(--color-text-muted);overflow-wrap:anywhere;margin:7px 0 0}.savings-history-value{text-align:right;max-width:48%;overflow-wrap:anywhere}.savings-history-value button{display:inline-block;font-size:10px;background:none;border:0;min-height:30px;color:var(--color-text-muted);text-decoration:underline;padding:6px}.savings-history-row.voided{opacity:.6}.savings-history-row.voided .savings-history-value>strong{text-decoration:line-through}.savings-history-row.unavailable .savings-history-value>strong{color:var(--sg-clay)}.app-shell[data-theme=dark] .savings-icon,.app-shell[data-theme=system][data-system-dark=true] .savings-icon{color:#b6c9aa}.app-shell[data-theme=dark] .savings-card.completed .savings-tag,.app-shell[data-theme=system][data-system-dark=true] .savings-card.completed .savings-tag{color:#c3d7b8}@keyframes savings-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes savings-pulse{50%{opacity:.5}}@media(min-width:1600px){.savings-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.savings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.savings-overview{padding:22px;gap:22px}.savings-totals{padding-left:22px}}@media(max-width:600px){.savings-workspace{gap:20px}.savings-heading{align-items:flex-start;flex-direction:column;gap:16px}.savings-heading h1{font-size:34px}.savings-heading .savings-primary{width:100%}.savings-overview{flex-direction:column;align-items:stretch;padding:22px}.savings-overview-intro{min-width:0}.savings-totals{border-left:0;border-top:1px solid var(--color-border);padding:20px 0 0;gap:18px}.savings-totals>div{min-width:0;flex:1 1 120px}.savings-totals strong{font-size:22px}.savings-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.savings-search{grid-column:1/-1;max-width:none}.savings-toolbar select{min-width:0;width:100%}.savings-grid{grid-template-columns:minmax(0,1fr);gap:16px}.savings-card{padding:22px}.savings-backdrop{padding:14px;align-items:center}.savings-dialog{padding:20px;max-height:calc(var(--modal-viewport-height, 100dvh) - 28px);border-radius:15px}.savings-form-grid{gap:16px 12px}.savings-dialog input,.savings-dialog select,.savings-dialog textarea{font-size:16px;padding:10px}.savings-history-row{gap:8px}.savings-history-row .savings-icon{display:none}.savings-history-value{max-width:45%}}@media(prefers-reduced-motion:reduce){.savings-workspace *{animation:none!important;transition:none!important}}.savings-workspace *,.savings-workspace *:before,.savings-workspace *:after{box-sizing:border-box}.savings-totals strong{overflow-wrap:anywhere}@media(max-width:600px){.savings-totals>div{flex-basis:200px}}@media(max-width:420px){.savings-form-grid{grid-template-columns:minmax(0,1fr)}}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .savings-workspace{--color-text: var(--theme-text, #e4ece6);--color-text-secondary: var(--theme-text-secondary, #b7c4b9);--color-text-muted: var(--theme-text-muted, #b7c4b9);--color-surface: var(--theme-surface, #1a261e);--color-surface-secondary: var(--theme-surface-secondary, #25372b);--color-background: var(--theme-background, #17231b);--color-border: var(--theme-border, #35473a);--sg-clay: #edb39f;color-scheme:dark}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .savings-workspace .savings-card:nth-child(3n+2) .savings-icon{color:#edb39f}.couple-workspace,.couple-connection{display:grid;gap:24px;min-width:0;color:var(--color-text);font-size:14px;line-height:1.6}.couple-workspace{padding:16px 0 36px}.couple-workspace h1,.couple-workspace h2,.couple-workspace h3,.couple-connection h3{font-family:var(--font-heading);font-weight:500;line-height:1.25;margin:0 0 12px;overflow-wrap:anywhere}.couple-workspace h1{font-size:clamp(30px,4vw,40px);font-weight:400}.couple-workspace h2{font-size:26px}.couple-workspace h3,.couple-connection h3{font-size:22px}.couple-workspace p,.couple-connection p{margin:0 0 12px}.couple-heading p,.couple-note,.couple-connection section>p,.couple-activity-copy>span{color:var(--color-text-muted)}.couple-privacy{max-width:72ch}.couple-heading,.couple-row,.couple-members,.couple-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.couple-heading,.couple-row{justify-content:space-between}.couple-members{border-block:1px solid var(--color-border);padding:16px 0;overflow-wrap:anywhere}.couple-state{margin-inline-start:auto;color:var(--color-text-muted);font-size:12px}.couple-workspace button,.couple-connection button{font:inherit;cursor:pointer;min-height:44px}.couple-workspace button:disabled,.couple-connection button:disabled{opacity:.55;cursor:not-allowed}.couple-primary,.couple-secondary,.couple-danger{border:1px solid var(--color-border);border-radius:10px;padding:10px 16px;font-weight:600!important;overflow-wrap:anywhere}.couple-primary{background:var(--color-primary);color:var(--color-on-primary, #fff);border-color:transparent}.couple-secondary{background:var(--color-surface);color:var(--color-text)}.couple-danger{background:var(--color-surface);color:var(--color-negative, #b42332)}.couple-text-button{border:none;background:transparent;text-decoration:underline;text-underline-offset:4px;color:var(--color-text);padding:8px}.couple-primary:hover:not(:disabled){filter:brightness(.92)}.couple-secondary:hover:not(:disabled),.couple-text-button:hover:not(:disabled){background:var(--color-background)}.couple-workspace :is(button,input,select,textarea):focus-visible,.couple-connection :is(button,input,select,textarea):focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.couple-pairing,.couple-main-grid{display:grid;gap:32px;min-width:0}.couple-pairing>section,.couple-main-grid>section{min-width:0}.couple-form{display:grid;gap:16px}.couple-form label,.couple-code label{display:grid;gap:6px;font-size:13px;font-weight:600;min-width:0}.couple-form fieldset{padding:0;margin:0;border:0;display:grid;gap:16px;min-width:0}.couple-fields{display:grid;gap:16px}.couple-form :is(input,select,textarea),.couple-code textarea{box-sizing:border-box;width:100%;min-width:0;min-height:44px;font:inherit;padding:10px 12px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.couple-form textarea,.couple-code textarea{resize:vertical;overflow-wrap:anywhere;word-break:break-all}.couple-form input[type=checkbox]{width:20px;height:20px;min-height:0;flex-shrink:0;accent-color:var(--color-primary)}.couple-checkbox{display:flex!important;align-items:start;gap:10px!important;margin-block:16px}.couple-editor{padding:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;max-width:720px}.couple-editor h2{margin:0}.couple-goal,.couple-balance{padding-block:24px;border-bottom:1px solid var(--color-border)}.couple-goal:first-of-type,.couple-balance:first-of-type{padding-top:8px}.couple-goal-amount,.couple-total{font-family:var(--font-heading);font-size:30px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.couple-goal-amount>span{font-family:var(--font-body);color:var(--color-text-muted);font-size:13px}.couple-goal progress{width:100%;height:8px;border:0;border-radius:4px;overflow:hidden;background:var(--color-border);accent-color:var(--color-primary)}.couple-goal progress::-webkit-progress-bar{background:var(--color-border)}.couple-goal progress::-webkit-progress-value{background:var(--color-primary)}.couple-goal progress::-moz-progress-bar{background:var(--color-primary)}.couple-note{font-size:12px}.couple-workspace dl{display:grid;gap:10px;margin-block:16px}.couple-workspace dl>div{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.couple-workspace dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}.couple-workspace dt{color:var(--color-text-muted);overflow-wrap:anywhere}.couple-balance-message{font-weight:600;overflow-wrap:anywhere}.couple-empty{padding-block:20px}.couple-empty p{max-width:60ch;color:var(--color-text-muted)}.couple-code,.couple-pending,.couple-confirm{margin-top:20px}.couple-code textarea{margin-block:8px}.couple-linked>.couple-text-button{display:block;margin-top:16px}.couple-archives{padding-top:24px;border-top:1px solid var(--color-border)}.couple-archives ul,.couple-activity ul{list-style:none;padding:0;margin:0}.couple-archives li{margin-bottom:12px}.couple-activity li{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;padding-block:18px;border-top:1px solid var(--color-border)}.couple-activity-copy{flex:1 1 180px;min-width:0;display:grid;overflow-wrap:anywhere}.couple-activity-copy>span{font-size:12px}.couple-entry-amount{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.couple-voided .couple-entry-amount{text-decoration:line-through}.couple-confirm-void{flex-basis:100%;display:flex;gap:12px;align-items:center;flex-wrap:wrap}@media(min-width:520px){.couple-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1100px){.couple-pairing{grid-template-columns:repeat(2,minmax(0,1fr))}.couple-main-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px}}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) :is(.couple-workspace,.couple-connection){--color-text: var(--theme-text, #e4ece6);--color-text-muted: var(--theme-text-muted, #b7c4b9);--color-surface: var(--theme-surface, #1a261e);--color-background: var(--theme-background, #17231b);--color-border: var(--theme-border, #35473a);--color-primary: var(--theme-primary, #a0ceb1);--color-on-primary: var(--theme-on-primary, var(--palette-ink, #153325));--color-negative: var(--theme-negative, #ffb4b4);color-scheme:dark}.welcome-shell{min-height:100dvh;background:var(--color-background)}.welcome-layout{display:grid;min-height:100dvh;grid-template-columns:minmax(280px,.84fr) minmax(0,1.16fr)}.welcome-story{background:var(--color-primary);color:#fff;padding:48px clamp(30px,5vw,82px);display:flex;flex-direction:column;justify-content:space-between;gap:40px}.welcome-brand{display:inline-flex;align-items:center;gap:12px;color:inherit;text-decoration:none;width:fit-content}.welcome-brand .brand-symbol{background:var(--color-on-primary, #fff);color:var(--color-primary)}.welcome-story-copy{max-width:420px}.welcome-story h1{font-family:var(--font-heading);font-size:clamp(36px,4.5vw,64px);font-weight:400;line-height:1.06;margin:0 0 22px;text-wrap:balance}.welcome-story-copy>p{line-height:1.8;color:#e2e9de;margin:0;font-size:15px}.welcome-story ol{list-style:none;padding:0;margin:48px 0 0;display:grid;gap:28px}.welcome-story li{display:flex;gap:18px;align-items:flex-start}.welcome-story li>span{border:1px solid #7e9b87;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex-shrink:0;font-size:12px}.welcome-story li strong{font-size:14px;font-weight:600}.welcome-story li p{font-size:13px;color:#e2e9de;line-height:1.7;margin:6px 0 0}.welcome-story-footer{display:flex;gap:10px;align-items:center;font-size:12px;color:#e2e9de;line-height:1.6}.welcome-content{padding:30px clamp(24px,5vw,76px) 56px;min-width:0;background:var(--color-surface)}.welcome-top{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.welcome-top .session-actions{margin:0;width:auto}.welcome-top .session-logout{width:auto;padding:8px;font-size:12px;color:var(--color-text-secondary)}.welcome-steps{display:flex;flex-wrap:wrap;gap:16px;list-style:none;padding:0;margin:0}.welcome-steps li{display:flex;gap:7px;align-items:center;font-size:11px;color:var(--color-text-secondary)}.welcome-steps li span{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--color-border);border-radius:50%}.welcome-steps li[aria-current=step]{color:var(--color-primary);font-weight:600}.welcome-steps li[aria-current=step] span{color:var(--color-on-primary, #fff);background:var(--color-primary);border-color:var(--color-primary)}.welcome-body{max-width:570px;margin:clamp(40px,7vh,85px) auto 0;animation:welcome-appear .24s ease-out}.welcome-body h2{font-family:var(--font-heading);font-size:clamp(30px,3vw,40px);color:var(--color-primary);font-weight:400;line-height:1.15;margin:0 0 16px}.welcome-intro,.welcome-form>p{color:var(--color-text-secondary);font-size:14px;line-height:1.75}.welcome-language{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 20px;font-size:13px;color:var(--color-text-secondary)}.welcome-shell select{min-height:44px;padding:10px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text);font:inherit;max-width:100%}.welcome-draft{display:flex;align-items:flex-start;gap:10px;background:var(--color-surface-secondary);padding:14px 16px;border-radius:10px;font-size:12px;line-height:1.7;color:var(--color-text-secondary)}.welcome-draft svg,.welcome-region-summary svg{flex-shrink:0;margin-top:2px}.welcome-documents{margin:22px 0;border-block:1px solid var(--color-border)}.welcome-documents details+details{border-top:1px solid var(--color-border)}.welcome-documents summary{list-style:none;cursor:pointer;padding:18px 0;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:14px;font-weight:600;color:var(--color-text)}.welcome-documents summary::-webkit-details-marker{display:none}.welcome-documents summary small{display:block;font-size:11px;font-weight:400;color:var(--color-text-secondary);margin-top:6px;overflow-wrap:anywhere}.welcome-documents details[open] summary svg{transform:rotate(90deg)}.welcome-documents article{max-height:260px;overflow:auto;overscroll-behavior:contain;padding:0 14px 18px 0;scrollbar-width:thin}.welcome-documents h3{font-size:13px;margin:18px 0 6px;color:var(--color-text)}.welcome-documents article p{font-size:12px;line-height:1.8;margin:0;color:var(--color-text-secondary)}.welcome-form{display:grid;gap:16px}.welcome-check{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.65;color:var(--color-text);cursor:pointer}.welcome-check input{accent-color:var(--color-primary);width:18px;height:18px;flex-shrink:0;margin:2px 0 0}.welcome-form .welcome-receipt{font-size:11px;margin:0}.welcome-primary,.welcome-secondary,.welcome-text-button{font:inherit;font-size:13px;cursor:pointer;min-height:44px;border-radius:9px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:12px;transition:background .15s ease,transform .15s ease}.welcome-primary{background:var(--color-primary);color:var(--color-primary-contrast, #fff);border:1px solid transparent;font-weight:600}.welcome-primary:hover:not(:disabled){filter:brightness(1.12)}.welcome-primary:active:not(:disabled),.welcome-secondary:active:not(:disabled){transform:translateY(1px)}.welcome-secondary{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text)}.welcome-text-button{padding-inline:0;background:transparent;border:0;color:var(--color-text-secondary)}.welcome-primary:disabled,.welcome-secondary:disabled,.welcome-text-button:disabled{opacity:.55;cursor:default}.welcome-form>label:not(.welcome-check){display:grid;gap:9px;font-size:13px}.welcome-form fieldset{padding:0;margin:10px 0;border:0;min-width:0}.welcome-form legend{font-size:13px;margin-bottom:12px}.welcome-countries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.welcome-countries label{display:grid;grid-template-columns:auto 1fr;gap:9px 10px;align-items:center;padding:20px 16px;border:1px solid var(--color-border);border-radius:12px;cursor:pointer}.welcome-countries input{accent-color:var(--color-primary);margin:0}.welcome-countries small{grid-column:2;color:var(--color-text-secondary);font-size:12px}.welcome-countries .is-selected{background:var(--color-surface-secondary);border-color:var(--color-primary)}.welcome-region-summary{display:flex;align-items:flex-start;gap:10px;padding-block:6px;color:var(--color-text-secondary)}.welcome-region-summary p{font-size:12px;line-height:1.75;margin:0}.welcome-error{color:var(--color-danger, #b42332);font-size:13px;line-height:1.65}.finara-tour-active .main-content{padding-bottom:300px}.finara-tour{position:fixed;z-index:7;bottom:24px;right:24px;width:min(460px,calc(100vw - 48px));background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:16px;padding:22px;animation:welcome-appear .24s ease-out}.tour-progress{display:flex;gap:6px;margin-bottom:18px}.tour-progress span{height:3px;background:var(--color-border);flex:1;border-radius:2px}.tour-progress .is-reached{background:var(--color-primary)}.tour-copy{display:flex;gap:14px;align-items:flex-start}.tour-icon{display:grid;place-items:center;padding:10px;background:var(--color-surface-secondary);color:var(--color-primary);border-radius:10px;flex-shrink:0}.finara-tour h2{margin:0 0 8px;font-family:var(--font-heading);font-weight:500;font-size:24px;line-height:1.2}.finara-tour p{margin:0;font-size:12px;line-height:1.75;color:var(--color-text-secondary)}.tour-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px}.tour-actions>div{display:flex;gap:8px}@keyframes welcome-appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.welcome-story{padding:34px 26px}.welcome-content{padding:26px 26px 44px}.welcome-steps{gap:12px}}@media(max-width:680px){.welcome-layout{grid-template-columns:minmax(0,1fr)}.welcome-story{padding:24px;gap:28px}.welcome-story h1{font-size:36px;margin-bottom:12px}.welcome-story-copy>p{font-size:13px}.welcome-story ol,.welcome-story-footer{display:none}.welcome-content{padding:24px 22px 36px}.welcome-body{margin-top:32px}.welcome-top,.welcome-steps{gap:12px}.welcome-countries label{padding:16px 12px}.finara-tour{bottom:12px;right:12px;width:calc(100vw - 24px);padding:18px}.tour-actions{gap:8px}.tour-actions button{font-size:12px;padding-inline:12px}.tour-actions .welcome-text-button{padding-inline:0}.finara-tour-active .main-content{padding-bottom:330px}}@media(prefers-reduced-motion:reduce){.welcome-body,.finara-tour{animation:none}.welcome-primary,.welcome-secondary{transition:none}}.app-shell.welcome-shell[data-theme=light] .welcome-top .session-actions .session-logout{color:var(--color-text-secondary);background:transparent}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .finara-tour{--color-primary: var(--theme-primary, #a9d1b8);--color-primary-contrast: var(--theme-on-primary, var(--palette-ink, #153325));--color-text: var(--theme-text, #e4ece6);--color-text-secondary: var(--theme-text-secondary, #b7c4b9);--color-surface: var(--theme-surface, #1a261e);--color-surface-secondary: var(--theme-surface-secondary, #25372b);--color-border: var(--theme-border, #35473a)}.login{--login-bg: var(--color-background);--login-surface: var(--color-surface);--login-text: var(--color-text);--login-muted: var(--color-text-secondary);--login-border: var(--color-border);--login-primary: var(--color-primary);min-height:100svh;display:flex;flex-direction:column;background:var(--login-bg);color:var(--login-text);font-family:var(--font-body)}.login__header,.login__footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px max(20px,calc((100vw - 1120px)/2));border-bottom:1px solid var(--login-border)}.login__brand{display:flex;align-items:center;gap:10px;font:500 26px var(--font-heading)}.login__brand>.finara-brand-symbol{border-radius:12px;padding:2px 9px;color:#fff;background:var(--login-primary);font-family:serif}.login__main{flex:1;width:min(100%,1120px);margin:auto;display:grid;gap:38px;padding:40px 20px;background:radial-gradient(ellipse at 20% 20%,#8fa38218,transparent 65%)}.login__intro{max-width:440px}.login__eyebrow{display:inline-block;padding:5px 10px;border:1px solid var(--login-border);border-radius:30px}.login__intro h1{font:400 clamp(36px,4vw,52px)/1.06 var(--font-heading);letter-spacing:-.025em;margin:16px 0;text-wrap:balance}.login__intro>p{color:var(--login-muted);font-size:14px;line-height:1.8}.login__features{display:grid;gap:12px;margin-top:28px}.login__features>div{display:flex;gap:14px;padding:17px;border:1px solid var(--login-border);border-radius:16px;background:var(--login-surface)}.login__features>div>span{color:var(--login-primary);font-size:21px}.login__features h2{margin:0 0 5px;font:600 13px/1.5 var(--font-body)}.login__features p{margin:0;color:var(--login-muted);font-size:12px;line-height:1.7}.login blockquote{margin:25px 0 0;font-size:12px;font-style:italic;color:var(--login-muted);line-height:1.7}.login__card{min-width:0;align-self:center;padding:24px;background:var(--login-surface);border:1px solid var(--login-border);border-radius:24px;box-shadow:0 12px 38px #2820160f}.login__card-top{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--login-muted);padding-bottom:16px;border-bottom:1px solid var(--login-border)}.login__card-top span:first-child>span{color:var(--login-primary)}.login__card h2{font:400 28px/1.2 var(--font-heading);margin:22px 0 12px}.login__subtitle,.login__card>p{color:var(--login-muted);font-size:13px;line-height:1.7}.login form{display:grid;gap:20px;margin-top:24px}.login label{display:grid;gap:8px;font-size:12px;font-weight:600}.login input{width:100%;min-width:0;min-height:46px;border:1px solid var(--login-border);border-radius:12px;padding:10px 14px;background:var(--login-bg);color:var(--login-text);font:400 16px var(--font-body)}.login__password{position:relative;display:flex}.login__password input{padding-right:84px}.login__password button{position:absolute;right:4px;top:0;bottom:0;max-width:78px;border:0;background:transparent;color:var(--login-muted);font-size:11px;padding:8px;cursor:pointer}.login button{font-family:var(--font-body)}.login__submit{width:100%;min-height:46px;padding:12px 18px;border:1px solid var(--login-primary);border-radius:12px;background:var(--login-primary);color:#fff;font-weight:600;cursor:pointer}.login__submit:hover:not(:disabled){filter:brightness(1.12)}.login button:disabled{opacity:.65;cursor:wait}.login :is(button,input):focus-visible{outline:3px solid var(--login-primary);outline-offset:3px}.login__back{display:block;margin:16px auto 0;min-height:44px;padding:8px 14px;border:0;border-radius:10px;background:transparent;color:var(--login-primary);cursor:pointer}.login__invitation,.login__security{text-align:center;font-size:11px!important;margin-top:22px}.login .login__error{color:#b42332}.login__enrollment{margin:20px 0;text-align:center;font-size:12px}.login__enrollment img{width:200px;max-width:100%;background:#fff;border-radius:12px}.login__enrollment code{display:block;padding:12px;word-break:break-all;-webkit-user-select:all;user-select:all;background:var(--login-bg);border-radius:12px}.login__footer{flex-wrap:wrap;border-top:1px solid var(--login-border);border-bottom:0;font-size:10px;color:var(--login-muted);line-height:1.7}@media(min-width:800px){.login__main{grid-template-columns:.9fr 1.1fr;align-items:center;gap:65px;padding-block:64px}.login__card{padding:34px}}@media(max-width:799px){.login__main{gap:28px}.login__intro{max-width:none}.login__features,.login blockquote{display:none}}.login{background:var(--color-background)}.login__header{width:min(100%,1280px);margin:0 auto;padding:20px 24px;border:0}.login__brand{color:var(--color-primary);font-size:22px}.login__brand>.finara-brand-symbol{display:grid;width:32px;height:32px;place-items:center;padding:0;border-radius:8px;background:var(--color-primary);color:var(--color-on-primary, #fff);font-size:16px}.login__main{width:100%;max-width:none;flex:1;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;margin:0;padding:36px 16px;background:radial-gradient(ellipse at 50% 35%,#8fa38218,transparent 68%)}.login__card{width:min(100%,440px);padding:32px clamp(22px,5vw,40px);border-radius:8px;box-shadow:0 12px 38px #28201612}.login__emblem{display:grid;width:38px;height:38px;place-items:center;margin:0 auto 14px;border-radius:50%;background:var(--color-surface-secondary);color:var(--color-primary);font-size:17px}.login__card h2{margin:0;text-align:center;font-size:28px}.login__subtitle{margin:10px 0 0;text-align:center}.login form{gap:16px;margin-top:26px}.login label{gap:7px;color:var(--color-text)}.login input{min-height:44px;border-radius:6px;border-color:var(--color-border);background:var(--color-surface-secondary)}.login__password button{color:var(--color-text-secondary)}.login__submit{min-height:46px;border-radius:6px;border-color:var(--color-primary);background:var(--color-primary)}.login__mode-switch{margin:18px 0 0;text-align:center;font-size:12px;color:var(--color-text-secondary)}.login__mode-switch button{border:0;min-height:44px;padding:8px 4px;background:transparent;color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.login__hint{color:var(--color-text-secondary);font-size:11px;font-weight:400}.login__confirmation{margin-top:18px}.login__confirmation>p{margin:0 0 22px;text-align:center;color:var(--color-text-secondary);font-size:13px;line-height:1.7}.login__footer{width:100%;justify-content:center;border-top:1px solid var(--color-border);padding:15px 24px;color:var(--color-text-secondary)}@media(max-width:480px){.login__header{padding:16px}.login__card{padding:28px 20px}.login__footer{justify-content:center;text-align:center}}.password-card h1{margin:0;color:var(--color-text);font:500 32px/1.2 var(--font-heading);letter-spacing:-.02em;text-wrap:balance}.password-card .login__subtitle{margin:16px 0 24px;text-align:left;font-size:14px;line-height:1.65}.password-action{display:flex;justify-content:center;align-items:center;text-align:center;text-decoration:none;margin-top:24px}.password-forgot,.password-back{display:inline-flex;align-items:center;min-height:44px;color:var(--color-primary);font-size:13px;text-underline-offset:3px}.password-forgot{justify-self:end}.password-back{margin-top:16px}.password-card .login__error{font-size:14px;line-height:1.6}.login__brand{text-decoration:none}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:root,:host{--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--radius-xs:.125rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-background:var(--theme-background,#fcf9f2);--color-primary:var(--theme-primary,#1b4332);--color-border:var(--theme-border,#e2ddd5)}}@layer base{:where([data-slot=button],[data-slot=input],[data-slot=textarea],[data-slot=native-select],[data-slot=badge],[data-slot=dialog-content]){border-style:solid}:where([data-slot=button]){font-family:var(--font-body);background:0 0;border-width:0}:where([data-slot=dialog-title],[data-slot=dialog-description]){margin:0}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.top-\[50\%\]{top:50%}.right-3\.5{right:calc(var(--spacing) * 3.5)}.right-4{right:calc(var(--spacing) * 4)}.left-\[50\%\]{left:50%}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.field-sizing-content{field-sizing:content}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.min-h-16{min-height:calc(var(--spacing) * 16)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.appearance-none{appearance:none}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:.75rem}.rounded-md{border-radius:.5rem}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-border{border-color:var(--theme-border,#e2ddd5)}.border-input{border-color:var(--color-border,#e2ddd5)}.border-transparent{border-color:#0000}.bg-\[Canvas\]{background-color:canvas}.bg-background{background-color:var(--theme-background,#fcf9f2)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-destructive{background-color:var(--color-negative,#b42332)}.bg-primary{background-color:var(--theme-primary,#1b4332)}.bg-secondary{background-color:var(--color-surface-secondary,#f5f2eb)}.bg-transparent{background-color:#0000}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.pr-9{padding-right:calc(var(--spacing) * 9)}.text-center{text-align:center}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-\[CanvasText\]{color:canvastext}.text-foreground{color:var(--color-text,#153325)}.text-muted-foreground{color:var(--color-text-muted,#565c54)}.text-primary{color:var(--theme-primary,#1b4332)}.text-primary-foreground{color:var(--color-on-primary,#fff)}.text-secondary{color:var(--color-surface-secondary,#f5f2eb)}.text-secondary-foreground{color:var(--color-text,#153325)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-offset-background{--tw-ring-offset-color:var(--theme-background,#fcf9f2)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-out{--tw-exit-scale:0}.selection\:bg-primary ::selection{background-color:var(--theme-primary,#1b4332)}.selection\:bg-primary::selection{background-color:var(--theme-primary,#1b4332)}.selection\:text-primary-foreground ::selection{color:var(--color-on-primary,#fff)}.selection\:text-primary-foreground::selection{color:var(--color-on-primary,#fff)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--color-text,#153325)}.placeholder\:text-muted-foreground::placeholder{color:var(--color-text-muted,#565c54)}@media(hover:hover){.hover\:bg-accent:hover{background-color:var(--color-hover,#e3ebe5)}.hover\:bg-destructive\/90:hover{background-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--color-negative,#b42332) 90%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--theme-primary,#1b4332)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--theme-primary,#1b4332) 90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--color-surface-secondary,#f5f2eb)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--color-surface-secondary,#f5f2eb) 80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--color-text,#153325)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--color-focus,#153325)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:border-ring:focus-visible{border-color:var(--color-focus,#153325)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-negative,#b42332) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--color-focus,#153325)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-focus,#153325) 50%, transparent)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled,.has-\[select\:disabled\]\:opacity-50:has(:is(select:disabled)){opacity:.5}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--color-negative,#b42332)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--color-negative,#b42332) 20%, transparent)}}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}.data-\[size\=sm\]\:py-1[data-size=sm]{padding-block:var(--spacing)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--color-hover,#e3ebe5)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--color-text-muted,#565c54)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}@media(min-width:40rem){.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}}@media(min-width:48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\:border-input:where([data-theme=dark],[data-theme=dark] *){border-color:var(--color-border,#e2ddd5)}@media(prefers-color-scheme:dark){.dark\:border-input:where([data-theme=system],[data-theme=system] *){border-color:var(--color-border,#e2ddd5)}}.dark\:bg-destructive\/60:where([data-theme=dark],[data-theme=dark] *){background-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:where([data-theme=dark],[data-theme=dark] *){background-color:color-mix(in oklab,var(--color-negative,#b42332) 60%,transparent)}}@media(prefers-color-scheme:dark){.dark\:bg-destructive\/60:where([data-theme=system],[data-theme=system] *){background-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:where([data-theme=system],[data-theme=system] *){background-color:color-mix(in oklab,var(--color-negative,#b42332) 60%,transparent)}}}.dark\:bg-input\/30:where([data-theme=dark],[data-theme=dark] *){background-color:var(--color-border,#e2ddd5)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:where([data-theme=dark],[data-theme=dark] *){background-color:color-mix(in oklab,var(--color-border,#e2ddd5) 30%,transparent)}}@media(prefers-color-scheme:dark){.dark\:bg-input\/30:where([data-theme=system],[data-theme=system] *){background-color:var(--color-border,#e2ddd5)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:where([data-theme=system],[data-theme=system] *){background-color:color-mix(in oklab,var(--color-border,#e2ddd5) 30%,transparent)}}}@media(hover:hover){.dark\:hover\:bg-accent\/50:where([data-theme=dark],[data-theme=dark] *):hover{background-color:var(--color-hover,#e3ebe5)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:where([data-theme=dark],[data-theme=dark] *):hover{background-color:color-mix(in oklab,var(--color-hover,#e3ebe5) 50%,transparent)}}}@media(prefers-color-scheme:dark){@media(hover:hover){.dark\:hover\:bg-accent\/50:where([data-theme=system],[data-theme=system] *):hover{background-color:var(--color-hover,#e3ebe5)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:where([data-theme=system],[data-theme=system] *):hover{background-color:color-mix(in oklab,var(--color-hover,#e3ebe5) 50%,transparent)}}}}@media(hover:hover){.dark\:hover\:bg-input\/50:where([data-theme=dark],[data-theme=dark] *):hover{background-color:var(--color-border,#e2ddd5)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:where([data-theme=dark],[data-theme=dark] *):hover{background-color:color-mix(in oklab,var(--color-border,#e2ddd5) 50%,transparent)}}}@media(prefers-color-scheme:dark){@media(hover:hover){.dark\:hover\:bg-input\/50:where([data-theme=system],[data-theme=system] *):hover{background-color:var(--color-border,#e2ddd5)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:where([data-theme=system],[data-theme=system] *):hover{background-color:color-mix(in oklab,var(--color-border,#e2ddd5) 50%,transparent)}}}}.dark\:focus-visible\:ring-destructive\/40:where([data-theme=dark],[data-theme=dark] *):focus-visible{--tw-ring-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:where([data-theme=dark],[data-theme=dark] *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-negative,#b42332) 40%, transparent)}}@media(prefers-color-scheme:dark){.dark\:focus-visible\:ring-destructive\/40:where([data-theme=system],[data-theme=system] *):focus-visible{--tw-ring-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:where([data-theme=system],[data-theme=system] *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-negative,#b42332) 40%, transparent)}}}.dark\:aria-invalid\:ring-destructive\/40:where([data-theme=dark],[data-theme=dark] *)[aria-invalid=true]{--tw-ring-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:where([data-theme=dark],[data-theme=dark] *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--color-negative,#b42332) 40%, transparent)}}@media(prefers-color-scheme:dark){.dark\:aria-invalid\:ring-destructive\/40:where([data-theme=system],[data-theme=system] *)[aria-invalid=true]{--tw-ring-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:where([data-theme=system],[data-theme=system] *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--color-negative,#b42332) 40%, transparent)}}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}@media(hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--color-hover,#e3ebe5)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--color-negative,#b42332)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--color-negative,#b42332) 90%,transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--theme-primary,#1b4332)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--theme-primary,#1b4332) 90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--color-surface-secondary,#f5f2eb)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--color-surface-secondary,#f5f2eb) 90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--color-text,#153325)}a.\[a\&\]\:hover\:underline:hover{text-decoration-line:underline}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media(prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}[data-slot=button][data-variant=default]{color:var(--color-on-primary,#fff)}[data-slot=button][data-variant=outline]{border-color:var(--color-border,#e2ddd5);color:var(--color-text,#153325)}[data-slot=button][data-variant=destructive]{color:#fff}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}:root{--font-heading: "Newsreader", Georgia, "Times New Roman", serif;--font-body: "Plus Jakarta Sans", Arial, sans-serif;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--palette-ink, #153325);background:#fcf9f2;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;font-weight:400;font-size:14px}*{box-sizing:border-box}body{min-width:0;min-height:100vh;margin:0}.app-startup{display:grid;min-height:100vh;place-items:center;background:var(--color-background, #fcf9f2)}.app-startup span{width:2rem;height:2rem;border:3px solid color-mix(in srgb,var(--color-primary, var(--palette-brand, #1b4332)) 18%,transparent);border-top-color:var(--color-primary, var(--palette-brand, #1b4332));border-radius:50%;animation:app-startup-spin .8s linear infinite}@keyframes app-startup-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.app-startup span{animation-duration:2s}}button,select{color:inherit;font:inherit}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #9bd8b0;outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.finara-brand-name{font:500 28px/1.2 var(--font-heading);letter-spacing:-.02em}.finara-brand-symbol{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px}.session-actions{margin-top:8px}.session-actions p{margin:8px 0 0;padding:0 10px;color:inherit;font-size:12px;line-height:1.5}.sidebar .session-logout{min-height:44px;color:inherit}.session-logout:disabled{cursor:wait;opacity:.65}.app-shell{min-height:100vh}.sidebar{position:fixed;z-index:9;inset:0 auto 0 0;display:flex;flex-direction:column;width:min(270px,84vw);padding:25px 17px 16px;overflow-y:auto;background:#fff;border-right:1px solid #ecefeb;box-shadow:12px 0 35px #1e30251a;transform:translate(-102%);transition:transform .2s ease}.sidebar-open{transform:translate(0)}.sidebar-backdrop{position:fixed;z-index:8;inset:0;width:100%;height:100%;border:0;background:#15231a52}.brand{display:flex;align-items:center;gap:10px;margin:0 0 35px 7px;color:#1e3328;text-decoration:none;font-size:24px;font-weight:750;letter-spacing:-1.6px}.brand-symbol{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:10px;color:var(--color-on-primary, #fff);background:var(--color-primary, #1b4332)}.finara-brand-symbol>svg{display:block;width:26px;height:26px}.sidebar .finara-brand-symbol{color:var(--color-primary, #1b4332);background:var(--color-on-primary, #fff)}.brand-period{color:#29945f}.workspace-label,.nav-section-label{padding:0 9px;color:#9aa39d;font-size:9px;font-weight:750;letter-spacing:.1em}.workspace-label{margin-bottom:10px}.workspace-switch{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 9px;border:1px solid #edf0ec;border-radius:11px;background:#fff}.workspace-avatar{display:grid;flex:0 0 33px;width:33px;height:33px;place-items:center;border-radius:10px;background:#e9f4ed;color:#328151;font-size:14px;font-weight:700}.workspace-copy,.profile-copy{display:grid;flex:1;gap:3px;min-width:0}.workspace-copy strong{overflow:hidden;color:#303a34;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.workspace-copy small,.profile-copy small{color:#969f99;font-size:10px}.workspace-switch>svg{flex:0 0 auto;color:#89948d}.side-navigation{display:flex;flex-direction:column;gap:4px;margin-top:30px}.nav-section-label{margin:0 0 7px}.nav-section-spaced{margin-top:25px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;min-height:40px;padding:0 11px;border:0;border-radius:9px;color:#727d75;background:transparent;text-align:left;cursor:pointer;transition:background .16s ease,color .16s ease}.nav-item:hover{background:#f7f9f7;color:#2c4536}.nav-item-active,.nav-item-active:hover{color:#237b4d;background:#eaf5ed;font-weight:650}.nav-item-active svg{stroke-width:2}.nav-item>span:nth-child(2){flex:1}.nav-count{display:grid;min-width:20px;height:20px;padding:0 5px;place-items:center;border-radius:7px;color:#538365;background:#edf5ef;font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:22px}.help-card{display:flex;flex-direction:column;align-items:flex-start;padding:14px 13px;border-radius:11px;background:#f7f8f6}.help-spark{margin-bottom:9px;color:#2e925a;font-size:18px}.help-card strong{color:#38433c;font-size:11px;font-weight:650}.help-card>span:nth-of-type(2){margin-top:4px;color:#8c958f;font-size:10px}.help-card button{margin-top:11px;padding:0;border:0;color:#398359;background:transparent;font-size:10px;font-weight:650;text-align:left;cursor:pointer}.help-card button span{margin-left:4px}.profile-button{display:flex;align-items:center;gap:10px;width:100%;min-width:0;margin-top:13px;padding:12px 3px 0;border:0;border-top:1px solid #eff1ee;background:transparent;text-align:left;cursor:pointer}.profile-avatar{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:#bd896e;overflow:hidden;white-space:nowrap;line-height:1;font-size:10px;font-weight:700}.profile-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#414a44;font-size:11px;font-weight:650}.profile-button>svg{flex:0 0 auto;color:#909a93}.main-content{min-width:0;min-height:100vh}.topbar{position:sticky;z-index:3;top:0;display:flex;align-items:center;gap:8px;min-height:60px;padding:0 10px;border-bottom:1px solid #ecefeb;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-menu{display:grid;flex:0 0 31px;width:31px;height:31px;place-items:center;border:0;border-radius:8px;color:#59665d;background:transparent;cursor:pointer}.breadcrumb{display:flex;flex:1;align-items:center;gap:6px;min-width:0;overflow:hidden;color:#929b94;font-size:10px;white-space:nowrap}.breadcrumb>span:first-child{overflow:hidden;text-overflow:ellipsis}.breadcrumb-slash{flex:0 0 auto;color:#c2c9c3}.breadcrumb strong{overflow:hidden;color:#3c463f;font-weight:600;text-overflow:ellipsis}.topbar-actions{display:flex;flex:0 0 auto;align-items:center;gap:5px}.country-context{max-width:110px;overflow:hidden;padding:6px 9px;border:1px solid #e8ece8;border-radius:999px;color:#465148;background:#fff;font-size:10px;font-weight:600;line-height:1;text-overflow:ellipsis;white-space:nowrap}.demo-badge{display:none;align-items:center;gap:7px;margin-right:4px;padding:7px 10px;border:1px solid #f1e8cb;border-radius:20px;color:#8d7440;background:#fffbef;font-size:10px;font-weight:600;white-space:nowrap}.demo-badge i{width:6px;height:6px;border-radius:50%;background:#d7aa46}.year-select,.language-select{display:flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 7px;border:1px solid #e8ece8;border-radius:8px;color:#465148;background:#fff;cursor:pointer}.year-select select,.language-select select{width:100%;max-width:100%;min-width:0;padding:0;border:0;outline:0;color:inherit;background:transparent;font:inherit;cursor:pointer}.year-select{position:relative;width:auto;flex:0 0 auto;min-width:80px}.year-select select{position:absolute;inset:0;width:100%;height:100%;opacity:0}.year-short{color:inherit;white-space:nowrap;font-size:11px;font-variant-numeric:tabular-nums}.year-select>svg,.language-select>svg{display:none;flex:0 0 auto;color:#89948d}.year-icon,.period-calendar{display:grid;flex:0 0 auto;place-items:center;color:#4d8b64}.language-select{width:63px;flex:0 0 63px;padding:0 5px}.language-select select{appearance:none;font-size:10px}.add-button{display:inline-flex;flex:0 0 36px;align-items:center;justify-content:center;gap:7px;width:36px;min-height:36px;padding:0;border:0;border-radius:8px;color:#fff;background:#287c50;font-size:11px;font-weight:600;cursor:pointer;transition:background .15s ease}.add-button:hover{background:#1f6842}.add-button span{display:none}.dashboard{width:min(100%,1500px);min-width:0;margin:0 auto;padding:22px 10px 17px}.welcome-row{display:flex;align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:17px}.welcome-copy{min-width:0}.date-label{display:flex;align-items:center;gap:7px;margin-bottom:9px;color:#89948d;font-size:9px;font-weight:700;letter-spacing:.08em}.date-sun{flex:0 0 auto;color:#deab55;font-size:13px}.welcome-row h1{margin:0;color:#23352a;font-size:clamp(21px,6vw,27px);font-weight:650;letter-spacing:-.8px;line-height:1.25;overflow-wrap:anywhere}.wave{display:inline-block;margin-left:3px;color:#dbac5a;font-size:19px}.welcome-subtitle{margin:7px 0 0;color:#8c968f;font-size:12px;line-height:1.5}.period-display{display:flex;align-items:center;gap:8px;min-height:35px;max-width:100%;padding:0 10px;border:1px solid #e8ece8;border-radius:8px;color:#465148;background:#fff;font-size:10px}.period-display>span:nth-child(2){overflow-wrap:anywhere}.period-display>svg{flex:0 0 auto;margin-left:2px;color:#89948d}.kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.kpi-card,.panel{min-width:0;border:1px solid #ecefeb;border-radius:11px;background:#fff;box-shadow:0 2px 5px #1e302505}.kpi-card{padding:12px 9px}.kpi-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:5px;color:#7d8880;font-size:9px;font-weight:550;line-height:1.35}.kpi-heading>span:first-child{min-width:0;overflow-wrap:anywhere}.kpi-icon{display:grid;flex:0 0 25px;width:25px;height:25px;place-items:center;border-radius:8px}.kpi-icon-green{color:#36935b;background:#ebf6ee}.kpi-icon-peach{color:#bf7659;background:#fbf0ea}.kpi-icon-lilac{color:#7c6cb2;background:#f2effa}.kpi-icon-blue{color:#59829f;background:#edf4f8}.kpi-value{display:block;margin-top:9px;color:#27362d;font-size:clamp(14px,4.5vw,21px);font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.55px;line-height:1.35;overflow-wrap:anywhere}.kpi-foot{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:7px;color:#9aa29d;font-size:8px;line-height:1.4}.change-positive{display:inline-flex;flex:0 0 auto;align-items:center;gap:2px;color:#38905a;font-weight:650}.change-neutral{flex:0 0 auto;color:#53866b;font-weight:650}.due-indicator{display:inline-flex;align-items:center;gap:5px;color:#b3833a;font-weight:650}.due-indicator i{flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:#d9aa51}.content-grid,.bottom-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:11px}.bottom-grid{margin-top:11px}.panel{padding:15px 12px 13px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.panel-heading>div{min-width:0}.panel-heading h2,.tip-panel h2{margin:0;color:#36443a;font-size:13px;font-weight:650;letter-spacing:-.15px;overflow-wrap:anywhere}.panel-heading p{margin:5px 0 0;color:#9aa29c;font-size:10px;line-height:1.45}.icon-button{display:grid;flex:0 0 28px;width:28px;height:28px;margin:-4px -6px 0 0;place-items:center;border:0;border-radius:7px;color:#909991;background:transparent;cursor:pointer}.icon-button:hover{background:#f5f7f5}.chart-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:18px;color:#79847c;font-size:8px}.chart-legend>span:not(.chart-unit){display:inline-flex;align-items:center;gap:6px}.legend-dot{flex:0 0 7px;width:7px;height:7px;border-radius:3px}.legend-income{background:#439668}.legend-expenses{background:#d5e9db}.chart-unit{margin-left:auto;color:#a0a8a2;font-size:8px;text-align:right}.chart-scroll{width:100%;margin-top:8px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.bar-chart{display:block;width:100%;min-width:430px;height:202px;overflow:visible}.chart-grid{stroke:#eff2ef;stroke-width:1}.chart-axis-label{fill:#a0a8a2;font-family:inherit;font-size:9px}.bar-income{fill:#46996a}.bar-expenses{fill:#d4e8d9}.chart-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:7px;padding-top:11px;border-top:1px solid #f0f2ef;color:#8c968f;font-size:8px;line-height:1.4}.chart-summary>span{display:flex;align-items:flex-start;gap:7px;min-width:0}.summary-line{flex:0 0 14px;width:14px;height:2px;margin-top:4px;border-radius:2px;background:#5ca377}.chart-summary strong{display:inline-flex;flex:0 0 auto;align-items:center;gap:2px;color:#388c58;font-size:10px;font-weight:650;white-space:nowrap}.obligations-panel{display:flex;flex-direction:column}.text-link{flex:0 0 auto;padding:2px 0;border:0;color:#398357;background:transparent;font-size:9px;font-weight:600;text-align:right;cursor:pointer}.text-link:hover{color:#205e39}.text-link span{margin-left:2px}.obligation-list{margin-top:12px}.obligation{display:flex;align-items:center;gap:8px;min-height:61px;border-bottom:1px solid #f0f2ef}.obligation:last-child{border-bottom:0}.obligation-icon{display:grid;flex:0 0 32px;width:32px;height:32px;place-items:center;border-radius:9px}.obligation-peach{color:#bb795c;background:#fbf0e9}.obligation-lavender{color:#7d70a8;background:#f2eff9}.obligation-mint{color:#528664;background:#edf5ee}.obligation-copy{display:grid;flex:1;gap:5px;min-width:0}.obligation-copy strong{overflow:hidden;color:#48534b;font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.obligation-copy small{color:#9ca49e;font-size:9px;line-height:1.4}.obligation-amount{flex:0 0 auto;color:#4a554d;font-size:10px;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.all-obligations{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:auto;padding:12px 0 0;border:0;border-top:1px solid #f0f2ef;color:#44855b;background:transparent;font-size:9px;font-weight:600;text-align:left;cursor:pointer}.activity-table{display:flex;flex-direction:column;gap:8px;margin-top:13px}.activity-header{display:none}.activity-row:not(.activity-header){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"concept amount" "date status";align-items:center;gap:8px 10px;min-width:0;padding:10px;border:1px solid #eff1ee;border-radius:9px;color:#858f88;font-size:9px}.activity-concept{grid-area:concept;display:flex;flex-wrap:wrap;align-items:center;gap:5px 7px;min-width:0;color:#566159;font-size:9px;font-weight:550;overflow-wrap:anywhere}.activity-concept:before,.activity-date:before,.activity-status:before,.activity-amount:before{display:block;color:#a2aaa4;font-size:7px;font-weight:650;letter-spacing:.06em;line-height:1.4}.activity-concept:before{flex:0 0 100%;content:attr(data-label)}.activity-date{grid-area:date;min-width:0;color:#858f88;font-size:8px}.activity-date:before{margin-bottom:3px;content:attr(data-label)}.activity-status{grid-area:status;color:#858f88;font-size:8px;text-align:right}.activity-status:before{margin-bottom:3px;content:attr(data-label)}.activity-amount{grid-area:amount;display:flex;flex-direction:column;align-items:flex-end;min-width:0;color:#69746c;font-size:9px;font-variant-numeric:tabular-nums;font-weight:600;text-align:right;overflow-wrap:anywhere}.activity-amount:before{margin-bottom:3px;content:attr(data-label)}.activity-dot{flex:0 0 7px;width:7px;height:7px;border-radius:3px}.dot-green{background:#60a77a}.dot-orange{background:#d4a16c}.dot-purple{background:#9c8bc6}.status-pill{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%}.status-paid{background:#55a16e}.status-pending{background:#daa947}.amount-in{color:#42845a}.amount-out{color:#69746c}.tip-panel{position:relative;display:flex;flex-direction:column;min-height:165px;overflow:hidden;background:#f2f7f1}.tip-top{display:flex;align-items:center;gap:8px}.tip-icon{display:grid;width:28px;height:28px;place-items:center;border-radius:9px;color:#3a8e58;background:#e2f0e2}.tip-label{color:#879b87;font-size:8px;font-weight:700;letter-spacing:.1em}.tip-panel h2{margin-top:13px}.tip-panel p{max-width:290px;margin:7px 0 0;color:#7e8c80;font-size:10px;line-height:1.6}.tip-decoration{position:absolute;right:16px;bottom:14px;display:flex;align-items:flex-end;gap:4px;height:35px;opacity:.55}.tip-decoration span{width:6px;border-radius:3px 3px 0 0;background:#b9d9bb}.tip-decoration span:nth-child(1){height:12px}.tip-decoration span:nth-child(2){height:18px}.tip-decoration span:nth-child(3){height:15px}.tip-decoration span:nth-child(4){height:24px}.tip-decoration span:nth-child(5){height:20px}.tip-decoration span:nth-child(6){height:28px}.tip-decoration span:nth-child(7){height:34px;background:#82bb8d}.dashboard-footer{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;margin-top:16px;color:#a1a9a3;font-size:8px;line-height:1.5}.dashboard-footer i{margin-left:3px;color:#86a58b;font-style:normal}.placeholder-panel{position:relative;display:flex;flex-direction:column;align-items:flex-start;max-width:580px;margin:42px auto;padding:26px 22px;border:1px solid #ecefeb;border-radius:14px;background:#fff}.placeholder-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;color:#398456;background:#eaf5ed}.placeholder-label{margin-top:25px;color:#87948a;font-size:9px;font-weight:700;letter-spacing:.11em}.placeholder-panel h1{margin:9px 0;color:#283b2e;font-size:clamp(21px,6vw,27px);font-weight:650;overflow-wrap:anywhere}.placeholder-panel p{max-width:380px;margin:0 0 21px;color:#89948c;font-size:12px;line-height:1.7}.placeholder-panel .add-button{flex:0 1 auto;width:auto;padding:0 12px}.placeholder-panel .add-button span{display:inline}.placeholder-demo{position:absolute;top:17px;right:14px;max-width:45%;padding:7px 9px;border-radius:16px;color:#8d7440;background:#fffbef;font-size:9px;text-align:center}.settings-page{display:grid;gap:14px;min-width:0}.settings-heading{min-width:0;margin-bottom:2px}.settings-eyebrow{margin:0 0 7px;color:#87948a;font-size:9px;font-weight:700;letter-spacing:.11em}.settings-heading h1{margin:0;color:#23352a;font-size:clamp(22px,5vw,28px);font-weight:650;letter-spacing:-.7px;overflow-wrap:anywhere}.settings-heading>p:last-child{max-width:650px;margin:8px 0 0;color:#8c968f;font-size:12px;line-height:1.6}.settings-form{display:grid;gap:12px;min-width:0}.settings-card{min-width:0;padding:16px 13px;border:1px solid #ecefeb;border-radius:12px;background:#fff;box-shadow:0 4px 16px #20312608}.settings-card-heading{min-width:0;margin-bottom:14px}.settings-card-heading h2{margin:0;color:#35453a;font-size:14px;font-weight:650;overflow-wrap:anywhere}.settings-card-heading p{margin:5px 0 0;color:#89948c;font-size:11px;line-height:1.55;overflow-wrap:anywhere}.settings-security-enrollment{display:grid;justify-items:start;gap:10px;min-width:0}.settings-security-enrollment img{display:block;width:min(220px,100%);aspect-ratio:1;background:#fff}.settings-security-enrollment p,.settings-security-enrollment code{max-width:100%;margin:0;overflow-wrap:anywhere}.settings-security-enrollment form{width:min(100%,320px)}.settings-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}.settings-fields label,.settings-single-field,.settings-rate-form label,.settings-convert-form label{display:grid;align-content:start;gap:6px;min-width:0;color:#59665d;font-size:10px;font-weight:600}.settings-fields input,.settings-fields select,.settings-fields textarea,.settings-single-field select,.settings-rate-form input,.settings-convert-form input,.settings-convert-form select{width:100%;min-width:0;min-height:38px;padding:9px 10px;border:1px solid #e5eae5;border-radius:8px;color:#354139;background:#fff;font:inherit;font-size:12px}.settings-fields textarea{min-height:100px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.settings-fields input:focus,.settings-fields select:focus,.settings-fields textarea:focus,.settings-single-field select:focus,.settings-rate-form input:focus,.settings-convert-form input:focus,.settings-convert-form select:focus{outline:2px solid #9bd8b0;outline-offset:1px}.settings-single-field{max-width:360px}.settings-wide-field{grid-column:1 / -1}.settings-actions{display:flex;justify-content:flex-end;margin-top:14px}.settings-primary-button,.settings-secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;max-width:100%;padding:8px 12px;border:1px solid #e3e9e3;border-radius:8px;color:#36774d;background:#f8fbf8;font:inherit;font-size:11px;font-weight:650;line-height:1.35;text-align:center;cursor:pointer;overflow-wrap:anywhere}.settings-primary-button{border-color:#287c50;color:#fff;background:#287c50}.settings-primary-button:hover{background:#1f6842}.settings-primary-button:disabled{opacity:.65;cursor:wait}.settings-success{border:1px solid #d7eadc;color:#36774d;background:#f0f8f1}.settings-rate-caption{margin:-5px 0 12px;color:#89948c;font-size:10px;line-height:1.5;overflow-wrap:anywhere}.settings-rate-controls{display:grid;gap:9px;min-width:0}.settings-rate-form{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0}.settings-convert-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(72px,.7fr);align-items:end;gap:9px;min-width:0;margin-top:14px;padding-top:14px;border-top:1px solid #eef1ed}.settings-hub{gap:20px}.settings-hub .settings-heading>p:last-child{margin-top:6px}.settings-hub-layout{display:grid;grid-template-columns:minmax(210px,248px) minmax(0,1fr);align-items:start;gap:20px}.settings-hub-nav,.settings-hub-content{min-width:0;border:1px solid #e8e1d6;border-radius:14px;background:#fffefa}.settings-hub-nav{display:grid;gap:3px;padding:8px}.settings-hub-nav button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;min-height:40px;padding:8px 10px;border:0;border-radius:8px;color:#52645a;background:transparent;font:inherit;font-size:12px;text-align:left;cursor:pointer}.settings-hub-nav button:hover{background:#f5f2ea}.settings-hub-nav button.is-active{color:#173c2c;background:#eaf0e8;font-weight:650}.settings-hub-nav button span:first-child{flex:0 0 auto}.settings-nav-icon{display:grid;flex:0 0 30px!important;width:30px;height:30px;place-items:center;border-radius:8px;color:#647e69;background:#f1f1e9}.settings-nav-icon svg{width:17px;height:17px}.settings-hub-nav button.is-active .settings-nav-icon{color:#1c563a;background:#dce8dc}.settings-hub-nav button .settings-nav-label{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.settings-hub-content{min-height:330px;padding:24px}.settings-hub-panel-heading{padding-bottom:18px;border-bottom:1px solid #ece7df}.settings-hub-panel-heading h2{margin:0;color:#193829;font:400 24px/1.2 var(--font-heading)}.settings-hub-panel-heading p{max-width:62ch;margin:7px 0 0;color:#69776d;font-size:12px;line-height:1.6}.settings-hub-preferences,.settings-hub-stack,.settings-hub-empty{display:grid;justify-items:start;gap:16px;max-width:560px;padding-top:22px}.settings-hub-preferences>label,.settings-hub-mfa>label{display:grid;gap:7px;width:min(100%,380px);color:#43574a;font-size:12px;font-weight:600}.settings-hub-preferences select,.settings-hub-mfa input{min-width:0;max-width:100%;min-height:44px;padding:9px 12px;border:1px solid #dedbd2;border-radius:8px;color:#20382c;background:#fff;font:inherit;font-weight:400}.settings-hub-row{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:0 0 16px;border-bottom:1px solid #ece7df}.settings-hub-row h3{margin:0;color:#263f32;font-size:13px;font-weight:650}.settings-hub-row p,.settings-hub-empty p,.settings-hub-danger p{margin:5px 0 0;color:#69776d;font-size:12px;line-height:1.6}.settings-hub-mfa{display:grid;gap:12px;width:min(100%,380px)}.settings-hub-mfa img{width:180px;aspect-ratio:1}.settings-hub-mfa p{margin:0;color:#69776d;font-size:12px}.settings-hub-mfa code{overflow-wrap:anywhere}.settings-hub-empty{min-height:180px;align-content:center}.settings-faq-list{width:min(100%,720px);padding-top:8px}.settings-faq-item{border-bottom:1px solid #e8e1d6}.settings-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:12px 4px;color:#263f32;font-size:13px;font-weight:600;line-height:1.5;cursor:pointer;list-style:none}.settings-faq-item summary::-webkit-details-marker{display:none}.settings-faq-item summary:after{width:8px;height:8px;flex:0 0 8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;content:"";transform:rotate(45deg) translateY(-2px);transition:transform .18s ease-out}.settings-faq-item[open] summary:after{transform:rotate(225deg) translate(-2px,-1px)}.settings-faq-item summary:hover{color:#1b6842}.settings-faq-item summary:focus-visible{border-radius:4px;outline:2px solid #287c50;outline-offset:2px}.settings-faq-item p{max-width:68ch;margin:0;padding:0 30px 16px 4px;color:#59665d;font-size:13px;line-height:1.7}@media(prefers-reduced-motion:reduce){.settings-faq-item summary:after{transition:none}}.settings-hub-empty button:disabled,.settings-hub-danger button:disabled{opacity:.55;cursor:not-allowed}.settings-hub-disabled-toggle{display:flex;align-items:center;gap:9px;color:#69776d;font-size:12px}.settings-hub-danger{display:grid;justify-items:start;gap:16px;max-width:520px;padding-top:22px}.settings-hub-danger button{min-height:40px;padding:8px 13px;border:1px solid #d9a99d;border-radius:8px;color:#8c4030;background:#fff8f5;font:inherit;font-size:12px}.settings-hub-danger label{display:grid;gap:7px;width:min(100%,380px);color:#43574a;font-size:12px;font-weight:600}.settings-hub-danger input{width:100%;min-width:0;min-height:44px;padding:9px 12px;border:1px solid #dedbd2;border-radius:8px;color:#20382c;background:#fff;font:inherit;font-weight:400}.settings-hub-danger input:focus-visible{outline:2px solid #9bd8b0;outline-offset:2px}.settings-hub-danger .settings-delete-account-button{min-height:44px;border-color:#a83d32;color:#fff;background:#a83d32}.settings-hub-danger .settings-delete-account-button:hover:not(:disabled){background:#8f3028}.settings-hub-danger .settings-delete-account-button:disabled{opacity:.55;cursor:not-allowed}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-nav,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-content{border-color:#38443c;background:#202a23}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-nav button{color:#d1d8d1}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-nav button:hover{background:#2b382f}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-nav button.is-active{color:#e5efe6;background:#324238}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-panel-heading{border-color:#38443c}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-panel-heading h2,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-preferences>label,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-row h3{color:#e6ece5}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-panel-heading p,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-row p,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-empty p,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-faq-item p,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-danger p,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-disabled-toggle{color:#b3beb5}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-preferences select,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-mfa input{border-color:#46544a;color:#e6ece5;background:#1c241e}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-row,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-faq-item{border-color:#38443c}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-faq-item summary{color:#e6ece5}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-faq-item summary:hover{color:#a9d2b3}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-danger button{border-color:#865d54;color:#f0b9a9;background:#372a27}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-danger label{color:#d1d8d1}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-danger input{border-color:#46544a;color:#e6ece5;background:#1c241e}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-danger .settings-delete-account-button{border-color:#a64b40;color:#fff;background:#a64b40}@media(max-width:760px){.settings-hub-layout{grid-template-columns:minmax(0,1fr);gap:12px}.settings-hub-nav{display:flex;overflow-x:auto;gap:4px;padding:6px;scrollbar-width:thin}.settings-hub-nav button{flex:0 0 auto;min-height:40px;white-space:nowrap}.settings-hub-nav button span[aria-hidden=true]{display:none}.settings-hub-nav button .settings-nav-icon{flex:0 0 30px!important}.settings-hub-nav button .settings-nav-label{flex:0 0 auto}.settings-hub-content{min-height:280px;padding:18px 14px}}.settings-convert-arrow{display:none}.settings-conversion-result{min-width:0;min-height:38px;padding:10px 7px;border-radius:8px;color:#2d6845;background:#f1f8f2;font-size:12px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.settings-convert-form>button{grid-column:1 / -1}.app-shell[data-theme=dark]{color:#e4ece6;background:#111a14}.app-shell[data-theme=dark] .sidebar,.app-shell[data-theme=dark] .topbar,.app-shell[data-theme=dark] .panel,.app-shell[data-theme=dark] .settings-card,.app-shell[data-theme=dark] .books-card,.app-shell[data-theme=dark] .placeholder-panel{color:#e4ece6;background:#1a261e;border-color:#2b3a30}.app-shell[data-theme=dark] .main-content,.app-shell[data-theme=dark] .dashboard{color:#e4ece6}.app-shell[data-theme=dark] .workspace-switch,.app-shell[data-theme=dark] .year-select,.app-shell[data-theme=dark] .country-context,.app-shell[data-theme=dark] .settings-fields input,.app-shell[data-theme=dark] .settings-fields select,.app-shell[data-theme=dark] .settings-fields textarea,.app-shell[data-theme=dark] .settings-single-field select,.app-shell[data-theme=dark] .settings-rate-form input,.app-shell[data-theme=dark] .settings-convert-form input,.app-shell[data-theme=dark] .settings-convert-form select{color:#e4ece6;background:#17221a;border-color:#35473a}.app-shell[data-theme=dark] .sidebar .brand,.app-shell[data-theme=dark] .welcome-row h1,.app-shell[data-theme=dark] .settings-heading h1,.app-shell[data-theme=dark] .settings-card-heading h2,.app-shell[data-theme=dark] .panel h2,.app-shell[data-theme=dark] .placeholder-panel h1{color:#e4ece6}.app-shell[data-theme=dark] .nav-item{color:#b5c2b8}.app-shell[data-theme=dark] .nav-item-active{color:#9ce0b1;background:#253b2c}.app-shell[data-theme=dark] .settings-fields label,.app-shell[data-theme=dark] .settings-single-field,.app-shell[data-theme=dark] .settings-rate-form label,.app-shell[data-theme=dark] .settings-convert-form label{color:#c0cdc3}.app-shell[data-theme=dark] .settings-card-heading p,.app-shell[data-theme=dark] .settings-heading>p:last-child{color:#a3b0a6}.app-shell[data-theme=dark] .activity-row,.app-shell[data-theme=dark] .payroll-record-card,.app-shell[data-theme=dark] .period-obligation-card{border-color:#2b3a30}@media(prefers-color-scheme:dark){.app-shell[data-theme=system] .skeleton-block{background:linear-gradient(100deg,#303b33 28%,#414d43,#303b33 64%);background-size:220% 100%}.app-shell[data-theme=system]{color:#e4ece6;background:#111a14}.app-shell[data-theme=system] .sidebar,.app-shell[data-theme=system] .topbar,.app-shell[data-theme=system] .panel,.app-shell[data-theme=system] .settings-card,.app-shell[data-theme=system] .books-card,.app-shell[data-theme=system] .placeholder-panel{color:#e4ece6;background:#1a261e;border-color:#2b3a30}.app-shell[data-theme=system] .main-content,.app-shell[data-theme=system] .dashboard{color:#e4ece6}.app-shell[data-theme=system] .workspace-switch,.app-shell[data-theme=system] .year-select,.app-shell[data-theme=system] .country-context,.app-shell[data-theme=system] .settings-fields input,.app-shell[data-theme=system] .settings-fields select,.app-shell[data-theme=system] .settings-fields textarea,.app-shell[data-theme=system] .settings-single-field select,.app-shell[data-theme=system] .settings-rate-form input,.app-shell[data-theme=system] .settings-convert-form input,.app-shell[data-theme=system] .settings-convert-form select{color:#e4ece6;background:#17221a;border-color:#35473a}.app-shell[data-theme=system] .sidebar .brand,.app-shell[data-theme=system] .welcome-row h1,.app-shell[data-theme=system] .settings-heading h1,.app-shell[data-theme=system] .settings-card-heading h2,.app-shell[data-theme=system] .panel h2,.app-shell[data-theme=system] .placeholder-panel h1{color:#e4ece6}.app-shell[data-theme=system] .nav-item{color:#b5c2b8}.app-shell[data-theme=system] .nav-item-active{color:#9ce0b1;background:#253b2c}.app-shell[data-theme=system] .settings-fields label,.app-shell[data-theme=system] .settings-single-field,.app-shell[data-theme=system] .settings-rate-form label,.app-shell[data-theme=system] .settings-convert-form label{color:#c0cdc3}.app-shell[data-theme=system] .settings-card-heading p,.app-shell[data-theme=system] .settings-heading>p:last-child{color:#a3b0a6}.app-shell[data-theme=system] .activity-row,.app-shell[data-theme=system] .payroll-record-card,.app-shell[data-theme=system] .period-obligation-card{border-color:#2b3a30}}@media(min-width:681px){.sidebar{width:210px;padding:25px 14px 15px;transform:none;box-shadow:none}.sidebar-backdrop{display:none}.main-content{margin-left:210px}.mobile-menu{display:none}.topbar{min-height:64px;gap:14px;padding:0 18px}.breadcrumb{gap:9px;font-size:11px}.topbar-actions{gap:8px}.year-select select{position:static;width:auto;height:auto;opacity:1}.year-short{display:none}.year-select>svg,.language-select>svg{display:block}.year-select{width:auto;flex-basis:auto}.year-select select{max-width:88px;font-size:10px}.language-select{width:auto;flex-basis:auto;padding:0 7px}.language-select select{width:auto;max-width:82px;font-size:10px}.add-button{flex-basis:36px}.dashboard{padding:25px 18px 18px}.welcome-row{align-items:flex-end;flex-direction:row;gap:12px;margin-bottom:20px}.welcome-row h1{font-size:clamp(21px,3vw,27px)}.period-display{flex:0 0 auto}.kpi-grid{gap:10px;margin-bottom:14px}.kpi-card{padding:14px 12px 13px}.kpi-heading{align-items:center;font-size:9px}.kpi-icon{flex-basis:27px;width:27px;height:27px}.kpi-value{font-size:clamp(16px,2.4vw,23px);letter-spacing:-.65px}.kpi-foot{font-size:8px}.content-grid,.bottom-grid{gap:13px}.bottom-grid{margin-top:13px}.panel{padding:17px 15px 14px}.chart-legend{gap:13px;font-size:9px}.chart-unit{font-size:9px}.bar-chart{height:215px}.obligation{gap:9px}.obligation-icon{flex-basis:34px;width:34px;height:34px}.activity-row:not(.activity-header){padding:11px}.placeholder-panel{margin-top:55px;padding:34px}.settings-page{gap:16px}.settings-card{padding:18px}.settings-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.settings-rate-controls,.settings-rate-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.settings-convert-form{grid-template-columns:minmax(0,1fr) minmax(85px,.6fr) auto minmax(0,1fr) auto}.settings-convert-arrow{display:block;padding-bottom:11px;color:#87948a}.settings-convert-form>button{grid-column:auto}}@media(min-width:981px){.sidebar{width:226px;padding:26px 15px 16px}.main-content{margin-left:226px}.topbar{padding:0 25px}.topbar-actions{gap:9px}.demo-badge{display:flex}.year-select select{max-width:94px}.add-button{flex-basis:auto;width:auto;padding:0 11px}.add-button span{display:inline}.dashboard{padding:28px 25px 19px}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:16px}.kpi-card{padding:15px 12px 13px}.kpi-heading{font-size:9px}.kpi-value{font-size:clamp(16px,1.65vw,22px)}.kpi-foot{flex-wrap:nowrap;gap:4px;font-size:8px}.content-grid{grid-template-columns:minmax(0,1.55fr) minmax(285px,1fr);gap:14px}.bottom-grid{grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);gap:14px;margin-top:14px}.panel{padding:18px 17px 15px}.chart-legend{margin-top:20px}.bar-chart{height:222px}.obligations-panel{min-height:0}.activity-table{display:block;margin-top:14px}.activity-header,.activity-row:not(.activity-header){display:grid;grid-template-columns:minmax(125px,1.45fr) minmax(72px,.85fr) minmax(70px,.8fr) minmax(100px,1fr);align-items:center;gap:7px;min-height:38px;padding:0;border:0;border-top:1px solid #f1f3f0;border-radius:0}.activity-row:not(.activity-header)>*{grid-area:auto}.activity-header{min-height:27px;color:#a2aaa4;font-size:8px;font-weight:650;letter-spacing:.06em}.activity-row>:last-child{text-align:right}.activity-concept{display:flex;flex-wrap:nowrap;gap:7px;overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.activity-concept:before,.activity-date:before,.activity-status:before,.activity-amount:before{display:none}.activity-date{color:#858f88;font-size:9px;white-space:nowrap}.activity-status{color:#858f88;font-size:9px;text-align:left;white-space:nowrap}.activity-amount{display:block;font-size:9px;white-space:nowrap}.tip-panel{min-height:165px}.dashboard-footer{flex-wrap:nowrap;gap:8px}.settings-card{padding:20px}}@media(min-width:1201px){.sidebar{width:250px;padding:27px 17px 16px}.main-content{margin-left:250px}.topbar{padding:0 40px}.dashboard{padding:31px 40px 20px}.kpi-grid{gap:14px}.kpi-card{padding:16px 17px 14px}.kpi-heading{font-size:10px}.kpi-value{font-size:clamp(19px,1.8vw,24px);letter-spacing:-.8px}.kpi-foot{gap:6px;font-size:9px}.content-grid,.bottom-grid{gap:16px}.bottom-grid{margin-top:16px}.panel{padding:18px 19px 15px}.activity-header,.activity-row:not(.activity-header){grid-template-columns:minmax(150px,1.5fr) minmax(85px,.9fr) minmax(75px,.8fr) minmax(105px,1fr);gap:8px}}@media(min-width:1600px){.dashboard,.topbar{padding-right:52px;padding-left:52px}.kpi-card{padding:19px 21px 16px}.panel{padding:21px 22px 17px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.books-page{min-width:0}.books-page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.books-eyebrow{margin:0 0 7px;color:#87948a;font-size:9px;font-weight:700;letter-spacing:.11em}.books-page-heading h1{margin:0;color:#23352a;font-size:clamp(22px,5vw,28px);font-weight:650;letter-spacing:-.7px;overflow-wrap:anywhere}.books-intro{max-width:650px;margin:8px 0 0;color:#8c968f;font-size:12px;line-height:1.6}.books-alert{margin:0 0 14px;padding:11px 13px;border-radius:9px;font-size:11px;line-height:1.5}.books-alert-error{border:1px solid #f3ddd7;color:#a63d2b;background:#fff2ef}.books-alert-success{border:1px solid #dcecdf;color:#286e49;background:#f1f8f3}.books-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:13px}.book-list-panel,.book-form-panel,.obligation-transfer-panel{min-width:0;padding:16px 13px}.books-empty{display:flex;flex-direction:column;align-items:center;padding:35px 15px 25px;text-align:center}.books-empty-icon{display:grid;width:44px;height:44px;margin-bottom:13px;place-items:center;border-radius:13px;color:#398456;background:#eaf5ed;font-size:23px}.books-empty strong{color:#465148;font-size:12px;font-weight:650}.books-empty p{max-width:320px;margin:7px 0 0;color:#929b94;font-size:10px;line-height:1.6}.book-list{container-type:inline-size;display:grid;gap:9px;margin-top:15px}.book-card{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;padding:12px;border:1px solid #edf0ec;border-radius:10px;background:#fff}.book-card-active{border-color:#b9dcc3;background:#fbfefb}.book-card-main{display:grid;grid-template-columns:47px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0}.book-year{display:grid;flex:0 0 47px;min-height:42px;place-items:center;border-radius:10px;color:#347c4c;background:#eaf5ed;font-size:13px;font-variant-numeric:tabular-nums;font-weight:700}.book-card-copy{display:grid;flex:1;gap:5px;min-width:0}.book-card-copy strong{color:#3a473e;font-size:14px;font-weight:650;overflow-wrap:anywhere}.book-card-copy>span{color:#939d95;font-size:12px}.book-active-badge{flex:0 0 auto;padding:5px 7px;border-radius:12px;color:#398357;background:#eaf5ed;font-size:8px;font-weight:700;letter-spacing:.04em}.book-record-count{margin:0;min-width:0;overflow-wrap:anywhere;line-height:1.6;color:#8a938d;font-size:12px}.book-actions{display:flex;justify-content:flex-end;min-width:0;flex-wrap:wrap;gap:7px;margin-top:0}.book-actions :is(.book-action,.book-action-primary){min-height:44px;font-size:13px}@container (max-width: 360px){.book-card-main{grid-template-columns:minmax(0,1fr) auto}.book-year{grid-column:1;grid-row:1;justify-self:start;min-width:47px}.book-card-copy{grid-column:1 / -1;grid-row:2}.book-active-badge{grid-column:2;grid-row:1;justify-self:end}}.book-action,.book-action-primary{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 10px;border:1px solid #e7ebe7;border-radius:7px;color:#59645c;background:#fff;font-size:9px;font-weight:600;cursor:pointer}.book-action:hover{background:#f7f9f7}.book-action-danger{color:#a65546}.book-action:disabled{opacity:.48;cursor:not-allowed}.book-action-primary{border-color:#287c50;color:#fff;background:#287c50}.book-action-primary:hover{border-color:#1f6842;background:#1f6842}.book-form{display:grid;gap:12px;margin-top:16px}.book-form label,.transfer-selects label{display:grid;gap:6px;min-width:0;color:#69756c;font-size:10px;font-weight:600}.book-form input,.transfer-selects select{width:100%;min-width:0;min-height:38px;padding:0 10px;border:1px solid #e5eae5;border-radius:8px;color:#354239;background:#fff;font:inherit;font-size:11px}.book-form input::placeholder{color:#a4aca6}.book-form-hint{margin:-2px 0 0;color:#959e98;font-size:9px;line-height:1.5}.book-form-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding-top:4px}.book-submit{flex:0 1 auto;width:auto;min-width:115px;padding:0 12px}.book-submit:disabled{opacity:.65;cursor:wait}.obligation-transfer-panel form{margin-top:15px}.transfer-selects{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.transfer-list{display:grid;gap:7px;margin-top:14px}.transfer-empty{margin:0;padding:14px 11px;border:1px dashed #e3e9e3;border-radius:9px;color:#89948c;font-size:10px;line-height:1.5;text-align:center}.transfer-obligation{display:grid;grid-template-columns:17px minmax(0,1fr);align-items:start;gap:9px;min-width:0;padding:10px;border:1px solid #edf0ec;border-radius:9px;cursor:pointer}.transfer-obligation input{width:15px;height:15px;margin:2px 0 0;accent-color:#287c50}.transfer-obligation-copy{display:grid;gap:5px;min-width:0}.transfer-obligation-copy strong{color:#48534b;font-size:10px;font-weight:600;overflow-wrap:anywhere}.transfer-obligation-copy small{color:#89948c;font-size:9px;line-height:1.4}.transfer-due{grid-column:2;color:#89948c;font-size:9px;line-height:1.4;overflow-wrap:anywhere}.transfer-footnote{margin:13px 0;padding:10px;border-radius:8px;color:#78857c;background:#f5f8f4;font-size:9px;line-height:1.55}.transfer-submit{min-height:34px;max-width:100%;padding:0 11px;font-size:9px}.transfer-submit:disabled{opacity:.5;cursor:not-allowed}.books-inline-notice{margin:9px 0 0;color:#a65546;font-size:9px;line-height:1.5}@media(min-width:681px){.books-page-heading{margin-bottom:22px}.book-list-panel,.book-form-panel,.obligation-transfer-panel{padding:18px 16px}.transfer-selects{grid-template-columns:repeat(2,minmax(0,1fr))}.transfer-obligation{grid-template-columns:17px minmax(0,1fr) minmax(120px,auto);align-items:center}.transfer-due{grid-column:auto;text-align:right}}@media(min-width:1100px){.books-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:15px}.obligation-transfer-panel{grid-column:1 / -1}.book-list-panel,.book-form-panel,.obligation-transfer-panel{padding:19px 18px}}.calendar-page{min-width:0}.calendar-page-heading{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px}.calendar-page-heading h1{margin:0;color:#23352a;font-size:clamp(22px,5vw,28px);font-weight:650;letter-spacing:-.7px;overflow-wrap:anywhere}.calendar-page-heading .books-intro{margin-top:7px}.calendar-manage-button{flex:0 1 auto;min-height:34px;padding:0 11px;font-size:9px}.calendar-empty{padding:22px 16px;color:#89948c;font-size:11px;line-height:1.6}.calendar-empty-inline{padding:22px 12px;color:#89948c;font-size:10px;line-height:1.6;text-align:center}.calendar-panel{padding:13px 10px}.calendar-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:14px}.calendar-view-tabs{display:inline-flex;padding:3px;border:1px solid #edf0ec;border-radius:8px;background:#f8f9f7}.calendar-tab{min-height:29px;padding:0 9px;border:0;border-radius:6px;color:#818b83;background:transparent;font-size:9px;font-weight:600;cursor:pointer}.calendar-tab-active{color:#347c4c;background:#fff;box-shadow:0 1px 3px #1932221a}.month-controls{display:flex;align-items:center;gap:9px;margin:0 auto;color:#3b493f}.month-controls strong{min-width:100px;color:#3b493f;font-size:11px;font-weight:650;text-align:center}.month-arrow{display:grid;width:27px;height:27px;place-items:center;border:1px solid #e8ece8;border-radius:7px;color:#617066;background:#fff;font-size:17px;cursor:pointer}.month-arrow:disabled{opacity:.4;cursor:not-allowed}.calendar-book-label{margin-left:auto;color:#89948c;font-size:9px}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #edf0ec;border-left:1px solid #edf0ec}.weekday-label{display:grid;min-width:0;min-height:29px;place-items:center;border-right:1px solid #edf0ec;border-bottom:1px solid #edf0ec;color:#919a93;background:#fafbfa;font-size:8px;font-weight:650;text-transform:capitalize}.calendar-day{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;min-height:58px;padding:5px 3px;border-right:1px solid #edf0ec;border-bottom:1px solid #edf0ec;background:#fff}.calendar-day-empty{background:#fafbfa}.calendar-day-payday{background:#fbfefb}.calendar-day-number{align-self:flex-end;color:#77837a;font-size:8px;font-variant-numeric:tabular-nums}.calendar-period-chip,.year-period-chip{display:flex;align-items:center;justify-content:space-between;gap:2px;width:100%;min-width:0;padding:4px 3px;border:0;border-radius:5px;font-size:7px;text-align:left;cursor:pointer}.calendar-period-chip span,.year-period-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-period-chip strong,.year-period-chip strong{flex:0 0 auto;font-size:7px;font-weight:700}.cycle-a{color:#347c4c;background:#eaf5ed}.cycle-b{color:#78649c;background:#f1eef8}.year-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.year-month-card{min-width:0;padding:9px;border:1px solid #edf0ec;border-radius:8px}.year-month-card h3{margin:0 0 8px;color:#49564d;font-size:10px;font-weight:650}.year-month-card>p{margin:0;color:#a2aaa4;font-size:8px}.year-period-list{display:flex;flex-wrap:wrap;gap:5px}.year-period-chip{width:auto;min-height:24px;justify-content:flex-start;padding:4px 6px;font-size:8px}.year-period-chip strong{margin-left:4px;font-size:8px}.calendar-schedule-note{margin:11px 2px 0;color:#929b94;font-size:9px;line-height:1.6}.calendar-obligations-panel{padding:16px 13px}.calendar-obligation-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:17px;margin-top:15px}.calendar-obligation-list{display:grid;align-content:start;gap:8px;min-width:0}.calendar-obligation-card{min-width:0;padding:11px;border:1px solid #edf0ec;border-radius:9px}.calendar-obligation-inactive{background:#fafbfa}.calendar-obligation-main{display:grid;gap:5px;min-width:0}.calendar-obligation-main strong{color:#465148;font-size:10px;font-weight:650;overflow-wrap:anywhere}.calendar-obligation-main>span{color:#8e9890;font-size:9px;overflow-wrap:anywhere}.calendar-obligation-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:9px;color:#7f8a81;font-size:8px;line-height:1.45}.cycle-badge{flex:0 0 auto;padding:4px 7px;border-radius:12px;font-size:8px;font-weight:650}.obligation-active-label{color:#398357}.obligation-inactive-label{color:#969f99}.calendar-obligation-card .book-actions{margin-top:9px}.calendar-obligation-form{display:grid;align-content:start;gap:11px;min-width:0;padding:13px;border:1px solid #edf0ec;border-radius:10px;background:#fbfcfb}.calendar-obligation-form h3{margin:0 0 1px;color:#3a473e;font-size:12px;font-weight:650}.calendar-obligation-form label{display:grid;gap:5px;min-width:0;color:#69756c;font-size:9px;font-weight:600}.calendar-obligation-form input,.calendar-obligation-form select{width:100%;min-width:0;min-height:35px;padding:0 8px;border:1px solid #e5eae5;border-radius:7px;color:#354239;background:#fff;font:inherit;font-size:10px}.calendar-form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.period-detail-panel{min-width:0;padding:15px 12px}.period-detail-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding-bottom:14px;border-bottom:1px solid #edf0ec}.period-detail-heading>.book-action{justify-self:start}.period-detail-title{display:grid;justify-items:start;gap:7px;min-width:0}.period-detail-title h2{margin:0;color:#36443a;font-size:17px;font-weight:650;overflow-wrap:anywhere}.period-detail-title p{margin:0;color:#8c968f;font-size:10px;line-height:1.5}.period-payday{color:#6f7c72;font-size:10px;line-height:1.5}.period-obligations-heading{margin:15px 0 10px}.period-obligations-heading h3{margin:0;color:#48544b;font-size:11px;font-weight:650}.period-obligations-heading p{margin:5px 0 0;color:#939d95;font-size:9px;line-height:1.5}.period-obligation-list{display:grid;gap:7px}.period-obligation-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;min-width:0;padding:10px;border:1px solid #edf0ec;border-radius:9px}.period-obligation-main{display:grid;gap:4px;min-width:0}.period-obligation-main strong{color:#47534a;font-size:10px;font-weight:600;overflow-wrap:anywhere}.period-obligation-main span{color:#8e9890;font-size:9px;overflow-wrap:anywhere}.period-obligation-due{grid-column:1;color:#89948c;font-size:8px;line-height:1.45}.period-obligation-amount{grid-column:2;grid-row:1;align-self:center;color:#465148;font-size:10px;font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}.period-status{grid-column:2;grid-row:2;justify-self:end;padding:4px 7px;border-radius:12px;font-size:8px;font-weight:600}.period-status-pending{color:#987532;background:#fbf5e8}.period-status-partial{color:#75629a;background:#f2eff9}.period-status-paid{color:#398357;background:#eaf5ed}@media(min-width:681px){.calendar-page-heading{align-items:center;margin-bottom:21px}.calendar-panel{padding:16px}.calendar-toolbar{gap:12px;margin-bottom:16px}.calendar-tab{padding:0 12px}.month-controls{gap:12px}.month-controls strong{min-width:135px;font-size:12px}.month-arrow{width:29px;height:29px}.weekday-label{min-height:35px;font-size:9px}.calendar-day{min-height:82px;padding:7px}.calendar-day-number{font-size:9px}.calendar-period-chip{max-width:100px;padding:5px;font-size:8px}.calendar-period-chip strong{font-size:8px}.year-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.year-month-card{min-height:78px;padding:11px}.year-month-card h3{font-size:11px}.year-period-chip{padding:5px 7px;font-size:9px}.calendar-obligations-panel,.period-detail-panel{padding:18px 16px}.calendar-obligation-layout{grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:14px;align-items:start}.period-detail-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.period-detail-heading>.book-action{align-self:start}}@media(min-width:981px){.calendar-panel{padding:18px}.weekday-label{min-height:39px}.calendar-day{min-height:94px;padding:8px}.calendar-period-chip{max-width:125px}.year-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.calendar-obligation-layout{grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:18px}.calendar-obligation-card{display:flex;align-items:center;gap:10px}.calendar-obligation-main{flex:1}.calendar-obligation-meta{flex:0 1 auto;margin-top:0}.calendar-obligation-card .book-actions{flex:0 0 auto;margin-top:0}.period-detail-panel{padding:21px}.period-detail-heading{padding-bottom:18px}.period-obligation-card{grid-template-columns:minmax(0,1fr) minmax(90px,.7fr) minmax(100px,.8fr) auto;align-items:center}.period-obligation-due,.period-obligation-amount,.period-status{grid-column:auto;grid-row:auto}.period-obligation-amount{text-align:right}}.payroll-page{min-width:0}.payroll-page .books-page-heading{flex-wrap:wrap}.payroll-page .books-page-heading .book-action-primary{flex:0 1 auto;min-height:34px;padding:0 11px;font-size:9px}.payroll-empty{padding:22px 16px;color:#89948c;font-size:11px;line-height:1.6}.payroll-period-panel{min-width:0;margin-bottom:17px;padding:13px 11px}.payroll-cycle-settings{display:grid;gap:12px;min-width:0;margin-bottom:12px;padding:14px 12px}.payroll-cycle-copy h2{margin:0;color:#354239;font-size:13px;font-weight:650}.payroll-cycle-copy p{max-width:62ch;margin:4px 0 0;color:#69756c;font-size:10px;line-height:1.55}.payroll-cycle-form{display:grid;grid-template-columns:minmax(0,1fr);align-items:end;gap:9px}.payroll-cycle-form label{display:grid;gap:5px;min-width:0;color:#69756c;font-size:9px;font-weight:600}.payroll-cycle-form input,.payroll-cycle-form select{width:100%;min-width:0;min-height:38px;padding:0 10px;border:1px solid #e2ddd5;border-radius:7px;color:#354239;background:#fff;font:inherit;font-size:11px}.payroll-cycle-form input:focus-visible,.payroll-cycle-form select:focus-visible,.payroll-cycle-save:focus-visible{outline:3px solid rgb(40 95 145 / 25%);outline-offset:2px}.payroll-cycle-save{min-height:38px;justify-content:center;white-space:nowrap}.payroll-cycle-message{margin:0;color:#167347;font-size:10px;line-height:1.5}.payroll-cycle-message.payroll-cycle-error{color:#a12b32}.app-shell[data-theme=dark] .payroll-cycle-copy h2,.app-shell[data-theme=system][data-system-dark=true] .payroll-cycle-copy h2{color:#d7e2d9}.app-shell[data-theme=dark] .payroll-cycle-copy p,.app-shell[data-theme=dark] .payroll-cycle-form label,.app-shell[data-theme=system][data-system-dark=true] .payroll-cycle-copy p,.app-shell[data-theme=system][data-system-dark=true] .payroll-cycle-form label{color:#a3b0a6}.app-shell[data-theme=dark] .payroll-cycle-form input,.app-shell[data-theme=dark] .payroll-cycle-form select,.app-shell[data-theme=system][data-system-dark=true] .payroll-cycle-form input,.app-shell[data-theme=system][data-system-dark=true] .payroll-cycle-form select{border-color:#334238;color:#d7e2d9;background:#202e25}.app-shell[data-theme=dark] .payroll-cycle-message,.app-shell[data-theme=system][data-system-dark=true] .payroll-cycle-message{color:#8bd0a0}.app-shell[data-theme=dark] .payroll-cycle-message.payroll-cycle-error,.app-shell[data-theme=system][data-system-dark=true] .payroll-cycle-message.payroll-cycle-error{color:#f0a9a9}.payroll-period-toolbar{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:11px}.payroll-period-select{display:grid;flex:1 1 230px;gap:6px;min-width:0;color:#69756c;font-size:9px;font-weight:600}.payroll-period-select select,.payroll-entry-fields select,.payroll-employment-form select{width:100%;min-width:0;min-height:36px;padding:0 9px;border:1px solid #e5eae5;border-radius:7px;color:#354239;background:#fff;font:inherit;font-size:10px}.payroll-period-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:#78857c;font-size:9px}.payroll-closed-badge,.payroll-confirmed-badge,.payroll-voided-badge,.payroll-draft-badge{flex:0 0 auto;padding:5px 8px;border-radius:12px;color:#52765c;background:#eaf5ed;font-size:8px;font-weight:650}.payroll-confirmed-badge{color:#375d87;background:#edf4fb}.payroll-voided-badge{color:#9d4438;background:#fff0ed}.payroll-draft-badge{color:#987532;background:#fbf5e8}.payroll-records-heading{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:18px 0 11px}.payroll-records-heading h2{margin:0;color:#3a473e;font-size:14px;font-weight:650;overflow-wrap:anywhere}.payroll-records-heading p{margin:5px 0 0;color:#89948c;font-size:9px;line-height:1.5}.payroll-record-list{display:grid;gap:11px}.payroll-record-card{min-width:0;padding:14px 12px}.payroll-record-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.payroll-record-heading>div{min-width:0}.payroll-record-heading h3{margin:0;color:#3a473e;font-size:12px;font-weight:650;overflow-wrap:anywhere}.payroll-record-heading p{margin:5px 0 0;color:#89948c;font-size:9px;line-height:1.45;overflow-wrap:anywhere}.payroll-hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:13px}.payroll-hours-grid>label,.payroll-hours-grid>div,.payroll-entry-fields>label{display:grid;gap:5px;min-width:0;color:#69756c;font-size:9px;font-weight:600}.payroll-hours-grid>div>strong{color:#465148;font-size:10px;font-variant-numeric:tabular-nums}.payroll-hours-input{display:flex;align-items:center;min-width:0;min-height:35px;padding:0 8px;border:1px solid #e5eae5;border-radius:7px;color:#354239;background:#fff}.payroll-hours-input input{width:100%;min-width:0;min-height:32px;padding:0;border:0;outline:0;color:inherit;background:transparent;font:inherit;font-size:10px;font-variant-numeric:tabular-nums}.payroll-hours-input input:disabled{color:#7e8981}.payroll-hours-input small{flex:0 0 auto;color:#89948c;font-size:9px}.payroll-breakdown{display:grid;gap:8px;margin-top:13px;padding:11px 0;border-top:1px solid #edf0ec;border-bottom:1px solid #edf0ec}.payroll-breakdown>div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0;color:#748077;font-size:9px;line-height:1.45}.payroll-breakdown>div>span,.payroll-breakdown>div>strong{min-width:0;overflow-wrap:anywhere}.payroll-breakdown strong{color:#465148;font-size:10px;font-variant-numeric:tabular-nums;text-align:right}.payroll-breakdown-deductions{flex-wrap:wrap}.payroll-breakdown-deductions ul{display:grid;flex:0 0 100%;gap:4px;margin:0;padding:0;list-style:none}.payroll-breakdown-deductions li{display:flex;justify-content:space-between;gap:10px;color:#89948c;font-size:8px}.payroll-breakdown-deductions li span{min-width:0;overflow-wrap:anywhere}.payroll-estimated-net strong{color:#287c50}.payroll-actual-net strong{color:#465148}.payroll-record-actions{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px;margin-top:12px}.payroll-record-actions .book-action-primary{min-height:32px;font-size:9px}.payroll-record-actions .book-action-danger{min-height:32px}.payroll-confirm-net{display:grid;flex:1 1 120px;gap:5px;min-width:110px;color:#69756c;font-size:9px;font-weight:600}.payroll-audit-panel{min-width:0;margin-top:13px;padding:13px;border:1px solid #e8ede8;border-radius:9px;background:#fff}.payroll-audit-panel>summary{color:#435047;font-size:10px;font-weight:650;cursor:pointer}.payroll-audit-panel ul{display:grid;gap:9px;margin:12px 0 0;padding:0;list-style:none}.payroll-audit-panel li{display:grid;gap:4px;min-width:0;padding-top:9px;border-top:1px solid #edf0ec;color:#667269;font-size:9px;line-height:1.5}.payroll-audit-panel li>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px 12px}.payroll-audit-panel li strong{color:#435047;font-weight:650;overflow-wrap:anywhere}.payroll-audit-panel time{color:#89948c;font-variant-numeric:tabular-nums}.payroll-audit-panel p{margin:0;overflow-wrap:anywhere}.payroll-modal-backdrop{position:fixed;z-index:1000;inset:0;display:grid;align-items:center;justify-items:center;overflow:auto;padding:14px;background:#141f188a}.payroll-modal{display:grid;gap:12px;width:min(100%,620px);max-height:min(92dvh,800px);overflow:auto;padding:16px 13px;border:1px solid #e8ede8;border-radius:13px;background:#fff;box-shadow:0 18px 55px #111f1538}.payroll-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.payroll-modal-heading h2{margin:0;color:#344239;font-size:15px;font-weight:650;overflow-wrap:anywhere}.payroll-modal-heading p{margin:5px 0 0;color:#89948c;font-size:10px}.payroll-record-edit-form{display:grid;gap:10px;min-width:0}.payroll-record-edit-form label{display:grid;gap:5px;min-width:0;color:#69756c;font-size:9px;font-weight:600}.payroll-record-edit-form>label>input,.payroll-record-edit-form select{width:100%;min-width:0;min-height:35px;padding:0 8px;border:1px solid #e5eae5;border-radius:7px;color:#354239;background:#fff;font:inherit;font-size:10px}.payroll-confirm-modal>p{margin:0;color:#68746b;font-size:11px;line-height:1.6;overflow-wrap:anywhere}.payroll-entry-form{min-width:0;margin-top:13px;padding:14px 12px}.payroll-entry-fields{display:grid;gap:9px;margin-top:12px}.payroll-entry-submit{min-height:36px;font-size:10px}.payroll-employments-panel{min-width:0;padding:14px 12px}.payroll-employment-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.payroll-employment-list{display:grid;align-content:start;gap:9px;min-width:0}.payroll-employment-card{min-width:0;padding:11px;border:1px solid #edf0ec;border-radius:9px;background:#fff}.payroll-employment-inactive{background:#fafbfa}.payroll-employment-main{display:grid;gap:5px;min-width:0;color:#89948c;font-size:9px}.payroll-employment-main strong{color:#465148;font-size:10px;font-weight:650;overflow-wrap:anywhere}.payroll-deduction-summary{display:grid;gap:4px;margin:9px 0 0;padding-left:17px;color:#89948c;font-size:8px;line-height:1.5}.payroll-employment-form{display:grid;align-content:start;gap:10px;min-width:0;padding:12px;border:1px solid #edf0ec;border-radius:9px;background:#fbfcfb}.payroll-employment-form h3{margin:0;color:#3a473e;font-size:12px;font-weight:650}.payroll-employment-form label{display:grid;gap:5px;min-width:0;color:#69756c;font-size:9px;font-weight:600}.payroll-employment-form input{width:100%;min-width:0;min-height:35px;padding:0 8px;border:1px solid #e5eae5;border-radius:7px;color:#354239;background:#fff;font:inherit;font-size:10px}.payroll-form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.payroll-deductions-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px;padding-top:5px}.payroll-deductions-heading strong{color:#566359;font-size:10px}.payroll-deduction-form{display:grid;gap:8px;min-width:0;padding:9px;border:1px solid #edf0ec;border-radius:8px;background:#fff}.payroll-remove-deduction{justify-self:start}.payroll-page input:disabled,.payroll-page select:disabled,.payroll-page button:disabled{opacity:.6;cursor:not-allowed}.payroll-estimate{display:grid;gap:9px;min-width:0;margin-top:12px;padding:12px;border:1px solid #e5ebe5;border-radius:9px;background:#fbfcfb}.payroll-estimate h3{margin:0;color:#3a473e;font-size:12px}.payroll-estimate dl{display:grid;gap:7px;margin:0;min-width:0}.payroll-estimate dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;min-width:0;color:#68746b;font-size:10px}.payroll-estimate dt{min-width:0;overflow-wrap:anywhere}.payroll-estimate dd{flex:0 0 auto;margin:0;color:#3a473e;font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}.payroll-estimate-gross,.payroll-estimate-net{padding-top:7px;border-top:1px solid #e5ebe5;font-weight:700}.payroll-estimate-incomplete{color:#8a541f!important}.payroll-estimate-incomplete dd{color:inherit}.payroll-tax-warning{display:grid;gap:5px;min-width:0;padding:9px;border-radius:7px;color:#79511f;background:#fff6e8;font-size:9px;line-height:1.5;overflow-wrap:anywhere}.payroll-tax-warning strong{color:#694518}.payroll-tax-warning p{margin:0}.payroll-tax-warning ul{display:grid;gap:3px;margin:0;padding-left:17px}.payroll-estimate-loading{margin:10px 0 0;color:#79867c;font-size:10px}.payroll-scope-note{max-width:68ch;margin:6px 0 0;color:#77847a;font-size:10px;line-height:1.5;overflow-wrap:anywhere}.app-shell[data-theme=dark] .payroll-modal,.app-shell[data-theme=dark] .payroll-audit-panel{border-color:#2b3a30;background:#17231b}.app-shell[data-theme=dark] .payroll-modal-heading h2,.app-shell[data-theme=dark] .payroll-audit-panel>summary,.app-shell[data-theme=dark] .payroll-audit-panel li strong{color:#d7e2d9}.app-shell[data-theme=dark] .payroll-modal-heading p,.app-shell[data-theme=dark] .payroll-confirm-modal>p,.app-shell[data-theme=dark] .payroll-audit-panel li{color:#a3b0a6}.app-shell[data-theme=dark] .payroll-record-edit-form>label>input,.app-shell[data-theme=dark] .payroll-record-edit-form select{border-color:#334238;color:#d7e2d9;background:#202e25}.app-shell[data-theme=dark] .payroll-estimate{border-color:#334238;background:#202e25}.app-shell[data-theme=dark] .payroll-estimate h3,.app-shell[data-theme=dark] .payroll-estimate dd{color:#d7e2d9}.app-shell[data-theme=dark] .payroll-estimate dl>div{color:#a3b0a6}.app-shell[data-theme=dark] .payroll-estimate-gross,.app-shell[data-theme=dark] .payroll-estimate-net{border-color:#334238}.app-shell[data-theme=dark] .payroll-tax-warning{color:#f0d3a4;background:#392f20}.app-shell[data-theme=dark] .payroll-tax-warning strong{color:#f5dfba}@media(min-width:681px){.payroll-period-panel{padding:16px}.payroll-period-toolbar{align-items:center}.payroll-period-select{flex:0 1 440px}.payroll-record-card{padding:17px}.payroll-hours-grid{max-width:420px}.payroll-breakdown{max-width:560px}.payroll-record-actions{justify-content:flex-start}.payroll-entry-fields{grid-template-columns:minmax(180px,1.4fr) repeat(2,minmax(130px,.8fr)) auto;align-items:end}.payroll-entry-submit{min-width:130px}.payroll-employments-panel{padding:18px 16px}.payroll-employment-layout{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);align-items:start;gap:15px}}@media(min-width:981px){.payroll-employments-panel{padding:20px}.payroll-employment-layout{grid-template-columns:minmax(0,1.3fr) minmax(300px,.8fr);gap:19px}.payroll-record-card{padding:19px}}.period-payroll-summary{min-width:0;margin-top:15px;padding:11px;border:1px solid #edf0ec;border-radius:9px}.period-payroll-summary h3{margin:0 0 9px;color:#48544b;font-size:11px;font-weight:650}.period-payroll-summary ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.period-payroll-summary li{display:grid;gap:4px;min-width:0;padding:8px;border-radius:7px;color:#69756c;background:#fbfcfb;font-size:9px;overflow-wrap:anywhere}.period-payroll-summary li strong{color:#465148;font-size:10px}.period-payroll-summary li span{font-variant-numeric:tabular-nums}.app-shell[data-theme=dark] .period-payroll-summary{border-color:#334238}.app-shell[data-theme=dark] .period-payroll-summary li{color:#a3b0a6;background:#202e25}.app-shell[data-theme=dark] .period-payroll-summary h3,.app-shell[data-theme=dark] .period-payroll-summary li strong{color:#d7e2d9}@media(min-width:681px){.payroll-cycle-settings{grid-template-columns:minmax(180px,.9fr) minmax(0,1.4fr);align-items:center;gap:12px 20px;padding:16px}.payroll-cycle-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.payroll-cycle-message{grid-column:1 / -1}.period-payroll-summary{padding:13px}.period-payroll-summary li{grid-template-columns:minmax(0,1fr) repeat(2,minmax(0,auto));align-items:center;gap:8px 14px}.period-payroll-summary li strong{overflow-wrap:anywhere}.period-payroll-summary li span{text-align:right}}:root{--color-primary: var(--theme-primary, var(--palette-brand, #1b4332));--color-action: var(--theme-action, var(--palette-accent, #c86d51));--color-action-contrast: var(--theme-action-contrast, var(--palette-ink, #153325));--color-background: var(--theme-background, #fcf9f2);--color-surface: var(--theme-surface, #ffffff);--color-surface-secondary: var(--theme-surface-secondary, #f5f2eb);--color-selection: var(--theme-selection, #e3ebe5);--color-hover: var(--theme-hover, #e3ebe5);--color-text: var(--theme-text, var(--palette-ink, #153325));--color-text-secondary: var(--theme-text-secondary, #565c54);--color-text-muted: var(--theme-text-muted, #565c54);--color-border: var(--theme-border, #e2ddd5);--color-positive: var(--theme-positive, #167347);--color-negative: var(--theme-negative, #b42332);--color-warning: var(--theme-warning, #a66316);--color-warning-contrast: var(--theme-warning-contrast, #70400c);--color-warning-surface: var(--theme-warning-surface, #fbf1e3);--color-warning-border: var(--theme-warning-border, #e7c99f);--color-info: var(--theme-info, #285f91);--color-neutral: var(--theme-neutral, #64748b);--color-focus: var(--theme-focus, var(--palette-ink, #153325));--shadow-soft: 0 3px 14px rgb(21 51 37 / 6%);--shadow-sidebar: 12px 0 35px rgb(21 51 37 / 16%)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]){color:var(--color-text);background:var(--color-background)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.main-content,.dashboard,.books-page,.calendar-page,.payroll-page,.settings-page){color:var(--color-text);background-color:var(--color-background)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .sidebar{color:#fcf9f2;background:var(--color-primary);border-color:var(--color-primary);box-shadow:var(--shadow-sidebar)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .brand,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .sidebar .brand,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .workspace-copy strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .profile-copy strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .help-card strong{color:#fcf9f2}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .brand-symbol{color:var(--color-primary);background:var(--color-on-primary, #fff)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .brand-period,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .help-spark{color:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .workspace-label,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .nav-section-label,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .workspace-copy small,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .profile-copy small{color:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .workspace-switch{color:#fcf9f2;background:#fcf9f217;border-color:#fcf9f23d}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .workspace-avatar{color:var(--color-primary);background:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .workspace-switch>svg,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .profile-button>svg{color:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .nav-item{color:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .nav-item:hover{color:#fff;background:#fcf9f21f}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .nav-item-active,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .nav-item-active:hover{color:var(--color-primary);background:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .nav-count{color:var(--color-primary);background:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .help-card{background:#fcf9f21a}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .help-card>span:nth-of-type(2){color:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .help-card button{color:#fcf9f2}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .profile-button{border-color:#fcf9f240}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .profile-avatar{color:var(--color-primary);background:#e3ebe5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .topbar{color:var(--color-text);background:#faf6f1f5;border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .mobile-menu,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .breadcrumb strong{color:var(--color-text)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .mobile-menu:hover,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .icon-button:hover{color:var(--color-primary);background:var(--color-selection)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .breadcrumb,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .breadcrumb-slash,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .date-label,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .welcome-subtitle,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-intro,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-eyebrow,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-book-label,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-schedule-note,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-card-heading p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-rate-caption{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-select,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .language-select,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-display{color:var(--color-text);background:var(--color-surface);border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-short,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-display>svg{color:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-icon,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-calendar{color:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .demo-badge{color:var(--color-warning);background:#fbf1e3;border-color:#e7c99f}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .demo-badge i{background:var(--color-warning)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.welcome-row h1,.books-page-heading h1,.calendar-page-heading h1,.settings-heading h1,.panel-heading h2,.panel h2,.placeholder-panel h1,.tip-panel h2){color:var(--color-text)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .panel,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-card,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-card,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-card,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .placeholder-panel,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-card{color:var(--color-text);background:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-soft)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-heading,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .panel-heading p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-foot,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .chart-legend,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .chart-summary,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .activity-row:not(.activity-header),.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .activity-date,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .activity-status,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-empty p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-record-count,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-empty-inline,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-empty,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-heading p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown>div,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-confirm-net,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-deduction-summary,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-scope-note{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-value,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .obligation-amount,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .activity-amount,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-actual-net strong{color:var(--color-text)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-icon-green,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-year,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-active-badge{color:var(--color-positive);background:#e5f2eb}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-icon-peach,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .obligation-peach{color:var(--color-action-contrast);background:var(--color-selection)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-icon-lilac,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .obligation-lavender{color:#625086;background:#eee9f5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-icon-blue{color:var(--color-info);background:#e9f0f6}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .obligation-mint{color:var(--color-positive);background:#e5f2eb}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .change-positive,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .change-neutral,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .chart-summary strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .obligation-active-label,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-status-paid,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimated-net strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-tax-warning strong{color:var(--color-positive)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .due-indicator{color:var(--color-warning)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .due-indicator i{background:var(--color-warning)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .summary-line{background:var(--color-positive)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .obligation-inactive-label,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .nav-count{color:var(--color-neutral)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dot-green,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .bar-income{background:var(--color-positive);fill:var(--color-positive)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dot-orange,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .bar-expenses{background:#e6b9a5;fill:#d99a7d}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .chart-grid{stroke:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .chart-axis-label,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .chart-unit{fill:var(--color-text-secondary);color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .legend-income{background:var(--color-positive)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .legend-expenses{background:#e6b9a5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .status-paid{background:var(--color-positive)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .activity-amount.amount-in{color:var(--color-positive)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .activity-amount.amount-out{color:var(--color-negative)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .tip-panel{background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .tip-panel p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .placeholder-panel p{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .placeholder-icon{color:var(--color-primary);background:var(--color-selection)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .placeholder-label{color:var(--color-action-contrast)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.activity-row,.obligation,.book-card,.calendar-obligation-card,.period-obligation-card,.payroll-employment-card,.payroll-audit-panel,.period-payroll-summary,.year-month-card){border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-card{background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-card-active{border-color:#d3a48d;background:var(--color-selection)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-inactive,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-inactive{background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-card-copy strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-empty strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-month-card h3,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-main strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-heading h3,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-main strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal-heading h2,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-card-heading h2{color:var(--color-text)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-card-copy>span,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-month-card>p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-main>span,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-meta,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main span,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payday{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-action,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .month-arrow,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-tab,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-deduction-form{color:var(--color-text);background:var(--color-surface);border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-action:hover,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .month-arrow:hover,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-tab:hover,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .transfer-obligation:hover{background:var(--color-hover)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-tab-active{color:var(--color-primary);background:var(--color-selection)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-action-danger,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-inline-notice,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .activity-amount.amount-out{color:var(--color-negative)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-action-primary,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .add-button,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-primary-button,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .transfer-obligation input{accent-color:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-action-primary,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .add-button,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-primary-button{color:#fff;background:var(--color-action-contrast);border-color:var(--color-action-contrast)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-action-primary:hover,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .add-button:hover,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-primary-button:hover{background:var(--color-primary);border-color:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-secondary-button{color:var(--color-primary);background:var(--color-surface-secondary);border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .text-link,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .help-card button,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .all-obligations{color:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .text-link:hover{color:var(--color-action-contrast)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .transfer-obligation,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-form,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-form,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary li{background:var(--color-surface-secondary);border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .transfer-obligation-copy strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary li strong{color:var(--color-text)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .transfer-obligation-copy small,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .transfer-due{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .transfer-footnote{color:var(--color-text);background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .transfer-empty{color:var(--color-text-secondary);border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .cycle-a,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-status-paid{color:var(--color-positive);background:#e5f2eb}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .cycle-b{color:#625086;background:#eee9f5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-status-pending{color:var(--color-warning);background:#fbf1e3}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-status-partial{color:#625086;background:#eee9f5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-heading,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel li,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-convert-form,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .profile-button{border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.book-form input,.transfer-selects select,.calendar-obligation-form input,.calendar-obligation-form select,.payroll-employment-form input,.payroll-employment-form select,.payroll-record-edit-form input,.payroll-record-edit-form select,.payroll-hours-input,.settings-fields input,.settings-fields select,.settings-fields textarea,.settings-single-field select,.settings-rate-form input,.settings-convert-form input,.settings-convert-form select){color:var(--color-text);background-color:var(--color-surface);border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.book-form label,.transfer-selects label,.calendar-obligation-form label,.payroll-employment-form label,.payroll-record-edit-form label,.settings-fields label,.settings-single-field,.settings-rate-form label,.settings-convert-form label){color:var(--color-text)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(input,select,textarea,button,a,summary,[tabindex]):focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.book-form input,.transfer-selects select,.calendar-obligation-form input,.calendar-obligation-form select,.payroll-employment-form input,.payroll-employment-form select,.payroll-record-edit-form input,.payroll-record-edit-form select,.settings-fields input,.settings-fields select,.settings-fields textarea,.settings-rate-form input,.settings-convert-form input,.settings-convert-form select):focus{outline:2px solid var(--color-focus);outline-offset:1px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.book-action:disabled,.book-action-primary:disabled,.add-button:disabled,.settings-primary-button:disabled,input:disabled,select:disabled,textarea:disabled){color:var(--color-neutral);background-color:var(--color-surface-secondary);border-color:var(--color-border);opacity:.72;cursor:not-allowed}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-alert-error{color:#8f1d2a;background:#fbeaec;border-color:#e8bbc0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-alert-success,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-success,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-conversion-result{color:var(--color-positive);background:#e5f2eb;border-color:#b9d9c7}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-tax-warning{color:#70400c;background:#fbf1e3}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-tax-warning strong{color:#70400c}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate-incomplete{color:var(--color-warning)!important}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal{color:var(--color-text);background:var(--color-surface);border-color:var(--color-border);box-shadow:0 18px 55px #15332538}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal-heading p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-confirm-modal>p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel li,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel time{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate h3,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate dd,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel>summary,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel li strong,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-deductions-heading strong{color:var(--color-text)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate-gross,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate-net{border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-tax-warning{color:#70400c}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimated-net strong{color:var(--color-positive)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-actual-net strong{color:var(--color-text)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .status-pending{background:#fbf1e3}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .status-paid{background:#e5f2eb}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-actions .book-action-danger{color:var(--color-negative)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .sidebar-backdrop{background:#1533258c}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .topbar,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .panel,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .kpi-card,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-card,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-card,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-card{box-shadow:var(--shadow-soft)}.settings-fields .ytd-confirmation input[type=checkbox]{width:18px;min-height:18px;height:18px;padding:0;vertical-align:middle}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.welcome-row h1,.panel-heading h2,.tip-panel h2){font-family:var(--font-heading);font-weight:500;letter-spacing:-.02em}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .welcome-row h1{font-size:clamp(28px,4vw,40px);line-height:1.2}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .panel-heading h2{font-size:24px;line-height:1.3}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .bar-chart{min-width:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .sidebar :focus-visible{outline-color:#fcf9f2}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .help-card button{color:#fcf9f2;text-decoration:underline;text-underline-offset:3px}@media(max-width:680px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .chart-axis-label{font-size:20px}}.dashboard-state-message{max-width:58rem;margin:clamp(48px,16vh,144px) auto;color:var(--color-text-secondary);font-size:16px;line-height:1.6;text-align:center;text-wrap:pretty}.dashboard-state-message p{margin:0 0 8px}.skeleton-group{display:grid;min-width:0;gap:10px}.skeleton-content{display:contents}.skeleton-block{display:block;width:var(--skeleton-width, 100%);height:var(--skeleton-height, 14px);max-width:100%;border-radius:6px;background:linear-gradient(100deg,#e5e5e1 28%,#f4f3ef,#e5e5e1 64%);background-size:220% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{to{background-position-x:-220%}}.dashboard-summary-skeleton{width:min(100%,1280px);margin:30px auto;gap:16px}.dashboard-skeleton-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dashboard-skeleton-metrics .skeleton-block{border-radius:12px}.calendar-skeleton{width:100%;padding:12px}.calendar-skeleton-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-skeleton-grid .skeleton-block{border-radius:4px}.calendar-skeleton-grid .calendar-skeleton-weekday{height:12px;background:#e9e8e3}.calendar-skeleton-year-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calendar-skeleton-month{display:grid;min-width:0;gap:8px;padding:9px;border:1px solid #edf0ec;border-radius:8px}.calendar-detail-skeleton{align-content:start}.calendar-obligations-skeleton,.payroll-periods-skeleton,.transfer-skeleton{width:100%;gap:8px}.payroll-estimate-skeleton{margin-top:10px}.settings-skeleton{width:min(100%,960px);margin:0 auto;gap:16px}.settings-skeleton .skeleton-block:not(:first-child){border-radius:12px}.app-shell[data-theme=dark] .skeleton-block{background:linear-gradient(100deg,#303b33 28%,#414d43,#303b33 64%);background-size:220% 100%}@media(prefers-reduced-motion:reduce){.skeleton-block{animation:none;background-position:50% 0}}.dashboard-summary{width:min(100%,1280px);min-width:0;margin:0 auto;padding:28px 0 36px}.dashboard-summary-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}.dashboard-summary-header h1{margin:0;color:var(--color-text);font:400 36px/1.2 var(--font-heading)}.dashboard-summary-period,.dashboard-summary-payday{margin:8px 0 0;color:var(--color-text-secondary);font-size:14px;line-height:1.5}.dashboard-filters{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:10px;width:min(100%,680px)}.dashboard-filters label{display:grid;gap:5px;min-width:0;color:var(--color-text-secondary);font-size:11px;font-weight:600}.dashboard-filters select{width:100%;min-width:0;min-height:42px;padding:0 10px;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);background:var(--color-surface);font-size:12px}.dashboard-summary-payday{flex:0 0 auto;margin:0;padding:9px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface)}.dashboard-summary-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.dashboard-kpi-section{margin-bottom:18px}.dashboard-currency-kpis{padding-top:15px}.dashboard-currency-kpis+.dashboard-currency-kpis{margin-top:15px;border-top:1px solid var(--color-border)}.dashboard-currency-kpis h3{margin:0 0 10px;color:var(--color-primary);font-size:13px;font-weight:700}.dashboard-kpi-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:0}.dashboard-kpi-list>div{display:grid;align-content:start;gap:5px;min-width:0}.dashboard-kpi-list dt{color:var(--color-text-secondary);font-size:11px;line-height:1.4}.dashboard-kpi-list dd{margin:0;color:var(--color-text);font-size:15px;font-variant-numeric:tabular-nums;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.dashboard-summary-section{min-width:0;padding:20px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface)}.dashboard-summary-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:15px;border-bottom:1px solid var(--color-border)}.dashboard-summary-section-heading>div{min-width:0}.dashboard-summary-section h2{margin:0;color:var(--color-text);font:500 24px/1.3 var(--font-heading);overflow-wrap:anywhere}.dashboard-summary-section-heading p{margin:5px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.dashboard-summary-link{min-height:40px;flex:0 0 auto;padding:0 6px;border:0;color:var(--color-action-contrast);background:transparent;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;transition:color .14s ease-out}.dashboard-summary-link:hover{color:var(--color-primary)}.dashboard-summary-link:active{transform:scale(.98)}.dashboard-summary-link:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.dashboard-summary-list{min-width:0}.dashboard-payroll-row,.dashboard-obligation-row,.dashboard-financial-record{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;padding:15px 0;border-bottom:1px solid var(--color-border)}.dashboard-summary-list>:last-child{border-bottom:0}.dashboard-summary-list h3{min-width:0;margin:0;color:var(--color-text);font-size:14px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.dashboard-payroll-values{display:grid;grid-template-columns:repeat(2,minmax(112px,1fr));gap:12px 20px;min-width:min(52%,330px);margin:0}.dashboard-payroll-values>div{min-width:0}.dashboard-payroll-values dt{color:var(--color-text-secondary);font-size:11px;line-height:1.4}.dashboard-payroll-values dd{margin:4px 0 0;color:var(--color-text);font-size:14px;font-variant-numeric:tabular-nums;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.dashboard-obligation-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 10px;min-width:0}.dashboard-obligation-copy>span:not(.dashboard-obligation-status),.dashboard-financial-record>div>span{color:var(--color-text-secondary);font-size:12px;line-height:1.45}.dashboard-obligation-status{grid-column:1 / -1;color:var(--color-text-secondary);font-size:11px;line-height:1.4}.dashboard-obligation-status.status-paid{color:var(--color-positive)}.dashboard-obligation-status.status-partial{color:var(--color-warning-contrast)}.dashboard-obligation-row>strong,.dashboard-financial-record>strong{flex:0 0 auto;color:var(--color-text);font-size:14px;font-variant-numeric:tabular-nums;font-weight:600;text-align:right;overflow-wrap:anywhere}.dashboard-obligation-share{flex:0 0 auto;color:var(--color-text-secondary);font-size:12px;font-variant-numeric:tabular-nums;text-align:right}.dashboard-obligation-amounts{display:grid;flex:0 0 auto;justify-items:end;gap:4px;max-width:46%}.dashboard-obligation-amounts>span:not(.dashboard-obligation-share){color:var(--color-text-secondary);font-size:11px;font-variant-numeric:tabular-nums;text-align:right}.dashboard-summary-records{margin-top:18px}.dashboard-financial-record>div{display:grid;min-width:0;gap:4px}.dashboard-summary-inline-empty{margin:17px 0 3px;color:var(--color-text-secondary);font-size:13px;line-height:1.55}.app-shell[data-theme=dark] .dashboard-state-message,.app-shell[data-theme=dark] .dashboard-summary-period,.app-shell[data-theme=dark] .dashboard-summary-payday,.app-shell[data-theme=dark] .dashboard-summary-section-heading p,.app-shell[data-theme=dark] .dashboard-payroll-values dt,.app-shell[data-theme=dark] .dashboard-obligation-copy>span,.app-shell[data-theme=dark] .dashboard-obligation-status,.app-shell[data-theme=dark] .dashboard-financial-record>div>span,.app-shell[data-theme=dark] .dashboard-summary-inline-empty{color:#b7c4b9}.app-shell[data-theme=dark] .dashboard-summary-section,.app-shell[data-theme=dark] .dashboard-summary-payday{color:#e4ece6;background:#1a261e;border-color:#35473a}.app-shell[data-theme=dark] .dashboard-filters label,.app-shell[data-theme=dark] .dashboard-kpi-list dt,.app-shell[data-theme=dark] .dashboard-obligation-share,.app-shell[data-theme=dark] .dashboard-obligation-amounts>span:not(.dashboard-obligation-share){color:#b7c4b9}.app-shell[data-theme=dark] .dashboard-filters select{color:#e4ece6;background:#17221a;border-color:#35473a}.app-shell[data-theme=dark] .dashboard-currency-kpis h3{color:#a9d1b8}.app-shell[data-theme=dark] .dashboard-kpi-list dd{color:#e4ece6}.app-shell[data-theme=dark] .dashboard-summary-header h1,.app-shell[data-theme=dark] .dashboard-summary-section h2,.app-shell[data-theme=dark] .dashboard-summary-list h3,.app-shell[data-theme=dark] .dashboard-payroll-values dd,.app-shell[data-theme=dark] .dashboard-obligation-row>strong,.app-shell[data-theme=dark] .dashboard-financial-record>strong{color:#e4ece6}.app-shell[data-theme=dark] .dashboard-summary-section-heading,.app-shell[data-theme=dark] .dashboard-payroll-row,.app-shell[data-theme=dark] .dashboard-obligation-row,.app-shell[data-theme=dark] .dashboard-financial-record{border-color:#35473a}.app-shell[data-theme=dark] .dashboard-summary-link{color:#c98a72}.app-shell[data-theme=dark] .dashboard-obligation-status.status-paid{color:#72c796}.app-shell[data-theme=dark] .dashboard-obligation-status.status-partial{color:#e0b56e}@media(prefers-color-scheme:dark){.app-shell[data-theme=system] .dashboard-state-message,.app-shell[data-theme=system] .dashboard-summary-period,.app-shell[data-theme=system] .dashboard-summary-payday,.app-shell[data-theme=system] .dashboard-summary-section-heading p,.app-shell[data-theme=system] .dashboard-payroll-values dt,.app-shell[data-theme=system] .dashboard-obligation-copy>span,.app-shell[data-theme=system] .dashboard-obligation-status,.app-shell[data-theme=system] .dashboard-financial-record>div>span,.app-shell[data-theme=system] .dashboard-summary-inline-empty{color:#b7c4b9}.app-shell[data-theme=system] .dashboard-summary-section,.app-shell[data-theme=system] .dashboard-summary-payday{color:#e4ece6;background:#1a261e;border-color:#35473a}.app-shell[data-theme=system] .dashboard-summary-header h1,.app-shell[data-theme=system] .dashboard-summary-section h2,.app-shell[data-theme=system] .dashboard-summary-list h3,.app-shell[data-theme=system] .dashboard-payroll-values dd,.app-shell[data-theme=system] .dashboard-obligation-row>strong,.app-shell[data-theme=system] .dashboard-financial-record>strong{color:#e4ece6}.app-shell[data-theme=system] .dashboard-summary-section-heading,.app-shell[data-theme=system] .dashboard-payroll-row,.app-shell[data-theme=system] .dashboard-obligation-row,.app-shell[data-theme=system] .dashboard-financial-record{border-color:#35473a}.app-shell[data-theme=system] .dashboard-summary-link{color:#c98a72}.app-shell[data-theme=system] .dashboard-filters label,.app-shell[data-theme=system] .dashboard-kpi-list dt,.app-shell[data-theme=system] .dashboard-obligation-share,.app-shell[data-theme=system] .dashboard-obligation-amounts>span:not(.dashboard-obligation-share){color:#b7c4b9}.app-shell[data-theme=system] .dashboard-filters select{color:#e4ece6;background:#17221a;border-color:#35473a}.app-shell[data-theme=system] .dashboard-currency-kpis h3{color:#a9d1b8}.app-shell[data-theme=system] .dashboard-kpi-list dd{color:#e4ece6}.app-shell[data-theme=system] .dashboard-obligation-status.status-paid{color:#72c796}.app-shell[data-theme=system] .dashboard-obligation-status.status-partial{color:#e0b56e}}@media(min-width:900px){.dashboard-summary{padding-top:36px}.dashboard-summary-header h1{font-size:40px}.dashboard-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}@media(max-width:520px){.dashboard-summary-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:20px}.dashboard-summary-header h1{font-size:32px}.dashboard-filters{grid-template-columns:minmax(0,1fr);width:100%}.dashboard-kpi-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.dashboard-summary-period,.dashboard-summary-payday{font-size:13px}.dashboard-summary-grid{gap:12px}.dashboard-summary-section{padding:16px 13px}.dashboard-summary-section h2{font-size:22px}.dashboard-payroll-row,.dashboard-obligation-row,.dashboard-financial-record{align-items:flex-start;flex-direction:column;gap:9px}.dashboard-payroll-values{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0;gap:9px}.dashboard-obligation-copy{width:100%}.dashboard-obligation-row>strong,.dashboard-financial-record>strong{text-align:left}.dashboard-obligation-amounts{justify-items:start;max-width:100%}.dashboard-obligation-amounts>span:not(.dashboard-obligation-share),.dashboard-obligation-share{text-align:left}}@media(min-width:1200px){.dashboard-summary-header{align-items:flex-end}}@media(prefers-reduced-motion:reduce){.dashboard-summary-link{transition:none}.dashboard-summary-link:active{transform:none}}.offline-status{position:relative;padding:12px 16px;color:inherit;background:inherit;border-bottom:1px solid var(--color-border);font-size:13px;overflow-wrap:anywhere}.offline-status p{margin:0 0 8px}.offline-status summary{cursor:pointer;padding-block:8px}.offline-status ul{padding-inline-start:20px;max-height:240px;overflow-y:auto}.offline-status li{margin-block:12px}.offline-status__actions{display:flex;flex-wrap:wrap;gap:8px}.offline-status button{padding:8px 12px;min-height:44px;border:1px solid var(--color-border);border-radius:8px;background:transparent;color:inherit;font:inherit;cursor:pointer}.offline-status button:hover{text-decoration:underline}.offline-status button:focus-visible,.offline-status summary:focus-visible{outline:2px solid currentColor;outline-offset:3px}.offline-status button:disabled{opacity:.6;cursor:wait}.offline-status dl{margin-block:8px}.offline-status dl>div{display:flex;flex-wrap:wrap;gap:4px 12px}.offline-status dt{color:inherit}.offline-status dd{margin:0;font-variant-numeric:tabular-nums}@media(max-width:680px){.year-select{height:44px;padding-inline:10px}.app-shell .topbar .topbar-actions .year-select select:disabled{opacity:0}.year-select:focus-within{outline:2px solid var(--color-focus);outline-offset:3px}}.settings-region-hint{margin:0;max-width:48ch;color:var(--color-text-secondary);font-size:12px;line-height:1.7}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-region-hint{color:#b3beb5}.settings-format-preview{width:100%;padding:16px 0;border-block:1px solid var(--color-border)}.settings-format-preview h3{font-size:14px;margin:0 0 12px}.settings-format-preview output{display:grid;gap:10px;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.settings-format-preview strong{font-variant-numeric:tabular-nums}.settings-account-profile{width:100%;padding:0 0 22px;border-bottom:1px solid var(--color-border)}.settings-account-profile input{font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;min-height:44px;padding:9px 12px;min-width:0;box-sizing:border-box}.settings-hub-mfa h3{margin:0;font-size:16px}.settings-hub-mfa img{background:#fff;padding:12px;box-sizing:content-box;max-width:calc(100% - 24px)}@media(max-width:900px),(pointer:coarse){.settings-account-profile input{font-size:16px}}.settings-manager{min-width:0}.settings-manager :is(.accounts-layout,.books-layout){grid-template-columns:minmax(0,1fr)}.settings-manager .accounts-page{margin:0}@media(max-width:600px){.settings-manager-layout .settings-hub-content{padding:14px}}.settings-manager .book-card{display:block}.settings-manager .book-card-main{width:100%}.settings-manager .book-card-copy{flex:1 1 auto;min-width:0}.settings-manager .book-record-count{margin:10px 0}.settings-manager .book-actions{margin-top:12px;flex-wrap:wrap;justify-content:flex-end}.settings-categories-manager,.settings-notifications{display:grid;gap:16px}.settings-category-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin-top:18px}.settings-category-group{min-width:0;padding:16px;border:1px solid var(--border, #e2ddd5);border-radius:14px;background:var(--surface, #fff)}.settings-category-group h3{display:flex;align-items:center;gap:9px;margin:0 0 10px;color:var(--text-primary, #1a1e1b);font-size:15px}.settings-category-group h3 svg{width:18px;height:18px;flex:0 0 auto}.settings-category-group ul{margin:0;padding-left:24px}.settings-category-group li,.settings-category-group p{overflow-wrap:anywhere;color:var(--text-secondary, #565c54)}.settings-category-group p{margin:0}.settings-notifications .settings-hub-disabled-toggle{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--border, #e2ddd5);border-radius:14px;background:var(--surface, #fff)}.settings-notifications input[type=checkbox]{width:20px;height:20px;flex:0 0 auto;accent-color:var(--primary, var(--palette-brand, #1b4332))}.calendar-period-agenda{display:none}.calendar-workspace,.calendar-main-view,.calendar-period-inspector,.payroll-entry-preview{min-width:0}.payroll-entry-editor{display:contents}.payroll-entry-rates{display:none}@media(max-width:1179px){.payroll-entry-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-entry-fields>label:first-child,.payroll-entry-submit{grid-column:1 / -1}}.period-income-value{display:grid;gap:6px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page){font-size:14px;line-height:1.6;--workspace-ease: cubic-bezier(.23, 1, .32, 1)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page-heading,.payroll-page .books-page-heading){align-items:start;gap:14px;margin-bottom:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) h1{font:500 clamp(28px,2.6vw,34px) / 1.15 var(--font-heading);letter-spacing:-.025em}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) :is(h2,h3){color:var(--color-text);font-family:var(--font-heading);font-weight:500;letter-spacing:-.015em}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) h2{font-size:22px;line-height:1.25}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) h3{font-size:21px;line-height:1.3}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) .books-eyebrow{display:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) :is(.books-intro,.panel-heading p,.payroll-scope-note){color:var(--color-text-secondary);font-size:13px;line-height:1.6}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) :is(.panel,.payroll-employment-form,.calendar-obligation-form){border-radius:12px;box-shadow:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) :is(button,input,select,summary){min-height:44px;font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) button{white-space:normal;overflow-wrap:anywhere;line-height:1.4;transition:transform .12s var(--workspace-ease),background-color .12s ease}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) button:active:not(:disabled){transform:scale(.98)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) :is(label,.payroll-period-select,.payroll-period-summary){color:var(--color-text-secondary);font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) :is(input,select){border-radius:8px;padding-inline:12px;font:inherit;font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) :is(.calendar-empty,.calendar-empty-inline,.payroll-empty){padding:18px 16px;color:var(--color-text-secondary);font-size:14px;line-height:1.7}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) :is(.cycle-badge,.period-status,.payroll-draft-badge,.payroll-confirmed-badge,.payroll-closed-badge,.payroll-voided-badge){font-size:12px;line-height:1.4}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-workspace{display:grid;align-items:start;gap:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-panel,.period-detail-panel,.calendar-inspector-empty,.calendar-obligations-panel){padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar{gap:16px;margin-bottom:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-view-tabs{background:var(--color-surface-secondary);border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-tab{padding:0 14px;font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-tab-active{box-shadow:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .month-controls{margin:0;flex:1 1 230px;justify-content:space-between}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .month-controls strong{min-width:0;font:500 24px / 1.3 var(--font-heading);text-transform:capitalize}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .month-arrow{width:44px;height:44px;font-size:22px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-book-label{font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .month-grid{gap:5px;border:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .weekday-label{padding-bottom:8px;border:0;background:transparent;font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day{min-height:76px;padding:8px 5px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day-empty{opacity:.4;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day-number{font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip{display:grid;gap:4px;padding:6px;text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-period-chip,.year-period-chip) :is(span,strong){font-size:12px;white-space:normal;overflow:visible}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-selected{outline:2px solid var(--color-primary);outline-offset:1px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-inspector{container-type:inline-size}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-inspector-empty h2{margin-top:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-inspector-empty p{margin-bottom:0;color:var(--color-text-secondary);font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-heading{display:grid;grid-template-columns:minmax(0,1fr);padding-bottom:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-title :is(h2,p){margin:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.period-detail-title p,.period-payday,.calendar-schedule-note){font-size:13px;line-height:1.6}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary{padding:0;border:0;margin-top:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary li{grid-template-columns:minmax(0,1fr);padding:16px;gap:16px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary li>strong{font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-income-value{padding-top:12px;border-top:1px solid var(--color-border);text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-income-value span{font-size:12px;text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-income-value strong{color:var(--color-text);font:500 24px / 1.25 var(--font-heading);font-variant-numeric:tabular-nums}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading{margin-top:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading p{font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card{grid-template-columns:minmax(0,1fr);padding:16px;gap:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card :is(.period-obligation-amount,.period-status){grid-column:auto;grid-row:auto;justify-self:start;text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main strong{font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.period-obligation-main span,.period-obligation-due){font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-amount{font-size:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-grid{grid-template-columns:minmax(0,1fr);gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-month-card{padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-month-card p{font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-period-chip{padding:10px;gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-form h3{margin:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-form,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-form{padding:16px;gap:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-obligation-meta,.calendar-obligation-main,.calendar-obligation-main strong,.payroll-employment-main,.payroll-employment-main strong,.payroll-deduction-summary){font-size:13px;line-height:1.6}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-form-pair,.payroll-form-pair){gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-panel{padding:16px;margin-bottom:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-toolbar{align-items:center;gap:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-select{flex:1 1 300px;gap:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-select select{min-height:48px;width:100%;font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-form{display:grid;gap:0;padding:0;margin:0 0 16px;overflow:visible}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-editor{display:grid;align-content:start;gap:14px;min-width:0;padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;margin:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-fields>label:first-child,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-rates,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-submit{grid-column:1 / -1}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-fields>label{min-width:0;font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-rates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:14px;gap:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-rates :is(dt,dd){margin:0;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-rates dt{color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-rates dd{margin-top:6px;color:var(--color-text);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-submit{width:100%;min-width:0;min-height:46px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-preview{padding:16px;border-top:1px solid var(--color-border);background:var(--color-surface-secondary);border-radius:0 0 12px 12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-preview .payroll-estimate{margin:0;padding:0;border:0;background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.payroll-preview-empty,.payroll-estimate-loading){min-height:112px;margin:0;color:var(--color-text-secondary);font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-preview-empty h3{margin-top:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-hours-input{min-height:44px;max-width:100%}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-hours-input input{min-width:0;min-height:44px;font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-hours-input small{flex:0 0 auto;font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate :is(dt,dd),.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown>div{font-size:13px;line-height:1.6}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate dl>div{align-items:start;gap:16px;padding-block:9px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate dd{flex:0 0 auto;font-variant-numeric:tabular-nums}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate .payroll-estimate-net{display:grid;justify-items:start;margin-top:16px;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-estimate-net dd{font:500 clamp(24px,2.4vw,28px) / 1.2 var(--font-heading);font-variant-numeric:tabular-nums}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-records-heading{align-items:center;margin-block:16px 12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-card{padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.payroll-record-heading p,.payroll-hours-grid span,.payroll-hours-grid strong,.payroll-records-heading p,.payroll-audit-panel,.payroll-audit-panel time,.payroll-audit-panel p){font-size:13px;line-height:1.6}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown{max-width:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown>div{gap:16px;padding-block:10px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.payroll-estimated-net,.payroll-actual-net){display:grid;padding:12px;margin-block:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.payroll-estimated-net,.payroll-actual-net) strong{font:500 26px / 1.25 var(--font-heading);font-variant-numeric:tabular-nums}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-actions{gap:12px;padding-top:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-actions label{flex:1 1 200px;min-width:0;font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel{margin-top:16px;padding:12px 16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel>summary{font-size:14px;padding-block:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal{padding:16px;gap:14px;border-radius:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal-heading h2{font-size:28px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal-heading :is(p,button),.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-confirm-modal>p{font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal-heading button{min-width:44px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal[data-motion=enter]{animation:financial-dialog-enter .18s var(--workspace-ease)}@media(max-width:680px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-panel .month-grid{display:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-agenda{display:grid;gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-agenda-hidden{display:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period{display:grid;justify-items:start;gap:10px;padding:12px;border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);background:var(--color-surface-secondary);text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period>strong{font:500 24px / 1.3 var(--font-heading)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period>span:last-child{font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-selected{border-color:var(--color-primary);box-shadow:inset 3px 0 var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-inspector:not(.calendar-inspector-active){display:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-form-pair{grid-template-columns:minmax(0,1fr)}}@media(min-width:681px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-panel .calendar-period-agenda{display:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-editor,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-preview,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-card{padding:16px}}@media(min-width:1180px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-workspace{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-form{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-preview{border-top:0;border-left:1px solid var(--color-border);border-radius:0 12px 12px 0}}@media(prefers-reduced-motion:reduce){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.calendar-page,.payroll-page) button{transition:none;transform:none!important}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-modal[data-motion=enter]{animation:none}}@keyframes financial-dialog-enter{0%{opacity:0;transform:translateY(4px) scale(.97)}to{opacity:1;transform:none}}.calendar-overview,.calendar-legend,.period-obligation-date{display:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page{font-family:var(--font-body)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page-heading{align-items:end;margin-bottom:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page-heading h1{max-width:650px;color:var(--color-primary);font-weight:400;line-height:1.12}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page .books-intro{max-width:60ch;margin-bottom:0;font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-manage-button{min-height:48px;padding-inline:20px;border-radius:10px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:0 0 16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card{display:grid;align-content:start;gap:10px;min-width:0;padding:16px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card dt{color:var(--color-text-secondary);font-size:12px;font-weight:500}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card dd{margin:0;color:var(--color-primary);font:400 clamp(24px,2vw,28px) / 1.2 var(--font-heading);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card .calendar-overview-caption{color:var(--color-text-secondary);font:400 12px / 1.5 var(--font-body)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-last{background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-workspace{gap:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-panel{padding:16px;border-radius:10px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar .month-controls{grid-column:1 / -1;grid-row:2;justify-content:space-between;gap:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar .month-controls strong{color:var(--color-primary);font-size:22px;font-weight:400}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-view-tabs{justify-self:start;border:0;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-tab{padding-inline:12px;color:var(--color-text-secondary);background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-tab-active{color:var(--color-primary);background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-book-label{justify-self:end;color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page .month-arrow{border-color:transparent;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .month-grid{gap:6px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .weekday-label{color:var(--color-text-secondary);font-size:11px;font-weight:500}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day{min-height:76px;padding:8px 4px;border-color:transparent;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day-empty{opacity:.35}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day-number{color:var(--color-text-secondary);font-size:12px;font-variant-numeric:tabular-nums}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day-payday{background:var(--color-selection);border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip{width:100%;gap:4px;padding:6px 3px;color:var(--color-primary);background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip:hover{background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip :is(span,strong){font-size:11px;white-space:nowrap}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip.calendar-period-selected{color:var(--color-surface);background:var(--color-primary);outline:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip.calendar-period-selected:hover{color:var(--color-surface);background:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip.calendar-period-selected :is(span,strong){color:inherit}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip:focus-visible,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-legend{display:flex;flex-wrap:wrap;gap:12px 20px;padding:16px 2px 0;color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-legend>span{display:inline-flex;align-items:center;gap:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-legend i{width:9px;height:9px;border-radius:50%;background:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-legend .calendar-legend-payday{border:1px solid var(--color-primary);background:var(--color-selection)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-schedule-note{padding:12px 2px;margin:0;color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page .period-detail-panel{padding:0;border:0;background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-heading{gap:12px;padding:0 0 12px;border-bottom:1px solid var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-heading>button{justify-self:start;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-title h2{margin:10px 0 8px;color:var(--color-primary);font-weight:400}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-title p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payday{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary>h3,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading h3{font-size:22px;font-weight:400}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary li{padding:16px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-income-value strong{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading p{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-list{gap:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:16px;border-radius:10px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-date{display:grid;align-content:center;justify-items:center;grid-column:1;grid-row:1 / 3;align-self:start;min-height:54px;padding:6px;border-radius:8px;color:var(--color-primary);background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-date span{font-size:10px;text-transform:uppercase}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-date strong{font:500 24px / 1 var(--font-heading)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-due,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card .period-status{grid-column:2;min-width:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main strong{color:var(--color-text);font-size:15px;font-weight:600;line-height:1.5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main span,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-due{color:var(--color-text-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card .period-obligation-amount{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;width:100%;padding:14px;margin-top:4px;border-radius:8px;color:var(--color-primary);background:var(--color-surface-secondary);font:400 24px / 1.3 var(--font-heading);overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card .period-status{grid-column:1 / -1;padding:5px 10px;font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-status-pending,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-status-partial{color:var(--color-warning-contrast);background:var(--color-warning-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-inspector-empty{border-style:dashed;background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-inspector-empty h2{font-weight:400}@media(max-width:1100px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-number{display:none}}@media(max-width:680px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card{padding:12px 16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:16px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period>strong{grid-column:1;grid-row:1;font-size:26px;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period .cycle-badge{grid-column:2;grid-row:1}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period>span:last-child{grid-column:1 / -1;color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-selected{border-color:var(--color-primary);background:var(--color-surface-secondary);box-shadow:none}}@media(min-width:681px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-panel{padding:16px}}@media(min-width:1180px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-workspace{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview{gap:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card{min-height:104px;padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day{min-height:76px}}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.settings-heading,.books-page-heading){margin-bottom:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.settings-heading,.books-page-heading) h1{font:400 clamp(28px,2.6vw,34px) / 1.15 var(--font-heading);letter-spacing:-.025em}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.settings-card,.book-list-panel,.book-form-panel,.obligation-transfer-panel,.payroll-employments-panel){padding:16px;border-radius:10px;box-shadow:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.settings-card-heading,.panel-heading){margin-bottom:10px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.settings-page,.settings-form,.books-layout,.payroll-employment-layout){gap:12px;align-items:start}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-actions{margin-top:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-fields{gap:10px 12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.settings-fields,.settings-single-field,.settings-rate-form,.settings-convert-form) :is(input,select){min-height:44px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-single-field{max-width:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) :is(.book-card,.payroll-employment-card){padding:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .books-empty{padding:20px 12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .book-list{margin-top:10px}@media(min-width:1100px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-form{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-form>.settings-card:nth-of-type(n+5),.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-form>.settings-actions{grid-column:1 / -1}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-form>.settings-card:nth-of-type(-n+4) .settings-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .settings-form>.settings-card:first-of-type .settings-fields>label:first-child{grid-column:1 / -1}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px}}.calendar-obligation-layout{grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.calendar-obligation-list{align-content:start;gap:12px}.calendar-obligation-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px}.calendar-obligation-main{min-width:0;gap:6px}.calendar-obligation-main strong{font-size:14px;line-height:1.5;overflow-wrap:break-word}.calendar-obligation-main>span{font-size:12px;line-height:1.5;overflow-wrap:break-word}.calendar-obligation-main>.calendar-obligation-category{display:inline-flex;align-items:center;gap:6px;justify-self:start;width:fit-content;padding:4px 8px;border-radius:4px;color:var(--category-accent);background:color-mix(in srgb,var(--category-accent) 12%,var(--color-surface))}.calendar-obligation-category svg,.obligation-category-design-icon svg{width:16px;height:16px;flex:0 0 auto}.obligation-category-preview{display:inline-flex;align-items:center;gap:8px;width:fit-content;max-width:100%;padding:6px 10px;border-radius:4px;color:var(--category-accent);background:color-mix(in srgb,var(--category-accent) 12%,var(--color-surface));font-size:13px;overflow-wrap:anywhere}.obligation-category-preview .obligation-category-design-icon{display:inline-flex}.calendar-obligation-category[data-color=forest],.obligation-category-preview[data-color=forest]{--category-accent: var(--palette-brand, #1b4332)}.calendar-obligation-category[data-color=terracotta],.obligation-category-preview[data-color=terracotta]{--category-accent: #a64f37}.calendar-obligation-category[data-color=sage],.obligation-category-preview[data-color=sage]{--category-accent: #627b58}.calendar-obligation-category[data-color=blue],.obligation-category-preview[data-color=blue]{--category-accent: #285f91}.calendar-obligation-category[data-color=sky],.obligation-category-preview[data-color=sky]{--category-accent: #28758a}.calendar-obligation-category[data-color=rose],.obligation-category-preview[data-color=rose]{--category-accent: #a33f53}.calendar-obligation-amount{max-width:100%;font-size:14px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right}.calendar-obligation-meta,.calendar-obligation-card .book-actions{grid-column:1 / -1;width:100%;margin:0;gap:8px 12px}.calendar-obligation-meta>span:nth-last-child(2){flex-basis:100%}.calendar-obligation-card .book-actions{justify-content:flex-end}.calendar-obligation-card .book-actions button{min-height:44px}.calendar-obligation-form{gap:16px}.obligation-form-heading p,.obligation-form-hint{margin:6px 0 0;color:var(--color-text-secondary);font-size:12px;line-height:1.6}.obligation-category-field{display:grid;gap:8px;min-width:0}.obligation-category-add{justify-self:start;min-height:44px;padding:0 4px;border:0;color:var(--color-primary);background:transparent;font:600 12px / 1.5 var(--font-body);cursor:pointer}.obligation-category-add:hover{text-decoration:underline;text-underline-offset:4px}.obligation-category-create{display:grid;gap:12px;padding:12px;border-radius:8px;background:var(--color-surface)}.obligation-category-design-field{display:grid;gap:8px;min-width:0;padding:0;border:0}.obligation-category-design-field legend{margin-bottom:8px;padding:0;color:var(--color-text-secondary);font-size:12px;font-weight:600}.obligation-category-icon-options{display:grid;grid-template-columns:repeat(5,40px);gap:6px}.obligation-category-icon-choice{display:grid;width:40px;height:40px;place-items:center;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);background:var(--color-surface);cursor:pointer}.obligation-category-icon-choice svg{width:20px;height:20px}.obligation-category-icon-choice[aria-pressed=true]{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface-secondary)}.obligation-category-color-options{display:flex;flex-wrap:wrap;gap:10px}.obligation-category-color-choice{width:32px;height:32px;padding:0;border:2px solid var(--color-surface);border-radius:50%;box-shadow:0 0 0 1px var(--color-border);cursor:pointer}.obligation-category-color-choice[data-color=forest]{background:var(--palette-brand, #1b4332)}.obligation-category-color-choice[data-color=terracotta]{background:var(--palette-accent, #c86d51)}.obligation-category-color-choice[data-color=sage]{background:var(--palette-sage, #8fa382)}.obligation-category-color-choice[data-color=blue]{background:#285f91}.obligation-category-color-choice[data-color=sky]{background:#4790a3}.obligation-category-color-choice[data-color=rose]{background:#a33f53}.obligation-category-icon-choice:focus-visible,.obligation-category-color-choice:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.obligation-category-color-choice[aria-pressed=true]{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-primary)}.obligation-category-error{margin:0;color:var(--color-negative);font-size:12px;line-height:1.5}.obligation-category-error .obligation-category-add{display:block}.calendar-obligation-form .book-form-actions{flex-wrap:wrap;gap:8px}.calendar-obligation-form .book-form-actions button{min-height:44px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-form{padding:20px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-editing{border-color:var(--color-primary);background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-amount{color:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-form input:focus-visible,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-obligation-form select:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}@media(max-width:400px){.calendar-obligation-card{grid-template-columns:minmax(0,1fr)}.calendar-obligation-amount{text-align:left}}@media(min-width:1100px){.calendar-obligation-layout{grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:20px}}@media(prefers-reduced-motion:no-preference){.obligation-category-create[data-motion=enter]{animation:obligation-category-enter .18s cubic-bezier(.23,1,.32,1) both;transform-origin:top left}.calendar-obligation-card{transition:background-color .16s ease,border-color .16s ease}.calendar-obligation-card button,.calendar-obligation-form button{transition:transform .12s cubic-bezier(.23,1,.32,1),background-color .12s ease}.calendar-obligation-card button:active:not(:disabled):not(:focus-visible),.calendar-obligation-form button:active:not(:disabled):not(:focus-visible){transform:scale(.98)}}@keyframes obligation-category-enter{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.calendar-obligation-form .calendar-form-pair{align-items:end}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page{gap:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page-heading{align-items:center;gap:16px;margin-bottom:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page-heading>div{min-width:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page-heading h1{font-size:clamp(30px,3vw,38px)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page .books-intro{margin-top:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-manage-button{min-height:44px;flex:0 0 auto;padding-inline:16px;border-radius:8px;font-size:13px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:20px;overflow:hidden;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-last{min-height:0;gap:6px;padding:16px 20px;border:0;border-radius:0;background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card+.calendar-overview-card{border-left:1px solid var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card dt{font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card dd{font-size:clamp(20px,2vw,26px);line-height:1.25}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card .calendar-overview-caption{font-size:11px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-workspace{gap:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-panel{padding:20px;border-radius:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar{display:flex;flex-wrap:nowrap;align-items:center;gap:16px;margin-bottom:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-view-tabs{flex:0 0 auto}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar .month-controls{flex:1 1 auto;min-width:180px;justify-content:center;gap:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar .month-controls strong{min-width:180px;text-align:center}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-book-label{flex:0 0 auto;justify-self:auto;padding:6px 10px;border-radius:20px;color:var(--color-primary);background:var(--color-surface-secondary);font-size:11px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .month-grid{gap:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .weekday-label{min-height:32px;padding-bottom:4px;font-size:11px;font-weight:600}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day{min-height:88px;padding:8px;border-radius:10px;transition:border-color .14s ease,background-color .14s ease}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day-payday{border-color:color-mix(in srgb,var(--color-primary) 22%,var(--color-border));background:var(--color-selection)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day-number{font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip{min-height:36px;justify-content:flex-start;padding:6px 8px;border-radius:7px;font-size:11px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip :is(span,strong){font-size:11px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-chip.calendar-period-selected{box-shadow:0 2px 5px #1b433229}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-period-inspector{min-width:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page .period-detail-panel,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page .calendar-inspector-empty{min-height:320px;padding:20px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-heading{gap:12px;padding-bottom:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-heading>button{min-height:38px;padding-inline:10px;font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-title h2{margin-top:4px;font-size:25px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-title p,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payday{font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading{margin-top:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading h3{font-size:18px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card{gap:8px 12px;padding:12px;border-radius:9px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-amount{font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-inspector-empty{display:grid;align-content:center;justify-items:start;padding-inline:24px!important;background:var(--color-surface-secondary)!important}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-inspector-empty h2{margin:0 0 8px;color:var(--color-primary);font-size:22px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-inspector-empty p{max-width:30ch;margin:0;line-height:1.6}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-legend{gap:12px 20px}@media(min-width:1180px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-workspace{grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:24px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page .period-detail-panel{position:sticky;top:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-day{min-height:96px}}@media(max-width:760px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview{grid-template-columns:minmax(0,1fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:12px 16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card+.calendar-overview-card{border-top:1px solid var(--color-border);border-left:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card dd:not(.calendar-overview-caption){grid-column:2;grid-row:1 / span 2;text-align:right}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-overview-card .calendar-overview-caption{grid-column:1;grid-row:2}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-page-heading{align-items:flex-start}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-manage-button{min-height:44px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar{flex-wrap:wrap;gap:8px 12px;margin-bottom:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar .month-controls{order:3;flex-basis:100%;justify-content:space-between}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-toolbar .month-controls strong{min-width:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-book-label{margin-left:auto}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period{padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .calendar-agenda-period>strong{font-size:25px}}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-card{padding:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-heading h3{font-size:19px;line-height:1.25}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-heading p{margin-top:4px;font-size:11px;line-height:1.4}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-hours-grid{gap:8px;margin-top:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-hours-grid>div{gap:4px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;margin-top:8px;padding-block:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-card .payroll-breakdown>div{align-items:baseline;gap:8px;padding-block:4px;font-size:11px;line-height:1.4}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown-deductions{display:grid;grid-column:1 / -1;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown-deductions ul{grid-column:1 / -1;gap:4px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown>:is(.payroll-estimated-net,.payroll-actual-net){display:flex;grid-column:1 / -1;align-items:baseline;justify-content:space-between;gap:12px;margin:8px 0 0;padding:8px 12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown>:is(.payroll-estimated-net,.payroll-actual-net) strong{font-size:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown>:is(.payroll-tax-warning,.payroll-scope-note){grid-column:1 / -1}@media(max-width:680px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown{grid-template-columns:minmax(0,1fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown-deductions,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-breakdown>:is(.payroll-estimated-net,.payroll-actual-net,.payroll-tax-warning,.payroll-scope-note){grid-column:auto}}.calendar-page .calendar-obligation-card button:active:focus-visible,.calendar-page .calendar-obligation-form button:active:focus-visible{transform:none!important;transition:none!important}.payroll-native-confirmation{position:fixed;inset:0;margin:auto;box-sizing:border-box;width:min(620px,calc(100% - 20px));max-height:calc(100dvh - 20px);color:var(--color-text)}.payroll-native-confirmation::backdrop{background:#141f188a}.payroll-native-confirmation:not([open]){display:none}.payroll-modal-backdrop{inset:auto;top:var(--dialog-viewport-top, 0px);left:var(--dialog-viewport-left, 0px);width:var(--dialog-viewport-width, 100%);height:var(--dialog-viewport-height, 100dvh);box-sizing:border-box;overflow:hidden;overscroll-behavior:contain;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.payroll-modal-backdrop .payroll-modal{min-height:0;max-height:100%;box-sizing:border-box;overscroll-behavior:contain;scroll-padding-block:80px 20px}.payroll-modal-heading{position:sticky;top:-16px;z-index:2;margin:-16px -13px 0;padding:16px 13px 10px;background:inherit}@media(max-width:768px),(hover:none)and (pointer:coarse){:root body input:not([type=checkbox]):not([type=radio]):not([type=range]),:root body select,:root body textarea{font-size:16px}}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-panel{padding:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding-bottom:16px}.period-detail-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-topline>button{min-height:36px;padding:6px 10px;font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-title{gap:6px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-title h2{margin:0;font-size:clamp(24px,2vw,28px);line-height:1.2}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-detail-title p{margin:0;font-size:12px;line-height:1.5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payday{width:fit-content;max-width:100%;padding:8px 10px;border-radius:8px;color:var(--color-primary);background:var(--color-surface-secondary);font-size:12px;font-weight:600;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary{margin-top:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary>h3,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading h3{margin:0;font-size:20px;line-height:1.3}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary ul{gap:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary li{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;padding:12px 0;border:0;border-bottom:1px solid var(--color-border);border-radius:0;background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary li>strong{grid-column:1 / -1;font:600 13px / 1.4 var(--font-body);overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-income-value{min-width:0;gap:6px;padding:10px;border-radius:8px;background:var(--color-surface-secondary);text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-income-value span{color:var(--color-text-secondary);font-size:11px;line-height:1.35;text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-income-value strong{display:block;color:var(--color-text);font:500 clamp(16px,1.35vw,19px) / 1.3 var(--font-heading);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-income-confirmed strong{color:var(--color-positive)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-payroll-summary li>span{grid-column:1 / -1;color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading{margin:20px 0 12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligations-heading p{margin:4px 0 0;font-size:12px;line-height:1.5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-list{gap:8px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:12px;border-radius:9px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-date{grid-column:1;grid-row:1 / span 2;min-height:48px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main{grid-column:2;grid-row:1;gap:2px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main strong{font-size:13px;line-height:1.4}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main span,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-due{color:var(--color-text-secondary);font-size:11px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-due{grid-column:2;grid-row:2}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card .period-obligation-amount{grid-column:3;grid-row:1;width:auto;padding:0;margin:0;color:var(--color-primary);background:transparent;font:500 17px / 1.3 var(--font-heading);text-align:right}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card .period-status{grid-column:3;grid-row:2;justify-self:end;padding:4px 8px}@media(max-width:420px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card{grid-template-columns:38px minmax(0,1fr);gap:6px 10px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-date{grid-column:1;grid-row:1 / span 3}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-main,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-due{grid-column:2}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card .period-obligation-amount{grid-column:2;grid-row:auto;justify-self:start;text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-card .period-status{grid-column:2;grid-row:auto;justify-self:start}}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-panel{margin-bottom:20px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-select{max-width:720px;gap:8px;color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-select select{min-height:48px;border-color:var(--color-border);color:var(--color-text);background:var(--color-surface);font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-summary{justify-content:flex-end;color:var(--color-text-secondary);font-size:12px;font-variant-numeric:tabular-nums}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-workspace{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:24px}.payroll-period-primary,.payroll-period-secondary{min-width:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-form{display:grid;gap:0;margin:0;padding:0;overflow:hidden}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-editor{display:grid;align-content:start;gap:16px;padding:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:16px;margin:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-fields>label{gap:8px;color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-fields select{min-height:46px;font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-submit{min-height:46px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-preview{min-width:0;padding:18px 20px;border-top:1px solid var(--color-border);background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-preview .payroll-estimate{margin:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-empty{display:grid;justify-items:start;gap:12px;padding:24px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-empty :is(h2,p){margin:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-records-heading{margin:0 0 16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-list{gap:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-card{padding:20px;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 18px #232e270d}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-heading{align-items:center;padding-bottom:14px;border-bottom:1px solid var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-record-heading h3{font-size:22px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-audit-panel{margin-top:18px}@media(min-width:1180px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-form{grid-template-columns:minmax(0,1fr)}}@media(max-width:900px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-toolbar{grid-template-columns:minmax(0,1fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-period-summary{justify-content:flex-start}}@media(max-width:520px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-editor{padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-fields{grid-template-columns:minmax(0,1fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-entry-fields>label{grid-column:auto}}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employments-panel{padding:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employments-panel>.panel-heading{margin-bottom:20px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employments-panel>.panel-heading h2{font-size:24px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-layout{grid-template-columns:minmax(0,1.25fr) minmax(300px,.8fr);align-items:start;gap:24px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-list{gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-card{display:grid;gap:16px;padding:18px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:0 4px 18px #232e270d}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-inactive{background:var(--color-surface-secondary);box-shadow:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-main{gap:12px;color:var(--color-text-secondary)}.payroll-employment-top{display:flex;align-items:start;justify-content:space-between;flex-wrap:wrap;gap:10px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-top>strong{color:var(--color-text);font:500 22px / 1.25 var(--font-heading)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-top :is(.obligation-active-label,.obligation-inactive-label){padding:5px 9px;border-radius:999px;font-size:11px}.payroll-employment-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payroll-employment-facts>div{display:grid;align-content:start;gap:5px;min-width:0;padding:12px;border-radius:8px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-facts span{color:var(--color-text-secondary);font-size:11px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-facts strong{color:var(--color-text);font-size:13px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-deduction-summary{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:12px 0 0;border-top:1px solid var(--color-border);list-style:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-deduction-summary li{max-width:100%;padding:6px 9px;border-radius:7px;color:var(--color-text-secondary);background:var(--color-surface-secondary);font-size:11px;line-height:1.5;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-card .book-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:12px;border-top:1px solid var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-card .book-actions button{min-height:40px;padding-inline:12px;font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-form{gap:18px;padding:20px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-form>h3{margin:0;padding-bottom:14px;border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:22px}.payroll-employment-core{display:grid;gap:14px;min-width:0}.payroll-employment-core .payroll-form-pair{gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-form label{gap:7px;color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-form :is(input,select){min-height:44px;border-color:var(--color-border);border-radius:8px;color:var(--color-text);background:var(--color-surface);font:inherit;font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-deductions-heading{margin-top:2px;padding-top:16px;border-top:1px solid var(--color-border);gap:10px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-deductions-heading strong{color:var(--color-text);font-size:15px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-deduction-form{gap:12px;padding:14px;border-color:var(--color-border);border-radius:9px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-form .book-form-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:16px;border-top:1px solid var(--color-border)}@media(max-width:900px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-layout{grid-template-columns:minmax(0,1fr);gap:20px}}@media(max-width:520px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employments-panel{padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-facts{grid-template-columns:minmax(0,1fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-form{padding:16px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .payroll-employment-core .payroll-form-pair{grid-template-columns:minmax(0,1fr)}}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-payment{display:grid;grid-column:3;grid-row:1 / span 2;justify-items:end;align-content:center;gap:6px;min-width:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-payment .period-obligation-amount{grid-column:auto;grid-row:auto;max-width:100%;color:var(--color-primary);font:500 18px / 1.3 var(--font-heading);font-variant-numeric:tabular-nums;text-align:right}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-payment .period-status{grid-column:auto;grid-row:auto;justify-self:end}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-paid-date{color:var(--color-text-secondary);font-size:11px;text-align:right}.period-payment-action{min-height:36px!important;padding:6px 10px;border:1px solid var(--color-primary);border-radius:7px;color:var(--color-on-primary, #fff);background:var(--color-primary);font:600 11px / 1.35 var(--font-body);cursor:pointer}.period-payment-action:hover{background:#24563f}.period-payment-action:disabled{opacity:.55;cursor:wait}.period-payment-action.period-payment-revert{color:var(--color-primary);background:var(--color-surface)}.period-payment-action.period-payment-revert:hover{background:var(--color-surface-secondary)}.period-payment-amount-field{display:grid;gap:4px;max-width:150px;color:var(--color-text-secondary);font-size:10px;text-align:right}.period-payment-amount-field input{width:100%;min-width:0;min-height:36px!important;padding:6px 8px;border:1px solid var(--color-border);border-radius:7px;color:var(--color-text);background:var(--color-surface);font:500 13px / 1.4 var(--font-body);font-variant-numeric:tabular-nums}.period-payment-amount-field input:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media(max-width:420px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-payment{grid-column:2;grid-row:auto;justify-items:start}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-payment .period-obligation-amount{text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .period-obligation-payment .period-status{justify-self:start}.period-payment-amount-field{text-align:left}}.calendar-page .calendar-obligation-list{gap:8px}.calendar-page .calendar-obligation-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:12px}.calendar-page .calendar-obligation-main{gap:4px}.calendar-page .calendar-obligation-main strong{line-height:1.35}.calendar-page .calendar-obligation-main>.calendar-obligation-category{padding:3px 6px;font-size:11px}.calendar-page .calendar-obligation-meta{grid-column:1;gap:4px 8px;font-size:11px}.calendar-page .calendar-obligation-meta>span:nth-last-child(2){flex-basis:auto}.calendar-page .calendar-obligation-card .book-actions{grid-column:2;width:auto;gap:6px}.calendar-page .calendar-obligation-card .book-actions button{padding-inline:10px}.calendar-obligation-form{scroll-margin-top:96px}@media(max-width:600px){.calendar-page .calendar-obligation-meta,.calendar-page .calendar-obligation-card .book-actions{grid-column:1 / -1}}.calendar-page .calendar-payment-chip{display:block;min-width:0;padding:4px 5px;margin-top:4px;border-radius:4px;background:var(--color-surface);border-left:3px solid var(--color-action);color:var(--color-text, inherit);font-size:11px;line-height:1.35;overflow-wrap:anywhere}.calendar-page .calendar-payment-paid{opacity:.7}.calendar-payments-legend{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-secondary);font-size:12px}.calendar-payments-legend>span{color:var(--color-action)}.calendar-page .calendar-day:has(.calendar-payment-chip){min-height:96px}.calendar-agenda-day{display:grid;gap:8px;min-width:0}.calendar-page .calendar-agenda-payment{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 12px;padding:10px;margin:0;font-size:12px}.calendar-agenda-payment>span{grid-column:2;font-variant-numeric:tabular-nums}.calendar-page .month-grid .calendar-payment-chip{width:100%;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-page .month-grid .calendar-payment-chip>span{display:inline}.app-shell .calendar-page .period-obligation-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:10px;align-items:stretch}.app-shell .calendar-page .period-obligation-list .period-obligation-card{display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:auto 1fr;min-height:180px;align-items:start;align-content:start;gap:10px 8px;padding:12px}.app-shell .calendar-page .period-obligation-list .period-obligation-date{grid-column:1;grid-row:1;min-height:44px;width:36px}.app-shell .calendar-page .period-obligation-list .period-obligation-main{grid-column:2;grid-row:1;min-width:0;gap:3px}.app-shell .calendar-page .period-obligation-list .period-obligation-main strong{font-size:12px;line-height:1.35;overflow-wrap:anywhere}.app-shell .calendar-page .period-obligation-list .period-obligation-main>span{font-size:10px;line-height:1.35;overflow-wrap:anywhere}.app-shell .calendar-page .period-obligation-list .period-obligation-payment{grid-column:1 / -1;grid-row:2;display:grid;align-self:stretch;align-content:end;justify-items:start;gap:6px;width:100%;min-width:0}.app-shell .calendar-page .period-obligation-list .period-obligation-amount{grid-column:auto;grid-row:auto;font-size:18px;text-align:left;overflow-wrap:anywhere}.app-shell .calendar-page .period-obligation-list .period-status{grid-column:auto;grid-row:auto;justify-self:start}.app-shell .calendar-page .period-obligation-list .period-payment-action{width:100%;min-height:40px!important;margin-top:2px;padding:6px}.app-shell .calendar-page .period-obligation-list .period-obligation-paid-date,.app-shell .calendar-page .period-obligation-list .period-payment-amount-field{text-align:left}.app-shell .calendar-page .period-obligation-list .period-obligation-card .period-obligation-payment{grid-template-columns:minmax(0,1fr)}.app-shell .calendar-page .period-obligation-list .period-obligation-card .period-obligation-payment .period-obligation-amount,.app-shell .calendar-page .period-obligation-list .period-obligation-card .period-obligation-payment .period-status{grid-column:1;grid-row:auto;justify-self:start;text-align:left}.app-shell .calendar-page .period-obligation-list .period-obligation-card .period-obligation-payment .period-payment-action{font:600 11px / 1.3 var(--font-body)}.topbar .add-button[hidden],.dashboard-planned[hidden],.dashboard-overview-description{display:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary{padding-block:16px 28px;font-family:var(--font-body)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-header{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;margin-bottom:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-header h1{color:var(--color-primary);font:400 clamp(28px,2.6vw,34px) / 1.15 var(--font-heading);letter-spacing:-.025em}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-overview-description{display:block;max-width:65ch;margin:10px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.7}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-period{margin-top:10px;color:var(--color-text-secondary);font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-filters{grid-template-columns:minmax(0,1fr);width:100%;min-width:0;gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-filters label{font-size:12px;font-weight:500}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-filters select{min-height:44px;border-radius:8px;font:500 12px / 1.5 var(--font-body)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-payday{display:inline-flex;max-width:100%;padding:8px 12px;margin-bottom:12px;border:0;background:var(--color-surface-secondary);font-size:12px;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-section{padding:0;margin-bottom:24px;border:0;background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-section>.dashboard-summary-section-heading{padding:0;border:0}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-section>.dashboard-summary-section-heading h2{font-size:22px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-section>.dashboard-summary-section-heading p{font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-currency-kpis{padding-top:18px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-currency-kpis h3{color:var(--color-text-secondary);font-size:12px;font-weight:600}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list{grid-template-columns:minmax(0,1fr);gap:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list>div{container-type:inline-size;gap:18px;min-width:0;padding:22px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list dt{font-size:12px;font-weight:500;line-height:1.5}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list dd{color:var(--color-primary);font:400 clamp(26px,2.5vw,34px) / 1.2 var(--font-heading);letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow-wrap:normal}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list>div:nth-child(3) dd{color:var(--color-action)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list>div:nth-child(2){order:5;grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;padding:8px 2px;border:0;background:transparent}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list>div:nth-child(2) dd{font:500 13px / 1.5 var(--font-body)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list>div:nth-child(4){border-color:var(--color-primary);background:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list>div:nth-child(4) dt{color:#d8e6dc}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list>div:nth-child(4) dd{color:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list .dashboard-money-long{font-size:clamp(18px,7cqw,28px);white-space:nowrap}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list dd.dashboard-kpi-unavailable{font:500 14px / 1.6 var(--font-body);letter-spacing:normal;overflow-wrap:anywhere}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-grid>.dashboard-summary-section{padding:22px;border-radius:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-section-heading{flex-wrap:wrap;align-items:start;gap:8px 16px;border-color:var(--color-border)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-section h2{color:var(--color-primary);font-size:25px;font-weight:400}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-section-heading p{font-size:12px;line-height:1.7}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-link{min-height:44px;padding:0;color:var(--color-primary);font-size:12px;text-decoration:none}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-link:hover{text-decoration:underline;text-underline-offset:4px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-payroll-row{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding-block:22px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-payroll-values{grid-template-columns:minmax(0,1fr);gap:16px;min-width:0;width:100%}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-payroll-values>div{padding:14px;border-radius:8px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-payroll-values dd{margin-top:6px;color:var(--color-primary);font-size:15px;font-weight:600;overflow-wrap:normal}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-row{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:16px;margin-top:14px;border:0;border-radius:9px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-copy{grid-template-columns:minmax(0,1fr);justify-items:start;gap:6px;width:100%}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-copy h3{font-size:14px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-status{display:inline-flex;width:fit-content;padding:3px 8px;border-radius:5px;color:var(--color-warning-contrast);background:var(--color-warning-surface);font-size:11px;font-weight:600}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-status.status-paid{color:var(--color-primary);background:var(--color-selection)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-status.status-partial{color:var(--color-warning-contrast)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-amounts{justify-items:start;max-width:100%;min-width:0;gap:6px;text-align:left}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-amounts strong{color:var(--color-primary);font:400 24px / 1.3 var(--font-heading);font-variant-numeric:tabular-nums;overflow-wrap:normal}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-share,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-obligation-amounts>span{text-align:left;font-size:12px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned:not([hidden]){display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:24px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-card{min-width:0;padding:24px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-card h2{margin:0 0 20px;color:var(--color-primary);font:400 25px / 1.3 var(--font-heading)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-highlight{color:var(--color-surface);background:var(--color-primary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-highlight h2{color:inherit}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-chart-frame,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-row,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-value{min-height:72px;margin-block:12px;border-radius:8px;background:var(--color-surface-secondary)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-chart-frame{min-height:240px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-planned-export{justify-self:end;padding:12px 18px;border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);background:var(--color-surface);font-size:12px}@media(min-width:681px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-filters,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list,.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-payroll-values{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1180px){.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-header{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:end;gap:28px}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list{grid-template-columns:repeat(4,minmax(0,1fr))}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-kpi-list:has(.dashboard-money-long){grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr)}.app-shell:is([data-theme=light],[data-theme=system][data-system-dark=false]) .dashboard-summary-grid>.dashboard-summary-section{padding:26px}}.dashboard-charts-view,.dashboard-financial-strip{display:none}.dashboard-summary{font-variant-numeric:tabular-nums}.dashboard-classic-view{display:contents}.app-shell .dashboard-summary{display:grid;gap:16px;padding-block:16px 24px}.app-shell .dashboard-summary-header{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:0}.app-shell .dashboard-summary-header h1{color:var(--color-primary);font:400 clamp(28px,2.6vw,36px) / 1.15 var(--font-heading);letter-spacing:-.025em}.app-shell .dashboard-overview-description{display:block;max-width:65ch;margin:8px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.6}.app-shell .dashboard-summary-period{margin-top:8px;color:var(--color-text-secondary);font-size:12px}.app-shell .dashboard-summary-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:16px;padding:12px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-secondary)}.app-shell .dashboard-filters{display:contents}.app-shell .dashboard-filters label{gap:4px;color:var(--color-text-secondary);font-size:12px;font-weight:600}.app-shell .dashboard-filters select{min-height:40px;padding-inline:8px;border-radius:8px;background:var(--color-surface);font:500 12px / 1.5 var(--font-body)}.app-shell .dashboard-summary-payday{align-self:end;min-height:40px;margin:0;padding:10px 12px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-primary);background:var(--color-surface);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.app-shell .dashboard-charts-view{display:grid;gap:16px}.app-shell .dashboard-classic-view{display:none}.app-shell .dashboard-chart-currency{min-width:0}.app-shell .dashboard-chart-currency-title{display:inline-flex;margin:0 0 8px;padding:4px 8px;border-radius:8px;color:var(--color-primary);background:var(--color-selection);font:600 12px / 1.5 var(--font-body);font-variant-numeric:tabular-nums}.app-shell .dashboard-overview-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:16px}.app-shell .dashboard-financial-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:16px;overflow:hidden;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-secondary);box-shadow:var(--shadow-soft)}.app-shell .dashboard-financial-strip .dashboard-chart-panel{min-width:0;padding:12px;border:0;border-right:1px solid var(--color-border);border-radius:0;background:transparent;box-shadow:none}.app-shell .dashboard-financial-strip .dashboard-chart-panel:last-child{border-right:0}.app-shell .dashboard-financial-strip .dashboard-chart-panel>h3{margin-bottom:8px;font-size:16px}.app-shell .dashboard-financial-hours .dashboard-ring-layout{grid-template-columns:minmax(84px,.8fr) minmax(0,1.2fr);align-items:center;justify-items:stretch;gap:8px}.app-shell .dashboard-financial-hours .dashboard-ring{width:min(100%,144px)}.app-shell .dashboard-financial-expenses{display:grid;align-content:center;gap:8px}.app-shell .dashboard-financial-expenses>strong{color:var(--color-text-secondary);font:400 16px / 1.4 var(--font-body);font-variant-numeric:tabular-nums}.app-shell .dashboard-financial-expenses>p{margin:0;color:var(--color-text-secondary);font-size:12px;line-height:1.5}.app-shell .dashboard-overview-sidebar,.app-shell .dashboard-primary-charts{display:grid;min-width:0;gap:16px}.app-shell .dashboard-overview-sidebar{grid-template-columns:minmax(0,1fr)}.app-shell .dashboard-lower-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1.8fr) minmax(200px,1fr);align-items:stretch;gap:16px;margin-top:16px}.app-shell .dashboard-chart-panel{min-width:0;padding:12px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface);box-shadow:var(--shadow-soft)}.app-shell .dashboard-chart-panel>h3,.app-shell .dashboard-chart-panel header h3{margin:0;color:var(--color-primary);font:400 20px / 1.3 var(--font-heading);letter-spacing:-.02em}.app-shell .dashboard-chart-panel header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.app-shell .dashboard-chart-panel .dashboard-summary-link{min-height:32px;color:var(--color-primary);font-size:12px;text-decoration:none}.app-shell .dashboard-chart-panel .dashboard-summary-link:hover{text-decoration:underline;text-underline-offset:4px}.app-shell .dashboard-ring-layout{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:12px;margin-top:8px}.app-shell .dashboard-income-ring{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px}.app-shell .dashboard-income-ring .dashboard-ring-layout{display:grid;grid-template-columns:minmax(112px,.85fr) minmax(0,1.15fr);align-items:center;justify-items:stretch;gap:8px}.app-shell .dashboard-financial-income .dashboard-ring{width:min(100%,152px)}.app-shell .dashboard-ring{position:relative;width:min(100%,208px);margin:0 auto;aspect-ratio:1;container-type:inline-size}.app-shell .dashboard-ring svg{display:block;width:100%;overflow:visible}.app-shell .dashboard-ring circle{fill:none;stroke-width:26px}.app-shell .dashboard-ring-track{stroke:var(--color-surface-secondary)}.app-shell .dashboard-ring-arc{stroke:var(--chart-tone)}.app-shell .dashboard-ring-center{position:absolute;inset:18%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;pointer-events:none}.app-shell .dashboard-ring-center strong{color:var(--color-primary);font:400 clamp(18px,7cqw,28px) / 1.2 var(--font-heading);font-variant-numeric:tabular-nums;max-width:100%;white-space:normal;overflow-wrap:anywhere}.app-shell .dashboard-ring-center strong.dashboard-ring-value-long{font-size:clamp(11px,8cqw,16px);white-space:nowrap;overflow-wrap:normal}.app-shell .dashboard-ring-center .dashboard-ring-unit{max-width:none;color:var(--color-primary);font-size:11px;line-height:1.2;white-space:nowrap}.app-shell .dashboard-ring-center span{max-width:18ch;color:var(--color-text-secondary);font-size:12px;line-height:1.4}.app-shell .chart-tone-income{--chart-tone: var(--color-primary)}.app-shell .chart-tone-deductions{--chart-tone: var(--color-action)}.app-shell .chart-tone-estimated{--chart-tone: var(--palette-sage, #8fa382)}.app-shell .chart-tone-negative{--chart-tone: var(--color-negative)}.app-shell .dashboard-chart-legend{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;width:100%;margin:0}.app-shell .dashboard-financial-income .dashboard-chart-legend,.app-shell .dashboard-financial-hours .dashboard-chart-legend{grid-template-columns:minmax(0,1fr);gap:12px}.app-shell .dashboard-chart-legend>div{display:grid;align-content:start;gap:8px;min-width:0;padding:4px 0}.app-shell .dashboard-chart-legend dt{display:inline-flex;align-items:center;gap:8px;min-width:0;color:var(--color-text-secondary);font-size:12px;line-height:1.4}.app-shell .dashboard-chart-legend dd{margin:0;color:var(--color-primary);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;padding-left:16px;font-size:12px;line-height:1.35}.app-shell .dashboard-hours-chart .dashboard-chart-legend>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:8px;border-radius:12px}.app-shell .dashboard-hours-chart .dashboard-chart-legend dd{font-size:12px}.app-shell .chart-dot{display:inline-block;flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--chart-tone)}.app-shell .dashboard-income-bars,.app-shell .dashboard-obligation-list{display:grid;gap:0}.app-shell .dashboard-income-group{display:grid;gap:8px;min-width:0;padding-block:8px;border-bottom:1px solid var(--color-border)}.app-shell .dashboard-income-group:first-child{padding-top:0}.app-shell .dashboard-income-group:last-child,.app-shell .dashboard-obligation-item:last-child{padding-bottom:0;border-bottom:0}.app-shell .dashboard-income-group-heading{display:flex;align-items:center;gap:8px;min-width:0}.app-shell .dashboard-employment-mark{display:grid;flex:0 0 32px;width:32px;height:32px;place-items:center;border-radius:10px;color:var(--color-primary);background:var(--color-selection);font-size:11px;font-weight:700}.app-shell .dashboard-income-group-heading h4,.app-shell .dashboard-obligation-item h4{min-width:0;margin:0;color:var(--color-text);font:600 13px / 1.4 var(--font-body);overflow-wrap:anywhere}.app-shell .dashboard-income-series{display:grid;gap:8px}.app-shell .dashboard-series-row{display:grid;grid-template-columns:minmax(76px,auto) minmax(0,1fr) minmax(84px,auto);align-items:center;gap:8px;min-width:0}.app-shell .dashboard-series-label{color:var(--color-text-secondary);font-size:11px;line-height:1.4}.app-shell .dashboard-series-row>strong{color:var(--color-primary);font-size:12px;font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}.app-shell .dashboard-bar-track{position:relative;height:8px;overflow:hidden;border-radius:8px;background:var(--color-surface-secondary)}.app-shell .dashboard-bar-fill{position:absolute;top:0;height:100%;border-radius:inherit;background:var(--chart-tone);transform-origin:left}.app-shell .dashboard-bar-missing{border:1px dashed var(--color-border);background:transparent}.app-shell .dashboard-bar-diverging:after{position:absolute;z-index:1;top:0;bottom:0;left:50%;width:1px;background:var(--color-text-secondary);content:""}.app-shell .dashboard-income-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:0}.app-shell .dashboard-income-details>div{display:grid;gap:4px;min-width:0}.app-shell .dashboard-income-details dt{color:var(--color-text-secondary);font-size:11px;line-height:1.4}.app-shell .dashboard-income-details dd{margin:0;color:var(--color-text);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.app-shell .dashboard-obligation-item{display:grid;gap:8px;min-width:0;padding-block:8px;border-bottom:1px solid var(--color-border)}.app-shell .dashboard-obligation-item:first-child{padding-top:0}.app-shell .dashboard-obligation-item-heading,.app-shell .dashboard-obligation-item-heading>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}.app-shell .dashboard-obligation-item-heading>div{flex-direction:column}.app-shell .dashboard-obligation-item time,.app-shell .dashboard-obligation-item-details>span{color:var(--color-text-secondary);font-size:11px;line-height:1.4}.app-shell .dashboard-obligation-status{flex:0 0 auto;padding:4px 8px;border-radius:8px;color:var(--color-warning-contrast);background:var(--color-warning-surface);font-size:11px;font-weight:600;line-height:1.4}.app-shell .dashboard-obligation-status.status-paid{color:var(--color-primary);background:var(--color-selection)}.app-shell .dashboard-obligation-status.status-partial{color:var(--color-action-contrast);background:#f5e8e2}.app-shell .dashboard-obligation-item-details{display:grid;justify-items:end;gap:4px;min-width:0;text-align:right}.app-shell .dashboard-obligation-item-details>strong{color:var(--color-primary);font:500 16px / 1.3 var(--font-heading);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.app-shell .dashboard-obligation-item-details .dashboard-obligation-share{color:var(--color-text-secondary);font-size:11px;font-variant-numeric:tabular-nums;text-align:right}.app-shell .dashboard-chart-empty{margin:16px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.6}.app-shell .dashboard-hours-table-wrap{min-width:0;overflow-x:auto}.app-shell .dashboard-hours-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums;text-align:right}.app-shell .dashboard-hours-table th,.app-shell .dashboard-hours-table td{padding:8px;border-bottom:1px solid var(--color-border);white-space:nowrap}.app-shell .dashboard-hours-table thead th{color:var(--color-text-secondary);font-size:11px;font-weight:600}.app-shell .dashboard-hours-table tr>:first-child{position:sticky;left:0;text-align:left;background:var(--color-surface)}.app-shell .dashboard-hours-table tbody th{color:var(--color-text);font-weight:600}.app-shell .dashboard-hours-bar{display:flex;width:min(100%,160px);height:8px;margin-top:4px;overflow:hidden;border-radius:8px;background:var(--color-surface-secondary)}.app-shell .dashboard-hours-bar i{display:block;height:100%}.app-shell .dashboard-hours-bar-normal{background:var(--color-primary)}.app-shell .dashboard-hours-bar-overtime{background:var(--palette-sage, #8fa382)}.app-shell .dashboard-hours-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px;color:var(--color-text-secondary);font-size:11px}.app-shell .dashboard-hours-legend>span{display:inline-flex;align-items:center;gap:8px}.app-shell .dashboard-lower-grid .dashboard-chart-empty{margin-top:12px}@media(min-width:681px)and (max-width:1000px){.app-shell .dashboard-financial-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:681px)and (max-width:1200px){.app-shell .dashboard-financial-income .dashboard-ring-layout,.app-shell .dashboard-financial-hours .dashboard-ring-layout{grid-template-columns:minmax(0,1fr);justify-items:center}.app-shell .dashboard-financial-income .dashboard-ring,.app-shell .dashboard-financial-hours .dashboard-ring{width:min(100%,152px)}.app-shell .dashboard-financial-income .dashboard-chart-legend,.app-shell .dashboard-financial-hours .dashboard-chart-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .dashboard-chart-legend>div{padding-inline:4px}}@media(min-width:1001px)and (max-width:1280px){.app-shell .dashboard-financial-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.app-shell .dashboard-financial-expenses{grid-column:1 / -1;border-top:1px solid var(--color-border)!important;border-right:0!important}}@media(min-width:681px)and (max-width:880px){.app-shell .dashboard-overview-grid{grid-template-columns:minmax(0,1fr)}.app-shell .dashboard-lower-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .dashboard-account-summary{grid-column:1 / -1}}@media(min-width:681px)and (max-width:1000px){.app-shell .dashboard-summary-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.app-shell .dashboard-summary{gap:16px}.app-shell .dashboard-summary-toolbar{grid-template-columns:minmax(0,1fr);gap:12px;padding:12px}.app-shell .dashboard-filters{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.app-shell .dashboard-summary-payday{justify-self:start;white-space:normal}.app-shell .dashboard-overview-sidebar,.app-shell .dashboard-financial-strip,.app-shell .dashboard-lower-grid{grid-template-columns:minmax(0,1fr)}.app-shell .dashboard-financial-strip .dashboard-chart-panel{border-right:0;border-bottom:1px solid var(--color-border)}.app-shell .dashboard-financial-strip .dashboard-chart-panel:last-child{border-bottom:0}.app-shell .dashboard-financial-expenses{grid-column:auto;border-top:0!important}.app-shell .dashboard-account-summary{grid-column:auto}.app-shell .dashboard-kpi-card{min-height:0}.app-shell .dashboard-overview-grid{grid-template-columns:minmax(0,1fr);gap:16px}.app-shell .dashboard-ring{width:min(100%,224px)}.app-shell .dashboard-financial-hours .dashboard-ring-layout{grid-template-columns:minmax(96px,.8fr) minmax(0,1.2fr)}.app-shell .dashboard-financial-income .dashboard-ring-layout{grid-template-columns:minmax(96px,.8fr) minmax(0,1.2fr);justify-items:stretch}.app-shell .dashboard-obligation-item-heading{align-items:flex-start}.app-shell .dashboard-income-ring{grid-template-columns:minmax(0,1fr)}}.app-shell[data-theme=dark] .dashboard-summary-header,.app-shell[data-theme=system] .dashboard-summary-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,680px);align-items:end;gap:20px;margin-bottom:20px}.app-shell[data-theme=dark] .dashboard-summary-toolbar,.app-shell[data-theme=system] .dashboard-summary-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.app-shell[data-theme=dark] .dashboard-filters,.app-shell[data-theme=system] .dashboard-filters{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell[data-theme=dark] .dashboard-summary-payday,.app-shell[data-theme=system] .dashboard-summary-payday{justify-self:end}@media(max-width:900px){.app-shell[data-theme=dark] .dashboard-summary-header,.app-shell[data-theme=system] .dashboard-summary-header{grid-template-columns:minmax(0,1fr)}}.dashboard-ledger-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:20px}.dashboard-ledger-heading h2{margin:0;font:500 24px/1.4 var(--font-heading)}.dashboard-ledger-heading>span{font-size:11px;color:var(--color-text-secondary);max-width:45ch;text-align:right}.dashboard-chart-panel{border-radius:16px}.dashboard-chart-panel:has(>.fin-donut-chart){padding:0}.dashboard-income-ring>.fin-chart,.dashboard-financial-hours>.fin-chart{border:0;padding:0;border-radius:0}.dashboard-chart-panel .fin-donut-stage{width:min(100%,224px)}.dashboard-chart-panel .fin-chart-header{margin-top:12px}@media(max-width:600px){.dashboard-ledger-heading{align-items:start;flex-direction:column;gap:4px}.dashboard-ledger-heading>span{text-align:left}}.dashboard-financial-strip{grid-template-columns:minmax(0,1fr)}@media(min-width:760px){.dashboard-financial-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.app-shell .dashboard-financial-strip{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;border:0;background:transparent;box-shadow:none;overflow:visible}.app-shell .dashboard-financial-strip .dashboard-chart-panel{padding:18px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface);box-shadow:none}.app-shell .dashboard-financial-strip .dashboard-chart-panel:last-child{border-right:1px solid var(--color-border)}.app-shell .dashboard-chart-panel .fin-chart-header h3{font:600 14px/1.5 var(--font-body);letter-spacing:0;color:var(--color-text)}@media(min-width:760px){.app-shell .dashboard-financial-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-empty-period{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:12px 0}.dashboard-empty-period p{flex:1 1 280px;margin:0}.dashboard-empty-period button{flex:0 0 auto;min-height:44px}.visual-module{display:grid;gap:24px;width:min(100%,1320px);min-width:0;margin-inline:auto}.visual-module-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.visual-module-heading h1{margin:0;color:var(--color-primary);font:400 clamp(28px,3vw,36px) / 1.15 var(--font-heading);letter-spacing:-.025em}.visual-module-heading p:not(.visual-module-eyebrow){max-width:65ch;margin:8px 0 0;color:var(--color-text-secondary);font-size:14px;line-height:1.6}.visual-module-context{margin:0 0 8px;color:var(--color-text-secondary);font-size:12px;font-weight:600}.visual-module-status{flex:0 0 auto;padding:8px 12px;border-radius:999px;color:var(--color-text-secondary);background:var(--color-surface-secondary);font-size:12px}.visual-module-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:8px 0;border-radius:16px;background:var(--color-surface-secondary)}.visual-module-summary>div{min-width:0;padding:12px 20px;border-right:1px solid var(--color-border)}.visual-module-summary>div:last-child{border-right:0}.visual-module-summary dt{color:var(--color-text-secondary);font-size:12px}.visual-module-summary dd{margin:8px 0 0;color:var(--color-text);font:400 24px / 1.2 var(--font-heading);font-variant-numeric:tabular-nums}.visual-module-panel{min-width:0;padding:20px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface);box-shadow:var(--shadow-soft)}.visual-module-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.visual-module-panel-heading h2{margin:0;color:var(--color-primary);font:400 22px / 1.3 var(--font-heading)}.visual-module-panel-heading p{margin:6px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.visual-module-panel-heading button{min-height:40px;padding:0 14px;border:1px solid var(--color-border);border-radius:10px;color:var(--color-text-secondary);background:var(--color-surface-secondary);font:500 13px / 1.4 var(--font-body);white-space:nowrap;cursor:not-allowed}.visual-module-table-wrap{min-width:0;overflow-x:auto}.visual-module-table{width:100%;border-collapse:collapse;text-align:left}.visual-module-table th{padding:12px 10px;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);font-size:12px;font-weight:600}.visual-module-table td{padding:0}.visual-module-empty{display:grid;align-content:center;min-height:240px;padding:24px;text-align:center}.visual-module-empty h3{margin:0;color:var(--color-primary);font:400 22px / 1.3 var(--font-heading)}.visual-module-empty p{max-width:48ch;margin:8px auto 0;color:var(--color-text-secondary);font-size:13px;line-height:1.6}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-heading h1,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-summary dd,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-panel-heading h2,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-empty h3{color:#e4ece6}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-heading p,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-context,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-status,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-summary dt,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-panel-heading p,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-empty p,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-table th{color:#b5c2b8}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-panel-heading button{color:#b5c2b8}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-summary,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-status,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-panel-heading button{background:#17221a}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-summary>div,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-panel,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-panel-heading button,.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-table th{border-color:#35473a}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .visual-module-panel{background:#1a261e;box-shadow:none}@media(max-width:680px){.visual-module{gap:20px}.visual-module-heading{flex-direction:column;gap:12px}.visual-module-summary{grid-template-columns:minmax(0,1fr);padding:0 12px}.visual-module-summary>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 4px;border-right:0;border-bottom:1px solid var(--color-border)}.visual-module-summary>div:last-child{border-bottom:0}.visual-module-summary dd{margin:0}.visual-module-panel{padding:16px}.visual-module-panel-heading{flex-direction:column}.visual-module-panel-heading button{width:100%}.visual-module-table thead{display:none}.visual-module-empty{min-height:200px;padding:16px 4px}}@media(prefers-reduced-motion:reduce){.visual-module *{scroll-behavior:auto!important}}.theme-preferences{display:grid;gap:28px;min-width:0}.preference-choices{min-width:0;margin:0;padding:0;border:0;color:var(--color-text)}.preference-choices legend{margin-bottom:12px;padding:0;font-weight:600}.preference-choices-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.preference-choice{position:relative;display:flex;min-width:0;cursor:pointer}.preference-choice input{position:absolute;width:1px;height:1px;margin:0;opacity:0}.preference-choice-content{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:10px 12px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-surface);overflow-wrap:anywhere}.preference-choice:hover .preference-choice-content{background:var(--color-hover)}.preference-choice input:checked+.preference-choice-content{border-color:var(--color-focus);background:var(--color-selection)}.preference-choice input:focus-visible+.preference-choice-content{outline:3px solid var(--color-focus);outline-offset:3px}.preference-choice-check{flex-shrink:0;width:18px;height:18px;margin-left:auto;visibility:hidden;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.preference-choice input:checked+span .preference-choice-check{visibility:visible}.preference-choices:disabled .preference-choice{cursor:wait;opacity:.65}.theme-swatch{display:flex;flex-shrink:0;width:34px;height:34px;overflow:hidden;border-radius:10px}.theme-swatch>span{width:50%}.theme-preview{display:grid;grid-template-columns:44px minmax(0,1fr);overflow:hidden;border:1px solid var(--color-border);border-radius:14px;color:var(--color-text);background:var(--color-background)}.theme-preview-sidebar{display:grid;align-content:start;gap:12px;padding:24px 10px;background:var(--palette-brand)}.theme-preview-sidebar span{height:5px;border-radius:3px;background:#fff}.theme-preview-content{min-width:0;padding:24px 20px}.theme-preview-content h3{margin:0 0 8px;color:var(--color-text);font-family:var(--font-heading);font-size:24px;font-weight:500}.theme-preview-content p,.theme-preferences-hint{margin:0;color:var(--color-text-secondary);line-height:1.6}.theme-preview-action{display:inline-block;margin-top:18px;padding:10px 16px;border-radius:10px;color:var(--color-on-action);background:var(--color-action);font-weight:600}.app-shell[data-color-theme]{accent-color:var(--color-primary);caret-color:var(--color-focus)}.app-shell[data-color-theme] ::selection{color:var(--color-text);background:var(--color-selection)}.app-shell[data-color-theme]:is([data-theme=dark],[data-theme=system][data-system-dark=true]){color:var(--color-text);background:var(--color-background)}.app-shell[data-color-theme]:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-nav,.app-shell[data-color-theme]:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-content{color:var(--color-text);background:var(--color-surface);border-color:var(--color-border)}.app-shell[data-color-theme]:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-nav button.is-active{color:var(--color-text);background:var(--color-selection)}.app-shell[data-color-theme]:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .settings-hub-nav button:hover{background:var(--color-hover)}@media(min-width:540px){.preference-choices-options{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:380px){.preference-choice-content{gap:7px;padding:10px 8px}.theme-swatch{width:26px;height:30px}}.app-shell[data-color-theme] :is(.settings-primary-button,.book-action-primary,.add-button){color:var(--color-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.app-shell[data-color-theme] :is(.settings-primary-button,.book-action-primary,.add-button):hover:not(:disabled){color:var(--color-on-primary);background:var(--color-primary);filter:brightness(.93)}.app-shell[data-color-theme] .topbar{color:var(--color-text);background:var(--color-surface-secondary);border-color:var(--color-border)}.app-shell[data-color-theme] .sidebar{color:#fcf9f2;background:var(--palette-brand);border-color:var(--palette-brand)}.app-shell[data-color-theme] .sidebar .nav-item-active{color:var(--color-text);background:var(--color-selection)}.app-shell[data-color-theme] .settings-hub-panel-heading h2{color:var(--color-text)}.app-shell[data-color-theme] .settings-hub-nav button.is-active{color:var(--color-text);background:var(--color-selection)}.app-shell[data-color-theme] .settings-hub-nav button.is-active .settings-nav-icon{color:var(--color-primary);background:var(--color-selection)}.app-shell[data-color-theme] .sidebar :is(.workspace-copy strong,.workspace-copy small,.profile-copy strong,.profile-copy small,.workspace-label,.nav-section-label){color:#fcf9f2}.app-shell[data-color-theme] .topbar :is(.breadcrumb strong,.mobile-menu){color:var(--color-text)}.app-shell[data-color-theme] .topbar .breadcrumb{color:var(--color-text-secondary)}.app-shell[data-color-theme] .settings-nav-icon{color:var(--color-primary);background:var(--color-selection)}.tx-workspace{color:var(--color-text);font-family:var(--font-body);max-width:1100px;margin-inline:auto}.tx-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.tx-heading-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tx-heading>div:first-child{flex:1;min-width:180px}.tx-heading h1{font-family:var(--font-display, "Newsreader", serif);font-size:32px;font-weight:500;margin:0 0 6px}.tx-heading p,.tx-hint{color:var(--color-text-secondary);font-size:13px;line-height:1.6;margin:0}.tx-heading .add-button{flex-shrink:0}.tx-toolbar{display:flex;align-items:center;gap:10px}.tx-search{display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:0 14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px}.tx-search svg{flex-shrink:0;color:var(--color-text-secondary)}.tx-workspace .tx-search input{background:transparent;border:0;padding:13px 0;width:100%;min-width:0;color:inherit;outline-offset:2px}.tx-workspace :is(input,select,textarea){color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:9px;padding:10px 11px;min-width:0;box-sizing:border-box;font:inherit;width:100%}.tx-workspace input::placeholder{color:var(--color-text-secondary);opacity:1}.tx-workspace :is(input,textarea){caret-color:var(--color-primary)}.tx-workspace :is(button,input,select,textarea,summary):focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.tx-workspace button{cursor:pointer}.tx-workspace button:disabled{opacity:.55;cursor:default}.tx-filter-toggle{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.tx-period{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:18px 0}.tx-period label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600}.tx-period input{max-width:180px}.tx-period>span{font-size:11px;color:var(--color-text-secondary);text-align:right;max-width:260px}.tx-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px;padding:16px;background:var(--color-surface-secondary);border-radius:12px}.tx-workspace label{font-size:13px;font-weight:600;display:grid;gap:7px}.tx-summary{margin:0}.tx-summary-currency+.tx-summary-currency{margin-top:12px}.tx-currency{display:block;font-size:12px;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.tx-summary-loading{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.tx-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px}.tx-summary-card{min-width:0;padding:16px 12px}.tx-summary-card+.tx-summary-card{border-inline-start:1px solid var(--color-border)}.tx-summary dt{display:grid;gap:8px;font-size:12px;color:var(--color-text-secondary)}.tx-summary dd{margin:7px 0 0;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.tx-summary-note{margin:10px 0 16px;color:var(--color-text-secondary);font-size:11px;line-height:1.5}.tx-workspace .tx-positive{color:var(--color-positive, #167347)}.tx-workspace .tx-negative{color:var(--color-negative, #b42332)}.tx-segments{display:flex;padding:4px;gap:3px;background:var(--color-surface-secondary);border-radius:12px}.tx-segments button{border:0;background:transparent;color:var(--color-text-secondary);padding:10px 12px;border-radius:8px;font:inherit;font-size:12px;font-weight:600;flex:1;min-height:38px}.tx-segments button[aria-pressed=true]{background:var(--color-surface);color:var(--color-text);box-shadow:none}.tx-segments button:hover{color:var(--color-text)}.tx-list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 12px;flex-wrap:wrap}.tx-list-heading>span{color:var(--color-text-secondary);font-size:11px}.tx-type-filter{max-width:100%;flex-wrap:wrap}.tx-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.tx-ledger{display:block;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.tx-ledger thead,.tx-desktop-cell{display:none}.tx-day{display:block;margin-bottom:16px}.tx-date-row{display:block}.tx-date-row th{display:block;text-align:left;font-size:11px;font-weight:600;color:var(--color-text-secondary);padding:10px 0}.tx-movement{display:grid;grid-template-columns:minmax(0,1fr) minmax(80px,36%) 44px;align-items:center;background:var(--color-surface);border-inline:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:6px 4px 6px 10px}.tx-date-row+.tx-movement{border-top:1px solid var(--color-border);border-start-start-radius:12px;border-start-end-radius:12px}.tx-movement:last-child{border-end-start-radius:12px;border-end-end-radius:12px}.tx-movement td{min-width:0}.tx-row{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:6px 0;text-align:left;font:inherit;color:inherit;background:transparent;border:0}.tx-row-icon{flex-shrink:0;display:grid;place-items:center;width:30px;height:32px;border-radius:8px;background:var(--color-surface-secondary)}.tx-row-label{display:grid;gap:4px;min-width:0}.tx-row-label strong{font-size:14px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.tx-row-label>span{font-size:12px;line-height:1.5;color:var(--color-text-secondary);overflow-wrap:anywhere}.tx-row-label .tx-mobile-category,.tx-category-label{width:fit-content;padding:2px 6px;border-radius:5px;background:var(--color-surface-secondary);color:var(--color-text);font-size:12px}.tx-row-label .tx-pending{color:var(--color-warning)}.tx-amount-cell{text-align:right;padding-inline:4px;font-variant-numeric:tabular-nums}.tx-amount-cell strong{display:block;font-size:14px;font-weight:600;overflow-wrap:anywhere;line-height:1.5}.tx-amount-cell>span{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:4px;font-size:12px;color:var(--color-text-secondary)}.tx-amount-cell svg{width:12px;height:12px}.tx-row-detail{width:44px;min-height:44px;display:grid;place-items:center;border:0;background:transparent;color:var(--color-text-secondary);border-radius:8px}.tx-row-detail:hover,.tx-row:hover{color:var(--color-primary)}.tx-type-label{display:inline-block;max-width:100%;border-radius:5px;background:var(--color-surface-secondary);padding:3px 6px;font-size:12px;overflow-wrap:anywhere}.tx-type-income{color:var(--color-positive)}.tx-type-expense{color:var(--color-negative)}.tx-account-cell{font-size:12px;color:var(--color-text-secondary);overflow-wrap:anywhere}.tx-empty{text-align:center;padding:48px 16px}.tx-empty>svg{width:28px;height:28px;color:var(--color-text-secondary)}.tx-empty h2{font-family:Newsreader,serif;font-weight:500;font-size:24px;margin:14px 0 8px}.tx-empty p{color:var(--color-text-secondary);font-size:13px;line-height:1.7;max-width:420px;margin:0 auto 20px}.tx-notice{font-size:12px;color:var(--color-positive, #167347)}.tx-loading{display:grid;gap:20px}.tx-load-more{display:block;margin:20px auto}.tx-workspace .tx-modal{width:min(100%,600px);max-width:600px;padding:20px;border-radius:16px;color:var(--color-text);background:var(--color-surface)}.tx-modal .payroll-modal-heading{top:-20px;margin:-20px -20px 4px;padding:20px;gap:10px;align-items:center}.tx-modal .payroll-modal-heading h2{font-family:Newsreader,serif;font-size:25px;font-weight:500}.tx-close{display:grid;place-items:center;min-width:40px;min-height:40px}.tx-form fieldset{display:grid;gap:16px;border:0;padding:0;margin:20px 0 0;min-width:0}.tx-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tx-amount-entry{display:grid;text-align:center;padding:0 0 8px;gap:8px}.tx-amount-entry>div{display:flex;justify-content:center;align-items:center;gap:8px}.tx-workspace .tx-amount-entry input{width:180px;max-width:65%;font-size:26px;text-align:center;font-variant-numeric:tabular-nums}.tx-workspace .tx-amount-entry select{width:85px}.tx-amount-entry label{color:var(--color-text-secondary);font-weight:400}.tx-text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;color:var(--color-primary, var(--palette-brand, #1b4332));font:inherit;font-size:12px;padding:8px 0;text-underline-offset:3px;min-height:40px}.tx-text-button:hover{text-decoration:underline}.tx-inline-account{display:grid;gap:10px;padding:12px;background:var(--color-surface-secondary);border-radius:10px}.tx-more{border-top:1px solid var(--color-border);padding-top:14px;margin-top:4px}.tx-more summary{cursor:pointer;font-size:13px;font-weight:600;padding-bottom:12px}.tx-more .tx-hint{margin:12px 0}.tx-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:24px;flex-wrap:wrap}.tx-dialog-actions button{min-height:44px}.tx-danger-button{background:var(--color-negative, #b42332);color:#fff;border:0;border-radius:9px;padding:12px 18px;font:inherit;font-size:13px;font-weight:600}.tx-delete p{font-size:14px;line-height:1.7;overflow-wrap:anywhere}.tx-detail-amount{text-align:center;padding:12px 0 24px}.tx-detail-amount>span{font-size:12px;color:var(--color-text-secondary)}.tx-detail-amount h3{font-size:30px;font-family:Newsreader,serif;font-weight:500;margin:10px 0;overflow-wrap:anywhere}.tx-detail-amount p{font-size:14px;overflow-wrap:anywhere}.tx-detail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin:0}.tx-detail-fields dt{font-size:11px;color:var(--color-text-secondary);margin-bottom:6px}.tx-detail-fields dd{margin:0;font-size:13px;overflow-wrap:anywhere;white-space:pre-wrap}.tx-detail-actions{display:flex;flex-wrap:wrap;gap:8px;padding-block:22px}.tx-detail-actions button{display:inline-flex;align-items:center;gap:6px;min-height:40px}.tx-receipts{border-top:1px solid var(--color-border);padding-top:18px}.tx-receipts h3{font-size:14px;font-weight:600;margin:0 0 6px}.tx-receipts ul{list-style:none;padding:0;margin:8px 0}.tx-receipts button{text-align:left;overflow-wrap:anywhere;justify-content:flex-start}.tx-workspace .tx-file-label{margin-top:12px}.tx-workspace input[type=file]{font-size:12px;width:100%}.tx-history{padding-left:18px;font-size:12px;line-height:1.8;color:var(--color-text-secondary)}@media(min-width:768px){.tx-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.tx-summary dd{font-size:24px}.tx-row{padding:16px 18px}.tx-row-amount{max-width:40%}.tx-row-label strong,.tx-row-amount strong{font-size:14px}}@media(max-width:480px){.tx-heading{align-items:flex-start;gap:10px}.tx-heading h1{font-size:28px}.tx-heading p{max-width:200px;font-size:12px}.tx-heading .add-button{font-size:11px;gap:5px;padding:11px 9px}.tx-filter-toggle span{display:none}.tx-period{align-items:flex-start}.tx-period label{display:grid;gap:6px}.tx-period>span{max-width:145px}.tx-summary dd{font-size:15px}.tx-row{gap:8px;padding:14px 10px}.tx-row-icon{width:28px;height:30px}.tx-row-label strong,.tx-row-amount strong{font-size:13px}.tx-workspace .tx-modal{padding:18px 14px}.tx-modal .payroll-modal-heading{top:-18px;margin:-18px -14px 4px;padding:18px 14px}.tx-segments button{padding:9px 7px;font-size:11px}.tx-form-grid{gap:10px}}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .tx-workspace{--color-primary: var(--theme-primary, #9ce0b1);--color-text: var(--theme-text, #e4ece6);--color-text-secondary: var(--theme-text-secondary, #b5c2b8);--color-surface: var(--theme-surface, #1a261e);--color-surface-secondary: var(--theme-surface-secondary, #202e25);--color-border: var(--theme-border, #35473a);--color-positive: var(--theme-positive, #9ce0b1);--color-negative: var(--theme-negative, #ffb4b4);--color-warning: var(--theme-warning, #e6ba79)}.tx-modal .payroll-modal-heading h2{color:var(--color-text)}.tx-workspace label.tx-search{display:flex;font-weight:400}.tx-heading .add-button span{display:inline}.tx-workspace :is(input,select,textarea){font-weight:400}.tx-workspace .tx-period label{display:grid}.tx-period select{width:auto;max-width:210px}.tx-workspace .add-button{width:auto;height:auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 14px}.tx-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:8px;align-items:center}.tx-toolbar .tx-period{margin:0;min-width:0}.tx-toolbar .tx-period label{display:block;font-size:0}.tx-toolbar .tx-period select{width:100%;max-width:none;font-size:12px;min-height:44px}.tx-search-toggle{display:grid;place-items:center;width:44px;min-height:44px;padding:0}.tx-toolbar .tx-filter-toggle{width:44px;min-height:44px;padding:0}.tx-toolbar .tx-filter-toggle span{display:none}.tx-workspace .tx-toolbar .tx-search{display:none;grid-column:1/-1;grid-row:2}.tx-workspace .tx-toolbar[data-search-active=true] .tx-search{display:flex}.tx-filters{margin-top:12px}.tx-list-heading{margin:16px 0 4px;gap:8px}.tx-list-heading>span{font-size:12px}.tx-type-filter button{min-height:36px;font-size:11px}@media(min-width:768px){.tx-summary dl{gap:0}.tx-summary-card{padding:20px}.tx-summary dt{display:flex;align-items:center;gap:10px;font-size:12px}.tx-summary dd{margin-top:10px;font-size:26px}.tx-toolbar{grid-template-columns:210px minmax(0,1fr) auto}.tx-workspace .tx-toolbar .tx-search{display:flex;grid-column:2;grid-row:1}.tx-search-toggle{display:none}.tx-toolbar .tx-filter-toggle{width:auto;padding:0 12px}.tx-toolbar .tx-filter-toggle span{display:inline}.tx-row{padding:6px 0}}@media(min-width:1024px){.tx-ledger{display:table}.tx-ledger thead{display:table-header-group}.tx-ledger thead th{text-align:left;font-size:12px;font-weight:600;color:var(--color-text-secondary);padding:12px 10px;background:transparent}.tx-ledger thead th:first-child{width:27%;border-radius:8px 0 0 8px}.tx-ledger thead th:nth-child(2){width:16%}.tx-ledger thead th:nth-child(3){width:20%}.tx-ledger thead th:nth-child(4){width:12%}.tx-ledger thead th:nth-child(5){text-align:right}.tx-ledger thead th:last-child{width:64px;padding-inline:4px;border-radius:0 8px 8px 0}.tx-day{display:table-row-group}.tx-date-row{display:table-row}.tx-date-row th{display:table-cell;padding:14px 0 8px}.tx-movement{display:table-row;border:0;padding:0}.tx-movement td{border-bottom:1px solid var(--color-border);padding:8px 10px}.tx-movement td:first-child{border-left:1px solid var(--color-border)}.tx-movement td:last-child{border-right:1px solid var(--color-border);padding-inline:4px}.tx-date-row+.tx-movement td{border-top:1px solid var(--color-border)}.tx-date-row+.tx-movement td:first-child{border-start-start-radius:10px}.tx-date-row+.tx-movement td:last-child{border-start-end-radius:10px}.tx-movement:last-child td:first-child{border-end-start-radius:10px}.tx-movement:last-child td:last-child{border-end-end-radius:10px}.tx-desktop-cell{display:table-cell}.tx-row-label .tx-mobile-category{display:none}.tx-movement .tx-row{padding:0;gap:10px}.tx-row-label strong{font-size:14px}}.tx-toolbar .tx-period label{width:100%}.tx-movement .tx-row{padding:6px 0}.tx-row-label .tx-mobile-category,.tx-category-label{display:inline-flex;align-items:center;gap:4px;max-width:100%}.tx-mobile-category svg,.tx-category-label svg{width:13px;height:13px;flex-shrink:0}@media(min-width:1024px){.tx-row-label .tx-mobile-category{display:none}}.tx-credit-hint{display:flex;align-items:flex-start;gap:8px;color:var(--color-text-secondary);font-size:12px;line-height:1.7;margin:0}.tx-credit-hint svg{flex-shrink:0;width:17px;height:17px;margin-top:2px}.tx-credit-payment-action{display:inline-flex;justify-self:start;align-items:center;gap:7px;min-height:44px}.tx-credit-payment-action svg{width:17px;height:17px}.tx-row-label .tx-card-context{display:flex;align-items:flex-start;gap:6px;font-size:12px;line-height:1.5}.tx-card-context>svg{flex-shrink:0;width:15px;height:15px;margin-top:2px}@media(min-width:1024px){.tx-row-label .tx-card-context{display:none}}.tx-workspace{--tx-dialog-block-space: 20px;--tx-dialog-inline-space: 20px}.app-shell .tx-workspace .payroll-modal-backdrop .payroll-modal.tx-modal{padding:var(--tx-dialog-block-space) var(--tx-dialog-inline-space);min-width:0}.tx-workspace .tx-modal>.payroll-modal-heading{top:calc(-1 * var(--tx-dialog-block-space));margin:calc(-1 * var(--tx-dialog-block-space)) calc(-1 * var(--tx-dialog-inline-space)) 4px;padding:var(--tx-dialog-block-space) var(--tx-dialog-inline-space);min-width:0}.tx-form-grid>label{min-width:0}.tx-form select{min-width:0;max-width:100%}@media(max-width:480px){.tx-workspace{--tx-dialog-block-space: 18px;--tx-dialog-inline-space: 14px}}.tx-workspace [data-slot=button]{min-height:44px;height:auto;font-size:13px;line-height:1.4;white-space:normal}.tx-workspace [data-slot=button][data-variant=outline]{box-shadow:none}.tx-workspace [data-slot=button]:focus-visible{box-shadow:none}.tx-workspace [data-slot=native-select-wrapper]{width:100%;min-width:0}.tx-workspace [data-slot=native-select]{min-height:44px;padding-inline-end:36px;box-shadow:none}.tx-workspace [data-slot=input],.tx-workspace [data-slot=textarea]{min-height:44px;height:auto;font-size:14px;box-shadow:none}.tx-workspace .tx-amount-entry [data-slot=native-select-wrapper]{width:85px}.tx-workspace .tx-amount-entry input{font-size:28px}.tx-workspace .tx-filter-count{display:inline-flex;min-width:20px;font-size:12px}.tx-filter-toggle[aria-expanded=true]{background:var(--color-selection)}.tx-workspace [data-slot=dialog-overlay]{z-index:1000}.tx-workspace [data-slot=dialog-content]{z-index:1001;display:block;max-height:calc(100dvh - 32px);width:min(600px,calc(100vw - 32px));max-width:none;overflow-y:auto;overscroll-behavior:contain;border:0;padding:var(--tx-dialog-block-space) var(--tx-dialog-inline-space)}.tx-modal .payroll-modal-heading{background:var(--color-surface);z-index:2}.tx-modal .tx-dialog-actions{position:sticky;bottom:calc(-1 * var(--tx-dialog-block-space));padding-block:14px;background:var(--color-surface);z-index:1}.tx-workspace .tx-close,.tx-workspace .tx-row-detail,.tx-workspace .tx-search-toggle{padding:0}.tx-workspace .tx-status{display:inline-flex;width:fit-content}.tx-workspace .tx-pending{color:var(--color-warning-contrast, var(--color-warning));background:var(--color-warning-surface)}.tx-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;margin-top:16px}.tx-saving-icon{animation:tx-saving-spin 1s linear infinite}@keyframes tx-saving-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.tx-saving-icon{animation:none}.tx-workspace [data-slot]{animation:none;transition:none}}@media(max-width:480px){.tx-workspace{width:calc(100% - 12px)}.tx-heading{display:block}.tx-heading-actions{margin-top:16px}.tx-heading p{max-width:none}.tx-heading-actions .tx-primary-action,.tx-heading-actions .tx-secondary-action{flex:1}.tx-workspace [data-slot=input],.tx-workspace [data-slot=textarea],.tx-workspace [data-slot=native-select]{font-size:16px}.tx-toolbar .tx-period select{font-size:13px}.tx-filters{grid-template-columns:minmax(0,1fr)}.tx-row-label .tx-mobile-category{font-size:11px}}.dashboard-welcome{margin:0 0 12px;color:var(--color-text);font:400 13px/1.6 var(--font-body);overflow-wrap:anywhere}.app-shell .dashboard-summary.dashboard-material{display:grid;gap:28px;min-width:0;color:var(--color-text)}.app-shell .dashboard-summary.dashboard-material .dashboard-summary-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0}.app-shell .dashboard-summary.dashboard-material .dashboard-summary-header h1{margin:0;font:400 clamp(28px,2.5vw,36px)/1.15 var(--font-heading);letter-spacing:-.025em}.app-shell .dashboard-summary.dashboard-material .dashboard-summary-period{margin:6px 0 0;font-size:13px;color:var(--color-text-secondary)}.app-shell .dashboard-summary.dashboard-material .dashboard-summary-toolbar{display:block;padding:0;border:0;background:none;box-shadow:none}.app-shell .dashboard-summary.dashboard-material .dashboard-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}.app-shell .dashboard-summary.dashboard-material .dashboard-filters label{min-width:0}.app-shell .dashboard-summary.dashboard-material .dashboard-filters label>span{font-size:13px}.app-shell .dashboard-summary.dashboard-material select{min-height:44px;max-width:100%;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);color:var(--color-text);padding:8px 28px 8px 10px;font:400 13px var(--font-body)}.app-shell .dashboard-summary.dashboard-material :is(button,select):focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 12px}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-heading h2,.app-shell .dashboard-summary.dashboard-material .dashboard-chart-currency-title{font:500 22px/1.3 var(--font-heading);margin:0}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-heading>span{max-width:55ch;font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.app-shell .dashboard-summary.dashboard-material :is(.fin-ledger-charts,.dashboard-compact-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;min-width:0}.app-shell .dashboard-summary.dashboard-material .fin-ledger-currency{grid-column:1/-1;margin:0;font:600 13px var(--font-body);color:var(--color-text-secondary)}.app-shell .dashboard-summary.dashboard-material .fin-chart{min-width:0;padding:20px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface);color:var(--color-text);box-shadow:none}.app-shell .dashboard-summary.dashboard-material .fin-chart-header h3{font:600 14px/1.5 var(--font-body);margin:0}.app-shell .dashboard-summary.dashboard-material .fin-chart-header p{font-size:12px;line-height:1.5}.app-shell .dashboard-summary.dashboard-material .fin-donut-stage{width:180px;margin:8px auto}.app-shell .dashboard-summary.dashboard-material .fin-donut-center>strong{font-size:24px}.app-shell .dashboard-summary.dashboard-material .fin-trend-svg{max-height:180px}.app-shell .dashboard-summary.dashboard-material .fin-chart-legend{max-height:none}.app-shell .dashboard-summary.dashboard-material .fin-chart-toggle button,.app-shell .dashboard-summary.dashboard-material .fin-chart-legend button{min-height:44px}.app-shell .dashboard-summary.dashboard-material .dashboard-charts-view{display:grid;gap:18px}.app-shell .dashboard-summary.dashboard-material .dashboard-chart-currency{display:grid;gap:10px}.app-shell .dashboard-summary.dashboard-material .dashboard-compact-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.app-shell .dashboard-summary.dashboard-material .dashboard-chart-scroll{max-height:320px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.app-shell .dashboard-summary.dashboard-material .dashboard-payroll-row{display:block;margin:0;padding:12px 0;border:0;border-bottom:1px solid var(--color-border);background:transparent}.app-shell .dashboard-summary.dashboard-material .dashboard-payroll-row:last-child{border-bottom:0}.app-shell .dashboard-summary.dashboard-material .dashboard-income-group{display:grid;gap:10px}.app-shell .dashboard-summary.dashboard-material .dashboard-income-group-heading{display:flex;align-items:center;gap:8px}.app-shell .dashboard-summary.dashboard-material .dashboard-employment-mark{display:none}.app-shell .dashboard-summary.dashboard-material .dashboard-income-group-heading h4{margin:0;font-size:13px;font-weight:500;overflow-wrap:anywhere}.app-shell .dashboard-summary.dashboard-material .dashboard-income-series{display:grid;gap:10px}.app-shell .dashboard-summary.dashboard-material .dashboard-series-row{display:grid;grid-template-columns:1fr auto;gap:5px 8px;align-items:baseline}.app-shell .dashboard-summary.dashboard-material .dashboard-series-label{font-size:12px;color:var(--color-text-secondary)}.app-shell .dashboard-summary.dashboard-material .dashboard-series-row>strong{font:600 14px/1.5 var(--font-body);text-align:right;overflow-wrap:anywhere}.app-shell .dashboard-summary.dashboard-material .dashboard-series-row .dashboard-bar-track{grid-column:1/-1;grid-row:2}.app-shell .dashboard-summary.dashboard-material .dashboard-bar-track{position:relative;height:8px;overflow:hidden;border-radius:4px;background:var(--color-surface-secondary)}.app-shell .dashboard-summary.dashboard-material .dashboard-bar-fill{position:absolute;top:0;height:100%;border-radius:inherit;background:var(--chart-tone, var(--color-primary))}.app-shell .dashboard-summary.dashboard-material .chart-tone-income{--chart-tone: var(--color-primary)}.app-shell .dashboard-summary.dashboard-material .chart-tone-estimated{--chart-tone: var(--color-info)}.app-shell .dashboard-summary.dashboard-material .chart-tone-deductions{--chart-tone: var(--palette-accent, #c86d51)}.app-shell .dashboard-summary.dashboard-material .chart-tone-negative{--chart-tone: var(--color-negative)}.app-shell .dashboard-summary.dashboard-material .dashboard-bar-missing{border:1px dashed var(--color-border);background:transparent}.app-shell .dashboard-summary.dashboard-material .dashboard-hours-bars{display:grid;gap:14px;padding-top:12px}.app-shell .dashboard-summary.dashboard-material .dashboard-compact-bar{display:grid;gap:7px;padding:12px 0;background:transparent;border:0}.app-shell .dashboard-summary.dashboard-material .dashboard-compact-bar>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.app-shell .dashboard-summary.dashboard-material .dashboard-compact-bar>div:first-child>span{font-size:13px;overflow-wrap:anywhere}.app-shell .dashboard-summary.dashboard-material .dashboard-compact-bar strong{font:600 14px/1.5 var(--font-body);text-align:right;overflow-wrap:anywhere}.app-shell .dashboard-summary.dashboard-material .dashboard-bar-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--color-text-secondary)}.app-shell .dashboard-summary.dashboard-material .dashboard-obligation-share{font-size:12px;color:var(--color-text-secondary)}.app-shell .dashboard-summary.dashboard-material .fin-chart-empty{min-height:100px;display:grid;place-items:center;font-size:13px;text-align:center;color:var(--color-text-secondary)}.app-shell .dashboard-summary.dashboard-material .dashboard-state-message{font-size:14px}@media(max-width:1000px){.app-shell .dashboard-summary.dashboard-material .dashboard-summary-header{align-items:start;flex-direction:column}.app-shell .dashboard-summary.dashboard-material .dashboard-summary-toolbar{width:100%}.app-shell .dashboard-summary.dashboard-material .dashboard-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.app-shell .dashboard-summary.dashboard-material :is(.fin-ledger-charts,.dashboard-compact-grid){grid-template-columns:minmax(0,1fr)}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-heading{display:block}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-heading>span{display:block;margin-top:5px}.app-shell .dashboard-summary.dashboard-material .dashboard-filters select{width:100%}}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .dashboard-summary.dashboard-material{--color-primary: var(--theme-primary, #a9d1b8);--color-surface: var(--theme-surface, #1a261e);--color-surface-secondary: var(--theme-surface-secondary, #25352b);--color-border: var(--theme-border, #35473a);--color-text: var(--theme-text, #e4ece6);--color-text-secondary: var(--theme-text-secondary, #b7c4b9);--color-action: var(--theme-action, #e2a58b)}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .dashboard-summary.dashboard-material .dashboard-obligation-status{color:#f0ce96;background:#3c2d1e}.app-shell:is([data-theme=dark],[data-theme=system][data-system-dark=true]) .dashboard-summary.dashboard-material .dashboard-obligation-status.status-paid{color:#a9d1b8;background:#253c2e}@media(prefers-reduced-motion:reduce){.app-shell .dashboard-summary.dashboard-material *{animation:none!important;transition:none!important}}.app-shell .dashboard-summary.dashboard-material .dashboard-bar-diverging:after{position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--color-text-secondary);content:""}.app-shell .dashboard-summary.dashboard-material .fin-chart-totals,.app-shell .dashboard-summary.dashboard-material .fin-chart-header p{display:none}.app-shell .dashboard-summary.dashboard-material .fin-trend-svg{margin-top:12px;max-height:220px}.app-shell .dashboard-summary.dashboard-material .fin-trend-detail{min-height:20px;margin:6px 0 0;font-size:12px}.app-shell .dashboard-summary.dashboard-material .fin-donut-center{width:80%}.app-shell .dashboard-summary.dashboard-material .fin-donut-center>strong{font-size:18px}.app-shell .dashboard-summary.dashboard-material .dashboard-chart-currency-title{padding:0;background:transparent}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-groups{display:grid;gap:16px}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-currency-title{margin:0 0 10px;font:600 13px/1.5 var(--font-body);color:var(--color-text-secondary)}.dashboard-ledger-workspace{display:grid;gap:36px;min-width:0}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-heading{align-items:start;margin-bottom:18px}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-heading>span{max-width:58ch}.dashboard-financial-overview{display:grid;gap:16px}.dashboard-financial-currency{min-width:0;padding:20px 24px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface)}.dashboard-financial-currency>h3{margin:0 0 18px;color:var(--color-text-secondary);font:600 13px/1.5 var(--font-body)}.dashboard-financial-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}.dashboard-financial-metric{min-width:0}.dashboard-financial-metric dt{margin-bottom:8px;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.dashboard-financial-metric dd{margin:0;color:var(--color-text);font:500 clamp(22px,2vw,30px)/1.25 var(--font-body);font-variant-numeric:tabular-nums;letter-spacing:-.025em;overflow-wrap:anywhere}.dashboard-financial-metric.metric-income dd{color:var(--color-positive)}.dashboard-financial-metric.metric-expense dd,.dashboard-financial-metric dd.is-negative{color:var(--color-negative)}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-currency-title{margin-bottom:14px;font-weight:600}.app-shell .dashboard-summary.dashboard-material .fin-ledger-charts{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:stretch}.app-shell .dashboard-summary.dashboard-material .dashboard-ledger-groups{gap:28px}@media(max-width:1000px){.app-shell .dashboard-summary.dashboard-material .fin-ledger-charts{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.dashboard-ledger-workspace{gap:28px}.dashboard-financial-currency{padding:18px}.dashboard-financial-currency>h3{margin-bottom:8px}.dashboard-financial-metrics{grid-template-columns:minmax(0,1fr);gap:0}.dashboard-financial-metric{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:baseline;gap:12px;padding-block:12px}.dashboard-financial-metric+.dashboard-financial-metric{border-top:1px solid var(--color-border)}.dashboard-financial-metric dt{margin:0}.dashboard-financial-metric dd{font-size:20px;text-align:right}.app-shell .dashboard-summary.dashboard-material .fin-chart{padding:18px}}.dashboard-employment-count{margin:0;color:var(--color-text-secondary);font-size:12px;line-height:1.5}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/newsreader-latin-400-normal-BFBkh4jY.woff2) format("woff2"),url(/assets/newsreader-latin-400-normal-gRTjlS2D.woff) format("woff")}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/newsreader-latin-500-normal-B66TYsaK.woff2) format("woff2"),url(/assets/newsreader-latin-500-normal-DFwuUcdu.woff) format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-400-normal-Dhut76fR.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-400-normal-BDKaGhyp.woff) format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-500-normal-Bf-nb4oT.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-500-normal-DYtqi0QS.woff) format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-600-normal-DLTa1BUW.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-600-normal-BR_Ojra4.woff) format("woff")}
