*{box-sizing:border-box}
:root{--navy:#061a35;--navy2:#0b2d56;--gold:#d8a928;--gold2:#f8dc76;--ink:#102344;--muted:#6d7a8d;--line:#e4eaf3;--bg:#f3f6fb;--white:#fff}
body{margin:0;background:radial-gradient(ellipse at top right,#eaf1fb 0,#f6f8fc 45%,#f3f6fb 100%);color:var(--ink);font:15px/1.55 Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
header{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(115deg,#03142d,#0b2c55 75%,#102f53);color:#fff;padding:15px max(22px,calc((100% - 1240px)/2));border-bottom:3px solid var(--gold);box-shadow:0 8px 26px #061a3524}
.brand{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none;min-width:0}.brand-logo{width:54px;height:54px;object-fit:cover;border:1px solid #c99a24;border-radius:12px;background:#000}.brand strong{display:block;letter-spacing:1.2px;font-size:16px}.brand small{display:block;color:#f2d77e;font-size:11px;letter-spacing:.25px}.who{font-size:12px;color:#e3eaf5}
nav{display:flex;gap:7px;flex-wrap:wrap;padding:11px max(22px,calc((100% - 1240px)/2));background:#fff;border-bottom:1px solid var(--line);box-shadow:0 4px 15px #0a23410a}
nav a{padding:9px 14px;border-radius:9px;color:var(--navy);text-decoration:none;font-weight:700;font-size:13px;transition:.2s}nav a:hover,nav a:focus{background:#fff4cf;color:#092347}
main{max-width:1240px;margin:30px auto;padding:0 22px;min-height:65vh}h1{font-size:30px;line-height:1.15;margin:0 0 8px;color:var(--navy);letter-spacing:-.5px}h2{font-size:19px;color:var(--navy);margin:0 0 14px}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:2px;color:#9a741b;font-weight:850;margin:0 0 8px}
.intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:10px 0 24px}
.card{background:linear-gradient(145deg,#fff,#fcfdff);border:1px solid #e3eaf4;border-radius:17px;padding:23px;margin:18px 0;box-shadow:0 9px 28px #0a23410b}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}.stat{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff,#f6f9ff);border:1px solid #dce6f5;border-radius:16px;padding:21px;box-shadow:0 6px 18px #09254a0a}.stat:after{content:"";position:absolute;right:-25px;top:-25px;width:95px;height:95px;border-radius:50%;background:#e8effb;opacity:.65}.stat:nth-child(2){background:linear-gradient(135deg,#fff,#fffaf0);border-color:#f1e3b6}.stat:nth-child(2):after{background:#f8e8b5}.stat:nth-child(3){background:linear-gradient(135deg,#fff,#f2fbf7);border-color:#d4eee2}.stat:nth-child(3):after{background:#d5f2e5}.stat span{display:block;color:var(--muted);font-size:13px;position:relative;z-index:1}.stat b{display:block;font-size:32px;color:var(--navy);margin-top:5px;position:relative;z-index:1}
.button,button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #0c315b;border-radius:10px;padding:11px 17px;background:linear-gradient(135deg,#0b2b52,#123e70);color:#fff;text-decoration:none;font-weight:750;cursor:pointer;font:inherit;box-shadow:0 5px 12px #0a2c5519;transition:transform .15s,box-shadow .15s}.button:hover,button:hover{background:linear-gradient(135deg,#123e70,#0b2b52);transform:translateY(-1px);box-shadow:0 7px 17px #0a2c5525}
form label{display:block;margin:14px 0;color:#34445a;font-size:13px;font-weight:700}input,select,textarea{display:block;width:100%;margin-top:6px;padding:12px 13px;border:1px solid #d0dbe9;border-radius:9px;background:#fff;color:var(--ink);font:inherit;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#c59b2b;box-shadow:0 0 0 3px #d8a92825}textarea{min-height:90px;resize:vertical}form button{margin-top:9px}.form-card{max-width:760px}
.login{max-width:480px;margin:45px auto;padding:30px}.login-logo{display:block;width:125px;height:125px;object-fit:cover;border-radius:18px;margin:0 auto 18px;border:1px solid #d7ad42;box-shadow:0 8px 20px #061a3518}.login h1{text-align:center;margin-bottom:12px}.login>p{text-align:center}.login form{margin-top:22px}.login form button{width:100%;margin-top:10px}.login .eyebrow{text-align:center}
.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-title a,.search a,table a{color:#174e86;font-weight:700}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:650px}th,td{text-align:left;padding:13px 11px;border-bottom:1px solid var(--line);font-size:13px}th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:#64738a;background:#f5f8fd}tbody tr:hover{background:#fbfcff}tr:last-child td{border-bottom:0}
.search{display:flex;align-items:center;gap:10px;margin:16px 0}.search input{max-width:420px;margin:0}.pill{display:inline-block;padding:5px 10px;background:#fff0c4;color:#78560b;border-radius:20px;font-size:11px;font-weight:850}.pill.late{background:#ffe1e1;color:#9b2525}
footer{text-align:center;padding:28px;color:#718097;font-size:12px;border-top:1px solid #e3eaf3;background:#fff}
@media(max-width:700px){header{align-items:flex-start;flex-direction:column;padding:14px 17px}.brand-logo{width:46px;height:46px}.intro{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:1fr}.search{align-items:stretch;flex-direction:column}.search input{max-width:none}h1{font-size:26px}main{margin:20px auto;padding:0 14px}.card{padding:16px}nav{padding:9px 12px}nav a{padding:8px 10px;font-size:12px}.login{padding:23px 18px}.login-logo{width:105px;height:105px}}

/* Premium insurance category cards */
.insurance-desk{margin:28px 0 22px}.desk-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.desk-heading h2{margin:0 0 4px}.desk-heading .muted{margin:0;font-size:13px}.text-link{color:#174e86;font-weight:800;text-decoration:none;white-space:nowrap}.insurance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.insurance-tile{display:flex;flex-direction:column;align-items:flex-start;min-height:108px;padding:17px;border:1px solid #e0e7f1;border-radius:15px;text-decoration:none;color:#102344;box-shadow:0 6px 18px #09254a08;transition:transform .18s,box-shadow .18s}.insurance-tile:hover{transform:translateY(-3px);box-shadow:0 12px 24px #09254a14}.tile-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#ffffffb8;font-size:17px;margin-bottom:8px}.insurance-tile strong{font-size:13px}.insurance-tile small{font-size:11px;color:#66758a;margin-top:2px}.tile-motor{background:linear-gradient(135deg,#f2f6ff,#e7efff)}.tile-health{background:linear-gradient(135deg,#f1fff8,#e0f7e9)}.tile-life{background:linear-gradient(135deg,#fff7ec,#ffead3)}.tile-term{background:linear-gradient(135deg,#fbf4ff,#f0e5ff)}.tile-critical{background:linear-gradient(135deg,#fff9dc,#fff0ae)}.tile-shop{background:linear-gradient(135deg,#effcff,#dcf5fa)}.tile-accident{background:linear-gradient(135deg,#fff0f0,#ffdddd)}.tile-commercial{background:linear-gradient(135deg,#f7f9fc,#e8edf4)}@media(max-width:850px){.insurance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.desk-heading{align-items:flex-start;flex-direction:column}.insurance-grid{gap:9px}.insurance-tile{padding:13px;min-height:100px}}

.category-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;height:1.45rem;margin-left:.35rem;padding:0 .25rem;border-radius:999px;background:#dce6f6;color:#18365c;font-size:.78rem;font-weight:700}


/* Vibrant premium customer portal */
.customer-welcome{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden;margin:8px 0 28px;padding:30px 32px;border-radius:23px;color:#fff;background:radial-gradient(circle at 88% 12%,#35649a 0,transparent 28%),linear-gradient(120deg,#061a35 0%,#103e70 66%,#145a76 100%);box-shadow:0 18px 38px #071d3a24}
.customer-welcome:after{content:"";position:absolute;width:240px;height:240px;right:100px;bottom:-190px;border:1px solid #ffffff20;border-radius:50%;box-shadow:0 0 0 24px #ffffff08,0 0 0 48px #ffffff06;pointer-events:none}
.customer-welcome .eyebrow{color:#f5d77a}.customer-welcome h1{color:#fff;font-size:clamp(25px,3vw,36px);margin:0 0 12px}.customer-welcome p:not(.eyebrow){max-width:650px;margin:0;color:#e0eaf7;font-size:14px}.customer-welcome-badge{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 112px;width:112px;height:112px;border:1px solid #f0d06c80;border-radius:24px;background:linear-gradient(145deg,#ffffff20,#ffffff08);box-shadow:inset 0 1px #ffffff20}.customer-welcome-badge span{font-size:22px}.customer-welcome-badge strong{font-size:29px;line-height:1.15;color:#ffe28a}.customer-welcome-badge small{font-size:11px;color:#f2f5fa;letter-spacing:.5px}
.customer-portal-label{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px}.customer-portal-label h2{font-size:22px;margin:0 0 3px}.customer-portal-label p{margin:0;font-size:13px}.customer-count-pill{display:inline-flex;align-items:center;justify-content:center;border:1px solid #f0dfac;background:#fff7dd;color:#76570c;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:800;white-space:nowrap}
.customer-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-bottom:28px}.customer-policy-card{position:relative;min-width:0;padding:22px;border:1px solid #e1e8f3;border-radius:19px;background:linear-gradient(145deg,#fff 0%,#fbfcff 100%);box-shadow:0 10px 25px #09254a0b;transition:transform .18s,box-shadow .18s}.customer-policy-card:hover{transform:translateY(-2px);box-shadow:0 15px 30px #09254a14}.customer-policy-top{display:flex;align-items:center;gap:10px;margin-bottom:15px}.customer-policy-icon{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;border-radius:14px;background:linear-gradient(135deg,#fff4ce,#f7e2a0);color:#12365e;font-size:21px}.customer-policy-type{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;background:#edf3fc;color:#174576;font-size:11px;font-weight:850;letter-spacing:.3px}.customer-policy-premium{margin-left:auto;color:#0a754f;font-weight:850;font-size:15px;white-space:nowrap}.customer-policy-card h2{font-size:17px;line-height:1.4;margin:0 0 17px;overflow-wrap:anywhere}.customer-policy-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:15px 0;border-top:1px solid #e8edf5;border-bottom:1px solid #e8edf5}.customer-policy-details div{min-width:0}.customer-policy-details span{display:block;margin-bottom:4px;color:#738198;font-size:10px;text-transform:uppercase;letter-spacing:.65px;font-weight:800}.customer-policy-details strong{display:block;color:#193453;font-size:12px;overflow-wrap:anywhere}.customer-policy-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px}.customer-pdf-button{background:linear-gradient(120deg,#0a2c55,#14517f);border-color:#174a78;border-radius:11px;padding:10px 14px;font-size:12px}.customer-pdf-button:hover{background:linear-gradient(120deg,#164f7e,#0a2c55)}.customer-no-document{font-size:12px}.customer-empty-state{grid-column:1/-1;text-align:center;padding:38px 22px;border:1px dashed #cbd8e9;border-radius:19px;background:linear-gradient(135deg,#fff,#f4f8ff)}.customer-empty-state>span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 13px;border-radius:18px;background:#fff0c4;font-size:25px}.customer-empty-state h2{margin:0 0 8px}.customer-empty-state p{max-width:480px;margin:0 auto;color:#6d7a8d;font-size:13px}
@media(max-width:700px){.customer-welcome{align-items:flex-start;padding:22px 19px;gap:12px}.customer-welcome-badge{flex-basis:78px;width:78px;height:78px;border-radius:18px}.customer-welcome-badge strong{font-size:24px}.customer-welcome-badge span{font-size:17px}.customer-policy-grid{grid-template-columns:1fr;gap:12px}.customer-policy-card{padding:18px}.customer-portal-label{align-items:flex-start}.customer-policy-details{gap:10px}.customer-policy-premium{font-size:13px}.customer-policy-type{font-size:10px;padding:5px 8px}.customer-welcome p:not(.eyebrow){font-size:13px}}
/* Destructive admin action: clearly distinguished from ordinary actions. */
button.danger,.button.danger{background:#b42318!important;color:#fff!important;border:1px solid #912018!important}
button.danger:hover,.button.danger:hover{background:#912018!important}
