/* HQ-inspired spacing and typography; all originator colour tokens and branding remain authoritative. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;650;700;750;800&display=swap');
:root{--card-shadow:none;--card-shadow-hover:none;--field-shadow:none;--field-shadow-focus:0 0 0 3px color-mix(in srgb,var(--blue) 18%,transparent);--shadow:none}
body{font-family:Inter,Arial,sans-serif;letter-spacing:-.012em}
button,input,select,textarea{font-family:inherit}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 65%,var(--paper));outline-offset:3px}
.od-shell{grid-template-columns:248px minmax(0,1fr)}
.od-side{padding:24px 18px 20px;scrollbar-width:thin}
.od-side:before{display:none}
.od-side-toggle{top:18px;right:18px;width:25px;height:25px;border-radius:6px;font-weight:600}
.od-logo{width:148px;height:108px;max-width:100%;margin:32px auto 20px;object-fit:contain}
.od-logo.is-wide-logo{width:100%;max-width:212px;height:72px}
.od-session-card{padding:14px 12px;margin-bottom:24px;border-radius:9px}
.od-session-card span{font-size:10px;font-weight:400;letter-spacing:0;text-transform:none}
.od-session-card strong{font-size:13px;font-weight:600;line-height:1.5}
.od-nav{gap:5px;margin-bottom:24px}
.od-nav button{font-size:12px;font-weight:500;letter-spacing:-.01em;padding:11px 10px;gap:10px;border-radius:7px}
.od-nav button:before{display:none}
.od-nav button .od-nav-icon,.od-side.od-brand-light .od-nav button .od-nav-icon{width:24px;height:24px;box-shadow:none;border-radius:6px;background:var(--nav-icon-colour);color:var(--nav-icon-foreground)}
.od-nav button .od-nav-icon svg{width:16px;height:16px}
.od-nav .od-nav-group-toggle{font-size:11px;font-weight:600;letter-spacing:.025em}
.od-nav-submenu{padding:3px 0 6px 10px;gap:3px}
.od-nav-submenu button{font-size:12px;font-weight:500;padding:10px 8px}
.od-nav-submenu button .od-nav-icon{width:22px;height:22px}
.od-security{padding:14px 12px;border-radius:9px;margin-bottom:16px}
.od-security strong{font-size:12px;font-weight:600}
.od-security span{font-size:11px;line-height:1.65}
.od-logout{border-radius:7px;font-size:12px;font-weight:500;min-height:40px}
.od-logout:hover{transform:none}
.od-footer{font-size:9px;line-height:1.6;margin-top:16px}
.od-shell.is-side-collapsed{grid-template-columns:72px minmax(0,1fr)}
.od-shell.is-side-collapsed .od-side{padding:60px 12px 20px}
.od-shell.is-side-collapsed .od-side-toggle{right:23px}
.od-shell.is-side-collapsed .od-nav button{padding:10px 6px}
.od-main{padding:0 36px 36px;scrollbar-width:thin;scrollbar-gutter:auto;min-width:0}
.od-topbar{align-items:center;gap:22px;margin:0 -36px 36px;padding:18px 36px;min-height:76px}
.od-breadcrumb{font-size:11px;color:var(--muted);line-height:1.5;white-space:nowrap}
.od-breadcrumb strong{font-weight:600;color:var(--ink)}
.od-top-actions{gap:8px;min-width:0}
.od-top-client-link{grid-template-columns:minmax(160px,260px) auto auto;gap:6px}
.od-top-client-link input{min-height:40px;border-radius:7px;font-size:11px;box-shadow:none}
.od-search{width:240px;min-height:40px;border-radius:7px;font-size:12px;font-weight:400;box-shadow:none}
.od-title{margin-bottom:30px}
.od-title h2{font-family:inherit;font-size:34px;font-weight:750;letter-spacing:-.045em;line-height:1.22}
.od-title p{margin-top:12px;font-size:13px;font-weight:400;line-height:1.6}
.od-grid{gap:18px}
.od-stat{border-radius:12px;padding:22px 20px;min-height:145px;box-shadow:none}
body.od-preapprovals-active .od-section[data-section="preapprovals"] .od-stat{border:1px solid var(--card-border);border-radius:12px;background:var(--paper);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body.od-preapprovals-active .od-section[data-section="preapprovals"] .od-stat:before{display:none}
.od-stat span{font-size:12px;letter-spacing:0;text-transform:none;font-weight:500;margin-bottom:18px}
.od-stat strong{font-size:32px;font-weight:700;letter-spacing:-.04em;line-height:1.1}
.od-stat small{font-size:11px;line-height:1.5;font-weight:400;margin-top:14px}
.od-toolbar{margin:26px 0 18px;gap:12px}
.od-filter-group{gap:0;border-bottom:2px solid var(--line)}
.od-filter{border:0;border-bottom:2px solid transparent;border-radius:0;margin-bottom:-2px;padding:12px 16px;font-size:12px;font-weight:500;background:transparent;box-shadow:none;min-height:40px}
.od-filter:hover{box-shadow:none;transform:none;filter:none;color:var(--ink)}
.od-filter.is-active{border-bottom-color:var(--blue);background:transparent;color:var(--ink);font-weight:600;box-shadow:none}
#od-count-label{color:var(--ink)}
.od-table-wrap{border:1px solid var(--card-border);border-radius:12px;background:var(--paper);max-width:100%;overflow-x:auto}
th{padding:14px 12px;font-size:11px;font-weight:600;letter-spacing:0;line-height:1.5}
td{padding:15px 12px;font-size:12px;line-height:1.5}
thead th:first-child{border-top-left-radius:11px}thead th:last-child{border-top-right-radius:11px}
.od-client strong{font-weight:600}
.od-avatar{border-radius:8px;font-weight:600}
.od-badge{border-radius:6px;font-weight:500;font-size:10px;padding:6px 9px}
.od-button{border-radius:7px;padding:10px 14px;min-height:38px;font-size:12px;font-weight:600;box-shadow:none;transition:background .15s,color .15s,border-color .15s}
.od-button:hover,.od-button.navy:hover,.od-button.secondary:hover{transform:none;box-shadow:none;filter:none}
.od-button.small{min-height:32px;padding:7px 10px;border-radius:7px;font-size:11px;font-weight:600}
.od-button.navy:hover{background:var(--blue-gradient-hover)}
.od-status-select,.od-table-select-trigger{border-radius:7px;box-shadow:none;font-size:12px;font-weight:400}
.od-table-select-menu{border-radius:9px}
.od-field span,.od-login-field span{font-size:12px;font-weight:500;letter-spacing:0}
.od-field input,.od-field select,.od-field textarea,.od-login-field input{border-radius:7px;box-shadow:none;font-size:13px;min-height:42px;padding:10px 12px}
.od-panel,.od-resource-list,.od-settings-card{border-radius:12px;box-shadow:none;padding:22px}
.od-panel h4{font-weight:600;letter-spacing:-.02em}
.od-detail-name h3{display:block;width:auto;max-width:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;font-size:20px;line-height:1.3;font-weight:650;letter-spacing:-.025em}
.od-detail-name p{display:block;margin-top:5px;font-size:11px;font-weight:400}
.od-section h3,.od-pill-heading{font-size:18px;line-height:1.35;letter-spacing:-.02em;font-weight:600;box-shadow:none;border-radius:7px;padding:10px 14px;margin:28px 0 16px}
.od-card-title{border-radius:8px;padding:13px 16px;font-size:14px;font-weight:600;letter-spacing:0;box-shadow:none}
.od-collapse-card{padding:0}
.od-collapse-card .od-card-title{border-radius:0}
.od-section[data-section="bond-applications"] :is(.od-platform-hero,.od-platform-link-card,.od-platform-detail-grid article),
.od-section[data-section="bank-feedback"] :is(.od-platform-hero,.od-platform-detail-grid article){border:1px solid var(--card-border);border-radius:12px;background:var(--paper);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.od-section[data-section="bond-applications"] :is(.od-platform-hero,.od-platform-link-card,.od-platform-detail-grid article):before,
.od-section[data-section="bond-applications"] .od-platform-hero:after,
.od-section[data-section="bank-feedback"] :is(.od-platform-hero,.od-platform-detail-grid article):before,
.od-section[data-section="bank-feedback"] .od-platform-hero:after{display:none}
.od-platform-hero,.od-platform-link-card,.od-platform-detail-grid article{border-radius:12px;box-shadow:none}
.od-platform-hero:before{display:none}
.od-platform-hero h3,.od-platform-link-card h3,.od-platform-detail-grid strong{font-family:inherit;letter-spacing:-.025em;font-weight:650}
.od-platform-hero p,.od-platform-link-card p{font-size:13px;line-height:1.7}
.od-platform-access,.od-platform-request-access{border-radius:7px;font-size:12px;font-weight:600}
.od-verify-section h5{border-radius:7px;box-shadow:none;font-size:13px;font-weight:600}
.od-modal,.od-branding-modal,.od-agent-referral-modal{border-radius:14px}
.od-referral-cap{border-radius:7px;box-shadow:none;font-weight:500}
.od-referral-status{border-radius:6px;font-weight:500;font-size:10px}
.od-competition-card{border-radius:12px;box-shadow:none}
.od-competition-content{padding:22px}.od-competition-content h4{font-size:21px;font-weight:650;letter-spacing:-.025em}
.od-calculator-choice{border-radius:10px;box-shadow:none}
.od-calculator-choice.is-active{box-shadow:none}
.od-calculator-results{border-radius:12px;box-shadow:none}
.od-calculator-results>strong{font-family:inherit;font-weight:700;letter-spacing:-.035em}
.od-delete-button:hover{transform:none;box-shadow:none}
.od-login-card{border-radius:14px;box-shadow:none}
.od-login-card h2{font-family:inherit;letter-spacing:-.035em;font-weight:700}
@media(min-width:981px) and (max-width:1200px){
  .od-shell{grid-template-columns:224px minmax(0,1fr)}
  .od-main{padding:0 24px 28px}.od-topbar{margin:0 -24px 28px;padding:16px 24px;flex-wrap:wrap}
  .od-top-actions{justify-content:flex-start}.od-title h2{font-size:29px}
  .od-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:980px){
  .od-shell,.od-shell.is-side-collapsed{grid-template-columns:minmax(0,1fr);height:auto;overflow:visible}
  .od-side{padding:20px 18px;height:auto;overflow:visible}
  .od-logo{margin:16px 0 18px}.od-logo.is-wide-logo{height:60px;max-width:210px}
  .od-side-toggle{display:none}
  .od-session-card{margin-bottom:16px}
  .od-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .od-nav-group{grid-column:1/-1}
  .od-nav button{grid-template-columns:24px minmax(0,1fr);justify-items:start;padding:10px;gap:9px}
  .od-nav-label{display:block}.od-nav-submenu{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:0}
  .od-nav .od-nav-group-toggle{grid-template-columns:24px minmax(0,1fr) 16px}
  .od-security{margin:0 0 12px}.od-footer{font-size:9px}
  .od-main{padding:0 18px 24px;height:auto;overflow:visible}
  .od-topbar{margin:0 -18px 24px;padding:16px 18px;flex-direction:column;align-items:stretch;gap:14px}
  .od-top-actions{justify-content:flex-start;gap:8px}
  .od-top-actions .od-top-client-link{width:100%;flex:1 1 100%;grid-template-columns:minmax(0,1fr) auto auto}
  .od-top-client-link input{min-width:0}
  .od-search{width:auto;flex:1 1 180px;min-width:0}
  .od-title{margin-bottom:24px}.od-title h2{font-size:28px}.od-title p{font-size:12px}
  .od-grid.cols-4,.od-deals-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .od-stat{padding:18px 14px;min-height:135px}
  .od-stat span{font-size:11px;margin-bottom:14px}.od-stat strong{font-size:28px}.od-stat small{font-size:10px}
  .od-filter{padding:11px 12px;font-size:11px}
  .od-table-wrap{overflow-x:auto}.od-section[data-section="preapprovals"] table{min-width:1060px}
  .od-panel{padding:18px}
  .od-collapse-card{padding:0}
  .od-section[data-section="bond-applications"],.od-section[data-section="bank-feedback"]{margin:0;padding:0}
}
@media(prefers-reduced-motion:reduce){.od-section.is-active,.od-section.is-detail-refresh{animation:none}.od-main,.od-button,.od-filter{transition:none}}
