.bud-root{width:min(1180px,calc(100vw - 48px));margin:0 auto;padding:var(--rj-ref-space-8) 0 72px;color:var(--ink)}.bud-hero{background:var(--rj-ref-color-paper-a90);border:1px solid var(--line);border-radius:var(--rj-ref-radius-2xl);box-shadow:0 18px 50px var(--rj-ref-color-shadow-a08);padding:36px var(--rj-ref-space-10)}.bud-kicker{display:inline-block;font-size:var(--rj-ref-type-caption);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);font-weight:700}.bud-hero h1{margin:var(--rj-ref-space-2-5) 0 var(--rj-ref-space-3);font-family:var(--font-serif);font-size:var(--rj-preserved-type-clamp-1-7rem-3-4vw-2-6rem-06cb6e3563);line-height:1.2;color:var(--ink)}.bud-hero p{margin:0;max-width:64ch;color:var(--ink-soft);line-height:1.7}.bud-section{margin-top:var(--rj-ref-space-7);background:var(--rj-ref-color-paper-a90);border:1px solid var(--line);border-radius:var(--rj-ref-radius-2xl);box-shadow:0 18px 50px var(--rj-ref-color-shadow-a08);padding:var(--rj-ref-space-7) var(--rj-ref-space-8)}.bud-section>h2{margin:0 0 var(--rj-ref-space-1);font-family:var(--font-serif);font-size:var(--rj-preserved-type-clamp-1-2rem-2vw-1-6rem-cb5fa57807);color:var(--ink)}.bud-section>.bud-sub{margin:0 0 var(--rj-ref-space-5);color:var(--muted);font-size:var(--rj-ref-type-body-sm);line-height:1.6}.bud-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:var(--rj-ref-space-4);gap:var(--rj-ref-space-4)}.bud-card{border:1px solid var(--line);border-radius:var(--rj-ref-radius-panel);background:var(--paper);padding:var(--rj-ref-space-4-5) var(--rj-ref-space-4-5) var(--rj-ref-space-5);display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}.bud-card-tag{font-size:var(--rj-ref-type-caption);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-dark);font-weight:700}.bud-card h3{margin:var(--rj-ref-space-1-5) 0 var(--rj-ref-space-1);font-size:var(--rj-ref-type-body);font-family:var(--font-serif);color:var(--ink);line-height:1.4}.bud-card-meta{margin:0 0 var(--rj-ref-space-1-5);font-size:var(--rj-ref-type-caption);color:var(--muted);line-height:1.5}.bud-compare-scope{line-height:1.7}.bud-card-scope,.bud-compare-scope{margin:0 0 var(--rj-ref-space-3-5);font-size:var(--rj-ref-type-caption);color:var(--muted)}.bud-card-scope{line-height:1.5}.bud-card-lines{flex-direction:column;margin-top:auto}.bud-card-line,.bud-card-lines{display:flex;gap:var(--rj-ref-space-2)}.bud-card-line{justify-content:space-between;align-items:baseline;font-size:var(--rj-ref-type-label)}.bud-card-line>span{color:var(--muted)}.bud-card-line>strong{color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bud-card-total{margin-top:var(--rj-ref-space-3);padding-top:var(--rj-ref-space-3);border-top:1px dashed var(--line-strong)}.bud-card-total .bud-card-line>span{color:var(--accent-dark);font-weight:700}.bud-card-total .bud-card-line>strong{color:var(--accent-dark);font-size:var(--rj-ref-type-body)}.bud-price-bucket{margin-top:var(--rj-ref-space-4-5)}.bud-price-bucket:first-of-type{margin-top:var(--rj-ref-space-1)}.bud-price-bucket-head{display:flex;align-items:baseline;gap:var(--rj-ref-space-2-5);margin-bottom:var(--rj-ref-space-2-5)}.bud-price-bucket-tag{display:inline-block;font-size:var(--rj-ref-type-caption);letter-spacing:.06em;font-weight:800;padding:var(--rj-ref-space-0-5) var(--rj-ref-space-2);border-radius:var(--rj-ref-radius-pill);border:1px solid var(--line-strong);background:var(--paper);color:var(--muted);white-space:nowrap}.bud-price-bucket-label{font-size:var(--rj-ref-type-label);color:var(--muted);line-height:1.5}.bud-price-surprising_high .bud-price-bucket-tag{border-color:var(--accent);background:var(--accent-light);color:var(--accent-dark)}.bud-price-surprising_low .bud-price-bucket-tag{border-color:var(--rj-ref-color-gold-a45);background:var(--rj-ref-color-gold-a10);color:var(--rj-ref-color-accent-text)}.bud-price-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:var(--rj-ref-space-2-5);gap:var(--rj-ref-space-2-5)}.bud-price-card{position:relative;display:grid;grid-template-columns:84px minmax(0,1fr);grid-gap:var(--rj-ref-space-3);gap:var(--rj-ref-space-3);align-items:stretch;overflow:hidden;border:1px solid var(--line);border-radius:var(--rj-ref-radius-card);background:var(--paper);padding:var(--rj-ref-space-3) var(--rj-ref-space-3)}.bud-price-surprising_high .bud-price-card{border-color:color-mix(in srgb,var(--accent) 28%,var(--line));background:color-mix(in srgb,var(--accent-light) 55%,var(--paper))}.bud-price-surprising_low .bud-price-card{border-color:var(--rj-ref-color-gold-a28);background:var(--rj-ref-color-gold-a05)}.bud-price-card-visual{position:relative;display:grid;place-items:center;min-height:112px;border:1px solid var(--rj-ref-color-accent-a10);border-radius:var(--rj-ref-radius-md);background:radial-gradient(circle at 50% 42%,var(--paper) 0 24%,var(--rj-ref-color-accent-a06) 72%,transparent 100%)}.bud-price-illustration{width:72px;height:72px;flex:0 0 auto;background-image:url(/tools/budget/price-sense-atlas.webp);background-repeat:no-repeat;background-size:500% 400%;filter:saturate(.94) drop-shadow(0 5px 6px var(--rj-ref-color-ink-a12))}.bud-price-glyph{position:absolute;top:calc(var(--rj-ref-space-1) * -1);left:calc(var(--rj-ref-space-1) * -1);z-index:1;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--rj-preserved-color-rgba-143-61-32-0-45-207b5b9db9);border-radius:var(--rj-ref-radius-base);background:var(--rj-ref-color-accent-a06);font-family:var(--font-serif);font-size:var(--rj-ref-type-body);font-weight:700;line-height:1;color:var(--accent-dark)}.bud-price-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:var(--rj-ref-space-0-5)}.bud-price-name{font-size:var(--rj-ref-type-label);font-weight:700;color:var(--ink);line-height:1.35}.bud-price-amount{font-size:var(--rj-ref-type-body-sm);color:var(--accent-dark);font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bud-price-surprising_low .bud-price-amount{color:var(--rj-ref-color-accent-text)}.bud-price-note{margin-top:var(--rj-ref-space-0-5);font-size:var(--rj-ref-type-caption);color:var(--muted);line-height:1.45}.bud-price-regional{margin-top:var(--rj-ref-space-5);padding:var(--rj-ref-space-3) var(--rj-ref-space-4);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--rj-ref-radius-md);background:var(--rj-preserved-color-rgba-255-252-246-0-7-f25afbe938);color:var(--ink-soft);font-size:var(--rj-ref-type-label);line-height:1.65}.bud-price-regional strong{color:var(--ink);font-weight:800}.bud-calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-gap:var(--rj-ref-space-7);gap:var(--rj-ref-space-7);align-items:start;min-width:0}@media (max-width:900px){.bud-calc{grid-template-columns:1fr}}.bud-controls{gap:var(--rj-ref-space-4-5);min-width:0}.bud-controls,.bud-field{display:flex;flex-direction:column}.bud-field,.bud-field>label{gap:var(--rj-ref-space-1-5)}.bud-field>label{display:flex;align-items:center;font-size:var(--rj-ref-type-label);font-weight:500;color:var(--muted)}.bud-field>label:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}.bud-field>.bud-hint{font-size:var(--rj-ref-type-caption);color:var(--muted)}.bud-chips{display:flex;flex-wrap:wrap;gap:var(--rj-ref-space-1-5)}.bud-chip{border:1px solid var(--line-strong);border-radius:var(--rj-ref-radius-pill);background:var(--paper);color:var(--ink);padding:var(--rj-ref-space-1) var(--rj-ref-space-3);font-size:var(--rj-ref-type-caption);cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.bud-chip:hover{border-color:var(--accent)}.bud-chip.on{background:var(--accent-dark);border-color:var(--accent-dark);color:var(--rj-ref-color-white);font-weight:700}.bud-toggles{flex-direction:column}.bud-toggle,.bud-toggles{display:flex;gap:var(--rj-ref-space-2-5)}.bud-toggle{align-items:center;cursor:pointer;font-size:var(--rj-ref-type-label);color:var(--ink)}.bud-toggle input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.bud-toggle .bud-toggle-note{color:var(--muted);font-size:var(--rj-ref-type-caption)}.bud-toggle.is-locked{cursor:not-allowed;opacity:.55}.bud-toggle.is-locked input{cursor:not-allowed}.bud-result{min-width:0}.bud-result h3{margin:0 0 var(--rj-ref-space-0-5);font-size:var(--rj-ref-type-body-sm);font-family:var(--font-serif);color:var(--ink)}.bud-result-scope{margin:0 0 var(--rj-ref-space-4);font-size:var(--rj-ref-type-caption);color:var(--muted)}.bud-headline{display:flex;flex-direction:column;gap:var(--rj-ref-space-0-5);padding:var(--rj-ref-space-3-5) var(--rj-ref-space-4);margin-bottom:var(--rj-ref-space-4);border-radius:var(--rj-ref-radius-card);background:var(--accent-light);border:1px solid var(--accent)}.bud-headline>span{font-size:var(--rj-ref-type-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dark);font-weight:700}.bud-headline>strong{font-size:var(--rj-preserved-type-clamp-1-3rem-3vw-1-9rem-6ada45ce5c);color:var(--accent-dark);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.bud-headline .bud-meguyasu{font-size:var(--rj-ref-type-caption);color:var(--accent-dark);font-weight:600}.bud-table-scroll{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.bud-table{width:100%;border-collapse:collapse;font-size:var(--rj-ref-type-label)}.bud-table th{text-align:left;font-weight:700;color:var(--muted);font-size:var(--rj-ref-type-caption);padding:var(--rj-ref-space-1-5) 0;border-bottom:1px solid var(--line)}.bud-table th.bud-num{text-align:right}.bud-table td{padding:var(--rj-ref-space-2) 0;border-bottom:1px solid var(--line);color:var(--ink)}.bud-table td.bud-num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.bud-table td.bud-neg{color:var(--accent-dark)}.bud-table tr.bud-row-sub td{color:var(--muted);font-size:var(--rj-ref-type-caption);padding-left:var(--rj-ref-space-3-5)}.bud-table tr.bud-row-total td{font-weight:800;color:var(--accent-dark);border-bottom:none;padding-top:var(--rj-ref-space-3)}.bud-row-note{display:block;margin-top:var(--rj-ref-space-0-5);line-height:1.5}.bud-row-note,.bud-tag-meguyasu{font-size:var(--rj-ref-type-caption);color:var(--muted)}.bud-tag-meguyasu{display:inline-block;margin-left:var(--rj-ref-space-1-5);letter-spacing:.04em;border:1px solid var(--line);border-radius:var(--rj-ref-radius-sm);padding:var(--rj-ref-space-0-5) var(--rj-ref-space-1);vertical-align:middle}.bud-map{max-width:220px;margin:0 auto var(--rj-ref-space-2)}.bud-map .jpm{display:block;width:100%;padding:var(--rj-ref-space-2-5);border:1px solid var(--line);border-radius:var(--rj-ref-radius-card);background:var(--paper);box-shadow:var(--shadow-sm)}.bud-map .jpm svg{display:block;width:100%;height:auto;overflow:visible}.bud-map .jpm-loading{font-size:var(--rj-ref-type-caption);color:var(--muted);text-align:center;padding:var(--rj-ref-space-10) 0}.bud-map .jpm-pref{fill:var(--rj-ref-color-neutral-a05);stroke:var(--rj-ref-color-white);stroke-width:.5;transition:fill .12s ease}.bud-map .jpm-pref.absent{fill:var(--rj-ref-color-neutral-a05);pointer-events:none}.bud-map .jpm-pref.present,.bud-map .jpm-pref.sel{cursor:pointer}.bud-map .jpm-pref.present{fill:var(--rj-ref-color-accent-a22)}.bud-map .jpm-pref.jpm-hover{filter:brightness(.92)}.bud-map .jpm-pref.sel{fill:var(--accent)!important;stroke:var(--rj-ref-color-white)}.bud-map .jpm-pref.sel:hover{fill:var(--accent-dark)!important}@media (max-width:768px){.bud-map .jpm--coarse-visual .jpm-pref{pointer-events:none}}.bud-footer{margin-top:var(--rj-ref-space-8);padding:var(--rj-ref-space-4) var(--rj-ref-space-0-5) 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;color:var(--muted);font-size:var(--rj-ref-type-label);line-height:1.7}.bud-footer strong{color:var(--ink)}.bud-footer .bud-reviewed{color:var(--accent-dark);font-weight:700}.at-frame .bud-root{width:auto;max-width:none;padding:0 0 var(--rj-ref-space-3)}.bud-buckets{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--rj-ref-space-2-5);gap:var(--rj-ref-space-2-5);margin:var(--rj-ref-space-3) 0 var(--rj-ref-space-4)}.bud-bucket{border:1px solid var(--line);border-radius:var(--rj-ref-radius-md);padding:var(--rj-ref-space-2-5) var(--rj-ref-space-3);background:var(--rj-ref-color-raised-a70)}.bud-bucket-label{display:block;font-size:var(--rj-ref-type-caption);color:var(--muted);margin-bottom:var(--rj-ref-space-0-5)}.bud-bucket strong{font-family:var(--font-mono);font-size:var(--rj-ref-type-body)}.bud-note{margin:var(--rj-ref-space-1-5) 0 0;font-size:var(--rj-ref-type-caption);line-height:1.7;color:var(--muted)}.bud-handoff{display:flex;align-items:center;gap:var(--rj-ref-space-3);flex-wrap:wrap;margin-top:var(--rj-ref-space-3-5);padding-top:var(--rj-ref-space-3);border-top:1px dashed var(--line)}.bud-handoff-link{font-size:var(--rj-ref-type-label);color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}.bud-handoff-note{font-size:var(--rj-ref-type-caption);color:var(--muted)}@media (max-width:640px){.bud-buckets{grid-template-columns:1fr}.bud-root{width:min(100%,calc(100vw - 24px));padding-bottom:var(--rj-ref-space-10)}.bud-hero,.bud-section{border-radius:var(--rj-ref-radius-panel)}.bud-hero{padding:var(--rj-ref-space-6) var(--rj-ref-space-4-5)}.bud-section{margin-top:var(--rj-ref-space-4-5);padding:var(--rj-ref-space-5) var(--rj-ref-space-4)}.bud-handoff-link,.bud-toggle{min-height:var(--tap-min)}.bud-handoff-link{display:inline-flex;align-items:center}.bud-bucket-label,.bud-card-tag,.bud-field>.bud-hint,.bud-handoff-note,.bud-headline .bud-meguyasu,.bud-headline>span,.bud-kicker,.bud-map .jpm-loading,.bud-note,.bud-price-bucket-tag,.bud-price-note,.bud-result-scope,.bud-tag-meguyasu,.bud-toggle .bud-toggle-note{font-size:var(--rj-type-caption-size)}.bud-table,.bud-table th,.bud-table tr.bud-row-sub td{font-size:var(--rj-ref-type-label)}.bud-table td{min-height:44px}.bud-tag-meguyasu{margin-block:var(--rj-ref-space-0-5);padding:var(--rj-ref-space-0-5) var(--rj-ref-space-1-5)}}@media (min-width:641px) and (max-width:768px){.bud-handoff-link,.bud-toggle{min-height:var(--tap-min)}.bud-handoff-link{display:inline-flex;align-items:center}}