.sidebar{width:var(--sidebar-width);background:var(--color-bg-sidebar);z-index:1;flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:relative}.sidebar-logo{height:var(--header-height);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-logo-mark{border-radius:var(--radius-lg);width:36px;height:36px;color:var(--color-text-inverse);font-family:var(--font-ui);font-weight:var(--weight-bold);letter-spacing:.04em;cursor:default;-webkit-user-select:none;user-select:none;transition:background var(--transition-normal), transform var(--transition-fast), box-shadow var(--transition-normal);background:linear-gradient(135deg,#ffffff38,#ffffff14);border:1px solid #ffffff2e;justify-content:center;align-items:center;font-size:13px;display:flex;box-shadow:inset 0 1px #ffffff29,0 1px 2px #0000001f}.sidebar-logo-mark:hover{background:linear-gradient(135deg,#ffffff4d,#ffffff1f);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff38,0 4px 10px #0003}.sidebar-logo-mark:active{transform:translateY(0)}.sidebar-nav{padding:var(--space-4) 0;align-items:center;gap:var(--space-0-5);scrollbar-width:none;flex-direction:column;flex:1;display:flex;overflow:hidden auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-btn{border-radius:var(--radius-md);width:58px;font-size:var(--text-2xs);font-weight:var(--weight-medium);font-family:var(--font-ui);line-height:var(--leading-tight);color:#ffffffa6;cursor:pointer;transition:background var(--transition-normal), color var(--transition-normal), transform var(--transition-fast);text-align:center;background:0 0;border:none;outline:none;flex-direction:column;align-items:center;gap:3px;padding:8px 0;display:flex;position:relative}.sidebar-btn-icon{transition:transform var(--transition-normal);font-size:20px;line-height:1}.sidebar-btn-label{line-height:var(--leading-tight);white-space:nowrap;text-overflow:ellipsis;max-width:54px;overflow:hidden}.sidebar-btn:hover{color:var(--color-text-inverse);background:#ffffff1f}.sidebar-btn:hover .sidebar-btn-icon{transform:scale(1.08)}.sidebar-btn:active{transform:scale(.95)}.sidebar-btn:focus-visible{color:var(--color-text-inverse);background:#ffffff14;box-shadow:inset 0 0 0 2px #ffffff80}.sidebar-btn--active{color:var(--color-text-inverse);background:#fff3}.sidebar-btn--active:before{content:"";background:var(--color-text-inverse);width:3px;height:20px;transition:height var(--transition-normal);border-radius:0 3px 3px 0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.sidebar-btn--active:hover{background:#ffffff40}.sidebar-footer{padding:var(--space-2) 0 var(--space-4);align-items:center;gap:var(--space-1);border-top:1px solid #ffffff1a;flex-direction:column;display:flex}.sidebar-dropdown-panel{background:var(--color-bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:var(--space-1) 0;border:1px solid var(--color-border-light);min-width:220px;max-height:calc(100vh - 40px);overflow-y:auto}.sidebar-dropdown-header{padding:var(--space-2) var(--space-3) var(--space-1);font-size:var(--text-2xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary)}.sidebar-dropdown-divider{background:var(--color-border-light);height:1px;margin:var(--space-1) 0}.app-header{height:var(--header-height);background:var(--color-bg-header);padding:0 var(--space-2) 0 var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-2);border-left:1px solid #ffffff14;flex-shrink:0;min-width:0;display:flex}.header-search{flex:1;min-width:0;max-width:300px;position:relative}.header-search .ant-input-affix-wrapper{height:32px;font-size:var(--text-sm);border-radius:var(--radius-full);transition:background var(--transition-normal), border-color var(--transition-normal);color:var(--color-text-inverse)!important;background:#ffffff1f!important;border:1px solid #ffffff14!important}.header-search .ant-input-affix-wrapper:hover{background:#ffffff29!important;border-color:#ffffff26!important}.header-search .ant-input-affix-wrapper:focus-within,.header-search .ant-input-affix-wrapper-focused{background:#fff3!important;border-color:#ffffff40!important;box-shadow:0 0 0 2px #ffffff1a!important}.header-search .ant-input{color:var(--color-text-inverse)!important}.header-search .ant-input::placeholder{color:#fff6!important}.header-search-trigger{align-items:center;gap:var(--space-1-5);border-radius:var(--radius-full);color:#ffffffb3;width:100%;height:32px;font-size:var(--text-sm);cursor:pointer;text-align:left;transition:background var(--transition-normal), border-color var(--transition-normal);background:#ffffff1f;border:1px solid #ffffff14;padding:0 8px 0 12px;display:flex}.header-search-trigger:hover{background:#ffffff29;border-color:#ffffff26}.header-search-trigger:focus-visible{background:#fff3;border-color:#ffffff40;outline:none;box-shadow:0 0 0 2px #ffffff1a}.header-search-trigger-text{white-space:nowrap;text-overflow:ellipsis;color:#ffffff8c;flex:1;overflow:hidden}.header-search-trigger-kbd{color:#ffffffb3;background:#ffffff1a;border:1px solid #ffffff1f;border-radius:4px;flex-shrink:0;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px}.header-company-switcher{align-items:center;gap:var(--space-1-5);display:flex}.header-right{align-items:center;gap:var(--space-2);display:flex}.header-user-info{margin-right:var(--space-1);flex-direction:column;align-items:flex-end;display:flex}.header-user-name{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-inverse);line-height:1}.header-user-email{font-size:var(--text-2xs);color:#ffffff80;margin-top:3px;line-height:1}.header-icon-btn{border-radius:var(--radius-full);cursor:pointer;width:32px;height:32px;transition:background var(--transition-normal), transform var(--transition-fast);color:var(--color-text-inverse);border:1px solid #ffffff1a;outline:none;justify-content:center;align-items:center;padding:0;font-size:14px;display:flex}.header-icon-btn--avatar{background:#ffffff2e}.header-icon-btn--avatar:hover{background:#ffffff40}.header-icon-btn--logout{color:#ffffffb3;background:#ffffff14}.header-icon-btn--logout:hover{color:var(--color-text-inverse);background:#ff4d4f4d}.header-icon-btn:active{transform:scale(.92)}.header-icon-btn:focus-visible{background:#fff3;box-shadow:0 0 0 2px #fff6}.header-mobile-toggle{padding:var(--space-2);color:var(--color-text-inverse);cursor:pointer;border-radius:var(--radius-lg);transition:background var(--transition-normal);background:0 0;border:none;font-size:18px;display:none}.header-mobile-toggle:hover{background:#ffffff1f}.header-mobile-toggle:focus-visible{box-shadow:0 0 0 2px #fff6}@media (width<=768px){.header-mobile-toggle{display:flex}.header-user-info{display:none}}.palette-overlay{z-index:1100;background:#00000073;justify-content:center;align-items:flex-start;padding-top:12vh;animation:.12s ease-out palette-fade-in;display:flex;position:fixed;inset:0}.palette-modal{background:var(--color-bg-elevated,#fff);border-radius:var(--radius-lg,10px);flex-direction:column;width:min(640px,92vw);max-height:70vh;animation:.14s ease-out palette-pop-in;display:flex;overflow:hidden;box-shadow:0 20px 48px #00000040}.palette-input-row{border-bottom:1px solid var(--color-border,#eef0f3);align-items:center;gap:10px;padding:14px 16px;display:flex}.palette-input-row .anticon{color:var(--color-text-tertiary,#8c93a0);font-size:16px}.palette-input{color:var(--color-text-primary,#1f2330);background:0 0;border:0;outline:0;flex:1;font-size:15px}.palette-esc{color:var(--color-text-tertiary,#8c93a0);border:1px solid var(--color-border,#eef0f3);border-radius:4px;padding:2px 6px;font-family:inherit;font-size:11px}.palette-results{flex:1;padding:6px 0 8px;overflow-y:auto}.palette-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary,#8c93a0);padding:10px 16px 4px;font-size:10.5px;font-weight:600}.palette-item{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-text-primary,#1f2330);border-left:2px solid #0000;align-items:center;gap:10px;padding:8px 16px;font-size:14px;display:flex}.palette-item--active{background:var(--color-bg-hover,#f3f5f9);border-left-color:var(--color-primary,#2d6cdf)}.palette-item .anticon{color:var(--color-text-secondary,#5b6273);flex-shrink:0;font-size:14px}.palette-item-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.palette-item-hint{color:var(--color-text-tertiary,#8c93a0);margin-left:6px;font-size:11.5px}.palette-item-shortcut{color:var(--color-text-tertiary,#8c93a0);border:1px solid var(--color-border,#eef0f3);border-radius:4px;flex-shrink:0;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.palette-empty{text-align:center;color:var(--color-text-tertiary,#8c93a0);padding:28px 16px;font-size:13px}.palette-footer{border-top:1px solid var(--color-border,#eef0f3);color:var(--color-text-tertiary,#8c93a0);gap:14px;padding:8px 16px;font-size:11px;display:flex}.palette-footer kbd{background:var(--color-bg-subtle,#f3f5f9);border:1px solid var(--color-border,#eef0f3);border-radius:3px;margin-right:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px}@keyframes palette-fade-in{0%{opacity:0}to{opacity:1}}@keyframes palette-pop-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.tally-screen{height:100%;font-family:var(--font-ui);color:#1a1a1a;font-size:var(--text-base);border-radius:var(--radius-lg);background:#d9e0e8;flex-direction:column;display:flex;overflow:hidden}.tally-body{flex:1;min-height:0;display:flex}.tally-sheet{background:#fff;border:1px solid #b7c0cc;flex-direction:column;flex:1;min-width:0;min-height:0;margin:2px;display:flex;position:relative;overflow:hidden}.tally-head{flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:8px 10px 4px;display:flex}.tally-row.tally-row--align-top.custom{grid-template-columns:80px 12px 1fr}.tally-breadcrumb{background:#fff;border:1px solid #b4c8dc99;border-radius:6px;align-items:center;gap:0;padding:8px;display:inline-flex}.tally-bc-wrap{align-items:center;gap:0;display:inline-flex}.tally-bc-sep{color:#8a9ab0;-webkit-user-select:none;user-select:none;padding:0 6px;font-size:14px;line-height:1}.tally-bc-item{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:#3a4f6e;white-space:nowrap;align-items:center;gap:5px;line-height:1;display:inline-flex}.tally-bc-item--current{color:#1f3c70;font-weight:var(--weight-bold)}.tally-bc-icon{opacity:.75;align-items:center;font-size:13px;display:inline-flex}.tally-title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:#5a3e9e;letter-spacing:.2px;margin-top:2px}.tally-hints{align-items:center;gap:14px;display:flex}.tally-hint{font-size:var(--text-xs);color:#555;align-items:center;gap:5px;display:inline-flex}.tally-hint kbd{font-family:var(--font-data);font-size:var(--text-2xs);border-radius:var(--radius-sm);color:#333;background:#eef1f5;border:1px solid #c4ccd6;border-bottom-width:2px;padding:1px 5px}.tally-form{flex:1;min-height:0;padding:5px 10px 15px;scroll-padding-top:96px;overflow:auto}.tally-nameblock{z-index:5;background:#fff;border-bottom:1px solid #c9d2dc;margin-bottom:0;padding-top:6px;padding-bottom:10px;position:sticky;top:-6px}.tally-nameblock .tally-row{max-width:560px}.tally-cols{grid-template-columns:minmax(360px,1fr) minmax(380px,1.1fr);align-items:start;gap:8px 10px;display:grid}.tally-section-title{font-weight:var(--weight-semibold);color:#1c1c1c;text-underline-offset:3px;margin:14px 0 6px;text-decoration:underline}.tally-section-title:first-child{margin-top:0}.tally-section-subtitle{font-weight:var(--weight-semibold);color:#3a3a3a;margin:14px 0 4px}.tally-section-subtitle--toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;display:flex}.tally-section-subtitle--toggle:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #c9b458}.tally-subtitle-chevron{color:#6a6a6a;width:10px;font-size:.7em;display:inline-block}.tally-tabs{border-bottom:1px solid #c9d2dc;gap:4px;margin:8px 0 2px;display:flex}.tally-tab{border-radius:var(--radius-sm) var(--radius-sm) 0 0;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:#555;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:none;align-items:center;gap:7px;margin-bottom:-1px;padding:6px 14px;display:inline-flex}.tally-tab:hover{color:#5a3e9e}.tally-tab--active{color:#5a3e9e;background:#fff;border-color:#c9d2dc #c9d2dc #fff}.tally-tab-key{font-family:var(--font-data);font-size:var(--text-2xs);color:#8a8a8a}.tally-tab--active .tally-tab-key{color:#7c63c4}.tally-tab-dot{background:#cf1322;border-radius:50%;width:7px;height:7px}.tally-sublabel{font-weight:var(--weight-semibold);color:#2a2a2a;margin:6px 0 2px}.tally-sublabel--toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:5px;display:flex}.tally-sublabel--toggle:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #c9b458}.tally-row{grid-template-columns:220px 12px 1fr;align-items:baseline;column-gap:2px;min-height:22px;display:grid}.tally-row.tally-row--indent .tally-row-label{padding-left:16px}.tally-row.tally-row--indent2 .tally-row-label{padding-left:32px}.tally-row--align-top{align-items:flex-start}.tally-row-label{color:#3a3a3a;overflow-wrap:anywhere;padding-right:6px}.tally-row-label .tally-sub{color:#6a6a6a;font-style:italic}.tally-row-colon{color:#3a3a3a}.tally-row-value{font-weight:var(--weight-semibold);color:#111;min-width:0}.tally-input{width:100%;font:inherit;font-weight:var(--weight-semibold);color:#111;background:0 0;border:1px solid #0000;border-radius:2px;outline:none;padding:1px 4px}.tally-input::placeholder{color:#b6bdc6;font-weight:var(--weight-regular)}.tally-input:disabled{color:var(--color-text-tertiary);cursor:not-allowed;background:0 0}.tally-input:hover{background:#f3f6fa}.tally-input:focus,.tally-input.tally-input--active{background:#0d47a10d;border-color:#0d47a1}.tally-textarea{resize:vertical;min-height:56px;font-family:inherit;line-height:1.4}.tally-history-btn{color:#1b3a6b;font:inherit;font-weight:var(--weight-semibold);cursor:pointer;background:#f3f6fa;border:1px solid #c9d2dc;border-radius:3px;align-items:center;gap:6px;margin-top:10px;padding:2px 10px;display:inline-flex}.tally-history-btn:hover{background:#e7eef7;border-color:#9fb3cc}.tally-address{flex-direction:column;gap:2px;width:100%;display:flex}.tally-adorn{align-items:baseline;gap:4px;display:inline-flex}.tally-suffix{color:var(--color-text-secondary);font-weight:var(--weight-regular);font-size:var(--text-sm);white-space:nowrap}.tally-adorn--tight{border:1px solid #0000;border-radius:2px;gap:1px;padding:1px 4px}.tally-adorn--tight:hover{background:#f3f6fa}.tally-adorn--tight:focus-within{background:#fff9c4;border-color:#c9b458}.tally-input--tight{text-align:right;width:auto;font-family:var(--font-data);font-variant-numeric:tabular-nums;padding:0}.tally-adorn--tight .tally-input--tight:hover,.tally-adorn--tight .tally-input--tight:focus,.tally-adorn--tight .tally-input--tight.tally-input--active{background:0 0;border-color:#0000}.tally-adorn--tight .tally-suffix{color:#111;font-weight:var(--weight-semibold);font-size:inherit}.tally-openingbal{border-top:1px solid #c9d2dc;margin-top:16px;padding-top:10px}.tally-openingbal .tally-row{grid-template-columns:260px 12px 1fr}.tally-pairs{flex-wrap:wrap;gap:20px;display:inline-flex}.tally-pair{align-items:baseline;gap:6px;display:inline-flex}.tally-pair-tag{color:var(--color-text-secondary);font-weight:var(--weight-regular);white-space:nowrap}.tally-pair .tally-input{width:110px}.tally-balance{align-items:baseline;gap:8px;display:inline-flex}.tally-balance .tally-input{text-align:right;width:140px;font-family:var(--font-data)}.tally-select{outline:none;display:inline-block;position:relative}.tally-pick{font-weight:var(--weight-semibold);color:#111;cursor:pointer;border:1px solid #0000;border-radius:2px;min-width:60px;padding:1px 4px;display:inline-block}.tally-pick:hover{background:#f3f6fa}.tally-pick--disabled{color:var(--color-text-tertiary);cursor:not-allowed}.tally-pick--disabled:hover{background:0 0}.tally-select:focus .tally-pick,.tally-pick--active{background:#0d47a10d;border-color:#0d47a138}.tally-pick--placeholder{color:#b6bdc6;font-weight:var(--weight-regular)}.tally-select--boxed{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;min-height:32px;transition:border-color var(--transition-fast);background:#fff;align-items:center;padding:4px 11px;display:flex}.tally-select--boxed:hover{border-color:var(--color-primary-light)}.tally-select--boxed:focus,.tally-select--boxed[aria-expanded=true]{border-color:var(--color-primary);box-shadow:none}.tally-select--boxed .tally-pick,.tally-select--boxed:focus .tally-pick{min-width:0;font-weight:var(--weight-regular);color:var(--color-text-primary);background:0 0;border:none;padding:0}.tally-select--boxed .tally-popup{width:100%;min-width:0}.tally-popup{box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);background:#fff;border:1px solid #9aa6b4;flex-direction:column;display:flex;position:absolute;top:calc(100% + 2px);left:0;overflow:hidden}.tally-popup--inline{min-width:160px;max-height:320px}.tally-popup--panel{width:300px;max-height:90vh}.tally-popup--dock{width:300px;height:79vh;z-index:calc(var(--z-modal) + 10);left:auto}.tally-popup-head{color:#1c2b3a;font-weight:var(--weight-semibold);font-size:var(--text-sm);background:#c5cedb;padding:4px 10px}.tally-popup-list{flex:1;min-height:0;padding:2px 0;overflow:auto}.tally-popup-item{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;padding:2px 12px;overflow:hidden}.tally-popup-item--active{background:#c8d4e3}.tally-popup-item--current{font-weight:var(--weight-semibold)}.tally-popup-item--empty{color:var(--color-text-tertiary);font-style:italic}.tally-popup-empty{color:var(--color-text-tertiary);padding:6px 12px;font-style:italic}.tally-popup-create{color:#0d47a1;cursor:pointer;font-weight:var(--weight-semibold);border-bottom:1px solid #dde3ea;justify-content:space-between;align-items:center;gap:8px;padding:3px 12px;display:flex}.tally-popup-create .tally-create-hint{font-size:var(--text-2xs);color:var(--color-text-tertiary);font-weight:var(--weight-regular)}.tally-popup-create--active{background:#c8d4e3}.tv-topbar{flex-shrink:0;justify-content:space-between;align-items:center;padding:5px 10px 4px;display:flex}.tv-rail-toggle{color:#1b3a6b;font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #9fb3cc;border-radius:4px;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.tv-rail-toggle:hover{background:#d4e3f5;border-color:#7a9ec4}.tally-frail{background:#d9e0e8;flex-direction:column;flex-shrink:0;gap:2px;width:138px;padding:2px;display:flex;overflow:auto}.tally-fbtn{font-size:var(--text-2xs);color:#324;text-align:left;cursor:default;background:#eef1f5;border:1px solid #cdd5df;border-radius:2px;align-items:center;min-height:26px;padding:4px 6px;line-height:1.25;display:flex}.tally-fbtn .tally-fkey{color:#0d47a1;font-weight:var(--weight-semibold);margin-right:4px}.tally-fbtn--muted{color:#9aa3ad}.tally-fbtn--muted .tally-fkey{color:#6f86a8}.tally-fbtn--spacer{background:0 0;border:none;min-height:6px}.tally-actionbar{background:#d9e0e8;grid-template-columns:repeat(8,1fr);gap:2px;padding:2px;display:grid}.tally-action{font-size:var(--text-xs);text-align:center;color:#333;cursor:pointer;background:#eef1f5;border:1px solid #cdd5df;border-radius:2px;min-height:26px;padding:4px 8px}.tally-action:disabled,.tally-action.tally-action--empty{cursor:default;background:#e3e8ee;border-color:#d7dde4}.tally-action .tally-akey{color:#b3261e;font-weight:var(--weight-bold);margin-right:2px}.tally-action--accept{background:#dff0d8;border-color:#b6d9a8}.tally-action--accept .tally-akey{color:#2e7d32}.tally-action:focus-visible{outline-offset:-2px;z-index:1;background:#c8d9f0;border-color:#1f3c70;outline:2px solid #1f3c70;position:relative}.tally-action--accept:focus-visible{background:#b8ddb0;border-color:#2e7d32;outline-color:#2e7d32}.tally-overlay{z-index:var(--z-modal);background-color:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.tally-overlay-sheet{width:90%;height:90%;box-shadow:var(--shadow-xl);font-family:var(--font-ui);font-size:var(--text-base);background:#d9e0e8;border:1px solid #8b97a6;flex-direction:column;max-height:88vh;display:flex}.tally-overlay-sheet .tally-sheet{flex:1;min-height:0}.tally-modal-head{background:var(--color-primary,#1f3c70);color:#fff;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.tally-modal-head-title{font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:.01em}.tally-modal-head-close{color:#fff;cursor:pointer;opacity:.8;background:0 0;border:none;border-radius:2px;padding:2px 4px;font-size:14px;line-height:1}.tally-modal-head-close:hover{opacity:1;background:#ffffff26}.tally-grid{border-collapse:collapse;width:100%;margin-top:10px}.tally-grid th{text-align:left;font-weight:var(--weight-semibold);font-size:var(--text-sm);color:#1c2b3a;white-space:nowrap;text-transform:uppercase;background:#f0f2f5;padding:8px 10px}.tally-grid td{vertical-align:middle;font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--color-text-primary);padding:4px 6px}.tally-grid tbody tr:nth-child(2n){background:#f8f9fb}.tally-grid tbody tr:hover{background:var(--color-primary-bg)}.tally-grid .tally-input{background:#fff;border-color:#c9d2dc;border-radius:3px;padding:2px 6px}.tally-grid .tally-input:hover{background:#f3f6fa}.tally-grid .tally-input:focus{background:#0d47a10d;border-color:#0d47a1}.tally-grid .tally-select{width:100%}.tally-grid-add{color:#1b6ec2;font:inherit;font-weight:var(--weight-semibold);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:2px 0}.tally-grid-add:hover{text-decoration:underline}.tally-grid-add:focus-visible{outline-offset:2px;background:#0d47a10d;border-radius:3px;outline:2px solid #0d47a1}.tally-grid-del{color:#c0392b;font:inherit;font-weight:var(--weight-semibold);cursor:pointer;white-space:nowrap;background:0 0;border:none}.tally-grid-del:disabled{color:#c4c4c4;cursor:not-allowed}.tally-grid-del:not(:disabled):hover{text-decoration:underline}.tally-checkrow{cursor:pointer;font-weight:var(--weight-semibold);color:#1c1c1c;align-items:center;gap:10px;padding:5px 0;display:flex}.tally-checkrow input{cursor:pointer;accent-color:#1b3a6b;width:16px;height:16px}.tally-checkrow input:focus-visible{outline-offset:2px;outline:2px solid #c9b458}.tally-form-notice{color:#7a5b00;font-weight:var(--weight-semibold);background:#fdf6e3;border:1px solid #e6d9a8;border-radius:3px;margin:12px 0 2px;padding:6px 10px}.tally-checkrow:has(input:focus-visible){background:#fff9c4;border-radius:3px}.app-layout{height:100vh;font-family:var(--font-ui);background:var(--color-bg-app);min-width:0;display:flex;overflow:hidden}.app-layout-sidebar{transition:transform var(--transition-slow)}.app-layout-sidebar--mobile-open{inset-block:0;z-index:50;position:fixed;left:0;transform:translate(0)}.app-layout-overlay{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073;position:fixed;inset:0}@media (width>=769px){.app-layout-overlay{display:none}}@media (width<=768px){.app-layout-sidebar{inset-block:0;z-index:50;position:fixed;left:0;transform:translate(-100%)}.app-layout-sidebar--mobile-open{transform:translate(0)}}.app-layout-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.app-layout-header-wrap{flex-shrink:0}.app-layout-content{background:var(--color-bg-app);min-width:0;min-height:0;padding:var(--space-3);flex-direction:column;flex:1;display:flex;overflow:hidden}.app-layout-page{background:var(--color-bg-card);border-radius:var(--radius-lg);min-width:0;min-height:0;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);flex-direction:column;flex:1;display:flex;overflow:auto}.vm-dual{align-items:baseline;gap:18px;display:inline-flex}.vm-dual-opt{font:inherit;color:#555;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;padding:1px 4px}.vm-dual-opt:hover{color:#1c1c1c}.vm-dual-opt:focus-visible{background:#fff9c4;border-color:#c9b458;outline:none}.vm-dual-opt--active{color:#b3261e;font-weight:var(--weight-semibold);text-underline-offset:3px;-webkit-text-decoration:underline #e07b00;text-decoration:underline #e07b00;text-decoration-thickness:2px}.vm-subsection-bordered{border-top:1px solid #c9d2dc;border-bottom:1px solid #c9d2dc;margin:4px 0;padding:2px 0}.vm-subsection-bordered--top{border-top:1px solid #c9d2dc;margin-top:4px;padding-top:2px}.vm-date{font:inherit;font-weight:var(--weight-semibold);color:#111;background:#fff;border:1px solid #c9d2dc;border-radius:3px;padding:2px 6px}.vm-date:focus{background:#fff9c4;border-color:#c9b458;outline:none}.vm-numbering-top .tally-row{max-width:420px}.pt-top{padding:8px 0 10px}.vm-general-col{position:relative}.vm-general-col .tally-row{grid-template-columns:290px 12px 1fr}.vm-printing-col{position:relative}.vm-col-count-badge{z-index:10;pointer-events:none;font-size:var(--text-xs);font-weight:var(--weight-bold);color:#1b3a6b;letter-spacing:.03em;background:#e7eef7;border:1px solid #c9d2dc;padding:2px 8px;line-height:1.6;position:absolute;bottom:8px;right:8px}.vm-overlay-tagline{color:#6a6a6a;font-style:italic;font-size:var(--text-sm);margin-bottom:12px}.vm-restrict-cols{grid-template-columns:1fr;gap:0 16px;display:grid}.vm-restrict-cols--2{grid-template-columns:1fr 1fr}.vm-chip-group{border:1px solid #c9d2dc;margin-bottom:8px}.vm-chip-group .tally-section-title{margin-top:0;margin-bottom:0;padding:5px}.vm-chip-list{flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;display:flex}.vm-chip{background:#eef1f5;border:1px solid #c9d2dc;align-items:center;gap:6px;padding:1px 6px;display:inline-flex}.vm-alloc-col--nature{width:220px}.vm-alloc-col--override{width:160px}.vm-alloc-col--calc{width:200px}.vm-alloc-col--basis{width:110px}.vm-alloc-col--rounding{width:160px}.vm-alloc-col--limit{width:100px}.vm-alloc-col--remove{width:110px}.vm-alloc-col--del{width:40px}.vm-table-group-head{color:#1c2b3a;font-weight:var(--weight-bold);font-size:var(--text-sm);text-align:center;text-underline-offset:3px;background:#dce3ec;border:1px solid #c9d2dc;padding:6px 10px;text-decoration:underline}.vm-table-group-sep{border-left:2px solid #b0bac6!important}.vm-alloc-dash{color:#9aa3ad}.vm-period-select{font:inherit;font-size:var(--text-sm);color:#111;cursor:pointer;background:#fff;border:1px solid #c9d2dc;border-radius:3px;width:100%;padding:2px 4px}.vm-period-select:focus{background:#fff9c4;border-color:#c9b458;outline:none}.vm-alloc-del-cell{text-align:center}.vm-alloc-new-hint{color:#9aa3ad;font-size:var(--text-sm);padding-left:10px}.tally-cols.tally-cols--3{grid-template-columns:minmax(320px,1fr) minmax(200px,.4fr) minmax(320px,1fr);align-items:stretch;height:calc(100% - 80px)}.vm-class-col{border-left:1px solid #c9d2dc;border-right:1px solid #c9d2dc;padding:8px 10px 10px}.vm-class-row{align-items:center;gap:10px;display:flex}.vm-class-edit{color:#1b6ec2;font:inherit;font-weight:var(--weight-semibold);cursor:pointer;background:0 0;border:none;padding:0}.vm-class-edit:hover{text-decoration:underline}.vm-alloc-grid .tally-select{min-width:160px}.vm-alloc-grid .tally-input{min-width:90px}.vm-alloc-grid{border-collapse:collapse;border:1px solid #d0d5dd;width:100%}.vm-alloc-grid th{color:#1c2b3a;font-weight:var(--weight-semibold);font-size:var(--text-sm);text-align:left;white-space:nowrap;background:#f0f2f5;border:1px solid #d0d5dd;padding:8px 10px}.vm-alloc-grid td{vertical-align:middle;border:1px solid #e4e7ec;padding:4px 6px}.vm-alloc-grid tbody tr:nth-child(2n){background:#f8f9fb}.vm-alloc-grid tbody tr:hover{background:var(--color-primary-bg)}.tally-overlay-sheet.vm-overlay-sheet{width:min(1020px,94vw);height:auto;max-height:85vh}.vm-overlay-head{background:var(--color-primary);color:#fff;border-radius:3px 3px 0 0;flex-shrink:0;justify-content:space-between;align-items:center;padding:5px 7px;display:flex}.vm-overlay-head-title{font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:.01em}.vm-overlay-close{color:#fff;cursor:pointer;opacity:.85;background:0 0;border:none;border-radius:3px;padding:2px 6px;font-size:1.1em;line-height:1}.vm-overlay-close:hover{opacity:1;background:#ffffff26}.vm-headright{align-items:center;gap:10px;display:flex}.vm-rail-toggle{color:#1b3a6b;font:inherit;font-size:var(--text-lg);cursor:pointer;background:#f3f6fa;border:1px solid #c9d2dc;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.vm-rail-toggle:hover{background:#e7eef7;border-color:#9fb3cc}.tally-frail.vm-frail{opacity:0;width:0;padding:0;transition:width .28s cubic-bezier(.4,0,.2,1),padding .28s cubic-bezier(.4,0,.2,1),opacity .2s;overflow:hidden}.tally-frail.vm-frail.vm-frail--open{opacity:1;width:138px;padding:2px}.vm-frail-inner{flex-direction:column;flex-shrink:0;gap:2px;width:134px;display:flex}.vm-frail-head{font-weight:var(--weight-semibold);color:#1c2b3a;justify-content:space-between;align-items:center;padding:2px 4px 4px;display:flex}.vm-frail-close{cursor:pointer;color:#b3261e;font-weight:var(--weight-bold);background:0 0;border:none;line-height:1}.tv-metabar{align-items:center;gap:12px;margin-top:0;display:flex}.tv-typechip{color:#fff;font:inherit;font-weight:var(--weight-semibold);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;background:#1f3c70;border:none;border-radius:2px;align-items:center;gap:6px;padding:4px 10px 4px 12px;display:inline-flex}.tv-typechip:hover{background:#274a86}.tv-typechip:focus-visible{outline-offset:2px;outline:2px solid #c9b458}.tv-no{font-weight:var(--weight-bold);color:#1c1c1c;align-items:center;gap:6px;display:inline-flex}.tv-no .tally-input{width:90px}.tv-headright{align-items:flex-end;display:flex}.tv-dateblock{align-items:baseline;gap:6px;line-height:1.2;display:inline-flex}.tv-date-label{color:#3a3a3a}.tv-dateblock .tally-input{font-weight:var(--weight-bold);text-align:right}.tv-weekday{font-weight:var(--weight-semibold);color:#555;font-size:var(--text-sm)}.tv-invline{white-space:nowrap;align-items:baseline;gap:40px;display:inline-flex}.tv-invline>.tally-input{min-width:200px}.tv-invdate{white-space:nowrap;align-items:baseline;gap:8px;display:inline-flex}.tv-invdate-label{color:#3a3a3a}.tally-frail.tv-frail{opacity:0;width:0;padding:0;transition:width .28s cubic-bezier(.4,0,.2,1),padding .28s cubic-bezier(.4,0,.2,1),opacity .2s;overflow:hidden}.tally-frail.tv-frail.tv-frail--open{opacity:1;width:138px;padding:2px}.tv-frail-inner{flex-direction:column;flex-shrink:0;gap:2px;width:134px;display:flex}.tv-frail-head{font-weight:var(--weight-semibold);color:#1c2b3a;justify-content:space-between;align-items:center;padding:2px 4px 4px;display:flex}.tv-frail-close{cursor:pointer;color:#b3261e;font-weight:var(--weight-bold);background:0 0;border:none;line-height:1}.tv-narr-attach{grid-template-columns:1fr 1fr;align-items:start;gap:28px;display:grid}.tv-attach-label{margin-bottom:6px;display:block}.tv-attach-note{margin-bottom:8px}.tv-balance-val{color:#8a6a78;font-style:italic;font-weight:var(--weight-regular)}.tv-grid th.tv-num,.tv-grid td.tv-num{text-align:right}.tv-grid th.tv-per,.tv-grid td.tv-per{text-align:center;color:#555}.tv-grid .tv-amount{font-weight:var(--weight-semibold);font-family:var(--font-data);font-variant-numeric:tabular-nums}.tv-grid-empty{color:var(--color-text-tertiary);padding:6px 8px;font-style:italic}.tv-grandtotal{color:#0d47a1;font-family:var(--font-data);font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold)}.tv-endlist{color:#1b3a6b;font-weight:var(--weight-semibold);margin-top:6px}.tv-endlist .tv-diamond{color:#1f3c70}.tv-sheet-footer{background:#fff;flex-shrink:0;padding:0 15px 12px}.tv-total-bar{grid-template-columns:1fr 170px 474px 0;align-items:center;padding-top:6px;display:grid}.tv-total-range{border-top:1px solid #1c2b3a;border-bottom:3px double #1c2b3a;grid-template-columns:120px 120px 60px 140px;padding:0;display:grid}.tv-narration.tv-narr-attach .tv-attach{position:relative}.tv-narration.tv-narr-attach .tv-attach:before{content:"";background-color:#ccc;width:1px;height:100%;position:absolute;left:-14px}.tv-total-qty{font-family:var(--font-data);font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold);color:#1c2b3a;text-align:right;padding-right:6px}.tv-sheet-footer .tv-grandtotal{text-align:right;padding-right:6px}.tv-narration{border-top:1px solid #ccc;margin-top:0}.tv-actionbar{grid-template-columns:repeat(4,1fr)!important}.tv-alloc-edit{width:100%;font:inherit;color:#1b3a6b;text-align:left;cursor:pointer;text-underline-offset:2px;background:0 0;border:1px solid #0000;border-radius:2px;padding:1px 4px;text-decoration:underline}.tv-alloc-edit:hover{background:#eef3fa;border-color:#c9d2dc}.tally-overlay-sheet.tv-summary-sheet{width:min(520px,90vw);height:auto;max-height:70vh}.tv-summary-sheet .tally-form{padding:14px 16px}.tv-summary-sheet .tally-textarea{resize:vertical;width:100%;min-height:90px}.tally-overlay-sheet.tv-details-sheet{width:min(860px,94vw);height:auto;max-height:85vh}.tv-details-sheet .tally-form{padding:12px 16px 16px}.tv-details-title{text-align:center;font-weight:var(--weight-bold);font-size:var(--text-sm);color:#1c2b3a;background:#f5f7fa;border-top:1px solid #c9d2dc;border-bottom:1px solid #c9d2dc;margin-bottom:6px;padding:5px 0}.tv-details-title:first-child{border-top:none;margin-top:0}.tv-details-divider{border:none;border-top:1px solid #c9d2dc;margin:8px 0 0}.tv-details-cols{grid-template-columns:270px 1fr;align-items:start;gap:0 24px;padding:2px 4px 10px;display:grid}.tv-details-col{flex-direction:column;gap:5px;padding-top:2px;display:flex}.tv-details-field{font-size:var(--text-sm);align-items:baseline;gap:4px;display:flex}.tv-details-label{color:#3a3a3a;white-space:nowrap;flex-shrink:0}.tv-details-col:last-child .tv-details-label{min-width:175px}.tv-details-label--date{margin-left:10px;min-width:auto!important}.tv-details-colon{color:#3a3a3a;flex-shrink:0}.tv-details-field .tally-input{flex:1;min-width:0}.tally-overlay-sheet.tv-mode-sheet{width:min(340px,90vw);height:auto;max-height:60vh;padding:0}.tv-mode-current{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:#1c2b3a;background:#fffde7;border:1px solid #c9b458;border-radius:2px;margin:6px 8px;padding:4px 8px}.tv-mode-list-header{color:#fff;font-size:var(--text-sm);font-weight:var(--weight-semibold);background:#1565c0;padding:4px 10px}.tv-mode-list{padding:4px 0 8px}.tv-mode-item{font-size:var(--text-sm);color:#1c2b3a;cursor:pointer;padding:5px 14px}.tv-mode-item:hover{background:#fff9c4}.tv-mode-item--active{font-weight:var(--weight-semibold);background:#fff9c4}.svm-query{font-size:var(--text-sm);background:#fff9c4;border-bottom:1px solid #c9b458;align-items:center;gap:8px;padding:5px 14px;display:flex}.svm-query-label{color:#7a6800;font-weight:var(--weight-semibold)}.svm-query-text{color:#1c2b3a;font-weight:var(--weight-bold);letter-spacing:.02em}.svm-list{max-height:380px;padding:6px 0;overflow-y:auto}.svm-item{cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:#1c2b3a;border-left:3px solid #0000;outline:none;align-items:center;gap:8px;padding:4px 10px;transition:background .12s;display:flex}.svm-item:hover,.svm-item:focus{background:#eef3fa}.svm-item--active{color:#1f3c70;background:#e8eef8;border-left-color:#1f3c70}.svm-item-dot{background:#c4ccd6;border-radius:50%;flex-shrink:0;width:7px;height:7px}.svm-item--active .svm-item-dot{background:#1f3c70}.svm-item-name{flex:1}.svm-item-check{color:#1f3c70;font-weight:var(--weight-bold);font-size:13px}.svm-empty{color:var(--color-text-tertiary);font-style:italic;font-size:var(--text-sm);padding:16px}:root{--font-ui:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-data:"JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--text-2xs:10px;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:18px;--text-2xl:22px;--text-3xl:28px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.5;--leading-relaxed:1.65;--color-primary:#0d47a1;--color-primary-hover:#1565c0;--color-primary-active:#0a3a84;--color-primary-light:#42a5f5;--color-primary-bg:#e3f2fd;--color-primary-bg-subtle:#f5f9ff;--color-success:#52c41a;--color-success-bg:#f6ffed;--color-warning:#faad14;--color-warning-bg:#fffbe6;--color-error:#ff4d4f;--color-error-bg:#fff2f0;--color-info:#1565c0;--color-info-bg:#e3f2fd;--color-text-primary:#263238;--color-text-secondary:#546e7a;--color-text-tertiary:#90a4ae;--color-text-disabled:#b0bec5;--color-text-inverse:#fff;--color-bg-app:#f0f2f5;--color-bg-card:#fff;--color-bg-sidebar:#0d47a1;--color-bg-header:#0d47a1;--color-bg-hover:#0d47a10a;--color-bg-active:#0d47a114;--color-bg-elevated:#fff;--color-bg-muted:#fafafa;--color-border:#e0e0e0;--color-border-light:#f0f0f0;--color-border-strong:#90a4ae;--color-border-focus:#0d47a1;--space-0:0px;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000000d;--radius-none:0;--radius-sm:3px;--radius-md:5px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:9999px;--transition-fast:.1s ease;--transition-normal:.18s ease;--transition-slow:.3s ease-in-out;--transition-spring:.3s cubic-bezier(.34, 1.56, .64, 1);--focus-ring:0 0 0 2px var(--color-primary-bg), 0 0 0 4px #0d47a14d;--focus-ring-error:0 0 0 2px var(--color-error-bg), 0 0 0 4px #ff4d4f4d;--focus-ring-inset:inset 0 0 0 2px #0d47a166;--sidebar-width:70px;--header-height:48px;--status-bar-height:28px;--page-padding:16px;--page-padding-x:20px;--content-max-width:1440px;--drawer-width:480px;--z-base:0;--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500}*,:before,:after{box-sizing:border-box}html{scrollbar-gutter:stable}body{font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background:var(--color-bg-app);margin:0}#root{min-height:100vh}::selection{background:var(--color-primary-bg);color:var(--color-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#0000001f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#0003}:focus{outline:none}:focus-visible{box-shadow:none;outline:none}input:focus,textarea:focus,select:focus,button:focus{box-shadow:none!important;outline:none!important}.ant-input:focus-visible,.ant-input-affix-wrapper:focus-visible,.ant-input-number:focus-visible,.ant-input-number-affix-wrapper:focus-visible,.ant-select:focus-visible,.ant-picker:focus-visible{box-shadow:none}@media (width<=768px){.sidebar-wrapper{inset-block:0!important;z-index:50!important;position:fixed!important;left:0!important;transform:translate(-100%)!important}.sidebar-wrapper.open{transform:translate(0)!important}.mobile-menu-btn{display:flex!important}.user-info{display:none!important}}@media (width>=769px){.mobile-overlay{display:none!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.font-ui{font-family:var(--font-ui)}.font-data{font-family:var(--font-data);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.tabular-nums{font-variant-numeric:tabular-nums}.text-right{text-align:right}.text-center{text-align:center}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.kbd{min-width:20px;height:18px;font-family:var(--font-data);font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);white-space:nowrap;-webkit-user-select:none;user-select:none;border-bottom-width:2px;justify-content:center;align-items:center;padding:0 5px;line-height:1;display:inline-flex}.kbd-sm{height:16px;padding:0 3px;font-size:9px}.focus-ring:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,[tabindex="0"]:focus-visible{box-shadow:var(--focus-ring);outline:none}.focus-ring-error:focus-visible{box-shadow:var(--focus-ring-error);outline:none}.skip-link{top:-100%;left:var(--space-4);z-index:var(--z-toast);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-inverse);background:var(--color-primary);border-radius:0 0 var(--radius-md) var(--radius-md);transition:top var(--transition-fast);position:absolute}.skip-link:focus{top:0}.shortcut-hints{align-items:center;gap:var(--space-4);padding:var(--space-1-5) var(--space-4);font-size:var(--text-2xs);color:var(--color-text-tertiary);background:var(--color-bg-muted);border-top:1px solid var(--color-border-light);-webkit-user-select:none;user-select:none;display:flex}.shortcut-hint{align-items:center;gap:var(--space-1);display:inline-flex}.status-bar{height:var(--status-bar-height);padding:0 var(--space-4);font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-bg-muted);border-top:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.status-bar-section{align-items:center;gap:var(--space-4);display:flex}.status-bar-item{align-items:center;gap:var(--space-1);display:inline-flex}.status-bar-dot{border-radius:var(--radius-full);background:var(--color-success);flex-shrink:0;width:6px;height:6px}.status-bar-divider{background:var(--color-border);width:1px;height:12px}.status-bar-shortcuts-btn{align-items:center;gap:var(--space-1);height:20px;padding:0 var(--space-2);font-size:var(--text-2xs);font-weight:var(--weight-medium);font-family:var(--font-ui);color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:1px solid #0000;display:inline-flex}.status-bar-shortcuts-btn:hover{background:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-border)}.status-bar-shortcuts-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.page-shell{flex-direction:column;flex:1;min-height:0;display:flex}.page-header{z-index:var(--z-sticky);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border-light);background:var(--color-bg-card);justify-content:space-between;align-items:center;gap:var(--space-4);flex-shrink:0;min-height:48px;display:flex;position:sticky;top:0}.page-header-left{gap:var(--space-0-5);flex-direction:column;min-width:0;display:flex}.page-header-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);line-height:var(--leading-tight);margin:0}.page-header-breadcrumbs{align-items:center;gap:var(--space-1);font-size:var(--text-2xs);color:var(--color-text-tertiary);display:flex}.page-header-breadcrumb-separator{color:var(--color-text-tertiary);font-size:9px}.page-header-right{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.page-header-subtitle{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:var(--leading-snug)}.page-header-shortcuts{align-items:center;gap:var(--space-3);display:inline-flex}.page-header-divider{background:var(--color-border);width:1px;height:22px;display:inline-block}.page-header-actions{align-items:center;gap:var(--space-2);display:inline-flex}.page-body{min-height:0;padding:var(--space-5) var(--space-5) var(--space-8);flex:1}.empty-state{padding:var(--space-16) var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{color:var(--color-text-tertiary);margin-bottom:var(--space-4);opacity:.5;font-size:48px}.empty-state-title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text-secondary);margin-bottom:var(--space-1)}.empty-state-description{font-size:var(--text-sm);color:var(--color-text-tertiary);max-width:320px;line-height:var(--leading-normal)}.empty-state-action{margin-top:var(--space-5)}.stat-card{border-radius:var(--radius-lg);border:1px solid var(--color-border-light);background:var(--color-bg-card);transition:box-shadow var(--transition-normal), border-color var(--transition-normal)}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border)}.stat-card-accent{border-top:3px solid var(--color-primary)}.drawer-footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-top:1px solid var(--color-border-light);display:flex}.drawer-footer-hint{align-items:center;gap:var(--space-3);font-size:var(--text-2xs);color:var(--color-text-tertiary);margin-right:auto;display:flex}.form-section{margin-bottom:var(--space-5)}.form-section-title{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);margin-bottom:var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border-light);display:flex}.form-section-hint{font-size:var(--text-2xs);font-weight:var(--weight-regular);color:var(--color-text-tertiary);text-transform:none;letter-spacing:0}.form-section-body{display:block}.amount{font-family:var(--font-data);font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}.amount-debit{color:var(--color-text-primary)}.amount-credit{color:var(--color-success)}.amount-negative{color:var(--color-error)}.amount-label{opacity:.7;margin-left:var(--space-1);font-size:.85em}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ant-input:focus,.ant-input-focused,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused,.ant-input-number:focus,.ant-input-number-focused,.ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-focused,.ant-picker:focus,.ant-picker-focused,.ant-select-focused .ant-select-selector{border-color:var(--color-primary)!important;box-shadow:none!important}.ant-table-tbody>tr>td{font-size:var(--text-sm)!important;font-weight:var(--weight-regular)!important;color:var(--color-text-primary)!important}.ant-input-number-input{font-family:var(--font-data);font-variant-numeric:tabular-nums}.ant-form-item-label>label{font-weight:var(--weight-medium);font-size:var(--text-sm);color:var(--color-text-secondary)}.ant-form-item-required:before{color:var(--color-error)!important}.ant-form-item-explain-error{font-size:var(--text-xs)}.ant-table-thead>tr>th,.ant-table-thead>tr>td{font-weight:var(--weight-semibold)!important;font-size:var(--text-sm)!important;text-transform:uppercase!important;letter-spacing:normal!important;color:#1c2b3a!important;background:#f0f2f5!important;border:none!important}.ant-table-tbody>tr:nth-child(2n)>td{background:#00000004}.ant-table-tbody>tr:hover>td{background:var(--color-bg-hover)!important}.ant-table-tbody>tr.ant-table-row-selected>td{background:var(--color-primary-bg)!important}.ant-table td.column-amount{font-family:var(--font-data);font-variant-numeric:tabular-nums;text-align:right}.ant-pro-table-list-toolbar{padding:var(--space-2) var(--space-4)!important}.ant-pro-table-list-toolbar-title{font-weight:var(--weight-semibold)!important;font-size:var(--text-md)!important;color:var(--color-text-primary)!important}.ant-table-pagination{padding:var(--space-2) var(--space-4)!important}.ant-pro-table-column-index{font-family:var(--font-data);font-size:var(--text-xs);color:var(--color-text-tertiary)}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab{font-weight:var(--weight-medium);font-size:var(--text-sm);padding:var(--space-2) var(--space-4);transition:color var(--transition-normal), background var(--transition-normal)}.ant-tabs-card>.ant-tabs-nav .ant-tabs-tab-active{font-weight:var(--weight-semibold)}.ant-tabs-tab:focus-visible{box-shadow:none;outline:none}.ant-drawer-header{border-bottom:1px solid var(--color-border-light)!important;padding:var(--space-3) var(--space-6)!important}.ant-drawer-title{font-weight:var(--weight-semibold)!important;font-size:var(--text-md)!important;color:var(--color-text-primary)!important}.ant-drawer-body{padding:var(--space-5) var(--space-6)!important}.ant-drawer-footer{border-top:1px solid var(--color-border-light)!important;padding:var(--space-3) var(--space-6)!important}.ant-modal-confirm-body .ant-modal-confirm-title{font-weight:var(--weight-semibold)}.ant-btn-primary{transition:background var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-fast);background:var(--color-primary)!important;border-color:var(--color-primary)!important}.ant-btn-primary:not(:disabled):hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.ant-btn-primary:not(:disabled):active{transform:scale(.98);background:var(--color-primary-active)!important}.ant-btn:focus-visible{outline:none;box-shadow:none!important}.ant-btn:not(:disabled):active{transform:scale(.98)}.ant-dropdown-menu-item:hover,.ant-menu-item:hover{background:var(--color-bg-hover)!important}.ant-menu-item-selected{color:var(--color-primary)!important;background:var(--color-primary-bg)!important}.ant-menu-item:focus-visible,.ant-dropdown-menu-item:focus-visible{box-shadow:none;outline:none}.ant-drawer .ant-form-item{margin-bottom:var(--space-4)}.ant-pro-form-group-title{font-weight:var(--weight-semibold)!important;font-size:var(--text-sm)!important;color:var(--color-text-secondary)!important}.ant-popconfirm-title{font-weight:var(--weight-medium)}.ant-tooltip-inner{font-size:var(--text-xs)}.ant-tag{font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-sm)}.ant-layout-header .ant-input-affix-wrapper,[data-theme=dark] .ant-input-affix-wrapper{background:#ffffff1a;border-color:#ffffff0d}.ant-layout-header .ant-input-affix-wrapper:hover,.ant-layout-header .ant-input-affix-wrapper:focus-within{box-shadow:none!important;border-color:#fff3!important}:where(.ant-table-wrapper),:where(.ant-table-wrapper) .ant-table,:where(.ant-table-wrapper) .ant-table-container,:where(.ant-table-wrapper) .ant-table-container:before,:where(.ant-table-wrapper) .ant-table-container:after,:where(.ant-table-wrapper) .ant-table-content,:where(.ant-table-thead)>tr>th:first-child,:where(.ant-table-thead)>tr>th:last-child,:where(.ant-table-tbody)>tr>td:first-child,:where(.ant-table-tbody)>tr>td:last-child{border-radius:0!important}:where(.ant-table-wrapper) .ant-table{border:none}:where(.ant-table-wrapper) .ant-table table{border-collapse:collapse!important}:where(.ant-table-thead)>tr>th,:where(.ant-table-thead)>tr>td{text-align:left;white-space:nowrap;color:#1c2b3a!important;font-weight:var(--weight-semibold)!important;font-size:var(--text-sm)!important;letter-spacing:normal!important;text-transform:uppercase!important;background:#f0f2f5!important;border:none!important;padding:8px 10px!important}:where(.ant-table-thead)>tr>th{z-index:2;background-clip:padding-box;position:sticky;top:0}:where(.ant-table-tbody)>tr>td{vertical-align:middle;font-size:var(--text-sm)!important;font-weight:var(--weight-regular)!important;color:var(--color-text-primary)!important;border:none!important;padding:4px 6px!important}:where(.ant-table-tbody)>tr.ant-table-row:nth-child(2n)>td{background:#f8f9fb}:where(.ant-table-tbody)>tr.ant-table-row{transition:background var(--transition-fast)}:where(.ant-table-tbody)>tr.ant-table-row:hover>td,:where(.ant-table-tbody)>tr.ant-table-row.ant-table-row-hover>td,:where(.ant-table-tbody)>tr.ant-table-row-selected>td{background:var(--color-primary-bg)!important}:where(.ant-table-tbody)>tr.ant-table-row-selected:hover>td{background:#d6e6fa!important}:where(.ant-table-tbody)>tr.ant-table-row:focus-visible{outline:none}:where(.ant-table-tbody)>tr.ant-table-row:focus-visible>td{box-shadow:inset 0 0 0 2px var(--color-primary);background:var(--color-primary-bg)!important}:where(.ant-table-tbody)>tr>td.col-amount,:where(.ant-table-thead)>tr>th.col-amount{font-variant-numeric:tabular-nums;text-align:right}:where(.ant-table-cell-fix-right){background:inherit}:where(.ant-table-pagination){padding:0 var(--space-3);font-size:var(--text-xs)}:where(.ant-pagination-item):focus-visible,:where(.ant-pagination-item-link):focus-visible{box-shadow:none;outline:none}:where(.ant-table-filter-trigger){transition:color var(--transition-fast)}:where(.ant-table-filter-trigger.active){color:var(--color-primary)}.tbl-action-btn{border:none!important;border-radius:4px!important;justify-content:center!important;align-items:center!important;display:inline-flex!important}.tbl-action-btn--edit{color:#1677ff!important;background:#e6f4ff!important}.tbl-action-btn--edit:hover{color:#0958d9!important;background:#bae0ff!important}.tbl-action-btn--delete{color:#ff4d4f!important;background:#fff1f0!important}.tbl-action-btn--delete:hover{color:#cf1322!important;background:#ffccc7!important}:where(.ant-pro-table-list-toolbar){padding:var(--space-2) 0}:where(.ant-pro-table-list-toolbar-title){font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text-primary)}:where(.ant-table-placeholder){background:var(--color-bg-muted)}:where(.ant-table-placeholder)>td{padding:var(--space-8)!important;border-bottom:none!important}@keyframes pc-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pc-slide-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pc-scale-press{0%{transform:scale(1)}50%{transform:scale(.97)}to{transform:scale(1)}}.animate-fade-in{animation:pc-fade-in var(--transition-normal) ease both}.animate-slide-up{animation:pc-slide-up var(--transition-normal) ease both}.animate-press:active{animation:.18s pc-scale-press}.page-shell{animation:.16s both pc-fade-in}.ant-btn:not(.ant-btn-link):not(.ant-btn-dangerous):active{transition:transform 80ms;transform:scale(.97)}.ant-drawer-content-wrapper{transition-timing-function:cubic-bezier(.32,.72,.24,1)!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
