/* ANZ business desk: compact hierarchy, readable columns, shared web/App geometry. */
:root { --blue:#155bc6; --paper:#f3f6fa; }
.main :is(section,article,header,form,fieldset,details,.panel,.stack,.table-wrap,.actions,.toolbar) { min-width:0; max-width:100%; }
.main :is(h1,h2,h3,p,a,strong,small,dt,dd,.cell-sub,.badge),dialog :is(h2,h3,p,label,small,.notice) { overflow-wrap:anywhere; }
.main :is(img,video,canvas),dialog :is(img,video,canvas) { max-width:100%; }
.main :is(input,select,textarea),dialog :is(input,select,textarea) { min-width:0; max-width:100%; }
.main :is(.detail-grid,.settings-grid,.dashboard-grid,.assistant-layout,.device-grid,.manager-home,.manager-desk) > * { min-width:0; }
.main .panel-head > div,.page-head > div,.toolbar > *,dialog .dialog-head h2 { min-width:0; }
.main .panel-head,.main .page-head > .actions { flex-wrap:wrap; }
.main .btn,dialog .btn { max-width:100%; white-space:normal; }
.table-wrap { max-width:100%; overscroll-behavior-inline:contain; scrollbar-width:thin; }
.table-wrap:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
.form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
dialog { overscroll-behavior:contain; }
.metric-value,.home-numbers strong,.home-focus>strong { font-variant-numeric:tabular-nums; }
.web-mobile-nav { display:none; }

.home-desk { display:grid; gap:24px; }
.home-header { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.home-header h1 { font-size:32px; letter-spacing:-.7px; }
.home-greeting { color:var(--muted); margin-top:8px; }
.home-scope { flex-shrink:0; padding:7px 12px; border:1px solid #d5e1ef; color:#36516f; border-radius:30px; font-size:12px; background:#fff; }
.home-overview { display:grid; grid-template-columns:minmax(260px,.9fr) minmax(0,1.6fr); gap:20px; }
.home-focus { display:grid; grid-template-columns:1fr auto; align-items:center; gap:8px 18px; padding:24px 28px; border-radius:16px; color:white; background:linear-gradient(115deg,#10253e,#184e83); }
.home-focus:hover { text-decoration:none; background:linear-gradient(115deg,#14304d,#1c5e9d); }
.home-focus>span:first-child { font-size:13px; color:#d9e8fa; }
.home-focus>strong { grid-column:2; grid-row:1 / span 2; font:650 46px/1 var(--display); }
.home-focus>small { color:#d9e8fa; font-size:12px; }
.home-focus .home-focus-link { grid-column:1 / -1; border-top:1px solid #ffffff2b; padding-top:14px; margin-top:6px; font-size:12px; }
.home-numbers { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); background:white; border:1px solid var(--line); border-radius:16px; padding:24px 0; align-items:center; }
.home-numbers a { display:grid; gap:12px; padding:10px 24px; border-right:1px solid var(--line); color:var(--ink); }
.home-numbers a:last-child { border:0; }
.home-numbers a:hover { text-decoration:none; color:var(--blue); }
.home-numbers span { color:var(--muted); font-size:12px; }
.home-numbers strong { font:650 32px/1.15 var(--display); }
.home-section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.home-section-head h2 { font-size:16px; }
.home-launch-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.home-launch { display:flex; align-items:center; gap:13px; min-width:0; padding:19px; border:1px solid var(--line); border-radius:12px; background:#fff; color:var(--ink); transition:border-color .16s,background .16s; }
.home-launch:hover { text-decoration:none; border-color:#9cb9dd; background:#f8fbff; }
.home-launch>span:last-child { min-width:0; }
.home-launch strong { display:block; font-size:14px; font-weight:650; }
.home-launch small { display:block; color:var(--muted); margin-top:4px; font-size:11px; }
.home-launch-icon { display:grid; place-items:center; flex:0 0 38px; width:38px; height:38px; border-radius:10px; background:#edf3fc; color:var(--blue); font:22px/1 var(--display); }
.home-create-bar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:16px 20px; background:#eaf0f7; border:1px solid #dce5ef; border-radius:12px; }
.home-create-bar>strong { font-size:13px; margin-right:6px; }
.home-lower { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:20px; align-items:start; }
.home-desk .panel { border-radius:14px; }
.home-priority .panel-head,.home-flow .panel-head { padding:19px 22px; }
.home-priority h2,.home-flow h2 { font-size:16px; }
.home-priority-item { display:grid; grid-template-columns:6px minmax(0,1fr) auto 12px; align-items:center; gap:12px; padding:18px 22px; border-bottom:1px solid #edf1f6; color:var(--ink); }
.home-priority-item:last-child { border-bottom:0; }
.home-priority-item:hover { background:#f7faff; text-decoration:none; }
.home-priority-dot { width:6px; height:6px; border-radius:50%; background:#9bb2ce; }
.is-overdue .home-priority-dot { background:var(--danger); }
.home-priority-copy { min-width:0; }
.home-priority-copy strong { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:13px; }
.home-priority-copy small { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; margin-top:5px; font-size:11px; }
.home-priority-time { color:var(--muted); font-size:11px; white-space:nowrap; }
.is-overdue .home-priority-time { color:var(--danger); }
.home-flow-links { padding:10px 18px; }
.home-flow-links .home-launch { border:0; border-radius:0; padding:13px 4px; position:relative; }
.home-flow-links .home-launch:not(:last-child)::after { content:''; position:absolute; left:23px; bottom:-7px; height:15px; border-left:1px solid #cbd8e8; }
.home-flow-links .home-launch-icon { border-radius:50%; }
.home-secondary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:14px; border-top:1px solid var(--line); gap:8px; }
.home-secondary .home-launch { padding:10px; border:0; background:#f5f8fc; gap:8px; }
.home-secondary .home-launch-icon { flex-basis:26px; width:26px; height:26px; background:transparent; }
.home-secondary strong { font-size:12px; }
.home-support { border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.home-support summary { padding:17px 0; cursor:pointer; }
.home-support summary span { margin-left:18px; }
.home-support-content { display:flex; flex-wrap:wrap; gap:12px; align-items:center; padding-bottom:16px; }
.all-features { grid-template-columns:repeat(3,minmax(0,1fr)); }
.all-features .home-launch { padding:14px 12px; }
.all-features [aria-current=page] { border-color:var(--blue); background:#edf3fc; }

@media(max-width:1180px) {
 .home-overview { grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); }
 .home-numbers { grid-template-columns:repeat(2,minmax(0,1fr)); padding:6px 0; }
 .home-numbers a { padding:14px 22px; gap:4px; }
 .home-numbers a:nth-child(2n) { border-right:0; }
 .home-numbers strong { font-size:26px; }
 .home-launch-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
 .home-launch-grid .home-launch { flex-direction:column; align-items:flex-start; padding:16px; gap:9px; }
 .home-lower { grid-template-columns:minmax(0,1fr); }
 .home-flow-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
 .home-flow-links .home-launch { align-items:flex-start; }
 .home-flow-links .home-launch::after { display:none; }
}
@media(max-width:760px) {
 html { scroll-padding-bottom:96px; }
 body { font-size:14px; }
 html:not(.mobile-business) .app-shell { display:block; padding-bottom:calc(78px + env(safe-area-inset-bottom)); }
 html:not(.mobile-business) .sidebar { display:none; }
 .main,.mobile-business .main { width:100%; padding:20px 14px 28px; }
 .topbar { min-height:58px; padding:12px 14px; gap:10px; }
 .topbar .server-state { display:none; }
 .topbar .breadcrumb { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
 .topbar-right { flex-shrink:0; }
 .web-mobile-nav { position:fixed; z-index:8; bottom:0; inset-inline:0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); padding:5px max(6px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left)); background:#fff; border-top:1px solid var(--line); box-shadow:0 -5px 24px #10253e06; }
 .web-mobile-nav>a,.web-mobile-nav>button { min-width:0; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:3px; min-height:56px; padding:5px 0; border:0; border-radius:9px; color:var(--muted); background:none; font:12px var(--body); text-decoration:none; }
 .web-mobile-nav>a>span:first-child,.web-mobile-nav>button>span:first-child { font-size:21px; }
 .web-mobile-nav [aria-current=page],.web-mobile-nav .active { color:var(--blue); background:#edf3fc; }
 .page-head { flex-direction:column; gap:14px; margin-bottom:20px; }
 h1,.mobile-business .page-head h1 { font-size:24px; line-height:1.35; letter-spacing:-.4px; }
 .page-head p { font-size:13px; line-height:1.7; margin-top:7px; }
 .page-head>.actions { width:100%; gap:8px; }
 .page-head>.actions>.btn { flex:1 1 128px; }
 .btn,.btn.small,.btn.text,.tab,dialog summary { min-height:44px; }
 .btn { padding:9px 12px; }
 input,select,textarea { font-size:16px; }
 .form-grid,.settings-grid,.detail-grid,.assistant-layout,.manager-home,.manager-desk { grid-template-columns:minmax(0,1fr); }
 .form-grid>.field { grid-column:1; }
 .metrics { grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:18px; }
 .metric { padding:13px 16px; }
 .metric-value { font-size:27px; margin-top:6px; }
 .panel-head,.panel-body { padding:16px; }
 .panel-head { flex-wrap:wrap; gap:10px; }
 .panel-head>div { flex:1 1 140px; }
 .panel-head .btn { flex-shrink:0; }
 .toolbar { flex-wrap:wrap; align-items:stretch; gap:10px; }
 .toolbar>.search { width:100%; }
 .table-wrap table { min-width:680px; }
 .table-wrap th { padding:12px 14px; }
 .table-wrap td { min-width:96px; padding:14px; max-width:360px; overflow-wrap:anywhere; }
 .table-wrap td:first-child { min-width:180px; }
 .table-wrap td .actions { min-width:150px; }
 .product-catalog .table-wrap table,.customers-page .table-wrap table,.customer-profile .table-wrap table,.performance-table table { min-width:0; }
 .customer-profile .table-wrap td:first-child,.customers-page .table-wrap td:first-child,.performance-table td:first-child { min-width:0; }
 .customers-page .table-wrap td,.customer-profile .table-wrap td { padding:8px 0; }
 .customers-page .cell-sub { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
 .customers-page .cell-main { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
 .customers-page td:nth-child(2)>div { max-height:96px; overflow:auto; }
 .mobile-record-list { align-items:start; }
 .mobile-record-link>strong,.mobile-record-link>span:not(.mobile-record-meta) { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; max-width:100%; }
 .key-value { grid-template-columns:88px minmax(0,1fr); }
 .inline-controls { flex-wrap:wrap; }
 .inline-controls>.field { flex:1 1 150px; }
 .payment-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .task-row { grid-template-columns:56px minmax(0,1fr); padding:16px; gap:10px; }
 .task-row>.actions { grid-column:2; }
 .task-row .evidence { max-height:150px; overflow:auto; }
 .device-mini,.lifecycle-row,.order-ai-heading,.order-ai-footer,.message-head { flex-wrap:wrap; }
 .order-ai-update { padding:18px 14px; }
 .order-ai-form textarea { font-size:16px; min-height:110px; }
 .empty { padding:28px 18px; }
 .work-item { padding:14px; }
 .work-item h3 { font-size:14px; }
 .work-item-action { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
 .work-item h3 { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
 .opportunity-card h3,.opportunity-next p { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
 .work-item-content .btn.text { min-height:32px; }
 .work-queue { gap:10px; }
 .inbox-question { padding:16px; }
 .inbox-question .question-body,.message-service-summary .question-body { max-height:240px; overflow:auto; }
 .opportunity-board { align-items:flex-start; }
 .opportunity-column { flex-basis:82vw; }
 .opportunity-card h3 { font-size:15px; }
 .manager-dossier,.manager-ledger,.manager-rail { grid-column:1; grid-row:auto; position:static; }
 .manager-welcome { min-height:auto; padding:26px 22px; }
 dialog,.mobile-business dialog { max-width:calc(100% - 20px); max-height:calc(100dvh - 24px); border-radius:14px; }
 .dialog-head { padding:16px; }
 .dialog-close { flex:0 0 44px; width:44px; height:44px; }
 .dialog-body { padding:18px 16px; }
 .form-footer { flex-wrap:wrap; }
 .form-footer .btn { flex:1 1 100px; }
 #toast { max-width:calc(100% - 24px); bottom:calc(88px + env(safe-area-inset-bottom)); }
 .home-desk { gap:18px; }
 .home-header { align-items:flex-start; gap:10px; }
 .home-header h1 { font-size:26px; }
 .home-header .eyebrow { font:11px var(--body); letter-spacing:0; }
 .home-greeting { font-size:12px; margin-top:5px; }
 .home-scope { font-size:10px; padding:5px 8px; }
 .home-overview { grid-template-columns:minmax(0,1fr); gap:12px; }
 .home-focus { padding:19px 22px; border-radius:14px; }
 .home-focus>strong { font-size:42px; }
 .home-focus .home-focus-link { margin-top:2px; padding-top:10px; }
 .home-numbers { grid-template-columns:repeat(4,minmax(0,1fr)); padding:6px 0; border-radius:12px; }
 .home-numbers a { padding:9px 11px; gap:7px; }
 .home-numbers a:nth-child(2) { border-right:1px solid var(--line); }
 .home-numbers span { font-size:10px; white-space:nowrap; }
 .home-numbers strong { font-size:23px; }
 .home-launch-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
 .home-launch-grid .home-launch { align-items:center; text-align:center; padding:12px 4px; gap:8px; border-radius:11px; }
 .home-launch-grid .home-launch strong { font-size:12px; font-weight:600; }
 .home-launch-grid .home-launch small { display:none; }
 .home-launch-icon { flex-basis:34px; width:34px; height:34px; border-radius:9px; font-size:21px; }
 .home-create-bar { padding:12px; gap:8px; }
 .home-create-bar>strong { flex-basis:100%; font-size:12px; }
 .home-create-bar>.btn { flex:1 1 120px; font-size:12px; }
 .home-lower { gap:16px; }
 .home-priority .panel-head,.home-flow .panel-head { padding:15px; }
 .home-priority .panel-head p { font-size:11px; }
 .home-priority-item { padding:15px; gap:9px; grid-template-columns:5px minmax(0,1fr) auto 10px; }
 .home-priority-time { max-width:62px; white-space:normal; }
 .home-flow-links { display:block; padding:8px 15px; }
 .home-flow-links .home-launch { padding:11px 0; align-items:center; }
 .home-support summary span { display:block; margin-left:16px; margin-top:5px; }
 .all-features { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .all-features .home-launch { min-height:94px; }
}
@media(min-width:701px) and (max-width:760px) {
 .product-catalog .table-wrap table { min-width:980px; }
}
@media(max-width:360px) {
 .home-numbers a { padding:9px 7px; }
 .home-numbers span { font-size:9px; }
 .home-launch-grid .home-launch strong { font-size:11px; }
 .home-priority-time { display:none; }
 .home-priority-item { grid-template-columns:5px minmax(0,1fr) 10px; }
 .home-header { flex-wrap:wrap; }
}
