:root{font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.4;color:#212529;background:#f0f2f5;--blue:#0d6efd;--border:#ced4da;--muted:#65707b;--light:#f6f7f9;--row-fill:#fff;--row-text:#212529}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,input,select,textarea,dialog{border-radius:0}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button,input,select,textarea{outline-offset:2px}a{color:#0b5ed7}h1,h2,p{margin:0}h1{font-size:18px;line-height:1.3}h2{font-size:17px;line-height:1.3}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid #0d6efd;outline-offset:2px}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:8px;top:-80px;background:#fff;padding:10px;z-index:100}.skip-link:focus{top:8px}
.app-header{height:48px;background:#fff;border-bottom:1px solid #c9d0d7;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 16px;flex:0 0 auto}.app-name{text-decoration:none;color:#244a76;font-size:16px;font-weight:700}.account-menu{display:flex;align-items:center;gap:14px;font-size:13px}.account-menu form{margin:0}.account-name{color:#56616d;max-width:220px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:4px 10px;border:1px solid #aab4be;color:#3b4753;background:#fff;text-decoration:none;white-space:nowrap;line-height:1.4;font-size:13px}.button:hover:not(:disabled){background:#e9edf1;border-color:#8793a0}.button-primary{background:var(--blue);border-color:var(--blue);color:#fff}.button-primary:hover:not(:disabled){background:#0b5ed7;border-color:#0a58ca}.button-header{min-height:27px;font-size:12px}.icon-button{border:0;background:transparent;color:#626c76;padding:0;min-width:30px;min-height:30px;font-size:25px;line-height:1}.icon-button:hover{background:#e7ebef;color:#212529}input,select,textarea{border:1px solid #b8c1ca;color:#212529;background:#fff;padding:5px 8px;min-height:32px}input::placeholder,textarea::placeholder{color:#79838d}input[type=checkbox]{min-height:0;width:15px;height:15px;accent-color:var(--blue);flex:none}input[type=search]{appearance:none}
.registry-page{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.registry-main{padding:12px;min-height:0;flex:1;display:flex;flex-direction:column}.registry{min-height:0;flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);box-shadow:0 1px 3px #25374a0a}.registry-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#f8f9fa;border-bottom:1px solid var(--border);flex:none;z-index:4}.registry-toolbar h1{white-space:nowrap}.toolbar-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.search-form{display:flex;align-items:stretch;margin:0}.search-form input{width:215px;min-width:130px;font-size:13px;min-height:30px;border-right:0}.search-form .button{min-height:30px}.active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:7px 12px;border-bottom:1px solid var(--border);background:#f8fbff;font-size:12px;flex:none}.filter-chip{border:1px solid #bed5f8;color:#174d92;background:#e8f1ff;display:inline-flex;align-items:center;gap:8px;padding:2px 7px;max-width:400px}.filter-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chip:hover{background:#dae9ff}.filter-chip-remove{font-size:17px;line-height:1}.registry-body{flex:1;position:relative;min-height:150px;overflow:hidden}.table-scroll{height:100%;width:100%;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.orders-table{border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:100%;font-size:12px}.orders-table th,.orders-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:5px 8px;height:34px;vertical-align:middle;text-align:left}.orders-table th{position:sticky;top:0;background:#f4f6f8;color:#334455;z-index:3;font-weight:600;height:48px;padding:4px 8px}.orders-table th:first-child{position:sticky;left:0;z-index:5}.orders-table td{background:var(--row-fill);color:var(--row-text);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.orders-table td:first-child{position:sticky;left:0;z-index:2;box-shadow:1px 0 0 var(--border);font-weight:600}.orders-table tbody tr:hover td{background-image:linear-gradient(#00000008,#00000008)}.orders-table tbody tr:focus-within td{background-image:linear-gradient(#0d6efd13,#0d6efd13)}.orders-table td.cell-money{text-align:right;font-variant-numeric:tabular-nums}.orders-table td.cell-date,.orders-table td.cell-number{text-align:center;font-variant-numeric:tabular-nums}.column-heading{display:flex;align-items:center;gap:3px;min-width:0}.sort-button{border:0;background:transparent;color:#28527e;display:flex;align-items:center;gap:4px;padding:2px 0;text-align:left;flex:1;min-width:0;font-size:12px;font-weight:600}.sort-button span:first-child{overflow:hidden;white-space:normal;line-height:1.2}.sort-indicator{font-size:10px;flex:none;color:#0d6efd}.column-filter-button{border:1px solid #c5cbd2;color:#6b7480;background:#fff;width:22px;height:23px;padding:3px;flex:none;display:inline-flex;align-items:center;justify-content:center}.column-filter-button:hover{background:#e8edf3}.column-filter-button.is-active{color:#fff;border-color:#0d6efd;background:#0d6efd}.column-filter-button svg{width:12px;height:12px;pointer-events:none}.column-resizer{position:absolute;top:0;right:-2px;height:100%;width:6px;z-index:7;cursor:col-resize;touch-action:none}.column-resizer:hover,.column-resizer:focus-visible{background:#0d6efd77}.is-resizing,.is-resizing *{cursor:col-resize!important;user-select:none!important}.order-link{display:inline;border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:2px;padding:0;font:inherit;font-weight:700}.order-link:hover{color:#0b5ed7}.empty-value{color:#7c858d}
.registry-state{position:absolute;top:49px;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center;gap:10px;background:#fff;overflow:auto}.registry-state strong{font-size:16px}.registry-state p{max-width:550px;color:var(--muted)}.loading-overlay{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;background:#ffffffda;color:#475769;font-weight:600}.spinner{width:25px;height:25px;border:3px solid #d4e3f8;border-top-color:#0d6efd;border-radius:50%;display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:1.8s}}.notice{border:1px solid;padding:11px 13px;font-size:13px}.notice-error{color:#842029;background:#fff0f1;border-color:#efbdc2}.registry-error{display:flex;align-items:center;justify-content:space-between;gap:15px;flex:none;border-width:0 0 1px}.registry-error .button{background:#fff9fa;color:#842029;border-color:#dc9ba3}
.registry-footer{flex:none;position:sticky;bottom:0;z-index:4;background:#f8f9fa;border-top:1px solid var(--border);font-size:12px}.footer-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:7px 12px}.page-meta{color:#69737d;flex:1}.pagination{display:flex;align-items:center;justify-content:center;gap:10px}.pagination .button{font-size:20px;width:30px;height:29px;min-height:29px;padding:0}.pagination span{min-width:56px;text-align:center;font-variant-numeric:tabular-nums}.per-page-label{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1}.per-page-label select{font-size:12px;min-height:29px;padding:3px 6px}.totals{display:flex;align-items:center;justify-content:flex-end;gap:22px;border-top:1px solid #dfe3e7;padding:7px 12px;background:#f0f3f6;color:#596571;flex-wrap:wrap}.totals strong{color:#25384d;font-weight:700;margin-left:7px;font-variant-numeric:tabular-nums;white-space:nowrap}.totals-label{margin-right:auto}
dialog{padding:0;border:1px solid #adb6c1;color:#212529;box-shadow:0 12px 60px #172c4840;max-height:calc(100dvh - 32px);background:#fff;overflow:auto}dialog::backdrop{background:#172a426e}.small-dialog{width:390px;max-width:calc(100vw - 24px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 16px;border-bottom:1px solid var(--border);background:#f4f6f8;position:sticky;top:0;z-index:3}.dialog-body{padding:16px;max-height:65dvh;overflow:auto}.dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-top:1px solid var(--border);background:#f8f9fa;position:sticky;bottom:0;z-index:3}.dialog-hint{color:var(--muted);font-size:12px;line-height:1.5}.dialog-subtitle{font-size:12px;color:#68747f;margin-top:3px;max-width:70vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field{display:flex;flex-direction:column;gap:6px;font-size:13px}.field+ .field{margin-top:12px}.range-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.range-fields input{width:100%;min-width:0}.range-fields .field+.field{margin-top:0}.filter-options{border:1px solid var(--border);padding:5px;max-height:300px;overflow:auto;margin-top:10px}.filter-option{display:flex;align-items:center;gap:8px;cursor:pointer;padding:5px;font-size:13px}.filter-option:hover{background:#f2f5f8}.filter-options-empty{padding:10px;color:#65707b;font-size:13px}.column-settings{margin-top:12px;border:1px solid var(--border)}.column-setting{display:flex;align-items:center;gap:5px;padding:5px 7px;border-bottom:1px solid #e0e4e8;min-height:36px}.column-setting:last-child{border-bottom:0}.column-setting label{display:flex;align-items:center;gap:8px;flex:1;min-width:0;font-size:13px}.column-setting label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-move{min-width:26px;min-height:25px;padding:0;font-size:16px}.column-pinned{font-size:11px;color:#728090;padding:0 4px}.order-dialog{width:1280px;max-width:calc(100vw - 32px)}.order-loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:230px}.order-dialog>.notice{margin:16px}.order-tabs{display:flex;border-bottom:1px solid var(--border);padding:10px 16px 0;gap:4px;overflow:auto;background:#fff;position:sticky;top:63px;z-index:2}.order-tab{padding:8px 12px;border:1px solid transparent;border-bottom:0;background:transparent;white-space:nowrap;color:#435d78;font-size:13px}.order-tab[aria-selected=true]{border-color:var(--border);background:#edf4ff;color:#0b5ed7;font-weight:600}.order-tab:hover{background:#f0f3f7}.order-panels{padding:18px;min-height:320px;max-height:calc(100dvh - 230px);overflow:auto}.order-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px 22px;margin:0}.order-field dt{font-size:12px;color:#657383;margin-bottom:4px}.order-field dd{margin:0;font-size:14px;overflow-wrap:anywhere}.order-note{grid-column:1/-1;border-top:1px solid #e0e5ea;padding-top:13px;white-space:pre-wrap}.detail-table-wrap{overflow:auto}.detail-table{width:100%;border-collapse:collapse;font-size:13px}.detail-table th,.detail-table td{text-align:left;border:1px solid var(--border);padding:7px 9px;vertical-align:top;max-width:350px;overflow-wrap:anywhere;white-space:pre-wrap}.detail-table th{background:#f4f6f8;font-size:12px;color:#405469;white-space:nowrap}.detail-table .cell-money{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.detail-empty{padding:45px 15px;text-align:center;color:#6b7680}.detail-unavailable{color:#842029;background:#fff0f1;padding:12px;border:1px solid #efbdc2}.detail-count{margin-left:6px;color:#6d7b89;font-size:11px}
.editor-dialog{width:740px;max-width:calc(100vw - 24px)}.editor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.editor-fields .field+.field{margin-top:0}.editor-fields .field{min-width:0}.editor-fields input,.editor-fields select,.editor-fields textarea{width:100%;min-width:0}.editor-fields textarea{min-height:90px;resize:vertical}.editor-field-wide{grid-column:1/-1}.editor-fields .field-checkbox{flex-direction:row;align-items:center;gap:8px}.editor-fields .field-checkbox input{width:15px}.editor-description{margin-bottom:16px;white-space:pre-wrap}.editor-dialog .notice{margin-bottom:15px}.field-error{color:#a62f39;font-size:12px}.field [aria-invalid=true]{border-color:#c64450;background:#fff9f9}.panel-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin-bottom:15px}.detail-table .cell-actions{white-space:nowrap;width:90px}.button-danger{border-color:#c43e4c;color:#a42533}.button-danger:hover:not(:disabled){background:#fff0f1;border-color:#9a2030}.required-mark{color:#af2635;margin-left:3px}.login-page{min-height:100dvh}.login-main{display:flex;justify-content:center;padding:90px 20px 30px}.login-card{width:380px;max-width:100%;background:#fff;border:1px solid var(--border);box-shadow:0 2px 6px #25374a0d}.panel-heading{padding:15px 20px;background:#f6f8fa;border-bottom:1px solid var(--border)}.login-form{padding:22px 20px;display:flex;flex-direction:column;gap:18px}.login-form .field+.field{margin-top:0}.login-form input{min-height:36px}.login-submit{min-height:36px;margin-top:3px}
@media(max-width:1050px){.registry-toolbar{align-items:flex-start}.toolbar-actions{gap:6px}.search-form input{width:175px}.order-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.app-header{padding:0 10px;height:43px}.app-name{font-size:14px}.account-menu{gap:8px}.account-name{max-width:110px;font-size:12px}.registry-main{padding:7px}.registry-toolbar{padding:9px;flex-direction:column;gap:9px}.registry-toolbar h1{font-size:17px}.toolbar-actions{justify-content:flex-start;width:100%}.search-form{flex:1;min-width:200px}.search-form input{width:100%;min-width:110px;flex:1}.footer-pagination{padding:7px 9px;gap:8px;flex-wrap:wrap}.page-meta{flex:1 0 100%;font-size:11px}.pagination{order:2}.per-page-label{order:3}.totals{padding:6px 9px;gap:5px 14px;justify-content:flex-start;font-size:11px}.totals-label{width:100%;margin:0}.totals strong{margin-left:4px}.order-dialog{max-width:calc(100vw - 14px);max-height:calc(100dvh - 14px)}.dialog-header{padding:10px 12px}.order-tabs{padding:7px 10px 0}.order-tab{padding:8px;font-size:12px}.order-panels{padding:13px;max-height:calc(100dvh - 200px)}.order-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.dialog-footer{padding:9px 12px}.registry-state{padding:20px}.registry-state strong{font-size:14px}.registry-state p{font-size:13px}.registry-error{padding:9px}.active-filters{padding:6px 9px}.login-main{padding-top:45px}}
.pagination{gap:4px}.pagination-pages{display:flex;gap:3px}.pagination-pages .button{font-size:12px}.pagination-pages .button[aria-current=page]{color:#fff;background:#0d6efd;border-color:#0d6efd;opacity:1}.pagination>span.visually-hidden{min-width:0}.detail-table .cell-actions .button+.button{margin-left:5px}@media(max-width:480px){.pagination{gap:3px}.pagination .button{width:27px}.footer-pagination .per-page-label{flex:none;margin-left:auto}.editor-fields{grid-template-columns:1fr}.editor-field-wide{grid-column:auto}}
.range-fields{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px}.range-separator{align-self:end;line-height:32px;color:#7d8792}
