.table-scroll{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.data-grid{--grid-row-pad-y:var(--table-row-pad-y-compact);--grid-head-pad-y:var(--table-head-pad-y-compact)}.data-grid[data-density=comfortable]{--grid-row-pad-y:var(--table-row-pad-y-comfortable);--grid-head-pad-y:var(--table-head-pad-y-comfortable)}.data-grid__scroll{border:1px solid var(--table-border);border-radius:var(--table-radius);max-height:min(72vh,48rem);overflow:auto}.data-grid__toolbar{min-height:var(--control-height-sm);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.data-grid__toolbar-start{min-width:0;color:var(--color-muted);font-size:var(--text-sm)}.data-grid__menu{margin-left:auto;position:relative}.data-grid__menu-count{border-radius:var(--radius-full);background:var(--color-primary-soft);min-width:1.25rem;height:1.25rem;color:var(--color-primary-dark);font-size:var(--text-xs);justify-content:center;align-items:center;padding:0 .3rem;font-weight:600;display:inline-flex}.data-grid__popover{z-index:var(--z-topbar);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:min(260px,100vw - 2rem);box-shadow:var(--shadow-lg);padding:.75rem;animation:.12s pop-in;position:absolute;top:calc(100% + .35rem);right:0}.data-grid__popover-title{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);margin:0 0 .4rem;font-weight:600}.data-grid__popover-title:not(:first-child){margin-top:.75rem}.data-grid__column-list{flex-direction:column;gap:.15rem;max-height:16rem;margin:0 0 .5rem;padding:0;list-style:none;display:flex;overflow-y:auto}.data-grid__column-list .checkbox-field{border-radius:var(--radius-xs);padding:.25rem .3rem}.data-grid__column-list .checkbox-field:hover{background:var(--color-surface-muted)}.data-grid__density{background:var(--color-surface-sunken);border-radius:var(--radius-sm);grid-template-columns:1fr 1fr;gap:.25rem;padding:.2rem;display:grid}.data-grid__density-option{font:inherit;font-size:var(--text-sm);border-radius:var(--radius-xs);color:var(--color-text-soft);cursor:pointer;background:0 0;border:none;padding:.3rem .5rem}.data-grid__density-option.is-active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs);font-weight:600}.data-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--table-font-size)}.data-table th{z-index:var(--z-sticky);text-align:left;font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--table-head-text);font-weight:var(--font-semibold);padding:var(--grid-head-pad-y,var(--table-head-pad-y-compact)) var(--table-cell-pad-x);background:var(--table-head-bg);border-top:1px solid var(--table-border);border-bottom:1px solid var(--color-border-strong);white-space:nowrap;position:sticky;top:0}.table-scroll:not(.data-grid__scroll) .data-table th{position:static}.data-grid__scroll .data-table th{border-top:none}.data-table td{padding:var(--grid-row-pad-y,var(--table-row-pad-y-compact)) var(--table-cell-pad-x);border-bottom:1px solid var(--table-border);vertical-align:middle;color:var(--color-text);background:var(--table-bg)}.data-table tfoot td,.data-table tfoot th{background:var(--color-surface-muted);border-top:1px solid var(--color-border-strong);border-bottom:none;font-weight:600;position:static}.data-table th.is-fit,.data-table td.is-fit{white-space:nowrap;width:1%}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody td{transition:background-color .1s}.data-table tbody tr:hover td{background:var(--table-row-hover-bg)}.data-table__row--clickable{cursor:pointer}.data-table__row--clickable:focus-visible,.data-table__row--navigable:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.data-table__row--clickable:focus-visible td,.data-table__row--navigable:focus-visible td{background:var(--color-primary-soft)}@media (width>=641px){.data-table__row--clickable:focus-visible,.data-table__row--navigable:focus-visible{outline:none}.data-table__row--clickable:focus-visible td,.data-table__row--navigable:focus-visible td{box-shadow:inset 0 2px 0 var(--color-primary), inset 0 -2px 0 var(--color-primary)}.data-table__row--clickable:focus-visible td:first-child,.data-table__row--navigable:focus-visible td:first-child{box-shadow:inset 2px 0 0 var(--color-primary), inset 0 2px 0 var(--color-primary), inset 0 -2px 0 var(--color-primary)}.data-table__row--clickable:focus-visible td:last-child,.data-table__row--navigable:focus-visible td:last-child{box-shadow:inset -2px 0 0 var(--color-primary), inset 0 2px 0 var(--color-primary), inset 0 -2px 0 var(--color-primary)}}.data-table tbody tr[data-row]{scroll-margin-top:3rem}.data-table__row--clickable:hover td{background:var(--color-primary-soft)}.data-table__row--clickable:hover .data-table__primary,.data-table__row--clickable:hover .data-table__code{color:var(--color-primary-dark)}.data-table th.is-right,.data-table td.is-right{text-align:right}.data-table td.is-right{font-variant-numeric:tabular-nums}.data-table th.is-center,.data-table td.is-center{text-align:center}.data-table td.is-truncate{text-overflow:ellipsis;white-space:nowrap;max-width:22rem;overflow:hidden}.data-table__sort{border-radius:var(--radius-xs);font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;margin:0 -.25rem;padding:.1rem .25rem;display:inline-flex}.data-table__sort:hover,.data-table__sort.is-active{color:var(--color-text)}.data-table__sort:hover{background:var(--color-surface-sunken)}.data-table__sort-icon{flex-direction:column;align-items:center;line-height:0;display:inline-flex}.data-table__sort-icon .icon{opacity:.35}.data-table__sort-icon .icon:first-child{margin-bottom:-4px}.data-table__sort-icon .icon.is-on{opacity:1;color:var(--color-primary)}th.is-right .data-table__sort{flex-direction:row-reverse}.data-table th.is-sticky-left,.data-table td.is-sticky-left{z-index:var(--z-raised);position:sticky;left:0}.data-table th.is-sticky-right,.data-table td.is-sticky-right{z-index:var(--z-raised);position:sticky;right:0}.data-table th.is-sticky-left,.data-table th.is-sticky-right{z-index:var(--z-sticky-corner)}.data-grid__scroll.has-overflow-right .data-table .is-sticky-right{box-shadow:var(--shadow-pin-start)}.data-grid__scroll.has-overflow-left .data-table .is-sticky-left{box-shadow:var(--shadow-pin-end)}.data-table__code{letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-text);transition:color var(--transition-fast);font-weight:600}.data-table__primary{color:var(--color-text);transition:color var(--transition-fast);font-weight:600}.data-table__secondary{color:var(--color-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;max-width:46ch;margin-top:.1rem;display:block;overflow:hidden}.data-table__date{color:var(--color-text-soft);white-space:nowrap;font-variant-numeric:tabular-nums}.data-table__actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.data-table__loading,.data-table__empty{text-align:center;color:var(--color-muted);padding:3rem 1rem}.data-table tbody tr:hover td.data-table__loading,.data-table tbody tr:hover td.data-table__empty{background:var(--color-surface)}.data-table__empty>strong{color:var(--color-text);font-size:var(--text-md);font-weight:600;display:block}.data-table__empty>p{max-width:52ch;margin:.3rem auto 0}.data-table__empty:has(>.empty-state){padding:2.25rem 1rem}@media (width<=640px){.data-grid__scroll{border:none;border-radius:0;max-height:none;overflow:visible}.data-grid .data-table,.data-grid .data-table tbody{display:block}.data-grid .data-table thead{margin-bottom:.6rem;display:block}.data-grid .data-table thead tr{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-wrap:wrap;gap:.25rem .9rem;padding:.35rem .6rem;display:flex}.data-grid .data-table thead:not(:has(.data-table__sort)){display:none}.data-grid .data-table th{display:none}.data-grid .data-table th:has(.data-table__sort){background:0 0;border:none;padding:0;display:block;position:static}.data-grid .data-table tbody tr{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem .9rem;margin-bottom:.6rem;padding:.7rem .8rem;display:grid}.data-grid .data-table tbody tr:last-child{margin-bottom:0}.data-grid .data-table tbody td,.data-grid .data-table tbody tr:hover td,.data-grid .data-table tbody tr:last-child td{text-align:left;overflow-wrap:anywhere;background:0 0;border:none;min-width:0;padding:0;display:block}.data-grid .data-table tbody td:before{content:none}.data-grid .data-table tbody td[data-label]:before{content:attr(data-label);color:var(--color-muted);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.1rem;font-weight:600;display:block}.data-grid .data-table tbody td:first-child,.data-grid .data-table tbody td.is-actions,.data-grid .data-table tbody td.data-table__empty,.data-grid .data-table tbody td.data-table__loading{grid-column:1/-1}.data-grid .data-table td.is-sticky-left,.data-grid .data-table td.is-sticky-right{box-shadow:none;position:static}.data-grid .data-table td.is-fit,.data-grid .data-table td.is-truncate{white-space:normal;width:auto;max-width:none}.data-grid .data-table td[style]{min-width:0!important}.data-grid .data-table td.is-actions .data-table__actions{flex-wrap:wrap;justify-content:flex-start}.data-grid .data-table td.is-actions{border-top:1px solid var(--color-border);padding-top:.5rem}.data-grid .data-table__secondary{white-space:normal;max-width:none}.data-grid .data-table tbody tr.data-table__row--clickable:hover{border-color:var(--color-primary)}.data-grid .data-table tbody tr:has(td.data-table__empty){box-shadow:none;border:none;padding:0;display:block}.data-grid .data-table tbody td.data-table__empty{padding:2rem .5rem}.data-grid .data-table tbody tr.data-table__loading-status{box-shadow:none;border:none;margin:0;padding:0}}.list-toolbar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:.6rem .75rem;margin-bottom:1rem;padding:.75rem .9rem;display:flex}.list-toolbar:has(+.list-toolbar){border-bottom-right-radius:0;border-bottom-left-radius:0;margin-bottom:0;padding-bottom:.5rem}.list-toolbar+.list-toolbar{border-top:none;border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px;padding-top:.5rem}.alert+.list-toolbar,.alert+.card{margin-top:1rem}.list-toolbar__search{flex:260px;align-items:center;min-width:220px;max-width:360px;display:flex;position:relative}.list-toolbar__search input{width:100%;height:var(--control-height);border:1px solid var(--color-control-border);border-radius:var(--radius-sm);font:inherit;background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:0 2.3rem}.list-toolbar__search input::placeholder{color:var(--color-placeholder)}.list-toolbar__search input:hover:not(:focus){border-color:var(--color-placeholder)}.list-toolbar__search input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.list-toolbar__search-icon{color:var(--color-placeholder);pointer-events:none;display:inline-flex;position:absolute;left:.8rem}.list-toolbar__clear{border-radius:var(--radius-full);width:24px;height:24px;color:var(--color-muted);cursor:pointer;font-size:var(--text-md);background:0 0;border:none;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:absolute;right:.35rem}.list-toolbar__clear:hover{background:var(--color-surface-sunken);color:var(--color-text)}.list-toolbar__filter{min-height:var(--control-height);border:1px solid var(--color-control-border);border-radius:var(--radius-sm);font:inherit;background:var(--color-surface);color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.4rem .7rem}.list-toolbar__filter:hover:not(:focus){border-color:var(--color-placeholder)}.list-toolbar__filter:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.list-toolbar__spacer{flex:1}.list-toolbar input[type=text].list-toolbar__filter,.list-toolbar input[type=number].list-toolbar__filter{cursor:text}.list-toolbar__label{font-size:var(--text-xs);color:var(--color-muted);white-space:nowrap;font-weight:500}.erp-select.list-toolbar__filter{min-height:0;box-shadow:none;background:0 0;border:none;padding:0}.list-toolbar__search input[type=search]::-webkit-search-cancel-button{appearance:none}.list-toolbar__search input[type=search]::-webkit-search-decoration{appearance:none}.list-toolbar__shortcut{font-family:inherit;font-size:var(--text-2xs);color:var(--color-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xs);pointer-events:none;border-bottom-width:2px;padding:.05rem .4rem;font-weight:500;line-height:1.3;position:absolute;right:.55rem}.list-toolbar__search input:focus~.list-toolbar__shortcut{display:none}.list-toolbar__search.is-active input,.erp-select.list-toolbar__filter.is-active .select2-container--default .select2-selection,.list-toolbar input[type=text].list-toolbar__filter:not(:placeholder-shown),.list-toolbar input[type=number].list-toolbar__filter:not(:placeholder-shown){border-color:var(--color-primary);background-color:var(--color-primary-soft);box-shadow:inset 3px 0 0 var(--color-primary)}.list-toolbar .date-field:not(.is-default):has(.date-field__input:not(:placeholder-shown)) .date-field__input{border-color:var(--color-primary);background-color:var(--color-primary-soft);box-shadow:inset 3px 0 0 var(--color-primary)}.erp-select.list-toolbar__filter.is-active .select2-container--default .select2-selection__rendered{color:var(--color-primary-darker);font-weight:600}.list-toolbar__search.is-active .list-toolbar__search-icon{color:var(--color-primary)}.list-toolbar__search.is-active input:focus,.erp-select.list-toolbar__filter.is-active .select2-container--focus .select2-selection{box-shadow:inset 3px 0 0 var(--color-primary), var(--focus-ring)}.list-toolbar .date-field:not(.is-default):has(.date-field__input:not(:placeholder-shown)) .date-field__input:focus{box-shadow:inset 3px 0 0 var(--color-primary), var(--focus-ring)}.list-toolbar label:has(>input[type=checkbox]:checked){color:var(--color-primary-darker);font-weight:600}.filter-bar__break{flex-basis:100%;height:0}.filter-bar__status{align-items:center;gap:.4rem;display:inline-flex}.filter-bar__status:empty{display:none}.filter-bar__count{border-radius:var(--radius-full);background:var(--color-primary-soft);color:var(--color-primary-darker);font-size:var(--text-xs);white-space:nowrap;align-items:center;gap:.3rem;padding:.2rem .6rem;font-weight:600;display:inline-flex}.filter-bar__clear{white-space:nowrap}.data-table__empty>.filter-bar__clear{margin-top:.75rem}.filter-chip-group{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.filter-chip{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:1.9rem;color:var(--color-text-soft);border-radius:var(--radius-full);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:border-color var(--transition-fast), background-color var(--transition-fast);align-items:center;gap:.3rem;padding:.25rem .75rem;display:inline-flex}.filter-chip:hover:not(:disabled){border-color:var(--color-placeholder);background:var(--color-surface-muted)}.filter-chip:focus-visible{box-shadow:var(--focus-ring);outline:none}.filter-chip.is-active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-darker);font-weight:600}.filter-chip:disabled{cursor:not-allowed;opacity:.55}.pagination{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;margin-top:.75rem;padding-top:.85rem;display:flex}.pagination__left{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.pagination__status{color:var(--color-muted);font-size:var(--text-sm)}.pagination__page-size{color:var(--color-muted);font-size:var(--text-sm);align-items:center;gap:.4rem;display:inline-flex}.pagination__page-size select{border:1px solid var(--color-control-border);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer;padding:.25rem 1.6rem .25rem .5rem}.pagination__nav{align-items:center;gap:.5rem;display:flex}.pagination__pages{align-items:center;gap:.25rem;display:flex}.pagination__page-btn{min-width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-xs);color:var(--color-text-soft);font:inherit;font-size:var(--text-sm);font-variant-numeric:tabular-nums;cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:1px solid #0000;padding:0 .45rem;font-weight:500}.pagination__page-btn:hover:not(:disabled,[aria-current=page]){background:var(--color-surface-sunken);color:var(--color-text)}.pagination__page-btn[aria-current=page]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white);cursor:default;box-shadow:var(--shadow-xs);font-weight:600}.pagination__dots{color:var(--color-muted);font-size:var(--text-sm);padding:0 .15rem}.button--small{min-height:var(--button-height-sm);padding:var(--button-pad-y-sm) var(--button-pad-x-sm);font-size:var(--button-font-size-sm);gap:var(--button-gap-sm)}.modal-overlay{background:var(--modal-overlay);-webkit-backdrop-filter:blur(2px);padding:var(--space-gutter);z-index:var(--z-modal);place-items:center;animation:.16s overlay-in;display:grid;position:fixed;inset:0}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.modal{width:min(var(--modal-width,var(--modal-width-md)), calc(100vw - 2rem));background:var(--modal-bg);border:1px solid var(--modal-border);border-radius:var(--modal-radius);max-height:calc(100vh - 4rem);box-shadow:var(--modal-shadow);animation:.18s cubic-bezier(.16,1,.3,1) modal-in;overflow-y:auto}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.modal__header{padding:var(--modal-header-pad-y) var(--space-5) var(--modal-header-pad-y) var(--modal-pad-x);border-bottom:1px solid var(--modal-border);justify-content:space-between;align-items:center;gap:1rem;display:flex}.modal__header h2{font-size:var(--text-lg);letter-spacing:-.015em;margin:0;font-weight:600}.modal__body{padding:var(--modal-pad-y) var(--modal-pad-x)}.modal__footer{padding:var(--modal-footer-pad-y) var(--modal-pad-x);border-top:1px solid var(--modal-border);background:var(--modal-footer-bg);border-radius:0 0 var(--modal-radius) var(--modal-radius);justify-content:space-between;align-items:center;gap:.75rem;display:flex;position:sticky;bottom:0}.modal__footer-group{gap:.5rem;margin-left:auto;display:flex}.doc-picker{flex:1;min-width:0;position:relative}.doc-picker__list{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);max-height:260px;z-index:var(--z-menu);width:100%;box-shadow:var(--shadow-lg);margin:.3rem 0 0;padding:.3rem;list-style:none;position:absolute;overflow-y:auto}.doc-picker__option{text-align:left;border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--color-text);background:0 0;border:none;justify-content:space-between;gap:.6rem;padding:.5rem .6rem;display:flex}.doc-picker__option:hover{background:var(--color-primary-soft)}.doc-picker__option-code{font-variant-numeric:tabular-nums;font-weight:600}.doc-picker__option-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin-left:.5rem;overflow:hidden}.doc-picker__option-amount{font-variant-numeric:tabular-nums;white-space:nowrap}.doc-picker__empty{color:var(--color-muted);font-size:var(--text-base);text-align:center;padding:.75rem .6rem}.tab-row{border-bottom:1px solid var(--color-border);gap:.25rem;margin-bottom:1.25rem;display:flex}.tab-row__tab{font:inherit;font-size:var(--text-base);color:var(--color-muted);cursor:pointer;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem .85rem;font-weight:500;transition:color .15s,border-color .15s,background-color .15s}.tab-row__tab:hover{color:var(--color-text);border-bottom-color:var(--color-border-strong)}.tab-row__tab.is-active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.tab-row__tab:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.uom-preview{border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);color:var(--color-text-soft);font-size:var(--text-sm);margin-top:.4rem;padding:.5rem .75rem}.checkbox-list{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);flex-direction:column;gap:.35rem;max-height:200px;padding:.6rem .75rem;display:flex;overflow-y:auto}.checkbox-list__empty{font-size:var(--text-base);color:var(--color-text-soft);margin:0}.radio-group{flex-direction:column;gap:.65rem;display:flex}.radio-field{cursor:pointer;align-items:flex-start;gap:.6rem;display:flex}.radio-field input[type=radio]{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer;margin-top:.2rem}.radio-field.is-disabled{cursor:not-allowed;opacity:.65}.radio-field.is-disabled input[type=radio]{cursor:not-allowed}.radio-field__body{flex-direction:column;gap:.1rem;display:flex}.radio-field__name{font-weight:600;font-size:var(--text-base);color:var(--color-text)}.radio-field__desc{font-size:var(--text-xs);color:var(--color-muted)}.badge-row{flex-wrap:wrap;gap:.35rem;display:flex}.license-usage{flex-direction:column;gap:.4rem;min-width:160px;display:flex}.license-usage__label{font-size:var(--text-sm);justify-content:space-between;gap:.75rem;display:flex}.license-usage__hint{font-size:var(--text-xs);color:var(--color-text-soft);margin:0}.progress-bar--warning span{background:var(--color-warning-text)}.progress-bar--danger span{background:var(--color-danger-text)}.banner-row{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.banner-row .alert{flex:1}.banner-row__close{font:inherit;color:inherit;cursor:pointer;opacity:.7;border-radius:var(--radius-xs);font-size:var(--text-md);background:0 0;border:none;padding:.1rem .35rem;line-height:1.2}.banner-row__close:hover{opacity:1;background:var(--color-hover-wash)}.banner-row .alert+.banner-row__close{margin-top:.45rem}@media (width<=1100px){.list-toolbar__search{max-width:none}}@media (width<=1024px){.form-grid.form-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.form-grid.form-grid,.form-grid.form-grid--3{grid-template-columns:minmax(0,1fr)}}.coa-tree,.coa-tree__children{margin:0;padding:0;list-style:none}.coa-tree{flex-direction:column;display:flex}.coa-tree__row{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:.6rem;padding:.5rem .4rem;transition:background-color .1s;display:flex}.coa-tree__row:hover{background:var(--color-surface-muted)}.coa-tree li:last-child>.coa-tree__row{border-bottom:none}.coa-tree__toggle,.coa-tree__toggle-spacer{flex:0 0 20px;width:20px;height:20px}.coa-tree__toggle{color:var(--color-muted);cursor:pointer;border-radius:var(--radius-2xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.coa-tree__toggle:hover{background:var(--color-surface-muted);color:var(--color-text)}.coa-tree__code{font-variant-numeric:tabular-nums;letter-spacing:.02em;min-width:6.5ch;font-weight:600}.coa-tree__names{flex:220px;align-items:baseline;gap:.4rem;min-width:0;display:flex}.coa-tree__name-id{font-weight:600}.coa-tree__name-en{color:var(--color-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.coa-tree__type-badge{text-transform:none}.coa-tree__actions{gap:.4rem;margin-left:auto;display:flex}.coa-tree__empty{text-align:center;color:var(--color-muted);padding:2.25rem 1rem}.coa-tree__empty strong{color:var(--color-text-soft);font-size:var(--text-md)}.coa-picker{align-items:center;width:100%;min-width:0;display:flex;position:relative}.coa-picker__trigger{width:100%;min-width:110px;min-height:var(--control-height);text-align:left;border:1px solid var(--color-control-border);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-base);background:var(--color-surface);color:var(--color-text);cursor:pointer;padding:.45rem 2.1rem .45rem .7rem}.field__control .coa-picker__trigger{font-size:var(--text-md);padding:var(--control-pad-y) 2.1rem var(--control-pad-y) var(--control-pad-x);box-shadow:var(--shadow-xs)}.coa-picker__trigger:disabled{background-color:var(--color-surface-sunken);border-color:var(--color-border);color:var(--color-placeholder);cursor:not-allowed;border-style:dashed}.coa-picker__trigger:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.coa-picker__trigger-value{white-space:nowrap;align-items:baseline;gap:.4rem;min-width:0;display:flex;overflow:hidden}.coa-picker__trigger-code{font-variant-numeric:tabular-nums;flex:none;font-weight:600}.coa-picker__trigger-name{text-overflow:ellipsis;min-width:0;color:var(--color-muted);font-size:var(--text-sm);flex:1;overflow:hidden}.coa-picker__placeholder{text-overflow:ellipsis;white-space:nowrap;color:var(--color-placeholder);display:block;overflow:hidden}.coa-picker__chevron,.coa-picker__clear{pointer-events:none;color:var(--color-muted);position:absolute;right:.6rem}.coa-picker__clear{pointer-events:auto;cursor:pointer;font-size:var(--text-md);border-radius:var(--radius-full);background:0 0;border:none;padding:.1rem .3rem;line-height:1}.coa-picker__clear:hover{background:var(--color-surface-muted);color:var(--color-text)}.coa-picker__toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.coa-picker__toolbar .list-toolbar__search{flex:220px}.coa-tree-picker__list{max-height:320px;margin:0;padding:.3rem;list-style:none;overflow-y:auto}.coa-tree-picker__children{margin:0;padding:0;list-style:none}.coa-tree-picker__row{align-items:center;gap:.35rem;padding:.15rem 0;display:flex}.coa-tree-picker__row.is-selected .coa-tree-picker__option{background:var(--color-primary-soft);color:var(--color-primary-dark)}.coa-tree-picker__toggle,.coa-tree-picker__toggle-spacer{flex:0 0 18px;width:18px;height:18px}.coa-tree-picker__toggle{color:var(--color-muted);cursor:pointer;border-radius:var(--radius-2xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.coa-tree-picker__toggle:hover{background:var(--color-surface-muted)}.coa-tree-picker__option{text-align:left;border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text);background:0 0;border:none;flex:1;align-items:baseline;gap:.5rem;min-width:0;padding:.35rem .5rem;display:flex}.coa-tree-picker__option:hover{background:var(--color-surface-muted)}.coa-tree-picker__option--root{color:var(--color-text-soft);font-style:italic}.coa-tree-picker__code{font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--text-base);white-space:nowrap}.coa-tree-picker__name{color:var(--color-text-soft);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.employee-subordinates,.attachment-panel{flex-direction:column;gap:.75rem;display:flex}.attachment-panel__header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.attachment-panel__header h2{font-size:var(--text-md);margin:0}.attachment-panel__file-input{display:none}.attachment-panel__dropzone{border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-sm);text-align:center;color:var(--color-muted);background:var(--color-surface-muted);font-size:var(--text-sm);padding:1.5rem 1.25rem;transition:border-color .15s,background-color .15s}.attachment-panel__dropzone--active{border-color:var(--color-primary);background:var(--color-primary-soft)}.attachment-panel__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.attachment-panel__row{border-bottom:1px solid var(--color-border);align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.attachment-panel__row:last-child{border-bottom:none}.attachment-panel__row--uploading{flex-wrap:wrap}.attachment-panel__row-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-base);flex:1;overflow:hidden}.attachment-panel__row-meta{color:var(--color-text-soft);font-size:var(--text-sm);white-space:nowrap}.attachment-panel__row-actions{flex-shrink:0;gap:.4rem;display:flex}.attachment-panel__row--uploading .progress-bar{flex:100%;min-width:160px}.attachment-panel__empty{color:var(--color-text-soft);font-size:var(--text-base);text-align:center;margin:0;padding:.75rem 0}.item-category__owner-cell{align-items:center;gap:.4rem;display:inline-flex}.file-picker{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.file-picker__input{display:none}.file-picker__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-base);color:var(--color-text-soft);flex:1;overflow:hidden}.coa-import__step{margin-bottom:1.1rem}.coa-import__step:last-child{margin-bottom:0}.coa-import__step-title{font-size:var(--text-sm);color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem;font-weight:600}.coa-import__summary{grid-template-columns:repeat(auto-fit,minmax(min(110px,100%),1fr));gap:.6rem;margin-bottom:.9rem;display:grid}.coa-import__summary-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);padding:.6rem .75rem}.coa-import__summary-value{font-size:var(--text-lg);color:var(--color-text);font-weight:700;display:block}.coa-import__summary-label{font-size:var(--text-xs);color:var(--color-muted);display:block}.stock-movement__date-field{font-size:var(--text-xs);color:var(--color-text-soft);flex-direction:column;gap:.25rem;display:inline-flex}.stock-movement__date-field input{min-height:var(--control-height);border:1px solid var(--color-control-border);border-radius:var(--radius-sm);font:inherit;background:var(--color-surface);color:var(--color-text);padding:.4rem .6rem}.stock-movement__date-field input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.fiscal-period-tabs{margin-bottom:.75rem}.fiscal-period-preview{max-height:220px;margin:.4rem 0 0;padding-left:1.1rem;list-style:outside;overflow-y:auto}.fiscal-period-preview li{padding:.15rem 0}.approval-timeline{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.approval-timeline__step{gap:.75rem;padding-left:.1rem;display:flex;position:relative}.approval-timeline__step:not(:last-child):before{content:"";background:var(--color-border);width:1px;position:absolute;top:1.5rem;bottom:-1rem;left:.6rem}.approval-timeline__step-icon{border-radius:var(--radius-full);background:var(--color-surface-sunken);width:1.25rem;height:1.25rem;color:var(--color-muted);box-shadow:0 0 0 3px var(--color-surface);z-index:var(--z-raised);flex:none;justify-content:center;align-items:center;margin-top:.1rem;display:flex}.approval-timeline__step-icon--approved,.approval-timeline__step-icon--delegated{background:var(--color-success-bg);color:var(--color-success-text)}.approval-timeline__step-icon--rejected{background:var(--color-danger-bg);color:var(--color-danger-text)}.approval-timeline__step-icon--skipped{background:var(--color-surface-muted)}.approval-timeline__step-body{flex:1;min-width:0}.approval-timeline__step-header{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.approval-timeline__step-sequence{color:var(--color-muted);font-variant-numeric:tabular-nums}.approval-timeline__step-name{font-weight:600}.approval-timeline__approvers{font-size:var(--text-sm);color:var(--color-text-soft);flex-wrap:wrap;gap:.5rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.approval-timeline__approver{align-items:center;gap:.25rem;display:inline-flex}.approval-timeline__approver-icon{color:var(--color-success-text)}.approval-timeline__meta{font-size:var(--text-sm);color:var(--color-text-soft);margin:.35rem 0 0}.approval-timeline__note{font-size:var(--text-base);color:var(--color-text);margin:.25rem 0 0}.approval-timeline__skip-reason{font-size:var(--text-sm);color:var(--color-warning-text);margin:.25rem 0 0;font-style:italic}.approval-timeline__empty{color:var(--color-muted);font-size:var(--text-base)}.record-history{flex-direction:column;gap:.75rem;display:flex}.record-history__header h2{font-size:var(--text-md);margin:0 0 .25rem}.record-history__list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.record-history__entry{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-xs);padding:.75rem .9rem}.record-history__entry-header{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.record-history__event-name{font-size:var(--text-sm);color:var(--color-text-soft)}.record-history__meta{font-size:var(--text-sm);color:var(--color-muted);margin-left:auto}.record-history__changes{margin-top:.25rem}.record-history__empty{color:var(--color-muted);font-size:var(--text-base)}.summary-list{flex-direction:column;gap:.35rem;margin:1rem 0 0;display:flex}.summary-list>div{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.summary-list dt{color:var(--color-muted);font-size:var(--text-base)}.summary-list dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.summary-list .is-negative{color:var(--color-danger-text)}@media (width<=768px){.list-toolbar{gap:.5rem}.list-toolbar__search{flex:100%;min-width:0}.list-toolbar__spacer{display:none}.list-toolbar__filter,.list-toolbar>.button{flex:auto}.data-table{font-size:var(--text-sm)}.data-table th{padding:var(--grid-head-pad-y,.5rem) .6rem}.data-table td{padding:var(--grid-row-pad-y,.45rem) .6rem}.data-table__secondary{max-width:24ch}.pagination{flex-direction:column;align-items:stretch;gap:.75rem}.pagination__left{justify-content:space-between;gap:.5rem}.pagination__nav{justify-content:center}.modal-overlay{align-items:end;padding:0}.modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:none;width:100%;max-width:100%;max-height:92dvh}.modal__header{z-index:var(--z-raised);background:var(--color-surface);position:sticky;top:0}.modal__footer{border-radius:0;flex-wrap:wrap}.modal__footer-group{flex:100%;justify-content:flex-end}.tab-row{scrollbar-width:none;overflow-x:auto}.tab-row::-webkit-scrollbar{display:none}.tab-row__tab{white-space:nowrap}.attachment-panel__row{flex-wrap:wrap}.attachment-panel__row-actions{margin-left:auto}.coa-picker__popover,.coa-tree-picker__list{max-height:50dvh}.approval-timeline__step-header,.record-history__entry-header{flex-wrap:wrap}}@media (width<=480px){.modal__footer{flex-direction:column-reverse;align-items:stretch}.modal__footer-group{flex-direction:column-reverse;align-items:stretch;margin-left:0}.modal__footer .button{width:100%}.modal__body{padding:1rem}.modal__header{padding:.9rem 1rem .75rem}.pagination__pages{flex-wrap:wrap;justify-content:center}.data-table__actions .button__label{display:none}}@media (pointer:coarse){.pagination__page-btn{min-width:2.4rem;height:2.4rem}.button--small{min-height:36px}.tab-row__tab{min-height:44px}.checkbox-field input,.radio-field input[type=radio]{width:20px;height:20px}}.empty-state{text-align:center;max-width:56ch;color:var(--color-muted);flex-direction:column;align-items:center;gap:.35rem;margin:0 auto;padding:.5rem 1rem;display:flex}.empty-state__icon{background:var(--color-surface-sunken);width:3.5rem;height:3.5rem;color:var(--color-muted);border-radius:50%;place-items:center;margin-bottom:.4rem;display:inline-grid}.empty-state--filtered .empty-state__icon{background:var(--color-primary-soft);color:var(--color-primary)}.empty-state--prerequisite .empty-state__icon{background:var(--color-warning-bg);color:var(--color-warning-strong)}.empty-state__title{color:var(--color-text);font-size:var(--text-md);margin:0;font-weight:600}.empty-state__description{font-size:var(--text-base);margin:0;line-height:1.5}.empty-state__actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.6rem;display:flex}.empty-state__note{font-size:var(--text-sm);margin:0;font-style:italic}.empty-state--compact{gap:.2rem;padding:.75rem .5rem}.empty-state--compact .empty-state__icon{width:2.5rem;height:2.5rem;margin-bottom:.25rem}.empty-state--compact .empty-state__title{font-size:var(--text-base)}.empty-state--compact .empty-state__description{font-size:var(--text-sm)}.empty-state--compact .empty-state__actions{margin-top:.4rem}.card>.empty-state:only-child{padding:2rem 1rem}.modal__readonly{border:0;min-width:0;margin:0;padding:0}.modal__readonly-notice{margin:0 0 var(--space-3);border-radius:var(--radius-xs);background:var(--color-surface-muted);font-size:var(--text-base);padding:8px 12px}.loading-region{animation:.2s ease-out .15s both skeleton-appear}@keyframes skeleton-appear{0%{opacity:0}to{opacity:1}}.skeleton{border-radius:var(--radius-xs);background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--color-surface) 65%, transparent) 50%, transparent 100%) var(--color-surface-sunken);background-repeat:no-repeat;background-size:200% 100%;max-width:100%;height:.85rem;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}@keyframes skeleton-shimmer{0%{background-position:150% 0}to{background-position:-50% 0}}.skeleton--block{border-radius:var(--radius-sm)}.skeleton--pill{border-radius:var(--radius-full)}.skeleton--circle{border-radius:50%}.skeleton-text{gap:.6rem;padding:.25rem 0;display:grid}.skeleton-text>div{gap:.6rem;display:grid}.skeleton-row{animation:.2s ease-out .15s both skeleton-appear}.data-table tbody tr.data-table__loading-status td{border:0;height:0;padding:0}.data-table tbody tr.skeleton-row:hover td{background:inherit}.table-skeleton table{width:100%}.form-skeleton__field{gap:.45rem;display:grid}.list-skeleton>div{gap:.75rem;padding:.6rem .75rem;display:grid}.document-skeleton>div{gap:1rem;display:grid}.document-skeleton__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.document-skeleton__title,.document-skeleton__actions{align-items:center;gap:.6rem;display:flex}.document-skeleton__card{gap:1rem;display:grid}.document-skeleton__table{width:100%}.page-skeleton>div{gap:1.25rem;display:grid}.page-skeleton__header{gap:.6rem;display:grid}.page-skeleton__filters{flex-wrap:wrap;gap:.75rem;display:flex}.page-skeleton__table{padding:0;overflow:hidden}.page-skeleton__table table{width:100%}.stat-tile__value .skeleton{width:7rem;height:1.5rem;margin-top:.2rem}.data-grid.is-refreshing .data-table tbody{opacity:.55;transition:opacity .15s .15s}.data-grid__progress{z-index:var(--z-progress);border-radius:var(--radius-sm) var(--radius-sm) 0 0;pointer-events:none;height:3px;margin-bottom:-3px;position:relative;overflow:hidden}.data-grid__progress:before{content:"";background:var(--color-primary);border-radius:var(--radius-full);width:35%;animation:1.1s ease-in-out infinite progress-indeterminate;position:absolute;inset:0 auto 0 0}@keyframes progress-indeterminate{0%{transform:translate(-100%)}to{transform:translate(300%)}}.spinner{vertical-align:-.15em;color:var(--color-primary);border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;animation:.7s linear infinite spin;display:inline-block}.spinner--sm{width:.9rem;height:.9rem}.spinner--md{width:1.35rem;height:1.35rem}@media (prefers-reduced-motion:reduce){.loading-region,.skeleton-row{animation:none}.skeleton{background-image:none;animation:none}.data-grid__progress:before{opacity:.6;width:100%;animation:none}.spinner{animation-duration:2s}}
