/* rates: page styles. Spacing scale: 4 / 8 / 12 / 16 / 24 / 32. */

/* toolbar: product picker + status */
.rhead{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin:24px 0 0;}
.rlbl{font-size:12px;font-weight:bold;color:var(--label,var(--muted));}
.rhead select{min-height:40px;font-size:14px;padding:8px 12px;max-width:100%;border:1px solid var(--control-border,var(--line));border-radius:8px;
  background:var(--control-bg,var(--card-bg));color:var(--control-ink,var(--ink));font-family:inherit;}
.rhead .badge{font-size:11px;line-height:1.5;padding:2px 10px;border-radius:12px;border:1px solid var(--line);font-weight:bold;letter-spacing:.04em;}
.badge.def{color:var(--muted);background:transparent;}
.badge.ovr{color:var(--warn);border-color:#e8b341;background:rgba(232,179,65,.12);}
.badge.dirty{color:var(--bad);border-color:rgba(185,28,28,.45);background:rgba(185,28,28,.08);}
.toast{font-size:12px;font-weight:bold;color:var(--ok);opacity:0;transition:opacity .3s;}
.toast.show{opacity:1;}
@media(max-width:640px){
  .rhead select{flex:1 1 0;min-width:0;}
  .preview small{display:none;}   /* keep the sticky bar compact on phones */
}

/* live premium: sticky so the number stays visible while editing far down the tables */
.preview{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:4px 16px;flex-wrap:wrap;margin:16px 0;padding:12px 16px;
  background:var(--surface,#fff);border:1px solid var(--line);border-radius:12px;box-shadow:0 6px 18px rgba(16,75,60,.10);}
[data-theme="zen-cosmic"] .preview{background:#0d0f1a;}
.pv-main{display:flex;align-items:baseline;gap:12px;}
.pv-k{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:bold;}
.preview .amt{font-size:24px;font-weight:bold;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums;transition:color .4s;}
.preview .amt.up{color:var(--bad);} .preview .amt.down{color:var(--ok);}
.preview small{font-size:12px;line-height:1.5;color:var(--muted);min-width:0;}

/* cards */
.rcard{padding:24px;margin:16px 0;}
.rcard h2{font-size:16px;line-height:1.3;margin:0 0 8px;}
.rcard .sub{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 16px;max-width:80ch;}
@media(max-width:640px){ .rcard{padding:16px;} }

/* every editable number shares one control style; values are right-aligned tabular figures */
.rcard input{box-sizing:border-box;height:36px;padding:4px 8px;font-size:13px;font-family:inherit;border:1px solid var(--control-border,var(--line));border-radius:8px;
  background:var(--control-bg,var(--card-bg));color:var(--control-ink,var(--ink));}
.rcard input[type=number]{text-align:right;font-variant-numeric:tabular-nums;}
.rcard input:focus{outline:none;border-color:var(--accent2);box-shadow:0 0 0 3px rgba(14,165,164,.18);}
.rcard input.chg{border-color:#e8b341;box-shadow:0 0 0 1px #e8b341 inset;}
.rcard input.ro{opacity:.7;text-overflow:ellipsis;}

/* base + cat field grids */
.numgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;}
.numgrid label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);min-width:0;}
.numgrid input{width:100%;}
.numgrid.cat{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}
.peril{margin:0;padding:12px;border:1px solid var(--line);border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0;}
.peril legend{padding:0 4px;font-size:12px;font-weight:bold;color:var(--ink);}

/* provision / band cards */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;align-items:start;}
@media(max-width:400px){ .pgrid{grid-template-columns:minmax(0,1fr);} }
.pgrp{border:1px solid var(--line);border-radius:12px;background:var(--panel2);overflow:hidden;min-width:0;}
.ph{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;border-bottom:1px solid var(--line);}
.pn{font-size:12px;font-weight:bold;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);line-height:1.35;min-width:0;}
.pn .w{text-transform:none;letter-spacing:0;font-weight:normal;color:var(--muted);}
.pw{flex:none;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);}
.pw input,.orow input{width:72px;}
.opts{list-style:none;margin:0;padding:4px 12px 8px;}
.opts li + li{border-top:1px solid var(--line);}
.orow{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 0;font-size:13px;color:var(--body-ink);}
.orow .on{min-width:0;}
.fdot{color:var(--ok);font-size:10px;vertical-align:1px;} .sdot{color:var(--bad);font-size:10px;vertical-align:1px;}

.actions{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0;}
.actions .btn{min-height:44px;}
@media(max-width:640px){ .actions .btn{flex:1 1 100%;} }

/* converted from inline style attributes (CSP: style-src 'self') */
.sx-9e3c4cc{margin-top:8px !important}
.sx-2bd9fd6{max-width:720px !important}
