.tx-form input[type=checkbox],.tx-form input[type=radio]{width:18px;height:18px;min-height:0;padding:0;margin:0;flex:none}.tx-form input[type=checkbox]{border-radius:5px}.tx-form input[type=radio]{border-radius:50%}.tx-form input[type=checkbox]:not(:checked),.tx-form input[type=radio]:not(:checked){border:1.5px solid var(--border-strong);background:var(--surface)}.tx-form input[type=checkbox]:checked,.tx-form input[type=radio]:checked{border-width:1.5px}.tx-form input[type=checkbox][role=switch]{width:38px;height:22px;border-radius:var(--radius-pill);border:0}.tx-form input[type=checkbox][role=switch]:not(:checked){background:var(--border-strong)}.tx-form label.check,.tx-form label.role-cap,.tx-form label.choice,.tx-form label.switch-row{display:flex;margin:0;font-weight:500}.tx-form .field-row>label{margin:0;font-size:var(--fs-sm)}.tx-form select:not([multiple]):not([size]){padding-right:36px}.tx-form fieldset{min-width:0}.tx-form legend{padding:0}.tx-form>.notice,.panel-body>.notice{margin:0}.panel-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 20px;margin:4px 0 14px}.panel-head>div:first-child{min-width:0}.panel-head h3{font-size:var(--fs-lg);font-weight:650;letter-spacing:-.01em;color:var(--text)}.panel-head p{margin-top:3px;max-width:720px;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5}.panel-head+.panel-head,.grid+.panel-head,.card+.panel-head,.note+.panel-head,.settings-stack+.panel-head,.momo-policy+.panel-head{margin-top:28px}.card-head h3{color:var(--text)}.card-head+.notice,.card-head+.note{margin-top:0}.admin-card{display:grid;gap:14px;align-content:start}.admin-card>*{min-width:0}.admin-card .card-head{margin-bottom:0}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.admin-card>.form-actions{margin-top:2px}.admin-card>.sub-section{margin-top:6px}.form-actions .muted,.form-actions .hint{font-size:var(--fs-xs)}.form-actions.flush{margin-top:4px;padding-top:0;border-top:0}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px}.form-row.tight{gap:10px}.sub-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.sub-section>h4{font-size:var(--fs-md);font-weight:650;color:var(--text)}.sub-section>.section-note{margin-top:2px}.help{margin:0;font-size:var(--fs-xs);line-height:1.5;color:var(--text-muted)}.help.soft{font-size:var(--fs-sm);color:var(--text-soft)}.switch-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease)}.switch-row:hover{border-color:var(--border-strong)}.switch-row:has(input:disabled){cursor:not-allowed;opacity:.7}.switch-row .sw-text{min-width:0;display:grid;gap:2px;font-size:var(--fs-sm);color:var(--text);line-height:1.45}.switch-row .sw-text b{font-weight:600}.switch-row .sw-text small{font-size:var(--fs-xs);color:var(--text-muted);line-height:1.45}.switch-row input[role=switch]{margin-top:1px}.switch-row:has(input:focus-visible){box-shadow:var(--ring)}.choice-list{display:grid;gap:10px}.choice{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;font-size:var(--fs-sm);color:var(--text);line-height:1.45;transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease)}.choice:hover{border-color:var(--border-strong)}.choice input{margin-top:1px}.choice small{display:block;margin-top:2px;font-size:var(--fs-xs);color:var(--text-muted)}.choice b{font-weight:600}.choice:has(input:checked){border-color:var(--brand-soft-border);background:var(--brand-soft)}.choice:has(input:focus-visible){box-shadow:var(--ring)}.mini-field{display:grid;gap:4px;font-size:var(--fs-xs);font-weight:600;color:var(--text-muted);min-width:0}.mini-field input,.mini-field select{font-weight:500}.count-line{margin:0;font-size:var(--fs-xs);color:var(--text-muted)}.admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}.admin-toolbar .select{flex:0 1 190px;min-width:150px}.admin-toolbar .count-line{margin-left:auto}@media(max-width:600px){.admin-toolbar .search-field,.admin-toolbar .select{flex:1 1 100%;max-width:none;min-width:0}.admin-toolbar .count-line{margin-left:0}}.user-cell{display:flex;align-items:center;gap:12px;min-width:0}.user-cell .user-avatar-sm{flex:none;width:36px;height:36px}.user-cell .who{min-width:0;text-align:left}.user-cell .who b{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;color:var(--text)}.user-cell .who small{display:block;margin-top:1px;font-size:var(--fs-xs);font-weight:400;color:var(--text-muted);overflow-wrap:anywhere}.users-table tr.is-inactive>td:not(.actions),.users-table tr.is-inactive>th{color:var(--text-muted)}.users-table tr.is-inactive .user-avatar-sm{filter:grayscale(1);opacity:.65}.users-table .perm-list{flex-wrap:nowrap}.users-table td.actions,.users-table td.nowrap{white-space:nowrap}@media(min-width:641px){.users-table .row-actions{flex-wrap:nowrap}}@media(max-width:640px){.users-table .table-wrap.stack tbody th.row-head{justify-content:flex-start;text-align:left}.users-table .table-wrap.stack tbody th.row-head:before{display:none}.users-table .table-wrap.stack tbody td .perm-list{flex-wrap:wrap;justify-content:flex-end}}.perm-tag{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--radius-pill);border:1px solid var(--indigo-edge);background:var(--indigo-soft);color:var(--indigo-ink);font-size:var(--fs-xs);font-weight:600;line-height:1.6;white-space:nowrap}.perm-tag.on{border-color:var(--green-edge);background:var(--green-soft);color:var(--green-ink)}.perm-tag.all{border-color:var(--brand-soft-border);background:var(--brand-soft);color:var(--brand-ink)}.perm-tag.off{border-color:var(--slate-edge);background:var(--slate-soft);color:var(--slate-ink);text-decoration:line-through;opacity:1;font-weight:500}.role-grid{column-width:340px;column-gap:16px}.role-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:18px;break-inside:avoid;margin-bottom:16px;transition:box-shadow var(--t) var(--ease),border-color var(--t) var(--ease)}.role-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.role-card-head{display:flex;align-items:flex-start;gap:12px}.role-card-head>div{min-width:0;flex:1 1 auto}.role-icon{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--indigo-edge);background:var(--indigo-soft);color:var(--indigo-ink)}.role-card.is-custom .role-icon{border-color:var(--purple-edge);background:var(--purple-soft);color:var(--purple-ink)}.role-card h4{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;font-size:var(--fs-md);font-weight:650;color:var(--text)}.role-card .rc-desc{margin:4px 0 0;font-size:var(--fs-sm);line-height:1.5;color:var(--text-soft)}.role-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:var(--fs-xs);color:var(--text-muted)}.role-meta b{color:var(--text);font-weight:650}.role-card .row-actions{margin-left:auto;flex:none}.role-perms{margin:0;display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.role-perms>div{display:grid;grid-template-columns:minmax(84px,112px) minmax(0,1fr);gap:4px 12px;align-items:baseline}.role-perms dt{font-size:var(--fs-xs);font-weight:650;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;line-height:1.8}.role-perms dd{margin:0}.role-empty{margin:0;padding-top:12px;border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-muted)}@media(max-width:480px){.role-perms>div{grid-template-columns:minmax(0,1fr);gap:2px}}.user-flags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.user-flags .check{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-weight:500;transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease)}.user-flags .check:hover{border-color:var(--border-strong)}.user-flags .check:has(input:checked){border-color:var(--brand-soft-border);background:var(--brand-soft)}.user-flags .check:has(input:disabled){opacity:.65;cursor:not-allowed}.user-flags .check:has(input:focus-visible){box-shadow:var(--ring)}@media(max-width:480px){.user-flags{grid-template-columns:minmax(0,1fr)}}.flag-legend{display:block;margin-bottom:2px;font-size:var(--fs-sm);font-weight:600;color:var(--text)}fieldset.flag-set{border:0;padding:0;margin:0;min-width:0}.role-form .role-caps{border:0;padding:0;margin:0;min-width:0;display:grid;gap:12px}.role-form .role-caps>legend{padding:0;margin-bottom:8px;font-size:var(--fs-md);font-weight:650;color:var(--text)}.role-form .role-caps:disabled{opacity:.75}.role-count{display:inline-flex;align-items:center;margin-left:8px;padding:1px 9px;border-radius:var(--radius-pill);background:var(--brand-soft);border:1px solid var(--brand-soft-border);color:var(--brand-ink);font-size:var(--fs-xs);font-weight:650;vertical-align:1px}.role-group{margin:0;min-width:0;padding:12px 14px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:10px}.role-group>legend{padding:0 8px;margin-left:-4px;font-size:var(--fs-xs);font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--surface-raised);border-radius:var(--radius-pill)}.role-cap{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;font-size:var(--fs-sm);color:var(--text);transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.role-cap:hover{border-color:var(--border-strong)}.role-cap input{margin-top:1px}.role-cap b{display:block;font-weight:600;line-height:1.4}.role-cap-desc{display:block;margin-top:2px;color:var(--text-muted);font-size:var(--fs-xs);line-height:1.45}.role-cap:has(input:checked){border-color:var(--brand-soft-border);background:var(--brand-soft)}.role-cap:has(input:checked) .role-cap-desc{color:var(--text-soft)}.role-cap:has(input:disabled){cursor:not-allowed;opacity:.6}.role-cap:has(input:focus-visible){box-shadow:var(--ring)}.role-hint{margin:0;font-size:var(--fs-xs);color:var(--text-muted);line-height:1.5}.settings-stack{display:grid;gap:16px;margin-top:16px}.settings-stack>*{min-width:0}.kv-list{list-style:none;margin:0;padding:0}.kv-list li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--border);font-size:var(--fs-sm)}.kv-list li:last-child{border-bottom:0}.kv-list li span{flex:none;color:var(--text-muted)}.kv-list li b{min-width:0;font-weight:600;text-align:right;overflow-wrap:anywhere;color:var(--text)}.kv-list li b.empty{color:var(--text-faint);font-weight:400}@media(max-width:480px){.kv-list li{flex-direction:column;gap:2px}.kv-list li b{text-align:left}}.backup-line{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--fs-sm)}.backup-line b{font-weight:600;overflow-wrap:anywhere}.backup-line .help{margin-top:2px}.table-wrap.narrow{max-width:640px}.settings-table input{max-width:150px;text-align:right;font-variant-numeric:tabular-nums}.settings-table td,.settings-table th{vertical-align:middle}.settings-table .open-ended{color:var(--text-muted);font-size:var(--fs-sm)}.problem-list{margin:0;padding:12px 14px 12px 30px;border:1px solid var(--neg-border);border-radius:var(--radius-sm);background:var(--neg-bg);color:var(--neg);font-size:var(--fs-sm);line-height:1.5}.problem-list li+li{margin-top:4px}.mono-box{font-family:var(--font)}.settings-stats{display:flex;flex-wrap:wrap;gap:8px}.stat-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-2);font-size:var(--fs-xs);color:var(--text-soft)}.stat-chip b{color:var(--text);font-variant-numeric:tabular-nums}.stat-chip.bad{border-color:var(--rose-edge);background:var(--rose-soft);color:var(--rose-ink)}.stat-chip.bad b{color:inherit}.setup-list{display:grid;gap:12px}.setup-list.scroll{max-height:560px;overflow-y:auto;padding-right:4px}.setup-item{display:grid;gap:10px;min-width:0;padding:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.setup-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:var(--fs-xs);color:var(--text-muted)}.setup-item-head b{font-size:var(--fs-xs);color:var(--text-soft);font-weight:650}.setup-item .row-actions{margin-top:2px}.setup-card-title{font-size:var(--fs-md);font-weight:650;color:var(--text)}.balance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px;align-items:start}.balance-card{display:grid;gap:12px;align-content:start}.balance-card h4{font-size:var(--fs-md);font-weight:650;color:var(--text)}.balance-card .sub{margin-top:2px;font-size:var(--fs-xs);color:var(--text-muted)}.balance-done{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--green-edge);border-radius:var(--radius-sm);background:var(--green-soft);color:var(--text);font-size:var(--fs-sm)}.balance-done .figures{display:flex;flex-wrap:wrap;gap:4px 16px;font-variant-numeric:tabular-nums}.balance-done .figures b{color:var(--green-ink)}.balance-done .help{color:var(--text-soft)}.rules-table{font-size:var(--fs-sm)}.rules-table .code{font-weight:650;letter-spacing:.02em}.rules-table td.center,.rules-table th.center{text-align:center}.rules-table .yes{color:var(--green-ink)}.rules-table .no{color:var(--text-faint)}.tag-row{display:flex;flex-wrap:wrap;gap:4px}.off-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.off-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:8px 0;border-bottom:1px solid var(--border);font-size:var(--fs-sm)}.off-list li:last-child{border-bottom:0}.band-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:8px;align-items:end}.band-row .btn{align-self:end}@media(max-width:480px){.band-row{grid-template-columns:repeat(3,minmax(0,1fr))}.band-row .btn{grid-column:1 / -1;justify-self:start}}.momo-policy section{display:grid;gap:10px}.momo-version{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px}.momo-version>div{padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.momo-version b{font-size:var(--fs-sm);color:var(--text)}.momo-version ul{margin:6px 0 0;padding-left:18px;font-size:var(--fs-sm);color:var(--text-soft);line-height:1.55}.momo-upcoming{display:grid;gap:8px;padding-top:12px;border-top:1px dashed var(--border-strong)}.momo-new{display:grid;gap:14px;padding-top:16px;border-top:1px solid var(--border)}.momo-new h4{font-size:var(--fs-md);font-weight:650}.type-editor{display:grid;gap:12px;align-content:start;min-width:0;margin:0;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.type-editor>legend{padding:0 6px;font-size:var(--fs-md);font-weight:650;color:var(--text)}.type-editor .switch-row{background:var(--surface)}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.setup-chip{display:inline-flex;align-items:center;gap:8px;padding:4px 4px 4px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);font-size:var(--fs-sm);font-weight:600}.setup-chip.off{background:var(--surface-3);color:var(--text-muted);text-decoration:line-through}.setup-chip button{padding:3px 10px;border:0;border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-soft);cursor:pointer;font:600 var(--fs-xs) var(--font);text-decoration:none;transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.setup-chip.off button{background:var(--surface-2)}.setup-chip button:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink)}.setup-chip button:disabled{opacity:.55;cursor:not-allowed}.setup-chip button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.inline-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center;max-width:460px}.inline-add input{flex:1 1 200px;min-width:0;width:auto}.rule-editor .cap-fields{gap:16px}.rule-editor .wide{grid-column:1 / -1}.rule-editor .cap-chips button{min-height:36px;padding:0 14px}.rule-sample{padding:12px 14px;border-radius:var(--radius-sm);background:var(--info-bg);border:1px solid var(--info-border);color:var(--text);font-size:var(--fs-sm);line-height:1.55;margin:0}.rule-history{font-size:var(--fs-sm);color:var(--text-soft);padding-top:12px;border-top:1px solid var(--border)}.rule-history b{color:var(--text)}.rule-history ul{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:6px}.rule-history li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;line-height:1.5}.approval-item{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.approval-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.approval-what{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px}.approval-what b{color:var(--text)}.approval-amount{font-weight:700;font-size:var(--fs-lg);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text)}.approval-facts{margin:0;display:grid;gap:6px;font-size:var(--fs-sm)}.approval-facts div{display:grid;grid-template-columns:84px minmax(0,1fr);gap:8px}.approval-facts dt{color:var(--text-muted);font-weight:600}.approval-facts dd{margin:0;overflow-wrap:anywhere;color:var(--text)}.approval-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:12px;border-top:1px solid var(--border)}.approval-actions .muted{flex:1 1 200px;font-size:var(--fs-xs)}.approval-status{display:flex;align-items:center;gap:8px}@media(max-width:600px){.approval-facts div{grid-template-columns:minmax(0,1fr);gap:0}}.session-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.session-list li.is-current{border-color:var(--green-edge);background:var(--green-soft)}.session-list .session-icon{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-soft)}.session-list li.is-current .session-icon{border-color:var(--green-edge);background:var(--surface);color:var(--green-ink)}.session-list .session-main{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto}.session-list .session-what strong{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;color:var(--text);font-weight:600}.session-list .badge{margin-left:0}.session-list .muted{margin-top:2px;font-size:var(--fs-xs);line-height:1.45}@media(max-width:480px){.session-list li{flex-wrap:wrap}.session-list li .btn{width:100%}}.pin-input{width:100%;min-height:60px;text-align:center;font:650 28px var(--font);letter-spacing:.4em;font-variant-numeric:tabular-nums;padding-left:calc(12px + .4em)}.pin-input:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring)}.pin-lead{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 2px;border-radius:14px;background:var(--brand-soft);border:1px solid var(--brand-soft-border);color:var(--brand-ink)}.pin-foot{text-align:center}.pick{display:grid;gap:10px}.pick-search{width:100%;min-height:44px;padding:0 12px}.pick-list{max-height:320px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.pick-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 14px;border:0;border-bottom:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;font:inherit;transition:background-color var(--t-fast) var(--ease)}.pick-item:hover:not(:disabled){background:var(--surface-2)}.pick-item:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.pick-item.active{background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand)}.pick-name,.pick-figures{display:grid;gap:2px;min-width:0}.pick-name b{font-size:var(--fs-md);font-weight:600;overflow-wrap:anywhere}.pick-name small,.pick-figures small{color:var(--text-muted);font-size:var(--fs-xs)}.pick-figures{text-align:right;flex:none}.pick-figures b{font-variant-numeric:tabular-nums}.pick-override{margin-top:2px;font-size:var(--fs-xs);line-height:1.5;align-items:flex-start}.pick-list .state{padding:22px 16px}.attach{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.attach .btn.sm{padding:0 12px}.attach label.btn input{display:none}.attach label.btn:focus-within{outline:2px solid var(--brand);outline-offset:2px}.attach-viewer{display:grid;gap:16px}.attach-viewer figure{margin:0;display:grid;gap:8px}.attach-viewer img{display:block;max-width:100%;max-height:70vh;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.attach-viewer figcaption{color:var(--text-muted);font-size:var(--fs-xs)}.attach-viewer .skeleton{width:100%;height:220px;border-radius:var(--radius-sm)}.closed-day-link{max-width:100%;white-space:normal;text-align:left;height:auto;padding-top:6px;padding-bottom:6px}.password-form{display:grid;gap:16px}.password-form>#password-change-error:empty{margin-bottom:-16px}.admin-card .table-wrap td,.admin-card .table-wrap th{padding-left:12px;padding-right:12px}.admin-card>.card-head+.table-wrap{margin-top:0}.rules-table th,.rules-table td{padding:10px 8px}.rules-table th:first-child,.rules-table td:first-child{padding-left:16px}.rules-table th:last-child,.rules-table td:last-child{padding-right:16px}.rules-table th.center{white-space:normal;min-width:76px;line-height:1.3}.rules-table .tag-row{flex-wrap:nowrap;gap:3px}.rules-table td:nth-child(2){min-width:110px}.rules-table td.muted{min-width:100px;max-width:140px}.rules-table .btn.sm{padding:0 10px}.rules-table .row-actions{gap:6px}.add-fee-card{max-width:820px}.rules-card .table-wrap{border:0;box-shadow:none;border-radius:0}@media(min-width:641px){.rules-wrap{max-height:640px;overflow-y:auto}.rules-table .row-actions{flex-wrap:nowrap}}@media(max-width:640px){.rules-card{background:transparent;border:0;box-shadow:none;overflow:visible}.rules-table td.center{text-align:right}.rules-table td.muted{max-width:none}.rules-table td:nth-child(2){min-width:0}.rules-table .tag-row{flex-wrap:wrap;justify-content:flex-end}}@media(min-width:641px){.fees-wrap{max-height:520px;overflow-y:auto}}.admin-card .card-head{flex-wrap:wrap}@media(max-width:480px){.settings-table input{max-width:92px}.settings-table td,.settings-table th{padding-left:8px;padding-right:8px}.panel-head .page-actions{width:100%}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{color-scheme:light;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--display-font: var(--font);--body-font: var(--font);--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-xs: 12px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 24px;--fs-kpi: 26px;--radius-xs: 6px;--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--radius-pill: 999px;--ring: 0 0 0 3px var(--focus-ring);--ease: cubic-bezier(.2, .7, .2, 1);--t-fast: .12s;--t: .18s;--t-slow: .26s;--sidebar-w: 264px;--sidebar-w-collapsed: 72px;--topbar-h: 64px;--z-sticky: 20;--z-sidebar: 50;--z-menu: 60;--z-modal: 90;--z-confirm: 95;--z-pin: 1200;--z-toast: 1300;--bg: #f4f6fa;--surface: #ffffff;--surface-2: #f8f9fc;--surface-3: #eff2f7;--surface-raised: #ffffff;--border: #e3e7ee;--border-strong: #cdd3de;--text: #182033;--text-soft: #4a5468;--text-muted: #586175;--text-faint: #8a93a6;--strong: #182033;--on-strong: #ffffff;--brand: #e02125;--brand-solid: #e02125;--brand-solid-hover: #c4181c;--brand-ink: #b01a1e;--brand-soft: #fdecec;--brand-soft-border: #f6c7c8;--on-brand: #ffffff;--brand-dark: var(--brand-ink);--accent: var(--brand);--accent-light: #f07a7f;--focus-ring: rgba(224, 33, 37, .22);--green-solid: #12a477;--green-soft: #e5f6ef;--green-ink: #0a7552;--green-edge: #b5e3d2;--rose-solid: #f0525a;--rose-soft: #fdecee;--rose-ink: #b4232f;--rose-edge: #f7c3c8;--indigo-solid: #5468f0;--indigo-soft: #eceffe;--indigo-ink: #3f3fc0;--indigo-edge: #c8d0fb;--purple-solid: #8b5cf6;--purple-soft: #f2ecfe;--purple-ink: #6630c4;--purple-edge: #d9c9fb;--orange-solid: #f97316;--orange-soft: #fff0e4;--orange-ink: #b5470a;--orange-edge: #fbd0ad;--amber-solid: #f2a20c;--amber-soft: #fff6db;--amber-ink: #8a5300;--amber-edge: #f5dd9a;--sky-solid: #0ea5e9;--sky-soft: #e6f5fd;--sky-ink: #0b6796;--sky-edge: #b6e2f8;--slate-solid: #7d879a;--slate-soft: #eff2f7;--slate-ink: #4a5468;--slate-edge: #d6dce6;--pos: var(--green-ink);--pos-bg: var(--green-soft);--pos-border: var(--green-edge);--neg: var(--rose-ink);--neg-bg: var(--rose-soft);--neg-border: var(--rose-edge);--warn: var(--amber-ink);--warn-bg: var(--amber-soft);--warn-border: var(--amber-edge);--info: var(--sky-ink);--info-bg: var(--sky-soft);--info-border: var(--sky-edge);--neutral-bg: var(--slate-soft);--neutral-text: var(--slate-ink);--sev-high: var(--rose-ink);--sev-med: var(--amber-ink);--sev-low: var(--text-muted);--series-1: var(--indigo-solid);--series-2: var(--green-solid);--series-3: var(--orange-solid);--series-4: var(--purple-solid);--series-5: var(--sky-solid);--series-6: var(--amber-solid);--chart-grid: #e9edf4;--chart-text: #586175;--shadow-xs: 0 1px 2px rgba(24, 32, 51, .05);--shadow: 0 1px 2px rgba(24, 32, 51, .05), 0 1px 3px rgba(24, 32, 51, .04);--shadow-md: 0 4px 12px rgba(24, 32, 51, .07), 0 1px 3px rgba(24, 32, 51, .05);--shadow-lg: 0 16px 40px rgba(24, 32, 51, .14), 0 4px 10px rgba(24, 32, 51, .06);--scrim: rgba(17, 22, 37, .48);--sb-bg: #141a2b;--sb-bg-2: #0f1424;--sb-border: rgba(255, 255, 255, .07);--sb-text: #aab4cb;--sb-text-strong: #ffffff;--sb-hover: rgba(255, 255, 255, .06);--sb-active: rgba(255, 255, 255, .1);--sb-label: #7985a3;--red-50: #fdecec;--red-100: #fbd5d7;--red-200: #f6aaad;--red-300: #f07a7f;--red-400: #e94a50;--red-500: #e02125;--red-600: #c4181c;--red-700: #a3181b;--red-800: #7d1215;--red-900: #4a1115;--grey-50: #f8f9fc;--grey-100: #eff2f7;--grey-200: #e3e7ee;--grey-300: #cdd3de;--grey-400: #a3acbd;--grey-500: #7d879a;--grey-600: #667085;--grey-700: #4a5468;--grey-800: #2f384b;--grey-900: #182033;--ink: #0f1524;--white: #ffffff;--logo-red: var(--red-500);--logo-metal: var(--grey-500);--logo-black: var(--ink);--radius-md: var(--radius);--muted: var(--text-muted)}:root[data-theme=dark]{color-scheme:dark;--bg: #0e1220;--surface: #151a2b;--surface-2: #1a2034;--surface-3: #212842;--surface-raised: #1c2238;--border: #262e47;--border-strong: #37415f;--text: #e8ecf5;--text-soft: #b9c2d6;--text-muted: #8f9ab3;--text-faint: #6b7693;--strong: #e8ecf5;--on-strong: #121726;--brand: #ff6168;--brand-solid: #e02125;--brand-solid-hover: #ee3a3f;--brand-ink: #ff8d92;--brand-soft: rgba(255, 97, 104, .13);--brand-soft-border: rgba(255, 97, 104, .32);--on-brand: #ffffff;--accent-light: #ff8d92;--focus-ring: rgba(255, 97, 104, .32);--green-solid: #2dd4a0;--green-soft: rgba(45, 212, 160, .13);--green-ink: #5fe3b8;--green-edge: rgba(45, 212, 160, .3);--rose-solid: #ff6b76;--rose-soft: rgba(255, 107, 118, .13);--rose-ink: #ff9aa2;--rose-edge: rgba(255, 107, 118, .32);--indigo-solid: #7f8fff;--indigo-soft: rgba(127, 143, 255, .15);--indigo-ink: #aab4ff;--indigo-edge: rgba(127, 143, 255, .34);--purple-solid: #a78bfa;--purple-soft: rgba(167, 139, 250, .15);--purple-ink: #c4b2fd;--purple-edge: rgba(167, 139, 250, .34);--orange-solid: #ff9340;--orange-soft: rgba(255, 147, 64, .14);--orange-ink: #ffb574;--orange-edge: rgba(255, 147, 64, .32);--amber-solid: #fbbf24;--amber-soft: rgba(251, 191, 36, .13);--amber-ink: #fcd34d;--amber-edge: rgba(251, 191, 36, .3);--sky-solid: #38bdf8;--sky-soft: rgba(56, 189, 248, .13);--sky-ink: #7dd3fc;--sky-edge: rgba(56, 189, 248, .3);--slate-solid: #8f9ab3;--slate-soft: rgba(143, 154, 179, .14);--slate-ink: #b9c2d6;--slate-edge: rgba(143, 154, 179, .28);--chart-grid: #232b44;--chart-text: #8f9ab3;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .35);--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 0 0 1px rgba(255, 255, 255, .02);--shadow-md: 0 6px 16px rgba(0, 0, 0, .35);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .55), 0 0 0 1px rgba(255, 255, 255, .04);--scrim: rgba(3, 5, 12, .66);--sb-bg: #0b0f1c;--sb-bg-2: #090c17;--sb-border: rgba(255, 255, 255, .06);--red-50: #2a1620;--red-100: #3a1b26;--red-200: #57222f;--red-300: #d65a66;--red-400: #f0646e;--red-500: #f4545c;--red-600: #ff7a82;--red-700: #ff8d92;--red-800: #ffa7ab;--red-900: #ffc8ca;--grey-50: #1a2034;--grey-100: #212842;--grey-200: #262e47;--grey-300: #37415f;--grey-400: #4f5a7a;--grey-500: #7a86a3;--grey-600: #8f9ab3;--grey-700: #b9c2d6;--grey-800: #d3d9e8;--grey-900: #e8ecf5;--ink: #f3f5fb;--white: #151a2b}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--topbar-h) + 20px)}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{font-family:var(--font);font-size:var(--fs-md);line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss03";text-rendering:optimizeLegibility;min-width:320px;overflow-x:hidden}html.theme-fade,html.theme-fade *,html.theme-fade *:before,html.theme-fade *:after{transition:background-color var(--t) var(--ease),border-color var(--t) var(--ease),color var(--t) var(--ease),fill var(--t) var(--ease),stroke var(--t) var(--ease)!important}::selection{background:var(--brand-soft);color:var(--text)}h1,h2,h3,h4{font-weight:650;letter-spacing:-.015em;line-height:1.25;color:var(--text)}p{line-height:1.55}a{color:var(--brand-ink)}img,svg{max-width:100%}b,strong{font-weight:650}small{font-size:var(--fs-xs)}code,kbd,samp{font-family:var(--mono);font-size:.92em}hr{border:0;border-top:1px solid var(--border)}button{font-family:inherit}[hidden]{display:none!important}.num,td.num,th.num,.tabular{font-variant-numeric:tabular-nums;font-feature-settings:"tnum","cv11"}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}.sidebar :focus-visible{outline-color:#fff}main.content:focus,.topbar-h1:focus,.page-title:focus{outline:none}.tab-panel:focus-visible{outline:2px solid var(--brand);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:12px;top:-64px;z-index:2000;padding:10px 16px;border-radius:var(--radius-sm);background:var(--strong);color:var(--on-strong);font-weight:650;text-decoration:none;transition:top var(--t-fast) var(--ease)}.skip-link:focus{top:12px}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--text-faint);background-clip:content-box;border:2px solid transparent}*::-webkit-scrollbar-track{background:transparent}.view{display:none}.view.active{display:block;animation:view-in var(--t-slow) var(--ease) both}@keyframes view-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.muted{color:var(--text-muted)}.pos-t{color:var(--pos);font-weight:600}.neg-t{color:var(--neg);font-weight:600}.span-all{grid-column:1 / -1}.locked-note{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-muted)}.icon{flex:none;display:inline-block;vertical-align:-.2em}.icon.spin,.spinner{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[data-tone=green]{--t-solid: var(--green-solid);--t-soft: var(--green-soft);--t-ink: var(--green-ink);--t-edge: var(--green-edge)}[data-tone=rose]{--t-solid: var(--rose-solid);--t-soft: var(--rose-soft);--t-ink: var(--rose-ink);--t-edge: var(--rose-edge)}[data-tone=indigo]{--t-solid: var(--indigo-solid);--t-soft: var(--indigo-soft);--t-ink: var(--indigo-ink);--t-edge: var(--indigo-edge)}[data-tone=purple]{--t-solid: var(--purple-solid);--t-soft: var(--purple-soft);--t-ink: var(--purple-ink);--t-edge: var(--purple-edge)}[data-tone=orange]{--t-solid: var(--orange-solid);--t-soft: var(--orange-soft);--t-ink: var(--orange-ink);--t-edge: var(--orange-edge)}[data-tone=amber]{--t-solid: var(--amber-solid);--t-soft: var(--amber-soft);--t-ink: var(--amber-ink);--t-edge: var(--amber-edge)}[data-tone=sky]{--t-solid: var(--sky-solid);--t-soft: var(--sky-soft);--t-ink: var(--sky-ink);--t-edge: var(--sky-edge)}[data-tone=slate]{--t-solid: var(--slate-solid);--t-soft: var(--slate-soft);--t-ink: var(--slate-ink);--t-edge: var(--slate-edge)}[data-tone=brand]{--t-solid: var(--brand-solid);--t-soft: var(--brand-soft);--t-ink: var(--brand-ink);--t-edge: var(--brand-soft-border)}@media print{body{background:#fff;color:#000}.sidebar,.topbar,.controls,.menu-toggle,.toast-stack,.skip-link{display:none!important}.app{display:block!important}.main{margin:0!important}.view{display:block!important;page-break-after:always;animation:none}.content{max-width:none;padding:0}.card,.kpi,.table-wrap{box-shadow:none;break-inside:avoid}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.spinner,.icon.spin{animation-duration:1.2s!important;animation-iteration-count:infinite!important}}.section-head{margin-bottom:20px}.section-head h2,.page-title{font-size:var(--fs-2xl);font-weight:650;letter-spacing:-.022em;line-height:1.2}.section-head p,.page-sub{color:var(--text-soft);font-size:var(--fs-md);margin-top:4px;max-width:760px}.page-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 20px;margin-bottom:20px}.page-head>div:first-child{min-width:0}.page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.block-title{font-size:var(--fs-lg);font-weight:650;letter-spacing:-.01em;color:var(--text);margin:28px 0 12px;text-transform:none}.card .block-title:first-child{margin-top:0}.eyebrow{font-size:var(--fs-xs);font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-ink)}.btn{--b-bg: var(--brand-solid);--b-fg: var(--on-brand);--b-bd: transparent;--b-bg-h: var(--brand-solid-hover);--b-fg-h: var(--on-brand);--b-bd-h: transparent;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 16px;border:1px solid var(--b-bd);border-radius:var(--radius-sm);background:var(--b-bg);color:var(--b-fg);font:600 var(--fs-md)/1.2 var(--font);text-decoration:none;white-space:nowrap;cursor:pointer;box-shadow:var(--shadow-xs);transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),transform var(--t-fast) var(--ease);-webkit-tap-highlight-color:transparent}.btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--b-bg-h);color:var(--b-fg-h);border-color:var(--b-bd-h);box-shadow:var(--shadow)}.btn:active:not(:disabled):not([aria-disabled=true]){transform:translateY(1px);box-shadow:none}.btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--radius-sm)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none}.btn.sm{min-height:32px;padding:0 12px;font-size:var(--fs-sm);border-radius:var(--radius-xs);gap:6px}.btn.lg{min-height:46px;padding:0 22px;font-size:var(--fs-lg)}.btn.block{display:flex;width:100%}.btn.icon-only{padding:0;width:38px}.btn.icon-only.sm{width:32px}.btn.secondary{--b-bg: var(--surface);--b-fg: var(--text);--b-bd: var(--border-strong);--b-bg-h: var(--surface-3);--b-fg-h: var(--text);--b-bd-h: var(--border-strong)}.btn.outline{--b-bg: transparent;--b-fg: var(--brand-ink);--b-bd: var(--brand-soft-border);--b-bg-h: var(--brand-soft);--b-fg-h: var(--brand-ink);--b-bd-h: var(--brand);box-shadow:none}.btn.ghost{--b-bg: transparent;--b-fg: var(--text-soft);--b-bd: transparent;--b-bg-h: var(--surface-3);--b-fg-h: var(--text);--b-bd-h: transparent;box-shadow:none}.btn.danger{--b-bg: var(--neg-bg);--b-fg: var(--neg);--b-bd: var(--neg-border);--b-bg-h: var(--rose-solid);--b-fg-h: #fff;--b-bd-h: var(--rose-solid);box-shadow:none}.btn.danger.solid{--b-bg: #d6303c;--b-fg: #fff;--b-bd: transparent;--b-bg-h: #b92431;--b-fg-h: #fff;box-shadow:var(--shadow-xs)}.btn.success{--b-bg: var(--green-ink);--b-fg: #fff;--b-bd: transparent;--b-bg-h: #075e42;--b-fg-h: #fff}:root[data-theme=dark] .btn.success{--b-bg: #12a477;--b-bg-h: #0e8c66}:root[data-theme=dark] .btn.danger:hover:not(:disabled){--b-fg-h: #1a0a0c}.btn.loading,.btn[aria-busy=true]{cursor:progress;pointer-events:none}.btn .btn-spinner,.btn-spinner{width:15px;height:15px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite;flex:none}.icon-btn{position:relative;display:inline-grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-soft);cursor:pointer;transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.icon-btn:hover,.icon-btn[aria-expanded=true]{background:var(--surface-3);color:var(--text)}.icon-btn .dot-badge{position:absolute;top:5px;right:5px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--radius-pill);background:var(--brand-solid);color:var(--on-brand);font-size:12px;font-weight:700;line-height:16px;text-align:center;box-shadow:0 0 0 2px var(--surface)}button.link,.link{background:none;border:0;padding:0;font:inherit;font-weight:600;font-size:var(--fs-sm);color:var(--brand-ink);text-decoration:none;cursor:pointer;min-height:24px}button.link:hover,.link:hover{text-decoration:underline;text-underline-offset:3px}:where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]),select,textarea){width:100%;min-height:40px;padding:8px 12px;font:500 var(--fs-md)/1.35 var(--font);color:var(--text);background-color:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease)}:where(textarea){min-height:88px;resize:vertical;line-height:1.5}:where(input,select,textarea)::placeholder{color:var(--text-faint);opacity:1;font-weight:400}input:not([type=checkbox]):not([type=radio]):not([type=file]):hover:not(:disabled):not(:focus),select:hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus){border-color:var(--text-faint)}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring)}input:disabled,select:disabled,textarea:disabled{background-color:var(--surface-3);color:var(--text-muted);cursor:not-allowed;opacity:.8}input[readonly]:not([type=checkbox]):not([type=radio]){background-color:var(--surface-2)}[aria-invalid=true]:not([type=checkbox]):not([type=radio]){border-color:var(--rose-solid)!important}[aria-invalid=true]:not([type=checkbox]):not([type=radio]):focus{box-shadow:0 0 0 3px var(--rose-soft)!important}.is-valid:not([type=checkbox]):not([type=radio]){border-color:var(--green-solid)}select:not([multiple]):not([size]){-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:36px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238a93a6' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}select[multiple]{padding:6px;min-height:120px}select[multiple] option{padding:6px 8px;border-radius:4px}select option{background:var(--surface);color:var(--text)}input[type=date],input[type=month],input[type=time],input[type=datetime-local]{cursor:text}input[type=date]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;border-radius:4px}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}:root[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator,:root[data-theme=dark] input[type=month]::-webkit-calendar-picker-indicator,:root[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.8}input[type=number]{font-variant-numeric:tabular-nums}input[type=date]:focus,input[type=month]:focus,input[type=time]:focus{outline:none}input[type=checkbox],input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:none;width:18px;height:18px;margin:0;display:inline-grid;place-content:center;vertical-align:middle;background:var(--surface);border:1.5px solid var(--border-strong);cursor:pointer;transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}input[type=checkbox]{border-radius:5px}input[type=radio]{border-radius:50%}input[type=checkbox]:hover:not(:disabled),input[type=radio]:hover:not(:disabled){border-color:var(--brand)}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--brand-solid);border-color:var(--brand-solid)}input[type=checkbox]:checked:after{content:"";width:10px;height:10px;background:#fff;clip-path:polygon(14% 52%,0 66%,38% 100%,100% 20%,86% 6%,38% 72%)}input[type=radio]:checked:after{content:"";width:7px;height:7px;border-radius:50%;background:#fff}input[type=checkbox]:indeterminate{background:var(--brand-solid);border-color:var(--brand-solid)}input[type=checkbox]:indeterminate:after{content:"";width:9px;height:2px;background:#fff;border-radius:1px}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:none;box-shadow:var(--ring);border-color:var(--brand)}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.5;cursor:not-allowed}.check{display:inline-flex;align-items:center;gap:10px;min-height:24px;font-size:var(--fs-sm);color:var(--text-soft);cursor:pointer}.check input{margin:0}input[type=checkbox][role=switch]{width:38px;height:22px;border-radius:var(--radius-pill);border-width:0;background:var(--border-strong);position:relative;place-content:unset}input[type=checkbox][role=switch]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;clip-path:none;box-shadow:0 1px 3px #0000004d;transition:transform var(--t) var(--ease)}input[type=checkbox][role=switch]:checked{background:var(--green-solid)}input[type=checkbox][role=switch]:checked:after{transform:translate(16px);clip-path:none;width:18px;height:18px}input[type=file]{width:100%;font:500 var(--fs-sm) var(--font);color:var(--text-soft);padding:6px;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease)}input[type=file]:hover{border-color:var(--brand);background:var(--brand-soft)}input[type=file]::file-selector-button{margin-right:12px;padding:6px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface);color:var(--text);font:600 var(--fs-sm) var(--font);cursor:pointer;transition:background-color var(--t-fast) var(--ease)}input[type=file]::file-selector-button:hover{background:var(--surface-3)}input[type=range]{accent-color:var(--brand-solid);width:100%}.search-field{position:relative;display:block;flex:1 1 240px;min-width:200px;max-width:420px}.search-field .icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-faint);pointer-events:none}.search-field input{padding-left:38px;padding-right:34px}.search-field .search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;display:grid;place-items:center;border:0;background:transparent;color:var(--text-faint);border-radius:var(--radius-xs);cursor:pointer}.search-field .search-clear:hover{background:var(--surface-3);color:var(--text)}input[type=search]::-webkit-search-cancel-button{display:none}.search{flex:1 1 240px;min-width:200px}.select{min-width:140px}.controls select,.controls .select{width:auto;flex:0 1 auto}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.field,.field-row{display:grid;gap:6px;min-width:0;align-content:start}.field{margin-bottom:16px}.field-row>label,.field>label,.cap-field>label{font-size:var(--fs-sm);font-weight:600;color:var(--text)}.field-row .req,.field .req{color:var(--brand);margin-left:2px}.field-hint{color:var(--text-muted);font-size:var(--fs-xs);line-height:1.4}.field-error,.form-error{color:var(--neg);font-size:var(--fs-xs);font-weight:600;line-height:1.4}.field-error{display:flex;align-items:flex-start;gap:6px}.field-success{color:var(--pos);font-size:var(--fs-xs);font-weight:600}.form-error{background:var(--neg-bg);border:1px solid var(--neg-border);border-radius:var(--radius-sm);padding:10px 12px;margin:8px 0;font-size:var(--fs-sm)}.form-ok{background:var(--pos-bg);border:1px solid var(--pos-border);border-radius:var(--radius-sm);padding:10px 12px;margin:8px 0;color:var(--pos);font-size:var(--fs-sm)}.form-stack{display:grid;gap:14px;margin-bottom:14px}.form-stack select,.form-stack input{width:100%}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}.input-affix{position:relative;display:block}.input-affix>.affix{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:var(--fs-sm);font-weight:600;pointer-events:none}.input-affix>input{padding-left:50px}.password-field{position:relative;display:block}.password-field input{padding-right:44px}.password-field .toggle-visibility{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:var(--radius-xs);background:transparent;color:var(--text-muted);cursor:pointer}.password-field .toggle-visibility:hover{background:var(--surface-3);color:var(--text)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;min-width:0}.card-pad-0{padding:0;overflow:hidden}.card.interactive{cursor:pointer;transition:box-shadow var(--t) var(--ease),border-color var(--t) var(--ease),transform var(--t) var(--ease)}.card.interactive:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-1px)}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.card-head h3{font-size:var(--fs-lg);font-weight:650}.card-head p{color:var(--text-muted);font-size:var(--fs-sm);margin-top:2px}.card>b:first-child{font-size:var(--fs-md)}.grid{display:grid;gap:16px}.grid-kpi{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}@media(max-width:640px){.grid-kpi{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.grid-kpi .kpi{padding:12px 12px 10px;gap:8px}.grid-kpi .kpi-label{gap:8px;font-size:var(--fs-xs)}.grid-kpi .kpi-icon{width:30px;height:30px;border-radius:9px}.grid-kpi .kpi-value{font-size:20px}.grid-kpi .kpi-spark,.grid-kpi .kpi-go{display:none}}@media(max-width:360px){.grid-kpi .kpi-value{font-size:18px}}.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.note{display:flex;gap:10px;align-items:flex-start;background:var(--info-bg);border:1px solid var(--info-border);border-radius:var(--radius-sm);padding:12px 14px;font-size:var(--fs-sm);color:var(--text);margin:14px 0;line-height:1.5}.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.chip{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:600;padding:4px 10px;border-radius:var(--radius-pill);background:var(--surface-3);border:1px solid var(--border);color:var(--text-soft)}.pill{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:600;padding:4px 10px;border-radius:var(--radius-pill);background:var(--surface-3);border:1px solid var(--border);color:var(--text-soft);white-space:nowrap}.pill.brand{background:var(--brand-soft);border-color:var(--brand-soft-border);color:var(--brand-ink)}.list-clean{list-style:none}.list-clean li{padding:10px 0;border-bottom:1px solid var(--border);font-size:var(--fs-sm);display:flex;justify-content:space-between;gap:12px}.list-clean li:last-child{border-bottom:0}:where(.kpi){--t-solid: var(--slate-solid);--t-soft: var(--slate-soft);--t-ink: var(--slate-ink);--t-edge: var(--slate-edge)}.kpi{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:10px;min-width:0;padding:16px 18px 14px;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(155deg,var(--t-soft) 0%,var(--surface) 62%);color:inherit;text-align:left;text-decoration:none;font:inherit}.kpi:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--t-solid);opacity:.9;z-index:1}.kpi.is-link,button.kpi,a.kpi{cursor:pointer;transition:transform var(--t) var(--ease),box-shadow var(--t) var(--ease),border-color var(--t) var(--ease)}.kpi.is-link:hover,button.kpi:hover,a.kpi:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--t-edge)}.kpi.is-link:active,button.kpi:active,a.kpi:active{transform:none}.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.kpi-label{display:flex;align-items:center;gap:10px;min-width:0;font-size:var(--fs-sm);font-weight:600;color:var(--text-soft);text-transform:none;letter-spacing:0}.kpi-icon{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--t-solid);color:#fff;box-shadow:0 4px 10px -3px var(--t-solid)}:root[data-theme=dark] .kpi-icon{color:#0e1220;box-shadow:none}.kpi-value{font-size:var(--fs-kpi);font-weight:650;letter-spacing:-.025em;line-height:1.1;color:var(--text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.kpi-value.pos{color:var(--pos)}.kpi-value.neg{color:var(--neg)}.kpi-sub{font-size:var(--fs-xs);color:var(--text-muted);line-height:1.4}.kpi-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;min-height:30px}.kpi-delta{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 6px;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:650;background:var(--pos-bg);color:var(--pos);white-space:nowrap}.kpi-delta.bad{background:var(--neg-bg);color:var(--neg)}.kpi-delta.flat{background:var(--surface-3);color:var(--text-muted)}.kpi-spark{flex:1 1 auto;min-width:70px;max-width:120px;height:30px;margin-left:auto;color:var(--t-solid)}.kpi-spark svg{display:block;width:100%;height:100%;overflow:visible}.kpi-go{position:absolute;right:14px;bottom:12px;color:var(--t-ink);opacity:0;transform:translate(-3px,3px);transition:opacity var(--t) var(--ease),transform var(--t) var(--ease)}.kpi.is-link:hover .kpi-go,button.kpi:hover .kpi-go,a.kpi:hover .kpi-go{opacity:.9;transform:none}.kpi.pos{--t-solid: var(--green-solid);--t-soft: var(--green-soft);--t-ink: var(--green-ink);--t-edge: var(--green-edge)}.kpi.neg{--t-solid: var(--rose-solid);--t-soft: var(--rose-soft);--t-ink: var(--rose-ink);--t-edge: var(--rose-edge)}.kpi.warn{--t-solid: var(--amber-solid);--t-soft: var(--amber-soft);--t-ink: var(--amber-ink);--t-edge: var(--amber-edge)}:where(.badge,.status-badge,.loan-pill,.reg-tag){--t-soft: var(--slate-soft);--t-ink: var(--slate-ink);--t-edge: var(--slate-edge);--t-solid: var(--slate-solid)}.badge,.status-badge,.loan-pill,.reg-tag{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:2px 10px;border-radius:var(--radius-pill);border:1px solid var(--t-edge);background:var(--t-soft);color:var(--t-ink);font-size:var(--fs-xs);font-weight:650;line-height:1.6;letter-spacing:.01em;text-transform:none;white-space:nowrap;box-shadow:none}.badge:before,.status-badge:before,.loan-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--t-solid);flex:none}.badge.no-dot:before{display:none}.badge.ok,.badge.success,.status-badge.active,.loan-pill.cur{--t-soft: var(--green-soft);--t-ink: var(--green-ink);--t-edge: var(--green-edge);--t-solid: var(--green-solid)}.badge.med,.badge.warn,.badge.warning,.status-badge.invited,.loan-pill.due{--t-soft: var(--amber-soft);--t-ink: var(--amber-ink);--t-edge: var(--amber-edge);--t-solid: var(--amber-solid)}.badge.high,.badge.danger,.badge.err,.loan-pill.arr,.loan-pill.def,.loan-pill.mat{--t-soft: var(--rose-soft);--t-ink: var(--rose-ink);--t-edge: var(--rose-edge);--t-solid: var(--rose-solid)}.loan-pill.missed{--t-soft: var(--orange-soft);--t-ink: var(--orange-ink);--t-edge: var(--orange-edge);--t-solid: var(--orange-solid)}.loan-pill.def,.loan-pill.mat{background:var(--rose-solid);color:#fff;border-color:var(--rose-solid)}.loan-pill.def:before,.loan-pill.mat:before{background:#fff}:root[data-theme=dark] .loan-pill.def,:root[data-theme=dark] .loan-pill.mat{color:#1a0a0c}:root[data-theme=dark] .loan-pill.def:before,:root[data-theme=dark] .loan-pill.mat:before{background:#1a0a0c}.badge.info,.badge.inf,.loan-pill.proc{--t-soft: var(--sky-soft);--t-ink: var(--sky-ink);--t-edge: var(--sky-edge);--t-solid: var(--sky-solid)}.badge.ver,.badge.brand{--t-soft: var(--indigo-soft);--t-ink: var(--indigo-ink);--t-edge: var(--indigo-edge);--t-solid: var(--indigo-solid)}.badge.cust{--t-soft: var(--purple-soft);--t-ink: var(--purple-ink);--t-edge: var(--purple-edge);--t-solid: var(--purple-solid)}.badge.low,.badge.neutral,.status-badge.deactivated,.loan-pill.paid,.loan-pill.den,.loan-pill.ntu{--t-soft: var(--slate-soft);--t-ink: var(--slate-ink);--t-edge: var(--slate-edge);--t-solid: var(--slate-solid)}.reg-tag:before{display:none}.count-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-solid);color:var(--on-brand);font-size:var(--fs-xs);font-weight:700}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--slate-solid)}.dot.ok{background:var(--green-solid)}.dot.warn{background:var(--amber-solid)}.table-wrap{position:relative;overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-width:100%}.table-wrap:focus-visible{outline:2px solid var(--brand);outline-offset:2px}table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}thead th{position:sticky;top:0;z-index:1;background:var(--surface-2);text-align:left;padding:11px 16px;font-weight:600;color:var(--text-muted);font-size:var(--fs-xs);letter-spacing:.03em;text-transform:uppercase;border-bottom:1px solid var(--border);white-space:nowrap}tbody td,tbody th.row-head{padding:13px 16px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}tbody th.row-head{text-align:left;font-weight:600}tbody tr{transition:background-color var(--t-fast) var(--ease)}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td,tbody tr:last-child th.row-head{border-bottom:0}td.num,th.num{text-align:right;white-space:nowrap}tfoot td,tfoot th{padding:12px 16px;border-top:1px solid var(--border-strong);background:var(--surface-2);font-weight:650;text-align:left}tfoot td.num{text-align:right}.table-caption{caption-side:top;text-align:left;padding:14px 16px 6px;font-weight:650;font-size:var(--fs-md)}tr.row-care td,tr.row-care th{background:var(--rose-soft)}.cell-sub{display:block;font-size:var(--fs-xs);margin-top:2px;color:var(--text-muted)}.row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.row-actions.spaced{margin-top:14px}.section-note{font-size:var(--fs-sm);margin:4px 0 12px;color:var(--text-muted)}.result-count{font-size:var(--fs-xs);margin:-6px 0 8px;min-height:1em;color:var(--text-muted)}.empty-action{margin-top:14px}.state-loading{font-size:var(--fs-sm);padding:8px 0}th[aria-sort]{padding:0}.th-sort{display:flex;align-items:center;gap:6px;width:100%;padding:11px 16px;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer}th.num .th-sort{justify-content:flex-end}.th-sort:hover{color:var(--text)}.th-sort .icon{opacity:.45}th[aria-sort=ascending] .icon,th[aria-sort=descending] .icon{opacity:1;color:var(--brand)}.dt-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid var(--border);background:var(--surface-2);font-size:var(--fs-sm);color:var(--text-muted)}.dt-pager{display:flex;align-items:center;gap:6px}tr[data-clickable=true]{cursor:pointer}tr[data-clickable=true]:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}@media(max-width:640px){.table-wrap.stack{overflow:visible;background:transparent;border:0;box-shadow:none}.table-wrap.stack table,.table-wrap.stack tbody,.table-wrap.stack tr,.table-wrap.stack td,.table-wrap.stack th.row-head{display:block;width:100%}.table-wrap.stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.table-wrap.stack tbody tr{margin-bottom:10px;padding:6px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.table-wrap.stack tbody td,.table-wrap.stack tbody th.row-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px dashed var(--border);text-align:right}.table-wrap.stack tbody td:last-child{border-bottom:0}.table-wrap.stack tbody td[data-label]:before,.table-wrap.stack tbody th.row-head[data-label]:before{content:attr(data-label);flex:none;font-size:var(--fs-xs);font-weight:600;color:var(--text-muted);text-align:left}.table-wrap.stack tbody td[data-label=""]:before{display:none}.table-wrap.stack tbody td.actions{justify-content:flex-end}.table-wrap.stack tbody tr:hover{background:var(--surface)}.table-wrap.stack .dt-footer{border:1px solid var(--border);border-radius:var(--radius)}}.tabs{display:flex;flex-wrap:wrap;gap:2px;border-bottom:1px solid var(--border);margin-bottom:20px}.tab{position:relative;padding:10px 16px;border:0;background:none;font:600 var(--fs-md) var(--font);color:var(--text-muted);cursor:pointer;margin-bottom:-1px;border-bottom:2px solid transparent;border-radius:var(--radius-xs) var(--radius-xs) 0 0;transition:color var(--t-fast) var(--ease),border-color var(--t) var(--ease),background-color var(--t-fast) var(--ease)}.tab:hover{color:var(--text);background:var(--surface-3)}.tab.active{color:var(--brand-ink);border-bottom-color:var(--brand)}.tab:focus-visible{outline-offset:-2px}.cap-tabs{display:flex;gap:6px;margin-bottom:16px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.cap-tabs::-webkit-scrollbar{display:none}@media(min-width:700px){.cap-tabs{flex-wrap:wrap;overflow-x:visible}}.cap-tabs button{flex:none;min-height:38px;padding:0 16px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--text-soft);cursor:pointer;font:600 var(--fs-sm) var(--font);white-space:nowrap;transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.cap-tabs button:hover{background:var(--surface-3);color:var(--text)}.cap-tabs button.active{border-color:var(--strong);background:var(--strong);color:var(--on-strong)}.segmented{display:inline-flex;padding:3px;gap:2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-3)}.segmented button{min-height:28px;padding:0 12px;border:0;border-radius:var(--radius-xs);background:transparent;color:var(--text-muted);font:600 var(--fs-xs) var(--font);cursor:pointer;transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.segmented button:hover{color:var(--text)}.segmented button.active,.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.cap-chips button{min-height:40px;padding:0 16px;border:1.5px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);cursor:pointer;font:600 var(--fs-sm) var(--font);transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.cap-chips button:hover{border-color:var(--border-strong);background:var(--surface-3)}.cap-chips button.active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-ink)}.dropdown{position:absolute;right:0;top:calc(100% + 8px);z-index:var(--z-menu);width:280px;max-width:calc(100vw - 24px);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:6px;visibility:hidden;opacity:0;transform:translateY(-6px) scale(.98);transform-origin:top right;transition:opacity var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),visibility 0s linear var(--t-fast)}.dropdown.narrow{width:232px}.dropdown.show{visibility:visible;opacity:1;transform:none;transition-delay:0s}.dropdown .dd-head{display:flex;align-items:center;gap:12px;padding:10px 10px 12px;border-bottom:1px solid var(--border);margin-bottom:6px}.dropdown .dd-name{font-weight:650;font-size:var(--fs-md)}.dropdown .dd-email{font-size:var(--fs-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:190px}.dropdown .dd-role{margin-top:6px}.dropdown button{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:9px 10px;border:0;background:none;border-radius:var(--radius-xs);font:500 var(--fs-md) var(--font);color:var(--text);cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.dropdown button .icon{color:var(--text-muted)}.dropdown button:hover,.dropdown button:focus-visible{background:var(--surface-3);outline:none}.dropdown button.danger,.dropdown button.danger .icon{color:var(--neg)}.dropdown hr{border:0;border-top:1px solid var(--border);margin:6px 0}.dropdown .dd-label{padding:8px 10px 4px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint)}.dropdown .dd-choice{justify-content:space-between}.dropdown .dd-choice .icon.check{color:var(--brand)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:none;align-items:center;justify-content:center;padding:20px;background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-bg.show{display:flex;animation:scrim-in var(--t) var(--ease) both}.modal-bg.confirm-layer{z-index:var(--z-confirm)}.modal{width:100%;max-width:480px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;padding:24px;background:var(--surface-raised);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:modal-in var(--t-slow) var(--ease) both}.modal:focus{outline:none}.modal h3{font-size:var(--fs-xl);font-weight:650;letter-spacing:-.015em;margin-bottom:4px}.modal .m-sub{font-size:var(--fs-sm);color:var(--text-soft);margin-bottom:18px}.modal .m-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.modal .m-head h3{margin:0}.modal .m-head .m-tag{font-size:var(--fs-xs);color:var(--text-muted)}.modal .m-close{flex:none;width:34px;height:34px;display:grid;place-items:center;margin:-6px -8px 0 0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-size:0;cursor:pointer;transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.modal .m-close:hover{background:var(--surface-3);color:var(--text)}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.modal-actions .btn{flex:1 1 140px}.modal-foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;position:sticky;bottom:-24px;z-index:2;background:var(--surface-raised);margin:8px -24px -24px;padding:14px 24px;border-top:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.confirm-message{font-size:var(--fs-md);color:var(--text-soft);margin:6px 0 12px;line-height:1.55}.confirm-details{margin:0 0 14px 18px;font-size:var(--fs-md);line-height:1.6;color:var(--text-soft)}.confirm-body input,.confirm-body textarea{width:100%}.confirm-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:14px;border-radius:12px;background:var(--t-soft);color:var(--t-ink)}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:600px){.modal-bg{align-items:flex-end;padding:0}.modal{max-width:none;max-height:92dvh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom));animation-name:sheet-in}.modal-foot{margin:8px -16px calc(-20px - env(safe-area-inset-bottom));padding:12px 16px calc(12px + env(safe-area-inset-bottom));bottom:calc(-20px - env(safe-area-inset-bottom))}.modal-foot .btn,.modal-actions .btn{flex:1 1 100%}}@keyframes sheet-in{0%{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}:where(.notice){--t-soft: var(--green-soft);--t-ink: var(--green-ink);--t-edge: var(--green-edge);--t-solid: var(--green-solid)}.notice{display:flex;align-items:flex-start;gap:12px;margin:12px 0;padding:12px 14px;background:var(--t-soft);border:1px solid var(--t-edge);border-left:4px solid var(--t-solid);border-radius:var(--radius-sm);color:var(--text);font-size:var(--fs-md);line-height:1.5}.notice.info{--t-soft: var(--sky-soft);--t-ink: var(--sky-ink);--t-edge: var(--sky-edge);--t-solid: var(--sky-solid)}.notice.warn{--t-soft: var(--amber-soft);--t-ink: var(--amber-ink);--t-edge: var(--amber-edge);--t-solid: var(--amber-solid)}.notice.err{--t-soft: var(--rose-soft);--t-ink: var(--rose-ink);--t-edge: var(--rose-edge);--t-solid: var(--rose-solid)}.notice.loading{--t-soft: var(--surface-2);--t-ink: var(--text-soft);--t-edge: var(--border);--t-solid: var(--brand)}.notice-icon{flex:none;margin-top:1px;color:var(--t-ink);display:grid;place-items:center}.notice-body{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.notice-title{display:block;font-weight:650;margin-bottom:2px}.notice-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.notice-close{flex:none;width:28px;height:28px;margin:-4px -6px -4px 0;display:grid;place-items:center;border:0;border-radius:var(--radius-xs);background:none;color:var(--text-muted);cursor:pointer;transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.notice-close:hover{background:var(--surface-3);color:var(--text)}.toast-stack{position:fixed;z-index:var(--z-toast);top:16px;right:16px;display:flex;flex-direction:column;gap:10px;width:min(400px,calc(100vw - 32px));pointer-events:none}:where(.toast){--t-solid: var(--green-solid);--t-ink: var(--green-ink);--t-soft: var(--green-soft)}.toast{pointer-events:auto;position:relative;overflow:hidden;display:flex;align-items:flex-start;gap:12px;padding:13px 12px 13px 14px;background:var(--surface-raised);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);font-size:var(--fs-md);font-weight:500;line-height:1.45;animation:toast-in var(--t-slow) var(--ease) both}.toast.leaving{animation:toast-out var(--t) var(--ease) both}.toast .toast-icon{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--t-soft);color:var(--t-ink)}.toast.err{--t-solid: var(--rose-solid);--t-ink: var(--rose-ink);--t-soft: var(--rose-soft)}.toast.warn{--t-solid: var(--amber-solid);--t-ink: var(--amber-ink);--t-soft: var(--amber-soft)}.toast.info{--t-solid: var(--sky-solid);--t-ink: var(--sky-ink);--t-soft: var(--sky-soft)}.toast.loading{--t-solid: var(--brand);--t-ink: var(--brand-ink);--t-soft: var(--brand-soft)}.toast-body{flex:1 1 auto;min-width:0;padding-top:3px;overflow-wrap:anywhere}.toast-title{display:block;font-weight:650}.toast-actions{display:flex;gap:8px;margin-top:8px}.toast-close{flex:none;width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:var(--radius-xs);background:none;color:var(--text-muted);cursor:pointer}.toast-close:hover{background:var(--surface-3);color:var(--text)}.toast-timer{position:absolute;left:0;bottom:0;height:3px;background:var(--t-solid);opacity:.65;transform-origin:left;animation:toast-timer linear both}.toast:hover .toast-timer{animation-play-state:paused}@keyframes toast-in{0%{opacity:0;transform:translate(24px) scale(.97)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translate(24px) scale(.97)}}@keyframes toast-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:640px){.toast-stack{top:auto;bottom:calc(12px + env(safe-area-inset-bottom));right:16px;left:16px;width:auto;flex-direction:column-reverse}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(16px)}}}.skeleton{display:block;border-radius:var(--radius-xs);background:linear-gradient(90deg,var(--surface-3) 0%,var(--surface-2) 40%,var(--surface-3) 80%);background-size:240% 100%;animation:shimmer 1.4s ease-in-out infinite}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.skeleton.line{height:12px}.skeleton.title{height:22px;width:40%}.skeleton.block{height:100%;min-height:80px;border-radius:var(--radius)}.skeleton.circle{border-radius:50%}.skel-stack{display:grid;gap:10px}.skel-card{display:grid;gap:12px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.skel-table{overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.skel-row{display:grid;grid-template-columns:repeat(var(--cols, 4),minmax(0,1fr));gap:18px;padding:15px 16px;border-bottom:1px solid var(--border)}.skel-row:last-child{border-bottom:0}.skel-row.head{background:var(--surface-2);padding:12px 16px}.loading-inline{display:inline-flex;align-items:center;gap:10px;color:var(--text-muted);font-size:var(--fs-sm)}.spinner{width:18px;height:18px;border:2px solid var(--border-strong);border-top-color:var(--brand);border-radius:50%;display:inline-block}.page-loading{display:grid;place-items:center;min-height:40vh;gap:12px;color:var(--text-muted);font-size:var(--fs-sm)}.page-loading .spinner{width:28px;height:28px;border-width:3px}.is-refreshing{opacity:.6;transition:opacity var(--t) var(--ease);pointer-events:none}.state{--t-soft: var(--surface-3);--t-ink: var(--text-muted);--t-edge: var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:44px 24px;color:var(--text-muted)}.state-icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:10px;border-radius:16px;background:var(--t-soft);color:var(--t-ink);border:1px solid var(--t-edge)}.state h3{font-size:var(--fs-lg);font-weight:650;color:var(--text)}.state p{max-width:420px;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.55}.state .state-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px}.state.error{--t-soft: var(--rose-soft);--t-ink: var(--rose-ink);--t-edge: var(--rose-edge)}.state.forbidden{--t-soft: var(--amber-soft);--t-ink: var(--amber-ink);--t-edge: var(--amber-edge)}.state.offline{--t-soft: var(--slate-soft);--t-ink: var(--slate-ink);--t-edge: var(--slate-edge)}.state.compact{padding:26px 16px}.state.compact .state-icon{width:44px;height:44px;border-radius:12px}.state.boxed{background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius)}.reg-empty{text-align:center;padding:36px 20px;color:var(--text-muted);font-size:var(--fs-sm)}.error-card,.no-access{max-width:560px;margin:40px auto}.error-card{padding:24px;border:1px solid var(--neg-border);border-radius:var(--radius);background:var(--surface)}.error-card h2{font-size:var(--fs-xl);margin-bottom:8px}.error-card p{color:var(--text-soft);margin-bottom:16px}.no-access h2{font-size:var(--fs-xl);margin-bottom:8px}.no-access p+p{margin-top:8px}.chart-box{position:relative;height:320px}.chart-box.sm{height:240px}.chart-box.lg{height:380px}.chart-card{display:flex;flex-direction:column;gap:14px}.chart-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:var(--fs-xs);color:var(--text-soft)}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.chart-tip{position:absolute;z-index:3;pointer-events:none;min-width:140px;padding:10px 12px;background:var(--surface-raised);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);font-size:var(--fs-xs);opacity:0;transition:opacity var(--t-fast) var(--ease)}.chart-tip.show{opacity:1}.chart-tip b{display:block;margin-bottom:4px;font-size:var(--fs-sm)}.chart-tip div{display:flex;align-items:center;justify-content:space-between;gap:14px}.chart-tip div span{display:inline-flex;align-items:center;gap:6px;color:var(--text-soft)}.chart-tip i{width:8px;height:8px;border-radius:2px;display:inline-block}.progress{height:8px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.progress>i{display:block;height:100%;border-radius:inherit;background:var(--t-solid, var(--brand));transition:width var(--t-slow) var(--ease)}.app{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100vh;transition:grid-template-columns var(--t-slow) var(--ease)}@media(min-width:901px){:root[data-sidebar=collapsed] .app{grid-template-columns:var(--sidebar-w-collapsed) minmax(0,1fr)}}.main{min-width:0;display:flex;flex-direction:column}.content{width:100%;max-width:1360px;padding:28px 32px 64px;margin:0 auto}.content:focus{outline:none}.sidebar{position:sticky;top:0;z-index:var(--z-sidebar);height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,var(--sb-bg) 0%,var(--sb-bg-2) 100%);color:var(--sb-text);border-right:1px solid var(--sb-border)}.sidebar-brand{display:flex;align-items:center;gap:12px;height:var(--topbar-h);padding:0 16px;flex:none;border-bottom:1px solid var(--sb-border)}.sidebar-logo{flex:none;display:grid;place-items:center;width:38px;height:38px;padding:4px;border-radius:10px;background:#fff;box-shadow:0 2px 8px #00000040}.sidebar-logo img{width:100%;height:100%;object-fit:contain}.sidebar-brand-text{min-width:0;overflow:hidden;white-space:nowrap;transition:opacity var(--t) var(--ease)}.sidebar-title{font-size:var(--fs-md);font-weight:650;letter-spacing:-.01em;color:var(--sb-text-strong);line-height:1.2}.sidebar-sub{font-size:var(--fs-xs);color:var(--sb-label);letter-spacing:.02em}.sidebar-close{display:none;margin-left:auto;width:38px;height:38px;place-items:center;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--sb-text);cursor:pointer}.sidebar-close:hover{background:var(--sb-hover);color:#fff}.nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:10px 12px 8px;display:flex;flex-direction:column;gap:2px;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav.more-below{-webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent);mask-image:linear-gradient(to bottom,#000 88%,transparent)}.nav-group{display:flex;flex-direction:column;gap:2px}.nav-group+.nav-group{margin-top:6px}.nav-label{padding:8px 12px 4px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--sb-label);white-space:nowrap;overflow:hidden}.nav-item{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:38px;padding:0 12px;border:0;border-radius:var(--radius-sm);background:none;color:var(--sb-text);font:500 var(--fs-md)/1.2 var(--font);text-align:left;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.nav-item .icon{flex:none;opacity:.85;transition:opacity var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.nav-item .nav-text{overflow:hidden;text-overflow:ellipsis;transition:opacity var(--t) var(--ease)}.nav-item:hover{background:var(--sb-hover);color:var(--sb-text-strong)}.nav-item:hover .icon{opacity:1}.nav-item.active{background:var(--sb-active);color:var(--sb-text-strong);font-weight:600}.nav-item.active .icon{opacity:1;color:#ff7a80}.nav-item.active:before{content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:4px;border-radius:0 4px 4px 0;background:var(--brand-solid)}.nav-item:focus-visible{outline:2px solid #fff;outline-offset:-2px}.nav-item.locked{opacity:.5;cursor:not-allowed}.sidebar-foot{flex:none;padding:8px 12px 10px;border-top:1px solid var(--sb-border)}.collapse-btn{color:var(--sb-label)}.collapse-btn .icon{transition:transform var(--t-slow) var(--ease)}@media(min-width:901px){:root[data-sidebar=collapsed] .sidebar-brand{justify-content:center;padding:0}:root[data-sidebar=collapsed] .sidebar-brand-text,:root[data-sidebar=collapsed] .nav-item .nav-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);opacity:0}:root[data-sidebar=collapsed] .nav{padding:14px 10px 8px}:root[data-sidebar=collapsed] .nav-item{justify-content:center;padding:0}:root[data-sidebar=collapsed] .nav-label{height:1px;padding:0;margin:8px 10px;background:var(--sb-border);font-size:0}:root[data-sidebar=collapsed] .nav-group+.nav-group{margin-top:2px}:root[data-sidebar=collapsed] .nav-item.active:before{left:-10px}:root[data-sidebar=collapsed] .collapse-btn .icon{transform:rotate(180deg)}}.nav-tip{position:fixed;left:calc(var(--sidebar-w-collapsed) - 2px);z-index:var(--z-menu);transform:translateY(-50%);padding:6px 12px;border-radius:var(--radius-sm);background:var(--strong);color:var(--on-strong);font:600 var(--fs-sm)/1.3 var(--font);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-lg);animation:tip-in var(--t-fast) var(--ease) both}@keyframes tip-in{0%{opacity:0;transform:translate(-4px,-50%)}to{opacity:1;transform:translateY(-50%)}}.backdrop{display:none}.topbar{position:sticky;top:0;z-index:var(--z-sticky);height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 32px;background:var(--bg);border-bottom:1px solid var(--border)}.topbar-left{display:flex;align-items:center;gap:12px;min-width:0}.topbar-title{display:flex;align-items:center;gap:8px;min-width:0}.topbar-title .crumb{color:var(--text-muted);font-size:var(--fs-sm);font-weight:500;white-space:nowrap}.topbar-title .crumb-sep{color:var(--text-faint);flex:none}.topbar-h1{display:block;margin:0;font:650 var(--fs-lg)/1.2 var(--font);letter-spacing:-.01em;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-h1:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.topbar-actions{display:flex;align-items:center;gap:8px;flex:none}.menu-toggle{display:none}.topbar-date{color:var(--text-soft)}.approvals-btn{gap:8px}.user-cluster{position:relative;display:flex;align-items:center}.account-btn{display:flex;align-items:center;gap:10px;padding:4px 8px 4px 4px;border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:var(--text);cursor:pointer;transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.account-btn:hover,.account-btn[aria-expanded=true]{background:var(--surface);border-color:var(--border)}.account-name{display:grid;text-align:left;line-height:1.2;max-width:150px}.account-name b{font-size:var(--fs-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-name small{font-size:var(--fs-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-chevron{color:var(--text-muted);transition:transform var(--t) var(--ease)}.account-btn[aria-expanded=true] .account-chevron{transform:rotate(180deg)}.avatar{display:inline-grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--brand-solid),#a3181b);color:#fff;font-weight:650;font-size:var(--fs-sm);border:0;letter-spacing:.02em}.avatar.lg{width:42px;height:42px;font-size:var(--fs-md)}.user-avatar-sm{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--brand-solid),#a3181b);color:#fff;font-size:var(--fs-xs);font-weight:650}.theme-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:12px}.theme-choice{display:grid;gap:10px;padding:10px;text-align:left;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.theme-choice:hover{border-color:var(--border-strong)}.theme-choice.active{border-color:var(--brand);box-shadow:var(--ring)}.theme-choice-text{display:grid;gap:2px;padding:0 2px 2px}.theme-choice-text b{display:flex;align-items:center;gap:6px;font-size:var(--fs-md)}.theme-choice-text small{color:var(--text-muted)}.theme-preview{display:grid;grid-template-columns:26% 1fr;grid-template-rows:10px 1fr 1fr;gap:4px;height:64px;padding:6px;border-radius:var(--radius-sm);border:1px solid var(--border);background:#f4f6fa}.theme-preview i{display:block;border-radius:3px;background:#fff;box-shadow:0 0 0 1px #e3e7ee inset}.theme-preview i:first-child{grid-row:1 / 4;background:#141a2b;box-shadow:none}.theme-preview i:nth-child(2){grid-column:2}.theme-preview.dark{background:#0e1220;border-color:#262e47}.theme-preview.dark i{background:#1a2034;box-shadow:0 0 0 1px #262e47 inset}.theme-preview.dark i:first-child{background:#0b0f1c;box-shadow:none}.theme-preview.system{background:linear-gradient(90deg,#f4f6fa 50%,#0e1220 50%)}.theme-preview.system i{background:#808aa059;box-shadow:none}.theme-preview.system i:first-child{background:#141a2b}@media(max-width:1100px){.content{padding:24px 24px 56px}.topbar{padding:0 24px}.account-name,.topbar-date{display:none}}@media(max-width:900px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:min(300px,86vw);transform:translate(-102%);transition:transform var(--t-slow) var(--ease);box-shadow:none}.sidebar.open{transform:none;box-shadow:var(--shadow-lg)}.sidebar-close{display:grid}.sidebar-foot{display:none}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-sidebar) - 1);display:block;background:var(--scrim);opacity:0;visibility:hidden;transition:opacity var(--t) var(--ease),visibility 0s linear var(--t)}.backdrop.show{opacity:1;visibility:visible;transition-delay:0s}.menu-toggle{display:inline-grid}.content{padding:20px 16px 48px}.topbar{padding:0 12px 0 8px}.nav-item{min-height:44px}}@media(max-width:600px){.topbar-title .crumb,.topbar-title .crumb-sep,.topbar-ccy{display:none}.topbar-actions{gap:2px}.topbar-left{gap:4px}.account-chevron{display:none}.account-btn{padding:2px}.approvals-btn{padding:0;width:36px;min-height:36px}.approvals-btn .count-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px}.approvals-btn{position:relative;overflow:visible}.approvals-label{display:none}.section-head h2,.page-title{font-size:var(--fs-xl)}.dropdown{position:fixed;top:calc(var(--topbar-h) - 6px);right:8px;left:8px;width:auto;max-width:none}}@media(min-width:1700px){.content{max-width:1520px}}.dashboard-view>*+*{margin-top:16px}.dashboard-view>.page-head{margin-top:0;margin-bottom:4px}.dash-kpis{grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr))}.dash-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}.dash-row>.span-2{grid-column:span 2}.dash-row>:only-child{grid-column:1 / -1}.dash-row.even{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}@media(max-width:1100px){.dash-row{grid-template-columns:minmax(0,1fr)}.dash-row>.span-2{grid-column:auto}}.chart-card{min-width:0}.dash-card-foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.dash-card-foot .link{display:inline-flex;align-items:center;gap:6px}.chart-card>.chart-box,.chart-card>.skeleton,.chart-card>.state{margin-bottom:14px}.dash-outlet{position:relative;display:inline-flex;align-items:center;max-width:100%}.dash-outlet .icon{position:absolute;left:12px;color:var(--text-muted);pointer-events:none}.dash-outlet select{min-height:38px;padding-left:36px;max-width:280px;font-weight:600;font-size:var(--fs-sm)}.dash-live-pill{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-soft);font-size:var(--fs-sm);font-weight:600;white-space:nowrap}.dash-live-pill i{width:8px;height:8px;border-radius:50%;background:var(--slate-solid)}.dash-live-pill.live{color:var(--green-ink);background:var(--green-soft);border-color:var(--green-edge)}.dash-live-pill.live i{background:var(--green-solid);box-shadow:0 0 0 4px var(--green-soft)}.dash-period{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:var(--fs-sm)}.dash-inline-btn{margin-left:12px}.dash-alerts{list-style:none;display:grid;gap:6px;margin-top:4px}.dash-alerts li{font-size:var(--fs-sm);color:var(--text-soft);line-height:1.45}.dash-alerts li b{color:var(--text)}.dash-donut-row{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:18px}.dash-donut{position:relative;height:130px}.dash-donut .chart-box{height:100%}.dash-donut-stack{display:grid;gap:16px}.dash-donut.big{height:170px}.dash-donut-centre{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;pointer-events:none}.dash-donut-centre small{color:var(--text-muted);font-size:var(--fs-xs)}.dash-donut-centre b{font-size:var(--fs-xl);font-weight:650;letter-spacing:-.02em}.dash-legend{list-style:none;display:grid;gap:2px;min-width:0}.dash-legend li button{display:grid;grid-template-columns:10px minmax(0,1fr) auto 38px;align-items:center;gap:8px;width:100%;padding:6px 8px;margin:0 -8px;border:0;border-radius:var(--radius-xs);background:none;color:var(--text);font:500 var(--fs-sm) var(--font);text-align:left;cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.dash-legend li button:disabled{cursor:default}.dash-legend li button:not(:disabled):hover{background:var(--surface-3)}.dash-legend i{width:10px;height:10px;border-radius:3px}.dash-legend-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-soft)}.dash-legend b{font-weight:600;white-space:nowrap}.dash-legend small{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums}@media(max-width:420px){.dash-donut-row{grid-template-columns:minmax(0,1fr)}.dash-donut{height:150px}}.dash-meter-block{display:grid;gap:8px;margin-bottom:16px}.dash-meter-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:var(--fs-sm);color:var(--text-soft)}.dash-meter-head b{font-size:var(--fs-lg);color:var(--text);font-weight:650}.dash-meter-head small{color:var(--text-muted)}.dash-meter-legend{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:var(--fs-xs);color:var(--text-muted)}.dash-meter-legend b{color:var(--text);font-weight:600}.dash-meter-block .progress>i{background:var(--t-solid)}.dash-hint{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--text);font-size:var(--fs-sm);line-height:1.45}.dash-hint .icon{color:var(--warn);margin-top:1px}.dash-accounts{display:flex;flex-direction:column}.dash-accounts-list{list-style:none;margin:10px 0 0}.dash-accounts-list li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 20px;border-top:1px solid var(--border);font-size:var(--fs-sm);transition:background-color var(--t-fast) var(--ease)}.dash-accounts-list li:hover{background:var(--surface-2)}.dash-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--indigo-soft);color:var(--indigo-ink);font-weight:650;font-size:var(--fs-sm);text-transform:uppercase}.dash-account-name{display:grid;min-width:0}.dash-account-name small{color:var(--text-muted);font-size:var(--fs-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-accounts-total{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 14px;margin-top:auto;padding:14px 20px;border-top:1px solid var(--border-strong);background:var(--surface-2);font-size:var(--fs-sm);color:var(--text-soft)}.dash-accounts-total b{font-size:var(--fs-md);color:var(--text)}.glance-account-link{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0;border:0;background:none;color:var(--text);cursor:pointer;font:600 var(--fs-sm) var(--font);text-align:left;min-height:24px}.glance-account-link:hover{color:var(--brand-ink);text-decoration:underline;text-underline-offset:3px}.glance-account-link.strong{font-size:var(--fs-md);font-weight:650}.dash-platforms{overflow:hidden}.dash-platforms .card-head{flex-wrap:wrap}@media(max-width:640px){.dash-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dash-kpis .kpi{padding:12px 12px 10px;gap:8px}.dash-kpis .kpi-label{gap:8px;font-size:var(--fs-xs);font-weight:600}.dash-kpis .kpi-icon{width:30px;height:30px;border-radius:9px}.dash-kpis .kpi-value{font-size:20px}.dash-kpis .kpi-spark{display:none}.dash-kpis .kpi-foot{min-height:0}.dash-kpis .kpi-go{display:none}}@media(max-width:360px){.dash-kpis .kpi-value{font-size:18px}}.dash-donut-row .dash-legend li button{grid-template-columns:10px minmax(0,1fr) auto;align-items:start}.dash-donut-row .dash-legend small{display:none}.dash-donut-row .dash-legend-name{white-space:normal;overflow:visible;line-height:1.3}.dash-donut-row{grid-template-columns:120px minmax(0,1fr)}.auth-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;grid-template-columns:minmax(380px,46%) minmax(0,1fr);background:var(--bg);overflow-y:auto}.auth-brand{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:48px 56px;overflow:hidden;color:#c7cee0;background:linear-gradient(160deg,#182038,#0e1324)}.auth-brand:before{content:"";position:absolute;inset:auto -20% -35% auto;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,#e021254d,#e0212500);pointer-events:none}.auth-brand-inner{position:relative;display:flex;flex-direction:column;justify-content:center;flex:1;max-width:480px}.a-logo{display:flex;align-items:center;gap:14px;margin-bottom:44px}.a-logo .b{display:grid;place-items:center;width:48px;height:48px;padding:5px;border-radius:13px;background:#fff;box-shadow:0 6px 18px #00000059}.a-logo .b img{width:100%;height:100%;object-fit:contain}.a-name{font-size:var(--fs-lg);font-weight:650;color:#fff;letter-spacing:-.01em}.a-org{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:#8d98b8}.auth-brand h1{font-size:clamp(28px,3.2vw,38px);font-weight:650;line-height:1.15;letter-spacing:-.03em;color:#fff;margin-bottom:16px}.auth-brand p{font-size:var(--fs-md);line-height:1.65;color:#aeb7d0}.feat{list-style:none;margin-top:32px;display:grid;gap:14px}.feat li{display:flex;align-items:center;gap:12px;font-size:var(--fs-md);color:#d7dcec}.feat .ck{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e0212538;color:#ff8d92}.auth-brand-foot{position:relative;font-size:var(--fs-xs);color:#7985a3}.auth-main{position:relative;display:flex;flex-direction:column;min-width:0;padding:20px 32px 40px}.auth-topline{display:flex;justify-content:flex-end}.auth-card-wrap{width:100%;max-width:420px;margin:auto;padding:16px 0}.auth-mobile-brand{display:none;align-items:center;gap:12px;margin-bottom:28px}.auth-mobile-brand .b{display:grid;place-items:center;width:44px;height:44px;padding:5px;border-radius:12px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}.auth-mobile-brand .b img{width:100%;height:100%;object-fit:contain}.auth-mobile-brand b{display:block;font-size:var(--fs-md);font-weight:650}.auth-mobile-brand small{color:var(--text-muted);font-size:var(--fs-xs)}.auth-card{width:100%;padding:32px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.auth-card h2{font-size:var(--fs-2xl);font-weight:650;letter-spacing:-.025em;margin-bottom:6px}.auth-card .sub{color:var(--text-soft);font-size:var(--fs-md);margin-bottom:22px}.auth-card .notice{margin:0 0 18px}.auth-card .field{margin-bottom:16px}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:4px 0 22px}.auth-alt{text-align:center;margin-top:22px;font-size:var(--fs-sm);color:var(--text-soft)}.auth-alt .link{display:inline-flex;align-items:center;gap:6px}@media(max-width:900px){.auth-screen{grid-template-columns:minmax(0,1fr)}.auth-brand{display:none}.auth-mobile-brand{display:flex}.auth-main{padding:12px 16px 28px}.auth-card{padding:24px 20px}}@media(max-width:380px){.auth-card{padding:20px 16px}.auth-card h2{font-size:var(--fs-xl)}}.finding{background:var(--surface);border:1px solid var(--border);border-left:5px solid var(--sev-low);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow)}.finding.high{border-left-color:var(--sev-high)}.finding.med{border-left-color:var(--sev-med)}.finding.low{border-left-color:var(--sev-low)}.finding-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;flex-wrap:wrap}.finding-id{font-size:12px;font-weight:800;color:var(--brand);letter-spacing:.04em}.finding-title{font-size:15.5px;font-weight:700;flex:1;min-width:180px}.finding-body{font-size:13.5px;color:var(--text-soft)}.finding-meta{display:flex;gap:18px;margin-top:12px;font-size:12.5px;flex-wrap:wrap}.finding-meta b{color:var(--text)}.timeline{position:relative;padding-left:30px}.timeline:before{content:"";position:absolute;left:9px;top:6px;bottom:6px;width:2px;background:var(--border)}.tl-item{position:relative;margin-bottom:18px}.tl-item:before{content:"";position:absolute;left:-25px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--accent);border:3px solid var(--surface);box-shadow:0 0 0 1px var(--accent)}.tl-num{font-size:12px;font-weight:800;color:var(--brand);letter-spacing:.05em}.tl-title{font-size:15px;font-weight:700;margin:2px 0 4px}.tl-body{font-size:13.5px;color:var(--text-soft)}.ledger-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.ledger-reversed td{color:var(--text-muted)}.ledger-pages{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:12px}.rule-options{display:grid;gap:8px}.rule-sample{padding:10px 12px;border-radius:6px;background:var(--grey-50);border:1px solid var(--grey-200)}.rule-history{font-size:12.5px;color:var(--text-soft)}.rule-history ul{margin:6px 0 0;padding-left:0;list-style:none;display:grid;gap:4px}.user-flags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;margin-top:6px}.audit-table td{vertical-align:top;font-size:12.5px}.audit-id{font-size:12px;max-width:220px;overflow:hidden;text-overflow:ellipsis}.audit-from{font-size:12px;max-width:160px}.audit-diff{display:grid;gap:3px;max-width:420px}.audit-diff div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px}.audit-diff small{color:var(--text-muted);font-weight:600;overflow:hidden;text-overflow:ellipsis}.audit-diff span{word-break:break-word}.audit-diff s{color:var(--red-700);margin-right:4px}.attach{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.attach .btn.sm{padding:4px 10px}.attach-viewer{display:grid;gap:14px}.attach-viewer figure{margin:0}.attach-viewer img{display:block;max-width:100%;max-height:70vh;border:1px solid var(--border);border-radius:6px}.attach-viewer figcaption{margin-top:6px;color:var(--text-soft);font-size:12px}.cap-attach{margin-top:10px}.pin-gate{z-index:1200}.pin-input{width:100%;min-height:56px;border:1px solid var(--grey-300);border-radius:var(--radius-sm);text-align:center;font:650 28px var(--display-font);letter-spacing:.4em}.pin-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #e0212529}.cap-readonly{background:var(--grey-50);color:var(--text-soft)}.pick{display:grid;gap:8px}.pick-search{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--grey-300);border-radius:var(--radius-sm);font:500 14px var(--body-font)}.pick-list{max-height:320px;overflow-y:auto;border:1px solid var(--grey-200);border-radius:10px;background:var(--white)}.pick-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 12px;border:0;border-bottom:1px solid var(--grey-100);background:var(--white);color:var(--text);cursor:pointer;text-align:left}.pick-item:last-child{border-bottom:0}.pick-item:hover{background:var(--grey-50)}.pick-item.active{background:var(--red-50);box-shadow:inset 3px 0 0 var(--brand)}.pick-item.out{color:var(--text-muted)}.pick-item:disabled{cursor:not-allowed;opacity:.6}.pick-name,.pick-figures{display:grid;gap:2px}.pick-name b{font:600 14px var(--body-font)}.pick-name small,.pick-figures small{color:var(--text-muted);font-size:12px}.pick-figures{text-align:right}.pick-override{margin-top:4px;font-size:12.5px}.pv-table td{vertical-align:top;font-size:12.5px}.pv-words{max-width:180px;font-size:12px;white-space:normal}.pv-actions{white-space:nowrap}.pv-actions .btn{margin:0 4px 4px 0}tr.petty-recoup td{background:var(--grey-50)}tr.stock-bad td{background:var(--red-50)}tr.stock-flag td{background:var(--grey-100)}.stock-key{display:inline-block;padding:1px 8px;border-radius:4px;font-weight:700}.stock-key.bad{background:var(--red-50);color:var(--red-700)}.stock-key.flag{background:var(--grey-100);color:var(--grey-800)}@media(max-width:700px){.ledger-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.cap-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.cap-head h2{color:var(--text);font:700 26px/1.1 var(--display-font)}.cap-head p{margin-top:4px;color:var(--text-soft);font-size:13px}.cap-head p b{color:var(--text)}.cap-head-actions{display:flex;align-items:center;gap:10px}.cap-head-actions .btn{min-height:44px;white-space:nowrap}.cap-recent{min-width:0}.cap-recent .table-wrap{max-width:100%;overflow-x:auto}.cap-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.cap-main{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}.cap-side{position:sticky;top:84px}.cap-card{padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.cap-card h3{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--text);font:700 15px var(--display-font)}.cap-card h3 span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--brand);color:var(--white);font:700 12px var(--body-font)}.cap-start{max-width:520px}.cap-start p{margin:-6px 0 16px;color:var(--text-soft);font-size:13px}.cap-start label,.cap-field label{display:block;margin-bottom:6px;color:var(--text-soft);font-size:12px;font-weight:600}.cap-start select,.cap-field input,.cap-field select{width:100%;min-height:48px;padding:0 12px;border:1px solid var(--grey-300);border-radius:var(--radius-sm);background:var(--white);color:var(--text);font:500 15px var(--body-font)}.cap-field input:focus,.cap-field select:focus,.cap-start select:focus,.cap-money:focus-within{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #e0212529}.cap-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.cap-tiles.services{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.cap-tiles.small{margin-top:10px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.cap-tile{display:grid;gap:3px;min-height:64px;padding:12px 14px;border:1.5px solid var(--grey-200);border-radius:10px;background:var(--white);color:var(--text);cursor:pointer;text-align:left;transition:border-color .12s,background .12s}.cap-tile b{font:700 14px/1.25 var(--body-font)}.cap-tile small{color:var(--text-muted);font-size:12px}.cap-tile:hover{border-color:var(--grey-400)}.cap-tile{position:relative}.cap-tile.active{border-color:var(--grey-900);background:var(--grey-900);color:var(--white);box-shadow:0 0 0 3px #e0212538;padding-right:38px}.cap-tile.active small{color:var(--grey-300)}.cap-tile.active:hover{border-color:var(--grey-900)}.cap-tick{position:absolute;top:10px;right:10px;display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:var(--brand);color:var(--white);font:700 13px var(--body-font);font-style:normal}.cap-items .cap-tile.active{padding-right:12px}.cap-card h3 .cap-on{margin-left:auto;max-width:60%;overflow:hidden;padding:4px 12px;border-radius:999px;background:var(--grey-900);color:var(--white);font:600 12px var(--body-font);font-style:normal;text-overflow:ellipsis;white-space:nowrap}.cap-where{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:-2px 0 8px;padding:10px 12px;border-left:4px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--grey-900);color:var(--white)}.cap-where small{width:100%;color:var(--grey-300);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.cap-where b{font:700 16px var(--display-font)}.cap-where span{color:var(--grey-300);font-size:13px}.cap-tiles.small .cap-tile{min-height:52px;padding:9px 12px}.cap-tiles.small .cap-tile b{font-size:12.5px;font-weight:600}.cap-more{margin-top:12px;padding:0;border:0;background:none;color:var(--grey-700);cursor:pointer;font:600 12px var(--body-font);text-decoration:underline}.cap-says{margin:-6px 0 16px;padding:10px 12px;border-left:3px solid var(--brand);border-radius:0 6px 6px 0;background:var(--grey-50);color:var(--text-soft);font-size:13px;line-height:1.45}.cap-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cap-field.wide{grid-column:1 / -1}.cap-field.wide>input+input,.cap-chips+input{margin-top:8px}.cap-money{display:flex;align-items:center;min-height:56px;border:1px solid var(--grey-300);border-radius:var(--radius-sm);background:var(--white)}.cap-money span{padding:0 4px 0 12px;color:var(--text-muted);font:600 13px var(--body-font)}.cap-field .cap-money input{min-height:54px;border:0;box-shadow:none;padding-left:4px;font:700 22px var(--display-font)}.cap-chips{display:flex;flex-wrap:wrap;gap:8px}.cap-chips button{min-height:44px;padding:0 16px;border:1.5px solid var(--grey-200);border-radius:999px;background:var(--white);color:var(--text);cursor:pointer;font:600 13px var(--body-font)}.cap-chips button.active{border-color:var(--brand);background:var(--red-50);color:var(--red-700)}.cap-effects h3{margin-bottom:10px}.cap-effect{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;border-top:1px solid var(--grey-100)}.cap-effect:first-of-type{border-top:0}.cap-effect>i{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;font:700 16px var(--body-font);font-style:normal}.cap-effect.up>i{background:var(--grey-900);color:var(--white)}.cap-effect.down>i{background:var(--brand);color:var(--white)}.cap-effect.flat>i{background:var(--grey-100);color:var(--grey-500)}.cap-effect b{display:block;color:var(--text);font-size:13px}.cap-effect small{display:block;overflow:hidden;color:var(--text-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.cap-effect-figures{text-align:right}.cap-effect-figures strong{display:block;color:var(--text);font:700 15px var(--display-font);white-space:nowrap}.cap-effect.flat .cap-effect-figures strong{color:var(--text-muted);font-weight:500}.cap-warning{margin-top:10px;padding:10px 12px;border:1px solid var(--red-200);border-left:4px solid var(--brand);border-radius:6px;background:var(--red-50);color:var(--red-800);font-size:12px;line-height:1.45}.cap-fine{margin-top:10px;color:var(--text-muted);font-size:12px;line-height:1.4}.cap-status{margin-top:12px;padding:10px 12px;border-radius:6px;font-size:13px;line-height:1.4}.cap-status.ok{background:var(--grey-900);color:var(--white)}.cap-status.err{border:1px solid var(--red-200);background:var(--red-50);color:var(--red-800)}.btn.cap-save{width:100%;min-height:54px;margin-top:14px;font-size:16px}.cap-offline{margin-bottom:16px;padding:12px 14px;border:1px solid var(--red-200);border-left:4px solid var(--brand);border-radius:var(--radius-sm);background:var(--red-50);color:var(--red-800);font-size:13px;line-height:1.45}.cap-offline.back{border-color:var(--grey-300);border-left-color:var(--grey-900);background:var(--grey-50);color:var(--text)}.cap-offline ul{margin:10px 0 0;padding:0;list-style:none}.cap-offline li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid var(--red-100);color:var(--text)}.cap-offline.back li{border-top-color:var(--grey-200)}.cap-offline li em{color:var(--red-700);font-style:normal;font-weight:600}.cap-offline>.btn{margin-top:10px}.btn.cap-receipt{width:100%;min-height:44px;margin-top:10px}.rep-commission{grid-column:1 / -1}.cap-hint{display:block;margin-top:6px;color:var(--text-soft);font-size:12px;line-height:1.4}.cap-total{grid-column:1 / -1;display:flex;align-items:baseline;justify-content:space-between;padding:12px 14px;border-radius:var(--radius-sm);background:var(--grey-50);color:var(--text-soft);font-size:13px}.cap-total b{color:var(--text);font:700 22px var(--display-font)}.cap-items{margin-top:8px;max-height:260px;overflow-y:auto}.pl-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.pl-summary>div{padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.pl-summary small{display:block;color:var(--text-muted);font-size:12px;font-weight:600}.pl-summary b{color:var(--text);font:700 20px var(--display-font)}.pl-summary .care{border-color:var(--red-200);background:var(--red-50)}.pl-summary .care b{color:var(--red-700)}.pl-form{margin-bottom:16px}.pl-form .cap-status,.cap>.cap-status{margin:0 0 16px}.pl-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.pl-search{flex:1 1 200px;max-width:320px;min-height:44px;padding:0 12px;border:1px solid var(--grey-300);border-radius:var(--radius-sm);background:var(--white);color:var(--text);font:500 14px var(--body-font)}.pl-table td{vertical-align:top}.pl-table tr.off td{color:var(--text-muted)}.pl-table td input{width:100%;min-width:80px;min-height:36px;padding:0 8px;border:1px solid var(--grey-300);border-radius:6px;font:500 13px var(--body-font)}.pl-table td.num input{max-width:110px;text-align:right}.pl-table .muted{font-size:12px}.pl-flag{display:inline-block;margin:4px 4px 0 0;padding:2px 8px;border:1px solid var(--grey-400);border-radius:999px;color:var(--grey-700);font-size:12px;font-weight:600}.pl-flag.bad{border-color:var(--red-200);background:var(--red-50);color:var(--red-700)}.pl-reorder{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:4px;color:var(--text-muted);font-size:12px;white-space:nowrap}.pl-reorder input{max-width:70px}.pl-actions{white-space:nowrap;text-align:right}.pl-actions .btn+.btn{margin-left:6px}.pl-count{display:grid;gap:8px;min-width:240px;text-align:left;white-space:normal}.pl-count label{display:grid;gap:4px;color:var(--text-soft);font-size:12px;font-weight:600}.pl-head-actions{flex-wrap:wrap}.pl-head-actions .btn{width:auto;padding:11px 20px}.bulk-steps{display:grid;gap:14px;margin:14px 0;padding-left:20px;font-size:13.5px;line-height:1.45}.bulk-steps .btn{margin-top:8px}.bulk-steps label{display:block;margin-bottom:6px;font-weight:650}.bulk-steps input[type=file]{max-width:100%;min-height:44px;font:500 13px var(--body-font)}.bulk-body .notice{margin:12px 0}.bulk-preview{max-height:45vh;overflow:auto}.bulk-preview table{width:100%}.bulk-preview td{vertical-align:top;font-size:13px;overflow-wrap:break-word}.bulk-preview td:first-child{width:38%}.bulk-preview thead th{white-space:normal}.bulk-preview th,.bulk-preview td{padding:10px 12px}.bulk-row{display:block;color:var(--text-muted);font-size:12px}.bulk-preview tr.bulk-bad td{background:var(--red-50)}.bulk-status{color:var(--red-700)}.bulk-problems{margin:4px 0 0;padding-left:18px;color:var(--red-800)}.bulk-code{font:600 13px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap}.setup-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border:1px solid var(--grey-300);border-radius:999px;background:var(--white);color:var(--text);font-size:13px;font-weight:600}.setup-chip.off{background:var(--grey-100);color:var(--text-muted);text-decoration:line-through}.setup-chip button{padding:3px 8px;border:0;border-radius:999px;background:var(--grey-100);color:var(--grey-700);cursor:pointer;font:600 12px var(--body-font)}.rep-controls{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:16px}.rep-dates{display:flex;flex-wrap:wrap;gap:10px}.rep-dates label{display:grid;gap:4px;color:var(--text-soft);font-size:12px;font-weight:600}.rep-dates input,.rep-dates select{min-height:44px;padding:0 10px;border:1px solid var(--grey-300);border-radius:var(--radius-sm);background:var(--white);color:var(--text);font:500 14px var(--body-font)}.rep-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.rep-group{margin:16px 0 4px;color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.rep-group:first-of-type{margin-top:0}.rep-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--grey-100);color:var(--text);font-size:13.5px}.rep-line b{font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.rep-line.sub{color:var(--text-soft)}.rep-line.strong{border-bottom:0;border-top:1px solid var(--grey-300);font-weight:700}.rep-line.strong b{font-weight:700}.rep-none{padding:8px 0;font-size:13px}.rep-net{display:flex;align-items:baseline;justify-content:space-between;margin-top:14px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--grey-900);color:var(--white);font-weight:700}.rep-net b{font:700 24px var(--display-font)}.rep-net.loss{background:var(--brand)}.rep-check{margin-top:14px;padding:10px 12px;border:1px solid var(--grey-300);border-radius:6px;color:var(--text);font-size:13px;font-weight:600}.rep-check.bad{border-color:var(--red-200);border-left:4px solid var(--brand);background:var(--red-50);color:var(--red-800)}@media(max-width:900px){.rep-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.pl-summary{grid-template-columns:minmax(0,1fr)}.pl-search{max-width:none}}.cap-recent{margin-top:16px}.cap-recent table{margin:0}.cap-recent .muted{font-size:12px}.cap-reverse{white-space:nowrap;text-align:right}.cap-reverse input{width:210px;min-height:36px;margin-right:6px;padding:0 10px;border:1px solid var(--grey-300);border-radius:6px;font:500 13px var(--body-font)}.cap-reverse .btn+.btn{margin-left:6px}@media(max-width:1000px){.cap-layout{grid-template-columns:minmax(0,1fr)}.cap-side{position:static}}@media(max-width:600px){.cap-head{align-items:flex-start;flex-direction:column}.cap-card{padding:14px}.cap-fields{grid-template-columns:1fr}.cap-tiles,.cap-tiles.services{grid-template-columns:repeat(2,minmax(0,1fr))}.cap-reverse{white-space:normal}.cap-reverse input{width:100%;margin:0 0 6px}}.role-card{border:1px solid var(--border);border-radius:var(--radius);padding:18px;background:var(--surface);box-shadow:var(--shadow)}.role-card h4{font-size:15px;font-weight:700;margin-bottom:4px}.role-card .rc-desc{font-size:13px;color:var(--text-soft);margin-bottom:12px}.perm-list{display:flex;flex-wrap:wrap;gap:6px}.perm-tag{font-size:12px;padding:3px 9px;border-radius:6px;background:var(--red-50);color:var(--brand-dark);font-weight:600}.perm-tag.off{background:var(--surface-2);color:var(--text-muted);text-decoration:line-through}.role-form .role-caps{border:0;padding:0;margin:0;min-width:0}.role-form .role-caps>legend{font-size:13px;font-weight:600;margin-bottom:6px}.role-form .role-caps:disabled{opacity:.7}.role-group{border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin:0 0 8px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px 16px}.role-group>legend{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:0 4px}.role-cap{display:flex;gap:8px;align-items:flex-start;font-size:13px;cursor:pointer}.role-cap input{width:16px;height:16px;margin-top:2px;accent-color:var(--brand);flex:none}.role-cap b{display:block;font-weight:600}.role-cap-desc{display:block;color:var(--text-muted);font-size:12px;line-height:1.4}.role-perms{margin-top:10px;display:grid;gap:6px}.role-perms dt{font-size:11.5px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.role-perms dd{margin:2px 0 0}.tx-form{display:grid;gap:14px}.tx-form .frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tx-form label:not(.check){font-size:12.5px;font-weight:600;color:var(--text);display:block;margin-bottom:5px}.tx-form input:not([type=checkbox]):not([type=radio]),.tx-form select,.tx-form textarea{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit;background:var(--white);color:var(--text)}.tx-form textarea{resize:vertical;min-height:60px}.tx-form .hint2{font-size:12px;color:var(--text-soft);margin-top:4px}.tx-effect{background:var(--grey-50);border:1px solid var(--grey-300);border-radius:10px;padding:12px 14px;font-size:13px;color:var(--grey-800)}.tx-effect b{color:var(--grey-800)}.tx-flow{display:flex;align-items:center;gap:10px;font-weight:700;flex-wrap:wrap}.tx-flow .arw{color:var(--accent);font-size:18px}.tx-warn{background:var(--grey-50);border:1px solid var(--grey-400);border-radius:10px;padding:12px 14px;font-size:13px;color:var(--grey-700)}.tx-warn b{color:var(--grey-700)}.bal-chip{font-size:12px;color:var(--text-soft);margin-top:5px}.bal-chip b{color:var(--brand)}.lines-tbl{width:100%;border-collapse:collapse}.lines-tbl th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);text-align:left;padding:6px}.lines-tbl td{padding:4px}.lines-tbl input,.lines-tbl select{padding:7px 8px;font-size:13px}.line-del{background:none;border:none;color:var(--neg);cursor:pointer;font-size:16px}.add-line{background:none;border:1px dashed var(--brand);color:var(--brand);font-weight:600;padding:7px 12px;border-radius:8px;cursor:pointer;font-size:13px}.tx-total{text-align:right;font-weight:800;font-size:16px;color:var(--brand);margin-top:6px}.audit-row td{font-size:13px}.audit-time{color:var(--text-soft);white-space:nowrap;font-size:12px}@media(max-width:600px){.tx-form .frow{grid-template-columns:1fr}}.payroll-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 8px}.payroll-toolbar .btn{width:auto;padding:9px 16px}.payroll-toolbar .btn.active{background:var(--brand-dark)}.payroll-summary{display:grid;gap:16px;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);align-items:start}.payroll-panel{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.payroll-panel h4{font-size:14px;font-weight:700;margin-bottom:6px}.payroll-panel p{font-size:13px;color:var(--text-soft)}.payroll-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:14px}.payroll-form-grid label{display:block;font-size:12.5px;font-weight:600;margin-bottom:5px}.payroll-form-grid input,.payroll-form-grid select,.payroll-form-grid textarea{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit;background:var(--white);color:var(--text)}.payroll-form-grid textarea{min-height:88px;resize:vertical}.payroll-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}.payroll-actions .btn{width:auto;padding:10px 18px}.payroll-builder th,.payroll-builder td{white-space:nowrap}.payroll-builder input{width:92px;padding:7px 8px;border:1px solid var(--border);border-radius:7px;font-size:13px;font-family:inherit;text-align:right}.payroll-builder input[readonly]{background:var(--surface-2);color:var(--text-soft)}.payroll-builder .payroll-name{min-width:180px}.payroll-builder .payroll-total{font-weight:700;color:var(--brand-dark)}.payroll-report-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0 18px}.payroll-report-meta select{min-width:220px;padding:9px 11px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit;background:var(--white)}.payroll-metric-list{list-style:none;display:grid;gap:10px}.payroll-metric-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);font-size:13.5px}.payroll-metric-list li:last-child{border-bottom:none}.payroll-metric-list b{color:var(--text)}.payroll-print{display:flex;justify-content:flex-end;margin-top:14px}.payroll-print{gap:8px;flex-wrap:wrap}.payroll-print .btn{width:auto;padding:9px 16px}.loan-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px 18px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-top:12px}.loan-summary>div{display:flex;flex-direction:column}.loan-summary span{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.loan-summary b{font-size:14.5px;margin-top:2px}.loan-actions{display:flex;gap:8px;flex-wrap:wrap}.loan-preview{margin-top:14px}.loan-preview-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;background:var(--grey-50);border:1px solid var(--grey-300);border-radius:10px;padding:12px 14px}.loan-preview-kpis>div{display:flex;flex-direction:column}.loan-preview-kpis span{font-size:12px;color:var(--text-soft);text-transform:uppercase;letter-spacing:.03em}.loan-preview-kpis b{font-size:15px;color:var(--brand);margin-top:2px}.approval-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:12px}.approval-item{padding:14px;border:1px solid var(--grey-200);border-radius:10px;background:var(--white)}.approval-what{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap}.approval-amount{font:700 16px var(--display-font);white-space:nowrap}.approval-facts{margin:10px 0 0;display:grid;gap:4px;font-size:13px}.approval-facts div{display:grid;grid-template-columns:90px 1fr;gap:8px}.approval-facts dt{color:var(--text-muted);font-weight:700}.approval-facts dd{margin:0;overflow-wrap:anywhere}.approval-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.request-state{display:block;margin-top:4px;font-size:12px;color:var(--grey-800)}.request-state.rejected{color:var(--red-800)}@media(max-width:600px){.approval-facts div{grid-template-columns:1fr;gap:0}.approvals-btn span:first-child{font-size:12px}}.session-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.session-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--grey-200);border-radius:8px}.session-list .session-what{min-width:0}.session-list .badge{margin-left:8px}.session-list .muted{font-size:12px;margin-top:3px}.file-button{cursor:pointer}.file-button:focus-within{outline:2px solid var(--grey-900);outline-offset:2px}.run-blocked{display:block;flex-basis:100%;font-size:12px;color:var(--grey-800)}.line-del{min-width:24px;min-height:24px}
