body{background:var(--calc-bg-page,#0d1117);min-height:100vh;color:var(--calc-text-primary,#f8fafc);font-family:var(--calc-font-body,"Inter", system-ui, sans-serif);margin:0;line-height:1.6}.cac-app{--cac-accent:var(--calc-cyan,#22d3ee);--cac-accent-soft:#22d3ee1a;--cac-nested:#ffffff08;--cac-nested-border:var(--calc-border-subtle,#f0f6fc0f);--cac-good:var(--calc-emerald,#34d399);--cac-bad:var(--calc-rose,#fb7185);--cac-warn:var(--calc-amber,#f59e0b);--cac-info:var(--calc-sky,#60a5fa)}[data-theme=light] .cac-app{--cac-accent:#0891b2;--cac-accent-soft:#0891b21a;--cac-nested:#f0f4f9;--cac-nested-border:#0000001a}.cac-app .hidden,.cac-app [hidden]{display:none}.main-container{max-width:1400px;margin:0 auto;padding:24px 20px 40px}.cac-header{text-align:center;max-width:760px;margin:0 auto 24px}.page-title{font-family:var(--calc-font-headline,"Plus Jakarta Sans", sans-serif);letter-spacing:-.02em;color:var(--calc-text-primary,#f8fafc);margin:0 0 10px;font-size:clamp(1.9rem,4vw,2.5rem);font-weight:800;line-height:1.15}.page-subtitle{color:var(--calc-text-muted,#a8b8cc);margin:0;font-size:.98rem;line-height:1.6}.cac-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.cac-kpi{background:var(--cac-nested);border:1px solid var(--cac-nested-border);border-top:3px solid var(--kpi-accent,var(--cac-accent));border-radius:var(--calc-radius-md,12px);flex-direction:column;gap:6px;min-width:0;padding:14px 16px;display:flex;position:relative}.cac-kpi--cac{--kpi-accent:var(--cac-accent)}.cac-kpi--ratio{--kpi-accent:var(--cac-good)}.cac-kpi--payback{--kpi-accent:var(--cac-info)}.cac-kpi__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 8px;min-height:22px;display:flex}.cac-kpi__label{white-space:nowrap;font-family:var(--calc-font-mono,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--calc-text-muted,#a8b8cc);font-size:.7rem;font-weight:600}.cac-kpi__note{color:var(--calc-text-dim,#7b90a8);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.cac-kpi__value{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary,#f8fafc);overflow-wrap:anywhere;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;line-height:1.1}.cac-kpi__sub{color:var(--calc-text-dim,#7b90a8);font-size:.78rem}.cac-profit{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-muted,#a8b8cc);margin-left:4px;font-weight:700}.cac-profit.stat-pos,.stat-val.stat-pos{color:var(--cac-good)}.cac-profit.stat-neg,.stat-val.stat-neg{color:var(--cac-bad)}.bench-track{background:var(--cac-nested);border:1px solid var(--cac-nested-border);border-radius:999px;height:6px;overflow:hidden}.bench-bar{background:var(--calc-text-dim,#7b90a8);border-radius:999px;width:0%;height:100%;transition:width .5s,background-color .3s}.bench-bar--good{background:var(--cac-good)}.bench-bar--bad{background:var(--cac-bad)}.bench-badge{border:1px solid var(--cac-nested-border);background:var(--cac-nested);color:var(--calc-text-muted,#a8b8cc);border-radius:6px;align-self:flex-start;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.bench-badge--good{color:var(--cac-good);background:#34d3991a;border-color:#34d3994d}.bench-badge--bad{color:var(--cac-bad);background:#fb71851a;border-color:#fb71854d}[data-theme=light] .bench-badge--good{color:#14532d;background:#f0fdf4;border-color:#16a34a4d}[data-theme=light] .bench-badge--bad{color:#9f1239;background:#fff1f2;border-color:#e11d484d}.formula-strip{background:var(--calc-bg-card,#161b22);border:1px solid var(--calc-border-default,#f0f6fc1a);border-left:3px solid var(--cac-accent);border-radius:var(--calc-radius-sm,8px);font-family:var(--calc-font-mono,monospace);color:var(--calc-text-muted,#a8b8cc);flex-wrap:wrap;align-items:center;gap:4px;padding:9px 14px;font-size:.82rem;display:flex}.fs-label{color:var(--calc-text-muted,#a8b8cc);font-style:italic}.fs-op{color:var(--calc-text-dim,#7b90a8)}.fs-val{color:var(--cac-accent);font-weight:600}.fs-result{color:var(--calc-text-primary,#f8fafc);font-weight:700}.fs-unit{color:var(--calc-text-dim,#7b90a8);font-size:.75rem;font-weight:400}.cac-secondary-btn{border-radius:var(--calc-radius-sm,8px);border:1px solid var(--calc-border-default,#f0f6fc1a);background:var(--calc-bg-card,#161b22);color:var(--calc-text-muted,#a8b8cc);cursor:pointer;padding:8px 14px;font-size:.82rem;font-weight:600;transition:border-color .2s,color .2s}.cac-secondary-btn:hover,.cac-secondary-btn:focus-visible{border-color:var(--cac-accent);color:var(--cac-accent)}.cac-layout{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:18px;display:grid}.cac-inputs{flex-direction:column;gap:14px;min-width:0;display:flex}.cac-dashboard{background:var(--calc-bg-card,#161b22);border:1px solid var(--calc-border-default,#f0f6fc1a);border-radius:var(--calc-radius-lg,16px);min-width:0;box-shadow:var(--calc-shadow-card,none);flex-direction:column;gap:14px;padding:20px;display:flex}.cac-dashboard__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.cac-dashboard__title{font-family:var(--calc-font-mono,monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--calc-text-muted,#a8b8cc);margin:0;font-size:.72rem;font-weight:700}.cac-dashboard .formula-strip,.cac-dashboard .stat-item-new,.cac-dashboard .insight-block,.cac-dashboard .cac-panel,.cac-dashboard .cac-chart-card,.cac-dashboard .cac-secondary-btn{background:var(--cac-nested);border-color:var(--cac-nested-border);box-shadow:none}.cac-dashboard .formula-strip,.cac-dashboard .insight-block{border-left-color:var(--cac-accent)}.cac-dashboard .cac-chart-card{padding:14px}.cac-dashboard .cac-chart-panel{background:0 0;border:none;padding:0}.cac-card,.cac-panel{background:var(--calc-bg-card,#161b22);border:1px solid var(--calc-border-default,#f0f6fc1a);border-radius:var(--calc-radius-md,12px);box-shadow:var(--calc-shadow-card,none)}.cac-card{padding:18px}.cac-panel{padding:14px 16px}.cac-card__title{font-family:var(--calc-font-headline,sans-serif);color:var(--calc-text-primary,#f8fafc);align-items:center;gap:8px;margin:0 0 14px;font-size:.95rem;font-weight:700;display:flex}.cac-card__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.cac-card__dot--cyan{background:var(--cac-accent)}.cac-card__dot--emerald{background:var(--cac-good)}.cac-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.cac-fields--compact{gap:10px}.cac-field{flex-direction:column;gap:6px;min-width:0;display:flex}.cac-field--wide{grid-column:1/-1}.cac-field--divided{border-top:1px solid var(--calc-border-subtle,#f0f6fc0f);margin-top:14px;padding-top:14px}.cac-label{color:var(--calc-text-muted,#a8b8cc);font-size:.8rem;font-weight:600}.cac-label__opt{color:var(--calc-text-dim,#7b90a8);font-weight:400}.cac-hint{color:var(--calc-text-dim,#7b90a8);margin:4px 0 10px;font-size:.78rem;line-height:1.5}.cac-app .input-with-unit>input{font-family:var(--calc-font-mono,monospace)}.input-with-unit--sm>input{padding:7px 10px;font-size:.88rem}.input-with-unit--sm .input-prefix,.input-with-unit--sm .input-unit{padding:0 9px}.cac-select{cursor:pointer;width:100%}.cac-total{background:var(--cac-nested);border:1px solid var(--cac-nested-border);border-radius:var(--calc-radius-sm,8px);justify-content:space-between;align-self:end;align-items:center;padding:8px 12px;display:flex}.cac-total__label{letter-spacing:.06em;text-transform:uppercase;color:var(--calc-text-dim,#7b90a8);font-size:.72rem;font-weight:600}.cac-total__value{font-family:var(--calc-font-mono,monospace);color:var(--cac-good);font-weight:700}.cac-ltv-hero{text-align:center;background:var(--cac-nested);border-radius:var(--calc-radius-sm,8px);border:1px solid #34d39940;margin-top:16px;padding:14px}.cac-ltv-hero__label{font-family:var(--calc-font-mono,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--calc-text-muted,#a8b8cc);font-size:.7rem;font-weight:600;display:block}.cac-ltv-hero__value{font-family:var(--calc-font-mono,monospace);color:var(--cac-good);margin:4px 0 2px;font-size:1.7rem;font-weight:700}.cac-ltv-hero__note{color:var(--calc-text-dim,#7b90a8);font-size:.74rem}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--calc-border-default,#f0f6fc1a);background:var(--cac-nested);color:var(--calc-text-muted,#a8b8cc);font-family:var(--calc-font-mono,monospace);cursor:pointer;white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.74rem;transition:border-color .2s,color .2s,background-color .2s}.chip:hover,.chip:focus-visible{border-color:var(--cac-accent);color:var(--cac-accent)}.chip.chip-active{border-color:var(--cac-accent);background:var(--cac-accent-soft);color:var(--cac-accent);font-weight:700}.section-toggle,.cac-panel__toggle{cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:0;font-family:inherit;transition:color .15s;display:flex}.section-toggle{color:var(--cac-accent);margin-top:14px;font-size:.82rem;font-weight:600}.section-toggle svg{flex-shrink:0;width:14px;height:14px;transition:transform .25s}.cac-panel__toggle{color:var(--calc-text-primary,#f8fafc);justify-content:space-between;font-size:.9rem;font-weight:700}.cac-panel__toggle:hover,.section-toggle:hover{color:var(--cac-accent)}.cac-chevron{width:16px;height:16px;color:var(--calc-text-dim,#7b90a8);flex-shrink:0;transition:transform .25s}[aria-expanded=true]>.cac-chevron,[aria-expanded=true]>svg{transform:rotate(90deg)}.advanced-content,.expandable-content{opacity:0;max-height:0;transition:max-height .35s ease-out,opacity .25s ease-out;overflow:hidden}.advanced-content.expanded,.expandable-content.expanded{opacity:1;max-height:1400px}.advanced-content{border-left:2px solid var(--calc-border-default,#f0f6fc1a);margin-top:8px;padding-left:12px}.cac-stats{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;display:grid}.stat-item-new{background:var(--calc-bg-card,#161b22);border:1px solid var(--calc-border-default,#f0f6fc1a);border-radius:var(--calc-radius-sm,8px);flex-direction:column;gap:4px;padding:10px 12px;display:flex}.stat-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--calc-text-dim,#7b90a8);font-size:.68rem;font-weight:600}.stat-val{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary,#f8fafc);font-size:1rem;font-weight:700}.alert-stack{flex-direction:column;gap:8px;display:flex}.alert-stack:empty{display:none}.alert-msg{border-radius:var(--calc-radius-sm,8px);align-items:flex-start;gap:8px;padding:10px 12px;font-size:.82rem;line-height:1.5;display:flex}.alert-msg:before{flex-shrink:0;font-weight:700}.alert-error{color:#fecdd3;background:#fb71851a;border:1px solid #fb71854d}.alert-error:before{content:"✕";color:var(--cac-bad)}.alert-warning{color:#fde68a;background:#f59e0b1a;border:1px solid #f59e0b4d}.alert-warning:before{content:"!";color:var(--cac-warn)}.alert-info{color:#bfdbfe;background:#60a5fa1a;border:1px solid #60a5fa4d}.alert-info:before{content:"i";color:var(--cac-info)}[data-theme=light] .alert-error{color:#7f1d1d;background:#fff1f2;border-color:#ef444459}[data-theme=light] .alert-warning{color:#78350f;background:#fffbeb;border-color:#d9770659}[data-theme=light] .alert-info{color:#1e3a5f;background:#eff6ff;border-color:#3b82f659}.insight-block{background:var(--calc-bg-card,#161b22);border:1px solid var(--calc-border-default,#f0f6fc1a);border-left:3px solid var(--cac-accent);border-radius:var(--calc-radius-sm,8px);color:var(--calc-text-muted,#a8b8cc);padding:12px 14px;font-size:.88rem;line-height:1.65}.insight-block p{margin:0}.insight-block strong{color:var(--calc-text-primary,#f8fafc)}.channel-list{flex-direction:column;gap:8px;display:flex}.channel-line{grid-template-columns:110px minmax(0,1fr) minmax(0,.8fr) 78px;align-items:center;gap:8px;display:grid}.channel-line--head{letter-spacing:.06em;text-transform:uppercase;color:var(--calc-text-dim,#7b90a8);font-size:.68rem;font-weight:600}.channel-name{color:var(--calc-text-muted,#a8b8cc);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:500;overflow:hidden}.channel-input-wrap{background:var(--calc-bg-input,#21262d);border:1px solid var(--calc-border-default,#f0f6fc1a);border-radius:6px;align-items:center;min-width:0;display:flex}.channel-input-wrap:focus-within{border-color:var(--cac-accent)}.channel-input-prefix{color:var(--calc-text-dim,#7b90a8);padding-left:8px;font-size:.78rem}.channel-input{box-sizing:border-box;background:var(--calc-bg-input,#21262d);border:1px solid var(--calc-border-default,#f0f6fc1a);width:100%;min-width:0;color:var(--calc-text-primary,#f8fafc);font-family:var(--calc-font-mono,monospace);border-radius:6px;padding:6px 8px;font-size:.82rem}.channel-input-wrap .channel-input{background:0 0;border:none;padding-left:4px}.channel-input:focus{border-color:var(--cac-accent);outline:none}.channel-cac-display{flex-direction:column;gap:3px;display:flex}.channel-bar-bg{background:var(--cac-nested);border-radius:2px;height:4px;overflow:hidden}.channel-bar-fill{border-radius:2px;width:0%;height:100%;transition:width .4s}.channel-cac-lbl{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-dim,#7b90a8);font-size:.74rem;font-weight:600}.scenario-inner{padding-top:12px}.slider-row{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.slider-label-row{justify-content:space-between;align-items:center;display:flex}.slider-lbl{color:var(--calc-text-muted,#a8b8cc);font-size:.8rem}.slider-val{font-family:var(--calc-font-mono,monospace);color:var(--cac-accent);font-size:.82rem;font-weight:700}.cac-app input[type=range]{box-sizing:border-box;width:100%;accent-color:var(--cac-accent);margin:0}.scenario-compare{background:var(--cac-nested);border:1px solid var(--cac-nested-border);border-radius:var(--calc-radius-sm,8px);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;display:grid}.scen-col{text-align:center;flex-direction:column;align-items:center;gap:3px;display:flex}.scen-col-lbl{letter-spacing:.05em;text-transform:uppercase;color:var(--calc-text-dim,#7b90a8);font-size:.68rem}.scen-col-val{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary,#f8fafc);font-size:1rem;font-weight:700}.scen-delta-wrap{text-align:center;margin-top:10px}.scen-delta{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-dim,#7b90a8);font-size:.8rem}.scen-delta-good{color:var(--cac-good);font-weight:600}.scen-delta-bad{color:var(--cac-bad);font-weight:600}.goal-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.goal-title{color:var(--calc-text-primary,#f8fafc);font-size:.9rem;font-weight:700}.goal-input-wrap{max-width:160px}.goal-bar-bg{background:var(--cac-nested);border:1px solid var(--cac-nested-border);border-radius:999px;height:6px;margin-bottom:6px;overflow:hidden}.goal-bar-fill{border-radius:999px;width:0%;height:100%;transition:width .45s,background-color .3s}.goal-green{background:var(--cac-good)}.goal-amber{background:var(--cac-warn)}.goal-red{background:var(--cac-bad)}.goal-label{font-size:.8rem;font-weight:600}.goal-label-green{color:var(--cac-good)}.goal-label-red{color:var(--cac-bad)}.goal-tip{color:var(--calc-text-dim,#7b90a8);margin-top:4px;font-size:.78rem;line-height:1.5}.cac-chart-card{background:var(--calc-bg-card,#161b22);border:1px solid var(--calc-border-default,#f0f6fc1a);border-radius:var(--calc-radius-md,12px);box-shadow:var(--calc-shadow-card,none);flex-direction:column;gap:12px;padding:18px;display:flex}.cac-chart-card__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.chart-tabs{gap:6px;display:flex}.chart-tab{border:1px solid var(--calc-border-default,#f0f6fc1a);color:var(--calc-text-muted,#a8b8cc);cursor:pointer;background:0 0;border-radius:8px;padding:6px 14px;font-size:.78rem;font-weight:600;transition:border-color .2s,color .2s,background-color .2s}.chart-tab:hover{color:var(--calc-text-primary,#f8fafc)}.chart-tab.chart-tab-active{border-color:var(--cac-accent);background:var(--cac-accent-soft);color:var(--cac-accent)}.cac-chart-panel{background:var(--cac-nested);border:1px solid var(--cac-nested-border);border-radius:var(--calc-radius-sm,8px);padding:10px;position:relative}.cac-chart-wrap{height:340px;position:relative}.cac-chart-empty{text-align:center;min-height:340px;color:var(--calc-text-dim,#7b90a8);justify-content:center;align-items:center;padding:0 20px;font-size:.85rem;display:flex}.cac-chart-empty.hidden{display:none}.cac-chart-caption{color:var(--calc-text-dim,#7b90a8);margin:8px 2px 0;font-size:.74rem}.health-badge{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:2px 9px;font-size:.7rem;font-weight:600;display:inline-flex}.health-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.health-dot--pulse{animation:1.5s infinite hb-pulse}@keyframes hb-pulse{0%,to{opacity:1}50%{opacity:.4}}.health-badge--neutral{background:var(--cac-nested);color:var(--calc-text-dim,#7b90a8);border-color:var(--cac-nested-border)}.health-dot--neutral{background:var(--calc-text-dim,#7b90a8)}.health-badge--unprofitable{color:#fecdd3;background:#fb71851f;border-color:#fb71854d}.health-dot--unprofitable{background:var(--cac-bad)}.health-badge--caution{color:#fde68a;background:#f59e0b1f;border-color:#f59e0b4d}.health-dot--caution{background:var(--cac-warn)}.health-badge--great{color:#a7f3d0;background:#34d3991f;border-color:#34d3994d}.health-dot--great{background:var(--cac-good)}.health-badge--ok{color:#bfdbfe;background:#60a5fa1f;border-color:#60a5fa4d}.health-dot--ok{background:var(--cac-info)}[data-theme=light] .health-badge--unprofitable{color:#9f1239;background:#fff1f2;border-color:#e11d484d}[data-theme=light] .health-badge--caution{color:#92400e;background:#fffbeb;border-color:#d977064d}[data-theme=light] .health-badge--great{color:#14532d;background:#f0fdf4;border-color:#16a34a4d}[data-theme=light] .health-badge--ok{color:#1e3a8a;background:#eff6ff;border-color:#2563eb4d}.breakeven-label{border:1px solid var(--cac-nested-border);background:var(--cac-nested);color:var(--calc-text-muted,#a8b8cc);font-family:var(--calc-font-mono,monospace);border-radius:6px;padding:4px 10px;font-size:.76rem;font-weight:600}.breakeven-label--good{color:#a7f3d0;background:#34d3991f;border-color:#34d3994d}.breakeven-label--bad{color:#fecdd3;background:#fb71851f;border-color:#fb71854d}[data-theme=light] .breakeven-label--good{color:#14532d;background:#f0fdf4;border-color:#16a34a4d}[data-theme=light] .breakeven-label--bad{color:#9f1239;background:#fff1f2;border-color:#e11d484d}.cac-app>.action-bar{margin-top:18px}@keyframes flash-update{0%{opacity:1}25%{opacity:.35}to{opacity:1}}.flash-update{animation:.35s ease-out flash-update}@media (prefers-reduced-motion:reduce){.flash-update,.health-dot--pulse{animation:none}}@media (width<=1024px){.cac-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=768px){.cac-kpis{grid-template-columns:minmax(0,1fr);gap:10px}.cac-kpi{padding:14px 16px}.channel-line{grid-template-columns:90px minmax(0,1fr) minmax(0,.8fr)}.channel-line--head span:last-child,.channel-cac-display{display:none}.cac-chart-wrap,.cac-chart-empty{height:280px;min-height:280px}}@media (width<=480px){.main-container{padding:16px 16px 32px}.cac-dashboard{padding:16px}.cac-fields{grid-template-columns:minmax(0,1fr)}.cac-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.scenario-compare{grid-template-columns:repeat(3,minmax(0,1fr));padding:10px 6px}.goal-header{flex-direction:column;align-items:stretch}.goal-input-wrap{max-width:none}}