@property --bg{syntax:"<color>";inherits:true;initial-value:#0d0d0d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body,.app,.sidebar,.modal-overlay,.modal,input,select,textarea,label,p,span,td,th{transition:background-color var(--duration-slow) var(--ease), border-color var(--duration-slow) var(--ease), color var(--duration-slow) var(--ease)}::view-transition-old(root){animation-duration:1s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-new(root){animation-duration:1s;animation-timing-function:cubic-bezier(.4,0,.2,1)}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070707;--surface:#17171a;--surface-hover:#2a2a2f;--control-fill:#212125;--control-fill-hover:var(--surface-hover);--focus-ring:inset 0 0 0 1px color-mix(in srgb, var(--text) 16%, transparent);--scrim:#00000080;--border:#ffffff1a;--border-strong:#ffffff2e;--text:#f2f2f4;--text-muted:#a9a9b1;--text-subtle:#7d7d85;--green:#3ecf8e;--green-dim:#3ecf8e24;--red:#e5654a;--red-dim:#e5654a1f;--yellow:#d9a441;--yellow-dim:#d9a44121;--blue:#5b8def;--blue-dim:#5b8def24;--brand:#3ecf8e;--brand-dim:#3ecf8e24;--brand-hover:#34b97d;--brand-text:#0d0d0d;--brand-fg:var(--brand);--tag-blue:#6f90d9;--tag-purple:#b08fe0;--tag-teal:#45bfae;--tag-amber:#d9a93d;--tag-orange:#d98a50;--tag-green:#5cc480;--tag-cyan:#4dbfd1;--tag-pink:#d981ae;--tag-red:#d97c7c;--tag-rust:#c2703f;--tag-indigo:#7e8ad9;--tag-slate:#93a1b3;--tag-violet:#a38dd9;--tag-gray:#9ca3af;--tag-yellow:#d9bd4a;--tag-brown:#bd9161;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--text-2xs:.68rem;--text-xs:.72rem;--text-sm:.8rem;--text-base:.875rem;--text-md:.95rem;--text-title:.9rem;--text-lg:1.1rem;--text-xl:1.4rem;--text-2xl:1.8rem;--text-hero:3rem;--font-title:600 var(--text-xl)/1.2 inherit;--weight-title:600;--weight-heading:600;--tracking-title:-.02em;--tracking-tight:-.01em;--control-h:30px;--radius:10px;--radius-sm:8px;--radius-xs:4px;--radius-lg:16px;--radius-xl:22px;--radius-pill:999px;--card-pad:var(--space-5);--card-pad-lg:var(--space-6);--figure-size:var(--text-2xl);--figure-weight:600;--figure-tracking:-.03em;--figure-leading:1.1;--figure-gap:var(--space-2);--gutter:16px;--content-max:1180px;--shadow-sm:0 0 #0000;--shadow-md:0 0 #0000;--shadow-lg:0 0 #0000;--ease:cubic-bezier(.23, 1, .32, 1);--spring-snappy:cubic-bezier(.34, 1.12, .64, 1);--press-scale:.97;--duration-quick:80ms;--duration-fast:.16s;--duration-base:.16s;--duration-slow:.24s;--duration-panel:.42s;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Helvetica Neue,Segoe UI,sans-serif;font-size:var(--text-base);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss01";text-rendering:optimizelegibility;line-height:1.55}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#e9e9ec;--surface:#fff;--surface-hover:#ebebee;--control-fill:#0000000d;--control-fill-hover:#00000017;--scrim:#00000080;--border:#0000001f;--border-strong:#0003;--text:#1d1d1f;--text-muted:#5e5e63;--text-subtle:#86868b;--green:#1f9d67;--green-dim:#1f9d671a;--red:#c24a33;--red-dim:#c24a331a;--yellow:#b8860b;--yellow-dim:#b8860b1a;--blue:#4472d9;--blue-dim:#4472d91a;--brand:#1f9d67;--brand-dim:#1f9d671a;--brand-hover:#18804f;--brand-text:#0d0d0d;--brand-fg:var(--brand);--tag-blue:#2563eb;--tag-purple:#7c3aed;--tag-teal:#0d9488;--tag-amber:#b45309;--tag-orange:#c2410c;--tag-green:#15803d;--tag-cyan:#0e7490;--tag-pink:#be185d;--tag-red:#dc2626;--tag-rust:#b45309;--tag-indigo:#4338ca;--tag-slate:#475569;--tag-violet:#6d28d9;--tag-gray:#4b5563;--tag-yellow:#a16207;--tag-brown:#92542a;--shadow-sm:0 0 #0000;--shadow-md:0 0 #0000;--shadow-lg:0 0 #0000}[data-surface="2"]{--surface:#1e1e22;--surface-hover:#313137;--control-fill:#28282d}[data-surface="3"]{--surface:#26262b;--surface-hover:#393940;--control-fill:#303036}[data-surface="4"]{--surface:#2e2e34;--surface-hover:#41414a;--control-fill:#38383f}[data-theme=light] [data-surface="2"],[data-theme=light] [data-surface="3"],[data-theme=light] [data-surface="4"]{--surface:#fff;--surface-hover:#ebebee;--control-fill:#0000000d}html{scrollbar-width:none}html::-webkit-scrollbar{width:0;height:0;display:none}body{background:var(--bg);min-height:100dvh;overflow-x:clip}.app{max-width:1200px;padding:0 var(--space-6) 0;margin:0 auto}main{padding-top:var(--space-1)}.app-footer{font-size:var(--text-xs);color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.footer-links{gap:var(--space-4);display:flex}.footer-link{cursor:pointer;font-size:var(--text-xs);color:var(--text-muted);transition:color var(--duration-quick) var(--ease);background:0 0;border:none;padding:0;font-family:inherit;text-decoration:none}.footer-link:hover{color:var(--text)}.avatar-error{max-width:260px;margin:var(--space-2) 0 0;font-size:var(--text-xs);color:var(--red);text-align:center;line-height:1.4}.avatar-error-detail{color:var(--text-subtle);font-size:var(--text-2xs);display:block}.avatar{background:var(--brand);width:32px;height:32px;color:var(--brand-text);font-size:var(--text-xs);letter-spacing:.04em;-webkit-user-select:none;user-select:none;box-shadow:0 0 0 1px var(--border);border:none;border-radius:50%;outline:none;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex;position:relative;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.avatar--has-photo,.user-mgmt-avatar--has-photo{background:0 0}.avatar--lg{width:72px;height:72px;font-size:var(--text-lg);letter-spacing:.03em;margin-bottom:var(--space-1)}.avatar--editable{cursor:pointer}.avatar--uploading{opacity:.6}.avatar-edit-overlay{background:var(--scrim);font-size:var(--text-xs);opacity:0;transition:opacity var(--duration-quick) var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.avatar--editable:hover .avatar-edit-overlay{opacity:1}.avatar-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite avatar-spin;display:block}@keyframes avatar-spin{to{transform:rotate(360deg)}}.header{padding:var(--space-4) 0 var(--space-7);justify-content:space-between;align-items:center;gap:var(--space-4);z-index:50;flex-wrap:wrap;margin-bottom:0;display:flex;position:sticky;top:0}.header-left{align-items:center;gap:var(--space-2);display:flex}.header-left h1{font-size:var(--text-lg);color:var(--text);letter-spacing:-.022em;font-weight:600}.year-badge{font-size:var(--text-xs);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px var(--space-2);font-weight:500}.year-dropdown{position:relative}.year-stepper{background:var(--control-fill);border-radius:var(--radius);align-items:center;gap:1px;padding:3px;display:inline-flex;position:relative}.year-step{width:26px;height:28px;color:var(--text-muted);border-radius:var(--radius);cursor:pointer;transition:color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.year-step:hover:not(:disabled){color:var(--text);background:var(--surface)}.year-step:disabled{opacity:.3;cursor:default}.year-step-label{align-items:center;gap:var(--space-1);height:28px;padding:0 var(--space-2);color:var(--text);font-family:inherit;font-size:var(--text-sm);letter-spacing:-.01em;cursor:pointer;border-radius:var(--radius);font-variant-numeric:tabular-nums;transition:background var(--duration-fast) var(--ease);background:0 0;border:none;font-weight:600;display:inline-flex}.year-step-label:hover{background:var(--surface)}.filter-dropdown-menu.year-menu{min-width:180px}.year-menu-row{align-items:center;gap:2px;display:flex}.year-menu-row .year-option{font-variant-numeric:tabular-nums;flex:1;min-width:0;font-weight:600}.year-option-check{color:var(--brand-fg);flex-shrink:0}.year-remove{width:22px;height:22px;color:var(--text-subtle);cursor:pointer;transition:color var(--duration-quick) var(--ease), background var(--duration-quick) var(--ease);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.year-remove:hover{color:var(--red);background:var(--control-fill-hover)}.year-menu-divider{background:var(--border);height:1px;margin:var(--space-1) 2px}.filter-dropdown-item.year-menu-add{color:var(--text-muted)}.year-menu-add svg{flex-shrink:0}.period-selector{--fluid-bg:color-mix(in srgb, var(--surface-hover) 55%, transparent);background:var(--control-fill);border-radius:var(--radius);align-items:center;gap:2px;padding:3px;display:inline-flex;position:relative}.period-btn{border-radius:var(--radius);color:var(--text-muted);cursor:pointer;height:28px;padding:0 var(--space-3);font-size:var(--text-sm);transition:color var(--duration-base) var(--ease), font-weight var(--duration-fast) var(--ease);white-space:nowrap;z-index:1;background:0 0;border:none;font-family:inherit;font-weight:500;position:relative}.period-btn:hover{color:var(--text)}.period-btn.active{color:var(--brand-fg);font-weight:600}.period-divider{background:var(--border-strong);flex-shrink:0;width:1px;height:16px;margin:0 3px}.period-pill{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);pointer-events:none;z-index:0;border:none;position:absolute;top:3px;bottom:3px;left:0}.card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--card-pad)}.card-title{font-size:var(--text-title);font-weight:var(--weight-heading);letter-spacing:var(--tracking-tight);color:var(--text)}.table-card{padding:var(--space-7) 0 var(--space-4);margin-bottom:var(--space-6);background:0 0;border:none;border-radius:0}.table-pagination{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0 2px;border-top:1px solid var(--border);font-size:var(--text-sm);color:var(--text-subtle);margin-top:2px;display:flex}.table-pagination-controls{align-items:center;gap:var(--space-2);display:flex}.table-pagination-page{text-align:center;min-width:6rem;color:var(--text-muted)}.page-error{text-align:center;max-width:360px;margin:0 auto;padding:48px 0}.page-error-title{margin-bottom:var(--space-2);color:var(--text);font-weight:600}.page-error-message{font-size:var(--text-base);color:var(--text-subtle);margin-bottom:var(--space-4);line-height:1.55}.two-col .table-card{background:var(--surface);border-radius:var(--radius);padding:var(--space-3);margin-bottom:var(--space-6);border:none}.table-card h2{font-size:var(--text-title);font-weight:var(--weight-heading);margin-bottom:var(--space-4);color:var(--text);letter-spacing:var(--tracking-tight)}.table-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.table-header h2{margin-bottom:0}.table-header-left{align-items:center;gap:var(--space-3);min-width:0;display:flex}.table-header-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.filter-chip{align-items:center;gap:var(--space-1-5);height:var(--control-h);padding:0 var(--space-4) 0 var(--space-3);border-radius:var(--radius-pill);background:var(--control-fill);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--spring-snappy);border:none;font-family:inherit;font-weight:500;display:inline-flex}.filter-chip:active:not(:disabled):not(.filter-dropdown-trigger){transform:scale(var(--press-scale))}.filter-dropdown-trigger:active:not(:disabled){transform:none}.filter-chip:hover{background:var(--control-fill-hover);color:var(--text)}.filter-chip--active{color:var(--brand-fg)}.filter-chip-check{border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:14px;height:14px;color:var(--brand-text);transition:background var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.filter-chip-check.checked{background:var(--brand);border-color:var(--brand)}.cell-actions-inline{align-items:center;gap:var(--space-2);display:flex}.cell-actions-inline--end{justify-content:flex-end}.table-section-separator{padding:var(--space-1-5) var(--space-3) 2px;font-size:var(--text-xs);color:var(--text-muted);opacity:.7;letter-spacing:.03em;text-transform:uppercase}.search-input{background:var(--control-fill);border-radius:var(--radius-sm);color:var(--text);height:var(--control-h);padding:0 var(--space-4);font-size:var(--text-sm);width:220px;transition:background var(--duration-base) var(--ease), box-shadow var(--duration-base) var(--ease);border:none;outline:none;font-family:inherit;line-height:1.4}.search-input::placeholder{color:var(--text-muted)}.search-input:hover:not(:focus){background:var(--control-fill-hover)}.search-input:focus{box-shadow:var(--focus-ring)}.search-input--full{flex:1;width:auto;min-width:0}.search-field{align-items:center;display:inline-flex;position:relative}.search-field .search-input{padding-right:calc(var(--space-4) + 16px)}.search-clear{width:20px;height:20px;color:var(--text-muted);cursor:pointer;transition:color var(--duration-quick) var(--ease), background var(--duration-quick) var(--ease);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;right:6px}.search-clear:hover{color:var(--text);background:var(--control-fill-hover)}.btn-search{color:var(--text-muted)}.btn-search--active{color:var(--brand-fg)}.search-row-mobile{align-items:center;gap:var(--space-1-5);padding:0 0 var(--space-2);display:flex;overflow:hidden}.table-scroll{max-width:100%;position:relative;overflow-x:clip}.copyable-tip{z-index:9999;max-width:min(360px,90vw);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm);font-size:var(--text-xs);color:var(--text);white-space:normal;word-break:break-word;text-align:left;pointer-events:none;line-height:1.4;animation:.14s ease-out copyable-tip-in;position:fixed}.copyable-tip--copied{color:var(--green);border-color:color-mix(in srgb, var(--green) 35%, var(--border-strong))}@keyframes copyable-tip-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (width>=769px){.expense-table,.invoice-table{table-layout:fixed;width:100%}.expense-table th:first-child{width:13%}.expense-table th:nth-child(2){width:34%}.expense-table th:nth-child(3){width:11%}.expense-table th:nth-child(4),.expense-table th:nth-child(5){width:12%}.expense-table th:nth-child(6){width:13%}.expense-table th:nth-child(7){width:5%}.invoice-table th:first-child{width:14%}.invoice-table th:nth-child(2){width:19%}.invoice-table th:nth-child(3){width:9%}.invoice-table th:nth-child(4){width:11%}.invoice-table th:nth-child(5),.invoice-table th:nth-child(6),.invoice-table th:nth-child(7){width:12%}.invoice-table th:nth-child(8){width:7%}.invoice-table th:nth-child(9){width:4%}.invoice-table th:nth-child(8),.invoice-table td:nth-child(8){padding-right:0}.invoice-table th,.invoice-table td{overflow:hidden}.expense-table td:first-child,.invoice-table td:first-child{text-overflow:ellipsis;overflow:hidden}.invoice-table td:first-child .cell-actions-inline{min-width:0;max-width:100%}.invoice-table td:first-child .cell-name-inner{flex:1 1 0}.invoice-table td:nth-child(3) .cell-actions-inline{gap:var(--space-1);flex-wrap:nowrap;min-width:0;max-width:100%}.invoice-table td:nth-child(3).copyable-value{overflow:visible}.expense-table td:nth-child(2),.invoice-table td:nth-child(2){white-space:normal;overflow:hidden}.expense-table .cell-name,.invoice-table .cell-name{max-width:100%}.expense-table td:nth-child(2) .cell-name{align-items:center;min-width:0;max-width:100%;display:flex;overflow:hidden}.expense-table td:nth-child(2) .cell-name-inner{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;overflow:hidden}.expense-table td:first-child .cell-expense-num{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.invoice-table td:nth-child(2) .cell-name{align-items:center;gap:var(--space-2);min-width:0;max-width:100%;display:flex;overflow:hidden}.invoice-table td:nth-child(2) .cell-name-inner{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;display:block;overflow:hidden}.invoice-table td:nth-child(2) .currency-badge{flex-shrink:0}.invoice-table td.num{overflow:visible}.invoice-table .amount-cell{min-width:0;max-width:100%}.invoice-table .amount-cell .cell-actions-inline{justify-content:flex-end;min-width:0;max-width:100%}.invoice-table .amount-cell .cell-actions-inline>.irpf-rate-badge{flex-shrink:0}.invoice-table .amount-cell .cell-actions-inline>span:not(.irpf-rate-badge){white-space:nowrap}.invoice-table .amount-eur{white-space:nowrap;display:block}.invoice-table th:nth-child(8),.invoice-table td:nth-child(8){padding-left:var(--space-4)}.invoice-table td:nth-child(8){white-space:nowrap;overflow:visible}.invoice-table td:nth-child(9){padding-left:0;padding-right:var(--space-1);overflow:visible}.expense-table .overview-invoice-project{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;overflow:hidden}}table{border-collapse:collapse;width:100%;font-size:var(--text-base)}th{text-align:left;color:var(--text-muted);font-weight:500;font-size:var(--text-sm);letter-spacing:.01em;padding:var(--space-2) var(--space-3);white-space:nowrap}th.num,td.num{text-align:right}td{padding:var(--space-3);border-bottom:1px solid var(--border);white-space:nowrap;color:var(--text);font-variant-numeric:tabular-nums;font-size:var(--text-base)}.expense-table,.invoice-table{font-size:var(--text-title)}.expense-table th,.invoice-table th{padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm)}.expense-table td,.invoice-table td{padding:var(--space-3) var(--space-3);font-size:var(--text-title);border-bottom:none}.expense-table tbody tr,.invoice-table tbody tr{background-image:linear-gradient(color-mix(in srgb, var(--border) 55%, transparent), color-mix(in srgb, var(--border) 55%, transparent));background-size:calc(100% - 2 * var(--space-3)) 1px;background-position:bottom;background-repeat:no-repeat}.expense-table tbody tr:last-child,.invoice-table tbody tr:last-child{background-image:none}.expense-table .row-tags,.invoice-table .row-tags{gap:2px;margin-top:1px}.expense-table .amount-cell,.invoice-table .amount-cell{gap:1px;line-height:1.25}.expense-table .amount-eur,.invoice-table .amount-eur{margin-top:0;line-height:1.1}.expense-table .row-actions .btn-icon,.invoice-table .row-actions .btn-icon{padding:3px var(--space-1-5);font-size:var(--text-sm)}.expense-table .table-section-separator,.invoice-table .table-section-separator{padding-top:var(--space-1);padding-bottom:1px}td.negative{color:var(--text)}.invoice-table tbody tr,.expense-table tbody tr{transition:background-color var(--duration-fast) var(--ease)}.invoice-table tbody tr:hover,.expense-table tbody tr:hover{background-color:color-mix(in srgb, var(--surface-hover) 35%, transparent)}.badge-row{align-items:center;gap:var(--space-1);display:flex}.irpf-rate-badge{font-size:var(--text-xs);border-radius:var(--radius-sm);padding:1px var(--space-1);font-weight:600}.quarter-badge{font-size:var(--text-xs);letter-spacing:.02em;color:var(--text-muted);background:var(--surface-hover);border-radius:var(--radius-sm);padding:1px var(--space-1);flex-shrink:0;font-weight:600}.irpf-rate-badge--yellow{color:var(--yellow);background:var(--yellow-dim)}.currency-badge{font-size:var(--text-xs);border-radius:var(--radius-sm);padding:1px var(--space-1);color:var(--blue);background:var(--blue-dim);letter-spacing:.03em;font-weight:600}.amount-cell{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.amount-cell.negative span:first-child{color:var(--red)}.amount-eur{font-size:var(--text-xs);color:var(--text-muted)}td.positive{color:var(--red)}.iva-qrow{align-items:flex-start;gap:var(--space-1);padding:var(--space-3) var(--space-3);margin:0 calc(-1 * var(--space-3));border-radius:var(--radius);cursor:pointer;-webkit-tap-highlight-color:transparent;min-width:0;transition:background var(--duration-base) var(--ease);flex-direction:column;display:flex}.iva-qrow-flag{font-size:var(--text-2xs);color:var(--green);letter-spacing:.01em;font-weight:600}.irpf-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--card-pad);border:none;flex-direction:column;margin-bottom:0;display:flex}.irpf-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.irpf-header h2{margin-bottom:0}.irpf-period-badge{font-size:var(--text-xs);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:2px var(--space-2)}.irpf-rows{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.irpf-row{justify-content:space-between;align-items:center;display:flex}.irpf-label{font-size:var(--text-sm);color:var(--text-muted)}.irpf-result{padding-top:var(--space-2);margin-top:auto}.modelo130-note{margin:var(--space-2) 0 0;font-size:var(--text-xs);color:var(--text-subtle);line-height:1.4}.rate-tag{padding:1px var(--space-1-5);border-radius:var(--radius-xs);background:var(--surface-hover);color:var(--text-subtle);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;font-weight:600}.modelo130-note--warn{color:var(--text-muted);padding-top:var(--space-2);border-top:1px solid var(--border)}.irpf-big-value{font-size:var(--text-xl);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-weight:500;line-height:1}.irpf-result.pay .irpf-big-value{color:var(--red)}.iva-card--single{margin-top:0}.iva-card--single .irpf-result.pay .irpf-big-value{color:var(--yellow)}.iva-card--flat .irpf-rows{justify-content:space-between;gap:var(--space-4)}.iva-stack-row{gap:var(--space-2);flex-direction:column;display:flex}.iva-stack-value{font-size:var(--figure-size);font-weight:var(--figure-weight);letter-spacing:var(--figure-tracking);line-height:var(--figure-leading);font-variant-numeric:tabular-nums;color:var(--text)}.kpi-label,.fin-label,.project-card-title{line-height:1.25}.iva-stack-value--income{color:var(--green)}.iva-stack-value--expense{color:var(--red)}.iva-stack-value--vat{color:var(--yellow)}.label-with-info{align-items:center;gap:var(--space-1-5);display:inline-flex}.info-anchor{display:inline-flex;position:relative}.info-btn{color:var(--text-subtle);cursor:pointer;transition:color var(--duration-quick) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.info-btn:hover,.info-btn--open{color:var(--text)}.info-pop{z-index:50;min-width:210px;padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);gap:var(--space-1-5);flex-direction:column;display:flex;position:absolute;left:-10px}.info-pop--up{bottom:calc(100% + 8px)}.info-pop--down{top:calc(100% + 8px)}.info-row{justify-content:space-between;align-items:baseline;gap:var(--space-4);white-space:nowrap;display:flex}.info-row--muted{opacity:.65}.info-row--strong .info-value{font-weight:700}.info-label{font-size:var(--text-sm);color:var(--text-muted);font-weight:400}.info-value{font-size:var(--text-sm);color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.info-sep{border-top:1px solid var(--border);display:block}.info-row--strong .info-label{color:var(--text)}.info-value--vat{color:var(--yellow)}.info-value--ok{color:var(--green)}.info-value--bad{color:var(--red)}.info-pop--text{gap:var(--space-2);width:min(280px,100vw - 48px)}.info-text{font-size:var(--text-sm);color:var(--text-muted);white-space:normal;text-align:left;text-transform:none;letter-spacing:normal;font-weight:400;line-height:1.4;display:block}.irpf-result.refund .irpf-big-value{color:var(--green)}.pin-overlay{background:var(--bg);z-index:200;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.pin-card{--login-h:37px;z-index:1;align-items:center;gap:var(--space-2);padding:51px var(--space-6) 45px;background:var(--surface);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:310px;margin-bottom:6vh;display:flex;position:relative}.pin-subtitle{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-2)}.pin-error{font-size:var(--text-sm);color:var(--red);margin-top:var(--space-1)}.boot-overlay:after{content:none}.pin-overlay.boot-overlay{justify-content:center;align-items:center}.boot-mark{font-size:var(--text-2xl);color:var(--text-muted)}.login-head{align-items:center;gap:var(--space-1);margin-bottom:var(--space-5);flex-direction:column;display:flex}.login-logo-text{letter-spacing:-.03em;color:var(--text);-webkit-user-select:none;user-select:none;font-size:2rem;font-weight:700;line-height:1.1}.login-lead{font-size:var(--text-base);color:var(--text-subtle)}.login-form{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.login-stack{gap:var(--space-2);flex-direction:column;display:flex}.login-input{width:100%;height:var(--login-h);padding:0 var(--space-3);background:var(--control-fill);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-base);transition:background-color var(--duration-base) var(--ease), box-shadow var(--duration-base) var(--ease);border:none;outline:none;font-family:inherit}.login-input:hover:not(:focus):not(:disabled){background-color:var(--control-fill-hover)}.login-input::placeholder{color:var(--text-subtle)}.login-input:focus{box-shadow:var(--focus-ring)}.login-input--error{box-shadow:0 0 0 1px var(--red), 0 0 0 4px var(--red-dim)}.login-input-wrap{align-items:center;display:flex;position:relative}.login-input-wrap .login-input{padding-right:var(--space-8)}.login-eye{color:var(--text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);transition:color var(--duration-quick) var(--ease);background:0 0;border:none;align-items:center;display:flex;position:absolute;right:8px}.login-eye:hover{color:var(--text)}.btn-primary.login-submit{width:100%;height:var(--login-h);margin-top:2px;padding:0;font-weight:400}.login-switch{color:var(--text-subtle);font-size:var(--text-sm);cursor:pointer;margin-top:var(--space-3);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease);background:0 0;border:none;font-family:inherit}.login-switch:hover{color:var(--text)}.lock-touchid{justify-content:center;align-items:center;gap:var(--space-2);width:100%;height:var(--login-h,42px);margin-top:var(--space-2);border-radius:var(--radius);background:var(--control-fill);color:var(--text);font-family:inherit;font-size:var(--text-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease);border:none;font-weight:500;display:inline-flex}.lock-touchid:hover:not(:disabled){background:var(--control-fill-hover)}.lock-touchid:disabled{opacity:.6;cursor:default}.login-quick-avatar{background:var(--brand-dim);width:64px;height:64px;color:var(--brand-fg);font-size:var(--text-xl);margin:0 auto var(--space-3);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex;overflow:hidden}.login-quick-avatar img{object-fit:cover;width:100%;height:100%}.login-quick-name{font-size:var(--text-lg);color:var(--text);margin:0 0 var(--space-4);text-align:center;letter-spacing:var(--tracking-tight);font-weight:600}.user-mgmt-modal{width:100%;max-width:540px}.user-mgmt-list{gap:var(--space-1-5);margin:var(--space-3) 0;flex-direction:column;max-height:320px;display:flex;overflow-y:auto}.user-mgmt-page{max-width:880px}.user-mgmt-page .table-card{padding-top:var(--space-5)}.user-mgmt-page .user-mgmt-list{gap:var(--space-2);max-height:none;margin:0;overflow-y:visible}.user-mgmt-page .user-mgmt-row{padding:var(--space-3) var(--space-4);transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease)}.user-mgmt-page .user-mgmt-row:hover{border-color:var(--border-strong)}.user-mgmt-page .user-mgmt-avatar{width:40px;height:40px;font-size:var(--text-base)}.user-mgmt-page .user-mgmt-name{font-size:var(--text-md)}.user-mgmt-empty{font-size:var(--text-base);color:var(--text-muted);text-align:center;padding:var(--space-5) 0}.user-mgmt-row{padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.user-mgmt-row--self{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 5%, transparent)}.user-mgmt-info{align-items:center;gap:var(--space-2);min-width:0;display:flex}.user-mgmt-avatar{background:var(--brand-dim);width:32px;height:32px;color:var(--brand-fg);font-size:var(--text-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex;overflow:hidden}.user-mgmt-name{font-size:var(--text-base);color:var(--text);align-items:center;gap:var(--space-1-5);font-weight:600;display:flex}.user-mgmt-you{font-size:var(--text-xs);color:var(--brand-fg);font-weight:500}.user-mgmt-meta{align-items:center;gap:var(--space-1-5);flex-wrap:wrap;margin-top:2px;display:flex}.user-mgmt-email{font-size:var(--text-xs);color:var(--text-muted)}.user-mgmt-username{font-size:var(--text-xs);color:var(--brand-fg);font-weight:500}.user-mgmt-role-badge{font-size:var(--text-xs);color:var(--text-muted);background:var(--surface-hover);border-radius:var(--radius-sm);padding:1px var(--space-1-5);font-weight:600}.user-mgmt-role-badge[data-role=admin]{color:var(--brand-fg);background:var(--brand-dim)}.user-mgmt-lastlogin{font-size:var(--text-xs);color:var(--text-muted);opacity:.7}.user-mgmt-actions{align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.btn-ghost--danger{color:var(--red)!important}.btn-ghost--danger:hover{background:var(--red-dim)!important}.btn-ghost--warning{color:var(--yellow)!important}.btn-ghost--warning:hover{color:var(--yellow)!important;background:var(--yellow-dim,color-mix(in srgb, var(--yellow) 15%, transparent))!important}.user-mgmt-frozen{font-size:var(--text-xs);color:var(--yellow);font-weight:500}.user-mgmt-error{font-size:var(--text-sm);color:var(--red);background:var(--red-dim);border:1px solid var(--red);border-radius:var(--radius);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}.user-mgmt-form{border-top:1px solid var(--border);padding-top:var(--space-3);margin-top:var(--space-1)}.user-edit-form{background:var(--surface);border:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);padding:var(--space-3);margin-bottom:var(--space-1-5);border-top:none}.profile-success{font-size:var(--text-sm);color:var(--green);margin-top:var(--space-1-5)}.confirm-popup{justify-content:space-between;align-items:center;gap:var(--space-3);border:none;border-top:1px solid var(--border);padding:var(--space-2) 0;margin-bottom:var(--space-3);background:0 0;display:flex}.confirm-popup-msg{font-size:var(--text-sm);color:var(--text);flex:1}.confirm-popup-actions{gap:var(--space-1-5);flex-shrink:0;display:flex}.error-banner{background:var(--red-dim);color:var(--red);padding:var(--space-3) var(--space-4);border-radius:var(--radius);margin-bottom:var(--space-4);font-size:var(--text-base);border:1px solid color-mix(in srgb, var(--red) 30%, transparent);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.error-retry{border:1px solid var(--red);border-radius:var(--radius-sm);color:var(--red);cursor:pointer;font-size:var(--text-sm);padding:var(--space-1) var(--space-3);transition:background var(--duration-fast) var(--ease);white-space:nowrap;background:0 0;font-weight:600}.error-retry:hover{background:var(--red-dim)}.days-badge{padding:3px var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);letter-spacing:.02em;font-weight:600;display:inline-block}.days-pending{background:var(--yellow-dim);color:var(--yellow)}.days-badge--plain{background:0 0;margin-left:3px;padding:0}.gap-warning{font-size:var(--text-xs);color:var(--yellow);background:var(--yellow-dim);border-radius:var(--radius-sm);padding:3px var(--space-2);text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.vat-dot{background:var(--border-strong);cursor:pointer;width:8px;height:8px;transition:background var(--duration-base) var(--ease), opacity var(--duration-base) var(--ease);border-radius:50%;flex-shrink:0;display:inline-block}.dot-hit{padding:var(--space-2);margin:calc(-1 * var(--space-2));cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.vat-dot:hover,.dot-hit:hover .vat-dot{background:var(--text-subtle)}.vat-dot--saving{opacity:.45}.vat-dot--paid{background:var(--green)}.vat-dot--paid:hover,.dot-hit:hover .vat-dot--paid{background:var(--green);opacity:.7}.input-error{border-color:var(--red)!important;background:var(--red-dim)!important}.rate-input-row{gap:var(--space-1-5);align-items:center;display:flex}.rate-input-row input{flex:1;min-width:0}.rate-auto-badge{font-size:var(--text-xs);color:var(--brand-fg);background:var(--brand-dim);padding:2px var(--space-1-5);border-radius:var(--radius-sm);white-space:nowrap;letter-spacing:.03em;font-weight:600}.rate-hint{font-size:var(--text-xs);color:var(--text-muted);opacity:.8}.rate-module--loading{opacity:.55;pointer-events:none}.rate-spinner{border:1.5px solid var(--border);border-top-color:var(--brand);width:10px;height:10px;margin-right:var(--space-1);vertical-align:middle;border-radius:50%;animation:.7s linear infinite bulk-spin;display:inline-block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);background-clip:padding-box;border:2px solid #0000;border-radius:4px}:hover::-webkit-scrollbar-thumb{background-color:var(--border-strong);border-width:1px}::-webkit-scrollbar-thumb:hover{background-color:var(--text-subtle)}::-webkit-scrollbar-thumb:active{background-color:var(--text-subtle)}::-webkit-scrollbar-corner{background:0 0}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}:hover{scrollbar-color:var(--border-strong) transparent}@media (hover:none){::-webkit-scrollbar{width:auto;height:auto}*{scrollbar-width:auto;scrollbar-color:auto}}@property --scroll-fade-start{syntax:"<length>";inherits:false;initial-value:0}@property --scroll-fade-end{syntax:"<length>";inherits:false;initial-value:0}@supports (animation-timeline:scroll()){.scroll-fade-y{-webkit-mask-image:linear-gradient(to bottom, transparent, black var(--scroll-fade-start), black calc(100% - var(--scroll-fade-end)), transparent);mask-image:linear-gradient(to bottom, transparent, black var(--scroll-fade-start), black calc(100% - var(--scroll-fade-end)), transparent);animation-name:scroll-fade-in,scroll-fade-out;animation-duration:0s,0s;animation-timing-function:linear,linear;animation-iteration-count:1,1;animation-direction:normal,normal;animation-play-state:running,running;animation-delay:0s,0s;animation-fill-mode:both,both;animation-timeline:scroll(self);animation-range:0 24px,calc(100% - 24px) 100%}.scroll-fade--flat{animation:none}@keyframes scroll-fade-in{0%{--scroll-fade-start:0px}to{--scroll-fade-start:24px}}@keyframes scroll-fade-out{0%{--scroll-fade-end:24px}to{--scroll-fade-end:0px}}}.fluid-highlight{border-radius:var(--fluid-radius,var(--radius));background:var(--fluid-bg,var(--surface-hover));pointer-events:none;z-index:0;will-change:transform, width, height, opacity;position:absolute;top:0;left:0}.fluid-highlight--danger{background:var(--red-dim)}.fluid [data-fluid-item]{z-index:1;position:relative}.fluid .sidebar-item:hover,.fluid .sidebar-logout:hover,.fluid .settings-nav-item:hover,.fluid .filter-dropdown-item:hover,.fluid .context-menu-item:hover:not(:disabled),.fluid .context-menu-item.danger:hover:not(:disabled),.fluid .invoice-picker-row:hover{background:0 0}.fluid .filter-dropdown-item--active:hover{background:var(--brand-dim)}.fluid .sidebar-item.active:hover{background:var(--control-fill-hover)}.fluid .settings-nav-item.active:hover{background:var(--surface-hover)}@media (width<=900px){.header{gap:var(--space-2);padding:var(--space-3) 0;flex-wrap:wrap}.header-left{flex:1;min-width:0}.period-selector{justify-content:space-between;width:100%}}@media (width<=768px){.app{padding:0 var(--space-3) var(--space-8)}.table-card{padding:var(--space-5) 0 var(--space-3)}.two-col .table-card{padding:var(--space-3)}main{padding-top:var(--space-2)}.table-header{align-items:flex-start;gap:var(--space-2);flex-direction:column}.table-header>div:first-child{row-gap:var(--space-1-5);flex-wrap:wrap}.table-header>div:last-child{justify-content:flex-start;width:100%}.table-header>div:last-child .btn-search{margin-right:auto}.pin-overlay{justify-content:stretch;align-items:stretch}.pin-card.login-card{--login-h:45px;max-width:100%;padding:0 var(--space-8);background:var(--bg);border-radius:0;flex:1;justify-content:center;margin-bottom:0}.login-head{margin-bottom:var(--space-4)}.login-input{padding:0 var(--space-3);font-size:var(--text-md);border-radius:var(--radius)}.login-input[type=password]{font-size:var(--text-md)}.btn-primary.login-submit{font-size:var(--text-md);border-radius:var(--radius);margin-top:var(--space-1-5);padding:0}.login-quick-avatar{width:72px;height:72px;font-size:var(--text-2xl)}.login-quick-name{font-size:var(--text-xl)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:flex-end;padding:0}.modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92vh;padding:var(--space-6) var(--space-5)}.form-grid{gap:var(--space-3);grid-template-columns:1fr}.header-left h1{font-size:var(--text-md)}.btn-ghost.btn-sm{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.invoice-table th:first-child,.invoice-table td:first-child,.invoice-table th:nth-child(3),.invoice-table td:nth-child(3),.invoice-table th:nth-child(4),.invoice-table td:nth-child(4),.invoice-table th:nth-child(5),.invoice-table td:nth-child(5),.invoice-table th:nth-child(6),.invoice-table td:nth-child(6),.invoice-table th:nth-child(8),.invoice-table td:nth-child(8),.invoice-table th:nth-child(9),.invoice-table td:nth-child(9),.expense-table th:first-child,.expense-table td:first-child,.expense-table th:nth-child(3),.expense-table td:nth-child(3),.expense-table th:nth-child(4),.expense-table td:nth-child(4),.expense-table th:nth-child(5),.expense-table td:nth-child(5),.expense-table th:nth-child(7),.expense-table td:nth-child(7),.table-scroll{overflow-x:clip}.expense-table{table-layout:fixed;width:100%}.expense-table th:nth-child(2),.expense-table td:nth-child(2){width:65%}.expense-table th:nth-child(6),.expense-table td:nth-child(6){width:35%}.invoice-table{table-layout:fixed;width:100%}.invoice-table th:nth-child(2),.invoice-table td:nth-child(2){width:65%}.invoice-table th:nth-child(7),.invoice-table td:nth-child(7){width:35%}.cell-name{max-width:100%}.invoice-table tbody tr,.expense-table tbody tr{cursor:pointer;-webkit-tap-highlight-color:transparent}.cell-meta,.cell-tag-dots{display:flex}.row-tags{display:none}.bulk-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.tag-picker-list{gap:var(--space-1)}.tag-chip{font-size:var(--text-xs);padding:2px var(--space-1-5)}.modal--wide,.user-mgmt-modal{width:100%}.user-mgmt-list{max-height:none}.user-mgmt-row{align-items:flex-start;gap:var(--space-2);flex-direction:column}.user-mgmt-info{width:100%}.user-mgmt-actions{border-top:1px solid var(--border);width:100%;padding-top:var(--space-2);justify-content:flex-end}.user-mgmt-meta{gap:var(--space-1)}.user-edit-form{padding:var(--space-2)}}[data-motion][data-motion]{transition-property:background-color,color,border-color,fill,stroke,filter}.btn-primary{justify-content:center;align-items:center;gap:var(--space-1-5);background:var(--control-fill);color:var(--brand-fg);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);padding:var(--space-2) var(--space-5);transition:background var(--duration-base) var(--ease), color var(--duration-base) var(--ease), transform var(--duration-fast) var(--spring-snappy);letter-spacing:.005em;border:none;font-weight:600;line-height:1.4;display:inline-flex}.btn-primary:hover{background:var(--control-fill-hover)}.btn-primary:active:not(:disabled){transform:scale(var(--press-scale))}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-ghost,.btn-secondary{justify-content:center;align-items:center;gap:var(--space-1-5);background:var(--control-fill);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:var(--text-sm);padding:var(--space-2) var(--space-4);transition:color var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease), background var(--duration-base) var(--ease), transform var(--duration-fast) var(--spring-snappy);border:none;font-weight:500;display:inline-flex}.btn-ghost:active:not(:disabled),.btn-secondary:active:not(:disabled){transform:scale(var(--press-scale))}.btn-ghost:hover,.btn-secondary:hover{color:var(--text);background:var(--control-fill-hover)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.modal-overlay{background:var(--scrim);-webkit-backdrop-filter:blur(4px);z-index:100;padding:var(--space-6);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;padding:var(--space-7) var(--space-8);overflow-y:auto}.panel-overlay{background:var(--scrim);-webkit-backdrop-filter:blur(2px);z-index:100;justify-content:flex-end;display:flex;position:fixed;inset:0}.panel{background:var(--surface);border-left:1px solid var(--border);border-radius:var(--radius-xl) 0 0 var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:480px;height:100%;padding:var(--space-6) var(--space-7);overflow:clip auto}@media (width<=768px){.panel{border-radius:0;max-width:100%}}.legal-modal{max-width:680px}.legal-content{margin-top:var(--space-4);font-size:var(--text-sm);color:var(--text);line-height:1.7}.legal-content h3{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin-top:var(--space-5);margin-bottom:var(--space-1-5);font-weight:700}.legal-content p{margin-bottom:var(--space-2);color:var(--text-secondary,var(--text))}.legal-content ul{padding-left:var(--space-4);margin-bottom:var(--space-2)}.legal-content ul li{margin-bottom:var(--space-1)}.legal-content a{color:var(--brand-fg);text-decoration:none}.legal-content a:hover{text-decoration:underline}.legal-updated{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:var(--space-4)}.modal-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:var(--text-md);letter-spacing:-.02em;font-weight:700}.modal-close{color:var(--text-muted);cursor:pointer;font-size:var(--text-md);padding:var(--space-1) var(--space-2);transition:color var(--duration-quick) var(--ease);background:0 0;border:none}.modal-close:hover{color:var(--text)}.form-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.form-grid--single{gap:var(--space-4);grid-template-columns:1fr}.form-input-wrap{display:flex;position:relative}.form-input-wrap input{flex:1;min-width:0;padding-right:var(--space-8)!important}.form-eye{cursor:pointer;width:38px;color:var(--text-muted);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:0;bottom:0;right:0}.form-eye:hover{color:var(--text)}.form-field{gap:var(--space-1);flex-direction:column;display:flex}.form-field label{font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.01em;font-weight:500}.form-field-error{font-size:var(--text-xs);color:var(--red);margin-top:1px;font-weight:500}.form-field input,.form-field select,.form-field textarea,.form-field .select-dd-trigger{appearance:none;background-color:var(--control-fill);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-base);padding:var(--space-2) var(--space-3);transition:background-color var(--duration-base) var(--ease), box-shadow var(--duration-base) var(--ease);border:none;outline:none;width:100%;font-family:inherit;line-height:1.4}.form-field input:hover:not(:disabled):not(:focus),.form-field select:hover:not(:disabled):not(:focus),.form-field textarea:hover:not(:disabled):not(:focus),.form-field .select-dd-trigger:hover:not([aria-expanded=true]){background-color:var(--control-fill-hover)}.form-field textarea{resize:vertical}.form-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8' fill='none' stroke='%23909090' stroke-width='1.4' stroke-linecap='round'%3E%3Cpolyline points='1,2.5 4,5.5 7,2.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:calc(var(--space-3) + 16px)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.form-field .select-dd-trigger[aria-expanded=true]{box-shadow:var(--focus-ring);outline:none}.select-dd-trigger{justify-content:space-between;align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;display:flex}.select-dd-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.select-dd-value.empty{color:var(--text-subtle)}.select-dd-chevron{color:var(--text-subtle);flex-shrink:0}.form-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-field input[type=number]{-moz-appearance:textfield}.form-field select option{background:var(--surface);color:var(--text)}.form-preview{gap:var(--space-5);padding:var(--space-3);background:var(--surface-hover);border-radius:var(--radius-sm);margin-bottom:var(--space-4);font-size:var(--text-sm);color:var(--text-muted);display:flex}.form-preview strong{color:var(--text)}.form-error{background:var(--red-dim);color:var(--red);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:var(--space-3)}.form-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-7);display:flex}.export-fields{gap:var(--space-5);flex-direction:column;display:flex}.export-format{width:100%;display:flex}.export-format .segmented-btn{flex:1;justify-content:center;padding:0}.export-actions{margin-top:var(--space-6)}.form-field input.input-error,.form-field select.input-error,.datepicker-input.input-error{box-shadow:0 0 0 1px var(--red);background:var(--red-dim)}.datepicker-input{background:var(--control-fill);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-base);padding:var(--space-2) var(--space-3);cursor:pointer;width:100%;transition:border-color var(--duration-base) var(--ease);border:none;outline:none}.datepicker-input:focus{box-shadow:var(--focus-ring)}.datepicker-calendar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3);box-shadow:var(--shadow-lg);width:232px}.datepicker-nav{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.datepicker-month{font-size:var(--text-sm);color:var(--text);font-weight:600}.datepicker-nav-btn{color:var(--text-muted);cursor:pointer;font-size:var(--text-lg);padding:2px var(--space-1-5);border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);background:0 0;border:none;line-height:1}.datepicker-nav-btn:hover{color:var(--text);background:var(--surface-hover)}.datepicker-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.datepicker-dayname{font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:3px 0;font-weight:500}.datepicker-day{color:var(--text);font-size:var(--text-xs);padding:var(--space-1) 0;border-radius:var(--radius-sm);cursor:pointer;text-align:center;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);background:0 0;border:none}.datepicker-day:hover{background:var(--surface-hover)}.datepicker-day.today{color:var(--brand-fg);font-weight:600}.datepicker-day.selected{background:var(--brand);color:var(--brand-text);font-weight:600}.btn-add{align-items:center;gap:var(--space-1);height:var(--control-h);padding:0 var(--space-3);border-radius:var(--radius-sm);background:var(--control-fill);color:var(--text);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--spring-snappy);border:none;font-weight:500;display:inline-flex}.btn-add:active:not(:disabled){transform:scale(var(--press-scale))}.btn-add--icon{width:var(--control-h);justify-content:center;padding:0}.page-header-toolbar:has(>.toolbar-end){width:100%}.page-header:has(.toolbar-end){margin-bottom:var(--space-3)}.toolbar-end{margin-left:auto}.btn-add svg{stroke:var(--text);transition:stroke var(--duration-fast) var(--ease)}.btn-add:hover svg{stroke:var(--text)}.btn-add--primary svg,.btn-add--primary:hover svg{stroke:var(--brand-fg)}.btn-add:hover{background:var(--control-fill-hover);color:var(--text)}.btn-add--primary{color:var(--brand-fg);font-weight:600}.btn-add--primary:hover{background:var(--control-fill-hover);color:var(--brand-fg)}.row-actions{gap:var(--space-1);justify-content:flex-end;display:flex}.btn-icon{background:var(--control-fill);color:var(--text-muted);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-sm);cursor:pointer;transition:color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease), transform var(--duration-fast) var(--spring-snappy);border:none;justify-content:center;align-items:center;display:inline-flex}.btn-icon:active:not(:disabled){transform:scale(var(--press-scale))}.btn-icon:hover{color:var(--text);background:var(--control-fill-hover)}.btn-icon--danger:hover{color:var(--red);background:var(--red-dim)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-export,.btn-export:hover{background:0 0}.btn-export{padding:0 var(--space-1-5);color:var(--text-muted)}.btn-export:hover{color:var(--text)}.btn-export-label{display:none}.btn-row-more{padding:3px var(--space-1-5);letter-spacing:.12em;background:0 0;border:none}.btn-row-more:hover{background:var(--surface-hover)}.status-toggle{cursor:pointer}.invoice-table .status-hit{min-height:0;margin:calc(-1 * var(--space-1-5));display:inline-flex}.status-dot{width:11px;height:11px;transition:opacity var(--duration-quick) var(--ease);border-radius:50%;display:inline-block}.status-hit{margin:calc(-1 * var(--space-1-5));padding:var(--space-1-5);min-height:calc(var(--bulk-field-h,28px) + 12px);cursor:pointer;justify-content:center;align-items:center;display:flex}.status-hit:hover .status-dot{opacity:.7}.expense-table tbody tr,.invoice-table tbody tr{-webkit-user-select:none;user-select:none}.tr-selected td{background:#8080800f}.tr-selected td:first-child{box-shadow:inset 3px 0 0 var(--border-strong)}.tr-amortized td{opacity:.55}.tr-amortized:hover td{opacity:.72}.amort-badge{font-size:var(--text-xs);padding:1px var(--space-1);border-radius:var(--radius-sm);background:var(--control-fill-hover);color:var(--text-muted);vertical-align:middle;letter-spacing:.01em;font-weight:500;display:inline-block}.selection-count{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;opacity:.7}.btn-delete-bulk{height:var(--control-h);padding:0 var(--space-3);border-radius:var(--radius-sm);background:var(--red-dim);color:var(--red);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background var(--duration-quick) var(--ease);border:none;align-items:center;font-family:inherit;font-weight:600;display:inline-flex}.btn-delete-bulk:hover{background:color-mix(in srgb, var(--red) 24%, transparent)}.btn-delete-bulk--active{border-color:var(--red);background:color-mix(in srgb, var(--red) 22%, transparent)}.btn-delete-bulk:disabled{opacity:.5;cursor:not-allowed}.modal--wide{max-width:820px}.bulk-dropzone{border:2px dashed var(--border-strong);border-radius:var(--radius);padding:var(--space-7) var(--space-5);align-items:center;gap:var(--space-1-5);cursor:pointer;transition:border-color var(--duration-quick) var(--ease), background var(--duration-quick) var(--ease);margin-bottom:var(--space-4);-webkit-user-select:none;user-select:none;flex-direction:column;display:flex}.bulk-dropzone:hover,.bulk-dropzone--active{border-color:var(--blue);background:var(--blue-dim)}.bulk-dropzone-icon{font-size:var(--text-2xl);color:var(--text-muted);line-height:1}.bulk-dropzone--active .bulk-dropzone-icon{color:var(--blue)}.bulk-dropzone-text{font-size:var(--text-base);color:var(--text);font-weight:500}.bulk-dropzone-hint{font-size:var(--text-xs);color:var(--text-muted)}.bulk-table-wrap{margin-bottom:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-sm);overflow-x:auto}.bulk-table{border-collapse:collapse;width:100%;font-size:var(--text-sm);table-layout:fixed}.bulk-table th{padding:var(--space-2) var(--space-1-5);text-align:left;font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.03em;white-space:nowrap;font-weight:600}.bulk-table th.num,.bulk-table td.num{text-align:right}.bulk-row td{padding:var(--space-1-5) var(--space-1-5);border-bottom:1px solid var(--border);vertical-align:top;overflow:hidden}.bulk-row td:last-child{padding:var(--space-1-5) var(--space-1)}.bulk-lead{min-height:var(--bulk-field-h);align-items:center;display:flex}.bulk-lead--end{justify-content:flex-end}.bulk-lead--center{justify-content:center}.bulk-row td:last-child .btn-icon{padding:var(--space-1) var(--space-1-5)}.bulk-row:last-child td{border-bottom:none}.bulk-row--error td:not(:first-child):not(:last-child){opacity:.4}.bulk-table{--bulk-field-h:28px}.bulk-input{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm);height:var(--bulk-field-h,28px);padding:0 var(--space-1-5);width:100%;min-width:60px;transition:border-color var(--duration-base) var(--ease);outline:none}.bulk-input:focus{border-color:var(--border-strong)}.bulk-input:disabled{opacity:.35;cursor:not-allowed}select.bulk-input{appearance:none;padding-right:var(--space-4);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8' fill='none' stroke='%23909090' stroke-width='1.4' stroke-linecap='round'%3E%3Cpolyline points='1,2.5 4,5.5 7,2.5'/%3E%3C/svg%3E");background-position:right 5px center;background-repeat:no-repeat}.bulk-input--rate{width:70px;font-size:var(--text-xs);padding:0 var(--space-1);height:22px}.bulk-input--sm{font-size:var(--text-xs);padding:0 var(--space-1);min-width:0}.bulk-input[type=number]{font-variant-numeric:tabular-nums;-moz-appearance:textfield}.bulk-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.bulk-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}select.bulk-input option{background:var(--surface);color:var(--text)}.bulk-field-row{gap:var(--space-1);align-items:center;display:flex}.bulk-cell-stack{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.bulk-hint{font-size:var(--text-xs);color:var(--text-muted);opacity:.75;letter-spacing:.02em;white-space:nowrap;line-height:1.25}.bulk-total{font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--text);white-space:nowrap}.bulk-error-msg{font-size:var(--text-xs);color:var(--red);white-space:nowrap;text-overflow:ellipsis;max-width:220px;display:block;overflow:hidden}.bulk-badge{width:18px;height:18px;font-size:var(--text-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.bulk-badge--ok{background:var(--green-dim);color:var(--green)}.bulk-badge--err{background:var(--red-dim);color:var(--red)}@keyframes bulk-spin{to{transform:rotate(360deg)}}.monthly-chart-card{padding:var(--space-6) 0 var(--space-4);margin-bottom:var(--space-6);background:0 0;border:none;border-radius:0}@media (width<=680px){.monthly-chart-card{display:none}}.monthly-chart-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.monthly-chart-title-row{align-items:center;gap:var(--space-2);display:flex}.chart-avg-badge{font-size:var(--text-sm);color:var(--green);background:var(--green-dim);border-radius:var(--radius-sm);padding:2px var(--space-2);font-variant-numeric:tabular-nums;font-weight:600}.monthly-chart-header h2{font-size:var(--text-title);font-weight:var(--weight-heading);color:var(--text);letter-spacing:var(--tracking-tight)}.chart-svg-wrapper{position:relative}.line-chart-svg{width:100%;height:auto;display:block;overflow:visible}@keyframes skeleton-pulse{0%,to{opacity:.35}50%{opacity:.75}}.skeleton{background:var(--control-fill-hover);border-radius:4px;animation:2s ease-in-out infinite skeleton-pulse}@media (prefers-reduced-motion:reduce){.skeleton{opacity:.5;animation:none}}@keyframes chart-pulse{0%,to{opacity:.7;transform:scale(1)}60%{opacity:0;transform:scale(2.8)}}.chart-pulse-ring{transform-box:fill-box;transform-origin:50%;animation:2s ease-out infinite chart-pulse}.chart-tooltip{background:var(--surface-hover);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-2);pointer-events:none;z-index:20;white-space:nowrap;box-shadow:var(--shadow-md);border:none;min-width:130px;position:absolute;transform:translate(-50%,calc(-100% - 10px))}.chart-tooltip--start{transform:translateY(calc(-100% - 10px))}.chart-tooltip--end{transform:translate(-100%,calc(-100% - 10px))}.chart-tooltip-month{font-size:var(--text-xs);color:var(--text);margin:0 0 var(--space-1-5);font-weight:600}.chart-tooltip-row{justify-content:space-between;gap:var(--space-4);margin-bottom:3px;display:flex}.chart-tooltip-row:last-child{margin-bottom:0}.chart-tooltip-label{font-size:var(--text-xs);color:var(--text-muted)}.chart-tooltip-value{font-size:var(--text-xs);font-weight:600}.chart-tooltip-value--net{color:var(--green)}.chart-tooltip-value--income{color:var(--brand-fg)}.chart-tooltip-value--expense{color:var(--red)}.month-detail{margin-top:var(--space-4);padding-top:var(--space-2)}.month-detail-cols{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}@media (width<=680px){.month-detail-cols{grid-template-columns:1fr}}.month-detail-heading{align-items:center;gap:var(--space-1-5);margin-bottom:var(--space-2);display:flex}.month-detail-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.month-detail-dot--income{background:var(--brand)}.month-detail-dot--expense{background:var(--red)}.month-detail-label{font-size:var(--text-sm);color:var(--text);flex:1;font-weight:600}.month-detail-month{font-size:var(--text-xs);color:var(--brand-fg);opacity:.75;font-weight:500}.month-detail-total{font-size:var(--text-sm);font-weight:500}.month-detail-total--income{color:var(--brand-fg)}.month-detail-total--expense{color:var(--red)}.month-detail-empty{font-size:var(--text-sm);color:var(--text-muted);padding:var(--space-1-5) 0}.month-detail-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.month-detail-table th{text-align:left;color:var(--text-muted);padding:var(--space-1) var(--space-1-5);font-weight:500}.month-detail-table td{padding:var(--space-1-5);color:var(--text);text-overflow:ellipsis;white-space:nowrap;border-bottom:none;max-width:160px;overflow:hidden}.month-detail-table th.num,.month-detail-table td.num{text-align:right}.tag-chip{padding:2px var(--space-1-5);border-radius:var(--radius-pill);font-size:var(--text-xs);white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:3px;font-weight:500;line-height:1.4;display:inline-flex}.tag-chip--clickable{cursor:pointer;transition:opacity var(--duration-quick) var(--ease)}.tag-chip--clickable:hover{opacity:.75}.tag-chip--blue{background:color-mix(in srgb, var(--tag-blue) 16%, transparent);color:var(--tag-blue)}.tag-chip--purple{background:color-mix(in srgb, var(--tag-purple) 16%, transparent);color:var(--tag-purple)}.tag-chip--teal{background:color-mix(in srgb, var(--tag-teal) 16%, transparent);color:var(--tag-teal)}.tag-chip--amber{background:color-mix(in srgb, var(--tag-amber) 16%, transparent);color:var(--tag-amber)}.tag-chip--orange{background:color-mix(in srgb, var(--tag-orange) 16%, transparent);color:var(--tag-orange)}.tag-chip--green{background:color-mix(in srgb, var(--tag-green) 16%, transparent);color:var(--tag-green)}.tag-chip--cyan{background:color-mix(in srgb, var(--tag-cyan) 16%, transparent);color:var(--tag-cyan)}.tag-chip--pink{background:color-mix(in srgb, var(--tag-pink) 16%, transparent);color:var(--tag-pink)}.tag-chip--red{background:color-mix(in srgb, var(--tag-red) 16%, transparent);color:var(--tag-red)}.tag-chip--rust{background:color-mix(in srgb, var(--tag-rust) 16%, transparent);color:var(--tag-rust)}.tag-chip--indigo{background:color-mix(in srgb, var(--tag-indigo) 16%, transparent);color:var(--tag-indigo)}.tag-chip--slate{background:color-mix(in srgb, var(--tag-slate) 16%, transparent);color:var(--tag-slate)}.tag-chip--violet{background:color-mix(in srgb, var(--tag-violet) 16%, transparent);color:var(--tag-violet)}.tag-chip--gray{background:color-mix(in srgb, var(--tag-gray) 16%, transparent);color:var(--tag-gray)}.tag-chip--yellow{background:color-mix(in srgb, var(--tag-yellow) 16%, transparent);color:var(--tag-yellow)}.tag-chip--brown{background:color-mix(in srgb, var(--tag-brown) 16%, transparent);color:var(--tag-brown)}.row-tags{flex-wrap:wrap;gap:3px;margin-top:3px;display:flex}@media (width<=768px){.row-tags{display:none}}.bulk-tags{flex-wrap:wrap;gap:3px;display:flex}.bulk-tags .tag-chip{cursor:pointer}.bulk-tags .tag-chip:hover{opacity:.7}.tag-picker{gap:var(--space-2);flex-direction:column;display:flex}.tag-picker-list{gap:var(--space-1-5);flex-wrap:wrap;display:flex}.tag-picker .tag-chip{cursor:pointer;opacity:.45;transition:opacity var(--duration-quick) var(--ease), transform var(--duration-quick) var(--ease);border:1px solid #0000}.tag-picker .tag-chip:hover{opacity:.75;transform:scale(1.04)}.tag-chip--sel{outline-offset:1px;outline:1.5px solid;opacity:1!important}.tag-picker-note{font-size:var(--text-xs);color:var(--tag-rust);margin-top:var(--space-1-5);line-height:1.4}.tag-picker-custom-list{gap:var(--space-1-5);flex-wrap:wrap;display:flex}.tag-picker-add-row{gap:var(--space-1-5);align-items:center;display:flex}.tag-picker-input{min-width:0;height:28px;padding:0 var(--space-2);background:var(--surface-hover);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm);border:none;flex:1}.tag-picker-input::placeholder{color:var(--text-subtle)}.tag-picker-btn{background:var(--surface-hover);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;font-size:var(--text-md);transition:background var(--duration-fast) var(--ease);border:none;justify-content:center;align-items:center;display:flex}.tag-picker-btn:hover{background:var(--surface-hover);color:var(--text)}.filter-dropdown{position:relative}.sort-dropdown{align-items:center;gap:var(--space-1-5);display:inline-flex}.filter-dropdown-trigger{align-items:center;gap:var(--space-1);white-space:nowrap;display:flex}.table-header .btn-icon,.sort-dir-btn{height:var(--control-h);padding:0 var(--space-3);border-radius:var(--radius-pill)}.table-header .sort-dir-btn,.sort-dir-btn{padding:0 var(--space-1-5);background:0 0}.sort-dir-btn:hover{color:var(--text);background:0 0}.filter-dropdown-chevron{opacity:.6;flex-shrink:0}.filter-dropdown-menu{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:170px;max-height:280px;box-shadow:var(--shadow-lg);padding:var(--space-1);transform-origin:0 0;flex-direction:column;gap:1px;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}.filter-dropdown-item{align-items:center;gap:var(--space-2);text-align:left;width:100%;padding:var(--space-1-5) var(--space-3);color:var(--text);font-size:var(--text-sm);border-radius:var(--radius);cursor:pointer;transition:background var(--duration-fast) var(--ease);background:0 0;border:none;font-family:inherit;display:flex}.filter-dropdown-item:hover{background:var(--surface-hover)}.filter-dropdown-item--active{background:var(--brand-dim);color:var(--brand-fg)}.filter-dropdown-item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.filter-dropdown-item-count{font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0}.filter-dropdown-pill{font-size:var(--text-xs);color:var(--text-muted);margin-left:-2px}.tag-analyze-error{font-size:var(--text-xs);color:var(--red);padding:var(--space-1) var(--space-5) 0}.cell-supplier{align-items:center;gap:var(--space-1-5);min-width:0;display:flex}.cell-supplier-main{flex:1 1 0;min-width:0}.cell-name{align-items:center;gap:var(--space-1-5);font-size:var(--text-sm);min-width:0;max-width:200px;display:flex}.cell-sub-note{font-size:var(--text-xs);color:var(--text-muted);margin-top:1px}.cell-name-inner{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;display:block;overflow:hidden}.cell-tag-dots{flex-shrink:0;align-items:center;gap:3px}@media (width>=769px){.cell-tag-dots{display:none}}.tag-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.tag-dot--blue{background:var(--tag-blue)}.tag-dot--purple{background:var(--tag-purple)}.tag-dot--teal{background:var(--tag-teal)}.tag-dot--amber{background:var(--tag-amber)}.tag-dot--orange{background:var(--tag-orange)}.tag-dot--green{background:var(--tag-green)}.tag-dot--cyan{background:var(--tag-cyan)}.tag-dot--pink{background:var(--tag-pink)}.tag-dot--red{background:var(--tag-red)}.tag-dot--indigo{background:var(--tag-indigo)}.tag-dot--slate{background:var(--tag-slate)}.tag-dot--violet{background:var(--tag-violet)}.tag-dot--gray{background:var(--tag-gray)}.tag-dot--yellow{background:var(--tag-yellow)}.tag-dot--brown{background:var(--tag-brown)}.cell-meta{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-muted);flex-wrap:wrap;margin-top:2px;display:none}.cell-meta-sep{opacity:.4}.status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-dot--paid{background:var(--green)}.status-dot--pending{background:var(--yellow)}.detail-overlay{z-index:200;background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:flex-end;display:flex;position:fixed;inset:0}.detail-sheet{background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;padding:8px 20px calc(32px + env(safe-area-inset-bottom));max-height:80vh;box-shadow:var(--shadow-lg);overflow-y:auto}.detail-handle{background:var(--border-strong);width:36px;height:4px;margin:0 auto var(--space-3);padding:var(--space-2) var(--space-5);box-sizing:content-box;background-clip:content-box;border-radius:2px}.detail-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.detail-title{font-size:var(--text-md);color:var(--text);font-weight:600;line-height:1.25}.detail-subtitle{font-size:var(--text-sm);color:var(--text-muted);margin-top:2px}.detail-close{background:var(--surface-hover);cursor:pointer;width:28px;height:28px;color:var(--text-muted);font-size:var(--text-sm);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.detail-close:hover{color:var(--text)}.detail-rows{border-top:1px solid var(--border);margin-bottom:var(--space-3);flex-direction:column;gap:0;display:flex}.detail-row{padding:var(--space-2) 0;border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.detail-row-label{font-size:var(--text-sm);color:var(--text-muted);flex-shrink:0}.detail-row-value-wrap{text-align:right}.detail-row-value{font-size:var(--text-base);color:var(--text);font-variant-numeric:tabular-nums}.detail-row-value--bold{font-weight:700;font-size:var(--text-md);color:var(--text)}.detail-row-sub{font-size:var(--text-xs);color:var(--text-muted);margin-top:1px;display:block}.detail-status-row{margin-bottom:var(--space-4)}.detail-tags{gap:var(--space-1-5);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.detail-actions{gap:var(--space-2);padding-top:var(--space-2);display:flex}.detail-actions>*{text-align:center;flex:1;justify-content:center}.mobile-menu-overlay{background:var(--scrim);z-index:200;position:fixed;inset:0}.mobile-menu-sheet{z-index:201;background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-3) var(--space-5) var(--space-7);gap:var(--space-5);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-menu-handle{background:var(--border);width:36px;height:4px;padding:var(--space-2) var(--space-5);box-sizing:content-box;background-clip:content-box;border-radius:2px;margin:0 auto}.mobile-menu-actions{gap:var(--space-1);flex-direction:column;display:flex}.mobile-menu-btn{align-items:center;gap:var(--space-3);color:var(--text);font-size:var(--text-title);padding:var(--space-3) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background var(--duration-fast) var(--ease);background:0 0;border:none;font-weight:500;display:flex}.mobile-menu-btn:hover{background:var(--surface-hover)}.mobile-menu-btn--danger{color:var(--red)}.mobile-menu-actions .btn-ghost{width:100%;padding:var(--space-3) var(--space-2);font-size:var(--text-title);justify-content:flex-start;gap:var(--space-3);border-radius:var(--radius-sm);font-weight:500}.btn-ghost--active{background:var(--brand-dim);color:var(--brand-fg);border-color:var(--brand)}.rate-auto-btn{cursor:pointer;white-space:nowrap;appearance:none;min-width:52px;transition:none;box-shadow:none!important;outline:none!important}.btn-ghost.rate-auto-btn,.btn-ghost.rate-auto-btn:hover,.btn-ghost.rate-auto-btn:focus,.btn-ghost.rate-auto-btn:focus-visible{color:var(--text-muted);border-color:var(--border);box-shadow:none;background:0 0;outline:none}.btn-ghost.rate-auto-btn.btn-ghost--active,.btn-ghost.rate-auto-btn.btn-ghost--active:hover,.btn-ghost.rate-auto-btn.btn-ghost--active:focus,.btn-ghost.rate-auto-btn.btn-ghost--active:focus-visible{color:var(--brand-fg);border-color:var(--brand);background:var(--brand-dim);box-shadow:none;outline:none}.btn-ghost.rate-auto-btn:active{transform:scale(.93)}.month-detail-table td.muted{color:var(--text-muted)}.app-shell{min-height:100dvh;display:flex}.main-area{min-width:0;transition:margin-left var(--duration-panel) var(--ease);flex-direction:column;flex:1;margin-left:232px;display:flex;overflow-x:clip}.page-content{--page-pad-top:var(--space-7);padding:var(--page-pad-top) var(--space-7) 48px;max-width:var(--content-max);flex:1;width:100%;margin:0 auto;overflow-x:clip}.tauri-desktop .page-content{--page-pad-top:48px}.desktop-drag-strip{display:none}.tauri-desktop .desktop-drag-strip{z-index:10000;height:28px;display:block;position:fixed;top:0;left:0;right:0}.tauri-desktop .panel{padding-top:44px}.tauri-toolbar .tauri-desktop .desktop-drag-strip{height:52px}.tauri-toolbar .tauri-desktop .panel{padding-top:68px}.tauri-toolbar .tauri-desktop .page-content{--page-pad-top:60px}.sidebar{width:232px;transition:width var(--duration-slow) var(--ease), transform var(--duration-panel) var(--ease), opacity var(--duration-panel) var(--ease);z-index:40;padding:var(--space-2) var(--space-2) 0;background:0 0;flex-direction:column;flex-shrink:0;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.app-shell[data-sidebar=hidden] .sidebar{opacity:0;pointer-events:none;transform:translate(-24px)}.app-shell[data-sidebar=hidden] .main-area{margin-left:0}@media (width>=769px){.app-shell[data-sidebar=hidden] .page-content{padding-left:calc(var(--space-7) + var(--space-6))}}.sidebar-reveal{top:var(--space-3);left:var(--space-3);z-index:41;border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:fixed}.sidebar-reveal:hover{background:var(--surface-hover);color:var(--text)}.tauri-desktop .sidebar-reveal{top:36px}.sidebar-logo{padding:var(--space-1-5) var(--space-5) 0;align-items:center;gap:var(--space-2);flex-shrink:0;min-height:52px;display:flex}.tauri-desktop .sidebar-logo{padding-top:var(--space-6);min-height:64px}.tauri-toolbar .tauri-desktop .sidebar-logo{min-height:88px;padding-top:52px}.sidebar-logo-text{color:var(--text);letter-spacing:-.03em;white-space:nowrap;font-size:2rem;font-weight:700}.sidebar-logo{cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;width:100%;transition:opacity var(--duration-fast) var(--ease);background:0 0;border:none;font-family:inherit}.sidebar-logo:hover{opacity:.7}.sidebar-logo:focus-visible{outline:1px solid color-mix(in srgb, var(--text) 22%, transparent);outline-offset:2px;border-radius:var(--radius-sm)}.sidebar-nav{--fluid-radius:var(--radius-sm);padding:var(--space-3) var(--space-2);scrollbar-width:none;flex-direction:column;flex:1;gap:2px;display:flex;position:relative;overflow:hidden auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), font-weight var(--duration-fast) var(--ease);white-space:nowrap;text-align:left;background:0 0;border:none;width:100%;min-height:36px;font-family:inherit;font-weight:500;display:flex}.sidebar-item:hover{background:var(--surface-hover);color:var(--text)}.sidebar-item.active{background:var(--control-fill-hover);color:var(--text);font-weight:600}.sidebar-item-icon{opacity:.6;width:16px;height:16px;transition:color var(--duration-fast) var(--ease), opacity var(--duration-fast) var(--ease);flex-shrink:0}.sidebar-item.active .sidebar-item-icon{opacity:1;color:var(--brand-fg)}.sidebar-bottom{--fluid-radius:var(--radius-sm);padding:var(--space-2) 0 var(--space-3);flex-direction:column;gap:2px;display:flex;position:relative}.sidebar-divider{background:var(--border);height:1px;margin:var(--space-2)}.sidebar-options{overflow:hidden}.sidebar-options-list{flex-direction:column;gap:2px;padding-bottom:2px;display:flex}.sidebar-user-row{align-items:center;gap:2px;display:flex}.sidebar-logout{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-subtle);cursor:pointer;transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.sidebar-logout:hover{background:var(--surface-hover);color:var(--text)}.sidebar-user{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;flex:1;min-width:0;font-family:inherit;display:flex}.sidebar-user .avatar{width:28px;height:28px;font-size:var(--text-xs);border:.5px solid var(--border-strong)}.sidebar-username{font-size:var(--text-base);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}@media (width<=1024px) and (width>=769px){.sidebar{width:56px}.main-area{margin-left:56px}.sidebar-item{padding:var(--space-2);justify-content:center}.sidebar-item-label,.sidebar-logo-text,.sidebar-username{display:none}.sidebar-logo,.sidebar-user{justify-content:center}.sidebar-user-row{flex-direction:column}}@media (width<=768px){.sidebar{display:none}.main-area{margin-left:0}.page-content{padding:var(--space-4) var(--space-4) var(--space-7)}}.mobile-topbar{padding:0 var(--space-4);background:color-mix(in srgb, var(--surface) 85%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.4);height:56px;box-shadow:0 1px 0 color-mix(in srgb, var(--border) 70%, transparent);z-index:30;border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;display:none;position:fixed;top:0;left:0;right:0}@media (width<=768px){.mobile-topbar{display:flex}}.page-header{align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);flex-direction:column;display:flex}.page-header-left{min-width:0;max-width:100%}.page-title{font-size:var(--text-xl);letter-spacing:-.02em;color:var(--text);font-weight:600;line-height:1.25}.page-subtitle{font-size:var(--text-sm);color:var(--text-muted);margin-top:3px}.page-header-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;width:100%;display:flex}.page-header-toolbar .btn-export{margin-left:auto;margin-right:calc(-1 * var(--space-1-5))}.kanban-board{align-items:start;gap:var(--gutter);padding-bottom:var(--space-2);grid-template-columns:repeat(4,minmax(210px,1fr));display:grid;overflow-x:auto}.kanban-col{gap:var(--space-1-5);flex-direction:column;min-width:0;display:flex}.kanban-col-header{align-items:center;gap:var(--space-1-5);padding:0 2px var(--space-2);cursor:default;display:flex}.kanban-col-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kanban-col-title{font-size:var(--text-xs);color:var(--text-muted);font-weight:700}.kanban-col-count{font-size:var(--text-xs);color:var(--text-subtle);margin-left:auto}.kanban-cards{gap:var(--space-1-5);border-radius:var(--radius);transition:background var(--duration-quick) var(--ease);flex-direction:column;flex:1;display:flex;position:relative}.kanban-dots{display:none}.kanban-drop-line{border-radius:var(--radius-pill);background:var(--brand);height:2px;box-shadow:0 0 0 3px var(--brand-dim);pointer-events:none;margin-top:-1px;animation:.1s ease-out kanban-drop-line-in;position:absolute;left:2px;right:2px}@keyframes kanban-drop-line-in{0%{opacity:0;transform:scaleX(.6)}to{opacity:1;transform:scaleX(1)}}.kanban-card{background:var(--surface);border-radius:var(--radius);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background var(--duration-quick) var(--ease), filter var(--duration-quick) var(--ease);-webkit-user-select:none;user-select:none;border:none}.kanban-card:hover{background:var(--surface-hover)}.kanban-card:focus-visible{outline:1px solid color-mix(in srgb, var(--text) 22%, transparent);outline-offset:2px}.kanban-card--dragging{filter:opacity(.4)}.kanban-card-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.kanban-card-name{align-items:center;gap:var(--space-1-5);min-width:0;font-size:var(--text-base);color:var(--text);letter-spacing:-.01em;flex:1 1 0;font-weight:600;line-height:1.25;display:flex}.kanban-card-name-text{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;overflow:hidden}.kanban-card-emoji{font-size:var(--text-md);flex-shrink:0;line-height:1}.kanban-card-budget-wrap{align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.kanban-card-budget{font-size:var(--text-sm);color:var(--text);font-variant-numeric:tabular-nums;opacity:.55;font-weight:600}.kanban-card-invoice-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.kanban-card-invoice-dot.paid{background:var(--green)}.kanban-card-invoice-dot.pending{background:var(--yellow)}.kanban-card-tasklist{gap:var(--space-1);margin-top:var(--space-2);flex-direction:column;display:flex}.kanban-card-task{align-items:center;gap:var(--space-1-5);cursor:pointer;line-height:1;display:flex}.kanban-card-task .task-checkbox{width:13px;height:13px}.kanban-card-task-text{min-width:0;font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;line-height:1;overflow:hidden}.kanban-card-task-more{font-size:var(--text-xs);color:var(--text-subtle);padding-left:var(--space-5)}.kanban-add-btn{align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-1);color:var(--text-subtle);font-size:var(--text-sm);cursor:pointer;border-radius:var(--radius-sm);width:100%;transition:color var(--duration-quick) var(--ease), background var(--duration-quick) var(--ease);background:0 0;border:none;font-family:inherit;display:flex}.kanban-add-btn:hover{color:var(--text);background:var(--surface-hover)}@media (width<=768px){.kanban-board{padding-inline:var(--space-7);grid-template-columns:repeat(4,calc(100vw - 96px))}}.fin-grid{gap:var(--gutter);margin-bottom:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.fin-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--card-pad);gap:var(--figure-gap);flex-direction:column;display:flex}.fin-info{display:none}.fin-label{font-size:var(--text-title);font-weight:var(--weight-heading);letter-spacing:var(--tracking-tight);color:var(--text)}.fin-value{font-size:var(--figure-size);font-weight:var(--figure-weight);letter-spacing:var(--figure-tracking);line-height:var(--figure-leading);font-variant-numeric:tabular-nums;color:var(--text)}.fin-card.green .fin-value{color:var(--green)}.fin-card.yellow .fin-value{color:var(--yellow)}.fin-card.blue .fin-value{color:var(--blue)}.fin-card.red .fin-value{color:var(--red)}@media (width<=640px){.fin-grid{grid-template-columns:1fr}}.notion-empty-hint{font-size:var(--text-sm);color:var(--text-subtle);padding:var(--space-1) 0}.insights-panel{gap:var(--space-2);flex-direction:column;display:flex}.insight-chip{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius);background:var(--surface);font-size:var(--text-base);color:var(--text-muted);display:flex}.insight-chip strong{color:var(--text);font-weight:700}.insight-chip--yellow{background:color-mix(in srgb, var(--yellow) 9%, var(--surface))}.insight-chip--green{background:color-mix(in srgb, var(--green) 9%, var(--surface))}.insight-chip--red{background:color-mix(in srgb, var(--red) 9%, var(--surface))}.task-list{flex-direction:column;gap:2px;display:flex;position:relative}.task-row{align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-2);border-radius:var(--radius-sm);transition:background var(--duration-quick) var(--ease);display:flex}.task-row:hover{background:var(--surface-hover)}.task-row--dragging{opacity:.4}.task-drag-handle{width:12px;color:var(--text-subtle);cursor:grab;opacity:0;transition:opacity var(--duration-fast) var(--ease);flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-drag-handle:active{cursor:grabbing}.task-row:hover .task-drag-handle{opacity:1}.task-checkbox{border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;width:16px;height:16px;transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-checkbox.done{background:var(--brand);border-color:var(--brand);color:var(--brand-text)}.task-title-text{font-size:var(--text-base);color:var(--text);cursor:text;flex:1;min-width:0}.task-title-text.done{color:var(--text-subtle);text-decoration:line-through}.task-title-input{min-width:0;font-size:var(--text-base);color:var(--text);background:var(--bg);border:1px solid var(--brand);border-radius:var(--radius-sm);padding:2px var(--space-1-5);outline:none;flex:1;font-family:inherit}.task-drop-line{border-radius:var(--radius-pill);background:var(--brand);height:2px;box-shadow:0 0 0 3px var(--brand-dim);pointer-events:none;margin-top:-1px;position:absolute;left:0;right:0}.priority-dot{cursor:pointer;border:none;border-radius:50%;flex-shrink:0;width:7px;height:7px;padding:0}.priority-dot.high{background:var(--red)}.priority-dot.medium{background:var(--yellow)}.priority-dot.low{background:var(--text-subtle)}.back-btn{align-items:center;gap:var(--space-1);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;padding:var(--space-1) 0;transition:color var(--duration-quick) var(--ease);background:0 0;border:none;font-family:inherit;display:inline-flex}.back-btn:hover{color:var(--text)}.two-col{gap:var(--gutter);margin-bottom:var(--space-1);grid-template-columns:1fr 1fr;display:grid}@media (width<=900px){.two-col{grid-template-columns:1fr}}.saved-tag{font-size:var(--text-xs);color:var(--green);align-items:center;gap:var(--space-1);display:inline-flex}.notion-doc{max-width:780px;padding-bottom:60px}.notion-topbar{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;display:flex}.identity-wrap{margin-bottom:var(--space-2);position:relative}.notion-prop-row .identity-wrap{margin-bottom:0}.notion-emoji-btn{cursor:pointer;transition:transform var(--duration-fast) var(--spring-snappy);background:0 0;border:none;padding:0;font-size:2rem;line-height:1}.notion-emoji-btn:hover{transform:scale(1.08)}.identity-emoji-loading{height:320px}.identity-popover{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-1);width:240px;position:absolute;top:50px;left:0}.identity-popover:has(.epr-main){width:320px;padding:var(--space-2)}.identity-popover .epr-main{--epr-bg-color:var(--surface);--epr-dark-bg-color:var(--surface);--epr-text-color:var(--text);--epr-dark-text-color:var(--text);--epr-picker-border-color:transparent;--epr-dark-picker-border-color:transparent;--epr-hover-bg-color:var(--surface-hover);--epr-dark-hover-bg-color:var(--surface-hover);--epr-focus-bg-color:var(--surface-hover);--epr-dark-focus-bg-color:var(--surface-hover);--epr-highlight-color:var(--text);--epr-dark-highlight-color:var(--text);--epr-search-border-color:transparent;--epr-dark-search-border-color:transparent;--epr-search-input-bg-color:var(--control-fill);--epr-dark-search-input-bg-color:var(--control-fill);--epr-search-input-bg-color-active:var(--control-fill);--epr-dark-search-input-bg-color-active:var(--control-fill);--epr-search-input-text-color:var(--text);--epr-dark-search-input-text-color:var(--text);--epr-search-input-placeholder-color:var(--text-subtle);--epr-dark-search-input-placeholder-color:var(--text-subtle);--epr-category-label-bg-color:var(--surface);--epr-dark-category-label-bg-color:var(--surface);--epr-category-label-text-color:var(--text-muted);--epr-dark-category-label-text-color:var(--text-muted);--epr-category-icon-active-color:var(--text);--epr-dark-category-icon-active-color:var(--text);--epr-picker-border-radius:var(--radius);--epr-search-input-border-radius:var(--radius);--epr-search-input-height:32px;--epr-header-padding:0 0 8px;--epr-horizontal-padding:0;--epr-search-bar-inner-padding:10px;--epr-category-padding:0;--epr-emoji-size:19px;--epr-emoji-padding:4px;--epr-category-navigation-button-size:24px;--epr-preview-height:0px;--epr-preview-text-padding:0px;--epr-preview-border-color:transparent;box-shadow:none;border:none;font-family:inherit}.identity-popover .epr-main .epr-search-container input{font-size:var(--text-sm)}.identity-popover .epr-main .epr-search-container input:focus{box-shadow:var(--focus-ring)}.identity-section-label{font-size:var(--text-xs);color:var(--text-muted);padding:var(--space-1) var(--space-1) var(--space-1-5)}.identity-section-label:not(:first-child){margin-top:var(--space-2)}.identity-emoji-input{width:100%;margin:0 0 var(--space-1);background:var(--control-fill);border-radius:var(--radius);padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm);color:var(--text);transition:box-shadow var(--duration-quick) var(--ease);border:none;outline:none;font-family:inherit}.identity-emoji-input:focus{box-shadow:var(--focus-ring)}.color-grid{gap:var(--space-1-5);grid-template-columns:repeat(8,1fr);display:grid}.identity-popover .color-grid{padding:0 var(--space-1) var(--space-1)}.color-option{cursor:pointer;border:2px solid #0000;border-radius:50%;width:20px;height:20px;padding:0}.color-option.selected{border-color:var(--text)}.invoice-link-chip{align-items:center;gap:var(--space-1);display:flex}.invoice-link-chip .notion-inline-value{padding:2px var(--space-1);background:0 0}.invoice-link-chip .notion-inline-value:hover{color:var(--text);background:0 0}.invoice-unlink-btn{width:20px;height:20px;color:var(--text-subtle);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.invoice-unlink-btn:hover{background:var(--surface-hover);color:var(--red)}.hours-composer{align-items:center;gap:var(--space-1);margin:var(--space-4) 0 var(--space-1);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-1-5);background:var(--control-fill);border-radius:var(--radius);transition:background var(--duration-quick) var(--ease);display:flex}.hours-composer:focus-within{background:var(--control-fill-hover)}.hours-composer-date{font-size:var(--text-sm);color:var(--text-muted);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);flex-shrink:0;font-weight:500}.hours-composer-date:hover{color:var(--text);background:var(--surface-hover)}.hours-composer-hours{padding:0 var(--space-1);font-size:var(--text-sm);color:var(--text-muted);cursor:text;flex-shrink:0;align-items:baseline;gap:3px;display:flex}.hours-composer-hours input{text-align:right;font-variant-numeric:tabular-nums;width:34px;font-weight:600}.hours-composer input{padding:var(--space-1) 0;font-size:var(--text-sm);color:var(--text);background:0 0;border:none;outline:none;font-family:inherit}.hours-composer .hours-composer-note{min-width:0;padding-left:var(--space-1-5);flex:1}.hours-composer input::placeholder{color:var(--text-subtle)}.hours-composer-add{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text);cursor:pointer;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease), transform var(--duration-fast) var(--spring-snappy);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.hours-composer-add:active:not(:disabled){transform:scale(var(--press-scale))}.hours-composer-add:hover:not(:disabled){background:var(--surface-hover)}.hours-composer-add:disabled{color:var(--text-subtle);cursor:default;background:0 0}.time-entry-date{color:var(--text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums;flex-shrink:0;width:56px}.time-entry-hours{font-variant-numeric:tabular-nums;flex-shrink:0;width:56px;font-weight:600}.time-entry-hours--editable{box-sizing:border-box;height:22px;padding:0 var(--space-1-5);margin-left:calc(-1 * var(--space-1-5));cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-quick) var(--ease);border:1px solid #0000;align-items:center;display:inline-flex}.time-entry-hours--editable:hover{background:var(--control-fill-hover)}.time-entry-hours-input{width:56px;min-width:0;height:22px;font-weight:600;font-size:var(--text-sm);margin-left:calc(-1 * var(--space-1-5));flex-shrink:0}.time-entry-note{color:var(--text-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.project-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--card-pad);margin:0 0 var(--gutter)}.hours-card--split{gap:var(--space-7);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.hours-entries{gap:0}.hours-entries .time-entry-row{padding-top:2px;padding-bottom:2px}.time-entry-date--editable,.time-entry-note--editable{box-sizing:border-box;height:22px;padding:0 var(--space-1-5);margin-left:calc(-1 * var(--space-1-5));border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease), opacity var(--duration-quick) var(--ease);align-items:center;display:inline-flex}.time-entry-date--editable{width:64px;font:inherit;font-size:var(--text-sm);color:var(--text-muted);background:0 0;border:none;flex-shrink:0}.time-entry-date--editable:hover,.time-entry-note--editable:hover{background:var(--control-fill-hover);color:var(--text)}.time-entry-note--editable{min-width:0;line-height:22px;display:block}.time-entry-note--editable.is-empty{color:var(--text-subtle);opacity:0}.time-entry-row:hover .time-entry-note--editable.is-empty{opacity:1}.time-entry-note-input{min-width:0;height:22px;font-size:var(--text-sm);margin-left:calc(-1 * var(--space-1-5));flex:1}.hours-card--split .hours-entries{scrollbar-width:thin;max-height:232px;margin:0 calc(-1 * var(--space-2));overflow-y:auto}@media (width<=700px){.hours-card--split{gap:var(--space-4);grid-template-columns:1fr}}.project-doc .notion-section{margin:var(--space-6) 0 0}.project-doc .notes-divider{margin:var(--space-7) 0 0}.project-doc .notes-section{margin-top:var(--space-6)}.project-card-head{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:24px;margin-bottom:var(--space-4);display:flex}.project-card-head:has(+.card-figure,+.withholdings-figure,+.hours-total,+.tax-figure-wrap){margin-bottom:var(--figure-gap);min-height:0}.project-card-title{font-size:var(--text-title);font-weight:var(--weight-heading);letter-spacing:var(--tracking-tight);color:var(--text);margin:0}.project-ledger{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.ledger-head{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:28px;margin-bottom:var(--space-1-5);display:flex}.ledger-head .identity-popover{top:calc(100% + 6px);left:auto;right:0}.ledger-title{align-items:center;gap:var(--space-1-5);font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;margin:0;font-weight:600;display:flex}.ledger-count{font-size:var(--text-2xs);color:var(--text-subtle);background:var(--control-fill);border-radius:var(--radius-pill);padding:1px var(--space-1-5);font-variant-numeric:tabular-nums;font-weight:600}.ledger-add{width:28px;height:28px;padding:0}.ledger-list{margin:0 calc(-1 * var(--space-2));flex-direction:column;gap:2px;display:flex}.ledger-row{align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);transition:background var(--duration-quick) var(--ease);display:flex}.ledger-row--clickable:hover{background:var(--surface-hover)}.ledger-row--clickable{cursor:pointer}.ledger-row--button{text-align:left;width:100%;color:inherit;background:0 0;border:none;font-family:inherit}.ledger-row-emoji{font-size:var(--text-md);flex-shrink:0;line-height:1}.ledger-project-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.project-ledger--single{grid-template-columns:1fr}.card-figure{font-size:var(--figure-size);font-weight:var(--figure-weight);letter-spacing:var(--figure-tracking);line-height:var(--figure-leading);color:var(--text);font-variant-numeric:tabular-nums;display:block}.client-summary{margin-top:var(--space-6)}.ledger-row .status-dot,.ledger-dot-slot{flex-shrink:0}.ledger-dot-slot{width:11px}.ledger-row-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;font-weight:500;overflow:hidden}.ledger-row-amount{color:var(--text);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:500}.ledger-row .invoice-unlink-btn{opacity:0;transition:opacity var(--duration-quick) var(--ease), background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease)}.ledger-row:hover .invoice-unlink-btn,.ledger-row .invoice-unlink-btn:focus-visible{opacity:1}@media (hover:none){.ledger-row .invoice-unlink-btn{opacity:1}}.hours-total{align-items:baseline;gap:var(--space-2);display:flex}.hours-total-value{font-size:var(--figure-size);font-weight:var(--figure-weight);letter-spacing:var(--figure-tracking);line-height:var(--figure-leading);color:var(--text);font-variant-numeric:tabular-nums}.hours-total-of{font-size:var(--text-sm);font-variant-numeric:tabular-nums;font-weight:500}.hours-total-of.ok{color:var(--green)}.hours-total-of.warn{color:var(--yellow)}.hours-total-of.over{color:var(--red)}.hours-weeks-plot{height:48px;margin-top:var(--space-3);align-items:flex-end;gap:2px;display:flex}.hours-week{cursor:default;flex:1;align-items:flex-end;height:100%;display:flex}.hours-week-bar{border-radius:var(--radius-xs) var(--radius-xs) 0 0;background:var(--bar);width:100%;display:block}.hours-week-bar.empty{background:var(--control-fill);border-radius:1px}@media (width<=700px){.project-ledger{grid-template-columns:1fr}}.invoice-picker-popover{width:320px}.invoice-picker-filters{gap:var(--space-1);margin-bottom:var(--space-1);display:flex}.invoice-picker-filters .notion-prop-select{border-radius:var(--radius);background:var(--control-fill);border:none;flex:1}.invoice-picker-list{--fluid-radius:var(--radius);flex-direction:column;gap:1px;max-height:240px;display:flex;position:relative;overflow-y:auto}.invoice-picker-body{flex-direction:column;gap:1px;display:flex}.invoice-picker-skeleton{border-radius:var(--radius);height:32px;margin:1px 0}.invoice-picker-list{scrollbar-color:transparent transparent}.invoice-picker-list:hover{scrollbar-color:var(--border-strong) transparent}.invoice-picker-list::-webkit-scrollbar-thumb{background-color:#0000}.invoice-picker-list:hover::-webkit-scrollbar-thumb{background-color:var(--border-strong)}.invoice-picker-row{align-items:center;gap:var(--space-2);text-align:left;width:100%;padding:var(--space-1-5) var(--space-3);border-radius:var(--radius);cursor:pointer;transition:background var(--duration-quick) var(--ease);background:0 0;border:none;font-family:inherit;display:flex}.invoice-picker-row:hover{background:var(--surface-hover)}.invoice-picker-number{font-size:var(--text-sm);color:var(--text);flex-shrink:0;font-weight:600}.invoice-picker-client{font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.invoice-picker-amount{font-size:var(--text-sm);color:var(--text-subtle);font-variant-numeric:tabular-nums;flex-shrink:0}.invoice-picker-empty{font-size:var(--text-sm);color:var(--text-subtle);padding:var(--space-1-5) var(--space-3)}.notion-title{color:var(--text);letter-spacing:-.03em;margin-bottom:var(--space-6);cursor:text;word-break:break-word;outline:none;min-height:1.2em;font-size:2rem;font-weight:700;line-height:1.1}.notion-title:empty:before{content:"Untitled";color:var(--text-subtle)}.notion-title:focus{outline:none}.notion-title::selection{background:var(--surface-hover);color:var(--text-subtle)}.notion-inline-input::selection{background:var(--surface-hover);color:var(--text-subtle)}.notion-props{margin-bottom:var(--space-2);flex-direction:column;gap:0;max-width:640px;display:flex}.notion-prop-row{align-items:center;gap:var(--space-4);padding:var(--space-1) 0;display:flex}.notion-prop-label{align-items:center;gap:var(--space-1-5);font-size:var(--text-sm);color:var(--text-muted);flex-shrink:0;width:110px;font-weight:500;display:flex}.notion-prop-label svg{flex-shrink:0}.notion-inline-value,.notion-inline-input{box-sizing:border-box;height:26px;padding:0 var(--space-1-5);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-base);color:var(--text);border:1px solid #0000;align-items:center;min-width:60px;line-height:1;display:inline-flex}.notion-inline-value{text-align:left;cursor:pointer;transition:background var(--duration-quick) var(--ease);background:0 0}.notion-inline-value:hover{background:var(--surface-hover)}.notion-inline-value.empty{color:var(--text-subtle)}.notion-inline-input{background:var(--control-fill-hover);outline:none}.notion-prop-select{font-size:var(--text-base);color:var(--text);cursor:pointer;padding:3px var(--space-5) 3px var(--space-1-5);border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease);appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8' fill='none' stroke='%23909090' stroke-width='1.4' stroke-linecap='round'%3E%3Cpolyline points='1,2.5 4,5.5 7,2.5'/%3E%3C/svg%3E") right 6px center no-repeat;border:none;outline:none;font-family:inherit}.notion-prop-select:hover{background-color:var(--surface-hover)}.select-dd-trigger.notion-prop-select-trigger{gap:var(--space-1);font-size:var(--text-base);color:var(--text);box-sizing:border-box;height:26px;padding:0 var(--space-1-5);border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease);background:0 0;border:none;font-family:inherit}.select-dd-trigger.notion-prop-select-trigger:hover{background-color:var(--surface-hover)}.notion-divider{background:var(--border);height:1px;margin:var(--space-2) 0}.notion-section{margin-bottom:var(--space-2)}.link-invoice-wrap{position:relative}.project-top{gap:var(--space-6);margin-bottom:var(--space-6);grid-template-columns:minmax(0,1fr) 320px;display:grid}.project-top .notion-props{max-width:none;margin-bottom:0}.project-top{transition:grid-template-columns var(--duration-panel) var(--ease), column-gap var(--duration-panel) var(--ease)}@media (width>=761px){.project-top--solo{grid-template-columns:minmax(0,1fr) 0;column-gap:0}}.block-collapse{display:flow-root}.notion-topbar-end{align-items:center;gap:var(--space-2);display:flex}.project-modules-title{padding:var(--space-1) var(--space-2) var(--space-1-5);font-size:var(--text-xs);color:var(--text-muted);display:block}.tasks-card{contain:size;flex-direction:column;margin:0;display:flex}.tasks-card .project-card-head{margin-bottom:var(--space-2)}.tasks-card .task-list{scrollbar-width:thin;min-height:0;margin:0 calc(-1 * var(--space-2));flex:1;overflow-y:auto}.task-delete{opacity:0;transition:opacity var(--duration-quick) var(--ease), background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);flex-shrink:0}.task-row:hover .task-delete,.task-delete:focus-visible{opacity:1}@media (hover:none){.task-delete{opacity:1}}.ledger-count--done{color:var(--green)}.task-composer{align-items:center;gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-3);background:var(--control-fill);border-radius:var(--radius);transition:background var(--duration-quick) var(--ease);display:flex}.task-composer:focus-within{background:var(--control-fill-hover)}.task-composer input{min-width:0;padding:var(--space-1) 0;font-size:var(--text-sm);color:var(--text);background:0 0;border:none;outline:none;flex:1;font-family:inherit}.task-composer input::placeholder{color:var(--text-subtle)}@media (width<=760px){.project-top{grid-template-columns:1fr}.tasks-card{contain:none;min-height:0}.tasks-card .task-list{max-height:280px}}.notes-editor{cursor:text;min-height:160px}.notion-notes{min-height:160px;font-size:var(--text-base);color:var(--text);word-break:break-word;white-space:pre-wrap;tab-size:4;outline:none;line-height:1.7}.notion-notes:focus{outline:none}.notion-notes>*+*{margin-top:.35em}.notion-notes p{margin:0}.notion-notes h1,.notion-notes h2,.notion-notes h3{letter-spacing:-.01em;color:var(--text);margin:1em 0 .2em;font-weight:600;line-height:1.25}.notion-notes h1{font-size:var(--text-xl)}.notion-notes h2{font-size:var(--text-lg)}.notion-notes h3{font-size:var(--text-md)}.notion-notes>:first-child{margin-top:0}.notion-notes ul,.notion-notes ol{margin:.2em 0;padding-left:1.4em}.notion-notes li>p{margin:0}.notion-notes li::marker{color:var(--text-subtle)}.notion-notes blockquote{padding-left:var(--space-3);border-left:2px solid var(--border-strong);color:var(--text-muted);margin:.4em 0}.notion-notes code{padding:1px var(--space-1);border-radius:var(--radius-sm);background:var(--control-fill);font-size:.82em}.notion-notes pre{padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--control-fill);margin:.4em 0;overflow-x:auto}.notion-notes pre code{background:0 0;padding:0}.notion-notes a{color:var(--brand-fg);text-underline-offset:2px;text-decoration:underline}.notion-notes hr{border:none;border-top:1px solid var(--border);margin:1em 0}.notion-notes ::selection{background:color-mix(in srgb, var(--brand) 25%, transparent)}.format-bar{z-index:1000;box-sizing:border-box;align-items:center;gap:var(--space-2);width:309px;height:38px;padding:var(--space-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);--fluid-radius:var(--radius-sm);display:flex;position:fixed}.format-bar-group{align-items:center;gap:1px;display:flex}.format-bar-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:color var(--duration-quick) var(--ease), background var(--duration-quick) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-family:inherit;display:flex;position:relative}.format-bar-btn:hover{color:var(--text);background:var(--surface-hover)}.format-bar-btn.is-active{color:var(--brand-fg)}.format-glyph{font-size:var(--text-base);font-weight:500;line-height:1}.format-glyph--bold{font-weight:700}.format-glyph--italic{font-family:Georgia,Times New Roman,serif;font-style:italic}.format-glyph--underline{text-underline-offset:2px;text-decoration:underline}.format-glyph--strike{text-decoration:line-through}.format-bar-link{align-items:center;gap:2px;width:100%;display:flex}.format-bar-link-input{min-width:0;height:28px;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--control-fill);color:var(--text);font-family:inherit;font-size:var(--text-sm);transition:background var(--duration-quick) var(--ease);border:none;outline:none;flex:1}.format-bar-link-input:focus{background:var(--control-fill-hover)}.format-bar-link-input::placeholder{color:var(--text-subtle)}.notion-notes p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--text-subtle);pointer-events:none}.context-menu{z-index:1000;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:180px;box-shadow:var(--shadow-lg);padding:var(--space-1);transform-origin:0 0;position:fixed}.context-menu-item{align-items:center;gap:var(--space-2);text-align:left;width:100%;padding:var(--space-1-5) var(--space-3);color:var(--text);font-size:var(--text-sm);border-radius:var(--radius);cursor:pointer;transition:background var(--duration-fast) var(--ease);background:0 0;border:none;font-family:inherit;display:flex}.context-menu-item:hover:not(:disabled){background:var(--surface-hover)}.context-menu-item:disabled{color:var(--text-subtle);cursor:default}.context-menu-item.danger{color:var(--red)}.context-menu-item.danger:hover:not(:disabled){background:var(--red-dim)}.context-menu-divider{background:var(--border);height:1px;margin:var(--space-1) 2px}.context-menu{max-height:min(420px,100vh - 16px);overflow-y:auto}.context-menu-item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.context-menu-back{color:var(--text-muted);font-weight:600;font-size:var(--text-sm)}.context-menu-check{color:var(--brand-fg);flex-shrink:0}.context-menu-sub-chevron{color:var(--text-subtle);flex-shrink:0}.context-menu-item .tag-dot{flex-shrink:0}.context-menu-item.is-sub-open:not(:disabled){background:var(--surface-hover)}.context-menu-item.is-sub-open .context-menu-sub-chevron{color:var(--text-muted)}.context-menu--sub{z-index:1001}.overview-stack{gap:var(--gutter);flex-direction:column;display:flex}.overview-stack>*{min-width:0;margin:0}.overview-row{position:relative}.overview-row>:not(.overview-row-handle){margin:0}.overview-row-handle{top:0;bottom:0;left:calc(-1 * var(--space-7));width:var(--space-7);color:var(--text-subtle);cursor:grab;touch-action:none;z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute}.overview-row-grip{border-radius:var(--radius-xs);opacity:0;width:18px;height:26px;transition:opacity var(--duration-quick) var(--ease), background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);justify-content:center;align-items:center;display:inline-flex}.overview-row:hover>.overview-row-handle .overview-row-grip{opacity:1}.overview-row-handle:hover .overview-row-grip,.overview-row-handle:focus-visible .overview-row-grip,.overview-row-handle:active .overview-row-grip{opacity:1;background:var(--surface-hover);color:var(--text)}.overview-row-handle:focus-visible{outline:none}.overview-row-handle:active{cursor:grabbing}.overview-row-handle--armed .overview-row-grip{opacity:1;background:var(--surface-hover);color:var(--text)}.overview-row .overview-col:first-child{translate:var(--cycle-nudge,0) 0;transition:translate var(--duration-quick) var(--ease)}.overview-col{flex-direction:column;min-width:0;display:flex}.overview-col>*{flex:1;min-width:0}@media (hover:none),(width<=768px){.overview-row-handle{display:none}}@media (hover:none){.overview-row{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}}.overview-row--lifted{filter:brightness(1.12)}.overview-page .page-header{margin-bottom:var(--gutter)}.overview-two-col{gap:var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}@media (width<=900px){.overview-two-col{grid-template-columns:1fr}}.overview-panel{background:var(--surface);border-radius:var(--radius-lg);padding:var(--card-pad)}.overview-panel-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.overview-panel-title{font-size:var(--text-title);font-weight:var(--weight-heading);letter-spacing:var(--tracking-tight);color:var(--text)}.overview-panel-link{font-size:var(--text-xs);color:var(--text-subtle);cursor:pointer;transition:color var(--duration-quick) var(--ease);background:0 0;border:none;font-family:inherit}.overview-panel-link:hover{color:var(--text)}.overview-panel-empty{color:var(--text-subtle);font-size:var(--text-sm);padding:var(--space-3) 0}.overview-invoice-end{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.quarter-dash{gap:var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;display:grid}@media (width<=900px){.quarter-dash{grid-template-columns:1fr}}.quarter-summary{background:var(--surface);border-radius:var(--radius-lg);padding:var(--card-pad);flex-direction:column;display:flex}.quarter-summary-hero{gap:var(--figure-gap);flex-direction:column;display:flex}.quarter-summary-value{margin-left:calc(-1 * var(--space-1));font-size:var(--text-hero);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text);font-weight:600;line-height:1.1}.quarter-summary.green .quarter-summary-value{color:var(--green)}.quarter-summary.red .quarter-summary-value{color:var(--red)}.analytics-empty{color:var(--text-subtle);font-size:var(--text-sm);padding:var(--space-3) 0}.cat-bar-list{gap:var(--space-3);flex-direction:column;display:flex}.cat-bar-row{gap:var(--space-1);flex-direction:column;display:flex}.cat-bar-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.cat-bar-label{font-size:var(--text-sm);color:var(--text);align-items:center;min-width:0;display:flex}.cat-bar-label--client{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cat-bar-amount{font-size:var(--text-sm);color:var(--text);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:600}.cat-bar-track{border-radius:var(--radius-pill);background:var(--bg);align-items:center;height:6px;display:flex;position:relative;overflow:hidden}.cat-bar-fill{border-radius:var(--radius-pill);min-width:2px;height:100%}.cat-bar-fill--client{background:var(--brand)}.cat-bar-others{font-size:var(--text-sm);color:var(--text-subtle);padding-top:var(--space-1);border-top:1px solid var(--border);justify-content:space-between;display:flex}.analytics-grid{gap:var(--gutter);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=700px){.analytics-grid{grid-template-columns:1fr}}.clients-list{background:var(--surface);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:clip}.client-row{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background var(--duration-quick) var(--ease);background:0 0;border:none;display:flex;position:relative}.client-row:hover{background:var(--surface-hover)}.client-row[draggable=true]{cursor:grab}.client-row[draggable=true]:active{cursor:grabbing}.client-row--dragging{opacity:.45}.client-row--drop-before:after,.client-row--drop-after:after{content:"";left:var(--space-4);right:var(--space-4);background:var(--brand-fg);border-radius:var(--radius-pill);height:2px;position:absolute}.client-row--drop-before:after{top:-1px}.client-row--drop-after:after{bottom:-1px}.client-avatar{width:38px;height:38px;font-size:var(--text-sm);letter-spacing:.04em;color:var(--brand-fg);background:color-mix(in srgb, var(--brand) 16%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.client-row-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.client-row-name{font-weight:600;font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-row-sub{font-size:var(--text-xs);color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-row-end{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.client-row-value{font-variant-numeric:tabular-nums;font-weight:600}.ui-row-chevron{color:var(--text-subtle);margin-right:calc(-1 * var(--space-1));flex-shrink:0}.client-empty{color:var(--text-subtle);font-size:var(--text-base);padding:var(--space-6) 0}.overview-invoice-list{flex-direction:column;gap:2px;display:flex}.overview-invoice-row{padding:var(--space-1-5) 0;justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;display:flex}.overview-invoice-client{font-size:var(--text-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.overview-invoice-amount{font-size:var(--text-sm);color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.overview-invoice-project{color:var(--text-subtle);font-weight:400}.overview-hero{background:var(--surface);border-radius:var(--radius-lg);padding:var(--card-pad);gap:var(--figure-gap);flex-direction:column;display:flex}.overview-hero-value{font-size:var(--text-hero);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text);font-weight:600;line-height:1}.overview-hero.green .overview-hero-value{color:var(--green)}.overview-hero.red .overview-hero-value{color:var(--red)}.kpi-grid{gap:var(--gutter);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.kpi-grid--secondary{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=768px){.kpi-grid--secondary{grid-template-columns:1fr 1fr}:is(.kpi-grid--secondary .kpi-card--vat,.kpi-grid--secondary .overview-col:has(>.kpi-card--vat)){display:none}}.kpi-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--card-pad);gap:var(--figure-gap);flex-direction:column;min-width:0;display:flex}.kpi-label{font-size:var(--text-title);font-weight:var(--weight-heading);letter-spacing:var(--tracking-tight);color:var(--text)}.fit-text{white-space:nowrap;min-width:0;max-width:100%;display:block;overflow:hidden}.kpi-value{font-size:var(--figure-size);font-weight:var(--figure-weight);letter-spacing:var(--figure-tracking);line-height:var(--figure-leading);font-variant-numeric:tabular-nums;color:var(--text)}.kpi-card.green .kpi-value{color:var(--green)}.kpi-card.red .kpi-value{color:var(--red)}.kpi-card.yellow .kpi-value{color:var(--yellow)}.kpi-card.blue .kpi-value{color:var(--blue)}@media (width<=900px){.kpi-grid:not(.kpi-grid--secondary){grid-template-columns:repeat(2,1fr)}.kpi-grid:not(.kpi-grid--secondary) .kpi-card:nth-child(2){border-right:none}.kpi-grid:not(.kpi-grid--secondary) .kpi-card:first-child,.kpi-grid:not(.kpi-grid--secondary) .kpi-card:nth-child(2){border-bottom:1px solid var(--border)}.overview-hero-value{font-size:2.2rem}}@media (width<=480px){.kpi-grid:not(.kpi-grid--secondary){grid-template-columns:1fr 1fr}}.settings-shell{gap:var(--space-8);grid-template-columns:200px 1fr;align-items:start;display:grid}.settings-nav{--fluid-radius:var(--radius-sm);flex-direction:column;gap:2px;display:flex;position:sticky;top:24px}.settings-nav-item{text-align:left;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-base);cursor:pointer;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease), font-weight var(--duration-fast) var(--ease);background:0 0;border:none;font-family:inherit;font-weight:500}.settings-nav-item:hover{background:var(--surface-hover);color:var(--text)}.settings-nav-item.active{background:var(--surface-hover);color:var(--text);font-weight:600}.tauri-desktop .settings-nav{top:48px}.tauri-toolbar .tauri-desktop .settings-nav{top:60px}.settings-panel{gap:var(--space-7);flex-direction:column;min-width:0;max-width:680px;display:flex}@media (width<=860px){.settings-shell{grid-template-columns:1fr;gap:0}.settings-panel{gap:var(--space-6);max-width:100%}}.settings-section{--settings-control-h:32px;background:0 0;border:none;margin:0;padding:0;scroll-margin-top:24px}.settings-section-title{font-size:var(--text-title);font-weight:var(--weight-heading);color:var(--text);text-transform:none;letter-spacing:var(--tracking-tight);margin:0 0 var(--space-2) var(--space-1);line-height:1.25}.settings-card{background:var(--surface);border-radius:var(--radius-lg);padding:0 var(--card-pad)}.settings-card>.settings-row{padding:var(--space-2) 0;min-height:44px}.settings-card>.settings-row:first-child{padding-top:var(--space-3)}.settings-card>.settings-row:last-child{padding-bottom:var(--space-3)}.settings-card .year-chip-list{padding:var(--space-3) 0;margin:0}.settings-card>form,.settings-card>.settings-profile{padding:var(--space-2) 0}.settings-card>.settings-save{padding:var(--space-3) 0 var(--space-3);margin:0}.settings-row{padding:var(--space-2) 0;justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.settings-label{font-size:var(--text-base);color:var(--text);flex:1;font-weight:500}.accent-color-picker{align-items:center;gap:var(--space-2);display:flex;position:relative}.accent-swatch{border:2px solid var(--surface);cursor:pointer;width:22px;height:22px;transition:transform var(--duration-quick) var(--ease), outline-color var(--duration-quick) var(--ease);outline-offset:2px;border-radius:50%;outline:2px solid #0000;padding:0;position:relative}.accent-swatch:hover{transform:scale(1.1)}.accent-swatch--active{outline-color:var(--border-strong)}.accent-swatch--custom{background:var(--surface-hover);border-color:var(--surface);color:var(--text-muted);justify-content:center;align-items:center;display:flex;overflow:hidden}.accent-swatch--custom:hover{color:var(--text);background:var(--border-strong)}.accent-swatch--custom svg{pointer-events:none;flex-shrink:0}.accent-picker-popover{z-index:50;gap:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:200px;box-shadow:var(--shadow-lg);padding:var(--space-3);flex-direction:column;display:flex;position:absolute;top:calc(100% + 8px);left:0}.accent-sv-square{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;background-image:linear-gradient(#0000 0%,#000 100%),linear-gradient(90deg,#fff 0%,#fff0 100%);background-clip:padding-box;width:100%;height:130px;position:relative}.accent-sv-cursor{width:14px;height:14px;box-shadow:0 0 0 1px #0006, var(--shadow-sm);pointer-events:none;border:2px solid #fff;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.accent-hue-slider{appearance:none;border-radius:var(--radius-pill);cursor:pointer;background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);outline:none;width:100%;height:10px;margin:0}.accent-hue-slider::-webkit-slider-runnable-track{border-radius:var(--radius-pill);background:0 0;height:10px}.accent-hue-slider::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--surface);width:16px;height:16px;box-shadow:0 0 0 1px var(--border-strong);cursor:pointer;background:#fff;border-radius:50%;margin-top:-3px}.accent-hue-slider::-moz-range-track{border-radius:var(--radius-pill);background:0 0;height:10px}.accent-hue-slider::-moz-range-thumb{border:2px solid var(--surface);width:14px;height:14px;box-shadow:0 0 0 1px var(--border-strong);cursor:pointer;background:#fff;border-radius:50%}.accent-rgb-row{gap:var(--space-1-5);display:flex}.accent-rgb-field{flex-direction:column;flex:1;align-items:center;gap:3px;display:flex}.accent-rgb-field input{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:var(--space-1) 2px;text-align:center;font-size:var(--text-sm);color:var(--text);font-family:inherit}.accent-rgb-field input:focus{box-shadow:var(--focus-ring);outline:none}.accent-rgb-field span{font-size:var(--text-2xs);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.04em}.year-chip-list{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.settings-card .year-chip-list{margin-bottom:0}.year-chip,.tag-pill{align-items:center;gap:var(--space-1);height:28px;padding:0 var(--space-3);background:var(--control-fill);border-radius:var(--radius-pill);font-size:var(--text-sm);color:var(--text);white-space:nowrap;transition:background var(--duration-fast) var(--ease);border:none;line-height:1;display:inline-flex}.year-chip{padding-right:var(--space-1-5)}.year-chip:not(:has(.year-chip-remove)){padding-right:var(--space-3)}.tag-pill{padding-right:var(--space-1)}.tag-pill:not(:has(.tag-pill-remove)){padding-right:var(--space-3)}.year-chip-remove,.tag-pill-remove{width:17px;height:17px;color:var(--text-subtle);font-size:var(--text-title);cursor:pointer;transition:color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.year-chip-remove:hover,.tag-pill-remove:hover{color:var(--red);background:var(--red-dim)}.year-chip-add{background:var(--control-fill);border-radius:var(--radius-pill);width:28px;height:28px;color:var(--text-subtle);font-size:var(--text-md);cursor:pointer;transition:color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);border:none;justify-content:center;align-items:center;line-height:1;display:flex}.year-chip-add:hover{color:var(--text);background:var(--surface-hover)}.settings-input{box-sizing:border-box;min-height:var(--settings-control-h);background:var(--control-fill);border-radius:var(--radius);padding:0 var(--space-3);font-size:var(--text-sm);line-height:var(--settings-control-h);color:var(--text);transition:background var(--duration-base) var(--ease), box-shadow var(--duration-base) var(--ease);border:none;outline:none;width:200px;font-family:inherit}textarea.settings-input{padding:var(--space-2) var(--space-3);line-height:1.55}.settings-control{align-items:flex-end;gap:var(--space-1-5);flex-direction:column;min-width:0;display:flex}.settings-control--md{width:200px}.settings-control--sm{width:130px}.settings-control--xs{width:92px}.settings-input.settings-control--md{width:200px}.settings-input.settings-control--sm{width:130px}.settings-input.settings-control--xs{width:92px}.settings-pair{gap:var(--space-2);display:flex}.settings-pwd{display:block;position:relative}.settings-pwd .settings-input{width:100%;padding-right:var(--space-7)}.settings-input--invalid{box-shadow:0 0 0 1px var(--red)}.settings-affix .settings-input,.settings-input-at .settings-input{width:100%}.settings-saved{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--green,var(--brand-fg));display:inline-flex}.settings-field-error{margin:0}.settings-save{margin-top:var(--space-3);gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.settings-save-msg{margin:0}.settings-confirm{gap:var(--space-2);flex-direction:column;display:flex}.settings-confirm-text{font-size:var(--text-sm);color:var(--text-muted);margin:0}.settings-confirm-form{gap:var(--space-2);flex-direction:column;display:flex}.settings-confirm-actions{gap:var(--space-2);align-items:center;display:flex}.settings-input:hover:not(:disabled):not(:focus){background:var(--control-fill-hover)}.settings-input:focus,.settings-input[aria-expanded=true]{box-shadow:var(--focus-ring)}.settings-input:disabled{opacity:.55;cursor:not-allowed}.settings-input[type=number]{-moz-appearance:textfield}.settings-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.settings-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.settings-affix{align-items:center;display:inline-flex;position:relative}.settings-input--affix{padding-right:var(--space-8)}.settings-affix-unit{right:var(--space-3);font-size:var(--text-sm);color:var(--text-muted);pointer-events:none;position:absolute}.settings-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-flow:wrap;display:flex}.settings-actions .btn-ghost{background:var(--control-fill)}.settings-actions .btn-ghost:hover{background:var(--control-fill-hover)}.settings-input-at{display:inline-block;position:relative}.settings-input-at .settings-at{left:var(--space-3);color:var(--text-muted);font-size:var(--text-sm);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.settings-input--at{padding-left:calc(var(--space-3) + 13px)}.select-dd-trigger.settings-input{justify-content:space-between;align-items:center;gap:var(--space-2);cursor:pointer;text-align:left;display:flex}.select-dd-trigger.settings-input .select-dd-value{line-height:1.4}select.settings-input{appearance:none;padding-right:calc(var(--space-3) + 16px);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8' fill='none' stroke='%23909090' stroke-width='1.4' stroke-linecap='round'%3E%3Cpolyline points='1,2.5 4,5.5 7,2.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;line-height:1.4}@media (width<=768px){.settings-row{align-items:stretch;gap:var(--space-2);padding:var(--space-3) 0;flex-direction:column}.settings-row--inline{flex-direction:row;justify-content:space-between;align-items:center}.settings-control{align-items:stretch;width:100%}.settings-control--md,.settings-control--sm,.settings-control--xs,.settings-input.settings-control--md,.settings-input.settings-control--sm,.settings-input.settings-control--xs,.settings-row .settings-input,.settings-affix,.settings-input-at,.currency-manager{width:100%}.settings-pair{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.settings-pair>*{width:100%}.settings-actions .btn-ghost{flex:1;justify-content:center}.settings-save-btn{width:100%}.settings-confirm-actions{justify-content:stretch}.settings-confirm-actions>*{flex:1}.settings-save--active{bottom:calc(76px + env(safe-area-inset-bottom));z-index:5;margin:var(--space-3) calc(-1 * var(--space-1)) 0;padding:var(--space-2) var(--space-1);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg);position:sticky}}.app-footer--shell{min-height:44px;margin:0 var(--space-7) var(--space-3);justify-content:flex-start;gap:var(--space-8)}@media (width<=768px){.page-content{padding:72px 14px 40px!important}.notion-doc{max-width:100%}.notion-title{font-size:var(--text-2xl)}.kanban-board{gap:var(--space-2);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.kanban-col{scroll-snap-align:center;scroll-snap-stop:always}.kanban-board--dragging{scroll-snap-type:none}.kanban-card{padding:var(--space-2) var(--space-3)}.kanban-dots{justify-content:center;gap:var(--space-1-5);padding:var(--space-1) 0 var(--space-3);display:flex}.kanban-dot{background:var(--border);width:6px;height:6px;transition:background var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);border:none;border-radius:50%;padding:0}.kanban-dot.active{background:var(--brand-fg);transform:scale(1.3)}.page-header-toolbar{flex-wrap:wrap}.notion-prop-label{width:100px;font-size:var(--text-sm)}.notion-inline-value,.notion-inline-input,.notion-prop-select,.select-dd-trigger.notion-prop-select-trigger{font-size:var(--text-sm)}.link-invoice-wrap .identity-popover{width:min(320px,100vw - 28px)}.notion-topbar{margin-bottom:var(--space-4)}.notion-emoji-btn{font-size:var(--text-2xl)}.notion-title{margin-bottom:var(--space-4)}.project-top{gap:var(--space-3);margin-bottom:var(--space-4)}.project-card{margin-bottom:var(--space-3)}.project-card-head{margin-bottom:var(--space-2);min-height:22px}.project-ledger{gap:var(--space-4)}.ledger-row,.task-row{padding:var(--space-1-5) var(--space-2);font-size:var(--text-sm)}.task-title-text,.task-title-input{font-size:var(--text-sm)}.tasks-card .task-list{max-height:240px}.hours-total-value{font-size:var(--text-xl)}.hours-weeks-plot{height:36px;margin-top:var(--space-2)}.hours-composer{margin-top:var(--space-3)}.hours-composer input,.task-composer input{font-size:var(--text-sm)}.project-doc .notion-section,.project-doc .notes-divider{margin-top:var(--space-5)}.notes-editor,.notion-notes{min-height:120px}.notion-notes{font-size:var(--text-base)}}@media (width<=480px){.notion-title{font-size:var(--text-xl)}.notion-props{max-width:100%}}.provision-card,.withholdings-card,.tax-card,.fil-card,.vatbd-card{margin:0}.provision-card{gap:var(--space-6);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;display:grid}.provision-figure{color:var(--yellow)}.provision-deadlines{gap:var(--space-1-5);flex-direction:column;display:flex}.provision-deadlines-title{margin:0 0 var(--space-1);font-size:var(--text-xs);color:var(--text-muted);font-weight:500}.provision-deadline{align-items:baseline;gap:var(--space-3);font-size:var(--text-sm);display:flex}.provision-deadline-label{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.provision-deadline-date{color:var(--text-subtle);white-space:nowrap;font-variant-numeric:tabular-nums}.provision-deadline-days{text-align:right;min-width:4.5em;color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.provision-deadline-days.is-soon{color:var(--yellow);font-weight:600}.withholdings-figure{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.withholdings-of{font-size:var(--text-sm);color:var(--text-muted)}.tax-quarters{gap:var(--space-2);margin-top:var(--space-5);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.tax-quarter{gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--control-fill);color:var(--text);font:inherit;text-align:left;border:none;flex-direction:column;min-width:0;display:flex}.tax-quarter-head{align-items:center;gap:var(--space-1-5);min-height:16px;display:flex}.tax-quarter-label{font-size:var(--text-xs);color:var(--text-muted);font-weight:600}.tax-quarter-info{margin-left:auto;display:inline-flex}.tax-quarter-value{font-size:var(--text-base);color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.tax-quarter-sub{font-size:var(--text-xs);color:var(--text-muted)}.vat-quarters{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.vat-year-card{flex-direction:column;display:flex}.vat-year-card .vat-quarters{flex:1;grid-template-rows:repeat(2,minmax(0,1fr))}.vat-quarter{justify-content:space-between;gap:var(--space-2);min-width:0;padding:var(--space-4);border-radius:var(--radius);background:var(--control-fill);cursor:pointer;transition:background var(--duration-quick) var(--ease);flex-direction:column;display:flex}.vat-quarter:hover{background:var(--control-fill-hover)}.vat-quarter:focus-visible{outline:1px solid color-mix(in srgb, var(--text) 22%, transparent);outline-offset:2px}.vat-quarter-value{font-size:var(--text-xl);font-weight:var(--figure-weight);letter-spacing:var(--figure-tracking);line-height:var(--figure-leading);color:var(--text);font-variant-numeric:tabular-nums}.vat-quarter-value.is-due{color:var(--yellow)}.tax-figure--pay{color:var(--red)}.irpf-progress{gap:var(--space-1-5);margin-top:var(--space-4);flex-direction:column;display:flex}.irpf-progress-track{border-radius:var(--radius-pill);background:var(--control-fill);height:8px;overflow:hidden}.irpf-progress-fill{border-radius:var(--radius-pill);background:var(--green);height:100%;display:block}.irpf-progress-caption{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.irpf-qs{margin:var(--space-4) calc(-1 * var(--space-2)) 0;flex-direction:column;gap:0;display:flex}.irpf-qs-title{font-size:var(--text-xs);color:var(--text-muted);margin:0 var(--space-2) var(--space-1)}.irpf-q{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background var(--duration-quick) var(--ease);background:0 0;border:none;display:flex}.irpf-q:hover:not(:disabled){background:var(--surface-hover)}.irpf-q:disabled{cursor:default}.irpf-q--empty{cursor:default;color:var(--text-subtle)}.irpf-q--static{cursor:default}.irpf-q-on{font-weight:400}.irpf-q-label{align-items:center;gap:var(--space-1-5);color:var(--text-muted);flex:1;font-weight:600;display:inline-flex}.irpf-q-value{font-variant-numeric:tabular-nums;font-weight:600}.irpf-q .vat-dot{margin-left:var(--space-1)}.tax-figure--refund{color:var(--green)}.tax-card-meta{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.tax-card .modelo130-note{margin:var(--space-3) 0 0}@media (width<=720px){.tax-quarters{grid-template-columns:repeat(2,minmax(0,1fr))}}.card-head-export{margin:calc(-1 * var(--space-1)) 0 calc(-1 * var(--space-1)) auto;position:relative}.card-head-action{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.card-head-action:hover,.card-head-action--open{background:var(--surface-hover);color:var(--text)}.withholdings-export{min-width:240px}.withholdings-export-form{gap:var(--space-2);padding:var(--space-2);flex-direction:column;display:flex}.withholdings-export-title{justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;display:flex}.withholdings-export-count{color:var(--text-muted);font-weight:400}@media (width<=720px){.provision-card{gap:var(--space-5);grid-template-columns:1fr}}.vatbd-cells{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.vatbd-cells--quarters{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=1100px){.vatbd-cells--quarters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.vatbd-cell{padding:var(--space-3)}}@media (width<=340px){.vatbd-cells,.vatbd-cells--quarters{grid-template-columns:1fr}}.vatbd-cell{gap:var(--space-3);min-width:0;padding:var(--space-4);border-radius:var(--radius);background:var(--control-fill);flex-direction:column;display:flex}.vatbd-cell-label{font-size:var(--text-xs);color:var(--text-muted);font-weight:600}.vatbd-cell-empty{font-size:var(--text-sm);color:var(--text-subtle)}.vatbd-group{gap:var(--space-1);flex-direction:column;display:flex}.vatbd-group-title{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:2px}.vatbd-row{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.vatbd-row--total{margin-top:var(--space-1)}.vatbd-total-label{font-size:var(--text-xs);color:var(--text-muted);font-weight:600}.vatbd-base{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.currency-manager{width:340px;max-width:100%}.tag-field{align-items:center;gap:var(--space-1-5);padding:var(--space-1);background:var(--control-fill);border-radius:var(--radius-lg);cursor:text;transition:background var(--duration-base) var(--ease), box-shadow var(--duration-base) var(--ease);border:none;flex-wrap:wrap;display:flex;position:relative}.tag-field:hover:not(:focus-within){background:var(--control-fill-hover)}.tag-field:focus-within{box-shadow:var(--focus-ring)}.tag-field .tag-pill{background:var(--control-fill-hover);height:26px}.tag-field:hover:not(:focus-within) .tag-pill{background:var(--control-fill)}.tag-field-input{min-width:140px;height:26px;padding:0 var(--space-1-5);color:var(--text);font-size:var(--text-sm);background:0 0;border:none;outline:none;flex:1;font-family:inherit}.tag-field-input::placeholder{color:var(--text-subtle)}.currency-results{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:50;max-height:260px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.currency-result{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1-5) var(--space-3);border-radius:var(--radius);cursor:pointer;text-align:left;font-size:var(--text-sm);color:var(--text);transition:background var(--duration-fast) var(--ease);background:0 0;border:none;font-family:inherit;display:flex}.currency-result:hover{background:var(--surface-hover)}.currency-result-code{font-variant-numeric:tabular-nums;font-weight:700}.currency-result-name{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.currency-results-loading{padding:var(--space-2) var(--space-2);font-size:var(--text-sm);display:block}.segmented{--fluid-bg:color-mix(in srgb, var(--surface-hover) 55%, transparent);--fluid-radius:calc(var(--radius) - 1px);height:var(--settings-control-h,32px);background:var(--control-fill);border-radius:var(--radius);align-items:center;gap:2px;padding:3px;display:inline-flex;position:relative}.segmented-btn{z-index:1;align-items:center;gap:var(--space-1);height:100%;padding:0 var(--space-3);border-radius:calc(var(--radius) - 1px);color:var(--text-muted);font-family:inherit;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:color var(--duration-base) var(--ease), font-weight var(--duration-fast) var(--ease);background:0 0;border:none;font-weight:500;line-height:1;display:inline-flex;position:relative}.segmented-btn>span,.segmented-btn>svg{transform:translateY(-1px)}.segmented-btn:hover{color:var(--text)}.segmented-btn.active{color:var(--text);font-weight:600}.segmented-btn:disabled{color:var(--text-subtle);opacity:.45;cursor:not-allowed}.segmented-btn:disabled:hover{color:var(--text-subtle)}.segmented-btn svg{flex-shrink:0}.segmented-pill{border-radius:calc(var(--radius) - 1px);background:var(--surface-hover);box-shadow:var(--shadow-sm);pointer-events:none;z-index:0;position:absolute;top:3px;bottom:3px;left:0}[data-theme=light] .segmented{background:var(--control-fill)}[data-theme=light] .segmented-pill{background:var(--surface)}.overview-invoice-dot{display:inline-block}@media (width<=768px){.overview-invoice-dot{width:8px;height:8px}.overview-invoice-end{gap:var(--space-2)}.overview-hero-value{font-size:clamp(1.9rem,9vw,2.6rem)}.quarter-summary-value{font-size:clamp(1.7rem,8.5vw,2.4rem)}.gap-warning{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.table-card.irpf-card{padding:var(--space-4) var(--space-4)}.irpf-row .irpf-label{min-width:0}}.mobile-tabbar{display:none}.mobile-topbar-profile{cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex}.mobile-topbar-profile .avatar{width:37px;height:37px;font-size:var(--text-sm);border:1px solid var(--border-strong)}.mobile-topbar-actions{align-items:center;gap:var(--space-2);display:flex}.mobile-topbar-more,.mobile-topbar-actions .btn-export{cursor:pointer;width:37px;height:37px;color:var(--text);background:color-mix(in srgb, var(--surface-hover) 75%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.mobile-topbar-actions .btn-export-label{display:none}@media (width<=768px){.mobile-topbar{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;isolation:isolate;background:0 0;justify-content:space-between}.topbar-blur{z-index:-1;pointer-events:none;position:absolute;inset:0 0 -28px}.topbar-blur>span{position:absolute;inset:0}.topbar-blur>span:first-child{--b:.5px;--m:linear-gradient(to top, transparent 0%, #000 12.5%, #000 25%, transparent 37.5%)}.topbar-blur>span:nth-child(2){--b:1px;--m:linear-gradient(to top, transparent 12.5%, #000 25%, #000 37.5%, transparent 50%)}.topbar-blur>span:nth-child(3){--b:2px;--m:linear-gradient(to top, transparent 25%, #000 37.5%, #000 50%, transparent 62.5%)}.topbar-blur>span:nth-child(4){--b:4px;--m:linear-gradient(to top, transparent 37.5%, #000 50%, #000 62.5%, transparent 75%)}.topbar-blur>span:nth-child(5){--b:8px;--m:linear-gradient(to top, transparent 50%, #000 62.5%, #000 75%, transparent 87.5%)}.topbar-blur>span:nth-child(6){--b:16px;--m:linear-gradient(to top, transparent 62.5%, #000 75%)}.topbar-blur>span{-webkit-backdrop-filter:blur(var(--b));backdrop-filter:blur(var(--b));-webkit-mask-image:var(--m);-webkit-mask-image:var(--m);mask-image:var(--m)}.topbar-blur:after{content:"";background:linear-gradient(to bottom, color-mix(in srgb, var(--bg) 72%, transparent) 0%, color-mix(in srgb, var(--bg) 40%, transparent) 55%, transparent 100%);position:absolute;inset:0}.mobile-tabbar{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:30;border-radius:var(--radius-pill);background:color-mix(in srgb, var(--surface) 58%, transparent);-webkit-backdrop-filter:blur(24px)saturate(1.5);backdrop-filter:blur(24px)saturate(1.5);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border) 55%, transparent);padding:var(--space-1-5) var(--space-2);display:flex;position:fixed}.mobile-tab{min-width:0;padding:var(--space-1) 2px;cursor:pointer;color:var(--text-muted);font-family:inherit;font-size:var(--text-2xs);border-radius:var(--radius-pill);-webkit-tap-highlight-color:transparent;transition:color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--spring-snappy);background:0 0;border:none;flex-direction:column;flex:1 1 0;align-items:center;gap:3px;font-weight:500;display:flex}.mobile-tab:active{transform:scale(var(--press-scale))}.mobile-tab>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mobile-tab-icon{justify-content:center;align-items:center;width:20px;height:20px;display:flex}.mobile-tab-icon svg{width:19px;height:19px}.mobile-tab.active{color:var(--brand-fg)}.page-content{padding:calc(56px + 12px) 14px calc(112px + env(safe-area-inset-bottom))!important}.app-footer--shell{display:none}.btn-primary,.btn-ghost,.btn-secondary,.search-input,.btn-search{border-radius:var(--radius-pill)}:root{--control-h:36px;--card-pad:var(--space-4)}.period-selector,.year-stepper{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--surface-hover) 72%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}[data-theme=light] .period-selector,[data-theme=light] .year-stepper{background:var(--control-fill)}.period-btn,.period-pill,.year-step,.year-step-label{border-radius:var(--radius-pill)}.page-header-toolbar{gap:var(--space-2);flex-wrap:nowrap;width:100%}.page-header-toolbar .period-selector{flex:1;justify-content:space-between;width:auto;min-width:0}.period-btn,.year-step,.year-step-label{height:calc(var(--control-h) - 6px)}.table-header .btn-add{border-radius:var(--radius-pill)}.page-header{display:contents}.page-header-left{margin-bottom:var(--space-4)}.page-header-toolbar{z-index:20;margin-bottom:var(--space-3);padding:var(--space-1-5) 0;position:sticky;top:56px}.page-header-toolbar .year-stepper{flex-shrink:0}.page-header-toolbar .btn-export{display:none}.mobile-menu-sheet,.detail-sheet{background:color-mix(in srgb, var(--surface) 80%, transparent);-webkit-backdrop-filter:blur(28px)saturate(1.4);backdrop-filter:blur(28px)saturate(1.4);border-radius:26px 26px 0 0}.mobile-menu-sheet{padding-bottom:calc(20px + env(safe-area-inset-bottom));z-index:201}.mobile-menu-profile{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-1) 0 0;cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;display:flex}.mobile-menu-profile .avatar{width:44px;height:44px;font-size:var(--text-md);border:1px solid var(--border-strong)}.mobile-menu-profile-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.mobile-menu-profile-name{font-size:var(--text-md);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.mobile-menu-profile-sub{font-size:var(--text-xs);color:var(--text-muted)}.mobile-menu-profile-chevron{color:var(--text-subtle);flex-shrink:0}.fin-grid{margin-bottom:var(--gutter);grid-template-columns:1fr}.fin-card--part{display:none}.fin-info{display:inline-flex}.kanban-board{margin-inline:calc(-1 * var(--space-3));padding-inline:var(--space-3);grid-template-columns:repeat(4,calc(100vw - 64px));scroll-padding-inline:14px}.kanban-col{scroll-snap-align:start}.kanban-card{padding:var(--space-3) var(--space-3)}.kanban-card-name{font-size:var(--text-title)}.kanban-card-budget{font-size:var(--text-base)}.sort-label-prefix{display:none}.table-header{justify-content:space-between;align-items:center;gap:var(--space-1-5);flex-flow:wrap}.table-header>div:first-child{gap:var(--space-1);flex-wrap:wrap}.table-header>div:last-child{gap:var(--space-1);width:auto}.table-header .filter-dropdown-trigger{padding:0 var(--space-3) 0 var(--space-3)}.table-header .sort-dir-btn{padding:0 var(--space-1-5)}.table-header .btn-add{padding:var(--space-1-5) var(--space-2)}.expense-table .cell-tag-dots{display:none}.cell-meta{display:flex}.m-record-list{gap:var(--space-2);padding:var(--space-1) 0 var(--space-3);flex-direction:column;display:flex}.table-card:has(.m-record-list){padding-top:0;padding-left:0;padding-right:0}.table-card:has(.m-record-list) .table-header{padding-left:0;padding-right:0}.m-record-card{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 72%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);cursor:pointer;text-align:left;color:inherit;-webkit-tap-highlight-color:transparent;transition:background var(--duration-quick) var(--ease);border:none;font-family:inherit;display:flex}.m-record-card__main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.m-record-card__title{font-size:var(--text-title);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.m-record-card__sub{font-size:var(--text-xs);color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.m-record-card__end{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.m-record-card__amount{font-size:var(--text-title);font-variant-numeric:tabular-nums;color:var(--text);font-weight:600}.table-scroll:has(.m-record-list){overflow-x:visible}}.table-card--dropping{outline:2px dashed var(--brand);outline-offset:6px;border-radius:var(--radius);position:relative}.table-card--dropping>:not(.drop-hint){opacity:.35;pointer-events:none;transition:opacity var(--duration-fast) var(--ease)}.drop-hint{z-index:5;justify-content:center;align-items:center;gap:var(--space-2);pointer-events:none;color:var(--brand);font-size:var(--text-title);letter-spacing:-.005em;text-align:center;padding:0 var(--space-5);flex-direction:column;font-weight:600;display:flex;position:absolute;inset:0}.float-pill{z-index:120;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg,0 12px 32px #00000047);font-size:var(--text-base);color:var(--text);max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.float-pill-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.float-pill-action{background:var(--brand-dim);color:var(--brand-fg);font-family:inherit;font-size:var(--text-sm);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);cursor:pointer;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);border:none;flex-shrink:0;font-weight:600}.float-pill-action:hover{background:var(--surface-hover)}.status-pill{gap:var(--space-2);padding-left:var(--space-3)}.mac-update-pill{gap:var(--space-2);padding-right:var(--space-2);overflow:hidden}.mac-update-pill>:not(.mac-update-fill){position:relative}.mac-update-fill{background:var(--brand-dim);transform-origin:0;pointer-events:none;position:absolute;inset:0}.float-pill-close{border-radius:var(--radius-pill);width:24px;height:24px;color:var(--text-subtle);cursor:pointer;transition:color var(--duration-quick) var(--ease);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.float-pill-close:hover{color:var(--text)}@media (width<=768px){.float-pill{bottom:calc(84px + env(safe-area-inset-bottom))}.undo-bar{z-index:205}}.ai-dots{align-items:center;gap:3px;height:12px;display:inline-flex}.ai-dots i{background:var(--brand);border-radius:50%;width:5px;height:5px;animation:1.1s ease-in-out infinite ai-breathe}.ai-dots i:nth-child(2){animation-delay:.15s}.ai-dots i:nth-child(3){animation-delay:.3s}@keyframes ai-breathe{0%,to{opacity:.25;transform:translateY(0)scale(.85)}40%{opacity:1;transform:translateY(-2px)scale(1)}}.ai-shimmer,.bulk-row--processing .bulk-input,.bulk-row--processing .bulk-total>*{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--control-fill) 0%, color-mix(in srgb, var(--brand) 18%, var(--control-fill)) 45%, var(--control-fill) 90%);pointer-events:none;background-size:220% 100%;animation:1.5s ease-in-out infinite ai-sweep;display:inline-block;color:#0000!important}.bulk-row--processing .bulk-input::placeholder{color:#0000}@keyframes ai-sweep{0%{background-position:120% 0}to{background-position:-120% 0}}.bulk-row--ready .bulk-input,.bulk-row--ready .bulk-total>*,.tr-ai-done .tag-dot{animation:.32s cubic-bezier(.23,1,.32,1) both ai-arrive}@keyframes ai-arrive{0%{opacity:.35;transform:scale(.975)}to{opacity:1;transform:scale(1)}}.tr-ai .cell-name-inner:after{content:"";vertical-align:middle;width:34px;height:8px;margin-left:var(--space-2);background:linear-gradient(90deg, var(--control-fill) 0%, color-mix(in srgb, var(--brand) 22%, var(--control-fill)) 45%, var(--control-fill) 90%);background-size:220% 100%;border-radius:4px;animation:1.5s ease-in-out infinite ai-sweep;display:inline-block}.ai-ring{--p:0%;vertical-align:-2px;width:14px;height:14px;margin-right:var(--space-1-5);background:conic-gradient(currentColor var(--p), color-mix(in srgb, currentColor 22%, transparent) 0);border-radius:50%;transition:--p .3s ease-out;display:inline-block;-webkit-mask:radial-gradient(circle,#0000 54%,#000 56%);mask:radial-gradient(circle,#0000 54%,#000 56%)}.ai-ring--indeterminate{background:conic-gradient(currentColor 0 25%, color-mix(in srgb, currentColor 22%, transparent) 0);animation:.9s linear infinite bulk-spin}.btn-ai--working{animation:1.4s ease-in-out infinite ai-pulse}@keyframes ai-pulse{0%,to{opacity:1}50%{opacity:.72}}@keyframes row-flash{0%{background-color:color-mix(in srgb, var(--brand) 22%, transparent)}to{background-color:#0000}}.tr-flash>td{animation:.9s ease-out both row-flash}.table-empty{align-items:center;gap:var(--space-3);padding:var(--space-7) var(--space-4);text-align:center;flex-direction:column;display:flex}.table-empty-text{max-width:34ch;font-size:var(--text-base);color:var(--text-muted);margin:0}.table-empty-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}body{transition:opacity .2s ease-out}html.app-fading body{opacity:0}@media (prefers-reduced-motion:reduce){.ai-dots i,.ai-shimmer,.bulk-row--processing .bulk-input,.bulk-row--processing .bulk-total>*,.tr-ai .cell-name-inner:after,.ai-ring--indeterminate,.btn-ai--working{animation:none}}.list-swapping{opacity:.2;pointer-events:none;transition:opacity .22s var(--ease)}.onboarding-overlay{background:color-mix(in srgb, var(--scrim) 100%, black 22%);-webkit-backdrop-filter:blur(8px);z-index:200}.onboarding-modal{max-width:440px;padding:var(--space-7)}.onboarding-head{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.onboarding-icon{border-radius:var(--radius-sm);background:var(--brand-dim);width:34px;height:34px;color:var(--brand-fg);flex:none;justify-content:center;align-items:center;display:flex}.onboarding-title{font-size:var(--text-md);letter-spacing:-.02em;margin-bottom:3px;font-weight:700}.onboarding-subtitle{font-size:var(--text-sm);color:var(--text-muted);line-height:1.55}.onboarding-progress{gap:var(--space-1);margin-bottom:var(--space-5);display:flex}.onboarding-progress-bar{background:var(--control-fill);height:3px;transition:background-color .3s var(--ease);border-radius:2px;flex:1}.onboarding-progress-bar.is-done{background:var(--brand)}.onboarding-body{min-height:168px}.onboarding-pair{gap:var(--space-2);grid-template-columns:1fr 90px;display:grid}.form-field-hint{font-size:var(--text-xs);color:var(--text-subtle);line-height:1.4}.onboarding-why{font-size:var(--text-xs);color:var(--text-subtle);margin-top:var(--space-1);line-height:1.55}.onboarding-error{margin-top:var(--space-3)}.onboarding-actions{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-6);display:flex}@media (width<=480px){.onboarding-modal{padding:var(--space-6) var(--space-5)}.onboarding-body{min-height:0}}.user-created-lead{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-4);line-height:1.55}.user-created-card{background:var(--control-fill);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.user-created-row{justify-content:space-between;align-items:baseline;gap:var(--space-4);display:flex}.user-created-key{font-size:var(--text-xs);color:var(--text-muted);flex:none}.user-created-value{font-size:var(--text-sm);color:var(--text);text-align:right;word-break:break-all}.user-created-value--mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-base);letter-spacing:.04em;color:var(--brand-fg);-webkit-user-select:all;user-select:all}.user-created-note{font-size:var(--text-xs);color:var(--text-subtle);margin-top:var(--space-3);line-height:1.55}.form-eye--second{right:34px}.form-input-wrap:has(.form-eye--second) input{padding-right:74px!important}.cmdk-overlay{z-index:200;background:var(--scrim);-webkit-backdrop-filter:blur(4px);padding:12vh var(--space-4) var(--space-4);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.cmdk-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:560px;max-height:70vh;display:flex;overflow:hidden}.cmdk-input-row{align-items:center;gap:var(--space-2);height:48px;padding:0 var(--space-4);border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.cmdk-input-row svg{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}.cmdk-input-row input{min-width:0;height:100%;color:var(--text);font-family:inherit;font-size:var(--text-md);background:0 0;border:0;outline:0;flex:1}.cmdk-input-row input::placeholder{color:var(--text-subtle)}.cmdk-list{padding:var(--space-1-5);position:relative;overflow-y:auto}.cmdk-empty{padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-muted);font-size:var(--text-base)}.cmdk-group-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);padding:var(--space-2) var(--space-2) var(--space-1);font-weight:600}.cmdk-item{align-items:center;gap:var(--space-2);text-align:left;width:100%;padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);color:var(--text);font-family:inherit;font-size:var(--text-base);cursor:pointer;background:0 0;border:none;display:flex}.cmdk-item:hover,.cmdk-item.active{background:var(--surface-hover)}.cmdk-item-icon{opacity:.6;flex-shrink:0;width:16px;height:16px}.cmdk-item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cmdk-foot{gap:var(--space-3);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);font-size:var(--text-xs);color:var(--text-subtle);flex-shrink:0;display:flex}.cmdk-foot span{gap:var(--space-1);align-items:center;display:inline-flex}.cmdk-kbd{min-width:16px;height:16px;padding:0 var(--space-1);background:var(--control-fill);font-family:inherit;font-size:var(--text-2xs);border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.sidebar-search{align-items:center;gap:var(--space-2);margin:var(--space-4) var(--space-2) 0;padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-subtle);font-family:inherit;font-size:var(--text-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);background:0 0;flex-shrink:0;display:flex}.sidebar-search:hover{background:var(--surface-hover);color:var(--text-muted)}.sidebar-search svg{flex-shrink:0;width:14px;height:14px}.sidebar-search-label{text-align:left;flex:1}.sidebar-search-kbd{flex-shrink:0;gap:2px;display:inline-flex}@media (width<=1024px) and (width>=769px){.sidebar-search{justify-content:center}.sidebar-search-label,.sidebar-search-kbd{display:none}}.pin-card{border-radius:var(--radius-xl);max-width:340px;padding:44px var(--space-7) var(--space-8)}.login-step{align-items:center;gap:var(--space-3);flex-direction:column;width:100%;display:flex}.login-lead--tight{margin:calc(-1 * var(--space-2)) 0 var(--space-3)}.login-quick-avatar{width:72px;height:72px;font-size:var(--text-xl)}.table-totals{bottom:var(--space-3);z-index:6;margin-top:var(--space-4);padding-bottom:var(--space-2);position:sticky}.table-totals-fade{left:calc(-1 * var(--space-6));right:calc(-1 * var(--space-6));bottom:calc(-1 * var(--space-3));height:calc(100% + 112px + var(--space-3));pointer-events:none;visibility:hidden;transition:visibility 0s linear var(--duration-slow);position:absolute}.table-totals--floating .table-totals-fade{visibility:visible;transition-delay:0s}.table-totals-fade>span{-webkit-backdrop-filter:blur();backdrop-filter:blur();-webkit-mask-image:linear-gradient(to bottom, transparent var(--from), #000 var(--in), #000 var(--out), transparent var(--to));-webkit-mask-image:linear-gradient(to bottom, transparent var(--from), #000 var(--in), #000 var(--out), transparent var(--to));mask-image:linear-gradient(to bottom, transparent var(--from), #000 var(--in), #000 var(--out), transparent var(--to));transition:backdrop-filter var(--duration-slow) var(--ease), -webkit-backdrop-filter var(--duration-slow) var(--ease);position:absolute;inset:0}.table-totals-fade>span:first-child{--from:0%;--in:10%;--out:20%;--to:30%;--blur:.25px}.table-totals-fade>span:nth-child(2){--from:10%;--in:20%;--out:30%;--to:40%;--blur:.5px}.table-totals-fade>span:nth-child(3){--from:20%;--in:30%;--out:40%;--to:50%;--blur:1px}.table-totals-fade>span:nth-child(4){--from:30%;--in:40%;--out:50%;--to:60%;--blur:1.5px}.table-totals-fade>span:nth-child(5){--from:40%;--in:50%;--out:60%;--to:70%;--blur:2.5px}.table-totals-fade>span:nth-child(6){--from:50%;--in:60%;--out:70%;--to:80%;--blur:4px}.table-totals-fade>span:nth-child(7){--from:60%;--in:70%;--out:80%;--to:90%;--blur:6px}.table-totals-fade>span:nth-child(8){--from:70%;--in:80%;--out:100%;--to:100%;--blur:9px}.table-totals--floating .table-totals-fade>span{-webkit-backdrop-filter:blur(var(--blur));backdrop-filter:blur(var(--blur))}.table-totals-sentinel{pointer-events:none;height:1px;margin-top:-1px}.sticky-stack-blur{display:none}@media (width>=769px){.sticky-stack{--stack-bottom:calc(var(--page-pad-top) + var(--stack-header-h,0px))}.sticky-stack--table{--stack-toolbar-top:calc(var(--page-pad-top) + var(--stack-header-h,0px) + var(--space-6) + var(--space-3));--stack-bottom:calc(var(--stack-toolbar-top) + var(--stack-toolbar-h,0px))}.sticky-stack--table .table-card{padding-top:var(--space-3)}.sticky-stack .page-header,.sticky-stack .notion-topbar{top:var(--page-pad-top);z-index:6;position:sticky}.sticky-stack--table .table-header{top:var(--stack-toolbar-top);z-index:5;position:sticky}.sticky-stack tbody tr{scroll-margin-top:calc(var(--stack-bottom) + var(--space-4))}.sticky-stack .settings-nav{top:calc(var(--stack-bottom) + var(--space-5));z-index:4}.sticky-stack-blur{top:var(--page-pad-top);z-index:3;pointer-events:none;height:0;display:block;position:sticky}.sticky-stack-band{--h:var(--stack-bottom);--s:var(--space-3);top:calc(-1 * var(--page-pad-top));left:calc(-2 * var(--space-7));right:calc(-2 * var(--space-7));height:calc(var(--h) + 8 * var(--s));visibility:hidden;position:absolute}.sticky-stack-band:before{content:"";height:var(--h);pointer-events:auto;position:absolute;inset:0 0 auto}.sticky-stack-band>span{-webkit-backdrop-filter:blur(calc(var(--b) * var(--reveal,0)));backdrop-filter:blur(calc(var(--b) * var(--reveal,0)));-webkit-mask-image:var(--m);-webkit-mask-image:var(--m);mask-image:var(--m);position:absolute;inset:0}.sticky-stack-band>span:not(:last-child){--rt:max(0px, calc(var(--h) - 4 * var(--s)));top:var(--rt);--m:linear-gradient(to bottom, #000 calc(var(--h) + (8 - var(--j)) * var(--s) - var(--rt)), transparent calc(var(--h) + (9 - var(--j)) * var(--s) - var(--rt)))}.sticky-stack-band>span:last-child{height:var(--h);--b:16px;--m:linear-gradient(to bottom, #000 calc(var(--h) - 2 * var(--s)), transparent var(--h));bottom:auto}.sticky-stack-band>span:first-child{--j:1;--b:.6px}.sticky-stack-band>span:nth-child(2){--j:2;--b:1.04px}.sticky-stack-band>span:nth-child(3){--j:3;--b:1.6px}.sticky-stack-band>span:nth-child(4){--j:4;--b:2.5px}.sticky-stack-band>span:nth-child(5){--j:5;--b:3.84px}.sticky-stack-band>span:nth-child(6){--j:6;--b:5.59px}.sticky-stack-band>span:nth-child(7){--j:7;--b:8.05px}.sticky-stack-band>span:nth-child(8){--j:8;--b:11.62px}.sticky-stack-band:after{content:"";background:linear-gradient(to bottom, color-mix(in srgb, var(--bg) 65%, transparent) var(--h), color-mix(in srgb, var(--bg) 42%, transparent) calc(var(--h) + 1.5 * var(--s)), color-mix(in srgb, var(--bg) 22%, transparent) calc(var(--h) + 3 * var(--s)), color-mix(in srgb, var(--bg) 8%, transparent) calc(var(--h) + 4.5 * var(--s)), transparent calc(var(--h) + 6 * var(--s)));opacity:var(--reveal,0);position:absolute;inset:0}}.table-totals-inner{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 80%, transparent);-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4);min-height:46px;position:relative}.table-total-cell{align-items:center;gap:var(--space-1-5);min-width:0;display:flex;position:absolute;top:0;bottom:0;overflow:hidden}.table-total-cell.num{justify-content:flex-end}.table-total-cell.num .table-total-value{font-size:var(--text-md)}.table-total-cell--strong .table-total-value{color:var(--text);font-weight:700}.table-total-label{font-size:var(--text-xs);color:var(--text-subtle);white-space:nowrap}.table-total-cell.num .table-total-label{display:none}.table-total-value{font-size:var(--text-base);font-variant-numeric:tabular-nums;color:var(--text-muted);font-weight:600}.table-total-cell:not(.num) .table-total-value{font-size:var(--text-title)}.fil{gap:var(--space-1-5);flex-direction:column;display:flex}.fil-row{gap:var(--space-3);grid-template-columns:minmax(130px,1fr) minmax(0,2.4fr);align-items:center;display:grid}.fil-model{flex-direction:column;min-width:0;display:flex}.fil-model-id{font-variant-numeric:tabular-nums;font-weight:600}.fil-model-name{font-size:var(--text-xs);color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fil-cells{gap:var(--space-1-5);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.fil-cells--annual{grid-template-columns:1fr}.fil-cell{background:color-mix(in srgb, var(--control-fill) 45%, transparent);border-radius:var(--radius-sm);min-height:40px;color:var(--text-subtle);font-size:var(--text-xs);transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);align-items:stretch;font-weight:600;display:flex;overflow:hidden}.fil-cell:hover{background:var(--control-fill);color:var(--text-muted)}.fil-cell--pdf{background:var(--control-fill);color:var(--text)}.fil-cell--pdf:hover{background:var(--control-fill-hover)}.fil-cell.fil-cell--over,[data-theme=light] .fil-cell.fil-cell--over{background:var(--brand-dim);color:var(--brand-fg);outline:1.5px solid var(--brand);outline-offset:-1.5px}.fil-cell--uploading{opacity:.6;pointer-events:none}[data-theme=light] .fil-cell{background:color-mix(in srgb, var(--control-fill) 70%, transparent)}.fil-cell-open{min-width:0;padding:0 var(--space-1) 0 var(--space-2);color:inherit;font:inherit;font-size:inherit;font-weight:inherit;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;display:inline-flex}.fil-cell-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fil-cell-dot,.fil-cell-dl{cursor:pointer;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.fil-cell-dot{width:24px}.fil-cell-dot:hover:not(:disabled) .vat-dot{background:var(--text-subtle)}.fil-cell-dot:hover:not(:disabled) .vat-dot--paid{background:var(--green);opacity:.7}.fil-cell-dot:disabled{cursor:default}.fil-cell-dot:disabled .vat-dot{opacity:.35;cursor:default}.fil-cell-dot:disabled .vat-dot:hover{background:var(--border-strong)}.fil-cell-dot:disabled .vat-dot--paid:hover{background:var(--green)}.fil-cell:not(:has(.fil-cell-dot)) .fil-cell-dl{margin-left:var(--space-6)}.fil-cell-dl{width:26px;color:var(--text-subtle)}.fil-cell-dl:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.fil-cell-dl--empty{opacity:.25;cursor:default}.fil-modal{gap:var(--space-4);flex-direction:column;max-width:560px;display:flex}.fil-modal .modal-header{align-items:flex-start;margin-bottom:0}.fil-modal-sub{font-size:var(--text-xs);color:var(--text-subtle);margin-top:2px}.fil-drop{align-items:center;gap:var(--space-1);padding:var(--space-8) var(--space-5);background:var(--control-fill);border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--text);font:inherit;text-align:center;cursor:pointer;transition:background var(--duration-quick) var(--ease), border-color var(--duration-quick) var(--ease);flex-direction:column;display:flex}.fil-drop:hover{background:var(--control-fill-hover)}.fil-drop--over{border-color:var(--brand);background:var(--brand-dim)}.fil-drop:disabled{cursor:default;opacity:.6}.fil-drop-icon{color:var(--text-subtle);margin-bottom:var(--space-1)}.fil-drop--over .fil-drop-icon{color:var(--brand-fg)}.fil-drop-title{font-size:var(--text-md);font-weight:600}.fil-doc{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.fil-doc-head{align-items:baseline;gap:var(--space-2);min-width:0;display:flex}.fil-doc-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.fil-doc-date{font-size:var(--text-xs);color:var(--text-subtle);flex-shrink:0;margin-left:auto}.fil-preview{align-items:center;gap:var(--space-2);width:100%;min-height:160px;max-height:46vh;padding:var(--space-2);background:var(--control-fill);border-radius:var(--radius);flex-direction:column;display:flex;overflow-y:auto}.fil-preview-pages{gap:var(--space-2);flex-direction:column;width:100%;display:flex}.fil-preview-page{border-radius:var(--radius-sm);background:#fff;width:100%;height:auto;display:block}.fil-preview-loading{font-size:var(--text-sm);color:var(--text-subtle);margin:auto}.fil-modal .form-actions{margin-top:0}@media (width<=620px){.fil{gap:var(--space-3)}.fil-row{gap:var(--space-2);grid-template-columns:1fr}.fil-model{align-items:baseline;gap:var(--space-1-5);flex-direction:row}.fil-model-name{font-size:var(--text-xs)}.fil-cell{min-height:44px}.fil-cell-open{padding:0 2px 0 var(--space-2)}.fil-cell-dl{display:none}.fil-cell:not(:has(.fil-cell-dot)) .fil-cell-dl{margin-left:0}.fil-cell-dot{width:26px}.fil-preview{max-height:38vh}.fil-modal .form-actions{flex-wrap:wrap}}.bot-face{--bot-face:var(--brand);--bot-eye:var(--brand-text);flex-shrink:0;display:block;overflow:visible}.bot-face-bg{fill:var(--bot-face);transform-box:fill-box;transform-origin:50%}.bot-eyes{transform-box:view-box;transform-origin:16px 16px;transition:opacity var(--duration-base) var(--ease)}.bot-eyes--happy,.bot-eyes--closed,.bot-zzz,.bot-face--happy .bot-eyes--open,.bot-face--sleeping .bot-eyes--open,.bot-face--sleeping .bot-eyes--happy{opacity:0}.bot-face--happy .bot-eyes--happy,.bot-face--sleeping .bot-eyes--closed,.bot-face--sleeping .bot-zzz{opacity:1}.bot-zzz{transition:opacity var(--duration-slow) var(--ease)}.bot-zzz text{fill:var(--text-muted);font-size:7px;font-weight:700;animation:2.8s ease-in-out infinite bot-z}.bot-zzz text:nth-child(2){font-size:5px;animation-delay:1.4s}.bot-eye-wrap{transform-box:fill-box;transform-origin:50%;transition:transform var(--duration-base) var(--ease)}.bot-eye{fill:var(--bot-eye);transform-box:fill-box;transform-origin:50%;animation:5.2s ease-in-out infinite bot-blink}.bot-eye-wrap--r .bot-eye{animation-delay:40ms}.bot-line{fill:none;stroke:var(--bot-eye);stroke-width:2.4px;stroke-linecap:round}.bot-face--thinking .bot-eyes--open{animation:1.5s ease-in-out infinite bot-look}.bot-face--bored .bot-eyes--open{animation:7s ease-in-out infinite bot-glance}.bot-face--sleeping .bot-face-bg{animation:3.4s ease-in-out infinite bot-breathe}.bot-face--awake .bot-eye{animation:bot-wake .45s var(--ease) both}.bot-face--worried .bot-eye-wrap{transform:translateY(.8px)scaleY(.62)}@keyframes bot-blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.12)}}@keyframes bot-glance{0%,28%,88%,to{transform:translate(0)}36%,50%{transform:translate(-2.4px)}58%,76%{transform:translate(2.4px)}}@keyframes bot-breathe{0%,to{transform:scale(1)}50%{transform:scale(.965)}}@keyframes bot-wake{0%{transform:scaleY(.1)}60%{transform:scaleY(1.15)}to{transform:scaleY(1)}}@keyframes bot-z{0%{opacity:0;transform:translate(0)}30%{opacity:1}to{opacity:0;transform:translate(3px,-5px)}}@keyframes bot-look{0%,to{transform:translate(-2.2px)}50%{transform:translate(2.2px)}}.asst-launcher{right:var(--space-5);bottom:var(--space-5);z-index:90;border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:none;width:44px;height:44px;padding:0;position:fixed}.asst-launcher-dot{background:var(--red);border-radius:50%;width:10px;height:10px;position:absolute;top:1px;right:1px}.asst-window{--asst-bg:color-mix(in srgb, var(--surface) 55%, var(--bg));--asst-head-h:66px;right:var(--space-5);bottom:calc(var(--space-5) + 44px + var(--space-3));z-index:90;width:400px;max-width:calc(100vw - 2 * var(--space-5));background:var(--asst-bg);border:1px solid var(--border);border-radius:var(--radius-xl);transform-origin:100% 100%;flex-direction:column;height:min(640px,100vh - 120px);display:flex;position:fixed;overflow:hidden}.asst-head{z-index:2;isolation:isolate;height:var(--asst-head-h);align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4) 0 var(--space-5);display:flex;position:absolute;top:0;left:0;right:0}.asst-head-blur{z-index:-1;pointer-events:none;position:absolute;inset:0 0 -24px}.asst-head-blur>span{-webkit-backdrop-filter:blur(var(--b));backdrop-filter:blur(var(--b));-webkit-mask-image:var(--m);-webkit-mask-image:var(--m);mask-image:var(--m);position:absolute;inset:0}.asst-head-blur>span:first-child{--b:.5px;--m:linear-gradient(to top, transparent 0%, #000 12.5%, #000 25%, transparent 37.5%)}.asst-head-blur>span:nth-child(2){--b:1px;--m:linear-gradient(to top, transparent 12.5%, #000 25%, #000 37.5%, transparent 50%)}.asst-head-blur>span:nth-child(3){--b:2px;--m:linear-gradient(to top, transparent 25%, #000 37.5%, #000 50%, transparent 62.5%)}.asst-head-blur>span:nth-child(4){--b:4px;--m:linear-gradient(to top, transparent 37.5%, #000 50%, #000 62.5%, transparent 75%)}.asst-head-blur>span:nth-child(5){--b:8px;--m:linear-gradient(to top, transparent 50%, #000 62.5%, #000 75%, transparent 87.5%)}.asst-head-blur>span:nth-child(6){--b:16px;--m:linear-gradient(to top, transparent 62.5%, #000 75%)}.asst-head-blur:after{content:"";background:linear-gradient(to bottom, color-mix(in srgb, var(--asst-bg) 82%, transparent) 0%, color-mix(in srgb, var(--asst-bg) 55%, transparent) 60%, transparent 100%);position:absolute;inset:0}.asst-head-text{flex:1;min-width:0}.asst-title{font-size:var(--text-title);font-weight:var(--weight-heading);letter-spacing:var(--tracking-tight);margin:0;line-height:1.25}.asst-sub{font-size:var(--text-xs);color:var(--text-subtle);margin:0}.asst-body{min-height:0;padding:calc(var(--asst-head-h) + var(--space-7)) var(--space-5) var(--space-6);scrollbar-width:thin;flex:1;overflow-y:auto}.asst-report{gap:var(--space-4);flex-direction:column;display:flex}.asst-thinking{align-items:center;gap:var(--space-2);min-height:1.55em;font-size:var(--text-sm);color:var(--text-muted);display:flex}.asst-text{font-size:var(--text-base);color:var(--text);margin:0;line-height:1.55}.asst-word--in{animation:asst-word-in .32s var(--ease) both}@keyframes asst-word-in{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur()}}.asst-caret{vertical-align:-.15em;background:var(--brand);border-radius:2px;width:7px;height:1em;margin-left:1px;animation:.9s step-end infinite asst-caret;display:inline-block}@keyframes asst-caret{50%{opacity:0}}.asst-hero{gap:var(--figure-gap);flex-direction:column;min-width:0;display:flex}.asst-hero-label{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.asst-hero-value{font-size:var(--figure-size);font-weight:var(--figure-weight);letter-spacing:var(--figure-tracking);line-height:var(--figure-leading);font-variant-numeric:tabular-nums;color:var(--text)}.asst-card{gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius);background:var(--control-fill);flex-direction:column;display:flex}.asst-card-head{align-items:baseline;gap:var(--space-2);min-width:0;margin-bottom:var(--space-1);display:flex}.asst-card-number{font-size:var(--text-md);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:700}.asst-card-name{min-width:0;font-size:var(--text-sm);color:var(--text-muted)}.asst-card-meta{font-size:var(--text-xs);color:var(--text-subtle);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto}.asst-card-paid{align-items:center;gap:var(--space-1-5);color:var(--text-muted);display:inline-flex}.asst-card-empty{font-size:var(--text-sm);color:var(--text-muted);margin:0;line-height:1.55}.asst-rows{flex-direction:column;display:flex}.asst-group{margin:var(--space-3) 0 var(--space-1);font-size:var(--text-xs);color:var(--text-subtle);font-weight:600}.asst-group:first-child{margin-top:0}.asst-row{align-items:center;gap:var(--space-2);grid-template-columns:40px minmax(0,1fr) auto;padding:3px 0;display:grid}.asst-box{min-width:30px;height:20px;padding:0 var(--space-1-5);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text);justify-content:center;justify-self:start;align-items:center;font-weight:600;display:inline-flex}.asst-box--none{background:0 0}.asst-box--key{font-size:var(--text-2xs);color:var(--text-subtle);white-space:nowrap;background:0 0;padding:0;font-weight:500}.asst-label{min-width:0;font-size:var(--text-sm);color:var(--text-muted);line-height:1.4}.asst-materialize{justify-self:end;display:inline-flex}.asst-value{font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.asst-row--total{margin-top:var(--space-2)}.asst-row--total .asst-label{color:var(--text);font-weight:600}.asst-row--total .asst-value{font-size:var(--text-lg);font-weight:var(--figure-weight);letter-spacing:var(--figure-tracking)}.asst-nif{width:fit-content;font-size:var(--text-xs);color:var(--text-subtle);display:block}.asst-perceptor-values{flex-direction:column;align-items:flex-end;display:flex}.asst-value--sub{font-size:var(--text-xs);color:var(--text-subtle)}.asst-alerts{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.asst-alerts-head{margin-bottom:var(--space-1);flex-direction:column;gap:2px;display:flex}.asst-alerts-title{font-size:var(--text-title);font-weight:var(--weight-heading);letter-spacing:var(--tracking-tight);color:var(--text);margin:0}.asst-alerts-intro{font-size:var(--text-sm);color:var(--text-muted);margin:0;line-height:1.4}.asst-alert{align-items:baseline;gap:var(--space-2);padding:var(--space-1) 0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.asst-alert .status-dot{transform:translateY(-1px)}.asst-alert-text{flex-direction:column;min-width:0;display:flex}.asst-alert-title{font-size:var(--text-sm);color:var(--text);font-weight:600}.asst-alert-sub{font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.asst-alert-amount{font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;font-weight:600}.asst-allclear{align-items:center;gap:var(--space-2);margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--text-muted);display:flex}.asst-row.tone-vat .asst-value,.asst-hero-value.tone-vat,.asst-alert-amount.tone-vat{color:var(--yellow)}.asst-row.tone-irpf .asst-value,.asst-hero-value.tone-irpf,.asst-alert-amount.tone-irpf,.asst-row.tone-expense .asst-value{color:var(--red)}.asst-row.tone-income .asst-value,.asst-hero-value.tone-income{color:var(--green)}.asst-action{padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-pill);background:var(--control-fill);color:var(--text-muted);font:inherit;font-size:var(--text-xs);cursor:pointer;transition:background var(--duration-quick) var(--ease), color var(--duration-quick) var(--ease);border:none;align-self:flex-start;font-weight:600}.asst-action:hover{background:var(--control-fill-hover);color:var(--text)}.asst-action--primary{background:var(--brand-dim);color:var(--brand-fg)}.fil-guide{align-self:center}@media (width<=768px){.asst-launcher{right:var(--space-4);bottom:calc(84px + env(safe-area-inset-bottom))}.asst-window{width:100%;max-width:none;height:min(88vh,720px);padding-bottom:env(safe-area-inset-bottom);border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:202;transform-origin:bottom;border-bottom:none;bottom:0;left:0;right:0}}@media (prefers-reduced-motion:reduce){.asst-word--in,.asst-caret,.bot-eye,.bot-face--thinking .bot-eyes--open,.bot-face--bored .bot-eyes--open,.bot-face--sleeping .bot-face-bg,.bot-zzz text{animation:none}.bot-zzz text{opacity:.7}}.add-menu{position:relative}.add-menu .add-menu-trigger{width:var(--control-h);height:var(--control-h);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;padding:0}.add-menu-trigger--open{background:var(--control-fill-hover)}.add-menu-pop{min-width:210px;max-height:none;overflow:visible}.add-menu-item{padding:var(--space-2) var(--space-2);align-items:center}.add-menu-icon{border-radius:var(--radius-sm);background:var(--control-fill);width:28px;height:28px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.add-menu-item:hover .add-menu-icon{color:var(--text)}.add-menu-text{flex-direction:column;gap:1px;min-width:0;display:flex}.add-menu-hint{font-size:var(--text-xs);color:var(--text-subtle)}.cell-status-dot{flex-shrink:0;margin-left:2px}
