:root{
  --bg:#f4f7fb;--surface:#fff;--surface-2:#f8fafc;--surface-3:#eef2f7;
  --sidebar:#0f172a;--sidebar-2:#1e293b;--primary:#334155;--primary-2:#475569;
  --accent:#2563eb;--accent-soft:#eff6ff;--ink:#0f172a;--muted:#64748b;
  --line:#dbe3ee;--line-strong:#cbd5e1;--success:#15803d;--success-soft:#ecfdf3;
  --warning:#b45309;--warning-soft:#fffbeb;--danger:#b91c1c;--danger-soft:#fef2f2;
  --info:#0369a1;--radius:18px;--radius-lg:26px;--shadow:0 16px 40px rgba(15,23,42,.07);
  --shadow-sm:0 8px 22px rgba(15,23,42,.05);--sidebar-width:286px;
}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:none}img{max-width:100%}h1,h2,h3,h4{color:var(--ink);line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(28px,3vw,42px)}h2{font-size:24px;margin:0 0 18px}h3{font-size:18px;margin:0 0 10px}p{margin-top:0}.muted{color:var(--muted)}.mono{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}.danger-text{color:var(--danger)}.small,small{font-size:12.5px}.grand{font-size:clamp(32px,5vw,58px)}

/* Application shell */
.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;overflow:auto;background:linear-gradient(180deg,var(--sidebar),#111c32);color:#e2e8f0;padding:22px 16px;z-index:40;border-right:1px solid rgba(255,255,255,.06)}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:4px 10px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-brand img{width:44px;height:44px;object-fit:contain;border-radius:12px;background:#fff;padding:4px}.sidebar-brand strong{display:block;color:#fff;font-size:17px}.sidebar-brand span{display:block;color:#94a3b8;font-size:12px;margin-top:2px}.sidebar-nav{padding:16px 0;display:grid;gap:3px}.nav-heading{padding:17px 12px 7px;color:#7f91ab;font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.nav-link{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:12px;color:#cbd5e1;font-weight:650;font-size:14px;transition:.18s ease}.nav-link:hover{color:#fff;background:rgba(255,255,255,.07)}.nav-link.active{color:#fff;background:#334155;box-shadow:inset 3px 0 #93c5fd}.nav-icon{width:17px;height:17px;border:1.7px solid currentColor;border-radius:5px;opacity:.85;flex:0 0 17px}.nav-icon.icon-home{border-radius:4px 4px 6px 6px}.nav-icon.icon-clients,.nav-icon.icon-contacts{border-radius:50%}.nav-icon.icon-invoices,.nav-icon.icon-contracts,.nav-icon.icon-quotes,.nav-icon.icon-documents{border-radius:2px}.nav-icon.icon-support,.nav-icon.icon-tickets{border-radius:50%}.sidebar-footer{margin-top:16px;padding:16px 10px 4px;border-top:1px solid rgba(255,255,255,.08);display:grid;gap:8px}.sidebar-footer a{color:#cbd5e1;font-size:13px}.sidebar-footer a:hover{color:#fff}.sidebar-footer small{color:#64748b;margin-top:6px}.app-main{min-width:0}.app-topbar{height:88px;display:grid;grid-template-columns:auto minmax(200px,1fr) minmax(240px,420px) auto auto;align-items:center;gap:18px;padding:15px clamp(20px,3vw,42px);background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.page-heading .eyebrow{margin:0 0 3px}.page-heading h1{font-size:24px;margin:0;white-space:nowrap}.eyebrow,.kicker{color:var(--accent);font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:850}.global-search{display:flex;min-width:0}.global-search input{width:100%;border:1px solid var(--line);border-right:0;border-radius:12px 0 0 12px;background:var(--surface-2);padding:10px 13px;color:var(--ink)}.global-search button{border:1px solid var(--line);border-radius:0 12px 12px 0;background:#fff;color:var(--primary);font-weight:750;padding:0 14px;cursor:pointer}.quick-create{position:relative}.quick-create summary{list-style:none;background:var(--primary);color:#fff;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer;white-space:nowrap}.quick-create summary::-webkit-details-marker{display:none}.quick-create>div{position:absolute;right:0;top:calc(100% + 9px);width:190px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:7px;display:grid;z-index:60}.quick-create>div a{padding:9px 11px;border-radius:9px;color:var(--ink);font-weight:650}.quick-create>div a:hover{background:var(--surface-3)}.identity-chip{display:flex;align-items:center;gap:10px;padding:7px 10px;border:1px solid var(--line);border-radius:13px;color:var(--ink);background:#fff;min-width:0}.identity-chip .avatar,.avatar{width:34px;height:34px;border-radius:10px;background:var(--primary);color:#fff;display:grid;place-items:center;font-weight:850;flex:0 0 auto}.identity-chip strong,.identity-chip small{display:block;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-chip small{color:var(--muted)}.mobile-menu{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 11px;cursor:pointer}.content{padding:clamp(22px,3vw,42px);width:100%;max-width:1800px;margin:0 auto}.flash,.success,.error,.warning,.alert{border-radius:14px;padding:13px 16px;margin:0 0 16px;font-weight:700;border:1px solid transparent}.flash.success,.success{background:var(--success-soft);border-color:#bbf7d0;color:#166534}.flash.error,.error,.alert{background:var(--danger-soft);border-color:#fecaca;color:#991b1b}.warning{background:var(--warning-soft);border-color:#fde68a;color:#92400e}

/* Common cards and layouts */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(20px,2.2vw,28px);box-shadow:var(--shadow-sm);margin-bottom:18px;min-width:0}.card.compact{padding:18px}.page-hero,.workspace-hero,.client-index-hero,.client-workspace-hero,.contract-hero,.xero-hero,.v2-hero,.dashboard-hero,.customer-hero,.customer-invoice-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px);gap:24px;align-items:center;background:linear-gradient(135deg,#fff,#f5f8fc);border:1px solid var(--line);border-radius:30px;padding:clamp(24px,3vw,36px);box-shadow:var(--shadow);margin-bottom:20px;overflow:hidden;position:relative}.page-hero:before,.workspace-hero:before,.dashboard-hero:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-130px;top:-170px;background:rgba(37,99,235,.06);pointer-events:none}.page-hero>*,.workspace-hero>*,.dashboard-hero>*{position:relative;z-index:1}.page-hero h2,.workspace-hero h2,.dashboard-hero h2,.customer-hero h2,.client-workspace-hero h2{font-size:clamp(30px,4vw,50px);margin:6px 0 12px}.page-hero p,.workspace-hero p,.dashboard-hero p,.customer-hero p{color:var(--muted);max-width:850px;margin-bottom:0}.hero-card,.hero-focus,.v2-hero-panel,.customer-next-card,.service-summary-card{background:linear-gradient(145deg,var(--sidebar),var(--primary));color:#fff;border-radius:22px;padding:24px;position:relative;z-index:1}.hero-card span,.hero-focus span,.customer-next-card span,.service-summary-card span{display:block;color:#cbd5e1;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:750}.hero-card strong,.hero-focus strong,.customer-next-card strong,.service-summary-card strong{display:block;color:#fff;font-size:28px;margin:7px 0}.hero-card small,.hero-focus small,.customer-next-card small,.customer-next-card em,.service-summary-card small{color:#cbd5e1;font-style:normal}.hero-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.hero-search{display:flex;align-items:center;gap:9px}.hero-search input{min-width:240px}.slim{padding-top:24px;padding-bottom:24px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.section-head h2{margin-bottom:5px}.section-head p{margin:0}.section-head>a{font-weight:750}.grid,.two-column,.split,.split-grid,.v2-two-col,.settings-layout,.contract-layout,.editor-layout,.service-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.split-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.span-2{grid-column:span 2}.vertical{grid-template-columns:1fr}.sticky,.sticky-card,.editor-side,.service-side{position:sticky;top:108px}.stack,.stacked-form{display:grid;gap:14px}.stack-actions{display:grid;gap:10px}.actions,.row-actions,.product-actions,.hero-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.actions{margin-top:18px}.row-actions{justify-content:flex-end}.inline-form{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.boundary-card,.boundary-note,.info-box,.warning-box,.warning-card{border:1px solid #bfdbfe;background:#eff6ff;border-radius:18px;padding:17px;color:#1e3a5f}.warning-card,.warning-box{background:var(--warning-soft);border-color:#fde68a;color:#78350f}.danger-zone{background:var(--danger-soft);border:1px solid #fecaca;border-radius:20px;padding:20px}.empty{border:1px dashed var(--line-strong);background:var(--surface-2);border-radius:16px;padding:20px;color:var(--muted);text-align:center}.setup-wrap{min-height:100vh;display:grid;place-items:center;padding:28px}.setup-card{width:min(720px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}

/* Buttons, badges, links */
.btn{appearance:none;border:1px solid var(--primary);border-radius:12px;background:var(--primary);color:#fff;padding:10px 15px;font-weight:800;line-height:1.2;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.16s ease;white-space:nowrap}.btn:hover{background:#1f2937;border-color:#1f2937;color:#fff;transform:translateY(-1px)}.btn.ghost{background:#fff;color:var(--primary);border-color:var(--line-strong)}.btn.ghost:hover{background:var(--surface-3);color:var(--ink)}.btn.light{background:#fff;color:var(--primary);border-color:#fff}.btn.light.ghost{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.25)}.btn.danger,.danger{background:var(--danger)!important;color:#fff!important;border-color:var(--danger)!important}.btn.good,.good{background:var(--success)!important;color:#fff!important;border-color:var(--success)!important}.btn:disabled{opacity:.48;cursor:not-allowed;transform:none}.text-button{border:0;background:transparent;color:var(--accent);font-weight:750;cursor:pointer;padding:4px}.icon-button{width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;cursor:pointer}.badge,.product-type{display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:999px;padding:5px 9px;background:#e8eef6;color:#334155;font-size:11.5px;font-weight:800;white-space:nowrap}.badge.ok,.badge.good{background:#dcfce7;color:#166534}.badge.warn{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2!important;color:#991b1b!important;border:0!important}.badge.neutral{background:#e2e8f0;color:#475569}.badge-row{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.small-link{font-size:13px;font-weight:750}.filter-links,.tabs,.subnav,.workspace-tabs,.client-tabs,.client-workspace-tabs,.service-tabs{display:flex;gap:7px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);padding:8px;border-radius:16px;margin-bottom:18px}.filter-links a,.tabs a,.subnav a,.workspace-tabs a,.client-tabs a,.client-workspace-tabs a,.service-tabs a{padding:9px 12px;border-radius:10px;color:var(--primary);font-weight:750;font-size:13px;white-space:nowrap}.filter-links a:hover,.tabs a:hover,.subnav a:hover,.workspace-tabs a:hover,.client-tabs a:hover,.client-workspace-tabs a:hover,.service-tabs a:hover{background:var(--surface-3)}.filter-links a.active,.tabs a.active,.subnav a.active,.workspace-tabs a.active,.client-tabs a.active,.client-workspace-tabs a.active,.service-tabs a.active{background:var(--primary);color:#fff}

/* Metrics */
.metric-grid,.stats,.client-index-metrics,.v2-metric-grid,.summary-grid,.invoice-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.metric-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.metric,.metric-card,.stats>a,.v2-metric{display:block;background:#fff;border:1px solid var(--line);border-radius:20px;padding:19px;color:var(--ink);box-shadow:var(--shadow-sm);min-width:0}.metric:hover,.stats>a:hover{border-color:#94a3b8;transform:translateY(-1px)}.metric span,.metric-card span,.stats span,.v2-metric span{display:block;color:var(--muted);font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.metric strong,.metric-card strong,.stats strong,.v2-metric strong{display:block;font-size:clamp(25px,2.5vw,36px);letter-spacing:-.045em;margin:7px 0 4px;color:var(--ink);overflow-wrap:anywhere}.metric small,.metric-card small,.stats small,.v2-metric small{display:block;color:var(--muted)}

/* Forms */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:15px}.form-grid .wide,.form-grid .full-label,.wide{grid-column:1/-1}.form-grid .span-2{grid-column:span 2}.form-section{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;margin-top:4px}.form-section:first-child{border-top:0;padding-top:0}.form-grid label,.stack label,.stacked-form label,.popover-form label,.signature-panel label,.dm-login-form-card label{display:flex;flex-direction:column;gap:6px;color:#334155;font-weight:720;font-size:13px}.form-grid input,.form-grid select,.form-grid textarea,.stack input,.stack select,.stack textarea,.stacked-form input,.stacked-form select,.stacked-form textarea,.toolbar input,.filter-bar input,.filter-bar select,.hero-search input,.popover-form input,.popover-form select,.popover-form textarea,.signature-panel input,.signature-panel textarea,.code-editor{width:100%;border:1px solid var(--line-strong);border-radius:11px;background:#fff;color:var(--ink);padding:11px 12px;outline:none;transition:.15s ease}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.stack input:focus,.stack select:focus,.stack textarea:focus,.toolbar input:focus,.hero-search input:focus,.dm-login-form-card input:focus{border-color:#64748b;box-shadow:0 0 0 3px rgba(100,116,139,.12)}textarea{resize:vertical}.check,.checkbox,.dm-remember{display:flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important}.check input,.checkbox input,.dm-remember input{width:auto!important;accent-color:var(--primary)}.check-grid,.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check-card,.feature-card{border:1px solid var(--line);background:var(--surface-2);border-radius:15px;padding:15px}.checklist{display:grid;gap:9px}.toolbar,.filter-bar,.client-toolbar{background:#fff;border:1px solid var(--line);border-radius:17px;padding:12px;margin-bottom:18px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.toolbar form,.filter-bar form{display:flex;gap:9px;align-items:center;flex:1}.code-editor{min-height:320px;font-family:"SFMono-Regular",Consolas,monospace;white-space:pre}.popover-form{display:grid;gap:11px;position:absolute;background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px;box-shadow:var(--shadow);z-index:20}

/* Tables, lists, timelines */
.table,.data-table,.notification-table,.list,.timeline,.task-list{display:grid;gap:8px}.table-head,.data-row,.table-row,.list>a,.list>div,.task-item,.provision-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:14px 15px;background:#fff;color:var(--ink);min-width:0}.table-head{background:var(--surface-3);font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:var(--muted)}.table-row:hover,.data-row:hover,.list>a:hover{background:#fafcff;border-color:#c8d3e1}.table-row strong,.data-row strong,.list strong,.task-item strong{display:block;color:var(--ink)}.table-row span,.data-row span,.list small,.task-item span,.provision-row span{display:block;color:var(--muted);font-size:12.5px;margin-top:3px}.list>a,.list>div{grid-template-columns:minmax(0,1fr) auto}.timeline{border-left:2px solid var(--line);padding-left:18px;margin-left:6px}.timeline>div{position:relative;padding:3px 0 16px}.timeline>div:before{content:"";position:absolute;left:-24px;top:7px;width:10px;height:10px;border-radius:50%;background:var(--primary);border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}.details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.details>div{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;padding:13px}.details span{display:block;color:var(--muted);font-size:12px}.details strong{display:block;margin-top:4px;overflow-wrap:anywhere}.customer-grid,.quick-action-grid,.portal-resource-grid,.service-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.resource-card,.service-product-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:19px;box-shadow:var(--shadow-sm)}.resource-card p{color:var(--muted);white-space:pre-line}.resource-card small{color:var(--muted)}

/* Customer/client workspace */
.client-workspace-hero,.client-hero{grid-template-columns:auto minmax(0,1fr) auto}.client-avatar{width:72px;height:72px;border-radius:20px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:28px;font-weight:850}.client-title{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.client-title h2{margin:0}.client-identity-block p{margin:7px 0 0;color:var(--muted)}.client-health-panel,.client-health{border:1px solid var(--line);background:#fff;border-radius:18px;padding:17px}.client-health strong{font-size:25px}.client-list .client-avatar{width:38px;height:38px;border-radius:10px;font-size:14px}.boundary-note{margin-top:14px}.onboarding-progress{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.onboarding-progress span{padding:8px 11px;background:var(--surface-3);border-radius:999px;font-size:12px;font-weight:750}.onboarding-progress span.active{background:var(--primary);color:#fff}

/* Products, services, contracts, quotes, invoices */
.product-footer,.product-money,.quote-total,.invoice-total{display:flex;justify-content:space-between;align-items:center;gap:12px}.product-money strong,.quote-total strong,.invoice-total strong{font-size:24px}.service-header{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:center}.service-header h2{font-size:34px;margin:4px 0 8px}.service-layout{grid-template-columns:minmax(0,1fr) 330px}.service-main{display:grid;gap:16px}.editor-layout,.contract-layout{grid-template-columns:minmax(0,1fr) 350px}.editor-main{display:grid;gap:16px}.contract-paper,.invoice-preview{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(22px,4vw,52px);box-shadow:var(--shadow);line-height:1.75}.contract-paper h1,.invoice-preview h1{font-size:34px}.contract-paper table,.invoice-preview table{width:100%;border-collapse:collapse}.contract-paper td,.contract-paper th,.invoice-preview td,.invoice-preview th{border-bottom:1px solid var(--line);padding:10px;text-align:left}.public-contract-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.public-contract-meta>div{background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:12px}.quote-lines,.invoice-lines{display:grid;gap:10px}.quote-line,.invoice-line{display:grid;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(100px,.7fr)) auto;gap:9px;align-items:end;border:1px solid var(--line);padding:13px;border-radius:14px;background:var(--surface-2)}.quote-total,.invoice-total{border-top:2px solid var(--ink);padding-top:14px;margin-top:14px}.signature-panel,.signature-accept{border:1px solid var(--line);border-radius:18px;padding:20px;background:var(--surface-2)}.sign-success,.onboarding-thanks{max-width:760px;margin:50px auto;text-align:center}.success-mark{width:70px;height:70px;border-radius:50%;background:var(--success-soft);color:var(--success);display:grid;place-items:center;font-size:34px;font-weight:900;margin:0 auto 18px}

/* Public pages and login */
.bare-page{background:linear-gradient(135deg,#e8edf4,#f8fafc)}.public-sign-page,.onboarding-public{min-height:100vh;padding:28px}.public-sign-shell{width:min(1050px,100%);margin:0 auto}.public-sign-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.dm-login-page{min-height:100vh;display:grid;place-items:center;padding:30px;position:relative;overflow:hidden;background:radial-gradient(circle at 8% 10%,rgba(37,99,235,.16),transparent 32%),radial-gradient(circle at 92% 90%,rgba(51,65,85,.17),transparent 34%),#edf2f7}.dm-login-shell{width:min(1160px,100%);display:grid;grid-template-columns:1.12fr .88fr;background:#fff;border:1px solid rgba(203,213,225,.8);border-radius:30px;overflow:hidden;box-shadow:0 35px 100px rgba(15,23,42,.18)}.dm-login-brand-panel{padding:clamp(32px,5vw,62px);background:linear-gradient(145deg,#0f172a,#26354d);color:#fff;display:flex;flex-direction:column;min-height:690px}.dm-login-logo-wide{width:170px;filter:brightness(0) invert(1)}.dm-login-copy{margin:auto 0 38px}.dm-login-copy>span{color:#93c5fd;font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.dm-login-copy h1{color:#fff;font-size:clamp(42px,5vw,66px);margin:13px 0}.dm-login-copy h1 strong{display:block;color:#bfdbfe}.dm-login-copy p{color:#cbd5e1;font-size:17px;max-width:590px}.dm-login-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.dm-login-feature-grid>div{background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.09);border-radius:13px;padding:13px}.dm-login-feature-grid b,.dm-login-feature-grid span{display:block}.dm-login-feature-grid span{color:#94a3b8;font-size:12px;margin-top:3px}.dm-login-trust{margin-top:22px;color:#94a3b8;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.dm-login-form-panel{display:grid;place-items:center;padding:clamp(30px,5vw,60px);background:#fff}.dm-login-form-card{width:min(410px,100%);display:grid;gap:15px}.dm-login-form-logo{width:105px;margin-bottom:10px}.dm-login-form-card h2{font-size:30px;margin:0}.dm-login-form-card>p{color:var(--muted);margin:-8px 0 12px}.dm-login-form-card input{width:100%;border:1px solid var(--line-strong);border-radius:12px;padding:13px}.dm-login-options{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}.dm-login-submit{width:100%;padding:13px}.dm-login-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.dm-login-divider:before,.dm-login-divider:after{content:"";height:1px;background:var(--line);flex:1}.dm-login-form-card footer{text-align:center;color:var(--muted);font-size:12px}

/* Responsive */
@media(max-width:1350px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-topbar{grid-template-columns:auto minmax(180px,1fr) minmax(200px,320px) auto}.identity-chip{display:none}.customer-grid,.portal-resource-grid,.service-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1080px){.app-shell{display:block}.sidebar{position:fixed;left:-310px;width:var(--sidebar-width);transition:left .2s ease;box-shadow:0 0 45px rgba(0,0,0,.28)}.sidebar.open{left:0}.mobile-menu{display:block}.app-topbar{grid-template-columns:auto minmax(0,1fr) auto}.global-search{display:none}.quick-create{justify-self:end}.content{padding:22px}.page-hero,.workspace-hero,.client-index-hero,.client-workspace-hero,.contract-hero,.xero-hero,.dashboard-hero,.customer-hero,.customer-invoice-hero,.service-header{grid-template-columns:1fr}.hero-actions{justify-content:flex-start}.grid,.two-column,.split,.split-grid,.v2-two-col,.settings-layout,.contract-layout,.editor-layout,.service-layout,.dashboard-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.sticky,.sticky-card,.editor-side,.service-side{position:static}.metric-grid,.metric-grid.compact,.stats,.client-index-metrics,.v2-metric-grid,.summary-grid,.invoice-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-workspace-hero,.client-hero{grid-template-columns:auto 1fr}.client-workspace-hero>.hero-actions,.client-hero>.hero-actions{grid-column:1/-1}.quote-line,.invoice-line{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-line>*:first-child,.invoice-line>*:first-child{grid-column:1/-1}.dm-login-shell{grid-template-columns:1fr}.dm-login-brand-panel{min-height:auto}.dm-login-copy{margin:45px 0 28px}}
@media(max-width:720px){body{font-size:14px}.app-topbar{height:auto;min-height:72px;padding:12px 15px}.page-heading .eyebrow{display:none}.page-heading h1{font-size:19px}.quick-create summary{padding:9px 11px}.content{padding:15px}.card{border-radius:18px;padding:18px}.page-hero,.workspace-hero,.client-index-hero,.client-workspace-hero,.contract-hero,.xero-hero,.dashboard-hero,.customer-hero,.customer-invoice-hero{border-radius:21px;padding:21px}.page-hero h2,.workspace-hero h2,.dashboard-hero h2,.customer-hero h2,.client-workspace-hero h2{font-size:31px}.metric-grid,.metric-grid.compact,.stats,.client-index-metrics,.v2-metric-grid,.summary-grid,.invoice-summary-grid{grid-template-columns:1fr 1fr;gap:9px}.metric,.metric-card,.stats>a,.v2-metric{padding:14px;border-radius:15px}.metric strong,.metric-card strong,.stats strong{font-size:24px}.form-grid,.check-grid,.feature-grid,.details,.customer-grid,.portal-resource-grid,.service-product-grid,.public-contract-meta{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.section-head{flex-direction:column}.table-row,.data-row,.list>a,.list>div,.task-item,.provision-row{grid-template-columns:1fr;align-items:flex-start}.row-actions,.badge-row{justify-content:flex-start}.client-workspace-hero,.client-hero{grid-template-columns:1fr}.client-avatar{width:56px;height:56px}.toolbar,.filter-bar,.client-toolbar,.toolbar form,.filter-bar form{align-items:stretch;flex-direction:column}.btn{white-space:normal}.quote-line,.invoice-line{grid-template-columns:1fr}.dm-login-page{padding:12px}.dm-login-shell{border-radius:20px}.dm-login-brand-panel{padding:28px}.dm-login-feature-grid{grid-template-columns:1fr}.dm-login-copy h1{font-size:42px}.dm-login-form-panel{padding:30px 23px}.public-sign-page,.onboarding-public{padding:14px}.public-sign-header{align-items:flex-start;flex-direction:column}}
@media(max-width:430px){.metric-grid,.metric-grid.compact,.stats,.client-index-metrics,.v2-metric-grid,.summary-grid,.invoice-summary-grid{grid-template-columns:1fr}.quick-create{display:none}.page-heading h1{max-width:240px;overflow:hidden;text-overflow:ellipsis}.actions,.row-actions{width:100%}.actions>.btn,.row-actions>.btn{flex:1}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Commercial table and record-detail refinements */
.data-table .data-row{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}
.data-table .data-row>span:first-child{min-width:190px}
.details dt{color:var(--muted);font-size:12px}
.details dd{margin:4px 0 0;font-weight:750;overflow-wrap:anywhere}
.invoice-lines>div:not(.invoice-line),.quote-lines>div:not(.quote-line){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0}
@media(max-width:720px){.data-table .data-row{grid-template-columns:1fr}.data-table .table-head{display:none}.data-table .data-row>span:first-child{min-width:0}}

/* Contract manager v3.1 */
.contract-workspace-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow);margin-bottom:16px}.contract-workspace-title{display:flex;align-items:center;gap:18px;min-width:0}.contract-icon{width:58px;height:58px;border-radius:16px;background:linear-gradient(145deg,#0f172a,#475569);color:#fff;display:grid;place-items:center;font-size:24px;font-weight:900;box-shadow:0 12px 25px rgba(15,23,42,.18);flex:0 0 auto}.contract-title-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.contract-title-line .eyebrow{margin:0}.contract-workspace-title h2{font-size:clamp(28px,3vw,40px);margin:7px 0 8px}.contract-workspace-title p{margin:0;color:var(--muted)}.contract-hero-actions{display:flex;justify-content:flex-end;align-items:flex-start;gap:9px;flex-wrap:wrap}.contract-summary-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:20px;border-top:1px solid var(--line)}.contract-summary-grid>div{background:var(--surface-2);border:1px solid var(--line);border-radius:15px;padding:14px 16px;min-width:0}.contract-summary-grid span,.contract-summary-grid small{display:block;color:var(--muted);font-size:12px}.contract-summary-grid span{text-transform:uppercase;letter-spacing:.06em;font-weight:800}.contract-summary-grid strong{display:block;font-size:20px;margin:5px 0 2px;overflow-wrap:anywhere}.record-tabs{display:flex;gap:5px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:6px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.record-tabs a{color:var(--muted);font-weight:750;padding:10px 14px;border-radius:11px;white-space:nowrap}.record-tabs a:hover{background:var(--surface-2);color:var(--ink)}.record-tabs a.active{background:var(--primary);color:#fff}.contract-workspace-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.contract-side-stack{display:grid;gap:0;position:sticky;top:108px}.contract-agreement-preview{margin-bottom:18px}.contract-facts{display:grid;gap:0;margin:0}.contract-facts>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.contract-facts>div:last-child{border-bottom:0}.contract-facts dt{color:var(--muted)}.contract-facts dd{margin:0;font-weight:800;text-align:right}.contract-service-list{display:grid;gap:9px}.contract-service-list>div{border:1px solid var(--line);border-radius:12px;padding:11px;background:var(--surface-2)}.contract-service-list strong,.contract-service-list small{display:block}.contract-service-list small{color:var(--muted);margin-top:3px}.next-action-card{background:linear-gradient(145deg,#0f172a,#334155);color:#fff;border:0}.next-action-card h3,.next-action-card .eyebrow{color:#fff}.next-action-card p{color:#cbd5e1}.next-action-card .btn{background:#fff;color:var(--ink);border-color:#fff}.contract-signing-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.signing-issue-card{top:108px}.signature-request-list{display:grid;gap:12px}.signature-request-card{border:1px solid var(--line);border-radius:17px;padding:17px;background:#fff}.signature-request-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.signature-request-head strong,.signature-request-head small{display:block}.signature-request-head small{color:var(--muted);margin-top:3px}.signature-request-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:15px 0 0}.signature-request-meta>div{background:var(--surface-2);border-radius:11px;padding:10px}.signature-request-meta dt{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.signature-request-meta dd{margin:3px 0 0;font-weight:700;overflow-wrap:anywhere}.signature-request-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.request-note{margin:12px 0 0;padding:10px 12px;background:var(--warning-soft);border-radius:10px;color:#78350f}.version-list{display:grid;gap:10px}.version-list article{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:14px;padding:14px}.version-list strong,.version-list small{display:block}.version-list small{color:var(--muted);margin-top:3px}.version-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.contract-lifecycle-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:18px;align-items:start}.lifecycle-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 24px}.lifecycle-action-card{border:1px solid var(--line);border-radius:15px;padding:16px;background:var(--surface-2);display:flex;flex-direction:column;align-items:flex-start}.lifecycle-action-card p{color:var(--muted);flex:1;margin:7px 0 14px}.danger-zone-card{border-color:#fecaca}.template-manager-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;align-items:start}.template-list-panel{position:sticky;top:108px}.template-list{display:grid;gap:8px}.template-list>a{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;color:var(--ink)}.template-list>a.active{border-color:#64748b;background:var(--surface-3);box-shadow:inset 3px 0 var(--primary)}.template-list strong,.template-list small{display:block}.template-list small{color:var(--muted);margin-top:3px}.template-variable-box{border:1px solid #bfdbfe;background:#eff6ff;border-radius:14px;padding:14px}.template-variable-box>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.template-variable-box code{background:#fff;border:1px solid #bfdbfe;border-radius:8px;padding:5px 7px;font-size:11px}.template-code-editor{min-height:620px}.contract-save-panel{border-top:4px solid var(--primary)}.contract-table .data-row{grid-template-columns:minmax(230px,1.5fr) minmax(170px,1fr) minmax(210px,1.15fr) minmax(120px,.6fr) minmax(105px,.55fr)}

/* Detailed agreement document */
.agreement-document{max-width:900px;margin:0 auto;color:#172033}.agreement-document h1{font-size:32px;text-align:center;text-transform:uppercase;letter-spacing:.02em;margin:10px 0 26px}.agreement-document h2{font-size:20px;margin:30px 0 10px;padding-bottom:8px;border-bottom:1px solid #dbe3ee;letter-spacing:-.02em}.agreement-document h3{font-size:16px;margin:20px 0 8px}.agreement-document p{margin:0 0 12px}.agreement-document ul{margin:8px 0 16px;padding-left:22px}.agreement-document li{margin:5px 0}.agreement-document .agreement-ref{text-align:center;color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.agreement-document .agreement-date{text-align:center;margin-top:-14px;color:#475569}.agreement-parties{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}.agreement-party{border:1px solid #cbd5e1;border-radius:12px;padding:16px;background:#f8fafc}.agreement-party>span{display:block;font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:7px}.agreement-party strong{display:block;font-size:17px;margin-bottom:4px}.agreement-party address{font-style:normal;white-space:pre-line;color:#334155}.agreement-commercial-table{width:100%;border-collapse:collapse;margin:12px 0 18px}.agreement-commercial-table th,.agreement-commercial-table td{border:1px solid #dbe3ee;padding:10px 12px;vertical-align:top}.agreement-commercial-table th{width:34%;background:#f8fafc}.agreement-callout{border-left:4px solid #334155;background:#f8fafc;padding:14px 16px;margin:15px 0}.agreement-signatures{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.agreement-signature-block{border-top:1px solid #94a3b8;padding-top:14px;min-height:150px}.agreement-signature-line{margin-top:30px;border-bottom:1px solid #64748b;height:24px}.agreement-document .clause-number{color:#334155;font-weight:900;margin-right:5px}

/* Public signing */
.public-sign-header{width:min(1120px,100%);margin:0 auto 18px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 16px;box-shadow:var(--shadow-sm)}.public-sign-header img{width:45px;height:45px;object-fit:contain}.public-sign-header div{margin-right:auto}.public-sign-header strong,.public-sign-header span{display:block}.public-sign-header span{color:var(--muted);font-size:12px}.public-sign-shell{width:min(1120px,100%)}.public-contract-intro{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.public-contract-intro h1{margin:5px 0 8px}.public-contract-status{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:15px}.public-contract-status span{display:block;font-size:18px;font-weight:850}.public-contract-status small{display:block;color:var(--muted);margin-top:5px}.public-contract-paper{border-radius:20px}.public-signature-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:26px;align-items:start;margin-top:18px;background:#fff;box-shadow:var(--shadow)}.public-link-state{margin-top:18px;border-radius:18px;padding:22px;background:var(--warning-soft);border:1px solid #fde68a}.public-link-state.danger-state{background:var(--danger-soft);border-color:#fecaca}.public-link-state.success-state{background:var(--success-soft);border-color:#bbf7d0}

@media(max-width:1200px){.contract-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-workspace-layout,.contract-signing-layout,.contract-lifecycle-grid{grid-template-columns:1fr}.contract-side-stack,.signing-issue-card{position:static}.template-manager-layout{grid-template-columns:300px minmax(0,1fr)}.lifecycle-action-grid{grid-template-columns:1fr}.signature-request-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.contract-workspace-hero{grid-template-columns:1fr}.contract-hero-actions{justify-content:flex-start}.template-manager-layout{grid-template-columns:1fr}.template-list-panel{position:static}.agreement-parties,.agreement-signatures,.public-signature-panel,.public-contract-intro{grid-template-columns:1fr}.contract-table .data-row{grid-template-columns:1fr}.contract-table .table-head{display:none}}
@media(max-width:560px){.contract-workspace-title{align-items:flex-start}.contract-icon{width:48px;height:48px}.contract-summary-grid,.signature-request-meta{grid-template-columns:1fr}.record-tabs a{padding:9px 11px}.signature-request-head{flex-direction:column}.agreement-document h1{font-size:25px}.contract-paper{padding:20px}.contract-hero-actions .btn{flex:1}.public-sign-page{padding:10px}}
.btn.small{padding:7px 10px;border-radius:9px;font-size:12px}.btn.large{padding:13px 18px;font-size:15px}

/* v3.1.3 contract PDF and notification delivery diagnostics */
.notification-table .queue-error{margin-top:7px;color:#991b1b;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.notification-table .row-actions small{color:var(--muted);font-weight:650;max-width:180px;line-height:1.35}

/* v3.2.0 — email design manager and secure portal access */
.email-template-layout{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:18px;align-items:start}
.email-template-main{display:grid;gap:18px;min-width:0}
.email-template-list{position:sticky;top:92px;max-height:calc(100vh - 116px);overflow:auto}
.email-preview-card{overflow:hidden}
.email-preview-frame{display:block;width:100%;height:720px;border:1px solid var(--border,#d8e0ea);border-radius:14px;background:#eef2f7}
.portal-access-card{width:min(540px,calc(100vw - 32px));margin:auto;padding:38px;background:#fff;border:1px solid #dbe3ec;border-radius:22px;box-shadow:0 20px 55px rgba(15,23,42,.12);text-align:left}
.portal-access-logo{display:block;width:180px;max-width:55%;height:auto;margin:0 0 32px}
.portal-access-card h1{margin:5px 0 14px;font-size:34px;line-height:1.12;letter-spacing:-.6px;color:#0f172a}
.portal-access-card>p{font-size:15px;line-height:1.65;color:#475569}
.portal-access-form{margin-top:24px;text-align:left}
.portal-access-button{width:100%;justify-content:center;margin-top:8px}
.portal-access-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;font-size:30px;font-weight:800;margin-bottom:22px}
.portal-access-icon.success{background:#ecfdf3;color:#15803d}
.portal-access-icon.error{background:#fff1f2;color:#be123c}
.portal-access-expiry{margin:20px 0 0!important;font-size:13px!important;color:#64748b!important;text-align:center}
.portal-access-card footer{margin-top:28px;padding-top:20px;border-top:1px solid #e5e7eb;font-size:12px;color:#64748b;text-align:center}
@media(max-width:1050px){.email-template-layout{grid-template-columns:1fr}.email-template-list{position:static;max-height:none}.email-preview-frame{height:620px}}
@media(max-width:640px){.portal-access-card{padding:28px 22px;border-radius:16px}.portal-access-card h1{font-size:28px}.email-preview-frame{height:560px}}

/* v3.3.0 — commercial asset register and billing workspace repairs */
.client-index-hero .client-index-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;align-self:stretch;position:relative;z-index:1}
.client-index-hero .client-index-metrics>div{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:15px 16px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow-sm)}
.client-index-hero .client-index-metrics span{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.client-index-hero .client-index-metrics strong{display:block;color:var(--ink);font-size:24px;line-height:1.1;margin-top:5px;overflow-wrap:anywhere}
.client-hero{grid-template-columns:minmax(0,1fr) minmax(460px,.8fr)}
.client-hero>div:first-child{min-width:0}
.client-health{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0;border:0;background:transparent}
.client-health>div{min-width:0;padding:14px 15px;border:1px solid var(--line);border-radius:14px;background:#fff}
.client-health span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.055em;font-weight:800}
.client-health strong{display:block;font-size:20px;line-height:1.15;margin-top:5px;overflow-wrap:anywhere}
.client-invoice-summary,.client-asset-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.client-invoice-summary>div,.client-asset-strip>div{min-width:0;border:1px solid var(--line);border-radius:18px;background:#fff;padding:17px 18px;box-shadow:var(--shadow-sm)}
.client-invoice-summary span,.client-asset-strip span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.client-invoice-summary strong,.client-asset-strip strong{display:block;font-size:25px;line-height:1.1;margin:6px 0 4px;overflow-wrap:anywhere}
.client-invoice-summary small,.client-asset-strip small{display:block;color:var(--muted)}
.client-asset-strip{grid-template-columns:180px 180px minmax(0,1fr)}
.client-asset-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}

.asset-hero{grid-template-columns:minmax(0,1fr) minmax(340px,520px)}
.asset-hero .actions{justify-content:flex-end;margin:0}
.asset-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.asset-metric-grid>a{display:block;min-width:0;border:1px solid var(--line);border-radius:18px;background:#fff;padding:17px 18px;color:var(--ink);box-shadow:var(--shadow-sm)}
.asset-metric-grid>a:hover{border-color:#93c5fd;background:#fbfdff}
.asset-metric-grid span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:850}
.asset-metric-grid strong{display:block;font-size:28px;line-height:1.05;margin:7px 0 4px}
.asset-metric-grid small{display:block;color:var(--muted);line-height:1.35}
.asset-filter form{width:100%;display:grid;grid-template-columns:minmax(180px,.75fr) minmax(280px,1.35fr) minmax(180px,.8fr) minmax(150px,.65fr) auto;gap:9px}
.asset-list{display:grid;gap:8px}
.asset-list-row{display:grid;grid-template-columns:minmax(230px,1.25fr) minmax(200px,1fr) minmax(190px,.95fr) minmax(190px,.9fr) minmax(140px,.55fr);gap:15px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:14px 15px;background:#fff;color:var(--ink);min-width:0}
.asset-list-row:hover{background:#fafcff;border-color:#bfd1e5}
.asset-list-row.attention{box-shadow:inset 4px 0 #f59e0b}
.asset-list-head{background:var(--surface-3);color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:850}
.asset-list-row>span{display:block;min-width:0}
.asset-list-row strong{display:block;color:var(--ink);overflow-wrap:anywhere}
.asset-list-row small{display:block;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}
.asset-list-row .badge{display:inline-flex;margin:2px 4px 2px 0}
.asset-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;background:linear-gradient(135deg,#fff,#f2f7fd);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow);margin-bottom:18px}
.asset-detail-hero h2{font-size:clamp(30px,4vw,46px);margin:5px 0 8px}
.asset-detail-hero p{margin:0;color:var(--muted)}
.asset-detail-hero .badge-row{justify-content:flex-start;margin-top:13px}
.asset-hero-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.asset-fact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.asset-fact-grid>div{background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;box-shadow:var(--shadow-sm);min-width:0}
.asset-fact-grid span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:850}
.asset-fact-grid strong{display:block;font-size:18px;margin:6px 0 3px;overflow-wrap:anywhere}
.asset-fact-grid small{display:block;color:var(--muted);overflow-wrap:anywhere}
.asset-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}
.asset-main-column{min-width:0}.asset-side-column{display:grid;gap:0;position:sticky;top:108px}
.asset-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
.asset-details>div{border:1px solid var(--line);border-radius:13px;background:var(--surface-2);padding:12px;min-width:0}
.asset-details dt{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:800}
.asset-details dd{margin:4px 0 0;font-weight:780;overflow-wrap:anywhere}
.asset-notes{margin-top:14px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}
.asset-notes p{margin:6px 0 0;color:#334155}
.asset-timeline{display:grid;gap:0;border-left:2px solid var(--line);margin-left:14px;padding-left:22px}
.asset-timeline article{display:grid;grid-template-columns:105px minmax(0,1fr);gap:15px;position:relative;padding:0 0 22px}
.asset-timeline article:before{content:"";position:absolute;left:-29px;top:5px;width:11px;height:11px;border-radius:50%;background:var(--accent);border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}
.asset-event-date{font-size:12px;color:var(--muted);font-weight:750}
.asset-timeline strong,.asset-timeline small{display:block}.asset-timeline small{color:var(--muted);margin-top:3px}.asset-timeline p{margin:8px 0;color:#334155;white-space:pre-line}
.asset-file-grid{display:grid;gap:9px}
.asset-file-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:#fff}
.asset-file-grid strong,.asset-file-grid small{display:block}.asset-file-grid small{color:var(--muted);margin-top:3px}.asset-file-grid p{margin:6px 0 0;color:#475569}
.asset-file-grid form{margin:0}

@media(max-width:1350px){.client-hero{grid-template-columns:1fr}.client-health{grid-template-columns:repeat(4,minmax(150px,1fr))}.asset-list-row{grid-template-columns:minmax(220px,1.2fr) minmax(180px,1fr) minmax(170px,.9fr) minmax(160px,.85fr) 130px}.asset-detail-layout{grid-template-columns:1fr}.asset-side-column{position:static;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.asset-side-column .card:last-child{grid-column:1/-1}}
@media(max-width:1050px){.client-index-hero .client-index-metrics,.client-health,.client-invoice-summary,.asset-metric-grid,.asset-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-asset-strip{grid-template-columns:1fr 1fr}.client-asset-actions{grid-column:1/-1;justify-content:flex-start}.asset-hero,.asset-detail-hero{grid-template-columns:1fr}.asset-hero .actions,.asset-hero-actions{justify-content:flex-start}.asset-filter form{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-filter form button{width:100%}.asset-list-card{overflow:auto}.asset-list{min-width:1050px}.asset-details{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.client-index-hero .client-index-metrics,.client-health,.client-invoice-summary,.client-asset-strip,.asset-metric-grid,.asset-fact-grid,.asset-side-column{grid-template-columns:1fr}.client-asset-actions{grid-column:auto}.asset-filter form{grid-template-columns:1fr}.asset-details{grid-template-columns:1fr}.asset-timeline article{grid-template-columns:1fr}.asset-file-grid article{grid-template-columns:1fr}.asset-detail-hero{padding:22px}.asset-hero-actions .btn{width:100%}}

/* v3.4.0 — invoice detail layout and overdue reminder controls */
.invoice-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,340px);gap:24px;align-items:stretch;margin-bottom:20px;padding:28px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(135deg,#ffffff 0%,#f5f9ff 100%);box-shadow:var(--shadow)}
.invoice-detail-hero h2{font-size:clamp(32px,4vw,50px);margin:4px 0 8px;letter-spacing:-.045em}.invoice-detail-hero p{color:var(--muted);margin:0}.invoice-balance-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;padding:22px;border-radius:20px;background:#17253b;color:#fff;min-width:0}.invoice-balance-panel span{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#bfdbfe}.invoice-balance-panel strong{font-size:36px;line-height:1.05;letter-spacing:-.04em}.invoice-balance-panel small{color:#dbeafe}.invoice-balance-panel .badge{background:#fff;color:#0f172a;border:0}
.invoice-detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;margin-bottom:18px}.invoice-fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.invoice-fact-grid>div{min-width:0;padding:16px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.invoice-fact-grid span{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.invoice-fact-grid strong{display:block;margin-top:6px;font-size:18px;line-height:1.25;color:var(--ink);overflow-wrap:anywhere}.invoice-payment-card{display:flex;flex-direction:column;gap:14px}.invoice-alert{display:grid;gap:5px;padding:16px;border-radius:15px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a5f}.invoice-alert.danger{background:#fff1f2;border-color:#fecdd3;color:#881337}.invoice-alert.success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.invoice-alert strong{font-size:15px}.invoice-alert span{font-size:13px;line-height:1.45}
.invoice-summary-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin:16px 0 18px!important}.invoice-summary-grid>div{display:flex!important;flex-direction:column!important;gap:5px!important;min-width:0!important;padding:15px!important;border:1px solid var(--line)!important;border-radius:14px!important;background:var(--surface-2)!important}.invoice-summary-grid span{display:block!important;color:var(--muted)!important;font-size:11px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.05em!important}.invoice-summary-grid strong{display:block!important;color:var(--ink)!important;font-size:18px!important;line-height:1.25!important;overflow-wrap:anywhere!important}
.reminder-control-card{margin-top:18px}.reminder-control-card .section-head{align-items:flex-start}.reminder-state{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.reminder-control-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px}.reminder-send-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fbfdff}.reminder-send-form .actions{grid-column:1/-1}.reminder-pause-panel{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}.reminder-pause-panel h3,.reminder-history h3{margin:0 0 8px}.reminder-pause-panel p{color:var(--muted)}.reminder-history{margin-top:18px}.danger-text{color:#b91c1c!important}.reminder-settings .form-section-title{grid-column:1/-1;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-top:12px;border-top:1px solid var(--line)}.reminder-settings .form-section-title strong{font-size:18px}.reminder-settings .form-section-title span{color:var(--muted);font-size:13px}.reminder-settings label small{display:block;margin-top:6px;color:var(--muted);font-weight:500}.client-invoice-summary>div{display:flex;flex-direction:column;gap:5px;min-width:0}.client-invoice-summary span,.client-index-metrics span{white-space:normal}.client-invoice-summary strong,.client-index-metrics strong{line-height:1.15;overflow-wrap:anywhere}
@media(max-width:1050px){.invoice-detail-hero,.invoice-detail-grid,.reminder-control-grid{grid-template-columns:1fr}.invoice-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-balance-panel{max-width:none}.reminder-send-form{grid-template-columns:1fr}.reminder-send-form .actions{grid-column:auto}}
@media(max-width:620px){.invoice-detail-hero{padding:20px;border-radius:20px}.invoice-fact-grid,.invoice-summary-grid{grid-template-columns:1fr!important}.invoice-balance-panel strong{font-size:30px}.reminder-settings .form-section-title{align-items:flex-start;flex-direction:column}}

/* v3.5.0 access control, portal subscriptions, broadcasts and incidents */
.permission-matrix{display:grid;gap:8px;margin:14px 0 20px}.permission-matrix h4{margin:18px 0 4px;padding-bottom:7px;border-bottom:1px solid var(--line);color:var(--ink);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.permission-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:16px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.permission-row>span{display:grid;gap:3px}.permission-row strong{font-size:13px}.permission-row small{color:var(--muted);font-size:12px}.permission-row.check{grid-template-columns:minmax(0,1fr) auto;cursor:pointer}.permission-row.check input{width:20px;height:20px}.client-check-grid{max-height:420px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.client-check-grid .check{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px}.incident-portal-list{display:grid;gap:16px}.incident-portal-card{border:1px solid var(--line);border-radius:20px;padding:20px;background:linear-gradient(135deg,#fff,#f8fbff)}.incident-portal-card h3{font-size:24px;margin:4px 0 8px}.incident-portal-card .timeline{margin-top:16px}.broadcast-preview{border:1px solid var(--line);border-radius:18px;min-height:480px;background:#fff}.settings-list-item .badge{flex:0 0 auto}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check-grid .check{display:flex;align-items:center;gap:9px}.check-grid .check input{flex:0 0 auto}.flash.warning{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.btn.secondary{background:#eaf2ff;color:#1d4ed8;border-color:#bfdbfe}.btn.secondary:hover{background:#dbeafe}.metric-grid .metric small{display:block;margin-top:6px;color:var(--muted)}
@media(max-width:760px){.permission-row{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}.client-check-grid{max-height:320px}}

/* v3.5.6 — Support Centre experience */
.support-hub-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,.9fr);gap:26px;align-items:center;padding:clamp(26px,3vw,40px);margin-bottom:18px;border:1px solid #d9e4f2;border-radius:28px;background:linear-gradient(135deg,#ffffff 0%,#f7faff 62%,#edf4ff 100%);box-shadow:0 18px 48px rgba(15,39,64,.08);position:relative;overflow:hidden}.support-hub-hero:after{content:"";position:absolute;right:-95px;top:-120px;width:300px;height:300px;border-radius:50%;background:rgba(37,99,235,.07)}.support-hero-copy{position:relative;z-index:1}.support-hero-copy h2{font-size:clamp(36px,4.2vw,58px);line-height:.98;letter-spacing:-.055em;margin:7px 0 14px;color:#0f1f35}.support-hero-copy>p:not(.kicker){max-width:720px;color:#5c6f87;font-size:16px;line-height:1.65}.support-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.support-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;position:relative;z-index:1}.support-overview-card{display:flex;flex-direction:column;min-height:126px;padding:17px 18px;border:1px solid #d9e4f2;border-radius:18px;background:rgba(255,255,255,.94);color:#17263c;box-shadow:0 7px 20px rgba(15,39,64,.05);transition:.18s ease}.support-overview-card:hover{transform:translateY(-2px);border-color:#9fbde7;box-shadow:0 12px 28px rgba(37,99,235,.11)}.support-overview-card.active{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.11)}.support-overview-card span{color:#667991;font-size:11px;font-weight:850;letter-spacing:.075em;text-transform:uppercase}.support-overview-card strong{display:block;margin:8px 0 4px;font-size:34px;line-height:1;letter-spacing:-.04em;color:#15243a}.support-overview-card small{color:#718198;line-height:1.35}.support-overview-card.open strong{color:#1d4ed8}.support-overview-card.attention strong{color:#a16207}.support-overview-card.urgent strong{color:#b91c1c}
.support-filter-card{margin-bottom:18px;padding:13px;border:1px solid #d9e4f2;border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(15,39,64,.045)}.support-quick-filters{display:flex;gap:7px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid #e6edf6;margin-bottom:12px}.support-quick-filters a{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 11px;border:1px solid transparent;border-radius:11px;color:#46617e;font-weight:800;font-size:13px}.support-quick-filters a span{display:inline-grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#eef3f8;color:#526982;font-size:11px}.support-quick-filters a:hover{background:#f4f8fd;color:#183d6d}.support-quick-filters a.active{background:#eaf2ff;border-color:#bfd6fb;color:#1d4ed8}.support-quick-filters a.active span{background:#fff;color:#1d4ed8}.support-quick-filters a.urgent.active{background:#fff1f2;border-color:#fecdd3;color:#b91c1c}.support-quick-filters a.urgent.active span{color:#b91c1c}.support-search-form{display:grid;grid-template-columns:minmax(260px,2fr) repeat(4,minmax(135px,.7fr)) auto;gap:10px;align-items:end}.support-search-form label{display:flex;flex-direction:column;gap:5px;color:#52657d;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.045em}.support-search-form input,.support-search-form select{width:100%;height:42px;border:1px solid #d5e0ed;border-radius:11px;background:#fff;color:#17263c;padding:8px 11px;text-transform:none;letter-spacing:normal;font-size:13px;font-weight:650}.support-search-form input:focus,.support-search-form select:focus{outline:0;border-color:#60a5fa;box-shadow:0 0 0 3px rgba(59,130,246,.12)}
.support-inbox-card{margin-bottom:18px;border:1px solid #d9e4f2;border-radius:24px;background:#fff;box-shadow:0 12px 32px rgba(15,39,64,.06);overflow:hidden}.support-inbox-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 24px;border-bottom:1px solid #e2eaf4;background:linear-gradient(180deg,#fff,#fafcff)}.support-inbox-head h2{margin:2px 0 5px;font-size:27px}.support-inbox-head p{margin:0;color:#65778d}.support-ticket-list{display:grid}.support-ticket-item{position:relative;display:grid;grid-template-columns:5px minmax(0,1fr) minmax(150px,190px);gap:17px;align-items:center;min-height:128px;padding:19px 22px 19px 0;border-bottom:1px solid #e5ecf5;color:#17263c;background:#fff;transition:.15s ease}.support-ticket-item:last-child{border-bottom:0}.support-ticket-item:hover{background:#f8fbff}.support-ticket-item.is-closed{background:#fbfcfe;opacity:.78}.support-ticket-item.is-closed:hover{opacity:1}.support-ticket-accent{align-self:stretch;border-radius:0 4px 4px 0;background:#94a3b8}.support-ticket-item.priority-urgent .support-ticket-accent{background:#dc2626}.support-ticket-item.priority-high .support-ticket-accent{background:#f59e0b}.support-ticket-item.priority-normal.is-open .support-ticket-accent{background:#2563eb}.support-ticket-item.status-in_progress .support-ticket-accent{background:#16a34a}.support-ticket-item.status-waiting_customer .support-ticket-accent{background:#d97706}.support-ticket-content{display:block;min-width:0}.support-ticket-topline{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:8px}.support-reference{font-size:12px;color:#2563eb;font-weight:900;letter-spacing:.04em}.support-ticket-subject{display:block;font-size:19px;line-height:1.28;color:#0f1f35;margin-bottom:6px;overflow-wrap:anywhere}.support-ticket-preview{display:block;color:#60738a;line-height:1.45;margin-bottom:9px;overflow-wrap:anywhere}.support-ticket-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;color:#7a8ba0;font-size:12px}.support-ticket-meta b{color:#42566e}.support-ticket-meta i{font-style:normal;color:#b0bcc9}.support-ticket-owner{display:flex;flex-direction:column;align-items:flex-end;gap:5px;text-align:right}.support-ticket-owner small{color:#8493a5;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:850}.support-ticket-owner strong{color:#33485f;overflow-wrap:anywhere}.support-ticket-owner span{margin-top:6px;color:#2563eb;font-size:12px;font-weight:850}.support-empty-state{text-align:center;padding:52px 24px}.support-empty-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 15px;border-radius:18px;background:#ecfdf5;color:#15803d;font-size:28px;font-weight:900}.support-empty-state h3{font-size:24px;margin:0 0 7px}.support-empty-state p{color:#6b7d92;margin:0}.support-empty-state .actions{justify-content:center}
.support-composer{margin-bottom:22px;border:1px solid #d5e0ed;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(15,39,64,.055);overflow:hidden}.support-composer>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;cursor:pointer;background:linear-gradient(135deg,#f8fbff,#eef5ff)}.support-composer>summary::-webkit-details-marker{display:none}.support-composer>summary span:first-child{display:grid;gap:3px}.support-composer>summary small{color:#2563eb;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.support-composer>summary strong{font-size:19px;color:#14263d}.support-composer-cta{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:8px 13px;border-radius:11px;background:#2563eb;color:#fff;font-size:13px;font-weight:850}.support-composer[open]>summary{border-bottom:1px solid #dce6f2}.support-composer[open] .support-composer-cta{background:#fff;color:#334155;border:1px solid #ccd8e6}.support-composer-body{padding:24px}.support-create-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.support-create-form label{display:flex;flex-direction:column;gap:6px;color:#334155;font-size:13px;font-weight:750}.support-create-form input,.support-create-form select,.support-create-form textarea{width:100%;border:1px solid #d4dfec;border-radius:12px;background:#fff;color:#15243a;padding:11px 13px;font:inherit}.support-create-form textarea{resize:vertical;min-height:150px}.support-create-form .wide{grid-column:1/-1}.support-create-form label small{font-weight:500;color:#718198}.support-create-form .checkbox{flex-direction:row;align-items:center;padding:12px 14px;border:1px solid #dbe5f0;border-radius:13px;background:#f8fbff}.support-create-form .checkbox input{width:18px;height:18px;flex:0 0 auto}.support-create-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:4px}.support-create-actions span{color:#718198;font-size:13px}
@media(max-width:1250px){.support-hub-hero{grid-template-columns:1fr}.support-search-form{grid-template-columns:repeat(3,minmax(0,1fr))}.support-search-box{grid-column:span 2}.support-search-form button{height:42px}}
@media(max-width:800px){.support-overview-grid{grid-template-columns:1fr 1fr}.support-search-form{grid-template-columns:1fr 1fr}.support-search-box{grid-column:1/-1}.support-ticket-item{grid-template-columns:5px minmax(0,1fr);padding-right:17px}.support-ticket-owner{grid-column:2;align-items:flex-start;text-align:left;padding-top:4px}.support-inbox-head{align-items:flex-start;flex-direction:column}.support-create-form{grid-template-columns:1fr}.support-create-form .wide{grid-column:auto}.support-create-actions{align-items:flex-start;flex-direction:column}.support-composer>summary{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.support-hub-hero{padding:22px;border-radius:22px}.support-hero-copy h2{font-size:38px}.support-overview-grid{grid-template-columns:1fr}.support-search-form{grid-template-columns:1fr}.support-search-box{grid-column:auto}.support-quick-filters{display:grid;grid-template-columns:1fr 1fr}.support-ticket-item{min-height:0;padding-top:16px;padding-bottom:16px}.support-ticket-subject{font-size:17px}.support-composer-body{padding:17px}.support-composer>summary{padding:17px}}


/* v3.6.1 — Manual HostedTable suspension controls */
.hostedtable-access-card{border-left:5px solid #22c55e}.hostedtable-access-card.is-suspended{border-left-color:#dc2626;background:linear-gradient(180deg,#fff,#fff7f7)}
.hostedtable-access-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.hostedtable-access-summary>div{padding:14px 16px;border:1px solid var(--line,#dbe4ef);border-radius:14px;background:#f8fafc;min-width:0}
.hostedtable-access-summary span{display:block;color:#64748b;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}
.hostedtable-access-summary strong{display:block;color:#0f172a;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.hostedtable-access-form{display:grid;gap:14px;padding-top:6px}.hostedtable-access-form textarea{min-height:88px}
@media(max-width:900px){.hostedtable-access-summary{grid-template-columns:1fr 1fr}}@media(max-width:580px){.hostedtable-access-summary{grid-template-columns:1fr}}

/* v3.7.0 multi-department ticketing */
.support-department-manager{overflow:visible}
.department-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-top:18px}
.department-card{border:1px solid #dbe5f1;border-top:4px solid var(--department-colour,#2563eb);border-radius:18px;background:#fff;padding:18px;box-shadow:0 8px 24px rgba(15,39,64,.06);display:flex;flex-direction:column;gap:14px}
.department-card.is-disabled{opacity:.65;background:#f8fafc}
.department-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.department-card-head>div:first-child{display:grid;grid-template-columns:14px 1fr;gap:3px 9px;align-items:center}
.department-card-head strong{font-size:18px;color:#102a43}
.department-card-head small{grid-column:2;color:#64748b;line-height:1.45}
.department-dot{width:12px;height:12px;border-radius:50%;background:var(--department-colour,#2563eb);box-shadow:0 0 0 4px color-mix(in srgb,var(--department-colour,#2563eb) 14%,transparent)}
.department-meta{display:flex;gap:8px;flex-wrap:wrap;color:#536f89;font-size:12px;font-weight:750}
.department-meta span{padding:5px 8px;background:#f1f5f9;border-radius:999px}
.department-mailboxes{display:grid;gap:9px}
.mailbox-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid #e2e8f0;background:#f8fbff;border-radius:12px}
.mailbox-row>div:first-child{display:flex;flex-direction:column;min-width:0}
.mailbox-row strong{font-size:14px}.mailbox-row span,.mailbox-row small{color:#64748b;font-size:12px;overflow-wrap:anywhere}
.mailbox-row>div:last-child{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.btn.compact{min-height:32px;padding:7px 10px;font-size:12px;border-radius:9px}
.support-config-grid{align-items:start}
.department-members{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 14px;border:1px solid #dbe5f1;border-radius:12px;padding:14px}
.department-members legend{font-weight:850;color:#334155;padding:0 6px}
.support-department-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--department-colour,#2563eb) 11%,white);border:1px solid color-mix(in srgb,var(--department-colour,#2563eb) 35%,white);color:var(--department-colour,#2563eb);font-size:11px;font-weight:850}
.support-ticket-topline .support-department-badge{margin-left:2px}
@media(max-width:760px){.department-board{grid-template-columns:1fr}.mailbox-row{align-items:flex-start;flex-direction:column}.mailbox-row>div:last-child{justify-content:flex-start}.department-members{grid-template-columns:1fr}}

/* v3.7.1 — contact-controlled communication routing and ticket detail rebuild */
.contact-centre-hero{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:22px;align-items:center;padding:24px 26px;margin-bottom:18px;background:linear-gradient(135deg,#fff,#f1f6ff);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-sm)}
.contact-centre-hero h2{font-size:30px;margin:3px 0 7px}.contact-centre-hero p{margin:0;color:var(--muted)}
.contact-centre-stat{padding:17px 19px;border-radius:17px;background:#fff;border:1px solid #cfe0f5}.contact-centre-stat span,.contact-centre-stat small{display:block;color:var(--muted)}.contact-centre-stat strong{display:block;font-size:31px;margin:3px 0;color:var(--ink)}
.contact-centre-layout{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(520px,1.45fr);gap:18px;align-items:start}.contact-directory{position:sticky;top:108px}.contact-card-list{display:grid;gap:10px}.contact-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);transition:.16s}.contact-card:hover{border-color:#93c5fd;background:#f8fbff}.contact-card.active{border-color:#60a5fa;background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.contact-avatar{width:44px;height:44px;border-radius:13px;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-size:18px;font-weight:900}.contact-card-copy{min-width:0}.contact-card-copy strong,.contact-card-copy small{display:block}.contact-card-copy small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}.contact-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.contact-tags em{font-style:normal;padding:3px 7px;border-radius:999px;background:#eef2f7;color:#475569;font-size:10px;font-weight:800}.contact-tags em.portal{background:#ede9fe;color:#6d28d9}.contact-editor{padding:26px}.contact-responsibility-panel,.contact-notification-panel{border:1px solid var(--line);background:#f8fbff;border-radius:18px;padding:18px}.contact-responsibility-panel h3,.contact-notification-panel h3{margin:0 0 6px}.contact-notification-panel>div:first-child p{margin:0 0 15px;color:var(--muted)}.notification-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.notification-category{display:flex!important;align-items:flex-start!important;gap:10px;padding:12px;border:1px solid #d9e6f4;border-radius:13px;background:#fff;cursor:pointer}.notification-category:hover{border-color:#93c5fd}.notification-category input{margin-top:3px;flex:0 0 auto}.notification-category span{min-width:0}.notification-category strong,.notification-category small{display:block}.notification-category small{margin-top:3px;color:var(--muted);font-weight:500;line-height:1.35}

.ticket-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:24px;align-items:center;padding:28px 30px;margin-bottom:18px;background:linear-gradient(135deg,#fff,#f4f8fd);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.ticket-detail-copy h2{font-size:clamp(29px,3.4vw,48px);line-height:1.08;margin:9px 0 10px;max-width:1100px}.ticket-detail-copy>p{color:var(--muted);margin:0}.ticket-detail-kickers{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ticket-reference{font-weight:900;color:#1d4ed8;letter-spacing:.04em}.ticket-department{padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--department-colour) 12%,#fff);border:1px solid color-mix(in srgb,var(--department-colour) 30%,#fff);color:var(--department-colour);font-size:11px;font-weight:850}.ticket-recipient-summary{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:17px 0}.ticket-recipient-summary>strong{font-size:12px;color:#475569}.ticket-recipient-summary>span{display:flex;gap:6px;align-items:center;padding:6px 9px;border-radius:999px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a5f;font-size:12px;font-weight:800}.ticket-recipient-summary small{color:#64748b;font-weight:600}.ticket-recipient-summary em{font-style:normal;color:#b45309}.ticket-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ticket-fact-grid>div{padding:14px 15px;background:#fff;border:1px solid var(--line);border-radius:15px}.ticket-fact-grid span,.ticket-fact-grid strong{display:block}.ticket-fact-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.ticket-fact-grid strong{margin-top:5px;font-size:15px;overflow-wrap:anywhere}.ticket-detail-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(380px,.72fr);gap:18px;align-items:start}.ticket-management-column{position:sticky;top:108px}.ticket-conversation-card,.ticket-management-card{margin-bottom:0}.ticket-message-list{display:grid;gap:12px}.ticket-message{max-width:88%;padding:15px 17px;border:1px solid var(--line);border-radius:17px;background:#fff}.ticket-message header{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.ticket-message header span{font-weight:850}.ticket-message header time{color:var(--muted);font-size:11px}.ticket-message p{margin:0;line-height:1.55;overflow-wrap:anywhere}.ticket-message.customer{justify-self:start;background:#f8fafc}.ticket-message.staff{justify-self:end;background:#eff6ff;border-color:#bfdbfe}.ticket-message.internal{justify-self:end;background:#fff7ed;border-color:#fed7aa}.ticket-reply-composer{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.ticket-reply-composer label>span{display:block;margin-bottom:7px;font-weight:850}.ticket-reply-actions{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:11px}.ticket-reply-actions small{color:var(--muted)}.ticket-reply-actions>div{display:flex;gap:8px}.ticket-management-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ticket-management-fields .wide{grid-column:1/-1}.ticket-recipient-editor{margin-top:4px;padding:17px;border:1px solid #bfdbfe;background:#f8fbff;border-radius:17px}.ticket-recipient-editor .section-head{margin-bottom:12px}.ticket-recipient-editor h3{margin:0 0 4px}.ticket-recipient-editor p{margin:0;color:var(--muted);font-size:12px}.ticket-recipient-grid{display:grid;gap:8px}.ticket-recipient-option{display:flex!important;align-items:flex-start!important;gap:10px;padding:11px;border:1px solid var(--line);border-radius:13px;background:#fff;cursor:pointer}.ticket-recipient-option:has(input:checked){border-color:#60a5fa;background:#eff6ff}.ticket-recipient-option input{margin-top:4px}.ticket-recipient-option span{min-width:0}.ticket-recipient-option strong,.ticket-recipient-option small,.ticket-recipient-option em{display:block}.ticket-recipient-option small{color:var(--muted);overflow-wrap:anywhere}.ticket-recipient-option em{font-style:normal;color:#1d4ed8;font-size:10px;font-weight:800;margin-top:4px}.ticket-email-history{padding:0;overflow:hidden;margin-top:18px}.ticket-email-history summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;cursor:pointer;list-style:none}.ticket-email-history summary::-webkit-details-marker{display:none}.ticket-email-history summary strong,.ticket-email-history summary small{display:block}.ticket-email-history summary small{color:var(--muted);margin-top:3px}.ticket-email-list{border-top:1px solid var(--line);padding:10px 18px 18px;display:grid;gap:8px}.ticket-email-list>div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #edf2f7}.ticket-email-list strong,.ticket-email-list small{display:block}.ticket-email-list small{color:var(--muted);margin-top:2px}.danger-text{color:#b91c1c!important}
@media(max-width:1180px){.contact-centre-layout,.ticket-detail-layout{grid-template-columns:1fr}.contact-directory,.ticket-management-column{position:static}.ticket-detail-hero{grid-template-columns:1fr}.notification-category-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.contact-centre-hero{grid-template-columns:1fr;padding:19px}.contact-centre-layout{grid-template-columns:1fr}.contact-card{grid-template-columns:40px minmax(0,1fr)}.contact-card>.badge{grid-column:2}.notification-category-grid,.ticket-management-fields,.ticket-fact-grid{grid-template-columns:1fr}.ticket-detail-hero{padding:20px;border-radius:20px}.ticket-message{max-width:100%}.ticket-reply-actions{align-items:stretch;flex-direction:column}.ticket-reply-actions>div{width:100%;flex-direction:column}.ticket-reply-actions .btn{width:100%}.ticket-management-column{position:static}}

/* v3.8.0 rich support reply composer and quick responses */
.reply-composer-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.reply-composer-heading>div>span,.quick-response-picker label>span{display:block;font-weight:900;color:#0f172a}.reply-composer-heading small{display:block;color:var(--muted);margin-top:3px}.quick-response-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:12px;margin-bottom:12px;border:1px solid #bfdbfe;background:#f7fbff;border-radius:14px}.quick-response-picker label{margin:0}.rich-editor-shell{border:1px solid #cbd5e1;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 4px 14px rgba(15,23,42,.04)}.rich-editor-shell:focus-within{border-color:#60a5fa;box-shadow:0 0 0 3px rgba(37,99,235,.12)}.rich-editor-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:9px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.rich-editor-toolbar button,.rich-editor-toolbar select,.rich-colour-control{min-height:34px;border:1px solid #d5dee9;background:#fff;color:#1e293b;border-radius:8px;font:inherit;font-size:12px;font-weight:800;box-shadow:none}.rich-editor-toolbar button{padding:6px 9px;cursor:pointer}.rich-editor-toolbar button:hover,.rich-editor-toolbar select:hover{background:#eff6ff;border-color:#93c5fd}.rich-editor-toolbar select{width:auto;padding:5px 27px 5px 8px}.rich-colour-control{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;font-weight:950;cursor:pointer;text-decoration:underline;text-decoration-color:#2563eb;text-decoration-thickness:3px}.rich-colour-control.highlight{background:#dbeafe;text-decoration:none}.rich-colour-control input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.rich-editor{min-height:210px;max-height:520px;overflow:auto;padding:18px 20px;font-size:15px;line-height:1.65;color:#0f172a;outline:none}.rich-editor:empty:before{content:attr(data-placeholder);color:#94a3b8;pointer-events:none}.rich-editor img{display:block;max-width:min(100%,720px);height:auto;margin:14px 0;border-radius:12px;border:1px solid #dbe5ef}.rich-editor blockquote,.ticket-message-body blockquote{margin:12px 0;padding:10px 14px;border-left:4px solid #60a5fa;background:#eff6ff;color:#334155}.rich-editor a,.ticket-message-body a{color:#1d4ed8;text-decoration:underline}.reply-attachment-zone{margin-top:12px;padding:14px;border:1px dashed #93c5fd;border-radius:14px;background:#f8fbff}.reply-attachment-zone label>span{display:block;font-weight:900;margin-bottom:6px}.reply-attachment-zone input[type=file]{display:block;width:100%;padding:9px;background:#fff;border:1px solid #d7e3f1;border-radius:9px}.reply-attachment-zone small{display:block;color:var(--muted);margin-top:6px}.reply-file-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.reply-file-list span{padding:5px 8px;border:1px solid #bfdbfe;background:#fff;border-radius:999px;color:#334155;font-size:11px;font-weight:700}.ticket-message-body{line-height:1.6;overflow-wrap:anywhere}.ticket-message-body p:first-child{margin-top:0}.ticket-message-body p:last-child{margin-bottom:0}.ticket-message-body img{max-width:100%;height:auto;border-radius:11px;border:1px solid #dbe5ef;margin:10px 0}.ticket-attachment-list{display:grid;gap:7px;margin-top:12px}.ticket-attachment-list a{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;border:1px solid #d7e3f1;border-radius:11px;background:rgba(255,255,255,.72);text-decoration:none;color:#1e293b}.ticket-attachment-list a:hover{border-color:#93c5fd;background:#fff}.ticket-attachment-list strong,.ticket-attachment-list small{display:block;overflow-wrap:anywhere}.ticket-attachment-list small{color:#64748b;font-size:10px}.ticket-attachment-list em{font-style:normal;color:#2563eb;font-size:11px;font-weight:850}.ticket-attachment-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;background:#dbeafe;color:#1d4ed8;font-size:9px;font-weight:950}.quick-response-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 28px;margin-bottom:18px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,#fff,#f0f7ff);box-shadow:var(--shadow)}.quick-response-hero h2{font-size:38px;margin:4px 0 8px}.quick-response-hero p{margin:0;color:var(--muted);max-width:800px}.quick-response-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.8fr);gap:18px;align-items:start}.quick-response-library,.quick-response-editor{margin:0}.quick-response-list{display:grid;gap:10px}.quick-response-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:15px;border:1px solid var(--line);border-radius:15px;background:#fff}.quick-response-item.is-disabled{opacity:.58;background:#f8fafc}.quick-response-item h3{margin:4px 0 5px}.quick-response-item p{margin:0;color:var(--muted);line-height:1.5}.quick-response-item code{display:inline-block;margin-top:8px;padding:3px 7px;border-radius:7px;background:#eef2ff;color:#3730a3}.quick-response-item .actions{display:flex;gap:6px;align-items:center}.quick-response-item form{margin:0}.quick-response-scope{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#2563eb;font-weight:900}.quick-response-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.quick-response-fields label:first-child{grid-column:1/-1}.template-placeholders{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:4px 0 12px}.template-placeholders strong{font-size:12px;margin-right:4px}.template-placeholders span{padding:4px 7px;border:1px solid #dbeafe;border-radius:7px;background:#eff6ff;color:#1d4ed8;font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace}.quick-response-editor .form-actions{display:flex;gap:8px;margin-top:14px}.rich-reply-composer .ticket-reply-actions{padding-top:2px}
@media(max-width:1180px){.quick-response-layout{grid-template-columns:1fr}.quick-response-editor{order:-1}}
@media(max-width:720px){.reply-composer-heading{display:block}.reply-composer-heading .btn{margin-top:9px}.quick-response-picker{grid-template-columns:1fr}.quick-response-picker .btn{width:100%}.rich-editor-toolbar{overflow-x:auto;flex-wrap:nowrap}.rich-editor-toolbar select{min-width:110px}.rich-editor{min-height:190px;padding:15px}.quick-response-hero{display:block;padding:20px}.quick-response-hero .btn{margin-top:14px;width:100%}.quick-response-fields{grid-template-columns:1fr}.quick-response-fields label:first-child{grid-column:auto}.quick-response-item{grid-template-columns:1fr}.quick-response-item .actions{justify-content:flex-start}}

/* v3.8.4: identify staff-PIN attributed replies sent from HostedTable. */
.ticket-message-origin{display:block;margin-top:9px;color:#64748b;font-size:10px;font-weight:700;overflow-wrap:anywhere}

/* v3.8.5 portal-user administration and security evidence */
.portal-admin-layout{display:grid;grid-template-columns:minmax(290px,.62fr) minmax(0,1.38fr);gap:18px;align-items:start}.portal-user-directory{position:sticky;top:108px;padding:20px}.portal-user-directory .section-head{margin-bottom:14px}.portal-user-list{display:grid;gap:9px}.portal-user-list-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:start;padding:13px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);text-decoration:none;transition:.15s ease;min-width:0}.portal-user-list-card:hover{border-color:#94a3b8;box-shadow:0 7px 20px rgba(15,23,42,.06);transform:translateY(-1px)}.portal-user-list-card.active{border-color:#64748b;background:#f8fafc;box-shadow:0 0 0 3px rgba(100,116,139,.1)}.portal-user-avatar{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#e2e8f0;color:#334155;font-weight:900;font-size:16px}.portal-user-list-copy{display:grid;gap:2px;min-width:0}.portal-user-list-copy strong,.portal-user-list-copy small,.portal-user-list-copy em{display:block;min-width:0;overflow-wrap:anywhere}.portal-user-list-copy strong{font-size:14px}.portal-user-list-copy small{font-size:12px;color:#475569}.portal-user-list-copy em{font-size:10px;color:var(--muted);font-style:normal;margin-top:3px}.portal-user-list-status{align-self:center}.portal-user-workspace{min-width:0}.portal-user-editor-card,.portal-security-card,.portal-session-card,.portal-login-events-card,.portal-audit-card{overflow:hidden}.portal-user-heading-status{display:flex;align-items:center}.portal-editor-section{border:1px solid var(--line);border-radius:19px;padding:18px;background:linear-gradient(180deg,#fff,#fbfdff)}.portal-editor-section-head{margin-bottom:15px}.portal-editor-section-head h3{margin:0 0 4px;font-size:18px}.portal-editor-section-head p{margin:0;color:var(--muted);font-size:12px}.portal-access-toggle{padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.portal-access-toggle span,.portal-access-toggle strong,.portal-access-toggle small{display:block}.portal-access-toggle small{color:var(--muted);font-weight:600;margin-top:2px}.portal-permission-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.portal-permission-group{border:1px solid var(--line);border-radius:16px;padding:13px;background:#fff;min-width:0}.portal-permission-group legend{padding:0 7px;color:#334155;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.portal-permission-option{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:9px!important;padding:9px 7px;border-radius:10px;cursor:pointer}.portal-permission-option:hover{background:#f8fafc}.portal-permission-option:has(input:checked){background:#f1f5f9}.portal-permission-option input{width:auto!important;margin-top:3px;accent-color:var(--primary)}.portal-permission-option span,.portal-permission-option strong,.portal-permission-option small{display:block;min-width:0}.portal-permission-option strong{font-size:12px}.portal-permission-option small{font-size:9px;color:var(--muted);overflow-wrap:anywhere;margin-top:2px}.portal-security-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.portal-security-metrics>div{padding:15px;border:1px solid var(--line);border-radius:15px;background:#fff;min-width:0}.portal-security-metrics>div.security-alert{background:#fff7ed;border-color:#fdba74}.portal-security-metrics span,.portal-security-metrics strong,.portal-security-metrics small{display:block}.portal-security-metrics span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.portal-security-metrics strong{font-size:14px;margin:5px 0;overflow-wrap:anywhere}.portal-security-metrics small{font-size:11px;color:#64748b;overflow-wrap:anywhere}.portal-security-browser{margin-top:12px;padding:14px 15px;border:1px solid #cbd5e1;border-radius:15px;background:#f8fafc}.portal-security-browser span,.portal-security-browser strong,.portal-security-browser small{display:block}.portal-security-browser span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.portal-security-browser strong{font-size:12px;margin-top:5px;overflow-wrap:anywhere}.portal-security-browser small{font-size:10px;color:#64748b;margin-top:5px}.portal-security-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:15px}.portal-security-actions form{margin:0}.portal-security-table{display:grid;gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden}.portal-security-row{display:grid;grid-template-columns:110px 150px 150px minmax(180px,.8fr) minmax(220px,1.2fr);gap:12px;align-items:start;padding:13px 15px;border-top:1px solid var(--line);background:#fff;min-width:0}.portal-security-row:first-child{border-top:0}.portal-security-head{background:#f8fafc;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#64748b;font-weight:850}.portal-security-row span,.portal-security-row strong,.portal-security-row small{display:block;min-width:0}.portal-security-row strong{font-size:12px;overflow-wrap:anywhere}.portal-security-row small{font-size:10px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.portal-security-ua{max-height:52px;overflow:auto}.portal-event-list,.portal-audit-list{display:grid;gap:9px}.portal-event-item,.portal-audit-item{border:1px solid var(--line);border-radius:15px;background:#fff;overflow:hidden}.portal-event-item.danger{border-color:#fecaca;background:#fffafa}.portal-event-item summary,.portal-audit-item summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;cursor:pointer;list-style:none}.portal-event-item summary::-webkit-details-marker,.portal-audit-item summary::-webkit-details-marker{display:none}.portal-event-item summary span,.portal-event-item summary strong,.portal-event-item summary small,.portal-audit-item summary span,.portal-audit-item summary strong,.portal-audit-item summary small{display:block;min-width:0}.portal-event-item summary small,.portal-audit-item summary small{font-size:11px;color:var(--muted);margin-top:3px}.portal-event-detail,.portal-audit-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 16px;border-top:1px solid var(--line);background:#f8fafc}.portal-event-detail>div,.portal-audit-detail>div{padding:11px;border:1px solid var(--line);border-radius:12px;background:#fff;min-width:0}.portal-event-detail .wide,.portal-audit-detail .wide{grid-column:1/-1}.portal-event-detail span,.portal-event-detail strong,.portal-audit-detail span,.portal-audit-detail strong{display:block}.portal-event-detail span,.portal-audit-detail span{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:850}.portal-event-detail strong,.portal-audit-detail strong{font-size:11px;margin-top:4px;overflow-wrap:anywhere}.portal-audit-detail pre{grid-column:1/-1;white-space:pre-wrap;overflow:auto;margin:0;padding:13px;border:1px solid var(--line);border-radius:12px;background:#0f172a;color:#e2e8f0;font-size:11px;max-height:320px}.mono{font-family:"SFMono-Regular",Consolas,monospace}
@media(max-width:1320px){.portal-admin-layout{grid-template-columns:270px minmax(0,1fr)}.portal-permission-groups{grid-template-columns:1fr}.portal-security-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-security-row{grid-template-columns:100px 140px 140px minmax(170px,1fr)}.portal-security-row>span:last-child{grid-column:2/-1}}
@media(max-width:1080px){.portal-admin-layout{grid-template-columns:1fr}.portal-user-directory{position:static}.portal-user-list{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-security-row{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-security-head{display:none}.portal-security-row>span:last-child{grid-column:auto}}
@media(max-width:720px){.portal-user-list{grid-template-columns:1fr}.portal-user-list-card{grid-template-columns:40px minmax(0,1fr)}.portal-user-list-status{grid-column:2}.portal-security-metrics,.portal-event-detail,.portal-audit-detail,.portal-security-row{grid-template-columns:1fr}.portal-event-detail .wide,.portal-audit-detail .wide,.portal-security-row>span:last-child{grid-column:auto}.portal-security-actions{align-items:stretch;flex-direction:column}.portal-security-actions form,.portal-security-actions .btn{width:100%}}

/* v3.8.5 audited HostedTable ticket identity correction */
.hostedtable-source-card{border-color:#c7d2fe!important;background:linear-gradient(180deg,#fff,#f8faff)!important}.hostedtable-source-card .details small{display:block;color:#64748b;margin-top:3px;overflow-wrap:anywhere}.ticket-identity-correction,.ticket-identity-history{padding:0;overflow:hidden}.ticket-identity-correction>summary,.ticket-identity-history>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;cursor:pointer;list-style:none}.ticket-identity-correction>summary::-webkit-details-marker,.ticket-identity-history>summary::-webkit-details-marker{display:none}.ticket-identity-correction>summary span,.ticket-identity-correction>summary strong,.ticket-identity-correction>summary small,.ticket-identity-history>summary span,.ticket-identity-history>summary strong,.ticket-identity-history>summary small{display:block}.ticket-identity-correction>summary small,.ticket-identity-history>summary small{color:var(--muted);font-size:11px;margin-top:3px}.ticket-identity-form{border-top:1px solid var(--line);padding:18px 20px 22px}.ticket-identity-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ticket-identity-fields .wide{grid-column:1/-1}.ticket-identity-fields label{display:flex;flex-direction:column;gap:6px;color:#334155;font-weight:720;font-size:13px}.ticket-identity-fields input,.ticket-identity-fields select,.ticket-identity-fields textarea{width:100%;border:1px solid var(--line-strong);border-radius:11px;background:#fff;color:var(--ink);padding:11px 12px;outline:none}.ticket-identity-fields small{color:var(--muted);font-weight:600;font-size:10px}.ticket-identity-history-list{display:grid;gap:11px;border-top:1px solid var(--line);padding:16px 18px 20px}.ticket-identity-history-list article{border:1px solid var(--line);border-radius:15px;padding:14px;background:#fff}.ticket-identity-history-list header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.ticket-identity-history-list header span,.ticket-identity-history-list header strong,.ticket-identity-history-list header small{display:block}.ticket-identity-history-list header small,.ticket-identity-history-list footer small{font-size:10px;color:var(--muted);margin-top:3px}.ticket-identity-history-list p{font-size:12px;color:#475569;padding:10px 0;margin:0}.ticket-identity-before-after{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ticket-identity-before-after>div{padding:11px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;min-width:0}.ticket-identity-before-after span,.ticket-identity-before-after strong,.ticket-identity-before-after small{display:block}.ticket-identity-before-after span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.ticket-identity-before-after strong{font-size:12px;margin:4px 0}.ticket-identity-before-after small{font-size:10px;color:#64748b;overflow-wrap:anywhere;margin-top:2px}.ticket-identity-history-list footer{margin-top:9px}
@media(max-width:720px){.ticket-identity-fields,.ticket-identity-before-after{grid-template-columns:1fr}.ticket-identity-fields .wide{grid-column:auto}}

/* v3.8.5 richer Control Centre audit evidence */
.audit-filter-bar input{min-width:min(420px,100%)}.audit-evidence-list{display:grid;gap:9px}.audit-evidence-item{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.audit-evidence-item.high-risk{border-color:#fecaca}.audit-evidence-item summary{display:grid;grid-template-columns:minmax(0,1fr) auto 150px;gap:14px;align-items:center;padding:15px 17px;cursor:pointer;list-style:none}.audit-evidence-item summary::-webkit-details-marker{display:none}.audit-evidence-main,.audit-evidence-main strong,.audit-evidence-main small{display:block;min-width:0}.audit-evidence-main small{font-size:11px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.audit-evidence-badges{display:flex;gap:6px;flex-wrap:wrap}.audit-evidence-item time{text-align:right;color:#64748b;font-size:11px}.audit-evidence-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:15px 17px;border-top:1px solid var(--line);background:#f8fafc}.audit-evidence-detail>div{padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;min-width:0}.audit-evidence-detail .wide{grid-column:1/-1}.audit-evidence-detail span,.audit-evidence-detail strong{display:block}.audit-evidence-detail span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.audit-evidence-detail strong{font-size:11px;margin-top:4px;overflow-wrap:anywhere}.audit-evidence-detail pre{grid-column:1/-1;white-space:pre-wrap;overflow:auto;margin:0;padding:13px;border:1px solid var(--line);border-radius:12px;background:#0f172a;color:#e2e8f0;font-size:11px;max-height:420px}.audit-hash-chain strong{word-break:break-all}.audit-hash-chain strong+strong{margin-top:6px}
@media(max-width:900px){.audit-evidence-item summary{grid-template-columns:1fr}.audit-evidence-item time{text-align:left}.audit-evidence-detail{grid-template-columns:1fr}.audit-evidence-detail .wide{grid-column:auto}}

/* v3.8.6 multi-brand mass mailer */
.broadcast-brand-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.broadcast-brand-option{display:block;cursor:pointer}.broadcast-brand-option>input{position:absolute;opacity:0;pointer-events:none}.broadcast-brand-card{display:flex;align-items:center;gap:16px;min-height:96px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.broadcast-brand-card img{width:96px;height:54px;object-fit:contain;flex:0 0 96px}.broadcast-brand-card span{display:grid;gap:4px}.broadcast-brand-card strong{font-size:16px;color:var(--ink)}.broadcast-brand-card small{color:var(--muted);font-size:12px}.broadcast-brand-option>input:checked+.broadcast-brand-card{border-color:#64748b;box-shadow:0 0 0 3px rgba(100,116,139,.13);transform:translateY(-1px)}.broadcast-brand-option>input:checked+.broadcast-brand-card.hostedtable{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12)}.broadcast-brand-help{margin:12px 0 0}.broadcast-brand-summary{margin:0 0 14px}.broadcast-brand-badge.hostedtable{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.broadcast-brand-badge.dm{background:#f1f5f9;color:#334155;border-color:#cbd5e1}.broadcast-sender-details{margin:14px 0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.broadcast-sender-details summary{cursor:pointer;font-weight:700;color:var(--ink);margin-bottom:10px}.broadcast-sender-details label{display:grid;gap:5px;margin-top:10px}.btn.compact{padding:8px 10px;font-size:12px;margin-top:10px}@media(max-width:760px){.broadcast-brand-grid{grid-template-columns:1fr}.broadcast-brand-card img{width:82px;flex-basis:82px}}

/* Commerce UI */
.commerce-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.commerce-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.payment-method-list{display:grid;gap:10px}.payment-method{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--border,#e2e8f0);border-radius:12px;padding:14px}.payment-method>div:first-child{display:flex;flex-direction:column;gap:5px}.payment-method span{color:var(--muted,#64748b);font-size:13px}.store-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.store-product{border:1px solid var(--border,#e2e8f0);border-radius:14px;padding:18px;background:var(--panel,#fff);display:flex;flex-direction:column;gap:10px}.store-product h3{margin:0}.store-product p{margin:0;color:var(--muted,#64748b)}.store-product details{margin-top:5px}.store-product summary{cursor:pointer;font-weight:700}.store-choice-list{display:grid;gap:10px;margin-top:12px}.compact-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:auto}.compact-form select{min-width:160px}.btn.small{padding:7px 10px;font-size:12px}@media(max-width:900px){.commerce-grid{grid-template-columns:1fr}.commerce-hero{align-items:flex-start;flex-direction:column}}

/* v3.8.10 commerce order recovery & flexible billing */
.key-value{display:grid;gap:9px;margin-top:12px}.key-value>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.key-value>div:last-child{border-bottom:0}.key-value span{font-size:11px;color:var(--muted);font-weight:700}.key-value strong{font-size:12px;overflow-wrap:anywhere}.payment-method small.muted{font-size:10px;overflow-wrap:anywhere}.commerce-grid .stack hr,.card>hr{border:0;border-top:1px solid var(--line);margin:18px 0}.compact-form select{max-width:280px}.danger-text{display:block;color:#b91c1c;margin-top:5px;font-size:11px}.metric-grid.compact .metric strong{overflow-wrap:anywhere}@media(max-width:760px){.key-value>div{grid-template-columns:1fr}.compact-form select{width:100%;max-width:none}}

/* v3.8.11 — richer customer portal, service onboarding and cancellation requests */
.portal-service-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.portal-service-main{display:grid;gap:18px}.portal-service-side{min-width:0}.customer-service-hero{margin-bottom:18px}.onboarding-steps{display:grid;gap:10px}.onboarding-step{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start;border:1px solid var(--line);background:#fff;border-radius:15px;padding:13px 14px;color:var(--ink)}a.onboarding-step:hover{border-color:#93c5fd;background:#f8fbff}.onboarding-step>b{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#eef2f7;color:#475569;font-size:15px}.onboarding-step span{min-width:0}.onboarding-step strong,.onboarding-step small{display:block}.onboarding-step small{margin-top:3px;color:var(--muted);line-height:1.45}.onboarding-step.complete>b{background:#ecfdf3;color:#15803d}.onboarding-step.current{border-color:#bfdbfe;background:#eff6ff}.onboarding-step.current>b{background:#dbeafe;color:#1d4ed8}.hostedtable-getting-started .actions{align-items:center;margin-top:16px}.usage-card{margin-top:18px;padding:16px;border:1px solid #bfdbfe;border-radius:16px;background:#f8fbff}.usage-card span,.usage-card small{display:block;color:var(--muted)}.usage-card strong{display:block;margin:4px 0;font-size:25px;letter-spacing:-.02em}.cancellation-request-box{border:1px solid #fecdd3;border-radius:16px;background:#fff8f8;padding:0}.cancellation-request-box>summary{cursor:pointer;padding:15px 17px;font-weight:800;color:#9f1239}.cancellation-request-box>form{padding:0 17px 17px}.resource-card form,.resource-card button{max-width:100%}.resource-card{color:var(--ink)}.resource-card:hover{border-color:#c8d3e1}.inline-action-menu{position:relative}.inline-action-menu>summary{list-style:none;cursor:pointer}.inline-action-menu>summary::-webkit-details-marker{display:none}.inline-action-menu[open] .stack-form{position:absolute;right:0;top:46px;z-index:30;width:360px;max-width:calc(100vw - 40px);padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-lg)}.stack-form{display:grid;gap:12px}.stack-form textarea{width:100%}.customer-action-centre{margin-bottom:18px}.service-product-card[href]{display:grid;text-decoration:none;color:var(--ink);transition:.16s}.service-product-card[href]:hover{border-color:#93c5fd;transform:translateY(-1px);box-shadow:var(--shadow-md)}
@media(max-width:1000px){.portal-service-layout{grid-template-columns:1fr}.portal-service-side .sticky-card{position:static}.inline-action-menu[open] .stack-form{position:fixed;left:16px;right:16px;top:90px;width:auto;max-width:none}}

/* v3.8.13 — dashboards, reporting and parent-linked add-ons */
.report-dashboard{align-items:start}
.report-bars{display:grid;gap:13px;margin-top:14px}.report-bar-row{display:grid;grid-template-columns:minmax(90px,140px) minmax(120px,1fr) auto;gap:12px;align-items:center}.report-bar-row>span{font-size:12px;font-weight:800;color:#475569}.report-bar-row>strong{font-size:12px;color:#0f172a;white-space:nowrap}.report-bar-track{height:10px;border-radius:999px;background:#e8eef5;overflow:hidden}.report-bar-fill{height:100%;min-width:2px;border-radius:inherit;background:#64748b}.report-table-note{margin:8px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
.quick-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px}.quick-tool{display:flex;flex-direction:column;gap:4px;padding:14px 15px;border:1px solid var(--line);border-radius:14px;background:#f8fafc;color:var(--ink);text-decoration:none;transition:.15s ease}.quick-tool:hover{background:#fff;border-color:#94a3b8;transform:translateY(-1px)}.quick-tool strong{font-size:13px}.quick-tool small{font-size:11px;color:var(--muted);line-height:1.4}
.attention-summary{display:grid;gap:9px}.attention-summary>a,.attention-summary>div{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;color:var(--ink);text-decoration:none}.attention-summary span{min-width:0}.attention-summary strong,.attention-summary small{display:block}.attention-summary small{margin-top:2px;color:var(--muted);font-size:11px}.attention-summary b{font-size:18px;white-space:nowrap}
.service-summary-list{display:grid;gap:9px}.service-summary-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-decoration:none}.service-summary-row:hover{border-color:#94a3b8;background:#f8fafc}.service-summary-row>div:first-child{min-width:0}.service-summary-row>div:first-child>strong,.service-summary-row>div:first-child>small{display:block}.service-summary-row small{color:var(--muted);font-size:11px;margin-top:3px}.service-summary-row>div:last-child{text-align:right;display:grid;justify-items:end;gap:4px}.addon-inline{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.addon-inline em{font-style:normal;font-size:10px;font-weight:750;color:#475569;padding:4px 7px;border-radius:999px;background:#eef2f7}
.activity-list{display:grid;gap:4px}.activity-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 4px;border-bottom:1px solid #edf2f7}.activity-row:last-child{border-bottom:0}.activity-row>div strong,.activity-row>div small{display:block}.activity-row>div small{margin-top:3px;color:var(--muted);font-size:11px}.activity-row>time{font-size:10px;color:var(--muted);white-space:nowrap}.activity-dot{width:8px;height:8px;border-radius:50%;background:#64748b;margin-top:5px}
.addon-service-list{display:grid;gap:10px}.addon-service-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid #dbe4ef;border-radius:14px;background:#f8fafc}.addon-service-row>div:first-child{min-width:0}.addon-service-row strong,.addon-service-row small{display:block}.addon-service-row small{margin-top:3px;color:var(--muted);font-size:11px;line-height:1.4}.addon-service-row>div:last-child{text-align:right}.addon-service-row .actions{justify-content:flex-end;margin-top:7px}
.addon-purchase-group{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.addon-purchase-group:first-child{margin-top:0;padding-top:0;border-top:0}.addon-purchase-group>h3{margin:0 0 4px}.addon-purchase-group>p{margin:0 0 12px;color:var(--muted);font-size:12px}.addon-purchase-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:11px}.addon-purchase-card{display:flex;flex-direction:column;gap:11px;padding:15px;border:1px solid #dbe4ef;border-radius:15px;background:#fff}.addon-purchase-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.addon-purchase-card header>div{min-width:0}.addon-purchase-card h4{margin:0;font-size:14px}.addon-purchase-card p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.addon-price{text-align:right;white-space:nowrap}.addon-price strong,.addon-price small{display:block}.addon-price strong{font-size:15px}.addon-price small{color:var(--muted);font-size:10px}.addon-purchase-card .prorata-note{padding:9px 10px;border-radius:10px;background:#f1f5f9;color:#475569;font-size:11px;line-height:1.45}.addon-purchase-card form{margin-top:auto}.addon-purchase-card .btn{width:100%;justify-content:center}
.compact-check{display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;gap:9px!important;align-items:start!important}.compact-check input{width:16px;height:16px;margin-top:2px;accent-color:#334155}.compact-check span{font-size:11px!important;font-weight:650!important;color:#475569!important;line-height:1.45}.service-addons-compact{display:grid;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed #cbd5e1}.service-addons-compact>div{display:flex;justify-content:space-between;gap:12px;font-size:11px}.service-addons-compact span{color:#475569}.service-addons-compact strong{white-space:nowrap}.service-addons.card{display:block;width:100%;min-width:0;overflow:hidden}.service-addons.card>.section-head{display:flex}.service-addons .addon-service-list{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%;min-width:0}.service-addons .addon-service-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(180px,auto)!important;width:100%;min-width:0;align-items:start!important;padding:16px 18px}.service-addons .addon-service-row>div{display:block!important;min-width:0}.service-addons .addon-service-row>div:last-child{display:flex!important;justify-content:flex-end!important;align-items:flex-start;gap:6px;flex-wrap:wrap;text-align:right}.service-addons .addon-service-row details{max-width:760px}.service-addons .admin-addon-panel{width:min(100%,900px);max-width:100%;overflow:hidden}.addon-parent-notice{padding:13px 15px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:13px;color:#1e3a5f;font-size:12px;line-height:1.5}
@media(max-width:760px){.report-bar-row{grid-template-columns:1fr auto}.report-bar-track{grid-column:1/-1;grid-row:2}.service-summary-row,.addon-service-row{grid-template-columns:1fr}.service-summary-row>div:last-child,.addon-service-row>div:last-child{text-align:left;justify-items:start}.addon-service-row .actions{justify-content:flex-start}.addon-purchase-grid{grid-template-columns:1fr}}
.report-bar-row>div{height:10px;border-radius:999px;background:#e8eef5;overflow:hidden}.report-bar-row>div>i{display:block;height:100%;min-width:2px;border-radius:inherit;background:#64748b}


/* v3.8.14 — staff-managed add-ons */
.admin-addon-manager{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}.admin-addon-manager>summary{list-style:none;width:max-content}.admin-addon-manager>summary::-webkit-details-marker{display:none}.admin-addon-panel{display:grid;gap:13px;margin-top:13px;padding:16px;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc}.admin-addon-panel>.notice{margin:0}.admin-addon-panel label>small{display:block;margin-top:4px;color:var(--muted);line-height:1.4}.admin-addon-panel .form-grid{margin:0}.admin-addon-panel button.btn{justify-self:start}

/* v3.8.15 integrations, promotions and service discounts */
.integration-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.integration-card{scroll-margin-top:90px}.integration-test{margin:0 0 18px;padding:12px 14px;border-radius:12px;background:#f8fafc;border:1px solid #dbe4ee;display:grid;gap:3px}.integration-test.ok{background:#f0fdf4;border-color:#bbf7d0}.integration-test.warn{background:#fff7ed;border-color:#fed7aa}.integration-test span,.integration-test small{color:#64748b}.service-discounts .addon-service-row{align-items:center}.metric-grid+.card{margin-top:18px}
@media(max-width:800px){.integration-hero{display:block}.integration-hero .actions{margin-top:14px}}


/* v3.8.17 invoice document viewer */
.invoice-document-hero .hero-actions{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}
.invoice-document{padding:0!important;overflow:hidden}
.invoice-document-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:30px;padding:28px 30px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.invoice-document-head h3{margin:4px 0 5px;font-size:24px;letter-spacing:-.025em}.invoice-document-head p{margin:0;color:var(--muted)}
.invoice-document-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.invoice-document-meta>div{padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:#fff}
.invoice-document-meta span{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.invoice-document-meta strong{display:block;margin-top:4px;font-size:14px;overflow-wrap:anywhere}
.invoice-items-table{padding:12px 30px 4px;overflow:auto}
.invoice-items-row{display:grid;grid-template-columns:minmax(260px,2.2fr) .45fr .8fr .55fr .9fr;gap:16px;align-items:center;min-width:760px;padding:15px 8px;border-bottom:1px solid var(--line)}
.invoice-items-row>span:nth-child(n+2){text-align:right}.invoice-items-row small{display:block;margin-top:4px;color:var(--muted);font-size:12px}
.invoice-items-header{padding-top:10px;padding-bottom:10px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.invoice-items-empty{padding:28px 8px;color:var(--muted);text-align:center}
.invoice-document-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:30px;padding:24px 30px 30px;background:#fbfdff}
.invoice-notes{color:var(--muted);font-size:13px}.invoice-notes p{margin:0 0 13px}.invoice-notes a{font-weight:700}
.invoice-totals{display:grid;gap:0;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}
.invoice-totals>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 15px;border-bottom:1px solid var(--line)}
.invoice-totals>div:last-child{border-bottom:0}.invoice-totals span{color:var(--muted);font-size:13px}.invoice-totals strong{font-size:15px}
.invoice-totals .grand{background:#f5f8fc}.invoice-totals .grand span,.invoice-totals .grand strong{color:var(--ink);font-weight:800}.invoice-totals .grand strong{font-size:19px}
.invoice-totals .balance{background:#17253b}.invoice-totals .balance span{color:#bfdbfe}.invoice-totals .balance strong{color:#fff;font-size:20px}
.invoice-payment-history{margin-top:6px;border-top:1px solid var(--line);padding-top:16px}.invoice-payment-history h3{margin:0 0 8px}
.invoice-payment-history>div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.invoice-payment-history>div:last-child{border-bottom:0}.invoice-payment-history small{color:var(--muted);white-space:nowrap}
.invoice-fact-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-secondary-actions{margin-top:18px}.invoice-service-link{margin-top:10px!important}
@media(max-width:900px){.invoice-document-head,.invoice-document-bottom{grid-template-columns:1fr}.invoice-document-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.invoice-document-head,.invoice-document-bottom{padding:20px}.invoice-items-table{padding-left:20px;padding-right:20px}.invoice-document-meta,.invoice-fact-grid.compact{grid-template-columns:1fr}.invoice-payment-history>div{align-items:flex-start;flex-direction:column;gap:3px}.invoice-payment-history small{white-space:normal}}
@media print{
  .sidebar,.app-topbar,.hero-actions,.reminder-control-card,.invoice-secondary-actions,.customer-sidebar,.topbar{display:none!important}
  .app,.main,.content,.main-content{margin:0!important;padding:0!important;width:100%!important;max-width:none!important}
  body{background:#fff!important}
  .invoice-detail-hero{box-shadow:none!important;border:0!important;padding:0 0 18px!important}
  .invoice-balance-panel{background:#fff!important;color:#000!important;border:1px solid #ddd!important}
  .invoice-balance-panel span,.invoice-balance-panel small,.invoice-balance-panel strong{color:#000!important}
  .invoice-document{box-shadow:none!important;border:1px solid #ddd!important}
  .invoice-detail-grid{page-break-before:auto}
}

/* v3.8.18 top navigation redesign */
.admin-top-header{position:sticky;top:0;z-index:90;background:#0f172a;color:#fff;border-bottom:1px solid #1e293b;box-shadow:0 6px 18px rgba(15,23,42,.16)}
.admin-top-inner{height:68px;display:flex;align-items:center;gap:18px;max-width:100%;padding:0 22px}.admin-top-brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:#fff;min-width:max-content}.admin-top-brand img{height:34px;width:34px;object-fit:contain;background:#fff;border-radius:9px;padding:3px}.admin-top-brand span{display:flex;flex-direction:column;line-height:1}.admin-top-brand strong{font-size:13px}.admin-top-brand small{font-size:8px;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin-top:4px}
.admin-top-nav{display:flex;align-items:center;gap:2px;flex:1;min-width:0}.admin-top-nav>a,.admin-nav-menu>summary{display:inline-flex;align-items:center;list-style:none;padding:9px 9px;border-radius:8px;color:#cbd5e1;text-decoration:none;font-size:10px;font-weight:750;cursor:pointer;white-space:nowrap}.admin-nav-menu>summary::-webkit-details-marker,.admin-create>summary::-webkit-details-marker,.admin-account-menu>summary::-webkit-details-marker{display:none}.admin-top-nav>a:hover,.admin-nav-menu>summary:hover,.admin-top-nav>a.active,.admin-nav-menu[open]>summary{background:#1e293b;color:#fff}.admin-nav-menu{position:relative}.admin-nav-menu>div{position:absolute;top:42px;left:0;min-width:220px;padding:7px;background:#fff;border:1px solid #dbe4ef;border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.25);display:grid;gap:2px}.admin-nav-menu a{padding:9px 10px;text-decoration:none;color:#334155;border-radius:8px;font-size:11px}.admin-nav-menu a:hover,.admin-nav-menu a.active{background:#f1f5f9;color:#0f172a}
.admin-top-tools{display:flex;align-items:center;gap:7px;min-width:max-content}.admin-search{display:flex;align-items:center;height:34px;background:#fff;border-radius:9px;overflow:hidden}.admin-search input{width:150px;border:0;outline:0;padding:0 10px;font-size:10px}.admin-search button{height:100%;border:0;border-left:1px solid #e2e8f0;background:#f8fafc;color:#334155;font-size:9px;font-weight:800;padding:0 10px}.admin-create{position:relative}.admin-create>summary{padding:9px 11px;border-radius:9px;background:#334155;color:#fff;font-size:10px;font-weight:800;cursor:pointer}.admin-create>div{position:absolute;right:0;top:42px;width:180px;padding:7px;background:#fff;border:1px solid #dbe4ef;border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.24);display:grid}.admin-create a{padding:8px 9px;border-radius:7px;text-decoration:none;color:#334155;font-size:10px;font-weight:700}.admin-create a:hover{background:#f1f5f9}.admin-account-menu{position:relative}.admin-account-menu>summary{display:flex;align-items:center;gap:7px;cursor:pointer;padding:4px 6px;border-radius:9px}.admin-account-menu>summary:hover{background:#1e293b}.admin-account-menu .avatar{width:29px;height:29px}.admin-account-menu>summary>span:last-child{display:flex;flex-direction:column;line-height:1}.admin-account-menu>summary strong{font-size:10px}.admin-account-menu>summary small{font-size:8px;color:#94a3b8;margin-top:3px}.admin-account-menu>div{position:absolute;right:0;top:43px;width:200px;padding:7px;background:#fff;border:1px solid #dbe4ef;border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.24);display:grid}.admin-account-menu a{padding:9px;border-radius:7px;text-decoration:none;color:#334155;font-size:10px;font-weight:700}.admin-account-menu a:hover{background:#f1f5f9}
.admin-client-context{position:sticky;top:68px;z-index:70;background:#fff;border-bottom:1px solid #dbe4ef}.admin-client-context-inner{display:flex;align-items:center;gap:16px;padding:0 22px;min-height:46px;overflow:hidden}.admin-client-label{display:flex;align-items:center;gap:8px;min-width:max-content;padding-right:14px;border-right:1px solid #e2e8f0}.admin-client-label span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#e2e8f0;color:#334155;font-size:8px;font-weight:900}.admin-client-label strong{font-size:10px}.admin-client-context nav{display:flex;align-items:center;overflow-x:auto;scrollbar-width:none}.admin-client-context nav::-webkit-scrollbar{display:none}.admin-client-context nav a{position:relative;display:inline-flex;padding:14px 10px 13px;color:#64748b;text-decoration:none;font-size:9px;font-weight:800;white-space:nowrap}.admin-client-context nav a:hover{color:#0f172a}.admin-client-context nav a.active{color:#0f172a}.admin-client-context nav a.active:after{content:"";position:absolute;left:9px;right:9px;bottom:0;height:3px;background:#334155;border-radius:3px 3px 0 0}
.admin-top-main{max-width:1600px;margin:0 auto;padding:24px 26px 80px}.admin-page-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:16px}.admin-page-heading .eyebrow{margin:0 0 3px}.admin-page-heading h1{margin:0;font-size:28px;letter-spacing:-.035em}
@media(max-width:1280px){.admin-top-nav{overflow-x:auto;scrollbar-width:none}.admin-top-nav::-webkit-scrollbar{display:none}.admin-search{display:none}.admin-top-inner{padding:0 14px}.admin-top-main{padding:20px 18px 60px}}
@media(max-width:820px){.admin-top-brand span{display:none}.admin-account-menu>summary>span:last-child{display:none}.admin-top-nav{gap:0}.admin-top-nav>a,.admin-nav-menu>summary{padding:8px 7px;font-size:9px}.admin-client-context-inner{padding:0 12px}.admin-client-label strong{display:none}.admin-top-main{padding:18px 12px 50px}}
.admin-active-timer{display:grid;grid-template-columns:8px auto;grid-template-rows:auto auto;column-gap:7px;align-items:center;text-decoration:none;color:#fff;padding:5px 8px;border:1px solid #334155;border-radius:9px;background:#172033;max-width:180px}.admin-active-timer>span{grid-row:1/3;width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.13)}.admin-active-timer strong{font-size:9px;line-height:1.1}.admin-active-timer small{font-size:7px;line-height:1.1;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-active-timer:hover{background:#1e293b}
@media(max-width:1100px){.admin-active-timer small{display:none}.admin-active-timer{grid-template-rows:auto}}

/* v3.8.25: interactive dashboard cards and hosting/domain workspace */
a.metric[href],a.resource-card[href],a.service-summary-row[href],a.hosting-account-row[href],a.domain-manager-row[href]{position:relative;z-index:2;cursor:pointer;pointer-events:auto;text-decoration:none}
a.metric[href]:focus-visible,a.resource-card[href]:focus-visible,a.service-summary-row[href]:focus-visible,a.hosting-account-row[href]:focus-visible,a.domain-manager-row[href]:focus-visible{outline:3px solid rgba(37,99,235,.3);outline-offset:3px}
.hosting-account-list,.domain-manager-list{display:grid;gap:10px}.hosting-account-row,.domain-manager-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:15px 16px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);color:var(--text);transition:.15s ease}.hosting-account-row:hover,.domain-manager-row:hover{background:#fff;border-color:var(--line-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.hosting-account-row strong,.hosting-account-row small,.domain-manager-row strong,.domain-manager-row small{display:block}.hosting-account-row small,.domain-manager-row small{margin-top:4px;color:var(--muted)}.hosting-account-row>div:last-child,.domain-manager-row>div:last-child{text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.hosting-tabs{margin-bottom:18px}.domain-control-actions{display:flex;gap:9px;flex-wrap:wrap}.dns-editor{display:grid;gap:9px}.dns-row{display:grid;grid-template-columns:minmax(120px,.75fr) minmax(100px,.45fr) minmax(220px,1.5fr) 90px auto;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.input-suffix{display:flex;align-items:stretch}.input-suffix input{border-radius:12px 0 0 12px}.input-suffix span{display:flex;align-items:center;padding:0 12px;border:1px solid var(--line-strong);border-left:0;border-radius:0 12px 12px 0;background:var(--surface-2);color:var(--muted);white-space:nowrap}.compact-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hosting-hero .hero-card{min-width:0}
@media(max-width:1050px){.service-addons .addon-service-row{grid-template-columns:1fr!important}.service-addons .addon-service-row>div:last-child{justify-content:flex-start!important;text-align:left}.dns-row{grid-template-columns:repeat(2,minmax(0,1fr))}.dns-row .dns-remove{justify-self:start}}
@media(max-width:760px){.hosting-account-row,.domain-manager-row{grid-template-columns:1fr}.hosting-account-row>div:last-child,.domain-manager-row>div:last-child{justify-content:flex-start;text-align:left}.dns-row,.compact-feature-grid{grid-template-columns:1fr}.service-addons.card{overflow:visible}}


/* v3.9.0 — professional density, unified mobile staff workspace */
.professional-ui .section-head p.muted,.professional-ui .page-hero>div>p:not(.eyebrow),.professional-ui .page-hero .eyebrow,.professional-ui .commerce-hero .eyebrow,.professional-ui .page-heading .eyebrow{display:none}
.professional-ui .section-head{align-items:center}.professional-ui .section-head h2{margin-bottom:0}
.professional-ui .card{box-shadow:0 8px 24px rgba(15,23,42,.045)}
.professional-ui .notice:not(.warn):not(.danger):not(.error){background:#f8fafc;border-color:#e2e8f0;color:#334155}
.catalogue-summary{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 20px}.catalogue-summary span{border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:12px;color:var(--muted);background:#fff}.catalogue-summary strong{color:var(--ink)}.catalogue-summary .attention{border-color:#fed7aa;background:#fff7ed}
.catalogue-groups{display:grid;gap:18px}.catalogue-group{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.catalogue-group>header{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:#f8fafc;border-bottom:1px solid var(--line)}.catalogue-group>header h3{margin:0;font-size:15px}.catalogue-group>header span{font-size:11px;font-weight:800;color:var(--muted)}.catalogue-list{display:grid}.catalogue-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 16px;border-bottom:1px solid #edf2f7;color:var(--ink);text-decoration:none}.catalogue-item:last-child{border-bottom:0}.catalogue-item:hover{background:#fbfdff}.catalogue-item strong,.catalogue-item small{display:block}.catalogue-item small{margin-top:4px;color:var(--muted)}.catalogue-item-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){.admin-top-header{position:sticky;top:0;z-index:100}.admin-top-inner{height:auto;min-height:64px;padding:8px 12px;gap:8px;flex-wrap:wrap}.admin-top-brand span{display:none}.admin-top-nav{order:3;width:100%;overflow-x:auto;display:flex;scrollbar-width:none}.admin-top-nav::-webkit-scrollbar{display:none}.admin-top-nav>a,.admin-nav-menu>summary{white-space:nowrap}.admin-search{display:none}.admin-create>summary{padding:9px 10px}.admin-account-menu>summary>span:last-child{display:none}.admin-top-main{padding:16px 12px 70px}.admin-client-context{top:108px}.admin-client-context-inner{padding:0 12px}.admin-client-context nav{overflow-x:auto}.section-head{align-items:flex-start;gap:12px}.section-head .actions{width:100%}.section-head .actions .btn,.section-head .actions form{flex:1}.section-head .actions form .btn{width:100%}.form-grid{grid-template-columns:1fr!important}.form-grid .span-2,.form-grid [style*="grid-column"]{grid-column:auto!important}.data-table,.table{overflow-x:auto}.catalogue-item{grid-template-columns:1fr}.catalogue-item-meta{justify-content:flex-start}.metric-grid,.metric-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.admin-top-tools{margin-left:auto}.admin-top-nav{gap:2px}.admin-top-nav>a,.admin-nav-menu>summary{font-size:11px;padding:8px}.admin-top-main{padding:12px 10px 64px}.card{border-radius:14px;padding:14px}.metric-grid,.metric-grid.compact{grid-template-columns:1fr 1fr}.actions{gap:6px}.btn{min-height:42px}.catalogue-group{border-radius:12px}}
