:root{--brand: #e2632f;--brand-deep: #c24a22;--brand-fill: #b0421d;--brand-fill-hover: #9a3a18;--brand-tint: #fff7ed;--brand-tint-2: #ffedd5;--teal: #38d6c8;--teal-deep: #0f766e;--teal-tint: #e6f7f4;--seg-cost: #7c6a5a;--seg-fee: #e09a52;--seg-shipping: #3f9e93;--seg-margin: #c24a22;--seg-loss: #c0392b;--ink: #171717;--ink-soft: #404040;--muted: #525252;--line: #f0e9e0;--line-strong: #e6dccd;--bg: #fffaf3;--card: #ffffff;--ok: #1f7a48;--ok-bg: #e8f3ec;--error: #c0392b;--error-bg: #fcebe9;--warn: #8a6100;--warn-bg: #fbf3df;--focus: rgba(226, 99, 47, .32);--shadow-card: 0 1px 2px rgba(67, 40, 20, .05), 0 18px 40px -26px rgba(120, 60, 25, .28);--shadow-soft: 0 1px 2px rgba(67, 40, 20, .06);--shadow-accent: 0 10px 22px -12px rgba(176, 66, 29, .55);--radius-lg: 22px;--radius: 16px;--radius-sm: 12px;--tap: 48px;--maxw: 600px;--font-sans: "Zen Kaku Gothic Antique", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic", system-ui, sans-serif;--font-serif: "Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--font-num: "Hanken Grotesk", "Zen Kaku Gothic Antique", system-ui, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.page{min-height:100vh;background:radial-gradient(130% 60% at 50% -8%,#fff1e2,#fff1e200 58%),linear-gradient(180deg,#fffaf3,#fffdfb 42%,#fffaf3)}.app{max-width:var(--maxw);margin:0 auto;padding:32px 16px 56px;display:flex;flex-direction:column;gap:16px}.view{display:flex;flex-direction:column;gap:16px}.applist{list-style:none;margin:0;padding:0;display:grid;gap:12px}.appcard{display:flex;align-items:center;gap:16px;padding:18px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}.appcard:hover{border-color:var(--brand);box-shadow:var(--shadow-card),inset 0 0 0 1px var(--brand)}.appcard:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.appcard__icon{flex:0 0 auto;width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:linear-gradient(140deg,var(--brand) 0%,var(--brand-deep) 100%);color:#fff;font-family:var(--font-serif);font-size:1.5rem;font-weight:700;line-height:1}.appcard__body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 auto}.appcard__name{font-size:1.05rem;font-weight:800;color:var(--ink)}.appcard__desc{font-size:.82rem;color:var(--muted);line-height:1.55}.appcard__arrow{flex:0 0 auto;color:var(--brand-deep);font-size:1.15rem;font-weight:700}.appcard--soon{opacity:.85;box-shadow:var(--shadow-soft);cursor:default}.appcard--soon .appcard__icon{background:var(--line-strong);color:var(--muted)}.appcard__badge{flex:0 0 auto;font-family:var(--font-num);font-size:.7rem;font-weight:700;color:var(--muted);background:var(--brand-tint);border:1px solid var(--line-strong);border-radius:999px;padding:3px 10px}.appnav{margin-bottom:-4px}.appnav__back{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:var(--brand-deep);text-decoration:none;padding:6px 2px}.appnav__back:hover{text-decoration:underline}.appnav__back:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}.hero__title:focus-visible{outline:none}.mission{display:flex;align-items:flex-start;gap:14px;background:linear-gradient(135deg,var(--brand-tint-2) 0%,var(--brand-tint) 100%);border:1px solid #f3d9b8;border-left:4px solid var(--brand);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow-soft)}.mission__badge{flex:0 0 auto;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--brand-fill);color:#fff;font-size:1rem;line-height:1}.mission__title{margin:0 0 4px;font-size:1rem;font-weight:700;line-height:1.55;color:var(--ink)}.mission__title strong{font-weight:800;background:linear-gradient(transparent 58%,#e2632f4d 58%);padding:0 2px}.mission__text{margin:0;font-size:.86rem;line-height:1.65;color:var(--ink-soft)}.hero{text-align:center;padding:8px 4px 4px}.hero__eyebrow{font-family:var(--font-num);font-size:.72rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--brand-deep);margin:0 0 12px}.hero__title{font-family:var(--font-serif);font-weight:700;font-size:clamp(1.75rem,6.4vw,2.35rem);letter-spacing:.02em;line-height:1.22;color:var(--ink);margin:0}.hero__rule{display:block;width:60px;height:3px;margin:16px auto;border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--brand-deep))}.hero__sub{font-size:.88rem;color:var(--muted);margin:0 auto;max-width:34em}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 18px;box-shadow:var(--shadow-card)}.card__label{display:flex;align-items:center;gap:10px;font-family:var(--font-sans);font-size:.94rem;font-weight:700;color:var(--ink);margin:0 0 16px;padding:0}.card__step{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:999px;background:var(--brand-tint);color:var(--brand-deep);font-family:var(--font-num);font-size:.82rem;font-weight:700;flex:0 0 auto}.card__step--alt{background:var(--teal-tint);color:var(--teal-deep);font-size:.9rem}.segmented{border:0;margin:0;padding:0;min-width:0}.segmented__group{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:var(--brand-tint);padding:6px;border-radius:var(--radius)}.segmented__item{position:relative}.segmented__item input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.segmented__label{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:8px 6px;font-size:.82rem;font-weight:600;color:var(--ink-soft);border-radius:11px;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.segmented__item input:checked+.segmented__label{background:var(--brand-fill);color:#fff;font-weight:700;box-shadow:var(--shadow-accent)}.segmented__item input:focus-visible+.segmented__label{outline:3px solid var(--focus);outline-offset:2px}.segmented__item:hover input:not(:checked)+.segmented__label{background:#ffffffb3;color:var(--brand-deep)}.ship{border:0;margin:0;padding:0;min-width:0}.ship__group{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ship__card{position:relative}.ship__card input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.ship__body{display:flex;align-items:center;gap:12px;min-height:66px;padding:13px 14px;border:1.5px solid var(--line-strong);border-radius:var(--radius);background:#fff;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.ship__icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--brand-tint);color:var(--brand-deep);font-size:1.15rem;flex:0 0 auto;transition:background .15s,color .15s}.ship__text{display:flex;flex-direction:column;gap:1px;min-width:0}.ship__name{font-weight:700;font-size:.98rem;color:var(--ink)}.ship__price{font-family:var(--font-num);color:var(--muted);font-size:.85rem}.ship__card input:checked+.ship__body{border-color:var(--brand);background:var(--brand-tint);box-shadow:inset 0 0 0 1px var(--brand)}.ship__card input:checked+.ship__body .ship__icon{background:var(--brand-fill);color:#fff}.ship__card input:checked+.ship__body .ship__price{color:var(--ink);font-weight:600}.ship__card input:checked+.ship__body:after{content:"✓";position:absolute;top:9px;right:12px;font-size:.8rem;font-weight:700;color:var(--brand-deep)}.ship__card input:focus-visible+.ship__body{outline:3px solid var(--focus);outline-offset:2px}.ship__card:hover input:not(:checked)+.ship__body{border-color:var(--brand)}.field{margin-bottom:18px}.field:last-child{margin-bottom:0}.field[hidden]{display:none}.field__label{display:block;font-size:.85rem;font-weight:700;margin-bottom:8px;color:var(--ink)}.field__label .unit{color:var(--muted);font-weight:400;font-size:.76rem;margin-left:2px}.moneyinput{position:relative;display:flex;align-items:center}.input{width:100%;min-height:52px;padding:13px 40px 13px 16px;font-family:var(--font-num);font-size:1.1rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink);background:#fff;border:1.5px solid var(--line-strong);border-radius:14px;-webkit-appearance:none;appearance:none;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:#cbbfb2;font-weight:400}.input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px var(--focus)}.moneyinput__suffix{position:absolute;right:16px;font-family:var(--font-num);color:var(--muted);font-size:.9rem;pointer-events:none}.field__hint{margin:7px 0 0;font-size:.75rem;color:var(--muted)}.presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.preset{flex:1 1 0;min-width:62px;min-height:42px;padding:8px 10px;font-family:var(--font-num);font-size:.88rem;font-weight:600;color:var(--ink-soft);background:#fff;border:1.5px solid var(--line-strong);border-radius:999px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.preset:hover{border-color:var(--brand);color:var(--brand-deep)}.preset:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.preset--active{background:var(--brand-fill);border-color:var(--brand-fill);color:#fff;box-shadow:var(--shadow-accent)}.result{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 20px;box-shadow:var(--shadow-card)}.result--empty{background:transparent;border:1.5px dashed var(--line-strong);box-shadow:none;text-align:center;padding:32px 20px}.result__placeholder{margin:0;color:var(--muted);font-size:.9rem}.result__placeholder-icon{display:block;font-size:1.7rem;color:var(--brand);opacity:.55;margin-bottom:6px}.result__message{margin:0 0 18px;padding:12px 15px;border-radius:var(--radius-sm);font-size:.86rem;font-weight:600;border:1px solid transparent}.result__message--error{background:var(--error-bg);color:var(--error);border-color:#f1c9c3}.result__message--warn{background:var(--warn-bg);color:var(--warn);border-color:#ecdcae}.result__main{background:linear-gradient(145deg,var(--brand-tint) 0%,#ffffff 72%);border:1px solid var(--line);border-radius:var(--radius);padding:18px 18px 20px;margin-bottom:18px}.result__headline-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:2px}.result__headline-label{font-family:var(--font-num);font-size:.76rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0}.badge{display:inline-block;font-family:var(--font-num);font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:4px 12px;border-radius:999px;flex:0 0 auto}.badge--ok{background:var(--ok-bg);color:var(--ok)}.badge--deficit{background:var(--error-bg);color:var(--error)}.result__headline-value{font-family:var(--font-num);font-size:clamp(2.4rem,9.5vw,3.2rem);font-weight:800;line-height:1.04;letter-spacing:-.015em;color:var(--brand-deep);font-variant-numeric:tabular-nums;margin:4px 0 0}.result__headline-value.is-deficit{color:var(--error)}.result__headline-sub{font-family:var(--font-num);font-size:1.05rem;font-weight:700;color:var(--ink);margin:8px 0 0}.result__note{font-size:.78rem;color:var(--muted);margin:12px 0 0}.chart{margin:0 0 18px;padding:0}.chart__title{font-family:var(--font-num);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}.chart__bar{position:relative;display:flex;width:100%;height:30px;border-radius:10px;overflow:hidden;background:var(--brand-tint);box-shadow:inset 0 0 0 1px var(--line)}.chart__seg{height:100%;min-width:0;transition:width .35s ease}.chart__seg+.chart__seg{box-shadow:inset 1px 0 #ffffff8c}.chart__seg--cost{background:var(--seg-cost)}.chart__seg--fee{background:var(--seg-fee)}.chart__seg--shipping{background:var(--seg-shipping)}.chart__seg--margin{background:var(--seg-margin)}.chart__loss{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(45deg,#c0392b33 0 7px,#c0392b8c 7px 14px)}.chart__marker{position:absolute;top:0;bottom:0;width:2px;background:var(--ink)}.chart__legend{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:9px 18px}.chart__legend-item{display:flex;align-items:center;gap:8px;font-size:.8rem;min-width:0}.chart__swatch{width:12px;height:12px;border-radius:3px;flex:0 0 auto}.chart__swatch--cost{background:var(--seg-cost)}.chart__swatch--fee{background:var(--seg-fee)}.chart__swatch--shipping{background:var(--seg-shipping)}.chart__swatch--margin{background:var(--seg-margin)}.chart__swatch--loss{background:var(--seg-loss)}.chart__legend-name{color:var(--muted);white-space:nowrap}.chart__legend-val{margin-left:auto;font-family:var(--font-num);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.chart__legend-val.is-deficit{color:var(--error)}.breakdown{width:100%;border-collapse:collapse;font-size:.9rem}.breakdown__caption{text-align:left;font-family:var(--font-num);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-bottom:8px}.breakdown th{text-align:left;font-weight:500;color:var(--ink-soft);padding:10px 12px 10px 0;border-bottom:1px solid var(--line);vertical-align:middle}.breakdown__note{display:block;font-size:.72rem;font-weight:400;color:var(--muted);margin-top:1px}.breakdown td{text-align:right;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap;color:var(--ink);padding:10px 0;border-bottom:1px solid var(--line);vertical-align:middle}.breakdown__total th,.breakdown__total td{font-weight:800}.breakdown__total:first-of-type th,.breakdown__total:first-of-type td{border-top:2px solid var(--line-strong);padding-top:13px}.breakdown__total:last-child th,.breakdown__total:last-child td{border-bottom:none}.breakdown td.is-positive{color:var(--ok)}.breakdown td.is-deficit{color:var(--error)}.result__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.btn{flex:1 1 auto;min-height:var(--tap);padding:12px 18px;font-family:var(--font-sans);font-size:.9rem;font-weight:700;color:var(--ink);background:#fff;border:1.5px solid var(--line-strong);border-radius:999px;cursor:pointer;transition:border-color .15s,background .15s,color .15s,box-shadow .15s,opacity .15s}.btn:hover{border-color:var(--brand);color:var(--brand-deep)}.btn:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.btn--primary{background:var(--brand-fill);border-color:var(--brand-fill);color:#fff;box-shadow:var(--shadow-accent)}.btn--primary:hover{background:var(--brand-fill-hover);border-color:var(--brand-fill-hover);color:#fff}.btn--ghost{background:transparent;border-color:transparent;color:var(--muted);box-shadow:none}.btn--ghost:hover{background:var(--brand-tint);border-color:transparent;color:var(--brand-deep)}.btn--sm{flex:0 0 auto;min-height:38px;padding:6px 14px;font-size:.82rem}.btn:disabled{opacity:.5;cursor:not-allowed;border-color:var(--line);background:#fff;color:var(--muted);box-shadow:none}.btn--primary:disabled{background:var(--line-strong);border-color:var(--line-strong);color:var(--muted)}.result__copy-status{margin:12px 0 0;font-size:.8rem;font-weight:600;color:var(--ok);min-height:1.2em}.result__copy-status.is-error{color:var(--error)}.history__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}.history__head .card__label{margin:0}.history__count{font-family:var(--font-num);color:var(--muted);font-weight:500;font-size:.82rem;margin-left:2px}.history__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.history__item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,var(--brand-tint) 0%,#fff 60%);transition:border-color .15s}.history__item:hover{border-color:var(--line-strong)}.history__info{min-width:0}.history__meta{font-family:var(--font-num);margin:0;font-size:.72rem;color:var(--muted);letter-spacing:.02em}.history__headline{margin:2px 0;font-size:.94rem;font-weight:700;color:var(--ink)}.history__sub{margin:0;font-size:.76rem;color:var(--muted)}.app__foot{text-align:center;margin-top:8px}.app__formula{font-family:var(--font-num);margin:0 0 6px;font-size:.76rem;color:var(--muted);line-height:1.8}.app__note{margin:0;font-size:.72rem;color:var(--muted)}.app__brand{font-family:var(--font-num);margin:14px 0 0;font-size:.7rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--brand-deep)}.analysis__lead{font-size:.82rem;color:var(--muted);margin:-6px 0 4px}.analysis__module{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.analysis__heading{font-family:var(--font-sans);font-size:.92rem;font-weight:700;color:var(--ink);margin:0 0 12px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.analysis__hint{font-size:.72rem;font-weight:400;color:var(--muted)}.analysis__inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.analysis__inputs .field{margin-bottom:0}.explore{background:linear-gradient(150deg,var(--brand-tint) 0%,#fff 80%);border:1px solid var(--line-strong);border-radius:var(--radius);padding:16px;margin-bottom:4px}.explore__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.explore__title{margin:0;font-size:.9rem;font-weight:700;color:var(--ink);display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.explore__readout{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:14px}.explore__rd-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.explore__rd-label{font-family:var(--font-num);font-size:.74rem;font-weight:600;letter-spacing:.06em;color:var(--muted)}.explore__rd-rate{margin:4px 0 0;font-family:var(--font-num);font-size:clamp(2.1rem,8vw,2.7rem);font-weight:800;line-height:1.05;letter-spacing:-.015em;color:var(--brand-deep);font-variant-numeric:tabular-nums}.explore__rd-rate.is-deficit{color:var(--error)}.explore__rd-amt{margin:4px 0 0;font-family:var(--font-num);font-size:.98rem;font-weight:700;color:var(--ink)}.explore__rd-delta{margin:8px 0 0;font-family:var(--font-num);font-size:.82rem;font-weight:600;color:var(--muted)}.explore__rd-delta.is-up{color:var(--ok)}.explore__rd-delta.is-down{color:var(--error)}.explore__sliders{display:flex;flex-direction:column;gap:14px}.slider__top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.slider__label{font-size:.82rem;font-weight:700;color:var(--ink)}.slider__val{font-family:var(--font-num);font-size:.95rem;font-weight:800;color:var(--brand-deep);font-variant-numeric:tabular-nums}.slider__input{width:100%;height:30px;margin:0;cursor:pointer;accent-color:var(--brand-fill);background:transparent}.slider__input:focus-visible{outline:3px solid var(--focus);outline-offset:4px;border-radius:6px}.viz{margin:0;padding:0}.viz__svg{width:100%}.viz-svg{display:block;width:100%;height:auto;overflow:visible}.viz-svg text{font-family:var(--font-num)}.viz-plot{fill:#fffaf3;stroke:var(--line);stroke-width:1}.viz-zero{stroke:var(--line-strong);stroke-width:1.2}.viz-target{stroke:var(--brand);stroke-width:1.2;stroke-dasharray:4 3;opacity:.8}.viz-line{fill:none;stroke-linejoin:round;stroke-linecap:round}.viz-line--primary{stroke:var(--brand-deep);stroke-width:2.5}.viz-line--secondary{stroke:var(--seg-shipping);stroke-width:1.5;stroke-dasharray:4 3}.viz-vmarker{stroke:var(--ink);stroke-width:1;stroke-dasharray:2 3;opacity:.4}.viz-vmarker--target{stroke:var(--brand);opacity:.7}.viz-current-line{stroke:var(--brand);stroke-width:1.4;opacity:.55}.viz-dot{fill:var(--brand-deep);stroke:#fff;stroke-width:1.5}.viz-tick{font-size:9px;fill:var(--muted)}.viz-tick--y{text-anchor:end}.viz-tick--mut{fill:#6f655a}.viz-tick--cur{fill:var(--brand-deep);font-weight:700}.viz-tick--target{fill:var(--brand-deep);font-weight:600}.viz-base-line{stroke:var(--ink);stroke-width:1;stroke-dasharray:2 2;opacity:.4}.viz-bar--price{fill:var(--brand)}.viz-bar--cost{fill:var(--seg-cost)}.viz-bar--shipping{fill:var(--seg-shipping)}.viz-bar-label{font-size:11px;font-weight:700;fill:var(--ink)}.viz-bar-sub{font-size:8.5px;fill:var(--muted)}.viz-bar-val{font-size:10px;font-weight:700;fill:var(--ink)}.viz-area{fill:#c24a221f}.viz-area--neg{fill:#c0392b1f}.viz-pin{fill:#fff;stroke:var(--ink);stroke-width:1.5}.viz-pin-dot{fill:var(--ink)}.viz-contour{fill:none;stroke:#1f1a16}.viz-contour--zero{stroke-width:1.6}.viz-contour--target{stroke-width:1.4;stroke-dasharray:4 3;opacity:.85}.viz__legend{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px}.viz__legend-item{display:flex;align-items:center;gap:6px;font-size:.76rem;color:var(--muted)}.viz__key{width:18px;height:4px;border-radius:2px;flex:0 0 auto}.viz__key--primary{background:var(--brand-deep)}.viz__key--secondary{background:repeating-linear-gradient(90deg,var(--seg-shipping) 0 4px,transparent 4px 7px)}.viz__key--be{background:var(--line-strong)}.viz__key--target{background:repeating-linear-gradient(90deg,var(--brand) 0 4px,transparent 4px 7px)}.viz__caption{font-size:.74rem;color:var(--muted);margin:8px 0 0}.gap-track--loss{fill:var(--error);opacity:.22}.gap-track--ok{fill:var(--brand-tint-2)}.gap-target{stroke:var(--brand);stroke-width:1.5}.gap-target--done{stroke:var(--ok)}.gap__note{margin:10px 0 0;font-size:.82rem;font-weight:700}.gap__note.is-ok{color:var(--ok)}.gap__note.is-deficit{color:var(--error)}.gap__refs{list-style:none;margin:12px 0 0;padding:0}.gap__ref{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:.8rem;padding:7px 0;border-bottom:1px solid var(--line)}.gap__ref:last-child{border-bottom:none}.gap__ref-target{color:var(--ink);font-weight:700;flex:0 0 auto}.gap__ref-action{font-family:var(--font-num);color:var(--muted);text-align:right}.gap__ref-action.is-ok{color:var(--ok);font-weight:700}.qty__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}.stat{background:var(--brand-tint);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.stat__k{font-size:.72rem;color:var(--muted)}.stat__v{font-family:var(--font-num);font-weight:800;font-size:1.02rem;color:var(--ink);font-variant-numeric:tabular-nums}.stat.is-deficit .stat__v{color:var(--error)}.valhead__top{display:flex;align-items:center;justify-content:space-between;gap:10px}.valhead__label{font-family:var(--font-num);font-size:.78rem;font-weight:600;letter-spacing:.06em;color:var(--muted)}.valhead__cap{margin:6px 0 0;font-family:var(--font-num);font-size:clamp(2.4rem,11vw,3.4rem);font-weight:800;line-height:1.02;letter-spacing:-.02em;color:var(--brand-deep);font-variant-numeric:tabular-nums}.valhead__cap.is-deficit{color:var(--error)}.valhead__sub{margin:8px 0 0;font-family:var(--font-num);font-size:.92rem;font-weight:600;color:var(--ink-soft)}.vmult{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.vmult__premium{margin:10px 0 0;font-family:var(--font-num);font-size:.84rem;font-weight:700}.vmult__premium.is-up{color:var(--ok)}.vmult__premium.is-down{color:var(--error)}.vmult__premium.is-neutral{color:var(--muted)}.vmult__hint{margin:6px 0 0;font-size:.78rem;color:var(--muted)}.vmult__hint strong{color:var(--brand-deep)}.val-toggle{display:flex;align-items:flex-start;gap:8px;margin:-4px 0 14px;font-size:.8rem;color:var(--ink-soft);cursor:pointer}.val-toggle input{flex:0 0 auto;width:17px;height:17px;margin-top:1px;accent-color:var(--brand-fill);cursor:pointer}.val-toggle input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.vctls{display:flex;flex-direction:column;gap:16px;margin-top:14px}.vctl__top{display:flex;align-items:center;justify-content:space-between;gap:10px}.vctl__label{font-size:.85rem;font-weight:700;color:var(--ink)}.vctl__field{display:inline-flex;align-items:baseline;gap:4px}.vctl__num{width:11ch;text-align:right;font-family:var(--font-num);font-weight:800;font-size:.95rem;color:var(--ink);background:#fff;border:1.5px solid var(--line-strong);border-radius:8px;padding:5px 8px;-webkit-appearance:none;appearance:none}.vctl__num:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--focus)}.vctl__unit{font-size:.78rem;color:var(--muted)}.vctl__range{display:block;margin-top:8px}.vt-track{fill:var(--brand-tint);stroke:var(--line);stroke-width:1}.vt-seg--cost{fill:var(--seg-cost)}.vt-seg--profit{fill:var(--seg-margin)}.vt-loss{fill:var(--seg-loss);opacity:.55}.vt-marker{stroke:var(--ink);stroke-width:1.5}.vt-swatch--cost{background:var(--seg-cost)}.vt-swatch--profit{background:var(--seg-margin)}.vt-swatch--loss{background:var(--seg-loss)}.vt-axis{stroke:var(--ink);stroke-width:1;stroke-dasharray:2 2;opacity:.4}.vt-label{font-size:11px;font-weight:700;fill:var(--ink)}.vt-bar--pos{fill:var(--ok)}.vt-bar--neg{fill:var(--error)}.vt-val{font-size:10px;font-weight:700;fill:var(--ink)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:430px){.segmented__label{font-size:.76rem;padding:8px 4px;letter-spacing:-.01em}.ship__body{padding:12px;gap:10px}.ship__icon{width:36px;height:36px;font-size:1.05rem}.ship__name{font-size:.92rem}}@media(max-width:360px){.segmented__group{grid-template-columns:1fr}.result__headline-value{font-size:2.2rem}}@media(min-width:640px){.app{padding-top:44px}.card,.result{padding:24px 22px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media(prefers-contrast:more){.input,.ship__body,.preset,.btn,.card{border-color:var(--ink)}}
