:root{
  --bg:#f6fdff;
  --ink:#1f2f38;
  --muted:#667982;
  --brand:#00cccc;
  --brand-dark:#0f4c81;
  --sun:#ffd166;
  --mint:#a7f3d0;
  --pink:#ff9ecd;
  --line:#dceff3;
  --card:#fff;
  --danger:#a82035;
  --success:#1f7137;
  --shadow:0 18px 44px rgba(15,76,129,.14);
}

*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink)}
body{background:radial-gradient(circle at 10% 0%,rgba(0,204,204,.20),transparent 31%),radial-gradient(circle at 92% 8%,rgba(255,209,102,.26),transparent 28%),linear-gradient(180deg,#f3ffff,#fff 50%,#f7fbfc)}
a{color:inherit;text-decoration:none}
button,input{font:inherit}

.auth-page{display:grid;place-items:center;padding:22px}
.auth-shell{width:min(100%,480px)}
.setup-shell{width:min(100%,850px)}
.auth-card{background:rgba(255,255,255,.96);border:1px solid rgba(0,204,204,.20);border-radius:28px;box-shadow:var(--shadow);padding:30px;overflow:hidden;position:relative}
.auth-card:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-70px;top:-80px;background:rgba(255,158,205,.15);pointer-events:none}
.auth-card.compact{max-width:450px;margin:auto}
.brand-mark{width:64px;height:64px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;font-size:31px;font-weight:850;box-shadow:0 12px 24px rgba(0,204,204,.23)}
.eyebrow{margin-top:20px;color:var(--brand-dark);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.eyebrow.light{color:rgba(255,255,255,.78);margin-top:0}
h1{font-size:clamp(30px,6vw,45px);line-height:1.05;letter-spacing:-1px;margin:8px 0 10px}
h2{font-size:21px;margin:0 0 13px}.lead{margin:0 0 22px;color:var(--muted);line-height:1.6}
form{display:grid;gap:16px;position:relative;z-index:1}
label{display:grid;gap:7px;font-size:13px;font-weight:750;color:#334d57}
input{width:100%;border:1px solid #cee2e7;border-radius:14px;padding:13px 14px;background:#fbfeff;outline:none;color:var(--ink)}
input:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(0,204,204,.12)}
.check-row{display:flex;align-items:flex-start;gap:10px;font-weight:600;line-height:1.4}.check-row input{width:19px;height:19px;margin-top:1px;flex:0 0 auto}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:15px;padding:13px 18px;background:linear-gradient(135deg,var(--brand-dark),#086c7c);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 12px 25px rgba(15,76,129,.18)}
.button.full{width:100%}.button:hover{transform:translateY(-1px)}
.small-note,.field-help{font-size:12px;color:var(--muted);line-height:1.55;margin:15px 0 0}
.alert{border-radius:15px;padding:13px 15px;margin:0 0 18px;font-size:13px;line-height:1.55}.alert.error{background:#fff0f2;color:#7f1c2e;border:1px solid #f4c7cf}.alert.success{background:#edf9f0;color:var(--success);border:1px solid #c9e9d0}.alert ul{margin:7px 0 0;padding-left:19px}
.form-section{border:1px solid var(--line);border-radius:20px;padding:18px;background:#fbfeff}.form-section h2{color:var(--brand-dark)}
.grid{display:grid;gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}

.app-page{min-height:100vh}.page-wrap{width:min(1120px,100%);margin:0 auto;padding:0 18px}.topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.topbar-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand-inline{display:flex;align-items:center;gap:11px}.brand-inline span:last-child{display:grid}.brand-inline small{color:var(--muted);font-size:11px;margin-top:2px}.mini-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-dark));font-weight:850;font-size:21px}.logout-link{padding:9px 13px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--brand-dark);font-weight:750;font-size:13px}.dashboard{padding-top:25px;padding-bottom:35px}.hero-panel{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;padding:28px;border-radius:29px;color:#fff;background:radial-gradient(circle at 90% 10%,rgba(255,209,102,.42),transparent 28%),linear-gradient(145deg,#123d68,#0d6978 58%,#00aaa5);box-shadow:var(--shadow)}.hero-panel h1{margin-bottom:10px}.hero-panel p{max-width:720px;color:rgba(255,255,255,.84);line-height:1.6;margin:0}.secure-badge{white-space:nowrap;padding:10px 13px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.13);font-size:12px;font-weight:800}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.stat-card{padding:19px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 10px 24px rgba(15,76,129,.08);display:grid;gap:5px}.stat-icon{font-size:25px}.stat-card strong{font-size:27px;color:var(--brand-dark)}.stat-card span:last-child{font-size:12px;color:var(--muted);font-weight:650}.content-card{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 12px 28px rgba(15,76,129,.08)}.content-card .eyebrow{margin-top:0}.content-card h2{margin:6px 0}.content-card p{margin:0;color:var(--muted);line-height:1.6}.content-icon{width:65px;height:65px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#fff4d1,#fff);font-size:29px;flex:0 0 auto}

@media(max-width:760px){.auth-card{padding:23px;border-radius:24px}.grid.two{grid-template-columns:1fr}.page-wrap{padding-left:14px;padding-right:14px}.hero-panel{align-items:flex-start;flex-direction:column;padding:22px;border-radius:25px}.secure-badge{white-space:normal}.stats-grid{grid-template-columns:1fr 1fr}.content-card{align-items:flex-start}.topbar-inner{min-height:66px}.brand-inline small{display:none}}
@media(max-width:420px){.stats-grid{grid-template-columns:1fr}.content-card{flex-direction:column}.logout-link{font-size:12px;padding:8px 10px}}

/* ===== Client profile module ===== */
button,input,select,textarea{font:inherit}
select,textarea{width:100%;border:1px solid #cee2e7;border-radius:14px;padding:13px 14px;background:#fbfeff;outline:none;color:var(--ink)}
select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(0,204,204,.12)}
textarea{resize:vertical;min-height:120px}
[hidden]{display:none!important}

.app-nav{display:flex;align-items:center;gap:5px;margin-left:auto}
.app-nav a{padding:9px 12px;border-radius:12px;color:#58707a;font-size:13px;font-weight:750}
.app-nav a:hover,.app-nav a.active{background:#ecfbfc;color:var(--brand-dark)}
.topbar-inner>.logout-link{margin-left:5px}
.hero-actions-inline{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.button-light{background:#fff;color:var(--brand-dark);box-shadow:0 12px 24px rgba(0,0,0,.13)}
.secondary-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--brand-dark);font-size:13px;font-weight:800;cursor:pointer}
.text-link{color:var(--brand-dark);font-weight:800;font-size:13px}
.content-grow{flex:1}
.update-list{font-size:14px;margin:0;line-height:1.7}

.app-main{padding-top:26px;padding-bottom:44px}
.narrow-main{width:min(900px,100%)}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}
.page-heading .eyebrow{margin-top:0}
.page-heading h1{font-size:clamp(30px,5vw,44px);margin:7px 0 7px}
.page-heading p{margin:0;color:var(--muted);line-height:1.55}

.filter-card{display:grid;grid-template-columns:minmax(240px,1.7fr) repeat(3,minmax(135px,.75fr)) auto;gap:12px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:0 10px 25px rgba(15,76,129,.07)}
.filter-card label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#657c85}
.filter-card input,.filter-card select{margin-top:1px;text-transform:none;letter-spacing:0}
.filter-card .button{min-height:47px}
.result-summary{margin:15px 2px;color:var(--muted);font-size:13px}.result-summary strong{color:var(--brand-dark)}

.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.client-card{display:block;padding:18px;border:1px solid var(--line);border-radius:23px;background:rgba(255,255,255,.96);box-shadow:0 10px 26px rgba(15,76,129,.08);transition:transform .12s ease,box-shadow .18s ease,border-color .18s ease;min-width:0}
.client-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(15,76,129,.13);border-color:rgba(0,204,204,.38)}
.client-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.client-card h2{font-size:19px;margin:13px 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-card p{font-size:12px;color:var(--muted);margin:5px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-card-foot{display:flex;justify-content:space-between;gap:10px;margin-top:15px;padding-top:12px;border-top:1px solid #edf4f6;font-size:11px;font-weight:800;color:var(--brand-dark)}
.entity-avatar{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#e9ffff,#fff);border:1px solid rgba(0,204,204,.2);font-size:21px;flex:0 0 auto}
.entity-avatar.large{width:50px;height:50px;border-radius:16px;font-size:24px}.entity-avatar.xl{width:76px;height:76px;border-radius:23px;font-size:35px}
.status-pill,.soft-pill,.coming-label{display:inline-flex;align-items:center;width:max-content;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:850;border:1px solid #dcebef;background:#f5fbfc;color:#58707a;text-transform:capitalize}
.status-pill.active{background:#edf9f0;color:#1f7137;border-color:#c9e9d0}.status-pill.prospect{background:#fff8e5;color:#8c6500;border-color:#f0dfa8}.status-pill.inactive{background:#f3f4f5;color:#68737a;border-color:#dfe4e7}
.soft-pill{background:#edfafa;color:var(--brand-dark);border-color:#cdeced}

.empty-state{text-align:center;padding:48px 20px;border:1px dashed #cfe3e7;border-radius:24px;background:rgba(255,255,255,.72)}
.empty-state>span{font-size:42px}.empty-state h2{margin:12px 0 7px}.empty-state p{margin:0;color:var(--muted)}

.panel-card,.detail-card,.form-panel{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 11px 28px rgba(15,76,129,.08)}
.panel-card{padding:20px}.panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:14px}.panel-head .eyebrow{margin-top:0}.panel-head h2{margin:5px 0 0}
.compact-list{display:grid}.compact-row{display:flex;align-items:center;gap:12px;padding:12px 2px;border-top:1px solid #edf4f6}.compact-row:first-child{border-top:0}.compact-main{display:grid;gap:3px;min-width:0;flex:1}.compact-main strong,.compact-main small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-main small{font-size:11px;color:var(--muted)}

.record-form{display:grid;gap:15px}.form-panel{padding:20px}.form-panel-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:17px}.form-panel-head>span{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--brand),#13d6b7);color:#073f47;font-weight:900;flex:0 0 auto}.form-panel-head h2{margin:0 0 4px}.form-panel-head p{margin:0;color:var(--muted);font-size:12px}.full-span{grid-column:1/-1}
.sticky-save{position:sticky;bottom:14px;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 14px 13px 18px;border:1px solid rgba(15,76,129,.13);border-radius:18px;background:rgba(255,255,255,.94);backdrop-filter:blur(15px);box-shadow:0 15px 34px rgba(15,76,129,.18);color:var(--muted);font-size:12px;font-weight:700}

.profile-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px;border-radius:27px;background:radial-gradient(circle at 90% 12%,rgba(255,209,102,.25),transparent 26%),linear-gradient(135deg,#e7ffff,#fff 54%,#fff9df);border:1px solid rgba(0,204,204,.17);box-shadow:0 13px 30px rgba(15,76,129,.09)}
.profile-heading{display:flex;align-items:center;gap:17px;min-width:0}.profile-heading h1{font-size:clamp(29px,5vw,43px);margin:7px 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-heading p{margin:0;color:var(--muted)}.profile-badges{display:flex;gap:7px;flex-wrap:wrap}.profile-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:16px 0}.mini-stat{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:15px;box-shadow:0 9px 22px rgba(15,76,129,.07)}.mini-stat>span{grid-row:1/3;font-size:24px}.mini-stat strong{font-size:16px;color:var(--brand-dark);line-height:1.25}.mini-stat small{color:var(--muted);font-size:10px;font-weight:750}
.detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}.detail-card{padding:20px}.detail-list{display:grid;margin:0}.detail-list>div{display:grid;grid-template-columns:145px 1fr;gap:15px;padding:11px 0;border-top:1px solid #edf4f6}.detail-list>div:first-child{border-top:0}.detail-list dt{font-size:11px;color:var(--muted);font-weight:800}.detail-list dd{margin:0;font-size:13px;font-weight:650;word-break:break-word}.highlight-box{padding:16px;border-radius:18px;background:linear-gradient(135deg,#e9ffff,#fff);border:1px solid rgba(0,204,204,.19);display:grid;gap:5px;margin-bottom:19px}.highlight-box span{font-size:11px;color:var(--muted);font-weight:800}.highlight-box strong{color:var(--brand-dark)}.detail-card h3{font-size:13px;margin:0 0 8px}.notes-copy{font-size:13px;color:#455d67;line-height:1.65;margin:0;white-space:normal}
.future-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:15px}.future-grid article{position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;background:rgba(255,255,255,.85);border:1px dashed #cfe1e5;border-radius:21px;padding:17px}.future-grid article>span:first-child{font-size:25px}.future-grid h3{font-size:15px;margin:0 0 5px}.future-grid p{font-size:11px;color:var(--muted);line-height:1.55;margin:0}.coming-label{grid-column:2;margin-top:5px;background:#fff7df;color:#806100;border-color:#f0dfaa}

@media(max-width:980px){.filter-card{grid-template-columns:1fr 1fr 1fr}.filter-card .search-field{grid-column:1/-1}.filter-card .button{width:100%}.client-grid{grid-template-columns:1fr 1fr}.overview-grid{grid-template-columns:1fr 1fr}.future-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}}
@media(max-width:760px){.app-nav{order:3;width:100%;overflow-x:auto;margin:0;padding-bottom:4px}.topbar-inner{flex-wrap:wrap;padding-top:9px;padding-bottom:7px}.topbar-inner>.logout-link{margin-left:auto}.page-heading{align-items:stretch;flex-direction:column}.page-heading .button,.page-heading .secondary-button{width:100%}.filter-card{grid-template-columns:1fr 1fr}.filter-card .search-field{grid-column:1/-1}.client-grid{grid-template-columns:1fr}.profile-hero{align-items:flex-start;flex-direction:column}.profile-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.profile-heading{align-items:flex-start}.overview-grid{grid-template-columns:1fr 1fr}.detail-list>div{grid-template-columns:1fr;gap:4px}.sticky-save span{display:none}.sticky-save .button{width:100%}}
@media(max-width:480px){.filter-card{grid-template-columns:1fr}.filter-card .search-field{grid-column:auto}.overview-grid{grid-template-columns:1fr}.profile-actions{grid-template-columns:1fr}.profile-heading h1{white-space:normal}.entity-avatar.xl{width:58px;height:58px;border-radius:18px;font-size:27px}.form-panel{padding:16px}.sticky-save{bottom:8px}.mini-stat{padding:13px}}

/* ===== Policies and products module v3 ===== */
.stat-card-link{color:inherit;text-decoration:none;transition:transform .12s ease,box-shadow .18s ease,border-color .18s ease}.stat-card-link:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(15,76,129,.13);border-color:rgba(0,204,204,.35)}
.status-pill.proposed,.product-status.proposed{background:#fff8e5;color:#8c6500;border-color:#f0dfa8}.product-status.active{background:#edf9f0;color:#1f7137;border-color:#c9e9d0}.product-status.inactive{background:#f3f4f5;color:#68737a;border-color:#dfe4e7}
.panel-copy{margin:5px 0 0;color:var(--muted);font-size:12px}.product-panel-head{align-items:center}.product-client-panel{margin-top:15px}
.empty-inline{display:flex;align-items:center;gap:14px;padding:21px;border:1px dashed #cfe3e7;border-radius:19px;background:#fbfeff}.empty-inline>span{font-size:31px}.empty-inline strong{display:block;margin-bottom:3px}.empty-inline p{margin:0;color:var(--muted);font-size:12px}
.client-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.client-product-card{display:flex;flex-direction:column;min-width:0;padding:17px;border:1px solid #dcecef;border-radius:21px;background:linear-gradient(145deg,#fff,#fbfeff);box-shadow:0 8px 21px rgba(15,76,129,.06)}.client-product-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.product-row-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#e9ffff,#fff);border:1px solid rgba(0,204,204,.2);font-size:22px;flex:0 0 auto}.product-category-label{display:block;color:#0f4c81;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.client-product-card h3{margin:6px 0 6px;font-size:18px;line-height:1.25}.provider-line{margin:0 0 13px;color:#4e6670;font-size:12px;line-height:1.5}.product-card-details{display:grid;margin:0}.product-card-details>div{display:grid;grid-template-columns:100px 1fr;gap:10px;padding:8px 0;border-top:1px solid #edf4f6}.product-card-details dt{font-size:10px;color:var(--muted);font-weight:800}.product-card-details dd{margin:0;font-size:12px;font-weight:700;word-break:break-word}.product-card-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:13px}.product-card-foot>div{display:flex;gap:5px;flex-wrap:wrap}
.renewal-chip,.missing-chip,.info-chip{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850;line-height:1.25;border:1px solid #dcebef;background:#f6fbfc;color:#58707a}.renewal-chip.due,.renewal-chip.overdue{background:#fff0f1;color:#a32835;border-color:#f1cbd0}.renewal-chip.soon{background:#fff8e5;color:#8c6500;border-color:#f0dfa8}.renewal-chip.future{background:#edf9f0;color:#1f7137;border-color:#c9e9d0}.renewal-chip.none{background:#f4f6f7;color:#65747a}.missing-chip{background:#fff3e7;color:#9a5200;border-color:#f1d5b5}.info-chip{background:#edfafa;color:#0f4c81;border-color:#cdeced}.two-future{grid-template-columns:repeat(2,minmax(0,1fr))}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.check-card{display:flex!important;align-items:flex-start;gap:11px;padding:14px;border:1px solid #dcecef;border-radius:17px;background:#fbfeff;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important}.check-card input{width:18px;height:18px;margin:2px 0 0;flex:0 0 auto}.check-card span{display:grid;gap:3px}.check-card strong{font-size:13px}.check-card small{color:var(--muted);font-size:10px;line-height:1.45;font-weight:600}
.product-filter{grid-template-columns:minmax(230px,1.6fr) repeat(3,minmax(145px,.78fr)) auto}.product-list{display:grid;gap:12px}.product-row-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:15px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 9px 23px rgba(15,76,129,.07)}.product-row-main{min-width:0}.product-row-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.product-row-title h2{margin:4px 0 4px;font-size:18px}.product-row-main>p{margin:0;color:#526a74;font-size:12px}.product-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:10px}.product-meta>span{font-size:10px;color:#627781;font-weight:700}.product-meta a{color:var(--brand-dark);font-weight:850}.product-row-actions{display:grid;justify-items:end;gap:3px;text-align:right;min-width:125px}.product-row-actions>strong{color:var(--brand-dark);font-size:15px}.product-row-actions>small{color:var(--muted);font-size:9px}.compact-button{padding:8px 12px;margin-top:6px}
.renewal-list{display:grid}.renewal-row{display:flex;align-items:center;gap:12px;padding:12px 2px;border-top:1px solid #edf4f6}.renewal-row:first-child{border-top:0}.renewal-date-block{display:grid;justify-items:end;gap:4px;margin-left:auto}.renewal-date-block>strong{font-size:11px}.renewal-date-block>small{font-size:8px}

@media(max-width:980px){.product-filter{grid-template-columns:1fr 1fr 1fr}.product-filter .search-field{grid-column:1/-1}.client-product-grid{grid-template-columns:1fr}.product-row-card{grid-template-columns:auto minmax(0,1fr)}.product-row-actions{grid-column:2;display:flex;align-items:center;justify-content:flex-start;gap:8px;text-align:left}.product-row-actions .compact-button{margin:0 0 0 auto}.two-future{grid-template-columns:1fr}}
@media(max-width:760px){.product-filter{grid-template-columns:1fr 1fr}.product-filter .search-field{grid-column:1/-1}.check-grid{grid-template-columns:1fr}.product-panel-head{align-items:stretch;flex-direction:column}.product-panel-head .button{width:100%}.product-row-card{grid-template-columns:auto minmax(0,1fr);align-items:start}.product-row-title{display:grid}.product-row-actions{grid-column:1/-1;padding-top:10px;border-top:1px solid #edf4f6}.renewal-row{align-items:flex-start}.renewal-date-block{min-width:110px}}
@media(max-width:480px){.product-filter{grid-template-columns:1fr}.product-filter .search-field{grid-column:auto}.product-row-card{grid-template-columns:1fr}.product-row-icon{width:40px;height:40px}.product-row-main,.product-row-actions{grid-column:1}.product-row-actions{justify-content:flex-start;flex-wrap:wrap}.product-row-actions .compact-button{margin-left:auto}.product-card-details>div{grid-template-columns:1fr;gap:3px}.product-card-foot{align-items:flex-start;flex-direction:column}.renewal-row{display:grid;grid-template-columns:auto 1fr}.renewal-date-block{grid-column:2;justify-items:start;margin:0}}

/* ===== Secure documents module v4 ===== */
.document-panel{margin-top:15px}.document-panel-head{align-items:center}.document-list{display:grid;gap:11px}.document-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px;border:1px solid #dcecef;border-radius:19px;background:#fff}.document-row.archived{background:#fafcfd;opacity:.83}.document-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#fff7df,#fff);border:1px solid #f0e1b2;font-size:22px}.document-main{min-width:0}.document-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.document-title-line h3{margin:4px 0 4px;font-size:15px;line-height:1.3}.document-state{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850;border:1px solid}.document-state.current{background:#edf9f0;color:#1f7137;border-color:#c9e9d0}.document-state.archived{background:#f1f3f4;color:#66747a;border-color:#dfe4e7}.document-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:#657982;font-size:9px;font-weight:700}.document-notes{margin:8px 0 0;color:#4d646d;font-size:11px;line-height:1.5}.document-actions{display:grid;justify-items:end;gap:8px}.product-card-actions{display:flex;align-items:center;gap:11px;flex-wrap:wrap;justify-content:flex-end}.single-future{grid-template-columns:1fr}.upload-drop{padding:17px;border:1px dashed #9ddfe2;border-radius:18px;background:linear-gradient(135deg,#efffff,#fff);margin-bottom:16px}.upload-drop input[type=file]{padding:10px;background:#fff}.upload-drop>span{font-size:11px;color:var(--muted);font-weight:650}.product-edit-link{margin-top:7px}.mini-stat small{line-height:1.3}

@media(max-width:760px){.document-panel-head{align-items:stretch;flex-direction:column}.document-panel-head .button{width:100%}.document-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.document-actions{grid-column:1/-1;display:flex;justify-content:flex-start;align-items:center;border-top:1px solid #edf4f6;padding-top:10px}.document-title-line{display:grid}.product-card-actions{justify-content:flex-start}}
@media(max-width:480px){.document-row{grid-template-columns:1fr}.document-icon,.document-main,.document-actions{grid-column:1}.document-actions{flex-wrap:wrap}.document-actions .secondary-button{flex:1}.document-title-line h3{font-size:14px}}

/* ===== Linked relationships module v5 ===== */
.relationship-panel{margin-top:15px}.relationship-panel-head{align-items:center}.relationship-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.relationship-card{display:flex;flex-direction:column;min-width:0;padding:17px;border:1px solid #dcecef;border-radius:21px;background:linear-gradient(145deg,#fff,#fbfeff);box-shadow:0 8px 21px rgba(15,76,129,.06)}.relationship-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.relationship-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#f1ffff,#fff7df);border:1px solid rgba(0,204,204,.2);font-size:23px}.relationship-card h3{margin:6px 0 5px;font-size:18px;line-height:1.25}.relationship-card>p{margin:0;color:#536b75;font-size:11px;line-height:1.55}.relationship-note{margin-top:12px;padding:10px 11px;border-radius:13px;background:#f5fbfc;border:1px solid #e2f0f2;color:#49616b;font-size:10px;line-height:1.55}.relationship-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px}.relationship-card-actions form{display:block;margin:0}.text-button{appearance:none;border:0;padding:7px 2px;background:transparent;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.danger-text{color:#9f2a3a}.danger-text:hover{text-decoration:underline}.relationship-form-page{width:min(900px,100%)}.relationship-form{padding-bottom:86px}.relationship-form-panel{margin-bottom:14px}.field-grid.one-column{grid-template-columns:1fr}.relationship-save{z-index:15}.empty-relationship-state{display:flex;align-items:center;gap:17px}.empty-relationship-state>span{font-size:38px}.empty-relationship-state>div{flex:1}.empty-relationship-state h2{margin:0 0 5px}.empty-relationship-state p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}

@media(max-width:760px){.relationship-panel-head{align-items:stretch;flex-direction:column}.relationship-panel-head .button{width:100%}.relationship-grid{grid-template-columns:1fr}.empty-relationship-state{align-items:flex-start;flex-wrap:wrap}.empty-relationship-state .button{width:100%}.relationship-card-actions{align-items:flex-start;flex-direction:column}.relationship-card-actions .secondary-button{width:100%}.relationship-card-actions form{width:100%;text-align:center}.relationship-card-actions .text-button{width:100%}}

/* ===== Navigation and safe client deletion v5.1 ===== */
.landing-nav-link{border:1px solid #dceff3;background:#fff;color:var(--brand-dark)!important}
.danger-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border:1px solid #efc5cd;border-radius:14px;background:#fff5f6;color:var(--danger);font-size:13px;font-weight:850;cursor:pointer;box-shadow:none}
.danger-button:hover{background:#ffecef;transform:translateY(-1px)}
.danger-button.solid{border-color:var(--danger);background:linear-gradient(135deg,#b3263e,#8d1830);color:#fff;box-shadow:0 12px 24px rgba(168,32,53,.19)}
.delete-page{width:min(780px,100%)}
.delete-card{padding:28px;border:1px solid #f0cbd1;border-radius:28px;background:rgba(255,255,255,.97);box-shadow:var(--shadow)}
.delete-card .eyebrow{margin-top:14px;color:var(--danger)}
.delete-icon{width:66px;height:66px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,#fff0f2,#fff);border:1px solid #f1cbd1;font-size:31px}
.delete-card h1{margin-top:7px}
.delete-lead{margin:0 0 20px;color:var(--muted);line-height:1.6}
.delete-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.delete-summary>div{display:grid;gap:4px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fbfeff;text-align:center}
.delete-summary strong{color:var(--brand-dark);font-size:25px}
.delete-summary span{color:var(--muted);font-size:11px;font-weight:750}
.danger-notice{display:grid;gap:5px;padding:15px 16px;border:1px solid #efc5cd;border-radius:17px;background:#fff4f5;color:#742033;font-size:12px;line-height:1.55}
.danger-notice strong{font-size:13px}
.delete-form{margin-top:18px}
.delete-confirm-row{display:flex;align-items:flex-start;gap:11px;padding:15px;border:1px solid #e2ecef;border-radius:17px;background:#fbfeff;color:var(--ink);line-height:1.55}
.delete-confirm-row input{width:19px;height:19px;margin:2px 0 0;flex:0 0 auto}
.delete-confirm-row span{font-size:12px;font-weight:650}
.delete-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
@media(max-width:760px){.topbar-inner{flex-wrap:wrap;padding-top:9px;padding-bottom:9px}.app-nav{order:3;width:100%;overflow-x:auto;padding-bottom:2px}.app-nav a{white-space:nowrap}.delete-summary{grid-template-columns:1fr}.delete-actions{display:grid;grid-template-columns:1fr}.delete-actions .secondary-button,.delete-actions .danger-button{width:100%}.profile-actions{align-items:stretch}.profile-actions .secondary-button,.profile-actions .button,.profile-actions .danger-button{width:100%}}

/* ===== v6: full product details, commission and improved search ===== */
.product-title-link{color:inherit;text-decoration:none}.product-title-link:hover{color:var(--brand-dark);text-decoration:underline;text-underline-offset:3px}.product-card-details.expanded>div{grid-template-columns:112px 1fr}.success-chip{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850;color:#1f7137;background:#edf9f0;border:1px solid #c9e9d0}.commission-summary{display:inline-flex;padding:5px 8px;border-radius:999px;background:#fff7df;border:1px solid #efdfa9;color:#775b05;font-size:9px;font-weight:850}.commission-field[hidden]{display:none!important}.field-help{display:block;margin-top:5px}
.product-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px;border-radius:27px;background:radial-gradient(circle at 90% 12%,rgba(255,209,102,.28),transparent 28%),linear-gradient(135deg,#e7ffff,#fff 54%,#fff9df);border:1px solid rgba(0,204,204,.17);box-shadow:0 13px 30px rgba(15,76,129,.09)}.product-detail-heading{display:flex;align-items:center;gap:17px;min-width:0}.product-detail-heading h1{font-size:clamp(28px,5vw,42px);margin:7px 0 5px;line-height:1.08}.product-detail-heading p{margin:0;color:var(--muted);line-height:1.5}.product-detail-icon{width:72px;height:72px;display:grid;place-items:center;flex:0 0 72px;border-radius:22px;background:linear-gradient(135deg,#fff,#e9ffff);border:1px solid rgba(0,204,204,.24);font-size:34px}.product-detail-actions{max-width:470px}.product-detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:16px 0}.product-detail-grid{grid-template-columns:1.22fr .78fr}.product-full-list>div{grid-template-columns:210px minmax(0,1fr)}.product-documents-panel{margin-top:15px}
@media(max-width:980px){.product-detail-stats{grid-template-columns:1fr 1fr}.product-detail-grid{grid-template-columns:1fr}.product-detail-hero{align-items:flex-start;flex-direction:column}.product-detail-actions{width:100%;max-width:none}}
@media(max-width:760px){.product-detail-heading{align-items:flex-start}.product-detail-actions{display:grid;grid-template-columns:1fr}.product-detail-actions .button,.product-detail-actions .secondary-button{width:100%}.product-full-list>div{grid-template-columns:1fr;gap:4px}.product-card-details.expanded>div{grid-template-columns:1fr;gap:3px}}
@media(max-width:480px){.product-detail-stats{grid-template-columns:1fr}.product-detail-icon{width:58px;height:58px;flex-basis:58px;border-radius:18px;font-size:27px}.product-detail-heading h1{font-size:29px}.client-product-grid{grid-template-columns:1fr}}

/* ===== v7: monthly commission dashboard ===== */
.commission-panel{margin-top:18px}.commission-panel-head{align-items:flex-start}.commission-panel-head p{max-width:720px;margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.commission-period-badge{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#eefbfb;border:1px solid rgba(0,204,204,.2);color:var(--brand-dark);font-size:10px;font-weight:850;white-space:nowrap}.commission-summary-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:12px;margin-top:15px}.commission-summary-card{display:flex;align-items:center;gap:12px;min-width:0;padding:17px;border:1px solid #dcecef;border-radius:20px;background:linear-gradient(145deg,#fff,#fbfeff)}.commission-summary-card.total{color:#fff;background:radial-gradient(circle at 88% 12%,rgba(255,209,102,.34),transparent 31%),linear-gradient(145deg,#104b77,#087987 58%,#0aa99f);border-color:rgba(15,76,129,.18);box-shadow:0 12px 25px rgba(15,76,129,.14)}.commission-summary-icon{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:15px;background:#efffff;border:1px solid rgba(0,204,204,.17);font-size:22px}.commission-summary-card.total .commission-summary-icon{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.25)}.commission-summary-card div{min-width:0}.commission-summary-card small{display:block;color:var(--muted);font-size:9px;font-weight:800;line-height:1.35}.commission-summary-card strong{display:block;margin-top:4px;color:var(--brand-dark);font-size:22px;line-height:1.1;white-space:nowrap}.commission-summary-card.total small{color:rgba(255,255,255,.78)}.commission-summary-card.total strong{color:#fff}.commission-provider-section{margin-top:18px;padding-top:17px;border-top:1px solid #e2eef1}.commission-subhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.commission-subhead h3{margin:0;font-size:16px}.commission-subhead>span{color:var(--muted);font-size:10px;font-weight:750}.commission-provider-list{display:grid;gap:9px}.commission-provider-row{display:grid;grid-template-columns:minmax(230px,1fr) minmax(390px,.9fr);align-items:center;gap:18px;padding:13px 15px;border:1px solid #deecef;border-radius:17px;background:#fff}.commission-provider-main{display:flex;align-items:center;gap:11px;min-width:0}.commission-provider-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;border-radius:13px;background:linear-gradient(135deg,#efffff,#fff7df);border:1px solid rgba(0,204,204,.17);font-size:19px}.commission-provider-main div{min-width:0}.commission-provider-main strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.commission-provider-main small{display:block;margin-top:3px;color:var(--muted);font-size:9px;font-weight:700}.commission-provider-split{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.commission-provider-split>span{display:grid;gap:2px;padding:8px 10px;border-radius:12px;background:#f6fbfc;border:1px solid #e7f0f2;text-align:right}.commission-provider-split small{color:var(--muted);font-size:8px;font-weight:800}.commission-provider-split strong{color:var(--brand-dark);font-size:11px;white-space:nowrap}.commission-provider-split .provider-total{background:#eefbfb;border-color:rgba(0,204,204,.22)}.commission-provider-split .provider-total strong{font-size:12px}.commission-empty-state{display:flex;align-items:center;gap:13px;padding:16px;border:1px dashed #b9dfe3;border-radius:17px;background:#fbfeff}.commission-empty-state>span{font-size:28px}.commission-empty-state strong{display:block;font-size:13px}.commission-empty-state p{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
@media(max-width:980px){.commission-summary-grid{grid-template-columns:1fr 1fr}.commission-summary-card.total{grid-column:1/-1}.commission-provider-row{grid-template-columns:1fr}.commission-provider-split{text-align:left}.commission-provider-split>span{text-align:left}}
@media(max-width:660px){.commission-panel-head{display:grid}.commission-period-badge{justify-self:start}.commission-summary-grid{grid-template-columns:1fr}.commission-summary-card.total{grid-column:auto}.commission-provider-split{grid-template-columns:1fr}.commission-provider-main strong{white-space:normal}.commission-subhead{align-items:flex-start;flex-direction:column}.commission-summary-card strong{font-size:20px}}

/* ===== v7.3 whole-book portfolio statistics ===== */
.portfolio-panel{overflow:hidden}.portfolio-panel-head{align-items:flex-start}.portfolio-panel-head .secondary-button{white-space:nowrap}.portfolio-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:15px}.portfolio-summary-card{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #dcecef;border-radius:19px;background:linear-gradient(145deg,#fff,#fbfeff);min-width:0}.portfolio-summary-card>span{width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;border-radius:14px;background:#efffff;border:1px solid rgba(0,204,204,.17);font-size:21px}.portfolio-summary-card div{min-width:0}.portfolio-summary-card small{display:block;color:var(--muted);font-size:9px;font-weight:800;line-height:1.35}.portfolio-summary-card strong{display:block;margin-top:4px;color:var(--brand-dark);font-size:21px;line-height:1.12}.portfolio-summary-card.featured{color:#fff;background:radial-gradient(circle at 88% 12%,rgba(255,209,102,.3),transparent 30%),linear-gradient(145deg,#133e67,#087383 56%,#0aa99f);border-color:rgba(15,76,129,.18);box-shadow:0 12px 25px rgba(15,76,129,.13)}.portfolio-summary-card.featured>span{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.24)}.portfolio-summary-card.featured small{color:rgba(255,255,255,.78)}.portfolio-summary-card.featured strong{color:#fff}.portfolio-summary-card.value strong{font-size:18px;white-space:nowrap}.portfolio-extra-values{display:flex;gap:10px;flex-wrap:wrap;margin-top:11px}.portfolio-extra-values>span{display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:13px;background:#fff9e9;border:1px solid rgba(255,209,102,.42)}.portfolio-extra-values small{color:#7c6b37;font-size:9px;font-weight:800}.portfolio-extra-values strong{color:#5e4b12;font-size:11px}.portfolio-category-head{display:flex;justify-content:space-between;gap:12px;margin-top:21px;padding-top:18px;border-top:1px solid #e2eef1}.portfolio-category-head h3,.portfolio-provider-head h3{margin:0;font-size:17px}.portfolio-category-head p,.portfolio-provider-head p{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.portfolio-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:12px}.portfolio-category-card{display:flex;flex-direction:column;min-width:0;padding:15px;border-radius:18px;border:1px solid #dcecef;background:linear-gradient(150deg,#fff,#fbfeff);box-shadow:0 8px 18px rgba(15,76,129,.05);transition:transform .1s ease,border-color .2s ease,box-shadow .2s ease}.portfolio-category-card:hover{transform:translateY(-2px);border-color:rgba(0,204,204,.35);box-shadow:0 13px 25px rgba(15,76,129,.1)}.portfolio-category-card.empty{opacity:.72;background:#fbfdfe}.portfolio-category-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.portfolio-category-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;border-radius:13px;background:linear-gradient(135deg,#efffff,#fff8e8);border:1px solid rgba(0,204,204,.16);font-size:19px}.portfolio-category-count{padding:5px 8px;border-radius:999px;background:#edf8ef;border:1px solid rgba(46,125,50,.18);color:#2e7d32;font-size:8px;font-weight:850;white-space:nowrap}.portfolio-category-card.empty .portfolio-category-count{color:var(--muted);background:#f3f7f8;border-color:#e1ebed}.portfolio-category-card h4{margin:11px 0 10px;color:var(--brand-dark);font-size:13px;line-height:1.3}.portfolio-category-main-value{margin-top:auto;padding:10px;border-radius:13px;background:#f4fbfc;border:1px solid #e4f0f2}.portfolio-category-main-value small{display:block;color:var(--muted);font-size:8px;font-weight:800;line-height:1.35}.portfolio-category-main-value strong{display:block;margin-top:3px;color:var(--brand-dark);font-size:15px;white-space:nowrap}.portfolio-category-meta,.portfolio-category-split{display:flex;justify-content:space-between;gap:8px;margin-top:9px;color:var(--muted);font-size:8px;font-weight:750}.portfolio-category-split{justify-content:flex-start}.portfolio-category-split span{padding:4px 7px;border-radius:999px;background:#f7fafb;border:1px solid #e5eef0}.portfolio-category-secondary{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.portfolio-category-secondary span{padding:4px 7px;border-radius:999px;background:#fff8e6;border:1px solid rgba(255,209,102,.38);color:#6b571e;font-size:7px;font-weight:800}.portfolio-provider-section{margin-top:21px;padding-top:18px;border-top:1px solid #e2eef1}.portfolio-provider-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.portfolio-provider-head>span{color:var(--muted);font-size:9px;font-weight:800}.portfolio-provider-list{display:grid;gap:8px}.portfolio-provider-row{display:grid;grid-template-columns:minmax(240px,1fr) minmax(450px,1.3fr);align-items:center;gap:16px;padding:12px 14px;border:1px solid #deecef;border-radius:16px;background:#fff;transition:border-color .2s ease,transform .1s ease,box-shadow .2s ease}.portfolio-provider-row:hover{transform:translateY(-1px);border-color:rgba(0,204,204,.34);box-shadow:0 10px 22px rgba(15,76,129,.08)}.portfolio-provider-name{display:flex;align-items:center;gap:10px;min-width:0}.portfolio-provider-name>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:12px;background:linear-gradient(135deg,#efffff,#fff7df);border:1px solid rgba(0,204,204,.17);font-size:18px}.portfolio-provider-name div{min-width:0}.portfolio-provider-name strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:12px}.portfolio-provider-name small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;color:var(--muted);font-size:8px;font-weight:700}.portfolio-provider-numbers{display:grid;grid-template-columns:.65fr .65fr 1fr 1.2fr;gap:7px}.portfolio-provider-numbers>span{display:grid;gap:2px;padding:7px 9px;border-radius:11px;background:#f7fbfc;border:1px solid #e6eff1;text-align:right}.portfolio-provider-numbers small{color:var(--muted);font-size:7px;font-weight:800}.portfolio-provider-numbers strong{color:var(--brand-dark);font-size:10px;white-space:nowrap}.portfolio-provider-numbers .provider-monthly-value{background:#eefbfb;border-color:rgba(0,204,204,.2)}.portfolio-provider-numbers .provider-monthly-value strong{font-size:11px}
@media(max-width:1080px){.portfolio-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-provider-row{grid-template-columns:1fr}.portfolio-provider-numbers{text-align:left}.portfolio-provider-numbers>span{text-align:left}}
@media(max-width:680px){.portfolio-panel-head,.portfolio-provider-head{display:grid}.portfolio-panel-head .secondary-button{justify-self:start}.portfolio-summary-grid,.portfolio-category-grid{grid-template-columns:1fr}.portfolio-summary-card.value strong{white-space:normal}.portfolio-provider-numbers{grid-template-columns:1fr 1fr}.portfolio-provider-name strong,.portfolio-provider-name small{white-space:normal}.portfolio-extra-values{display:grid}.portfolio-category-head{display:grid}}
@media(max-width:430px){.portfolio-provider-numbers{grid-template-columns:1fr}.portfolio-summary-card strong{font-size:19px}}

/* ===== v8 compliance foundation ===== */
.compliance-heading{align-items:center}.compliance-overview{margin-top:0}.compliance-filters{display:grid;grid-template-columns:1.2fr .75fr 1.1fr auto;gap:12px;align-items:end;margin:10px 0 18px}.compliance-filters label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#657c85}.compliance-filters input,.compliance-filters select{margin-top:3px;text-transform:none;letter-spacing:0}.transaction-list{display:grid;gap:10px}.transaction-row{display:flex;align-items:flex-start;gap:13px;padding:15px;border:1px solid #deecef;border-radius:18px;background:linear-gradient(145deg,#fff,#fbfeff)}.transaction-icon{width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;border-radius:14px;background:linear-gradient(135deg,#efffff,#fff8e8);border:1px solid rgba(0,204,204,.18);font-size:21px}.transaction-main{min-width:0;flex:1}.transaction-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.transaction-title-line h3{margin:3px 0 4px;font-size:16px}.transaction-title-line h3 a{color:var(--ink)}.transaction-status.draft{background:#f3f4f5;color:#68737a;border-color:#dfe4e7}.transaction-status.in_progress{background:#fff8e5;color:#8c6500;border-color:#f0dfa8}.transaction-status.ready{background:#eafafa;color:#126b70;border-color:#bfe7e8}.transaction-status.completed{background:#edf9f0;color:#1f7137;border-color:#c9e9d0}.transaction-status.cancelled{background:#fff0f0;color:#9b3b3b;border-color:#f0cccc}.transaction-progress{height:7px;margin-top:10px;border-radius:999px;background:#edf3f4;overflow:hidden}.transaction-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f4c81,#00b3b8)}.transaction-progress.large{height:10px;margin:4px 0 16px}.transaction-progress-copy{margin:5px 0 0;color:var(--muted);font-size:10px;font-weight:750}.compact-transaction-list .transaction-row{padding:13px}.compliance-client-panel{margin-top:15px}.transaction-hero{background:radial-gradient(circle at 90% 12%,rgba(0,204,204,.17),transparent 28%),linear-gradient(135deg,#f0ffff,#fff 56%,#f8fbff)}
.compliance-checklist{display:grid;gap:10px}.compliance-item{display:flex;align-items:center;gap:13px;padding:14px;border:1px solid #dfecef;border-radius:17px;background:#fff}.compliance-item.complete{border-color:#c9e9d0;background:#fbfffc}.compliance-item.missing{border-color:#f0d8a3;background:#fffdf6}.compliance-item.recommended{border-style:dashed;background:#fbfdfe}.compliance-state-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:12px;font-weight:950;background:#eef5f7;color:#607782}.compliance-item.complete .compliance-state-icon{background:#e9f8ed;color:#287440}.compliance-item.missing .compliance-state-icon{background:#fff4d8;color:#896300}.compliance-item-main{min-width:0;flex:1}.compliance-item-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.compliance-item-main p{margin:4px 0 0;color:var(--muted);font-size:11px}.compliance-item-main small{display:block;margin-top:5px;color:#7a6a3f;font-size:9px;line-height:1.45}.requirement-badge{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:850}.requirement-badge.required{background:#fff4d8;color:#7a5a00;border:1px solid #efd99d}.requirement-badge.recommended{background:#f1f6f7;color:#687b83;border:1px solid #dfe9eb}.compliance-item-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.existing-document-picker{display:grid;gap:10px}.existing-document-option{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #dfecef;border-radius:16px;background:#fff;cursor:pointer}.existing-document-option:has(input:checked){border-color:rgba(0,179,184,.55);box-shadow:0 0 0 3px rgba(0,179,184,.08);background:#f9ffff}.existing-document-option input{width:auto;margin:0}.existing-document-option>span:last-child{display:grid;gap:4px}.existing-document-option small{color:var(--muted);font-size:10px}.compliance-checklist-panel{margin-top:15px}
@media(max-width:900px){.compliance-filters{grid-template-columns:1fr 1fr}.compliance-filters button{width:100%}.transaction-title-line{align-items:flex-start}.compliance-item{align-items:flex-start}.compliance-item-actions{flex-direction:column;align-items:stretch}.compliance-item-actions .button,.compliance-item-actions .secondary-button{width:100%}}
@media(max-width:620px){.compliance-filters{grid-template-columns:1fr}.transaction-row{align-items:flex-start}.transaction-title-line{display:grid}.transaction-row>.document-actions{display:none}.compliance-item{display:grid;grid-template-columns:auto 1fr}.compliance-item-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.compliance-item-actions>*:only-child{grid-column:1/-1}}

/* v9 compliance document preparation */
.compliance-item.prepared{border-color:#b9dce7;background:#f7fcfe}.compliance-item.prepared .compliance-state-icon{background:#e5f4f9;color:#0c6685}.requirement-badge.prepared{background:#e5f4f9;color:#0c6685;border:1px solid #b9dce7}.requirement-badge.complete{background:#e9f8ed;color:#287440;border:1px solid #c9e9d0}.compliance-item.recommended .compliance-state-icon{background:#f1f6f7;color:#687b83}.document-generator-summary{display:grid;gap:8px;padding:14px 16px;border:1px solid #dfecef;border-radius:16px;background:#fbfdfe}.document-generator-summary strong{font-size:14px}.document-generator-summary span{font-size:10px;color:var(--muted)}.generator-note{padding:12px 14px;border-radius:14px;background:#eef8fb;border:1px solid #cde8f0;color:#315a68;font-size:11px;line-height:1.5}

/* v10 · ROA preparation */
.roa-main{max-width:1380px}
.roa-source-strip{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;background:linear-gradient(135deg,#effcff,#fff9e8);border:1px solid #cfe8ec;border-radius:24px;padding:22px 24px;margin:0 0 24px;box-shadow:0 12px 30px rgba(13,75,103,.06)}
.roa-source-strip>div:first-child{max-width:620px}.roa-source-strip strong{display:block;font-family:Georgia,serif;font-size:20px;color:#0b3657;margin-bottom:5px}.roa-source-strip span{color:#566b78;line-height:1.45}
.roa-source-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.source-missing{display:inline-flex!important;align-items:center;padding:8px 12px;border:1px dashed #d5dde0;border-radius:999px;background:#fff;color:#7a858b!important;font-size:13px}
.required-dot{display:inline-block;margin-left:8px;padding:3px 7px;border-radius:999px;background:#fff0ef;color:#a52b24;font-size:11px;font-weight:800;letter-spacing:.02em;vertical-align:middle}
.roa-compare-table{border:1px solid #d9e8ed;border-radius:18px;overflow:hidden;background:#fff}
.roa-compare-head,.roa-compare-row{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(220px,1fr) minmax(220px,1fr);gap:0}
.roa-compare-head{background:#eaf9fc;color:#0b4566;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.roa-compare-head span,.roa-compare-row>*{padding:12px 14px;border-right:1px solid #d9e8ed}.roa-compare-head span:last-child,.roa-compare-row>*:last-child{border-right:0}
.roa-compare-row{border-top:1px solid #d9e8ed;align-items:center}.roa-compare-row strong{font-size:14px;color:#20333d}.roa-compare-row input,.roa-compare-row textarea{border:0!important;border-radius:0!important;background:transparent!important;min-height:44px;box-shadow:none!important;margin:0!important;width:100%;padding:10px 12px!important}.roa-compare-row textarea{resize:vertical}.roa-compare-row:focus-within{background:#fbfeff}.roa-compare-row.tall{align-items:stretch}
.important-panel{border-color:#f0dfb5;background:linear-gradient(180deg,#fffdf7,#fff)}
.roa-actions>div{display:flex;gap:10px;align-items:center}.roa-actions .secondary-button{border:1px solid #bcdce4;background:#fff;color:#0d5674}
.alert.warning{background:#fff7dd;border-color:#ecd68d;color:#735b10}
@media (max-width:900px){.roa-source-strip{flex-direction:column}.roa-source-links{justify-content:flex-start}.roa-compare-head,.roa-compare-row{grid-template-columns:1fr}.roa-compare-head span,.roa-compare-row>*{border-right:0;border-bottom:1px solid #d9e8ed}.roa-compare-head span:last-child,.roa-compare-row>*:last-child{border-bottom:0}.roa-actions{align-items:flex-start}.roa-actions>div{width:100%;flex-direction:column}.roa-actions button{width:100%}}

/* v11 Policy wording reference library */
.wording-heading { align-items: flex-end; }
.wording-filter-panel { padding: 18px 22px; }
.wording-filter-form { display: grid; grid-template-columns: minmax(260px, 1.6fr) minmax(180px, .9fr) minmax(180px, .9fr) auto; gap: 14px; align-items: end; }
.wording-filter-form.compact-wording-filter { grid-template-columns: minmax(280px, 1fr) auto; }
.wording-filter-actions { display: flex; gap: 8px; align-items: center; padding-bottom: 1px; }
.wording-library-list { display: grid; gap: 12px; }
.wording-library-row { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 18px; border: 1px solid #dcecf0; border-radius: 20px; background: #fff; }
.wording-library-row.recommended-match { border-color: #6fc7d4; box-shadow: 0 10px 28px rgba(10, 115, 139, .10); }
.wording-library-icon { width: 48px; height: 48px; border-radius: 16px; display: grid; place-items: center; background: #eefbfc; font-size: 22px; }
.wording-library-main { min-width: 0; }
.wording-title-line { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.wording-title-line h3 { margin: 4px 0 0; font-size: 19px; line-height: 1.2; }
.wording-notes { margin: 10px 0 0; color: #53656f; line-height: 1.45; }
.wording-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.wording-actions form { margin: 0; }
@media (max-width: 980px) {
    .wording-filter-form, .wording-filter-form.compact-wording-filter { grid-template-columns: 1fr 1fr; }
    .wording-library-row { grid-template-columns: 48px minmax(0, 1fr); }
    .wording-actions { grid-column: 2; justify-content: flex-start; }
}
@media (max-width: 680px) {
    .wording-filter-form, .wording-filter-form.compact-wording-filter { grid-template-columns: 1fr; }
    .wording-library-row { grid-template-columns: 1fr; }
    .wording-library-icon { display: none; }
    .wording-actions { grid-column: auto; }
}

/* Client Hub v12 · AI-assisted document analysis */
.roa-ai-actions{display:flex;align-items:center;justify-content:flex-end;margin-left:auto}.analysis-mini-status{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:12px 0 18px;padding:12px 16px;border-radius:16px;border:1px solid var(--line,#d7e7ec);background:#f5fbfc}.analysis-mini-status.current{border-color:#b9dfca;background:#f0fbf5}.analysis-mini-status.stale{border-color:#efd29a;background:#fff9ec}.analysis-mini-status span{font-size:.9rem;color:#5b6f78}.ai-settings-card{max-width:900px}.ai-settings-card .form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.danger-button{border:1px solid #e7b8b8;background:#fff4f4;color:#9c2f2f;border-radius:14px;padding:12px 18px;font-weight:800;cursor:pointer}.status-pill.complete{background:#eaf8ef;color:#176a3a}.status-pill.warning{background:#fff5dd;color:#805d09}.ai-analysis-main{padding-bottom:70px}.ai-source-card{margin-bottom:18px}.ai-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.ai-source-item{padding:13px;border-radius:14px;border:1px solid #dbe8ed;min-height:82px;display:flex;flex-direction:column;gap:5px}.ai-source-item.present{background:#f4fbf7;border-color:#c4e3d1}.ai-source-item.missing{background:#fbfbfb;color:#6e7c82}.ai-source-item strong{font-size:.92rem}.ai-source-item span{font-size:.8rem;line-height:1.3;overflow-wrap:anywhere}.inline-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.analysis-status{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-radius:16px;margin:0 0 18px;border:1px solid}.analysis-status.current{background:#eefaf3;border-color:#bde0ca}.analysis-status.stale{background:#fff7e7;border-color:#ebce95}.analysis-status span{font-size:.82rem;color:#65767d}.analysis-summary{font-size:1.02rem;line-height:1.6;margin:0}.finding-list{display:grid;gap:12px}.finding-card{display:grid;grid-template-columns:145px 1fr;gap:16px;border:1px solid #dce8ec;border-left-width:5px;border-radius:16px;padding:16px;background:#fff}.finding-card.improvement{border-left-color:#2a8a58}.finding-card.disadvantage{border-left-color:#c54848}.finding-card.material_difference{border-left-color:#d18d21}.finding-card.neutral{border-left-color:#6c8aa0}.finding-card.needs_confirmation{border-left-color:#8965b8}.finding-badge{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:800}.finding-badge span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eef4f6}.finding-category{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:800;color:#607782}.finding-card h3{margin:3px 0 6px;font-size:1.02rem}.finding-card p{margin:0;line-height:1.5}.finding-card small{display:block;margin-top:8px;color:#697b82}.analysis-gap-list{margin:0;padding-left:22px;display:grid;gap:8px}.ai-next-card{display:flex;justify-content:space-between;align-items:center;gap:20px}.ai-next-card h2{margin:3px 0 6px}.ai-next-card p{margin:0;max-width:760px}.ai-next-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.heading-actions{display:flex;gap:10px;flex-wrap:wrap}.content-card{background:#fff;border:1px solid #d9e8ed;border-radius:24px;padding:24px;margin-bottom:18px}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.card-heading h2{margin:3px 0 0}.empty-state{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px dashed #cddfe5;border-radius:16px;color:#5f737b}
@media (max-width:900px){.ai-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finding-card{grid-template-columns:1fr}.ai-next-card,.analysis-status,.analysis-mini-status{align-items:flex-start;flex-direction:column}.ai-next-actions{justify-content:flex-start}}
@media (max-width:560px){.ai-source-grid{grid-template-columns:1fr}.content-card{padding:18px}.roa-ai-actions{width:100%;justify-content:flex-start}}


/* v14: New-policy ROA uses a clean two-column proposed-cover layout. */
.roa-compare-table.new-policy .roa-compare-head,
.roa-compare-table.new-policy .roa-compare-row {
    grid-template-columns: minmax(190px, .9fr) minmax(0, 2.1fr);
}
.roa-ai-actions .inline-action-form { display: inline-flex; margin: 0; }

/* CRM Tasks & Follow-ups v1 */
.attention-panel{margin:18px 0;background:linear-gradient(145deg,#fff,#fbfeff)}
.attention-panel-head{align-items:flex-start}.attention-panel-head p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.attention-summary-grid,.task-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:15px 0 18px}
.attention-summary-card,.task-summary-card{display:flex;align-items:center;gap:12px;padding:14px 15px;border:1px solid var(--line);border-radius:18px;background:#fbfeff;min-width:0;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}
.attention-summary-card:hover,.task-summary-card:hover{transform:translateY(-1px);border-color:#badfe6;box-shadow:0 8px 20px rgba(15,76,129,.08)}
.attention-summary-card>span,.task-summary-card>span{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:#edf8fa;font-size:19px;flex:0 0 38px}
.attention-summary-card div{display:grid;gap:2px}.attention-summary-card strong,.task-summary-card strong{font-size:22px;color:var(--brand-dark)}
.attention-summary-card small,.task-summary-card small{color:var(--muted);font-size:10px;font-weight:800}
.attention-summary-card.overdue,.task-summary-card.overdue{background:#fff8f7;border-color:#f0d2cf}.attention-summary-card.overdue>span,.task-summary-card.overdue>span{background:#fff0ef}
.attention-summary-card.today,.task-summary-card.today{background:#fffdf6;border-color:#eedfb4}.attention-summary-card.today>span,.task-summary-card.today>span{background:#fff4d8}
.task-summary-card{display:grid;grid-template-columns:auto 1fr;column-gap:10px}.task-summary-card strong,.task-summary-card small{grid-column:2}.task-summary-card>span{grid-row:1/3}.task-summary-card.active{box-shadow:0 0 0 3px rgba(0,179,184,.10);border-color:#71c7cf}
.attention-task-list,.client-task-list,.task-list{display:grid;gap:10px}
.attention-task-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto 38px;align-items:center;gap:12px;padding:12px 14px;border:1px solid #deecef;border-radius:18px;background:#fff}
.attention-task-row.task-priority-urgent,.task-row.task-priority-urgent,.client-task-row.task-priority-urgent{border-left:5px solid #ba3e3e}
.attention-task-row.task-priority-high,.task-row.task-priority-high,.client-task-row.task-priority-high{border-left:5px solid #dc8d27}
.attention-task-icon,.task-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#efffff,#fff8e8);border:1px solid rgba(0,204,204,.17);font-size:20px;flex:0 0 auto}
.attention-task-main{min-width:0;display:grid;gap:4px}.attention-task-main>strong{font-size:14px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.attention-task-meta,.task-meta{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;color:var(--muted);font-size:10px}.attention-task-meta a,.task-meta a{color:var(--brand-dark);font-weight:800}
.task-due-chip,.task-priority-chip,.task-status-chip{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850;border:1px solid #dcebed;background:#f5fbfc;color:#5e747c;white-space:nowrap}
.task-due-chip.overdue{background:#fff0ef;border-color:#efc8c4;color:#a43732}.task-due-chip.today{background:#fff4d8;border-color:#ecd79b;color:#7c5b00}.task-due-chip.soon{background:#eef9ff;border-color:#cce5f2;color:#245d79}.task-due-chip.none{background:#f4f5f6;color:#758087}
.task-priority-chip.urgent{background:#fff0ef;border-color:#efc8c4;color:#a43732}.task-priority-chip.high{background:#fff5e7;border-color:#efd3aa;color:#965b16}.task-priority-chip.low{background:#f4f7f8;color:#738087}
.task-status-chip.open{background:#eef9ff;border-color:#cce5f2;color:#245d79}.task-status-chip.waiting{background:#fff8e5;border-color:#f0dfa8;color:#8c6500}.task-status-chip.completed{background:#edf9f0;border-color:#c9e9d0;color:#1f7137}.task-status-chip.cancelled{background:#f3f4f5;border-color:#dfe4e7;color:#68737a}
.task-check-button{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;border:1px solid #bfe2ca;background:#eefaf2;color:#23713d;font-size:17px;font-weight:950;cursor:pointer}.task-check-button:hover{background:#e0f5e7}
.attention-complete-form,.task-row-actions form,.client-task-actions form{display:block;margin:0}.attention-clear-state{display:flex;align-items:center;gap:14px;padding:17px;border:1px dashed #c9dfe3;border-radius:18px;background:#fbfefe}.attention-clear-state>span{font-size:27px}.attention-clear-state strong{display:block}.attention-clear-state p{margin:3px 0 0;color:var(--muted);font-size:11px}
.task-filter-card{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(180px,.7fr) auto auto;gap:12px;align-items:end;padding:16px 18px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 8px 22px rgba(15,76,129,.05);margin-bottom:12px}
.task-filter-card label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#657c85}.task-filter-card input,.task-filter-card select{margin-top:3px;text-transform:none;letter-spacing:0}.task-filter-card .button,.task-filter-card .secondary-button{min-height:47px}
.task-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:flex-start;padding:17px;border:1px solid #deecef;border-radius:20px;background:#fff;box-shadow:0 7px 20px rgba(15,76,129,.05)}
.task-row-main{min-width:0}.task-title-line{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.task-title-line h2{font-size:17px;margin:3px 0 7px}.task-type-label{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#66808a;font-weight:850}.task-row-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.task-notes{margin:9px 0 0;color:#536a73;font-size:11px;line-height:1.5}.task-row-actions{display:flex;flex-direction:column;gap:7px;align-items:stretch}.task-complete-button{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border:1px solid #bfe2ca;border-radius:12px;background:#eefaf2;color:#23713d;font-size:11px;font-weight:850;cursor:pointer;white-space:nowrap}.task-status-completed{opacity:.83}.task-status-cancelled{opacity:.68}
.task-empty-state{margin-top:10px}.task-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-bottom:35px}
.client-task-panel{margin-top:15px}.client-task-panel-head{align-items:flex-start}.client-task-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:flex-start;gap:12px;padding:14px;border:1px solid #deecef;border-radius:18px;background:#fff}.client-task-main{min-width:0}.client-task-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.client-task-title-line>strong{font-size:14px}.client-task-notes{margin:7px 0 0;color:#5c7078;font-size:10px;line-height:1.45}.client-task-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:980px){.attention-summary-grid,.task-summary-grid{grid-template-columns:1fr 1fr}.attention-task-row{grid-template-columns:42px minmax(0,1fr) auto}.attention-task-row>.task-due-chip,.attention-task-row>.task-priority-chip{grid-column:2}.attention-complete-form{grid-column:3;grid-row:1}.task-filter-card{grid-template-columns:1fr 1fr}.task-filter-card .search-field{grid-column:1/-1}.task-row{grid-template-columns:44px minmax(0,1fr)}.task-row-actions{grid-column:2;flex-direction:row}.client-task-row{grid-template-columns:42px minmax(0,1fr)}.client-task-actions{grid-column:2;justify-content:flex-start}}
@media(max-width:680px){.attention-summary-grid,.task-summary-grid{grid-template-columns:1fr 1fr}.attention-panel-head,.client-task-panel-head,.task-title-line{align-items:flex-start;flex-direction:column}.attention-panel-head .heading-actions,.client-task-panel-head .heading-actions{width:100%;justify-content:flex-start}.attention-task-row{grid-template-columns:38px minmax(0,1fr)}.attention-task-row>.task-due-chip,.attention-task-row>.task-priority-chip{grid-column:2}.attention-complete-form{grid-column:2;grid-row:auto}.task-filter-card{grid-template-columns:1fr}.task-filter-card .search-field{grid-column:auto}.task-row{grid-template-columns:1fr}.task-icon{display:none}.task-row-actions{grid-column:auto;flex-direction:row}.client-task-row{grid-template-columns:1fr}.client-task-row>.attention-task-icon{display:none}.client-task-actions{grid-column:auto}.task-form-actions{display:grid;grid-template-columns:1fr}.task-form-actions .button,.task-form-actions .secondary-button{width:100%}}


/* CRM Client Timeline v1 */
.client-timeline-panel{margin-top:15px}
.timeline-panel-head{align-items:flex-start}
.timeline-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 15px}
.timeline-quick-actions a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #d8e8ec;border-radius:14px;background:#fbfeff;color:var(--brand-dark);font-size:11px;font-weight:850;text-decoration:none}
.timeline-quick-actions a:hover{border-color:#a9d8df;background:#f3fcfd}
.timeline-quick-actions a span{font-size:16px}
.timeline-quick-actions.compact{margin-top:-2px}
.client-timeline-list{display:grid;gap:0}
.timeline-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:flex-start;position:relative;padding:13px 0}
.timeline-row:not(:last-child){border-bottom:1px solid #e3eef0}
.timeline-marker{position:relative;display:grid;place-items:start center;min-height:44px}
.timeline-marker:after{content:"";position:absolute;top:43px;bottom:-13px;width:2px;background:#dcebed}
.timeline-row:last-child .timeline-marker:after{display:none}
.timeline-marker span{width:40px;height:40px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#efffff,#fff8e8);border:1px solid rgba(0,179,184,.16);font-size:19px;position:relative;z-index:1}
.timeline-row.system .timeline-marker span{background:#f4f7f8;border-color:#dce4e7}
.timeline-main{min-width:0}
.timeline-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.timeline-date{display:block;color:#6b7f87;font-size:10px;font-weight:750;margin-bottom:2px}
.timeline-title-line h3{margin:0;font-size:14px;line-height:1.35;color:var(--ink)}
.timeline-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.timeline-type-chip,.timeline-auto-chip{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850;border:1px solid #dcebed;background:#f4fbfc;color:#52727c;white-space:nowrap}
.timeline-auto-chip{background:#f4f5f6;border-color:#e1e5e7;color:#6c777c}
.timeline-linked{margin:6px 0 0;color:#53717b;font-size:10px;font-weight:750}
.timeline-details{margin:7px 0 0;color:#526a73;font-size:11px;line-height:1.55;white-space:normal}
.timeline-actions{display:flex;align-items:flex-start;padding-top:18px}
.client-timeline-list.full .timeline-row{padding:16px 0}
.client-timeline-list.full .timeline-title-line h3{font-size:16px}
.timeline-page-heading{align-items:flex-start}
.timeline-filter-row{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}
.timeline-filter-row a{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid #dcebed;border-radius:999px;background:#fff;color:#58717a;font-size:10px;font-weight:800;text-decoration:none}
.timeline-filter-row a.active{background:#e9f9fa;border-color:#9fdbe0;color:#0d6572}
.timeline-type-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}
.timeline-type-option{display:block;position:relative;cursor:pointer}
.timeline-type-option input{position:absolute;opacity:0;pointer-events:none}
.timeline-type-option>span,.timeline-type-option>strong{pointer-events:none}
.timeline-type-option{padding:13px 9px;border:1px solid #dcebed;border-radius:16px;background:#fbfeff;text-align:center}
.timeline-type-option>span{display:block;font-size:22px;margin-bottom:4px}
.timeline-type-option>strong{display:block;font-size:10px;color:#506b74}
.timeline-type-option:has(input:checked){border-color:#63c1ca;box-shadow:0 0 0 3px rgba(0,179,184,.10);background:#f1fcfd}
.optional-label{font-size:9px;color:#809097;font-weight:700}
@media(max-width:800px){.timeline-type-grid{grid-template-columns:repeat(3,1fr)}.timeline-row{grid-template-columns:42px minmax(0,1fr)}.timeline-actions{grid-column:2;padding-top:0}.timeline-title-line{flex-direction:column}.timeline-badges{justify-content:flex-start}}
@media(max-width:520px){.timeline-type-grid{grid-template-columns:repeat(2,1fr)}.timeline-row{grid-template-columns:36px minmax(0,1fr);gap:10px}.timeline-marker span{width:34px;height:34px;border-radius:12px;font-size:16px}.timeline-marker:after{top:37px}.timeline-quick-actions a{flex:1 1 calc(50% - 8px);justify-content:center}}

/* CRM Renewal Workflow v1 */
.renewal-stage-chip{display:inline-flex;align-items:center;width:max-content;max-width:100%;gap:4px;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850;line-height:1.2;border:1px solid #dbe8eb;background:#f5f8f9;color:#5d7078;white-space:nowrap}
.renewal-stage-chip.client_contacted,.renewal-stage-chip.information_received,.renewal-stage-chip.quotes_requested,.renewal-stage-chip.quotes_compared,.renewal-stage-chip.presented{background:#eef9ff;border-color:#cce5f2;color:#245d79}
.renewal-stage-chip.client_decided{background:#fff8e5;border-color:#f0dfa8;color:#826000}
.renewal-stage-chip.completed{background:#edf9f0;border-color:#c9e9d0;color:#1f7137}
.renewal-page-heading,.renewal-detail-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.renewal-page-heading h1,.renewal-detail-hero h1{margin:2px 0 5px}.renewal-page-heading p,.renewal-detail-hero p{margin:0;color:var(--muted)}
.renewal-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 13px}.renewal-summary-card{display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:18px;background:#fff;text-decoration:none;color:var(--ink);box-shadow:0 7px 20px rgba(15,76,129,.04)}.renewal-summary-card>span{font-size:20px}.renewal-summary-card strong{display:block;font-size:20px;line-height:1}.renewal-summary-card small{display:block;margin-top:3px;font-size:9px;color:var(--muted);font-weight:800}.renewal-summary-card.overdue{border-color:#efc8c4;background:#fffafa}.renewal-summary-card.completed{border-color:#c9e9d0;background:#fbfffc}
.renewal-filter-card{display:grid;grid-template-columns:minmax(260px,1.45fr) minmax(190px,.75fr) minmax(190px,.75fr) auto auto;gap:11px;align-items:end;padding:15px 17px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 8px 22px rgba(15,76,129,.05);margin-bottom:12px}.renewal-filter-card label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#657c85}.renewal-filter-card input,.renewal-filter-card select{margin-top:4px;text-transform:none;letter-spacing:0}.renewal-filter-card .button,.renewal-filter-card .secondary-button{min-height:47px}
.renewal-worklist{display:grid;gap:10px}.renewal-work-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px;border:1px solid #deecef;border-radius:19px;background:#fff;box-shadow:0 6px 18px rgba(15,76,129,.04)}.renewal-work-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#efffff,#fff8e8);font-size:20px;border:1px solid rgba(0,179,184,.14)}.renewal-work-main{min-width:0}.renewal-work-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.renewal-work-title a{font-size:10px;font-weight:850;color:var(--brand-dark);text-decoration:none}.renewal-work-title h3{margin:2px 0 4px;font-size:14px}.renewal-work-title p{margin:0;color:var(--muted);font-size:10px}.renewal-work-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.renewal-progress{height:6px;border-radius:999px;background:#e8f0f2;overflow:hidden;margin-top:10px}.renewal-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f4c81,#00b3b8)}.renewal-progress.large{height:8px;margin-top:7px}.renewal-note-preview{margin:8px 0 0;color:#586e76;font-size:10px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.renewal-work-actions{display:grid;justify-items:end;gap:6px;min-width:128px}.renewal-work-actions>strong{font-size:11px}.renewal-work-actions .text-link{font-size:9px}
.dashboard-renewal-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 11px}.dashboard-renewal-summary span{padding:9px 10px;border:1px solid #e0ecef;border-radius:14px;background:#fbfefe;display:flex;align-items:baseline;gap:6px}.dashboard-renewal-summary strong{font-size:17px}.dashboard-renewal-summary small{font-size:8px;color:var(--muted);font-weight:800}.dashboard-renewal-summary .overdue{background:#fff8f7;border-color:#efcfcc}.dashboard-renewal-summary .completed{background:#f5fcf7;border-color:#d4ead8}.dashboard-renewal-workflow .renewal-row{gap:10px}
.renewal-detail-hero{padding:20px 22px;border-radius:22px;background:linear-gradient(135deg,#0f4c81,#176b8f);color:#fff;box-shadow:0 13px 30px rgba(15,76,129,.18)}.renewal-detail-hero .eyebrow,.renewal-detail-hero p{color:rgba(255,255,255,.8)}.renewal-detail-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.renewal-detail-hero .secondary-button{background:rgba(255,255,255,.96)}
.renewal-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:13px 0}.renewal-detail-summary article{padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 7px 20px rgba(15,76,129,.04)}.renewal-detail-summary small{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.renewal-detail-summary strong{display:block;margin:5px 0;font-size:16px}.renewal-detail-summary article>span:not(.renewal-chip){font-size:9px;color:var(--muted)}
.renewal-workflow-form{margin-bottom:13px}.renewal-stage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:16px}.renewal-stage-option{position:relative;display:grid;justify-items:center;gap:4px;padding:14px 8px;border:1px solid #dcebed;border-radius:17px;background:#fbfeff;text-align:center;cursor:pointer;min-height:100px}.renewal-stage-option input{position:absolute;opacity:0;pointer-events:none}.renewal-stage-option .renewal-stage-icon{font-size:22px}.renewal-stage-option strong{font-size:10px}.renewal-stage-option small{font-size:8px;color:var(--muted)}.renewal-stage-option.reached{background:#f3fbfc;border-color:#c6e7ea}.renewal-stage-option:has(input:checked){border-color:#48b8c0;box-shadow:0 0 0 3px rgba(0,179,184,.11);background:#edfbfc}.renewal-note-field{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#657c85}.renewal-note-field textarea{margin-top:4px;text-transform:none;letter-spacing:0}.renewal-note-field small{display:block;margin-top:4px;color:var(--muted);text-transform:none;letter-spacing:0}.renewal-form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.renewal-cycle-meta{margin-bottom:35px}
.product-renewal-workflow-box{margin:12px 0 18px;padding:13px;border:1px solid #dcebed;border-radius:16px;background:#fbfeff}.product-renewal-workflow-box>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:center}.product-renewal-workflow-box>div:first-child span{font-size:9px;color:var(--muted);font-weight:800;text-transform:uppercase}.product-renewal-workflow-box>div:first-child strong{font-size:11px}.product-renewal-workflow-box p{font-size:10px;color:#596f77;line-height:1.45;margin:9px 0}.product-renewal-workflow-box .secondary-button{margin-top:10px}
@media(max-width:1000px){.renewal-summary-grid{grid-template-columns:repeat(3,1fr)}.renewal-filter-card{grid-template-columns:1fr 1fr}.renewal-filter-card .search-field{grid-column:1/-1}.renewal-stage-grid{grid-template-columns:repeat(2,1fr)}.dashboard-renewal-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.renewal-page-heading,.renewal-detail-hero{align-items:flex-start;flex-direction:column}.renewal-detail-actions{justify-content:flex-start}.renewal-summary-grid{grid-template-columns:1fr 1fr}.renewal-detail-summary{grid-template-columns:1fr}.renewal-filter-card{grid-template-columns:1fr}.renewal-filter-card .search-field{grid-column:auto}.renewal-work-row{grid-template-columns:42px minmax(0,1fr)}.renewal-work-actions{grid-column:2;justify-items:start;display:flex;flex-wrap:wrap;align-items:center}.renewal-work-title{flex-direction:column}.renewal-work-badges{justify-content:flex-start}.dashboard-renewal-summary{grid-template-columns:1fr 1fr}.renewal-row .renewal-stage-chip{margin-left:auto}}
@media(max-width:500px){.renewal-summary-grid,.renewal-stage-grid,.dashboard-renewal-summary{grid-template-columns:1fr}.renewal-work-row{grid-template-columns:1fr}.renewal-work-icon{display:none}.renewal-work-actions{grid-column:1}.renewal-form-actions{display:grid;grid-template-columns:1fr}.renewal-form-actions .button,.renewal-form-actions .secondary-button{width:100%}.renewal-row .renewal-stage-chip{grid-column:2;margin-left:0}}

/* CRM Policy History v1 */
.compact-alert{margin:0 0 14px;padding:11px 13px;font-size:10px;line-height:1.45}
.policy-history-fields{border-color:#d7e5e9;background:linear-gradient(180deg,#fbfdfd,#f7fafb)}
.historical-policy-banner{margin-bottom:14px}
.historical-policies{margin-top:16px;border:1px solid #d9e6e9;border-radius:20px;background:#f8fbfc;overflow:hidden}
.historical-policies>summary{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:15px 17px;cursor:pointer;background:#f5f9fa}
.historical-policies>summary::-webkit-details-marker{display:none}
.historical-policies>summary>span:first-child{font-size:20px}.historical-policies>summary strong{display:block;font-size:12px}.historical-policies>summary small{display:block;margin-top:2px;color:var(--muted);font-size:9px}.history-count{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#e8f0f2;color:#4f6871;font-size:10px;font-weight:850}
.historical-policies[open]>summary{border-bottom:1px solid #d9e6e9}.historical-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:14px}.historical-policy-card{padding:14px;border:1px solid #dce7ea;border-radius:17px;background:#fff}.historical-policy-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:start}.historical-policy-head .product-row-icon{width:38px;height:38px}.historical-policy-head h3{margin:2px 0 0;font-size:13px}.historical-policy-details{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:11px 0 0}.historical-policy-details>div{padding:8px 0;border-top:1px solid #edf2f3}.historical-policy-details>div:nth-child(odd){padding-right:12px}.historical-policy-details .full{grid-column:1/-1}.historical-policy-details dt{font-size:8px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.03em}.historical-policy-details dd{margin:3px 0 0;font-size:10px;font-weight:750}.historical-policy-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:11px;padding-top:11px;border-top:1px solid #edf2f3}.historical-stat{background:#f8fbfc}
@media(max-width:760px){.historical-policy-grid{grid-template-columns:1fr}.historical-policy-head{grid-template-columns:40px minmax(0,1fr)}.historical-policy-head .status-pill{grid-column:2;justify-self:start}.historical-policy-details{grid-template-columns:1fr}.historical-policy-details>div:nth-child(odd){padding-right:0}.historical-policy-details .full{grid-column:auto}}

/* CRM Navigation Cleanup v1 */
.nav-v2-inner{position:relative;gap:18px}.desktop-nav-v2{margin-left:auto;gap:3px}.desktop-nav-v2>a,.nav-dropdown>summary{display:flex;align-items:center;gap:5px;padding:10px 11px;border-radius:12px;color:#58707a;font-size:12px;font-weight:800;line-height:1;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease}.nav-dropdown>summary{list-style:none;user-select:none}.nav-dropdown>summary::-webkit-details-marker{display:none}.desktop-nav-v2>a:hover,.desktop-nav-v2>a.active,.nav-dropdown>summary:hover,.nav-dropdown.active>summary,.nav-dropdown[open]>summary{background:#ecfbfc;color:var(--brand-dark)}.nav-dropdown{position:relative}.nav-dropdown>summary span{font-size:12px;line-height:1;transform:translateY(-1px)}
.nav-dropdown-menu{display:none;position:absolute;top:calc(100% + 10px);left:0;z-index:80;padding:8px;border:1px solid #dce9ed;border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 18px 45px rgba(15,76,129,.17);backdrop-filter:blur(16px)}.nav-dropdown[open]>.nav-dropdown-menu{display:grid}.nav-dropdown-wide{width:290px;gap:3px}.nav-dropdown-small{width:245px;gap:3px}.nav-dropdown-account{right:0;left:auto;width:255px;gap:3px}.nav-dropdown-label{padding:7px 10px 5px;color:#7c8d93;font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:900}.nav-dropdown-menu>a{display:grid;grid-template-columns:31px minmax(0,1fr);gap:9px;align-items:center;padding:10px;border-radius:13px;color:var(--ink);text-decoration:none}.nav-dropdown-menu>a:hover,.nav-dropdown-menu>a.active{background:#f0fafb}.nav-menu-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#edf8fa;color:#0f6470;font-size:14px;font-weight:900}.nav-dropdown-menu>a strong{display:block;font-size:11px;line-height:1.2}.nav-dropdown-menu>a small{display:block;margin-top:3px;color:#70838a;font-size:8px;line-height:1.25;font-weight:650}.nav-dropdown-divider{height:1px;background:#e6eef0;margin:5px 4px}.nav-dropdown-menu>a.nav-signout-item{color:#a72f2f}.nav-signout-item .nav-menu-icon{background:#fff0f0;color:#a72f2f}.nav-account-dropdown{margin-left:3px}.nav-account-dropdown>summary{border:1px solid #dce9ed;background:#fff;color:var(--brand-dark)}
.mobile-nav-v2{display:none;position:relative;margin-left:auto}.mobile-nav-v2>summary{list-style:none;display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #d7e7ea;border-radius:13px;background:#fff;color:var(--brand-dark);font-size:12px;font-weight:850;cursor:pointer}.mobile-nav-v2>summary::-webkit-details-marker{display:none}.mobile-menu-icon{font-size:17px}.mobile-nav-panel{display:none;position:absolute;right:0;top:calc(100% + 10px);z-index:100;width:min(330px,calc(100vw - 28px));max-height:calc(100vh - 92px);overflow:auto;padding:9px;border:1px solid #dce9ed;border-radius:19px;background:rgba(255,255,255,.99);box-shadow:0 18px 50px rgba(15,76,129,.2);backdrop-filter:blur(18px)}.mobile-nav-v2[open]>.mobile-nav-panel{display:grid}.mobile-nav-panel>a{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center;padding:10px 11px;border-radius:13px;color:#4d6872;text-decoration:none;font-size:11px}.mobile-nav-panel>a:hover,.mobile-nav-panel>a.active{background:#edfafa;color:var(--brand-dark)}.mobile-nav-panel>a>span{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#f0f7f8;font-size:13px}.mobile-nav-panel>a.active>span{background:#dff5f6}.mobile-nav-heading{padding:11px 11px 4px;color:#87969b;font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;border-top:1px solid #edf2f3;margin-top:4px}.mobile-nav-heading:first-of-type{border-top:0}.mobile-nav-panel .mobile-signout{color:#a62e2e}.mobile-nav-panel .mobile-signout>span{background:#fff0f0}
@media(max-width:980px){.desktop-nav-v2{display:none}.mobile-nav-v2{display:block}.nav-v2-inner{min-height:70px;flex-wrap:nowrap}.brand-inline{min-width:0}.brand-inline span:last-child{min-width:0}.brand-inline strong{white-space:nowrap}.brand-inline small{white-space:nowrap}}
@media(max-width:520px){.nav-v2-inner{min-height:64px;padding-top:7px;padding-bottom:7px}.brand-inline{gap:8px}.mini-mark{width:39px;height:39px;border-radius:12px;font-size:19px}.brand-inline small{display:none}.mobile-nav-v2>summary span:last-child{display:none}.mobile-nav-v2>summary{width:43px;height:43px;justify-content:center;padding:0}.mobile-menu-icon{font-size:20px}.mobile-nav-panel{position:fixed;top:70px;right:14px;left:14px;width:auto;max-height:calc(100vh - 84px)}}

/* ===== Client Hub navigation v2.1: controlled compact toolbar ===== */
.crm-topbar{z-index:100;background:rgba(255,255,255,.96);box-shadow:0 5px 18px rgba(15,76,129,.05)}
.crm-topbar-inner{width:min(1280px,100%);min-height:72px;display:flex;align-items:center;gap:22px;padding-top:8px;padding-bottom:8px;position:relative}
.crm-brand{flex:0 0 auto}.crm-brand-copy{display:grid}.crm-brand-copy strong{font-size:16px;line-height:1.1}.crm-brand-copy small{font-size:10px}
.crm-desktop-nav{display:flex!important;align-items:center;justify-content:center;gap:3px;margin-left:auto}
.crm-nav-link,.crm-nav-button{appearance:none;border:0;background:transparent;display:inline-flex;align-items:center;gap:5px;padding:10px 12px;border-radius:12px;color:#526b75;font-size:12px;font-weight:800;line-height:1;cursor:pointer;white-space:nowrap;transition:background .14s ease,color .14s ease,transform .14s ease}
.crm-nav-link:hover,.crm-nav-button:hover{background:#f0fafb;color:var(--brand-dark)}
.crm-nav-link.active,.crm-nav-button.active,.crm-menu.open>.crm-nav-button{background:#e7f9fa;color:#0f5c7d}
.crm-chevron{font-size:12px;line-height:1;transition:transform .14s ease}.crm-menu.open>.crm-nav-button .crm-chevron,.crm-menu.open>.crm-account-button .crm-chevron{transform:rotate(180deg)}
.crm-menu{position:relative}.crm-menu-right{position:relative}
.crm-popover{position:absolute;top:calc(100% + 10px);left:0;z-index:220;width:290px;padding:8px;border:1px solid #dce9ed;border-radius:17px;background:#fff;box-shadow:0 20px 55px rgba(15,76,129,.18)}
.crm-popover-tools{width:235px}.crm-account-popover{left:auto;right:0;width:255px}
.crm-popover-heading{padding:7px 9px 6px;color:#85959b;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.crm-popover-item{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:10px;border-radius:12px;color:var(--ink)}
.crm-popover-item:hover,.crm-popover-item.active{background:#f0fafb}.crm-popover-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#edf8fa;color:#0f6470;font-weight:900}
.crm-popover-item strong{display:block;font-size:11px;line-height:1.2}.crm-popover-item small{display:block;margin-top:3px;color:#72858c;font-size:8px;line-height:1.3;font-weight:650}
.crm-popover-divider{height:1px;background:#e9eff1;margin:5px}.crm-signout{color:#a52f2f}.crm-signout .crm-popover-icon{background:#fff1f1;color:#a52f2f}
.crm-account-wrap{flex:0 0 auto;margin-left:3px}.crm-account-button{appearance:none;border:1px solid #dce9ed;background:#fff;display:flex;align-items:center;gap:8px;padding:6px 9px 6px 6px;border-radius:999px;color:var(--brand-dark);font-size:11px;font-weight:850;cursor:pointer}.crm-account-button:hover,.crm-account-button.active,.crm-menu.open>.crm-account-button{background:#f3fbfc;border-color:#c7e6e9}.crm-account-avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;font-size:12px;font-weight:900}.crm-account-name{padding-left:1px}.crm-account-summary{display:grid;padding:9px 10px 10px;border-bottom:1px solid #edf2f3;margin-bottom:4px}.crm-account-summary strong{font-size:12px}.crm-account-summary small{margin-top:2px;color:#7a8d94;font-size:9px}
.crm-mobile-trigger{display:none!important;align-items:center;gap:7px;border:1px solid #d7e7ea;border-radius:13px;background:#fff;color:var(--brand-dark);padding:9px 12px;font-size:12px;font-weight:850;cursor:pointer;margin-left:auto}.crm-mobile-bars{font-size:18px;line-height:1}
.crm-mobile-panel{position:absolute;right:14px;top:calc(100% + 7px);z-index:250;width:min(340px,calc(100vw - 28px));max-height:calc(100vh - 90px);overflow:auto;padding:9px;border:1px solid #dce9ed;border-radius:18px;background:#fff;box-shadow:0 22px 60px rgba(15,76,129,.20)}
.crm-mobile-panel-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px 9px;border-bottom:1px solid #edf2f3;margin-bottom:5px}.crm-mobile-panel-head strong{font-size:12px;color:var(--brand-dark)}.crm-mobile-panel-head button{border:0;background:#f2f7f8;width:30px;height:30px;border-radius:9px;color:#60757d;font-size:20px;line-height:1;cursor:pointer}
.crm-mobile-panel>a{display:grid;grid-template-columns:31px minmax(0,1fr);align-items:center;gap:9px;padding:10px 11px;border-radius:12px;color:#4e6972;font-size:12px;font-weight:800}.crm-mobile-panel>a>span{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#f0f7f8;color:#0f6470}.crm-mobile-panel>a:hover,.crm-mobile-panel>a.active{background:#edfafa;color:var(--brand-dark)}.crm-mobile-heading{padding:12px 11px 5px;margin-top:4px;border-top:1px solid #edf2f3;color:#8a989d;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.crm-mobile-signout{color:#a52f2f!important}.crm-mobile-signout>span{background:#fff1f1!important;color:#a52f2f!important}
.crm-mobile-menu-open{overflow:hidden}
@media(max-width:980px){.crm-desktop-nav,.crm-desktop-account{display:none!important}.crm-mobile-trigger{display:inline-flex!important}.crm-topbar-inner{min-height:68px}.crm-brand-copy small{display:block}}
@media(max-width:520px){.crm-topbar-inner{min-height:64px;gap:10px}.crm-brand{gap:8px}.crm-brand-copy strong{font-size:14px}.crm-brand-copy small{display:none}.crm-mobile-trigger{width:43px;height:43px;padding:0;justify-content:center}.crm-mobile-trigger>span:last-child{display:none}.crm-mobile-panel{position:fixed;top:70px;left:14px;right:14px;width:auto;max-height:calc(100vh - 84px)}}


/* ======================================================================
   PSIBER CRM THEME v1
   Visual system matched to PSIBER Digital Signatures.
   ====================================================================== */
:root{
  --bg:#edf4f9;
  --ink:#19324b;
  --muted:#667c90;
  --brand:#00aef0;
  --brand-dark:#071a33;
  --sun:#ffd166;
  --mint:#a7f3d0;
  --pink:#ff9ecd;
  --line:#d7e5ef;
  --card:#ffffff;
  --danger:#a82035;
  --success:#166534;
  --shadow:0 24px 70px rgba(7,26,51,.14);
  --psiber-navy:#071a33;
  --psiber-navy-soft:#0c294d;
  --psiber-blue:#0077c8;
  --psiber-cyan:#00aef0;
  --psiber-sky:#eaf7ff;
}
html,body{font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink)}
body{background:radial-gradient(circle at 9% 0%,rgba(0,174,240,.12),transparent 34%),linear-gradient(180deg,#f7fbfe 0%,#edf4f9 100%)}
.app-page{background:radial-gradient(circle at 9% 0%,rgba(0,174,240,.12),transparent 34%),linear-gradient(180deg,#f7fbfe 0%,#edf4f9 100%)}
.page-wrap{width:min(1180px,100%)}
.app-main,.dashboard{padding-top:28px}
h1,h2,h3{color:var(--psiber-navy);letter-spacing:-.015em}
.eyebrow{color:var(--psiber-blue);font-size:11px;letter-spacing:.13em;font-weight:850}
.eyebrow.light{color:#7bddff!important}

/* Dashboard / page hero */
.hero-panel{position:relative;overflow:hidden;align-items:center;padding:27px 29px;border:1px solid rgba(255,255,255,.12);border-radius:18px;color:#fff;background:radial-gradient(circle at 88% 18%,rgba(0,174,240,.38),transparent 29%),linear-gradient(135deg,#071a33 0%,#0c294d 62%,#0d4a70 100%);box-shadow:0 18px 44px rgba(7,26,51,.20)}
.hero-panel:after{content:"";position:absolute;right:-80px;bottom:-125px;width:270px;height:270px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 30px rgba(255,255,255,.035),0 0 0 65px rgba(255,255,255,.025);pointer-events:none}
.hero-panel>*{position:relative;z-index:1}.hero-panel h1{color:#fff!important;font-size:clamp(28px,4vw,39px);letter-spacing:-.025em}.hero-panel p{color:rgba(255,255,255,.75)}
.hero-actions-inline{max-width:315px}.psiber-hero-logo{order:-1;display:block;width:205px;max-width:100%;height:auto;padding:9px 12px;border-radius:10px;background:#fff;box-shadow:0 9px 24px rgba(0,0,0,.13)}
.secure-badge{border-color:rgba(255,255,255,.20);background:rgba(255,255,255,.09);color:#eaf8ff}

/* Cards and panels */
.stat-card,.content-card,.panel-card,.filter-card,.client-card,.product-card,.form-card,.section-card,.info-card,.summary-card,.metric-card,.profile-summary-card,.quick-contact-card,.activity-card,.renewal-card,.opportunity-card,.task-card,.transaction-card{
  border-color:var(--line)!important;border-radius:15px!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;box-shadow:0 12px 32px rgba(7,26,51,.07)!important
}
.stat-card{padding:18px}.stat-card strong{color:var(--psiber-navy)}
.client-card:hover,.product-card:hover,.stat-card-link:hover{border-color:#b9ddeb!important;box-shadow:0 16px 36px rgba(7,26,51,.11)!important}
.content-card{border-radius:15px}.content-icon,.entity-avatar{border-color:#c7e7f7;background:#f0faff;color:var(--psiber-blue)}
.page-heading{margin-bottom:22px}.page-heading h1{color:var(--psiber-navy);font-size:clamp(29px,4vw,42px)}.page-heading p{color:var(--muted)}

/* Forms */
input,select,textarea{border-color:#cbdbe7!important;border-radius:9px!important;background:#fff!important;color:var(--ink)!important}
input:focus,select:focus,textarea:focus{border-color:var(--psiber-cyan)!important;box-shadow:0 0 0 4px rgba(0,174,240,.12)!important}
label,.label{color:#17304a!important;font-weight:800!important}
.form-section{border-color:var(--line);border-radius:15px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 10px 25px rgba(7,26,51,.05)}

/* Buttons */
.button,.primary-button,button.button,.filter-card .button{border:0!important;border-radius:9px!important;color:#fff!important;background:linear-gradient(135deg,var(--psiber-blue),var(--psiber-cyan))!important;box-shadow:0 9px 20px rgba(0,119,200,.18)!important;font-weight:850!important}
.button:hover,.primary-button:hover,button.button:hover{transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 13px 26px rgba(0,119,200,.23)!important}
.secondary-button,.button-light,.logout-link{border:1px solid var(--line)!important;border-radius:9px!important;background:#fff!important;color:var(--psiber-navy)!important;box-shadow:none!important}
.hero-panel .button-light{border-color:rgba(255,255,255,.18)!important;background:rgba(255,255,255,.94)!important;color:var(--psiber-navy)!important}
.danger-button,.button.danger,.danger-button-small{background:linear-gradient(135deg,#b42318,#ef4444)!important;color:#fff!important;border:0!important}

/* Tables */
table{border-radius:12px;overflow:hidden}thead,th{background:var(--psiber-navy-soft)!important;color:#fff!important}td{border-color:#e1ebf2!important}tbody tr:hover{background:#f3f9fc!important}

/* Pills / status */
.status-pill,.soft-pill,.coming-label,.task-due-chip,.task-priority-chip,.renewal-stage-pill,.opportunity-status,.request-status{border-radius:999px!important;font-weight:850!important}
.status-pill.active{background:#e9f8ef!important;color:#166534!important;border-color:#c9e9d0!important}

/* Notices */
.alert,.notice,.callout,.info-box,.warning-box{border-radius:11px!important;box-shadow:0 8px 22px rgba(7,26,51,.05)}
.alert.success{background:#edf9f0;color:#166534;border-color:#c9e9d0}.alert.error{background:#fff0f2;color:#7f1c2e;border-color:#f4c7cf}

/* Login / MFA */
.auth-page{background:radial-gradient(circle at 9% 0%,rgba(0,174,240,.14),transparent 34%),linear-gradient(180deg,#f7fbfe 0%,#edf4f9 100%)}
.auth-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);box-shadow:var(--shadow);padding:30px}
.auth-card:after{background:rgba(0,174,240,.07)}
.auth-brand-logo{display:block;width:220px;max-width:82%;height:auto;margin-bottom:22px;padding:7px 10px;border:1px solid #e3edf3;border-radius:10px;background:#fff}
.auth-card h1{color:var(--psiber-navy);font-size:clamp(30px,6vw,42px)}
.auth-card .eyebrow{margin-top:0;color:var(--psiber-blue)}

/* Common special modules */
.attention-panel,.renewal-workspace,.opportunity-workspace{border-top:4px solid var(--psiber-cyan)!important}
.attention-summary-card,.renewal-summary-card,.opportunity-summary-card{border-radius:13px!important;border-color:var(--line)!important;box-shadow:0 8px 22px rgba(7,26,51,.05)!important}
.profile-hero,.client-profile-hero{background:radial-gradient(circle at 88% 18%,rgba(0,174,240,.30),transparent 29%),linear-gradient(135deg,#071a33 0%,#0c294d 62%,#0d4a70 100%)!important;border-radius:18px!important;color:#fff!important}

@media(max-width:760px){
  .hero-panel{padding:22px 18px;border-radius:14px}.psiber-hero-logo{width:190px}.hero-actions-inline{max-width:100%;width:100%;align-items:flex-start}.page-wrap{padding-left:14px;padding-right:14px}.stat-card,.panel-card,.filter-card,.client-card,.product-card{border-radius:13px!important}.auth-card{padding:23px;border-radius:15px}
}


/* ===== Client portal access status ===== */
.client-card-statuses{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.portal-access-pill{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850;line-height:1.1;border:1px solid #d7e6ec;white-space:nowrap}
.portal-access-pill.sent{background:#eaf7ff;color:#075f8a;border-color:#b9deef}
.portal-access-pill.active{background:#e8f8ef;color:#166534;border-color:#bfe4cc}
.portal-access-pill.disabled{background:#f2f4f5;color:#66737a;border-color:#dce2e5}
@media(max-width:520px){.portal-access-pill{font-size:8.5px;padding:5px 7px}}
