*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.4;color:#0f172a;background:#111827;min-height:100vh}.calc-hero{background:radial-gradient(1200px 600px at 15% -10%,#1d306066,transparent),linear-gradient(180deg,#1d3060 0%,#111827 100%);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:36px 18px}.calc-shell{width:min(1080px,100%);background:#fff;border:1px solid #e6e9ef;border-radius:18px;padding:24px 26px 26px;box-shadow:0 10px 24px #11182729}.calc-shell h1{text-align:center;margin:0 0 18px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:28px;font-weight:800;line-height:1.15;color:#0f172a;letter-spacing:-.02em}.calc-grid{display:grid;grid-template-columns:1.15fr .95fr;align-items:start;gap:24px}@media (max-width: 980px){.calc-grid{grid-template-columns:1fr}}.right{max-width:380px;justify-self:end}@media (max-width: 980px){.right{max-width:100%;justify-self:stretch}}.group{background:#f8fafc;border:1px solid #e6e9ef;border-radius:12px;padding:14px;margin-bottom:14px}.group:last-child{margin-bottom:0}.group h3{margin:0 0 10px;font-size:14px;color:#334155;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.input-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.setup-row{display:grid;grid-template-columns:1fr 1.4fr;gap:12px}@media (max-width: 600px){.input-row,.setup-row{grid-template-columns:1fr;gap:10px}}.input{display:flex;flex-direction:column;gap:6px}.label{font-size:12px;color:#6b7280;text-transform:uppercase;letter-spacing:.06em;font-weight:500}input,select{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit;transition:all .2s ease}input:focus,select:focus{border-color:#5b8cff;box-shadow:0 0 0 3px #5b8cff22;outline:0}input::placeholder{color:#9ca3af}.positioning .pos-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.positioning .pos-head span{font-size:12px;letter-spacing:.06em;color:#6b7280;font-weight:700}#pos-meta{color:#64748b;font-size:11px}.pos-toggle{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;border:1px solid #e5e7eb;border-radius:999px;background:#fff;overflow:hidden;box-shadow:inset 0 1px #f2f4f7}.pos-btn{all:unset;text-align:center;cursor:pointer;padding:10px 12px;font-size:14px;color:#334155;position:relative;z-index:1;display:flex;gap:8px;align-items:center;justify-content:center;font-weight:500}.pos-btn:hover{color:#0f172a}.pos-btn[aria-selected=true],.pos-btn.active{color:#fff}.dot{width:8px;height:8px;border-radius:999px;background:#9ca3af}.dot-weak{background:#ef4444}.dot-avg{background:#3b82f6}.dot-strong{background:#10b981}.pos-thumb{position:absolute;top:2px;bottom:2px;left:2px;width:calc(33.333% - 4px);border-radius:999px;background:linear-gradient(180deg,#5b8cff,#466eea);box-shadow:0 6px 14px #5b8cff59;transform:translate(100%);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.pos-toggle[data-active=weak] .pos-thumb{transform:translate(0);background:linear-gradient(180deg,#f87171,#ef4444);box-shadow:0 6px 14px #ef444459}.pos-toggle[data-active=average] .pos-thumb{transform:translate(100%);background:linear-gradient(180deg,#60a5fa,#3b82f6);box-shadow:0 6px 14px #3b82f659}.pos-toggle[data-active=strong] .pos-thumb{transform:translate(200%);background:linear-gradient(180deg,#34d399,#10b981);box-shadow:0 6px 14px #10b98159}.pos-notes{margin-top:10px;font-size:12px;color:#64748b}.tier{display:inline-flex;border:1px solid #e5e7eb;border-radius:999px;overflow:hidden;background:white;width:100%}.tier button{all:unset;padding:8px 14px;font-size:13px;color:#475569;cursor:pointer;flex:1;text-align:center;transition:all .2s ease;font-weight:500}.tier button:hover{background:#f8fafc}.tier button.active{background:#5b8cff;color:#fff}.tier button:focus-visible{outline:2px solid #5b8cff;outline-offset:2px}.advanced-controls{display:none;margin-top:12px}.advanced-controls.show{display:block}.advanced-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 600px){.advanced-grid{grid-template-columns:1fr}}.panel{background:#fff;border:1px solid #e6e9ef;border-radius:12px;padding:14px;box-shadow:0 6px 20px #0000000f}.results-title{text-align:center;font-weight:800;margin:2px 0 12px;color:#0f172a;font-size:18px}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.kpi{background:#fff;border:1px solid #e9edf3;border-radius:12px;padding:12px;text-align:center;box-shadow:0 2px 8px #0000000a;transition:transform .15s ease,box-shadow .15s ease}.kpi:hover{transform:translateY(-1px);box-shadow:0 6px 14px #00000014}.icon-wrap{display:flex;justify-content:center;margin-bottom:4px}.icon-wrap svg{width:18px;height:18px;stroke:#64748b;opacity:.85}.k{font-size:11px;letter-spacing:.06em;color:#64748b;text-transform:uppercase;margin-bottom:4px;font-weight:600}.v{font-size:22px;font-weight:800;color:#0f172a;transition:all .12s ease-out}.v.accent{color:#5b8cff}@media (max-width: 600px){.kpis{grid-template-columns:1fr;gap:8px}.kpi .v{font-size:20px}}.break{display:grid;gap:8px;margin-bottom:12px}.chip{background:#f5f7fb;border:1px dashed #e5e7eb;border-radius:10px;padding:8px 10px;font-size:12px;color:#475569;border-left:3px solid #5b8cff}.baseline{margin-bottom:10px;font-size:12px;color:#475569;text-align:center;background:#f8faff;border:1px solid #e6edff;border-radius:12px;padding:10px;line-height:1.4}.baseline span{font-weight:600;color:#0f172a}.legend{margin-top:8px;font-size:11px;color:#94a3b8;text-align:center;opacity:.8;font-style:italic}@keyframes result-enter{0%{transform:scale(.98);opacity:.7}to{transform:scale(1);opacity:1}}@keyframes fade-update{0%{opacity:1}50%{opacity:.3;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.result-enter{animation:result-enter .12s ease-out}.kpi .v.animate{animation:fade-update .2s ease-in-out}.kpi .v.updating{opacity:.3;transform:scale(.98);transition:all .1s ease}*:focus-visible{outline:2px solid #5b8cff;outline-offset:2px}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 480px){.calc-hero{padding:20px 12px}.calc-shell{padding:20px;border-radius:14px}.calc-shell h1{font-size:24px}.group,.panel{padding:12px}.results-title{font-size:16px}}.empty-state{opacity:.6}.empty-state .kpi{background:#f8f9fa}.empty-state .kpi .v{color:#6b7280}
