:root{--navy: #142a4d;--navy-dark: #0c1d39;--navy-light: #1f3a66;--coral: #ff6a3d;--coral-dark: #e85829;--teal: #15b7a6;--teal-dk: #0a8a7d;--teal-soft: rgba(21, 183, 166, .1);--ink: #1a2230;--ink-mid: #3a4757;--ink-muted: #5a657a;--rule: #e6e8ee;--rule-strong: #ced3df;--cream: #f6f7fb;--paper: #ffffff;--good: #1e8a5b;--good-bg: rgba(30, 138, 91, .1);--warn: #c75b1c;--warn-bg: rgba(199, 91, 28, .1);--bad: #c0392b;--bad-bg: rgba(192, 57, 43, .1);--shadow: 0 1px 2px rgba(20, 42, 77, .04), 0 12px 32px rgba(20, 42, 77, .08);--font-display: "Fraunces", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;line-height:1.55}button{font-family:inherit;cursor:pointer}.shell{display:grid;grid-template-rows:auto auto 1fr;height:100vh;max-width:1480px;margin:0 auto;background:var(--paper);box-shadow:var(--shadow)}.topbar{background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:14px 28px;border-bottom:3px solid var(--coral)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:34px;height:34px;border-radius:9px;background:#fff;color:var(--navy);display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:17px}.brand-name{font-family:var(--font-display);font-weight:600;font-size:19px}.brand-sub{font-size:12px;color:#ffffffa6;margin-left:2px}.demo-pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:#ffffff14;border:1px solid rgba(255,255,255,.15);padding:5px 10px;border-radius:999px;color:#ffffffd9}.demo-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 8px var(--teal)}.tabs{display:flex;padding:0 28px;gap:4px;background:var(--cream);border-bottom:1px solid var(--rule)}.tab{background:transparent;border:0;border-bottom:3px solid transparent;padding:14px 22px;font-size:14px;font-weight:600;color:var(--ink-muted);display:flex;align-items:center;gap:8px;margin-bottom:-1px;transition:color .12s,border-color .12s}.tab:hover{color:var(--ink)}.tab.active{color:var(--navy);border-bottom-color:var(--navy)}.tab-icon{width:18px;height:18px;display:grid;place-items:center}.tab-icon svg{width:18px;height:18px}.cust{overflow-y:auto;padding:28px 28px 60px}.cust-inner{max-width:980px;margin:0 auto}.recovery-head{background:var(--paper);border:1px solid var(--rule);border-radius:18px;padding:22px 24px;margin-bottom:22px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;box-shadow:var(--shadow)}@media (max-width: 720px){.recovery-head{grid-template-columns:1fr;text-align:center}}.recovery-head img{width:90px;height:90px;border-radius:50%;object-fit:cover;border:4px solid white;box-shadow:var(--shadow)}.recovery-head h1{font-family:var(--font-display);font-size:26px;font-weight:600;margin:0 0 4px}.recovery-head .sub{font-size:13.5px;color:var(--ink-muted);margin:0 0 10px}.progress-track{height:8px;background:var(--cream);border-radius:4px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,var(--teal),var(--good));border-radius:4px;transition:width .6s ease}.progress-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-muted);margin-top:4px}.progress-labels strong{color:var(--ink);font-weight:600}.head-stat{text-align:right}.head-stat .num{font-family:var(--font-display);font-size:36px;line-height:1;font-weight:600;color:var(--good)}.head-stat .lab{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-top:4px}.section-h{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin:26px 0 12px}.card{background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:20px 22px;box-shadow:var(--shadow)}.card h3{font-family:var(--font-display);font-size:17px;font-weight:600;margin:0 0 6px;color:var(--ink)}.card .card-sub{font-size:12.5px;color:var(--ink-muted);margin:0 0 14px}.compare{position:relative;width:100%;aspect-ratio:16 / 10;background:var(--cream);border-radius:14px;overflow:hidden;border:1px solid var(--rule)}.compare img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.compare .compare-after{clip-path:inset(0 0 0 var(--split, 50%))}.compare-label{position:absolute;top:14px;padding:5px 12px;border-radius:999px;background:#142a4dd9;color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.compare-label.before{left:14px}.compare-label.after{right:14px}.compare-divider{position:absolute;top:0;bottom:0;left:var(--split, 50%);width:3px;background:#fff;box-shadow:0 0 12px #00000059;pointer-events:none}.compare-divider:after{content:"↔";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;background:#fff;border-radius:50%;color:var(--navy);display:grid;place-items:center;font-size:18px;font-weight:700;box-shadow:0 4px 14px #0000002e}.compare-slider-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width: 760px){.timeline{grid-template-columns:repeat(2,1fr)}}.milestone{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:14px 16px;position:relative}.milestone.current{border-color:var(--navy);box-shadow:0 0 0 3px #142a4d0f}.milestone.done{background:#1e8a5b0a;border-color:#1e8a5b40}.ms-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.ms-dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.milestone.done .ms-dot{background:var(--good)}.milestone.done .ms-dot:before{content:"✓"}.milestone.current .ms-dot{background:var(--navy)}.milestone.upcoming .ms-dot{background:var(--rule-strong);color:var(--ink-muted)}.ms-week{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.milestone.done .ms-week{color:var(--good)}.milestone.current .ms-week{color:var(--navy)}.ms-title{font-family:var(--font-display);font-size:15px;font-weight:600;margin:0 0 4px;color:var(--ink)}.ms-desc{font-size:12px;color:var(--ink-muted);margin:0 0 10px;line-height:1.5}.ms-thumb{width:100%;aspect-ratio:4 / 3;border-radius:8px;object-fit:cover;border:1px solid var(--rule);margin-bottom:8px}.ms-ai{font-size:11.5px;color:var(--ink-mid);background:var(--cream);border-left:2px solid var(--teal-dk);padding:8px 10px;border-radius:0 6px 6px 0;line-height:1.5}.ms-action{margin-top:10px;background:var(--navy);color:#fff;border:0;border-radius:999px;padding:8px 16px;font-size:12.5px;font-weight:600;width:100%}.ms-action:hover{background:var(--coral)}.ms-action.disabled,.ms-action:disabled{background:var(--rule-strong);cursor:not-allowed}.pain-check{background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:20px 22px}.pain-check h3{font-family:var(--font-display);font-size:17px;font-weight:600;margin:0 0 6px}.pain-check .pc-sub{font-size:12.5px;color:var(--ink-muted);margin:0 0 14px}.pain-scale{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.pain-dot{height:36px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--paper);font-size:11.5px;font-weight:600;color:var(--ink-muted);transition:background .12s,color .12s,transform .08s}.pain-dot:hover{background:var(--cream)}.pain-dot.selected{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-1px)}.pain-scale-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-muted);margin-top:6px}.pain-summary{margin-top:14px;font-size:13px;color:var(--ink-mid)}.pain-summary strong{color:var(--ink)}.svg-chart{width:100%;height:auto;display:block}.rrr-row{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:var(--paper);border:1px solid var(--rule);border-radius:14px}.rrr-stat{display:flex;align-items:baseline;gap:6px}.rrr-num{font-family:var(--font-display);font-size:30px;font-weight:600;color:var(--ink)}.rrr-unit{font-size:11.5px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.rrr-band{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--good-bg);color:var(--good);margin-left:8px}.rrr-link{font-size:12.5px;color:var(--ink-muted)}.rrr-link a{color:var(--coral);text-decoration:none;font-weight:600}.insurer{overflow-y:auto;padding:28px 28px 60px}.insurer-inner{max-width:1320px;margin:0 auto}.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}@media (max-width: 900px){.kpi-strip{grid-template-columns:repeat(2,1fr)}}.kpi{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:18px 20px}.kpi-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:6px}.kpi-value{font-family:var(--font-display);font-size:28px;font-weight:600;color:var(--ink);line-height:1.1}.kpi-sub{font-size:12px;color:var(--ink-muted);margin-top:4px}.kpi.highlight{background:linear-gradient(135deg,var(--navy),var(--navy-light));color:#fff;border-color:transparent}.kpi.highlight .kpi-label{color:#ffffffb3}.kpi.highlight .kpi-value{color:#fff}.kpi.highlight .kpi-sub{color:#ffffffb3}.insurer-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:8px}@media (max-width: 1080px){.insurer-grid{grid-template-columns:1fr}}.panel{background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:20px 22px}.panel h3{font-family:var(--font-display);font-size:17px;font-weight:600;margin:0 0 4px;color:var(--ink)}.panel .panel-sub{font-size:12.5px;color:var(--ink-muted);margin:0 0 14px}.outcomes-table{width:100%;border-collapse:collapse;font-size:13px}.outcomes-table th{text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);padding:8px 6px;border-bottom:1px solid var(--rule)}.outcomes-table td{padding:9px 6px;border-bottom:1px solid var(--rule);vertical-align:middle}.outcomes-table tr:hover td{background:var(--cream)}.outcomes-table .pet-cell{font-weight:600;color:var(--ink)}.outcomes-table .breed-cell{font-size:12px;color:var(--ink-muted)}.outcomes-table .num-cell{font-family:var(--font-mono)}.trend-pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em}.trend-pill.improving{background:var(--good-bg);color:var(--good)}.trend-pill.plateau{background:var(--warn-bg);color:var(--warn)}.trend-pill.concern{background:var(--bad-bg);color:var(--bad)}.status-pill{font-size:11px;font-weight:600;color:var(--ink-muted)}.vet-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:10px;padding:10px 0;border-bottom:1px dashed var(--rule);font-size:13px;align-items:center}.vet-row:last-child{border-bottom:0}.vet-row .vet-name{font-weight:600;color:var(--ink)}.vet-row .num-cell{font-family:var(--font-mono);text-align:right}.rev-bar{height:6px;background:var(--cream);border-radius:3px;overflow:hidden;position:relative}.rev-bar-fill{height:100%;background:linear-gradient(90deg,var(--good),var(--warn));border-radius:3px}.rev-bar-label{font-size:11px;color:var(--ink-muted);font-family:var(--font-mono);margin-top:2px}.actuarial{background:linear-gradient(135deg,var(--navy-dark),var(--navy-light));color:#fff;border-radius:16px;padding:22px 24px;margin-top:22px}.actuarial .eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin-bottom:8px}.actuarial h2{font-family:var(--font-display);font-size:26px;font-weight:600;margin:0 0 8px;letter-spacing:-.01em}.actuarial h2 .num{color:var(--teal)}.actuarial p{font-size:13.5px;margin:0;color:#ffffffc7}.drill{margin-top:22px}.drill-head{display:flex;gap:14px;align-items:center;margin-bottom:14px}.drill-head img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid white;box-shadow:var(--shadow)}.drill-head h3{font-family:var(--font-display);font-size:19px;font-weight:600;margin:0}.drill-head .ds{font-size:12.5px;color:var(--ink-muted)}@media (max-width: 700px){.topbar{padding:12px 16px}.brand-sub{display:none}.tabs{padding:0 16px}.cust,.insurer{padding:18px 16px 40px}}
