:root{--r-ink:#101827;--r-muted:#536276;--r-line:#d9e2ee;--r-soft:#f3f6fa;--r-blue:#174a86;--r-gold:#b08026;--r-red:#9b2c2c}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--r-ink);font:16px/1.55 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}[hidden]{display:none!important}
.ravv-header{min-height:70px;padding:12px clamp(20px,4vw,70px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--r-ink);color:#fff}.ravv-brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:13px;font-weight:800;line-height:1.05}.ravv-brand>span>span{color:var(--r-gold)}.ravv-header nav{display:flex;align-items:center;gap:18px;font-size:14px}.ravv-header nav>a{color:#fff;text-decoration:none}
.ravv-hero{padding:56px clamp(20px,4.8vw,88px) 40px;background:linear-gradient(145deg,#eef3f9,#fff 74%)}.ravv-hero h1{max-width:900px;margin:0 0 14px;font-size:clamp(34px,4.4vw,56px);line-height:1.06;letter-spacing:-.03em}.ravv-hero>p:last-child{max-width:760px;margin:0;color:var(--r-muted);font-size:18px}
.ravv-breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;color:var(--r-muted);font-size:12px}.ravv-eyebrow{margin:26px 0 10px;color:var(--r-blue);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.ravv-workspace{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:start;padding:40px clamp(20px,4.8vw,88px) 64px}
.ravv-card{min-width:0;padding:28px;border:1px solid var(--r-line);border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(16,24,39,.06)}.ravv-panel{position:sticky;top:18px}.ravv-panel h2{margin:0 0 12px;font-size:clamp(22px,2.4vw,28px);line-height:1.2}.ravv-panel #ravvEmpty .ravv-eyebrow{margin-top:0}
.ravv-field{display:grid;gap:6px;margin:0 0 18px;border:0;padding:0}.ravv-field label,.ravv-field legend{font-weight:700;font-size:14px}.ravv-field small,.ravv-muted,.ravv-fine{color:var(--r-muted);font-size:13px}
.ravv-field input:not([type=checkbox]):not([type=radio]){width:100%;min-height:44px;padding:9px 12px;border:1px solid #c6d1df;border-radius:10px;background:#fff}.ravv-field input:disabled{background:var(--r-soft);color:#8a96a8}
.ravv-check{display:flex!important;align-items:flex-start;gap:9px;font-weight:400!important;font-size:14px;margin:4px 0 12px}.ravv-check input{margin-top:4px}.ravv-choice label{display:flex;gap:9px;font-weight:400;font-size:15px}
.ravv-warning{margin:0 0 16px;padding:12px 14px;border-left:4px solid var(--r-red);border-radius:8px;background:#fdf1f1;color:#5c1d1d;font-size:14px}
.ravv-primary{width:100%;min-height:50px;padding:12px 18px;border:0;border-radius:10px;background:var(--r-blue);color:#fff;font-weight:800}.ravv-primary:disabled{opacity:.55;cursor:not-allowed}.ravv-secondary{min-height:44px;padding:10px 16px;border:1px solid var(--r-blue);border-radius:10px;background:#fff;color:var(--r-blue);font-weight:800}.ravv-text-button{margin-top:14px;padding:0;border:0;background:none;color:var(--r-blue);font-weight:700;text-decoration:underline}
.ravv-feedback{min-height:22px;margin:12px 0 0;font-size:14px;color:var(--r-muted)}.ravv-feedback.is-error{color:var(--r-red)}
.ravv-blur{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 22px}.ravv-blur div{padding:16px;border-radius:12px;background:var(--r-soft);border:1px dashed #b9c5d6}.ravv-blur span{display:block;color:var(--r-muted);font-size:13px}.ravv-blur strong{font-size:22px;letter-spacing:.06em;filter:blur(1.5px);user-select:none}
.ravv-list{margin:16px 0;padding-left:20px;color:var(--r-muted);font-size:14px}.ravv-list li{margin:4px 0}.ravv-plan{margin-top:18px;padding:18px;border-radius:12px;background:#fbf6ea;border:1px solid #ecdcb5}.ravv-plan p{margin:0 0 12px;font-size:14px}
.ravv-table-wrap{overflow-x:auto}.ravv-table{width:100%;border-collapse:collapse;font-size:14px}.ravv-table th,.ravv-table td{padding:9px 8px;border-bottom:1px solid var(--r-line);text-align:left}.ravv-table td:nth-child(n+2),.ravv-table th:nth-child(n+2){text-align:right;white-space:nowrap}
.ravv-totals{margin:16px 0}.ravv-totals div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid var(--r-soft)}.ravv-totals dt{color:var(--r-muted)}.ravv-totals dd{margin:0;font-weight:700;text-align:right}.ravv-grand dt,.ravv-grand dd{color:var(--r-ink);font-size:19px;font-weight:800}
.ravv-letter{margin:18px 0;padding:14px 16px;border:1px solid var(--r-line);border-radius:12px}.ravv-letter summary{font-weight:800;cursor:pointer}.ravv-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;margin-top:14px}.ravv-grid .ravv-field{margin-bottom:12px}
.ravv-note{margin:16px 0;color:var(--r-muted);font-size:13px}.ravv-audit{margin-top:18px;padding:18px;border-radius:12px;background:var(--r-ink);color:#fff}.ravv-audit p{margin:0}.ravv-audit a{color:#f0d18a;font-weight:800}
.ravv-subscription{margin-top:18px;padding-top:14px;border-top:1px solid var(--r-line);font-size:14px}.ravv-subscription p{margin:0}
.ravv-info{padding:20px clamp(20px,4.8vw,88px) 70px}.ravv-disclaimer{max-width:900px;padding:16px 18px;border-radius:12px;background:var(--r-soft);color:var(--r-muted);font-size:14px}.ravv-faq{max-width:900px;margin-top:36px}.ravv-faq h2{font-size:clamp(26px,3vw,36px)}.ravv-faq details{padding:14px 0;border-bottom:1px solid var(--r-line)}.ravv-faq summary{font-weight:700;cursor:pointer}.ravv-faq p{margin:10px 0 0;color:var(--r-muted)}
.ravv-footer{display:flex;flex-wrap:wrap;gap:18px;padding:24px clamp(20px,4.8vw,88px);background:var(--r-ink);color:#cfd6e1;font-size:13px}.ravv-footer a{color:#cfd6e1}
@media(max-width:900px){.ravv-workspace{grid-template-columns:1fr}.ravv-panel{position:static}}
@media(max-width:560px){.ravv-card{padding:20px}.ravv-grid,.ravv-blur{grid-template-columns:1fr}.ravv-header nav>a{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.ravv-field select{width:100%;min-height:44px;padding:9px 12px;border:1px solid #c6d1df;border-radius:10px;background:#fff;font:inherit}
.ravv-scope{margin:12px 0 0;color:var(--r-muted);font-size:13px}
.ravv-sources{max-width:900px;margin-top:36px}.ravv-sources h2{font-size:clamp(22px,2.6vw,30px)}.ravv-sources ul{padding-left:20px;color:var(--r-muted);font-size:14px}.ravv-sources a{color:var(--r-blue)}
.ravv-years td:first-child{white-space:nowrap}
.ravv-blur{grid-template-columns:repeat(3,1fr)}@media(max-width:560px){.ravv-blur{grid-template-columns:1fr}}
