:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#19313b;background:#f4f6f7;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit}.app{min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr)}.sidebar{background:#19313b;color:#d9e5e7;display:flex;flex-direction:column;padding:23px 13px;min-height:100vh}.brand{padding:0 13px 26px;display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;background:#27a4a1;color:#fff;width:36px;height:36px;font-size:16px;font-weight:800;border-radius:6px}.brand strong{display:block;color:#fff;font-size:17px;letter-spacing:.4px}.brand small{display:block;color:#9fb6bb;font-size:11px;margin-top:2px}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:#8fa7ad;padding:0 13px 9px}.nav{display:grid;gap:3px}.nav button{width:100%;border:0;color:#b8cbd0;background:transparent;text-align:left;padding:10px 13px;border-radius:5px;display:flex;gap:11px;align-items:center;font-size:13px}.nav button:hover,.nav button.active{background:#2b4c55;color:white}.nav-icon{width:19px;text-align:center;font-size:16px;line-height:1}.side-bottom{margin-top:auto;padding:19px 13px 0;border-top:1px solid #3b5960;font-size:11px;line-height:1.5;color:#abc1c6}.side-bottom strong{display:block;color:#e4eff0;font-size:12px;margin-bottom:4px}.main{min-width:0}.topbar{height:66px;border-bottom:1px solid #dce4e5;background:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 30px;gap:15px}.crumb{font-size:12px;color:#697f87}.top-actions{display:flex;gap:12px;align-items:center}.demo-pill{font-size:11px;background:#ecf7f3;color:#237d68;padding:6px 9px;border-radius:3px;font-weight:700}.role-select{border:1px solid #d7e1e2;background:white;border-radius:4px;padding:7px 27px 7px 10px;color:#19313b;font-size:12px}.content{max-width:1500px;margin:auto;padding:30px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{font-size:11px;color:#687f87;text-transform:uppercase;letter-spacing:1.1px;font-weight:700;margin-bottom:5px}.page-head h1{font-size:27px;line-height:1.2;margin:0;font-weight:700;color:#18313b}.page-head p{font-size:13px;color:#6a7e85;margin:7px 0 0}.head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{border:1px solid #cddbdc;border-radius:4px;background:#fff;color:#24414a;padding:9px 12px;font-size:12px;font-weight:700;white-space:nowrap}.btn:hover{border-color:#7ca3a7;background:#f6fbfb}.btn.primary{background:#168984;color:#fff;border-color:#168984}.btn.primary:hover{background:#11746f}.btn.danger{border-color:#e9c8c4;color:#a34336}.btn.small{padding:6px 9px;font-size:11px}.btn.ghost{border-color:transparent;background:transparent}.grid{display:grid;gap:16px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:17px}.kpi{background:#fff;border:1px solid #e0e8e8;border-top:3px solid #168984;padding:17px 18px;min-height:115px}.kpi.amber{border-top-color:#db9d3d}.kpi.blue{border-top-color:#477caa}.kpi.coral{border-top-color:#c96758}.kpi-label{font-size:11px;color:#647b83;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.kpi-value{font-size:23px;line-height:1.2;font-weight:700;margin-top:11px;white-space:nowrap}.kpi-note{font-size:11px;color:#84969b;margin-top:5px}.columns{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}.panel{background:#fff;border:1px solid #dfe7e8;min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid #edf1f1;gap:12px}.panel-head h2{margin:0;font-size:15px}.panel-body{padding:17px 18px}.panel-note{font-size:11px;color:#7d9299}.table-wrap{overflow:auto;max-width:100%}.table{border-collapse:collapse;width:100%;font-size:12px}.table th{text-align:left;color:#69818a;font-size:10px;text-transform:uppercase;letter-spacing:.6px;background:#f8fafa;padding:11px 13px;white-space:nowrap}.table td{padding:12px 13px;border-top:1px solid #edf1f1;vertical-align:middle}.table tr:hover td{background:#fbfdfd}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table .action{text-align:right;white-space:nowrap}.name{font-weight:700;color:#1c3943}.muted{color:#82959b}.sub{display:block;font-size:11px;color:#83969b;margin-top:3px}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:3px;padding:4px 7px;background:#eef4f4;color:#4e6971;font-size:10px;font-weight:700;white-space:nowrap}.badge.green{background:#e7f4ee;color:#267551}.badge.amber{background:#fff3df;color:#9a6919}.badge.red{background:#fbeae7;color:#a44439}.badge.blue{background:#e9f1f8;color:#416c8d}.badge.gray{background:#eff2f3;color:#6b7f85}.toolbar{display:flex;gap:8px;align-items:center;justify-content:space-between;margin:0 0 14px;flex-wrap:wrap}.search{min-width:210px;border:1px solid #d7e1e2;background:white;border-radius:4px;padding:9px 11px;font-size:12px;color:#1b343e}.toolbar-right{display:flex;gap:8px;align-items:center}.select{border:1px solid #d7e1e2;background:white;border-radius:4px;padding:9px 10px;color:#334e57;font-size:12px}.info-strip{display:flex;gap:10px;align-items:flex-start;background:#edf6f6;border-left:3px solid #299b99;color:#45646a;padding:12px 14px;margin-bottom:16px;font-size:12px;line-height:1.5}.info-strip.warn{background:#fff7e9;border-color:#db9d3d;color:#785a2a}.info-strip.error{background:#fff0ec;border-color:#c96758;color:#86473e}.split-stat{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid #eff2f3;font-size:12px}.split-stat:last-child{border-bottom:0}.split-stat strong{font-variant-numeric:tabular-nums}.activity{display:grid;gap:0}.activity-item{padding:11px 0;border-bottom:1px solid #edf1f1;display:grid;grid-template-columns:67px 1fr;gap:10px;font-size:12px}.activity-item:last-child{border-bottom:0}.activity-time{color:#87999e;font-size:11px}.activity-item strong{display:block;font-weight:700;margin-bottom:3px}.activity-item span{color:#7f9299;line-height:1.4}.empty{padding:38px 22px;text-align:center;color:#87999e;font-size:12px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.detail-cell{padding:14px 0;border-bottom:1px solid #e8eeee}.detail-cell small{display:block;color:#8a9ba0;font-size:11px;margin-bottom:5px}.detail-cell strong{font-size:13px}.modal-backdrop{position:fixed;inset:0;background:#10252c99;display:grid;place-items:center;padding:20px;z-index:20}.modal{background:#fff;width:min(680px,100%);max-height:min(90vh,900px);display:flex;flex-direction:column;box-shadow:0 20px 60px #10252c4d;border-radius:6px}.modal-head{padding:20px 23px 17px;border-bottom:1px solid #e8eeee;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.modal-head h2{margin:0;font-size:18px}.modal-head p{margin:6px 0 0;font-size:12px;color:#7c9097}.modal-close{background:transparent;border:0;font-size:23px;line-height:1;color:#81969d;padding:0 2px}.modal-body{padding:20px 23px;overflow:auto}.modal-foot{border-top:1px solid #e8eeee;padding:15px 23px;display:flex;justify-content:flex-end;gap:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px;font-size:11px;font-weight:700;color:#48616a}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{border:1px solid #cfdddf;padding:10px 11px;border-radius:4px;color:#1a343f;background:#fff;outline:none;width:100%;font-size:12px;font-weight:400}.field input:focus,.field select:focus,.field textarea:focus{border-color:#168984;box-shadow:0 0 0 3px #16898420}.field textarea{min-height:76px;resize:vertical}.field-help{font-size:11px;color:#7e9298;font-weight:400}.preview{background:#f5f9f9;border:1px solid #e0e9e9;padding:12px 14px;font-size:12px;line-height:1.6;margin-top:15px}.preview strong{color:#173641}.inline-options{display:flex;gap:11px;flex-wrap:wrap}.inline-options label{font-size:12px;color:#425e66;font-weight:400;display:flex;align-items:center;gap:5px}.notice{position:fixed;bottom:23px;right:23px;z-index:30;background:#17343c;color:#fff;padding:12px 15px;font-size:12px;max-width:360px;box-shadow:0 9px 26px #17343c44}.bar-row{display:grid;grid-template-columns:120px 1fr 72px;gap:10px;align-items:center;font-size:11px;margin:14px 0}.bar{height:9px;background:#e9efef;position:relative}.bar>span{display:block;height:100%;background:#299b99}.bar-row:nth-child(2) .bar>span{background:#db9d3d}.bar-row:nth-child(3) .bar>span{background:#c96758}.bar-row:nth-child(4) .bar>span{background:#477caa}.tabs{display:flex;border-bottom:1px solid #dfe7e8;margin-bottom:16px;gap:20px}.tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:10px 1px;font-size:12px;color:#7a8e95}.tabs button.active{color:#168984;border-color:#168984;font-weight:700}.file-box{border:1px dashed #a9c2c4;padding:24px;text-align:center;background:#f9fcfc}.file-box input{max-width:100%;font-size:12px}.file-box p{font-size:11px;color:#81949b}.hidden{display:none!important}@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.columns{grid-template-columns:minmax(0,1fr)}.content{padding:23px}}@media(max-width:750px){.app{display:block}.sidebar{min-height:0;padding:11px 12px;position:sticky;top:0;z-index:10}.brand{padding:0 2px 10px}.brand small,.nav-label,.side-bottom{display:none}.nav{display:flex;overflow:auto}.nav button{white-space:nowrap;width:auto;padding:8px 10px;font-size:11px}.nav-icon{display:none}.topbar{height:auto;padding:11px 15px;flex-wrap:wrap}.content{padding:19px 15px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:23px}.kpis{gap:9px}.kpi{min-height:102px;padding:13px}.kpi-value{font-size:18px}.detail-grid{grid-template-columns:repeat(2,1fr)}.modal-backdrop{padding:8px}.modal{max-height:96vh}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}@media(max-width:390px){.kpis{grid-template-columns:1fr 1fr}.kpi-value{font-size:16px}.demo-pill{display:none}.detail-grid{grid-template-columns:1fr}}
.pin-map{height:360px;position:relative;overflow:hidden;margin:18px;border:1px solid #cadbdd;background:#eaf2f2}.map-grid{position:absolute;inset:0;background-image:linear-gradient(#cddfdf 1px,transparent 1px),linear-gradient(90deg,#cddfdf 1px,transparent 1px);background-size:12.5% 12.5%}.map-grid:after{content:"";position:absolute;inset:15% -10%;border-top:22px solid #d5e4e8;transform:rotate(-13deg);opacity:.8}.map-pin{position:absolute;transform:translate(-50%,-50%);width:34px;height:34px;border:3px solid white;border-radius:50%;background:#c75f51;color:white;font-size:12px;font-weight:800;box-shadow:0 2px 8px #22444a66;z-index:1;display:grid;place-items:center}.map-pin:hover,.map-pin:focus{background:#9e473b;outline:2px solid #19313b}.map-north,.map-scale{position:absolute;color:#4e7178;background:#ffffffdd;padding:5px 7px;font-size:10px;font-weight:700;z-index:1}.map-north{top:10px;right:10px}.map-scale{left:10px;bottom:10px}.map-stops{padding:0 18px 10px}.map-stop{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:center;border-bottom:1px solid #e8eeee;padding:11px 0;font-size:12px}.map-stop:last-child{border-bottom:0}.map-stop small{display:block;color:#789097;margin-top:3px}.map-stop a{color:#168984;font-weight:700}.stop-number{height:26px;width:26px;display:grid;place-items:center;border-radius:50%;background:#f6e8e5;color:#a3483d;font-weight:800}.detail-cell strong{overflow-wrap:anywhere}.top-actions{flex-wrap:wrap;justify-content:flex-end}@media(max-width:750px){.pin-map{height:270px;margin:12px}.map-stops{padding:0 12px 10px}.map-stop{grid-template-columns:24px minmax(0,1fr);gap:8px}.map-stop a{grid-column:2}.top-actions{gap:6px}.top-actions .btn{font-size:10px;padding:6px}}
.street-map{height:380px;margin:18px;border:1px solid #cadbdd;background:#eaf2f2}.street-pin{display:grid;place-items:center;background:#c75f51;border:2px solid white;border-radius:50%;box-shadow:0 2px 8px #22444a66;color:white;font-size:12px;font-weight:800}.street-map .leaflet-control-attribution{font-size:10px}.tabs{overflow-x:auto;white-space:nowrap}@media(max-width:750px){.street-map{height:300px;margin:12px}.map-stop .btn{grid-column:2;justify-self:start}}
.topbar{height:auto;min-height:66px;padding-top:9px;padding-bottom:9px}.language-select{min-width:108px}.aging-summary{display:flex;align-items:baseline;gap:15px;flex-wrap:wrap;padding:16px 18px;border-bottom:1px solid #e8eeee;font-size:12px}.aging-summary strong{font-size:22px;color:#19313b}.aging-summary small{color:#7d9299}.approval-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;list-style:none;margin:0 0 16px;padding:0;background:#fff;border:1px solid #dfe7e8;overflow:auto}.approval-flow li{min-width:123px;display:grid;grid-template-columns:26px 1fr;align-content:center;column-gap:7px;padding:13px 10px;border-right:1px solid #e7eeee;font-size:11px}.approval-flow li:last-child{border-right:0}.approval-flow li span{grid-row:1/3;background:#e7f4ee;color:#267551;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;font-weight:800}.approval-flow li strong{font-size:11px}.approval-flow li small{color:#81959b;margin-top:2px}.band-trigger{border:0;cursor:pointer}.band-trigger:hover,.band-trigger:focus{outline:2px solid #416c8d}.band-popover{position:fixed;z-index:45;width:min(310px,calc(100vw - 20px));background:#fff;border:1px solid #cadbdd;box-shadow:0 12px 32px #10252c33;padding:16px 18px;font-size:12px;line-height:1.6}.band-popover>strong{display:block;font-size:14px;margin-bottom:8px}.band-popover>small{display:block;color:#6c858b;margin-top:9px}.band-popover>.modal-close{position:absolute;right:10px;top:7px}.approval-context{display:flex;align-items:center;gap:8px;margin-bottom:15px;font-size:12px;color:#48616a}.risk-result{padding:20px 18px;display:grid;gap:15px}.risk-result>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid #e8eeee;padding-bottom:10px}.risk-result span{color:#6a8189;font-size:12px}.risk-result strong{font-size:20px}.risk-result p{margin:0;font-size:12px;color:#7a8e95;line-height:1.5}.risk-result.compact{padding:16px 0 0}.risk-result.compact strong{font-size:15px}@media(max-width:750px){.approval-flow{grid-template-columns:repeat(6,145px)}.top-actions{width:100%;justify-content:flex-start}.aging-summary strong{font-size:18px}.risk-layout{grid-template-columns:1fr}}
.approval-flow{grid-template-columns:repeat(5,minmax(0,1fr))}.approval-flow li.current{background:#eaf6f4}.approval-flow li.current span{background:#168984;color:#fff}.approval-flow li.done span{background:#267551;color:#fff}.approval-flow li.upcoming span{background:#edf1f1;color:#82959b}.risk-customer{display:flex;align-items:end;gap:20px;padding:15px 18px;background:#fff;border:1px solid #dfe7e8;margin-bottom:16px;font-size:12px;color:#607b83}.risk-customer .field{min-width:min(340px,100%)}.import-help{font-size:12px;line-height:1.75;color:#516d75}@media(max-width:750px){.approval-flow{grid-template-columns:repeat(5,145px)}.risk-customer{display:block}.risk-customer span{display:block;margin-top:8px}}
.inline-options{display:grid;gap:9px}.inline-options label{display:flex;align-items:flex-start;gap:9px;line-height:1.45}.inline-options input[type=checkbox]{width:16px;height:16px;min-width:16px;flex:0 0 16px;margin:1px 0 0;padding:0}
fieldset.field{border:1px solid #dfe7e8;padding:14px;gap:10px}fieldset.field legend{padding:0 6px;font-size:12px}fieldset.field label{display:flex;align-items:center;gap:9px;font-size:12px}fieldset.field input[type=checkbox]{width:16px;height:16px;margin:0;flex:0 0 16px}.field-help{font-size:11px;color:#607b83;line-height:1.5}
.role-context{display:flex;gap:12px;align-items:baseline;margin-bottom:18px;font-size:12px;line-height:1.6;color:#516d75}.role-context strong{color:#24444a}.optional-fields{margin-top:18px}.optional-fields summary{cursor:pointer;margin-bottom:14px}.approval-flow{grid-template-columns:repeat(var(--flow-count,8),minmax(105px,1fr));overflow-x:auto}.approval-flow strong{font-size:11px}.panel{margin-bottom:16px}@media(max-width:750px){.role-context{display:block}.role-context span{display:block}.approval-flow{grid-template-columns:repeat(var(--flow-count,8),135px)}}
/* Liquid Glass: shared, contrast-tested tokens for both user-selectable modes. */
:root{color-scheme:light;--ink:#173847;--muted:#506a7a;--glass:rgba(255,255,255,.69);--glass-soft:rgba(255,255,255,.43);--line:rgba(57,106,132,.16);--input:rgba(255,255,255,.76);--accent:#087b80;--shadow:0 12px 36px rgba(33,78,108,.10),inset 0 1px 0 rgba(255,255,255,.82);background:#e7f2f7;color:var(--ink)}
:root[data-theme=dark]{color-scheme:dark;--ink:#e8f3fb;--muted:#aec5d5;--glass:rgba(24,43,62,.78);--glass-soft:rgba(25,46,67,.54);--line:rgba(187,222,242,.18);--input:rgba(16,34,51,.84);--accent:#79e3d6;--shadow:0 14px 42px rgba(0,0,0,.23),inset 0 1px 0 rgba(216,240,255,.10);background:#101927}
body{background:radial-gradient(ellipse at 8% 8%,rgba(65,199,202,.20),transparent 44%),radial-gradient(ellipse at 88% 26%,rgba(133,149,243,.19),transparent 42%),radial-gradient(ellipse at 48% 92%,rgba(138,221,179,.17),transparent 45%);background-attachment:fixed;color:var(--ink)}
.sidebar{background:rgba(20,48,65,.84);backdrop-filter:blur(28px) saturate(140%);-webkit-backdrop-filter:blur(28px) saturate(140%);border-right:1px solid rgba(222,245,255,.2);box-shadow:8px 0 36px rgba(21,57,74,.08)}
.topbar,.panel,.kpi,.modal,.risk-customer,.approval-flow,.band-popover{background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);box-shadow:var(--shadow);border-radius:18px;color:var(--ink)}
.topbar{border-radius:0;border-top:0;position:sticky;top:0;z-index:9;gap:12px;padding:14px 28px}.content{max-width:1800px;margin:auto}.panel{overflow:hidden}.panel-head,.modal-head,.modal-foot,.detail-cell,.split-stat,.activity-item,.aging-summary{border-color:var(--line)}
.panel-head{background:var(--glass-soft)}.page-head h1,.panel-head h2,.kpi-value,.name,.detail-cell strong,.preview strong,.role-context strong,.risk-result strong,.aging-summary strong{color:var(--ink)}
.role-context,.page-head p,.kpi-label,.kpi-note,.panel-head small,.panel-note,.sub,.field-help,.detail-cell small,.risk-result span,.risk-result p,.crumb,.modal-head p,.field,.activity-item span,.aging-summary small,.empty,.import-help{color:var(--muted)}
table{color:var(--ink)}thead{background:var(--glass-soft)}th{color:var(--muted);background:var(--glass-soft)}td,th{border-color:var(--line)}tbody tr:hover{background:var(--glass-soft)}
.btn,.role-select,.select,.search,.field input,.field select,.field textarea{background:var(--input);color:var(--ink);border:1px solid var(--line);border-radius:10px}.btn:hover{background:var(--glass-soft);border-color:var(--accent)}.btn.primary{background:#087b80;color:#fff;border-color:#087b80}.btn.danger{background:rgba(181,54,53,.10);color:#b53c37}.preview,.info-strip{background:var(--glass-soft);border-color:var(--line);color:var(--ink);border-radius:12px;backdrop-filter:blur(16px)}.info-strip{border-left:3px solid #24a5a0}.info-strip.warn{background:rgba(244,188,84,.15);border-left-color:#ca912c;color:var(--ink)}
.modal-backdrop{background:rgba(12,28,43,.40);backdrop-filter:blur(8px)}.modal{width:min(900px,100%)}.modal-body{scrollbar-color:var(--muted) transparent}.risk-result>div,fieldset.field{border-color:var(--line)}.approval-flow li{border-color:var(--line)}.approval-flow li.current{background:rgba(35,175,163,.16)}.approval-flow li small{color:var(--muted)}
.segmented{display:flex;gap:3px;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--glass-soft)}.segmented button{padding:7px 11px;background:transparent;border:0;border-radius:9px;font-size:12px;font-weight:600;color:var(--muted)}.segmented button[aria-pressed=true]{background:var(--input);color:var(--ink);box-shadow:0 2px 8px rgba(25,61,80,.12)}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.tabs button.active{color:var(--accent);border-color:var(--accent)}
[data-theme=dark] .badge.green{background:rgba(64,190,140,.19);color:#a1f2ca}[data-theme=dark] .badge.amber{background:rgba(224,171,65,.19);color:#ffe0a0}[data-theme=dark] .badge.red{background:rgba(229,93,106,.18);color:#ffb9c1}[data-theme=dark] .badge.blue{background:rgba(83,160,229,.19);color:#b5dcff}[data-theme=dark] .badge.gray{background:rgba(167,187,207,.16);color:#d1e0ed}[data-theme=dark] .btn.danger{color:#ffb5b5}[data-theme=dark] .demo-pill{background:rgba(61,180,164,.17);color:#a1eddf}[data-theme=dark] .approval-flow li.upcoming span{background:rgba(181,207,222,.14);color:#c0d7e6}[data-theme=dark] .sidebar{background:rgba(10,24,39,.87)}
@media(max-width:750px){.topbar{position:relative;padding:12px 15px}.top-actions{gap:7px}.segmented button{padding:7px 9px}.panel,.kpi,.modal{border-radius:14px}.sidebar{backdrop-filter:blur(22px)}}
@media(prefers-reduced-transparency:reduce){:root{--glass:#f4f9fc;--glass-soft:#e8f1f6}:root[data-theme=dark]{--glass:#182b3e;--glass-soft:#192e43}}
thead th{background:var(--glass-soft);color:var(--muted)}tbody tr:hover td{background:var(--glass-soft)}tbody td{border-color:var(--line)}.page-head .eyebrow{color:var(--muted)}
.table thead th{background:var(--glass-soft);color:var(--muted)}
.facility-alert p{margin:7px 0 12px;line-height:1.6}.alert-actions{display:flex;flex-wrap:wrap;gap:8px}.facility-alert.error{background:rgba(196,58,69,.09);color:var(--ink);border-left-color:#be3444}.rating-context{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--glass-soft);margin-bottom:16px}.rating-context h3{margin:0 0 10px;font-size:15px}.rating-context p{font-size:12px;line-height:1.6}.btn.primary:hover,.btn.primary:focus-visible{background:#06646a;color:#fff}.table tbody tr:hover td{background:rgba(190,222,231,.45);color:var(--ink)}
[data-theme=dark] .table tbody tr:hover td{background:#29465a;color:#f0f8ff}[data-theme=dark] .table tbody tr:hover td .sub,[data-theme=dark] .table tbody tr:hover td .name{color:#d7e8f4}[data-theme=dark] .btn:not(.primary):hover{background:#29485c;color:#f0f8ff}[data-theme=dark] .btn.primary:hover{background:#09686d;color:#fff}[data-theme=dark] .segmented button:hover{background:#29485c;color:#f0f8ff}[data-theme=dark] .nav button:hover{background:#29485c;color:#f0f8ff}[data-theme=dark] .facility-alert.error{background:rgba(193,70,87,.17);color:#f0f6ff;border-left-color:#f1a5b2}
.modal,.modal-body{min-width:0}.balance-tracking{margin:18px 0}.balance-summary{display:flex;gap:28px;flex-wrap:wrap;padding:16px 0}.balance-summary>div{display:grid;gap:6px}.balance-summary span,.balance-help{font-size:12px;color:var(--muted)}.balance-summary strong{font-size:24px;font-variant-numeric:tabular-nums}.balance-help{line-height:1.6}.balance-tracking .table td:first-child{white-space:nowrap}
.risk-badge{display:inline-flex;gap:3px;vertical-align:middle;margin-left:5px}.risk-badge b{font-size:12px}.risk-badge>span{white-space:normal}.balance-tracking .risk-badge{max-width:170px}#master-row{max-width:100%}#customerImportPreview{margin-top:15px}
.sort-button { margin-left: .4rem; border: 1px solid currentColor; border-radius: 6px; background: transparent; color: inherit; cursor: pointer; padding: 2px 6px; }
.sort-button:hover, .sort-button:focus-visible { background: var(--surface); outline: 2px solid #4889bd; }
th[aria-sort="ascending"] .sort-button, th[aria-sort="descending"] .sort-button { background: #245f92; color: white; }
.field-content { max-width: 34rem; white-space: normal; overflow-wrap: anywhere; }
.field-content.is-collapsed { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.expand-field { display: block; margin-top: 5px; padding: 3px 0; border: 0; background: transparent; color: var(--accent); text-decoration: underline; cursor: pointer; font: inherit; }
.share-composition { display: inline-flex; gap: 10px; align-items: center; justify-content: flex-end; }
.share-track { display: inline-block; width: 110px; height: 8px; background: var(--line); border-radius: 8px; overflow: hidden; }
.share-track>span { display: block; height: 100%; background: var(--accent); border-radius: inherit; }
.bucket-critical td:first-child { border-left: 4px solid #c95e55; }
.bucket-critical .share-track>span { background: #c95e55; }
.bucket-selected td { background: var(--glass-soft); box-shadow: inset 0 -2px var(--accent); }
.bucket-selected [data-action=aging-bucket] { outline: 2px solid var(--accent); font-weight: 800; }
.balance-link { text-decoration: underline; font-variant-numeric: tabular-nums; }
.table-wrap { overflow-x: auto; overscroll-behavior-x: contain; min-width: 0; scrollbar-width: auto; scrollbar-color: var(--muted) var(--glass-soft); }
.table-wrap table { min-width: 100%; width: max-content; }
.table-wrap th { white-space: nowrap; }
.grid-controls { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:8px 16px; color:var(--muted); font-size:11px; }
.grid-scrollbar { overflow-x:scroll; overflow-y:hidden; height:20px; margin:0 12px; scrollbar-color:var(--muted) var(--glass-soft); }
.grid-scrollbar>div { height:1px; }
.large-grid,.large-segment { max-height:480px; overflow:auto; }
.large-grid thead { position:sticky; top:0; z-index:2; }
.data-segment { border:1px solid var(--line); border-radius:10px; margin-bottom:14px; min-width:0; }
.data-segment>summary { cursor:pointer; padding:12px 16px; color:var(--ink); background:var(--glass-soft); font-weight:700; font-size:12px; }
.sort-priority { margin-left:3px; font-size:9px; }
.table th[data-sort-priority]:not([data-sort-priority=""]) .sort-button { background:#245f92; color:white; }
@media(max-width:750px){.grid-controls{align-items:flex-start;flex-wrap:wrap}.large-grid,.large-segment{max-height:360px}}
.grid-scroll-position { width:160px; min-width:100px; padding:0; accent-color:var(--accent); cursor:ew-resize; }
.auth-page { min-height:100vh; display:grid; place-items:center; padding:24px; }
.auth-card { width:min(460px,100%); padding:30px; border:1px solid var(--line); border-radius:24px; background:var(--glass); box-shadow:var(--shadow); backdrop-filter:blur(20px); }
.auth-card .brand { color:var(--ink); padding:0 0 18px; }
.auth-card .brand small { color:var(--muted); }
.auth-card h1 { margin:24px 0 12px; font-size:26px; }
.auth-card p { line-height:1.6; color:var(--muted); }
.auth-card form { display:grid; gap:18px; margin:22px 0; }
.auth-error { color:#b52d38!important; padding:12px; border:1px solid currentColor; border-radius:8px; white-space:normal; }
[data-theme=dark] .auth-error { color:#ffb9c1!important; }
.auth-tools { display:flex; gap:8px; align-items:center; flex-wrap:wrap; font-size:12px; }
.auth-admin .modal { width:min(1100px,100%); }
.auth-admin code { font-size:24px; letter-spacing:3px; user-select:all; }
.auth-saving { position:fixed; inset:0; z-index:1000; background:var(--glass); backdrop-filter:blur(8px); display:flex; flex-direction:column; gap:20px; align-items:center; justify-content:center; color:var(--ink); padding:24px; }
.auth-card .brand strong { color:var(--ink); }
.auth-card .brand small { display:block; }
/* Gold and champagne authentication surface. */
.auth-page{--auth-ink:#2c2518;--auth-muted:#5f513b;--auth-border:#a89161;--auth-panel:rgba(255,251,239,.94);--auth-input:#fffdf6;--auth-accent:#76521c;--auth-button:#76521c;--auth-button-ink:#fffdf5;position:relative;isolation:isolate;min-height:100svh;grid-template-columns:minmax(0,1fr) minmax(350px,470px);gap:clamp(28px,7vw,100px);padding:clamp(24px,6vw,88px);overflow:hidden;background:radial-gradient(ellipse at 20% 20%,#fff8e9 0,transparent 55%),radial-gradient(ellipse at 80% 75%,#dcc08a 0,transparent 55%),#eddec0;color:var(--auth-ink)}
[data-theme=dark] .auth-page{--auth-ink:#fff7e5;--auth-muted:#e2cfaa;--auth-border:#aa915d;--auth-panel:rgba(30,26,19,.96);--auth-input:#262117;--auth-accent:#f0d18a;--auth-button:#edcc83;--auth-button-ink:#292012;background:radial-gradient(ellipse at 20% 20%,#44351c 0,transparent 58%),radial-gradient(ellipse at 85% 75%,#322719 0,transparent 55%),#12100c}
.auth-orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);border:1px solid #c7a35b66;box-shadow:inset 0 4px 30px #fff5d54d,0 25px 80px #79581d26;background:linear-gradient(135deg,#ffedb733,#c6974226);pointer-events:none}.orb-one{width:350px;height:350px;top:-160px;right:25%}.orb-two{width:450px;height:450px;bottom:-230px;left:-110px}
.auth-intro{width:min(520px,100%);justify-self:center}.auth-eyebrow{font-size:12px;letter-spacing:.22em;font-weight:800;color:var(--auth-accent)}.auth-intro h2{font-size:clamp(40px,5vw,70px);font-weight:650;letter-spacing:-.05em;line-height:1.1;margin:24px 0}.auth-intro p{font-size:clamp(19px,2vw,27px);line-height:1.55;color:var(--auth-ink);max-width:420px}.auth-intro .auth-intro-note{font-size:15px;color:var(--auth-muted)}.auth-intro-rule{display:block;width:80px;height:2px;background:var(--auth-accent);margin:30px 0}
.auth-card{position:relative;width:100%;padding:clamp(24px,3vw,38px);border:1px solid var(--auth-border);border-radius:28px;background:var(--auth-panel);box-shadow:0 25px 70px #60431430,0 7px 22px #60431418,inset 0 1px 0 #fff8df77;backdrop-filter:blur(28px) saturate(1.3);color:var(--auth-ink);justify-self:center}.auth-card .brand-mark{width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#79571e,#9c7529);color:#fffdf3;box-shadow:inset 0 1px 0 #ffe5a977;font-size:13px;letter-spacing:.06em}.auth-card .brand strong{color:var(--auth-ink);font-size:19px}.auth-card .brand small,.auth-card p,.auth-card .field{color:var(--auth-muted)}.auth-card h1{color:var(--auth-ink);font-weight:700}.auth-options{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;margin-top:12px}.auth-card .segmented{border:1px solid var(--auth-border);background:transparent;box-shadow:inset 0 1px 0 #ffefd333}.auth-card .segmented button{color:var(--auth-ink);min-height:44px;padding:9px 12px}.auth-card .segmented button[aria-pressed=true]{background:var(--auth-button);color:var(--auth-button-ink);box-shadow:0 3px 8px #51350f33}
.auth-card .field{font-size:13px;font-weight:650}.auth-card .field input{min-height:48px;border:1px solid var(--auth-border);border-radius:12px;background:var(--auth-input);color:var(--auth-ink);box-shadow:inset 0 2px 4px #5d401008;font-size:16px}.auth-password-field{position:relative;display:block}.auth-password-field input{width:100%;padding-right:84px}.auth-password-toggle{position:absolute;right:8px;top:50%;min-height:34px;padding:5px 8px;border:1px solid var(--auth-border);border-radius:9px;background:transparent;color:var(--auth-ink);font-size:12px;font-weight:700;transform:translateY(-50%)}.auth-password-toggle:hover{background:var(--auth-input)}.auth-card .field input::placeholder{color:var(--auth-muted);opacity:1}.auth-card .btn{min-height:44px;border-radius:12px;border:1px solid var(--auth-border);color:var(--auth-ink);background:var(--auth-input);font-weight:700}.auth-card .btn.primary{color:var(--auth-button-ink);background:var(--auth-button);border-color:var(--auth-button);box-shadow:0 5px 13px #62441726}.auth-card button:hover{filter:brightness(.95)}[data-theme=dark] .auth-card button:hover{filter:brightness(1.12)}.auth-card button:disabled{opacity:.7;cursor:wait}.auth-card :is(button,input,a):focus-visible{outline:3px solid var(--auth-accent);outline-offset:3px}.auth-card input[aria-invalid=true]{border:2px solid #a42327}.auth-card .auth-error{background:#fff0e9;color:#8c181d!important;font-weight:550}.auth-card .auth-error[hidden],.auth-progress[hidden]{display:none}[data-theme=dark] .auth-card .auth-error{color:#ffd0d2!important;background:#462121}[data-theme=dark] .auth-card input[aria-invalid=true]{border-color:#ffafb8}.auth-card .auth-progress{color:var(--auth-accent);font-size:13px;display:flex;gap:10px;align-items:center}.auth-progress:before{content:"";width:14px;height:14px;border:2px solid var(--auth-border);border-top-color:var(--auth-accent);border-radius:50%;animation:auth-spin 1s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}
.permission-role,.permission-tab{border:1px solid var(--line);border-radius:12px;margin:12px 0;overflow:hidden}.permission-role>summary,.permission-tab>summary{padding:14px;background:var(--glass-soft);cursor:pointer;font-weight:700}.permission-cell{display:flex;gap:5px;align-items:center;justify-content:center;min-width:50px;min-height:40px}.permission-cell input{width:20px;height:20px;accent-color:var(--accent);cursor:pointer}.permission-cell input:disabled{cursor:default}.permission-locked{color:var(--ink);font-weight:700}.permission-value{display:block;text-align:center}.permission-table th:nth-child(n+3),.permissions-modal th:nth-child(n+2){text-align:center}.permission-status{line-height:1.6}.permission-status .btn{display:block;margin-top:10px}.permissions-modal .modal{width:min(1180px,98vw)}.permission-tab summary label{display:inline-flex;gap:10px;align-items:center}.permission-tab summary input{width:20px;height:20px}.permission-tab table{min-width:760px}
@media(max-width:800px){.auth-page{grid-template-columns:1fr;gap:24px;padding:28px 18px}.auth-intro{display:none}.auth-card{width:min(470px,100%)}.auth-options{gap:10px}.auth-card h1{font-size:25px}.permissions-modal .modal-body{padding:14px}}
@media(prefers-reduced-motion:reduce){.auth-page *,.auth-progress:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(prefers-reduced-transparency:reduce){.auth-card{background:#fffbef;backdrop-filter:none}[data-theme=dark] .auth-card{background:#1e1a13}}

.auth-card .auth-progress[hidden]{display:none}
.auth-password-field .auth-password-toggle{width:auto!important;min-height:34px!important;padding:5px 8px!important;box-shadow:none!important}

/* Login handoff motion confirms credentials and carries the user into the workspace. */
.auth-card{transition:transform .24s cubic-bezier(.16,1,.3,1),box-shadow .24s ease,opacity .24s ease}.auth-page[data-auth-phase=submitting] .auth-card{transform:translateY(-3px);box-shadow:0 28px 78px #6043143d,0 9px 26px #60431422,inset 0 1px 0 #fff8df77}.auth-page[data-auth-phase=launching] .auth-card{transform:translateY(-8px);opacity:.88;box-shadow:0 32px 90px #60431445,0 12px 30px #60431428,inset 0 1px 0 #fff8df77}.auth-page[data-auth-phase=launching] .auth-intro{opacity:.72;transform:translateX(-8px);transition:opacity .24s ease,transform .24s cubic-bezier(.16,1,.3,1)}.auth-progress[data-phase=launching]{font-weight:700}.auth-progress[data-phase=launching]::before{border-top-color:currentColor;animation-duration:.65s}
.auth-launch-panel{display:flex;align-items:center;gap:12px;margin-top:16px;padding:14px 15px;border:1px solid var(--auth-border);border-radius:16px;background:color-mix(in srgb,var(--auth-input) 78%,transparent);color:var(--auth-ink);box-shadow:0 10px 26px #60431418,inset 0 1px 0 #fff8df66;overflow:hidden}.auth-launch-panel[hidden]{display:none}.auth-launch-mark{display:grid;place-items:center;width:34px;height:34px;flex:none;border:1px solid currentColor;border-radius:50%;color:var(--auth-accent);opacity:.9}.auth-launch-mark:before{content:"";width:18px;height:18px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:auth-launch-spin .75s linear infinite}.auth-launch-mark span{position:absolute;width:5px;height:5px;border-radius:50%;background:currentColor}.auth-launch-copy{display:grid;gap:3px;min-width:0}.auth-launch-copy strong,.auth-launch-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-launch-copy strong{font-size:13px}.auth-launch-copy small{color:var(--auth-muted);font-size:12px}@keyframes auth-launch-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.auth-card,.auth-page[data-auth-phase=launching] .auth-intro{transition:none}.auth-page[data-auth-phase=submitting] .auth-card,.auth-page[data-auth-phase=launching] .auth-card,.auth-page[data-auth-phase=launching] .auth-intro{transform:none}.auth-page[data-auth-phase=launching] .auth-card{opacity:1}.auth-progress[data-phase=launching]::before,.auth-launch-mark:before{animation:none}}

.planning-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0}.planning-filters .field{min-width:180px}.collection-planning .panel{margin:16px 0}.collection-planning .table{min-width:900px}.collection-planning>details>summary{padding:12px;cursor:pointer}
.auth-tools > span{max-width:32ch;overflow-wrap:anywhere;white-space:normal;}

.permission-page-body {width:100%;min-width:0;}
.permission-page-actions {display:flex;gap:12px;margin-bottom:20px;}
.permission-page .modal {max-width:none;width:100%;max-height:none;box-shadow:none;}
.permission-page .modal-body {max-height:none;overflow:visible;}
.permission-page .table-wrap {overflow:auto;max-height:65vh;}
.permission-page table {min-width:1100px;}
.permission-page thead th {position:sticky;top:0;z-index:2;background:var(--panel,#fff);}
.permission-page select {max-width:280px;}
[data-theme=dark] .permission-page thead th {background:#172335;color:#fff;}

.permission-page [data-matrix] table {min-width:1050px;}
.permission-page [data-matrix] td:first-child {min-width:220px;white-space:normal;}
.permission-page [data-matrix] td label {display:inline-flex;align-items:center;gap:3px;font-size:11px;margin-right:4px;}
.permission-page [data-matrix] td:not(:first-child) {white-space:nowrap;}
.permission-page .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;}

.role-inheritance,.inherited-scope {display:block;font-size:12px;margin-bottom:6px;font-weight:600;}
.permission-page [data-matrix] table {min-width:900px;}
.permission-page [data-matrix] td label {justify-content:center;width:100%;}
.user-permission-editor {width:100%;}
/* Compact customer and invoice registers; retain horizontal scrolling on narrow screens. */
.table-wrap .table.table-compact{width:100%;table-layout:fixed;font-size:11px;}
.table-compact th,.table-compact td{padding:8px 7px;white-space:normal;overflow-wrap:anywhere;}
.table-wrap .table-compact th{white-space:normal;vertical-align:bottom;}
.table-compact .btn.small{padding:4px 6px;white-space:normal;text-align:inherit;font-size:11px;}
.table-compact .risk-badge{white-space:normal;font-size:10px;}
.table-compact .sort-button{margin-left:3px;padding:1px 4px;}
.table-wrap .customer-table{min-width:840px;}
.customer-table th:first-child{width:19%;}.customer-table th:nth-child(3){width:15%;}.customer-table th:nth-child(6){width:12%;}.customer-table th:last-child{width:6%;}
.table-wrap .invoice-table{min-width:1080px;}
.invoice-table th:nth-child(2){width:15%;}.invoice-table th:nth-child(3){width:10%;}.invoice-table th:last-child{width:14%;}
.table-compact th{overflow-wrap:normal;letter-spacing:.02em;}
.invoice-table th:nth-child(6),.invoice-table th:nth-child(7),.invoice-table th:nth-child(8){width:9%;}
/* Aging progression: current, mild, watch, elevated and critical overdue. */
.bucket-level-0{--bucket-color:#168052;--bucket-tint:rgba(22,128,82,.07);}
.bucket-level-1{--bucket-color:#168b9c;--bucket-tint:rgba(22,139,156,.08);}
.bucket-level-2{--bucket-color:#b88316;--bucket-tint:rgba(184,131,22,.09);}
.bucket-level-3{--bucket-color:#d16a25;--bucket-tint:rgba(209,106,37,.10);}
.bucket-level-4{--bucket-color:#ce4859;--bucket-tint:rgba(206,72,89,.11);}
[class*=bucket-level-] td{background:var(--bucket-tint);}
[class*=bucket-level-] td:first-child{border-left:4px solid var(--bucket-color);}
[class*=bucket-level-] .share-track>span{background:var(--bucket-color);}
[class*=bucket-level-] [data-action=aging-bucket]{border-color:var(--bucket-color);}
[class*=bucket-level-].bucket-selected td{box-shadow:inset 0 -2px var(--bucket-color);}
[data-theme=dark] .bucket-level-0{--bucket-color:#72d6a4;--bucket-tint:rgba(80,190,133,.12);}
[data-theme=dark] .bucket-level-1{--bucket-color:#74cedd;--bucket-tint:rgba(77,181,201,.13);}
[data-theme=dark] .bucket-level-2{--bucket-color:#edc16d;--bucket-tint:rgba(223,170,58,.14);}
[data-theme=dark] .bucket-level-3{--bucket-color:#f5a66b;--bucket-tint:rgba(226,129,66,.15);}
[data-theme=dark] .bucket-level-4{--bucket-color:#f58e9e;--bucket-tint:rgba(224,99,119,.16);}
/* Native details retain keyboard operation and expose their open state. */
details>summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--glass-soft);color:var(--ink);font-weight:700;}
details>summary::-webkit-details-marker{display:none;}
details>summary::before,[data-action=aging-bucket]::before,.expand-field::before{content:'+';display:inline-grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:8px;background:linear-gradient(145deg,#efdba8,#cfa655);color:#302716;font-size:19px;line-height:1;font-weight:800;box-shadow:0 2px 5px #49360d24;}
details[open]>summary::before,[data-action=aging-bucket][aria-expanded=true]::before,.expand-field[aria-expanded=true]::before{content:'−';background:var(--accent);color:#fff;}
details>summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px;}
details>summary:hover{border-color:var(--accent);}
details[open]>summary{margin-bottom:10px;}
[data-action=aging-bucket],.expand-field{display:inline-flex;align-items:center;gap:7px;}
[data-action=aging-bucket]::before,.expand-field::before{width:20px;height:20px;flex-basis:20px;font-size:16px;border-radius:6px;}
[data-theme=dark] details[open]>summary::before,[data-theme=dark] [data-action=aging-bucket][aria-expanded=true]::before,[data-theme=dark] .expand-field[aria-expanded=true]::before{color:#10252c;}
.dashboard-workflows{display:grid;gap:16px;scroll-margin-top:140px}.risk-customer>div{min-width:0;max-width:100%}

/* KYC verification and consistent confirmation/search controls. */
.verified-tick{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#1767b8;color:#fff;font-size:12px;font-weight:900;vertical-align:middle;box-shadow:0 0 0 2px var(--glass)}
.select-search{position:relative;width:100%}.select-search input{width:100%;padding-right:36px}.select-search>span{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--muted);pointer-events:none}.select-search:focus-within{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
.diligence-confirm{padding:16px;margin-top:20px;border:1px solid var(--line);border-radius:12px;background:var(--glass)}.diligence-confirm legend{font-weight:700;font-size:13px}.diligence-confirm label{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6}.diligence-confirm input{flex:none;width:18px;height:18px;margin:3px 0 0}.diligence-confirm:focus-within{outline:2px solid var(--accent);outline-offset:3px}.btn:disabled{opacity:.55;cursor:not-allowed}
.content[data-page=overview] .kpis{gap:18px;margin:20px 0}.content[data-page=overview] .kpi{padding:24px}.content[data-page=overview] .kpi-value{font-size:clamp(24px,2.4vw,36px);font-variant-numeric:tabular-nums;line-height:1.2;letter-spacing:-.03em;margin:10px 0}.content[data-page=overview] .kpi-label{letter-spacing:.04em;font-weight:700}.content[data-page=overview] .role-context{font-size:11px;opacity:.9}.content[data-page=overview] .columns{grid-template-columns:1fr}.dashboard-secondary{margin:20px 0}.dashboard-workflows .info-strip{margin:0}.dashboard-workflows .panel-head{padding:20px}.dashboard-workflows .panel-body{padding:20px}.auth-saving{border:1px solid var(--line);background:var(--glass);color:var(--ink);box-shadow:var(--shadow);padding:18px 24px;border-radius:14px}.auth-saving:before{content:'';display:inline-block;width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;margin-right:10px;animation:ccms-loading 1s linear infinite}@keyframes ccms-loading{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.auth-saving:before{animation:none}}@media(max-width:750px){.content[data-page=overview] .kpi{padding:18px}.dashboard-workflows .panel-head{padding:16px}}

.auth-saving[data-failed=true]:before{content:'!';animation:none;border:0;border-radius:0;color:var(--ink);font-weight:900;width:auto;height:auto}
.fr-section{margin:16px 0;overflow:hidden}.fr-section>summary{display:flex;align-items:center;gap:12px;padding:16px 20px;cursor:pointer;font-weight:700;list-style:none}.fr-section>summary::-webkit-details-marker{display:none}.fr-number{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:10px;background:var(--accent,#087f8c);color:white}.fr-expand{margin-left:auto;font-size:20px;color:var(--accent,#087f8c)}.fr-section[open]>.fr-expand,.fr-section[open]>summary .fr-expand{font-weight:900}.fr-section .full{grid-column:1/-1}.fr-section input,.fr-section select,.fr-section textarea{max-width:100%}.fr-section td input{min-width:130px;width:100%}.fr-section .table-wrap{overflow-x:auto}.fr-section td,.fr-section th{text-align:left;vertical-align:top}.fr-section td:not(:first-child){font-variant-numeric:tabular-nums}.fr-check{display:flex;align-items:flex-start;gap:10px;padding:8px 0}.fr-check input{flex:0 0 18px;min-height:18px;margin-top:3px}.fr-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}#financial-survey{max-width:1200px;margin:auto}#financial-survey :focus-visible{outline:3px solid #ba8b2d;outline-offset:3px}@media(max-width:640px){.fr-section .form-grid{grid-template-columns:1fr}.fr-section>summary{padding:14px;gap:8px}.fr-section .panel-body{padding:14px}.fr-actions .btn{width:100%}}@media(prefers-reduced-motion:reduce){.fr-section *{transition:none!important}}
.fr-section .form-grid>*{min-width:0}.fr-section p{white-space:normal;overflow-wrap:anywhere}.fr-section output{overflow-wrap:anywhere}.fr-section td input,.fr-section td select{padding:9px 10px;border-radius:8px;border:1px solid var(--line);background:var(--input);color:var(--ink);max-width:100%}.fr-section .fr-expand{font-size:0}.fr-section .fr-expand::after{content:'＋';font-size:22px}.fr-section[open]>summary .fr-expand::after{content:'−'}.fr-section summary:focus-visible{outline:3px solid #ba8b2d;outline-offset:-4px}
#financial-survey #fr-result th:not(:first-child),#financial-survey #fr-result td:not(:first-child),#financial-survey #fr-exposure th,#financial-survey #fr-exposure td{text-align:right}#financial-survey #fr-result table th:first-child,#financial-survey #fr-result table td:first-child{text-align:left}

.workflow-notifications{display:grid;gap:3px;padding:5px 8px;border:1px solid var(--line);border-radius:12px;background:var(--glass);font-size:11px}.workflow-notification-title{font-weight:700;color:var(--muted)}.workflow-notifications>div{display:flex;gap:5px;flex-wrap:wrap}.workflow-notifications .btn{font-size:11px;padding:5px 8px;min-height:28px}.master-approval-table th,.master-approval-table td{padding:9px 10px}.master-approval-table th:nth-child(3),.master-approval-table td:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}.master-approval-table .kyc-customer-name{max-width:300px;white-space:normal;text-align:left;overflow-wrap:anywhere}.master-approval-table th:nth-child(4){text-align:left}.master-approval-table{min-width:680px}[data-notification-group=incoming] .panel{border-left:3px solid var(--accent)}
.top-actions{flex-wrap:wrap;min-width:0;max-width:100%}.workflow-notifications{min-width:0;max-width:100%}@media(max-width:750px){.workflow-notifications{width:100%}.workflow-notifications>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-notifications .btn{white-space:normal;overflow-wrap:anywhere}}
.dashboard-workflows{grid-template-columns:minmax(0,1fr)}.dashboard-workflows>[data-notification-group]{min-width:0}.dashboard-workflows .panel-head{flex-wrap:wrap}.dashboard-workflows .panel-note{overflow-wrap:anywhere}

.dashboard-workflows>[data-notification-group]{scroll-margin-top:160px}.fr-terms-table{table-layout:fixed;min-width:480px}.fr-terms-table th,.fr-terms-table td{padding:8px 12px;vertical-align:middle}.fr-terms-table th:first-child{width:13%;text-align:left}.fr-terms-table thead th:not(:first-child),.fr-terms-table td{text-align:right;font-variant-numeric:tabular-nums}.fr-terms-table td input{min-width:0;max-width:100%;padding:7px 9px;text-align:right}.fr-terms-table tbody th{font-size:12px;letter-spacing:0;text-transform:none}.fr-terms-wrap{border:1px solid var(--line);border-radius:12px}@media(max-width:750px){.dashboard-workflows>[data-notification-group]{scroll-margin-top:120px}.fr-terms-table th,.fr-terms-table td{padding:8px}.fr-terms-table th:first-child{width:15%}}
.fr-terms-table thead th:not(:first-child){width:29%}.fr-terms-table tbody th{background:transparent;color:var(--ink);font-weight:700}.fr-terms-table td{white-space:nowrap}

.facility-overview{margin:20px 0}.collection-table{table-layout:fixed;width:100%;font-size:11px}.collection-table th,.collection-table td{padding:8px 7px;white-space:normal;overflow-wrap:anywhere}.collection-table .num{white-space:normal}.collection-table .btn{white-space:normal;max-width:100%;font-size:10px;padding:5px}.collection-table .sub{font-size:10px}.collection-table .badge{white-space:normal}.collection-table .collection-note{max-width:220px}.collection-table td:last-child{width:85px}.collection-table .num{font-variant-numeric:tabular-nums}.collection-planning .panel-body{padding:12px}@media(max-width:900px){.collection-table{min-width:760px}}

.facility-overview.columns{grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);align-items:start}.facility-tier-table{max-width:100%;font-size:11px}.facility-tier-table th,.facility-tier-table td{padding:6px 12px}.facility-tier-table .tier-customer-count{min-width:42px;padding:3px 8px}.risk-column{width:105px;min-width:95px}.risk-column .badge{white-space:normal}.master-approval-collapse{margin:16px 0}.master-approval-collapse>.panel{margin:10px 0 0}.bucket-customer-table{font-size:11px}.bucket-customer-table th,.bucket-customer-table td{padding:8px 10px}.bucket-customer-table .btn{padding:4px 7px}@media(max-width:800px){.facility-overview.columns{grid-template-columns:minmax(0,1fr)}}
/* Consignment keeps long registers inside their own scrolling regions. */
.content[data-page=consignment]{min-width:0;max-width:100%;display:block}.cs-panel{min-width:0;max-width:100%;margin:16px 0}.cs-panel .table-wrap{max-width:100%;overflow:auto}.content[data-page=consignment]>details{min-width:0;max-width:100%;margin:16px 0}.cs-register,.cs-schedule,.cs-receipts{min-width:850px}.cs-search{max-width:420px;padding:12px}.cs-source{margin-bottom:16px}.cs-error{color:var(--danger,#b83a48);white-space:pre-wrap}.content[data-page=consignment] .kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.content[data-page=consignment] .kpi strong{display:block;font-size:26px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.content[data-page=consignment]>.btn{margin:3px}.content [hidden]{display:none!important}@media(max-width:700px){.content[data-page=consignment] .kpis{grid-template-columns:minmax(0,1fr)}.content[data-page=consignment] .page-head{display:block}.cs-panel .panel-head{flex-wrap:wrap}.content[data-page=consignment] .head-actions{flex-wrap:wrap;gap:6px}}
.cs-exports{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0;max-width:100%}.cs-grid.table.table-compact{min-width:850px!important;table-layout:auto!important}.cs-grid th,.cs-grid td{white-space:nowrap;padding:8px 10px}.cs-grid .btn{white-space:nowrap;max-width:none}.cs-panel .grid-controls{flex-wrap:wrap}.cs-panel .kpi{min-width:0}

.content[data-page="consignment"] .kpis{display:grid;gap:16px}

.fr-terms-table .fr-recommended{background:var(--surface-muted,#e8f0f5);font-weight:600}.fr-terms-table .fr-reviewed,.fr-terms-table td:has(#fr-reviewed-ceiling),.fr-terms-table td:has(#fr-reviewed-top){border-left:3px solid #b18a39;background:rgba(196,160,66,.12)}.fr-terms-table input{border:2px solid #b18a39;padding:9px;width:100%}.cs-workflow{display:flex;overflow:auto;margin:12px 0;gap:4px}.cs-workflow>div{min-width:140px;flex:1;padding:12px;border:1px solid #77909d;border-radius:12px;opacity:.7}.cs-workflow span{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#647987;color:white;margin-right:6px}.cs-workflow .active{opacity:1;border:2px solid #15948e;background:rgba(21,148,142,.15)}.cs-workflow .complete span{background:#267c54}.sync-warning{position:sticky;top:0;z-index:16;background:#fff0bf;color:#3b2c05;border:1px solid #ae8530;padding:12px;font-size:13px}.sync-warning button{margin-left:12px}
[data-theme=dark] .fr-terms-table .fr-recommended{background:#253c4a;color:#e8f3fb}

.sync-updated{padding:10px 18px;background:#e6f3ef;color:#174d45;border-bottom:1px solid #8cbbb0;font-size:13px}[data-theme=dark] .sync-updated{background:#163a36;color:#d5f6ec}

.save-status{position:fixed;bottom:22px;right:22px;z-index:1000;padding:14px 20px;max-width:calc(100vw - 32px);border-radius:14px;background:#e8f4ef;color:#164b3f;border:1px solid #609e8d;box-shadow:0 8px 28px #0003;transition:background-color .16s ease,transform .16s ease}.save-status[data-state=saving]::before{content:'';display:inline-block;width:12px;height:12px;margin-right:10px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:save-spin .8s linear infinite}.save-status[data-state=error]{background:#fff0e7;color:#7a251b;border-color:#af5043}.save-status button{margin-left:10px}@keyframes save-spin{to{transform:rotate(360deg)}}[data-theme=dark] .save-status{background:#153a32;color:#d8f7e8}[data-theme=dark] .save-status[data-state=error]{background:#412523;color:#ffe1da}
[data-theme=dark] #f-exception{appearance:none;display:inline-grid;place-content:center;vertical-align:middle;width:20px;height:20px;min-width:20px;border:2px solid #aec6d6;border-radius:4px;background:#152737;cursor:pointer}[data-theme=dark] #f-exception:checked{background:#e7c773;border-color:#e7c773}[data-theme=dark] #f-exception:checked::before{content:'';width:9px;height:5px;border-left:3px solid #172832;border-bottom:3px solid #172832;transform:rotate(-45deg) translateY(-1px)}[data-theme=dark] #f-exception:hover{border-color:#ffe49c}[data-theme=dark] #f-exception:focus-visible{outline:3px solid #ffe49c;outline-offset:3px}[data-theme=dark] #f-exception:disabled{cursor:not-allowed;border-style:dashed;opacity:.75}[data-theme=dark] .inline-options label:has(#f-exception){color:#e8f3fb}
@media(prefers-reduced-motion:reduce){.save-status{transition:none}.save-status[data-state=saving]::before{animation:none}}

/* Shared search affordance and CMS master product editor. */
input[type="search"],input.search,input[placeholder^="Search"],input[placeholder^="Cari"]{padding-left:2.5rem!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b8799' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E");background-position:.8rem center;background-size:1.1rem;background-repeat:no-repeat}
.cms-tabs{display:flex;gap:.5rem;margin-bottom:1.4rem;flex-wrap:wrap}.cms-tabs button{font:inherit;cursor:pointer;padding:.7rem 1rem;border:1px solid var(--line,#dce5ec);border-radius:10px;background:var(--panel,#fff);color:var(--text,#173d4d)}.cms-tabs button[aria-pressed=true]{background:#087f85;color:#fff;border-color:#087f85}.cms-tabs button:focus-visible{outline:3px solid #58aeb3;outline-offset:2px}[data-theme=dark] .cms-tabs button{background:#172c3d;color:#e7f0f7;border-color:#365368}[data-theme=dark] .cms-tabs button[aria-pressed=true]{background:#087f85;color:#fff}.cms-products{border:1px solid var(--line,#dce5ec);border-radius:12px;padding:1rem}.cms-product-head{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:space-between;align-items:center;margin-bottom:.75rem}.cms-product-head .field-help{flex-basis:100%}.cms-product-row,.cms-task-row{display:grid;grid-template-columns:minmax(160px,2fr) minmax(120px,1fr) minmax(90px,1fr) minmax(120px,1fr) auto;gap:.75rem;align-items:end;margin-bottom:.8rem}.cms-product-row output,.cms-task-row output,.cms-return-balance{display:block;padding:.8rem 0;font-weight:600}.cms-terms{white-space:pre-wrap}.cms-grand-total{font-weight:700}.cms-products .btn{min-height:42px}
#cms-form .form-grid{align-items:start}#cms-form .cms-products{grid-column:1/-1}.cms-product-row>.field,.cms-task-row>.field{min-width:0}.cms-product-row input,.cms-task-row input,.cms-task-row select{width:100%}
@media(max-width:680px){.cms-product-row,.cms-task-row{grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line,#dce5ec);padding-bottom:1rem}.cms-product-row>.field:first-child,.cms-task-row>.field:first-child{grid-column:1/-1}.cms-product-row>.btn,.cms-task-row>.btn{justify-self:end}.cms-tabs button{flex:1}}

/* CMS workflow actions stay distinct from headings in both themes. */
.cms-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:16px;margin:0;background:var(--glass-soft);border-bottom:1px solid var(--line)}
.page-head>.cms-actions{padding:0;background:transparent;border:0}.cms-actions>.info-strip{flex-basis:100%;margin:4px 0 0}
.cms-action.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;font-size:13px;font-weight:700;line-height:1.3;text-align:center;border:1px solid #087b80;cursor:pointer;box-shadow:0 2px 5px rgba(20,59,65,.12);text-decoration:none}
.cms-action.btn.cms-action-primary{background:#087b80;color:#fff}.cms-action.btn.cms-action-primary:hover{background:#06646a;color:#fff;border-color:#06646a;box-shadow:0 3px 8px rgba(20,59,65,.22)}
.cms-action.btn.cms-action-secondary{background:var(--input);color:var(--ink);border-color:var(--muted)}.cms-action.btn.cms-action-danger{background:#fff0ef;color:#9b2724;border-color:#b44842}.cms-action.btn.cms-action-danger:hover{background:#ffe2df;color:#84231f}
.cms-action-icon{display:inline-grid;place-items:center;flex:0 0 18px;font-size:18px;line-height:1}.cms-action.btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.cms-action.btn:disabled{cursor:not-allowed;box-shadow:none;opacity:.6}
[data-theme=dark] .cms-action.btn.cms-action-primary{background:#087b80;color:#fff;border-color:#79e3d6}[data-theme=dark] .cms-action.btn.cms-action-danger{background:#4b242b;color:#ffd9d5;border-color:#f0a8a1}[data-theme=dark] .cms-action.btn.cms-action-danger:hover{background:#66313a;color:#fff}
.cms-task-log{margin:12px 16px 16px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.cms-task-log>summary{padding:12px;cursor:pointer;font-size:13px;font-weight:600;background:var(--glass-soft)}.cms-task-log th,.cms-task-log td{white-space:normal}.table-compact .cms-action.btn{min-height:40px;padding:9px 12px;font-size:12px;text-align:center}
@media(max-width:680px){.cms-actions{padding:12px;gap:8px}.cms-actions .cms-action{flex:1 1 160px}.cms-task-log{margin:10px}.cms-action.btn{max-width:100%;white-space:normal}}

.cms-actions:empty{display:none}.content[data-page=cms] .table-wrap{max-width:100%;overflow-x:auto}.content[data-page=cms] .table{min-width:620px}.content[data-page=cms] .table .cms-action{min-width:80px;white-space:nowrap}.cms-task-log .table{min-width:650px}
.fr-checklist{margin:0;min-width:0;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}.fr-checklist legend{padding:0 6px;font-weight:700}.fr-checklist .fr-check{margin:0;width:100%;line-height:1.5}.fr-checklist .fr-check+.fr-check{margin-top:8px;padding-top:16px;border-top:1px solid var(--line)}.fr-checklist .fr-check input{width:18px;height:18px}.fr-section .fr-actions{justify-content:flex-end;padding-top:16px;border-top:1px solid var(--line)}.fr-status:empty,.fr-actions:empty{display:none}@media(max-width:640px){.fr-checklist{padding:10px 12px}.fr-section .fr-actions{gap:10px}}

.credit-history-event{padding:12px 0;border-bottom:1px solid var(--line);line-height:1.6;overflow-wrap:anywhere}.credit-history-event:last-child{border-bottom:0}.credit-history-terms{font-weight:600;font-variant-numeric:tabular-nums}
.credit-decision-history{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--glass-soft)}.credit-decision-history h3{margin:0 0 8px;font-size:14px}

/* Compact workflow registers keep context beside the action. */
.cms-task-list>summary{padding:16px;font-weight:700;cursor:pointer;border-bottom:1px solid var(--line);background:var(--glass-soft)}.cms-list-count{float:right;color:var(--muted);font-size:12px}.cms-list-filters{display:grid;grid-template-columns:1fr 1fr 1fr 2fr;gap:12px;padding:14px 16px}.cms-list-filters .field{min-width:0;margin:0}.cms-list-filters input,.cms-list-filters select{width:100%;min-width:0}.cms-detail-context{font-weight:600;padding:12px 16px;border-left:3px solid var(--accent);background:var(--glass-soft);overflow-wrap:anywhere}
.cms-task-list .table td,.cms-collection-schedule .table td,.approvals-table td{padding:9px 12px;vertical-align:middle}.cms-task-list .table th,.cms-collection-schedule .table th,.approvals-table th{padding:9px 12px}.cms-task-list .sub,.cms-collection-schedule .sub,.approvals-table .sub{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.4}.cms-task-list .cms-action.btn,.cms-collection-schedule .cms-action.btn{min-height:34px;padding:6px 10px}.approvals-table .badge{font-size:11px;padding:3px 7px}.approvals-table .btn{min-height:34px}.cms-return-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;align-items:end}.cms-return-row output{display:block;padding:10px 0;font-weight:600}
@media(max-width:800px){.cms-list-filters{grid-template-columns:1fr 1fr}.cms-list-filters .field:last-child{grid-column:1/-1}.cms-return-row{grid-template-columns:1fr 1fr}.cms-return-row>.field:first-child{grid-column:1/-1}.dashboard-workflows .approvals-table{min-width:520px}}
.fr-task-log .table td{vertical-align:top;white-space:normal;overflow-wrap:anywhere}.fr-task-log .sub{display:block;font-size:12px;color:var(--muted);margin-top:5px}.fr-task-log details>summary{cursor:pointer;font-weight:600}.fr-task-log td p{margin:8px 0 0}.fr-task-log>.table-wrap>.table{min-width:650px}.fr-task-log details .table{min-width:420px}
.fr-task-log>.table-wrap>.table{table-layout:fixed}.fr-task-log th:nth-child(1){width:19%}.fr-task-log th:nth-child(2){width:14%}.fr-task-log th:nth-child(3){width:18%}.fr-task-log th:nth-child(4){width:49%}.fr-log-changes{margin-top:8px}.fr-log-changes>div{padding:8px 0;border-bottom:1px solid var(--line)}.fr-log-changes>div:last-child{border:0}.fr-log-changes strong,.fr-log-changes span{display:block;line-height:1.5}.fr-log-changes span{margin-top:3px;font-variant-numeric:tabular-nums}

.cms-return-item{padding:12px 0;border-bottom:1px solid var(--border)}
.cms-return-row{grid-template-columns:minmax(0,2fr) minmax(70px,1fr) minmax(70px,1fr) minmax(90px,1fr) auto}
.cms-return-stock{display:flex;flex-wrap:wrap;gap:8px 24px;margin:6px 0;color:var(--muted);font-size:12px}
.cms-return-note{font-size:12px;color:var(--muted)}
.cms-invoice-frame{width:100%;height:680px;border:0;background:#fff;border-radius:12px;display:block}
@media(max-width:620px){.cms-return-row{grid-template-columns:1fr 1fr}.cms-return-row>.field:first-child{grid-column:1/-1}.cms-return-row>button{justify-self:end}.cms-invoice-frame{height:70vh;min-height:420px}}

.modal-foot{flex-wrap:wrap;flex-shrink:0}.modal-head>div{min-width:0}.modal-head p{overflow-wrap:anywhere}
.content .table th{padding:8px 10px;white-space:normal;letter-spacing:0;line-height:1.3;text-transform:none}.content .table td{padding:8px 10px;line-height:1.35}.content .table .btn{padding:6px 8px;min-height:32px}.content .table .sub{font-size:11px;margin-top:3px}
@media(min-width:1000px){.content{padding:22px}.content .panel-head{padding:12px 16px}.dashboard-workflows .table{table-layout:fixed;min-width:0}.dashboard-workflows .table th,.dashboard-workflows .table td{overflow-wrap:anywhere}.dashboard-workflows .table .badge{white-space:normal}.dashboard-workflows .table td:first-child{font-size:11px}}

@media(min-width:1000px){.dashboard-workflows .next-actions-table th:nth-child(1){width:8%}.dashboard-workflows .next-actions-table th:nth-child(2){width:24%}.dashboard-workflows .next-actions-table th:nth-child(3){width:17%}.dashboard-workflows .next-actions-table th:nth-child(4){width:27%}.dashboard-workflows .next-actions-table th:nth-child(5){width:8%}.dashboard-workflows .next-actions-table th:nth-child(6){width:10%}.dashboard-workflows .next-actions-table th:nth-child(7){width:6%}.dashboard-workflows .table .num{white-space:normal}.content .table-wrap .invoice-table,.permission-page table,.permission-page [data-matrix] table{min-width:0}.permission-page th,.permission-page td{padding:6px}.content .table-wrap .customer-table{min-width:0}}
@media(max-width:999px){.next-actions-table{min-width:800px}}
.dashboard-workflows .table .btn{white-space:normal;max-width:100%;overflow-wrap:anywhere;text-align:left}

@media(min-width:1000px){.dashboard-workflows .next-actions-table th:nth-child(1){width:8%}.dashboard-workflows .next-actions-table th:nth-child(2){width:22%}.dashboard-workflows .next-actions-table th:nth-child(3){width:16%}.dashboard-workflows .next-actions-table th:nth-child(4){width:24%}.dashboard-workflows .next-actions-table th:nth-child(5){width:8%}.dashboard-workflows .next-actions-table th:nth-child(6){width:10%}.dashboard-workflows .next-actions-table th:nth-child(7){width:6%}.dashboard-workflows .next-actions-table th:nth-child(8){width:6%}}

.dashboard-workflows .table td:last-child{padding-left:5px;padding-right:5px}.dashboard-workflows .table td:last-child .btn{white-space:nowrap;overflow-wrap:normal;padding-left:6px;padding-right:6px}

.content .facility-tier-table td{padding:6px 10px}.content .facility-tier-table .btn{min-height:28px;padding:4px 8px}

.cms-product-link{border:0;background:transparent;padding:0;text-align:left;font:inherit;font-weight:600;color:var(--accent);text-decoration:underline;text-underline-offset:3px;white-space:normal;overflow-wrap:anywhere;cursor:pointer}.cms-product-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.cms-item-list ul{list-style:none;padding:0;margin:0}.cms-item-list li+li{margin-top:8px}.cms-item-list details{margin-top:6px}.cms-item-list summary{cursor:pointer;color:var(--muted);font-size:11px}.cms-total{font-weight:600;border-top:1px solid var(--line);padding-top:6px}.cms-stock-label{font-size:10px;color:var(--muted);display:block;margin-bottom:5px}.content[data-page=cms] #cms-detail>.panel:not(:last-child) .table th:nth-child(1){width:24%}.content[data-page=cms] #cms-detail>.panel:not(:last-child) .table th:nth-child(2){width:31%}.content[data-page=cms] #cms-detail>.panel:not(:last-child) .table th:last-child{width:17%}.cms-item-list .sub{overflow-wrap:anywhere}

.approval-customer{display:block;line-height:1.4;overflow-wrap:anywhere}.approval-workflow{font-weight:600}.approval-reference{font-size:10px!important;color:var(--muted)}.dashboard-workflows .approvals-table th:nth-child(1){width:44%}.dashboard-workflows .approvals-table th:nth-child(2){width:40%}.dashboard-workflows .approvals-table th:nth-child(3){width:9%}.dashboard-workflows .approvals-table th:nth-child(4){width:7%}.dashboard-workflows .approvals-table .btn{white-space:nowrap}

.content[data-page=cms] #cms-detail .table .cms-action{max-width:100%;min-width:0;white-space:normal}.content[data-page=cms] #cms-detail .table td{overflow-wrap:anywhere}.cms-collection-schedule .table th:nth-child(1){width:28%}.cms-collection-schedule .table th:nth-child(2){width:34%}.cms-collection-schedule .table th:last-child{width:10%}

.report-region-control{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;margin:12px 0;border:1px solid var(--line);border-radius:12px;background:var(--glass)}.report-region-tabs{display:flex;gap:6px;flex-wrap:wrap}.report-region-tabs [aria-pressed=true]{background:var(--accent);color:white;border-color:var(--accent)}.region-context{display:inline-block;padding:6px 14px;margin:10px 16px 0;background:var(--glass-soft);border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:11px;font-weight:600}.facility-tier-table th,.facility-tier-table td{padding:5px 8px!important}
/* Authorized customer decisions and daily work report at the dashboard foot. */
.dashboard-work-report{margin-top:18px;border-top:3px solid #0c8588}.dashboard-work-report>.panel-head{padding-bottom:10px}.work-report-actions{display:flex;gap:6px;align-items:center}.work-report-filters{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:10px;margin:8px 0 14px}.work-report-filters label{display:grid;gap:4px;font-size:11px;color:var(--muted,#586f77)}.work-report-filters select,.work-report-filters input{min-width:0;width:100%;border:1px solid var(--border,#cfdddd);border-radius:7px;padding:7px;background:var(--surface,#fff);color:inherit;font-size:12px}.work-report-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.work-report-cards>div{display:grid;gap:3px;padding:10px 14px;background:var(--surface,#edf7f6);border:1px solid var(--border,#d8e5e5);border-radius:9px}.work-report-cards strong{font-size:26px;line-height:1.15}.work-report-cards span{font-size:11px}.work-report-cards .work-report-rejected{background:#fff0f1;color:#971c32;border-color:#f2b8c2}.work-report-balances{display:flex;gap:20px;flex-wrap:wrap;padding:12px 0;font-size:12px}.work-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dashboard-work-report h3{font-size:13px;margin:8px 0}.work-report-table{width:100%;table-layout:fixed}.work-report-table td,.work-report-table th{padding:7px 8px!important;font-size:11px;white-space:normal!important;overflow-wrap:anywhere}.work-report-table .sub{font-size:10px;display:block;margin-top:2px}.work-report-rejected-panel{border-left:3px solid #c63955;padding-left:10px}.work-report-rejected-panel h3,.work-report-rejection-label{color:#a31f38;font-weight:700}.work-report-more{font-size:11px;margin:5px 0}.work-report-more summary{cursor:pointer;color:#08767d}.work-report-note{margin:10px 0 0;font-size:10px!important}.dashboard-work-report [data-work-status]{font-size:11px;margin:5px 0 0}[data-theme=dark] .work-report-cards .work-report-rejected{background:#422431;color:#ffc3ce;border-color:#a35968}[data-theme=dark] .work-report-rejected-panel h3,[data-theme=dark] .work-report-rejection-label{color:#ffb7c6}[data-theme=dark] .work-report-more summary{color:#69d6d2}@media(max-width:850px){.work-report-filters{grid-template-columns:1fr 1fr}.work-report-grid{grid-template-columns:1fr}.work-report-cards{grid-template-columns:1fr 1fr}.dashboard-work-report>.panel-head{flex-wrap:wrap;gap:10px}}

[data-theme=dark] .work-report-cards>div:not(.work-report-rejected){background:#21384a;color:#eaf4ff;border-color:#466071}[data-theme=dark] .work-report-cards>div:not(.work-report-rejected) span{color:#bdd0dd}[data-theme=dark] .work-report-filters label{color:#bdd0dd}[data-theme=dark] .work-report-filters select,[data-theme=dark] .work-report-filters input{background:#203649;color:#eaf4ff;border-color:#466071;color-scheme:dark}
.work-report-cards>div:has([data-work-view]){padding:0}.work-report-cards [data-work-view]{display:grid;gap:4px;width:100%;height:100%;padding:10px 14px;text-align:left;font:inherit;color:inherit;background:transparent;border:0;border-radius:8px;cursor:pointer}.work-report-cards [data-work-view] small{font-size:10px;text-decoration:underline}.work-report-cards [data-work-view]:hover{box-shadow:inset 0 0 0 2px #0c8588}.work-report-cards [data-work-view]:focus-visible{outline:3px solid #0c8588;outline-offset:3px}.work-report-cards [aria-expanded=true]{box-shadow:inset 0 0 0 2px #0c8588}.work-report-drilldown{margin:14px 0;padding:10px;border:1px solid var(--border,#cfdddd);border-radius:9px}.work-report-drilldown .work-report-table{min-width:650px}.work-report-flow{margin-top:5px;white-space:normal;max-width:100%}

.collection-table .collection-actions{display:flex;flex-direction:column;gap:5px;align-items:stretch;min-width:0}.content .collection-table .collection-actions .btn{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:32px;margin:0;line-height:1.3;text-align:center;text-decoration:none;overflow-wrap:normal}
/* Daily financial observations: bounded charts with an accessible values table. */
.dashboard-trends{margin:16px 0;--trend-blue:#2563eb;--trend-amber:#b45309}.dashboard-trends .panel-head{gap:12px;flex-wrap:wrap}.trend-periods{display:flex;gap:5px}.trend-periods [aria-pressed="true"]{background:#0f766e;color:#fff;border-color:#0f766e}.dashboard-trend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}.trend-card{min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--glass-soft)}.trend-card h3{font-size:12px;margin:0 0 7px}.trend-value{display:block;font-size:22px;line-height:1.3;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.trend-plot{display:block;width:100%;height:148px;margin-top:3px;overflow:visible}.trend-grid-line{stroke:var(--line);stroke-dasharray:3 4}.trend-axis{fill:var(--muted);font:10px system-ui,sans-serif}.trend-line{fill:none;stroke:var(--trend-blue);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.trend-point{fill:var(--trend-blue);stroke:var(--glass);stroke-width:1}.overdue-trend .trend-line{stroke:var(--trend-amber)}.overdue-trend .trend-point{fill:var(--trend-amber)}.trend-note{padding:0 16px;margin:0 0 12px;color:var(--muted);font-size:11px}.trend-data{margin:0 16px 14px;font-size:12px}.trend-data summary{cursor:pointer;padding:6px 0;font-weight:600}.trend-data th,.trend-data td{padding:6px 9px}.trend-aging-bars{display:grid;gap:12px;margin-top:18px}.trend-aging-row{display:grid;grid-template-columns:82px minmax(25px,1fr) auto;gap:7px;align-items:center;font-size:10px}.trend-aging-row strong{font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.trend-aging-track{display:block;width:100%;height:8px;border-radius:5px;background:var(--line);overflow:hidden}.trend-aging-track>rect{fill:#b45309}.trend-aging-share{display:block;color:var(--muted);font-size:10px}.trend-aging-track .aging-band-0{fill:#15803d}.trend-aging-track .aging-band-1{fill:#ca8a04}.trend-aging-track .aging-band-3{fill:#c2410c}.trend-aging-track .aging-band-4{fill:#dc2626}
@media(max-width:1000px){.dashboard-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aging-trend{grid-column:1/-1}.trend-aging-row{font-size:12px;grid-template-columns:100px 1fr auto}.trend-aging-row strong{font-size:12px}}
@media(max-width:600px){.dashboard-trend-grid{grid-template-columns:minmax(0,1fr);padding:10px}.aging-trend{grid-column:auto}.trend-value{font-size:21px}.trend-aging-row{font-size:10px;grid-template-columns:82px minmax(20px,1fr) auto}.trend-aging-row strong{font-size:10px}.trend-periods .btn{padding:6px 9px}}

:root[data-theme=dark] .dashboard-trends{--trend-blue:#60a5fa;--trend-amber:#fbbf24}
.panel>.table-search-toolbar{margin:0;padding:10px 14px;border-bottom:1px solid var(--line);gap:10px}.table-search-toolbar .search{width:min(100%,440px);max-width:440px;min-width:160px;flex:1}.table-search-toolbar .toolbar-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px}.cms-master-search .field{margin:0;max-width:440px}.table-search-toolbar+.table-wrap{margin-top:0}
@media(max-width:600px){.panel>.table-search-toolbar{padding:10px;flex-wrap:wrap}.table-search-toolbar .search{width:100%;max-width:none}.table-search-toolbar .toolbar-right{width:100%;justify-content:space-between}.cms-master-search .field{max-width:none}}
.content .table-wrap .invoice-table{min-width:1040px}.content .invoice-table th,.content .invoice-table td{padding:7px 6px}.content .invoice-table th:nth-child(1){width:10%}.content .invoice-table th:nth-child(2){width:14%}.content .invoice-table th:nth-child(3){width:9%}.content .invoice-table th:nth-child(4){width:8%}.content .invoice-table th:nth-child(5){width:5%}.content .invoice-table th:nth-child(6),.content .invoice-table th:nth-child(7),.content .invoice-table th:nth-child(8){width:9%}.content .invoice-table th:nth-child(9){width:6%}.content .invoice-table th:nth-child(10){width:7%}.content .invoice-table th:nth-child(11){width:6%}.content .invoice-table th:nth-child(12){width:8%}.invoice-table td:first-child .btn{display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}

/* Desktop portfolio row: monitoring, facility tiers, utilisation. */
.dashboard-portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;margin:14px 0}
.dashboard-portfolio-grid>.panel{min-width:0;margin:0;overflow:hidden}
.dashboard-portfolio-grid .panel-head{padding:12px;align-items:flex-start;flex-wrap:wrap;gap:5px}
.dashboard-portfolio-grid .panel-head h2{font-size:14px;line-height:1.3}
.dashboard-portfolio-grid .panel-note{white-space:normal;overflow-wrap:anywhere;font-size:10px}
.dashboard-portfolio-grid .panel-body{padding:10px 12px}
.dashboard-portfolio-grid .split-stat{gap:7px;font-size:11px;align-items:center;padding:7px 0}
.dashboard-portfolio-grid .split-stat>span{min-width:0;overflow-wrap:anywhere}
.dashboard-portfolio-grid .split-stat strong,.dashboard-portfolio-grid .balance-link{font-size:12px;white-space:normal;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.dashboard-portfolio-grid .report-region-control{padding:8px 10px;gap:5px;flex-wrap:wrap}
.dashboard-portfolio-grid .report-region-tabs{display:flex;flex-wrap:wrap;gap:4px}
.dashboard-portfolio-grid .report-region-tabs .btn{padding:5px 7px;font-size:10px;min-height:28px}
.dashboard-portfolio-grid .table-wrap{min-width:0;margin:0}
.dashboard-portfolio-grid .facility-tier-table{min-width:0!important;width:100%;table-layout:fixed}
.dashboard-portfolio-grid .facility-tier-table th,.dashboard-portfolio-grid .facility-tier-table td{white-space:normal;overflow-wrap:anywhere;padding:5px 9px!important}
.incoming-workflows-table{width:100%;table-layout:fixed;min-width:0!important}
.incoming-workflows-table th,.incoming-workflows-table td{padding:7px 9px!important;white-space:normal!important;overflow-wrap:anywhere;font-size:11px;vertical-align:middle}
.incoming-workflows-table th:first-child{width:40%}.incoming-workflows-table th:nth-child(2){width:28%}.incoming-workflows-table th:nth-child(3){width:23%}.incoming-workflows-table th:last-child{width:9%}
.incoming-workflows-table .sub{display:block;font-size:10px;margin-top:3px;line-height:1.4}
.incoming-workflows-table .badge{white-space:normal;font-size:10px}.incoming-workflows-table .btn{min-width:0;padding:5px 7px;font-size:11px}
@media(max-width:1000px){.dashboard-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-portfolio-grid>.panel:last-child{grid-column:1/-1}}
@media(max-width:650px){.dashboard-portfolio-grid{grid-template-columns:minmax(0,1fr);gap:10px}.dashboard-portfolio-grid>.panel:last-child{grid-column:auto}.dashboard-portfolio-grid .split-stat{font-size:12px}.incoming-workflows-table th,.incoming-workflows-table td{padding:6px 5px!important;font-size:10px}.incoming-workflows-table th:first-child{width:34%}.incoming-workflows-table th:nth-child(2){width:26%}.incoming-workflows-table th:nth-child(3){width:24%}.incoming-workflows-table th:last-child{width:16%}.incoming-workflows-table .btn{padding:6px 4px;font-size:10px}.incoming-workflows-table .sub{font-size:9px}}

/* A/R aging shares use native SVG widths, independent of inline style rules. */
.share-track>rect{fill:var(--bucket-color,var(--accent))}
.exposure-bar{display:block;width:100%;min-width:0}
.exposure-bar>rect{fill:#299b99}
.bar-row:nth-child(2) .exposure-bar>rect{fill:#db9d3d}
.bar-row:nth-child(3) .exposure-bar>rect{fill:#c96758}
.save-status{width:360px;line-height:1.45;pointer-events:none}
.save-status button{pointer-events:auto}
.save-status-title{display:block;font-size:14px}
.save-status-detail{display:block;font-size:12px;margin-top:5px;overflow-wrap:anywhere}
.save-status-track{display:block;height:4px;margin-top:12px;background:#c8ddd5;border-radius:4px;overflow:hidden}
.save-status-track>span{display:block;width:35%;height:100%;background:currentColor;animation:save-travel 1.4s ease-in-out infinite}
.save-status[data-state=saving]::before{float:left;margin-top:3px}
[data-theme=dark] .save-status-track{background:#37584e}
@keyframes save-travel{from{transform:translateX(-110%)}to{transform:translateX(390%)}}
@media(prefers-reduced-motion:reduce){.save-status-track>span{animation:none;transform:translateX(90%)}}

.save-status[data-state=saved][data-confirmed=true]::before{content:'✓';float:left;display:inline-grid;place-items:center;width:22px;height:22px;margin:0 10px 0 0;border-radius:50%;background:#087b80;color:#fff;font-weight:800;animation:save-confirm .22s ease-out}
.save-status[data-state=review]{background:#fff5df;color:#6c4300;border-color:#ae791a}
[data-theme=dark] .save-status[data-state=review]{background:#3b301b;color:#ffe4a7;border-color:#ac8536}
@keyframes save-confirm{from{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.save-status[data-state=saved][data-confirmed=true]::before{animation:none}}

/* Keep saved financial data readable inside its own scroll area on phones. */
.financial-identities table{min-width:900px}.financial-identities td:last-child{min-width:120px}.financial-identities .btn{white-space:nowrap}
.financial-identities .lite-identities-table{min-width:1100px;table-layout:auto}.lite-identities-table .fr-identity-sort{white-space:nowrap;max-width:none}

.financial-import-table{min-width:1000px}#financial-import-form .modal-foot{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}

#financial-import-form{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}#financial-import-form .modal-body{flex:1;min-height:0;overflow:auto}#financial-import-form .modal-foot{flex-shrink:0}#financial-import-preview .financial-import-table{min-width:1000px}

/* Versioned KYC trust: text and shapes remain meaningful without color. */
.kyc-state{display:inline-flex;align-items:center;gap:.4rem;font-weight:650;font-size:.8rem;line-height:1.45;max-width:100%;white-space:normal}
.kyc-state svg{width:1.15rem;height:1.15rem;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.kyc-approved{color:#1763aa}.kyc-reverify,.kyc-pending{color:#805600}.kyc-revoked{color:#b52532}
[data-theme="dark"] .kyc-approved{color:#8ac5ff}[data-theme="dark"] .kyc-reverify,[data-theme="dark"] .kyc-pending{color:#ffd477}[data-theme="dark"] .kyc-revoked{color:#ffabb3}
.kyc-summary{padding:1rem 0}.kyc-summary p{margin:.5rem 0;max-width:70ch}.kyc-history td{vertical-align:top;overflow-wrap:anywhere}.kyc-history dl{display:grid;grid-template-columns:minmax(5rem,1fr) 2fr;gap:.3rem .75rem}.kyc-history dd{margin:0;overflow-wrap:anywhere}

#kyc-override-error:empty{display:none}.field.kyc-override-confirm{display:flex;flex-direction:row;align-items:flex-start;gap:.6rem}.kyc-override-confirm input{width:auto;margin:.1rem 0 0}.kyc-override-confirm span{line-height:1.5}

/* Saved identity sorting and paging stay next to the records they control. */
.financial-identities .fr-identity-toolbar{justify-content:flex-start}.fr-identity-pages{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:12px;color:var(--ink);font-variant-numeric:tabular-nums}.financial-identities .fr-page-arrow{display:inline-flex;align-items:center;justify-content:center;width:36px;min-height:36px;padding:0}.fr-identity-sort{display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;max-width:100%;padding:5px 0;border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.fr-identity-sort svg{flex:none}.fr-identity-sort:hover{color:var(--accent)}.fr-identity-sort:focus-visible,.fr-page-arrow:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.financial-identities th[aria-sort=ascending],.financial-identities th[aria-sort=descending]{color:var(--accent)}
@media(max-width:600px){.financial-identities .fr-identity-toolbar .search{width:auto;min-width:140px}.financial-identities .fr-page-arrow{width:40px;min-height:40px}}

.financial-identities .fr-identity-status{margin:6px 0 0;color:var(--ink);font-size:12px;line-height:1.5;font-variant-numeric:tabular-nums}

/* Shared KYC review list. */
.workflow-pages{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;font-size:12px;color:var(--muted)}.workflow-pages>div{display:flex;gap:6px}.kyc-decision-purpose{line-height:1.6;margin:0 0 16px;color:var(--ink)}.kyc-review-context{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 16px;margin:0 0 18px;font-size:12px}.kyc-review-context dt{font-weight:600;color:var(--muted)}.kyc-review-context dd{margin:0;overflow-wrap:anywhere}#kyc-review-list table{min-width:500px}
