:root{color-scheme:light;--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI Variable", "Segoe UI", Helvetica, Arial, sans-serif;font-family:var(--font-sans);--sidebar-width: 220px;--sidebar-rail-width: 56px;--bg: #f6fbff;--bg-strong: #edf6fd;--surface: rgba(255, 255, 255, .92);--surface-strong: #fcfeff;--surface-ink: #24303b;--line: rgba(61, 76, 92, .16);--text: #1f2a33;--muted: #586572;--accent: #4c8fc0;--accent-strong: #286a9a;--accent-soft: rgba(76, 143, 192, .14);--shadow: 0 24px 60px rgba(43, 38, 31, .12);--table-surface-head: #edf5fb;--table-surface: #ffffff;--table-surface-alt: #eef6fb;--table-surface-hover: #e2eef7;--table-surface-selected: #e8f1f8;--sidebar-copy-size: 13px;--sidebar-copy-strong-size: 14px;--sidebar-row-height: 40px;--compact-btn-height: 28px;--compact-btn-radius: 8px;--compact-btn-padding-x: 12px;--compact-btn-font-size: 12px}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;min-height:100vh;font-size:14px;font-family:var(--font-sans);color:var(--text);background:radial-gradient(circle at top left,rgba(118,176,221,.16),transparent 30%),radial-gradient(circle at bottom right,rgba(180,214,240,.24),transparent 26%),linear-gradient(180deg,var(--bg) 0%,var(--bg-strong) 100%);scrollbar-width:thin;scrollbar-color:rgba(108,153,190,.42) rgba(0,0,0,0)}body:before,body:after{content:"";position:fixed;z-index:-1;border-radius:999px;filter:blur(14px);opacity:.7}body:before{width:260px;height:260px;top:48px;right:6%;background:#93c4e829}body:after{width:220px;height:220px;bottom:8%;left:5%;background:#b1d8f233}a{color:inherit}button,input,select{font:inherit}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:#0000}*::-webkit-scrollbar-thumb{border:2px solid rgba(0,0,0,0);border-radius:999px;background:linear-gradient(180deg,#8cb8dbeb,#5c91bacc);background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#7fb1d8fa,#4981ace0);background-clip:padding-box}.app-shell{--app-page-scale: 1;min-height:100vh;overflow:hidden}.app-shell-scale-layer{width:calc(100% / var(--app-page-scale));min-height:calc(100vh / var(--app-page-scale));transform:scale(var(--app-page-scale));transform-origin:top left;will-change:transform;backface-visibility:hidden}.app-shell.is-page-scaled{overflow:auto}.eyebrow{margin:0 0 8px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-strong)}.subtext{margin:0;color:var(--muted);line-height:1.6}.auth-shell{--auth-scale: .7;width:min(calc(720px * var(--auth-scale)),calc(100vw - 32px));margin:0 auto;padding:calc(24px * var(--auth-scale)) 0 calc(32px * var(--auth-scale));min-height:100vh;display:grid;place-items:center}.not-found-shell{width:min(720px,calc(100vw - 32px));margin:0 auto;padding:24px 0 32px;min-height:100vh;display:grid;place-items:center}.dashboard-shell{position:fixed;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:0;width:100vw;height:100vh;max-width:none;margin:0;padding:0;overflow:hidden}.auth-card,.sidebar-panel,.workspace-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.auth-card{width:min(calc(640px * var(--auth-scale)),100%);border-radius:calc(28px * var(--auth-scale));padding:calc(28px * var(--auth-scale))}.not-found-card{width:min(620px,100%);padding:32px 28px;border:1px solid var(--line);border-radius:28px;background:#ffffffb8;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:center}.auth-head{text-align:center}.auth-head h1{margin:0 0 10px;white-space:nowrap;font-size:clamp(16px,2.2vw,24px);line-height:1.05}.brand-block h1{margin:0 0 10px;font-size:clamp(24px,3vw,36px);line-height:1.05}.tip-banner{display:inline-flex;align-items:center;gap:10px;margin-top:20px;padding:10px 14px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong)}.field-grid{display:grid;grid-template-columns:1fr;gap:calc(14px * var(--auth-scale, 1));min-width:0;margin-top:calc(22px * var(--auth-scale, 1))}.field-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.field-card{display:flex;flex-direction:column;gap:8px;min-width:0}.field-card span,.compact-field span,.summary-card span,.meta-card span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.field-card.full-span{grid-column:1 / -1}.auth-form{margin-top:calc(18px * var(--auth-scale, 1))}.auth-card .subtext,.auth-card .auth-switch{font-size:13px}.auth-card input{border-radius:calc(16px * var(--auth-scale));padding:calc(14px * var(--auth-scale)) calc(16px * var(--auth-scale))}.auth-card .password-input-wrap input{padding-right:calc(48px * var(--auth-scale))}.auth-card .password-toggle{right:calc(8px * var(--auth-scale));width:calc(34px * var(--auth-scale));height:calc(34px * var(--auth-scale));border-radius:calc(12px * var(--auth-scale))}.auth-card .password-toggle-icon{width:calc(18px * var(--auth-scale));height:calc(18px * var(--auth-scale))}input,select{width:100%;border:1px solid rgba(61,76,92,.18);background:var(--surface-strong);color:var(--text);border-radius:16px;padding:14px 16px;text-align:left;outline:none;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}input::placeholder{text-align:left}input:focus,select:focus{border-color:#4c8fc073;box-shadow:0 0 0 4px #4c8fc024;transform:translateY(-1px)}.password-input-wrap{position:relative;display:flex;align-items:center}.password-input-wrap input{padding-right:48px}.password-toggle{position:absolute;top:50%;right:8px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:12px;background:transparent;color:var(--muted);transform:translateY(-50%);cursor:pointer;transition:background .18s ease,color .18s ease}.password-toggle:hover{background:#1f2a330f;color:var(--surface-ink)}.password-toggle-icon{width:18px;height:18px}.button-row{display:flex;flex-wrap:wrap;gap:calc(12px * var(--auth-scale, 1));align-items:center;justify-content:center;margin-top:calc(22px * var(--auth-scale, 1))}.auth-switch{margin:calc(18px * var(--auth-scale, 1)) 0 0;color:var(--muted);line-height:1.6;text-align:center;white-space:nowrap}.not-found-actions{justify-content:center}.inline-link{margin-left:4px;color:var(--accent-strong);font-weight:600;text-decoration:none}.inline-link:hover{text-decoration:underline}.primary-btn,.secondary-btn,.secondary-link,.group-toggle,.module-button{border:none;cursor:pointer}.primary-btn,.secondary-btn,.secondary-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:999px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.auth-card .primary-btn,.auth-card .secondary-btn,.auth-card .secondary-link{min-height:calc(48px * var(--auth-scale));padding:0 calc(18px * var(--auth-scale))}.primary-btn{color:#fff7f1;background:linear-gradient(135deg,#4c8fc0,#6eb0de);box-shadow:0 16px 28px #4c8fc038}.secondary-btn,.secondary-link{color:var(--surface-ink);background:#ffffffbd;border:1px solid rgba(61,76,92,.14)}.primary-btn:hover,.secondary-btn:hover,.secondary-link:hover{transform:translateY(-1px)}.primary-btn:disabled,.secondary-btn:disabled{cursor:not-allowed;opacity:.7;transform:none;box-shadow:none}.auth-submit{width:100%}.toast-viewport{position:fixed;top:16px;right:16px;z-index:9999;display:grid;gap:12px;width:min(320px,calc(100vw - 24px));pointer-events:none}.toast-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;border:1px solid rgba(255,255,255,.28);border-radius:16px;box-shadow:0 12px 28px #3a678b14,0 3px 10px #74a9d30d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto}.toast-card.success{background:#aff1bf7a}.toast-card.error{background:#f8b3b980}.toast-card.info{background:#b1e2f480}.toast-card.warning{background:#f8e2b580}.toast-icon-wrap{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:transparent;color:#22303a}.toast-card.success .toast-icon-wrap{color:#1f5a37}.toast-card.error .toast-icon-wrap{color:#8f3843}.toast-card.info .toast-icon-wrap{color:#205b74}.toast-card.warning .toast-icon-wrap{color:#805c16}.toast-icon,.toast-close-icon{width:22px;height:22px}.toast-copy{min-width:0}.toast-copy strong{display:block;margin-bottom:2px;font-size:15px;font-weight:700;color:#17232d}.toast-copy p{margin:0;color:#17232dd1;line-height:1.35;font-size:13px}.toast-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:#17232db8;cursor:pointer;border-radius:10px;transition:background .18s ease,color .18s ease,transform .18s ease}.toast-close:hover{color:#17232d;background:#fff3;transform:translateY(-1px)}.toast-stack-enter-active,.toast-stack-leave-active{transition:all .22s ease}.toast-stack-enter-from,.toast-stack-leave-to{opacity:0;transform:translateY(-8px) scale(.985)}.dashboard-topbar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 10px;border:1px solid var(--line);border-radius:0;background:linear-gradient(135deg,#f9fdfffa,#ebf5fceb);box-shadow:none;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:thin;scrollbar-color:rgba(108,153,190,.36) rgba(0,0,0,0)}.brand-block{display:flex;align-items:baseline;gap:8px;min-width:0;flex:1 1 auto}.dashboard-topbar .brand-block h1{margin:0;font-size:16px;line-height:1.1;flex:0 0 auto}.dashboard-topbar .subtext{font-size:12px;line-height:1.2;overflow:hidden;text-overflow:ellipsis}.topbar-actions{display:flex;flex-wrap:nowrap;gap:6px;align-items:center;flex:0 0 auto}.compact-field{min-width:auto;display:flex;flex-direction:row;align-items:center;gap:3px;flex:0 0 auto}.compact-field span{font-size:10px;letter-spacing:.06em}.compact-field select{width:auto;min-width:60px;padding:4px 8px;border-radius:8px}.dashboard-topbar .secondary-btn{min-height:28px;padding:0 12px;border-radius:8px;font-size:12px;color:#fff7f1;background:#b74848;border-color:#9b3636}.dashboard-topbar .secondary-btn:hover{background:#a33d3d}.shell-layout{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);gap:0;margin:0;padding:0;align-items:stretch;min-height:0;overflow:hidden}.shell-layout.collapsed{grid-template-columns:var(--sidebar-rail-width) minmax(0,1fr)}.shell-layout.motion-ready{transition:grid-template-columns .32s cubic-bezier(.22,1,.36,1)}.sidebar-panel{position:relative;display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;border-radius:0;border-top:0;border-left:0;box-shadow:none;padding:0;background:#f6fbfff2;transition:background .24s ease;scrollbar-width:thin;scrollbar-color:rgba(108,153,190,.4) rgba(0,0,0,0)}.shell-layout.collapsed .sidebar-panel{border-bottom:0}.sidebar-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:7px 8px 7px 12px;border-bottom:1px solid var(--line);background:#f6fbfffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sidebar-panel.collapsed .sidebar-header{justify-content:center;padding:7px 0}.sidebar-brand-mark{min-width:0;font-size:15px;font-weight:700;letter-spacing:.14em;color:var(--surface-ink);white-space:nowrap}.shell-layout.motion-ready .sidebar-brand-mark{transition:opacity .18s ease,transform .24s ease,width .24s ease}.sidebar-brand-mark.hidden{width:0;opacity:0;overflow:hidden;transform:translate(-8px)}.sidebar-toggle-button{width:32px;min-width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:var(--surface-ink);cursor:pointer;flex:0 0 auto;transition:background .18s ease,color .18s ease}.sidebar-toggle-button:hover{background:#1f2a330f}.sidebar-toggle-svg{width:18px;height:18px;stroke-width:1.75}.sidebar-expanded,.sidebar-rail{min-height:0}.sidebar-expanded{display:flex;flex-direction:column;padding-bottom:14px}.sidebar-main-link,.module-button,.sidebar-rail-button{width:100%;display:flex;align-items:center;gap:10px;color:var(--text);text-align:left}.sidebar-main-link{padding:12px;min-height:var(--sidebar-row-height);border:none;border-bottom:1px solid var(--line);background:#fafdffd1;cursor:pointer}.sidebar-main-link.active{background:#4c8fc029;box-shadow:inset 3px 0 0 var(--accent-strong)}.group-block+.group-block{margin-top:0}.group-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;min-height:var(--sidebar-row-height);border-radius:0;border-bottom:1px solid var(--line);background:#fafdffd1;color:var(--surface-ink)}.group-toggle:hover{background:#eff7fcf5}.group-toggle>span:last-child{color:var(--muted);font-weight:700}.group-label{min-width:0;display:flex;align-items:center;gap:10px}.group-label>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--sidebar-copy-strong-size);font-weight:700}.module-list{display:grid;gap:0;margin-top:0;overflow:hidden}.module-button{padding:10px 12px 10px 16px;min-height:var(--sidebar-row-height);border-radius:0;border:none;border-bottom:1px solid var(--line);background:transparent;color:#d62828}.module-button:hover{background:#f1f7fce6}.module-button.active{background:#4c8fc029;box-shadow:inset 3px 0 0 var(--accent-strong)}.sidebar-rail{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 12px}.sidebar-rail-button{justify-content:center;min-height:42px;padding:0;border:none;background:transparent;cursor:pointer}.sidebar-rail-button.active{background:#4c8fc02e;box-shadow:inset 3px 0 0 var(--accent-strong)}.menu-icon{width:18px;height:18px;flex:0 0 auto;color:currentColor}.menu-icon.large{width:19px;height:19px}.menu-copy{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--sidebar-copy-size);font-weight:400}.sidebar-main-link .menu-copy{font-size:var(--sidebar-copy-strong-size);font-weight:700}.sidebar-copy-enter-active,.sidebar-copy-leave-active{transition:opacity .18s ease,transform .28s cubic-bezier(.22,1,.36,1)}.sidebar-copy-enter-from,.sidebar-copy-leave-to{opacity:0;transform:translate(-8px)}.workspace-panel{height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;border-radius:0;border-top:0;border-right:0;padding:0;min-width:0;overflow:hidden;overscroll-behavior:contain;box-shadow:none;scrollbar-width:thin;scrollbar-color:rgba(108,153,190,.4) rgba(0,0,0,0)}.workspace-module-host{--workspace-scale: .9;min-height:0;min-width:0;overflow:hidden;overflow-x:hidden}.workspace-empty-state{height:100%;display:grid;place-items:center;padding:24px;text-align:center;color:var(--muted)}.workspace-empty-state h3{margin:0 0 10px;color:var(--surface-ink);font-size:18px}.workspace-empty-state p{margin:0;max-width:420px;line-height:1.6}.workspace-window-pane{height:100%;min-height:0;min-width:0;overflow:hidden;overflow-x:hidden;contain:layout paint}.workspace-window-scale{width:calc(100% / var(--workspace-scale));height:calc(100% / var(--workspace-scale));min-width:0;min-height:0;transform:scale(var(--workspace-scale));transform-origin:top left;will-change:transform;backface-visibility:hidden}.workspace-window-scale>*{width:100%;height:100%;min-width:0}.workspace-taskbar{display:block;min-height:42px;padding:6px 10px;border-top:1px solid rgba(61,76,92,.12);background:linear-gradient(180deg,#f5fafdfa,#eaf3f9f5)}.workspace-taskbar-shell{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}.workspace-taskbar-nav{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(61,76,92,.14);border-radius:8px;background:#ffffffe0;color:var(--surface-ink);cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.workspace-taskbar-nav:hover:not(:disabled){background:#e2f0f9f5;border-color:#4c8fc052;color:var(--accent-strong)}.workspace-taskbar-nav:disabled{opacity:.42;cursor:default}.workspace-taskbar-nav-icon{width:16px;height:16px}.workspace-taskbar-track{display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;overflow-y:hidden;padding-bottom:1px;scrollbar-width:none}.workspace-taskbar-track.dragging{cursor:grabbing}.workspace-taskbar-track::-webkit-scrollbar{display:none}.workspace-taskbar-item{position:relative;flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:240px;padding:0 6px 0 0;border:1px solid rgba(61,76,92,.14);border-radius:12px;background:#fffc;cursor:grab;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.workspace-taskbar-item.active{border-color:#4c8fc066;background:#e2f0f9f5;box-shadow:inset 0 0 0 1px #4c8fc014}.workspace-taskbar-item.dragging{opacity:.6;cursor:grabbing;background:#e2f0f9c7;border-color:#4c8fc047}.workspace-taskbar-item.drop-before:before,.workspace-taskbar-item.drop-after:after{content:"";position:absolute;top:6px;bottom:6px;width:4px;border-radius:999px;background:var(--accent-strong);box-shadow:0 0 0 1px #ffffffeb}.workspace-taskbar-item.drop-before:before{left:-6px}.workspace-taskbar-item.drop-after:after{right:-6px}.workspace-taskbar-select,.workspace-taskbar-close{border:none;background:transparent;color:inherit;cursor:pointer}.workspace-taskbar-select{min-width:0;display:inline-flex;align-items:center;gap:8px;padding:0 10px;min-height:28px;flex:1 1 auto;text-align:left;cursor:inherit}.workspace-taskbar-icon{width:16px;height:16px;flex:0 0 auto;color:var(--accent-strong)}.workspace-taskbar-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--sidebar-copy-size);color:var(--surface-ink)}.workspace-taskbar-close{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--muted);cursor:pointer;transition:background .18s ease,color .18s ease}.workspace-taskbar-close:hover{background:#b7484814;color:#a33d3d}.workspace-taskbar-close-icon{width:14px;height:14px}.module-section-empty{min-height:100%}.module-workspace-shell{position:relative;isolation:isolate;height:100%;min-height:100%;min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;overflow-x:hidden;background:#fcfeff}.module-workspace-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fffffff5,#f4f9fdf0)}.module-toolbar-copy{min-width:0}.module-toolbar-title{display:flex;align-items:center;gap:12px;min-width:0}.module-toolbar-title h2{margin:0;font-size:20px;line-height:1.2}.module-toolbar-title p{margin:4px 0 0;color:var(--muted);line-height:1.5}.module-toolbar-icon{width:22px;height:22px;color:var(--accent-strong);flex:0 0 auto}.module-toolbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.module-toolbar-btn{min-width:148px}.module-toolbar-btn-danger{color:#fff7f1;background:#b74848;border-color:#9b3636}.module-toolbar-btn-danger:hover{background:#a33d3d}.module-workspace-body{min-height:0;min-width:0;overflow:hidden;overflow-x:hidden;contain:layout paint}.module-inline-state{height:100%;display:grid;place-items:center;gap:12px;padding:24px;text-align:center;color:var(--muted)}.module-inline-state p{margin:0}.module-inline-state-error{color:#9b3636}.module-table-scroll{height:100%;min-width:0;overflow-y:auto;overflow-x:hidden;contain:layout paint}.module-table{width:100%;max-width:100%;min-width:0;border-collapse:separate;border-spacing:0;table-layout:fixed}.module-table th,.module-table td{padding:0 12px;border-bottom:1px solid rgba(61,76,92,.1);border-right:1px solid rgba(61,76,92,.12);text-align:left;background:var(--table-surface);font-size:var(--sidebar-copy-size);font-weight:400;line-height:1.45}.module-table th{min-height:calc(var(--sidebar-row-height) * .8);height:auto;padding:8px 12px;vertical-align:middle;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.module-table td{min-height:calc(var(--sidebar-row-height) * .8);height:auto;padding:8px 12px;vertical-align:top;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.module-table thead th{position:sticky;top:0;z-index:2;background:var(--table-surface-head);color:var(--surface-ink);font-size:var(--sidebar-copy-size);font-weight:700;text-align:center}.module-table th:last-child,.module-table td:last-child{border-right:none}.module-table tbody tr:nth-child(odd) td{background:var(--table-surface)}.module-table tbody tr:nth-child(2n) td{background:var(--table-surface-alt)}.module-table tbody tr:hover td{background:var(--table-surface-hover)}.module-table-row-selected td{background:var(--table-surface-selected)}.module-table-checkbox-col{width:4.5%;text-align:center}.module-table-name-col{width:39%}.module-table-level-col{width:12.5%}.module-table tbody td.module-table-level-col{text-align:center}.module-table-action-col{width:9%;text-align:center}.module-table-customer-code-col{width:13%}.module-table-customer-name-col{width:24%}.module-table-customer-tax-col{width:15%}.module-table-customer-address-col{width:34.5%}.module-table-supplier-code-col{width:13%}.module-table-supplier-name-col{width:24%}.module-table-supplier-tax-col{width:15%}.module-table-supplier-address-col{width:34.5%}.module-table-item-code-col{width:15%}.module-table-item-name-col{width:42%}.module-table-item-type-col{width:14%}.module-table-item-unit-col{width:15.5%}.module-table-bank-code-col{width:12%}.module-table-bank-name-col{width:22%}.module-table-bank-account-col{width:25%}.module-table-bank-holder-col{width:27.5%}.module-table-tax-code-col{width:7%}.module-table-form-code-col{width:5%}.module-table-invoice-code-col,.module-table-invoice-number-col,.module-table-signed-date-col{width:5.5%}.module-table-company-info-col{width:18%}.module-table-amount-col{width:5.5%}.module-table-status-wide-col{width:6.5%}.module-table-result-col{width:7.5%}.module-table-line-name-col{width:14%}.module-table-line-unit-col{width:5.5%}.module-table-line-number-col{width:4.75%}.module-table-line-money-col{width:5.5%}.module-table-opening-party-code-col{width:13%}.module-table-opening-party-name-col{width:31%}.module-table-opening-document-col{width:18%}.module-table-opening-date-col{width:10%}.module-table-opening-amount-col{width:24.5%}.module-table-opening-item-code-col{width:12%}.module-table-opening-item-name-col{width:24%}.module-table-opening-unit-col,.module-table-opening-quantity-col{width:10%}.module-table-opening-unit-price-col{width:12%}.module-table-opening-value-col{width:14%}.module-table-opening-account-code-col{width:12%}.module-table-opening-account-name-col{width:32%}.module-table-opening-debit-col,.module-table-opening-credit-col{width:14%}.module-table-template-code-col{width:12%}.module-table-template-name-col{width:22%}.module-table-module-col{width:14%}.module-table-tx-col{width:12%}.module-table-rule-col{width:22%}.module-table-status-col{width:7%;text-align:center}.module-table tbody td.module-table-template-code-col,.module-table tbody td.module-table-supplier-code-col,.module-table tbody td.module-table-item-code-col,.module-table tbody td.module-table-item-type-col,.module-table tbody td.module-table-item-unit-col,.module-table tbody td.module-table-item-price-col,.module-table tbody td.module-table-bank-code-col,.module-table tbody td.module-table-bank-account-col,.module-table tbody td.module-table-tax-code-col,.module-table tbody td.module-table-form-code-col,.module-table tbody td.module-table-invoice-code-col,.module-table tbody td.module-table-invoice-number-col,.module-table tbody td.module-table-signed-date-col,.module-table tbody td.module-table-opening-party-code-col,.module-table tbody td.module-table-opening-document-col,.module-table tbody td.module-table-opening-date-col,.module-table tbody td.module-table-opening-item-code-col,.module-table tbody td.module-table-opening-unit-col,.module-table tbody td.module-table-opening-account-code-col,.module-table tbody td.module-table-tx-col,.module-table tbody td.module-table-status-col{text-align:center}.module-table tbody td.module-table-opening-amount-col,.module-table tbody td.module-table-opening-quantity-col,.module-table tbody td.module-table-opening-unit-price-col,.module-table tbody td.module-table-opening-value-col,.module-table tbody td.module-table-opening-debit-col,.module-table tbody td.module-table-opening-credit-col,.module-table tbody td.module-table-amount-col,.module-table tbody td.module-table-line-number-col,.module-table tbody td.module-table-line-money-col{text-align:right;font-variant-numeric:tabular-nums}.invoice-detail-card{min-width:0;border:1px solid rgba(61,76,92,.12);border-radius:20px;background:#ffffffe6;box-shadow:0 16px 40px #233b5214;padding:18px}.invoice-detail-card-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.invoice-detail-card-header h3{margin:0;font-size:18px;color:var(--surface-ink)}.invoice-detail-card-header p{margin:4px 0 0;color:var(--muted);font-size:13px}.invoice-detail-grid{gap:14px}.invoice-header-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:18px;min-width:0}.invoice-header-main-field{grid-column:1 / -1}.invoice-header-status-field,.invoice-header-result-field{grid-column:span 2}.invoice-detail-table-scroll{max-height:42vh;overflow-x:hidden}.invoice-line-input{width:100%;min-width:0;min-height:34px;border:1px solid rgba(61,76,92,.16);border-radius:10px;background:#fffffff2;padding:0 10px;color:var(--surface-ink);font:inherit}.invoice-line-input.is-number{text-align:right;font-variant-numeric:tabular-nums}.invoice-line-input:disabled{background:#eff5f9e6;color:#374453e6}.invoice-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.invoice-dialog-form{display:flex;flex-direction:column;gap:14px;min-width:0}.invoice-detail-table-scroll .module-table{min-width:0}.invoice-detail-table-scroll .module-table-invoice-detail-lines{min-width:0;width:100%}.invoice-detail-table-scroll .module-table-line-name-col{width:28%}.invoice-detail-table-scroll .module-table-line-unit-col{width:10%}.invoice-detail-table-scroll .module-table-line-number-col{width:9%}.invoice-detail-table-scroll .module-table-line-money-col{width:12%}.invoice-detail-table-scroll .module-table-action-col{width:92px}.invoice-dialog-footer-view{justify-content:flex-end}.invoice-dialog-close-action{margin-left:auto}.invoice-summary-tile{border:1px solid rgba(61,76,92,.12);border-radius:18px;background:linear-gradient(135deg,#edf6fceb,#fffffff0);padding:16px 18px}.invoice-summary-tile span{display:block;color:var(--muted);font-size:13px}.invoice-summary-tile strong{display:block;margin-top:8px;color:var(--surface-ink);font-size:20px;line-height:1.1}.module-table-text-truncate{display:block;overflow:visible;text-overflow:clip;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.module-table-empty{text-align:center;color:var(--muted);padding:28px 14px}.module-table-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}.module-compact-btn{min-height:var(--compact-btn-height);height:var(--compact-btn-height);padding:0 var(--compact-btn-padding-x);border-radius:var(--compact-btn-radius);font-size:var(--compact-btn-font-size);line-height:1}.module-toolbar-btn,.module-dialog-footer .primary-btn,.module-dialog-footer .secondary-btn,.module-table-action-btn{min-height:var(--compact-btn-height);padding:0 var(--compact-btn-padding-x);border-radius:var(--compact-btn-radius);font-size:var(--compact-btn-font-size)}.module-table-action-btn{color:var(--surface-ink);background:#ffffffbd;border:1px solid rgba(61,76,92,.14)}.module-table-action-btn.danger{color:#b74848;border-color:#b7484842}.module-table-action-btn.danger:hover{background:#b7484814}.module-dialog-backdrop{position:absolute;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#1f2a3329;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.module-dialog-card{--module-dialog-width: 600px;--module-dialog-max-height: calc(100% - 32px) ;width:min(var(--module-dialog-width),calc(100% - 24px));max-height:min(var(--module-dialog-max-height),calc(100vh - 32px));min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fffffff5;box-shadow:0 28px 64px #233b5233}.module-dialog-width-sm{--module-dialog-width: 520px}.module-dialog-width-md{--module-dialog-width: 720px}.module-dialog-width-lg{--module-dialog-width: 960px}.module-dialog-width-xl{--module-dialog-width: 1200px}.module-dialog-width-document{--module-dialog-width: 90%;--module-dialog-max-height: 90%}.module-template-dialog-card{--module-dialog-width: 1020px}.module-dialog-header{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 16px;border-bottom:1px solid rgba(61,76,92,.12);background:#fffffffa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.module-dialog-header h3{margin:0;font-size:22px;line-height:1.2}.module-dialog-header p{margin:6px 0 0;color:var(--muted)}.module-dialog-close-btn{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:0;border:1px solid rgba(61,76,92,.14);border-radius:12px;background:#ffffffbd;color:var(--muted);cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}.module-dialog-close-btn:hover{background:#1f2a330f;color:var(--surface-ink);transform:translateY(-1px)}.module-dialog-close-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.module-dialog-close-icon{width:18px;height:18px}.module-dialog-form{min-height:0;display:flex;flex-direction:column;gap:18px;padding:18px 22px 22px;overflow-y:auto;overflow-x:hidden}.module-dialog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-template-dialog-form{gap:16px}.module-template-dialog-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.module-template-card-span-2{grid-column:span 2}.module-template-card-span-3{grid-column:1 / -1}.module-template-panel-card,.module-template-related-card,.module-template-affect-card,.module-template-preview-card{align-self:stretch}.module-template-related-tag-list{min-height:54px;align-content:flex-start}.module-template-affect-card .module-check-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.module-template-preview-card .module-dialog-preview{min-height:100%;height:100%}.module-template-textarea{min-height:88px}.module-template-rule-textarea{min-height:126px}.module-form-error{margin:14px 0 0;color:#b74848}.module-textarea{width:100%;min-height:108px;resize:vertical;border:1px solid rgba(61,76,92,.18);background:var(--surface-strong);color:var(--text);border-radius:16px;padding:14px 16px;font:inherit;line-height:1.5}.module-related-tag-list{display:flex;flex-wrap:wrap;gap:10px}.module-related-tag{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid rgba(76,143,192,.22);background:#eef7fdeb;color:var(--surface-ink);border-radius:14px;font-size:12px}.module-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}.module-check-item{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 12px;border:1px solid rgba(61,76,92,.14);background:#ffffffc7;border-radius:16px;color:var(--surface-ink)}.module-check-item input{width:16px;height:16px;flex:0 0 auto}.module-check-item span{font-size:var(--sidebar-copy-size);letter-spacing:0;text-transform:none;color:inherit}.module-dialog-preview{display:grid;gap:10px;min-height:54px;padding:14px 16px;border:1px solid rgba(61,76,92,.14);background:#f8fbfdf5;border-radius:18px}.module-dialog-preview-empty{color:var(--muted)}.module-dialog-preview-line{display:flex;align-items:flex-start;gap:10px;color:var(--surface-ink)}.module-dialog-preview-side{min-width:28px;color:var(--accent-strong)}.module-dialog-footer{position:sticky;bottom:0;z-index:2;display:flex;justify-content:space-between;gap:16px;margin-top:auto;padding-top:16px;border-top:1px solid rgba(61,76,92,.12);background:#fffffffa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.module-dialog-cancel-btn{color:#fff7f1;background:#b74848;border-color:#9b3636}.module-dialog-cancel-btn:hover{background:#a33d3d}.status-pill{white-space:nowrap;padding:8px 12px;border-radius:0;background:var(--accent-soft);color:var(--accent-strong);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.status-pill.is-active{background:#abe8bb94;color:#1d6b34}.status-pill.is-inactive{background:#f4c4c4a8;color:#9b3636}@media(max-width:1280px){.invoice-header-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-header-status-field,.invoice-header-result-field{grid-column:span 1}}@media(max-width:1240px){.module-template-dialog-card{--module-dialog-width: 920px}.module-template-dialog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-template-affect-card .module-check-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:960px){.field-grid.two-columns,.module-dialog-grid,.module-check-grid,.invoice-detail-summary,.invoice-header-grid{grid-template-columns:1fr}.shell-layout{grid-template-columns:1fr;grid-template-rows:minmax(220px,32vh) minmax(0,1fr)}.module-workspace-toolbar{align-items:flex-start;flex-direction:column}.module-template-dialog-grid{grid-template-columns:1fr}.module-template-card-span-2,.module-template-card-span-3{grid-column:1 / -1}.module-template-affect-card .module-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-taskbar{padding:6px 8px}}@media(max-width:640px){.auth-shell{--auth-scale: 1;width:min(100vw - 12px,1200px);margin:0 auto;padding:10px 0 20px}.auth-card,.dashboard-topbar,.sidebar-panel,.workspace-panel{border-radius:0}.auth-card,.workspace-panel{padding:18px}.module-workspace-toolbar,.module-dialog-form,.module-dialog-header{padding-left:16px;padding-right:16px}.module-dialog-footer{flex-direction:column}.module-dialog-footer .primary-btn,.module-dialog-footer .secondary-btn{width:100%}.module-template-affect-card .module-check-grid{grid-template-columns:1fr}.sidebar-panel{border-radius:0}}
