*,*:before,*:after{box-sizing:border-box}body{font-family:Inter,sans-serif;background:#edf0fb;color:#1e293b;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#edf0fb}::-webkit-scrollbar-thumb{background:#5b5ef459;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#5b5ef4}@keyframes float1{0%,to{transform:translate(0) scale(1)}35%{transform:translate(40px,-50px) scale(1.07)}70%{transform:translate(-25px,25px) scale(.95)}}@keyframes float2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-45px,35px) scale(1.1)}}@keyframes float3{0%,to{transform:translate(0) scale(1)}40%{transform:translate(28px,45px) scale(.92)}80%{transform:translate(-18px,-30px) scale(1.05)}}.orb-1{animation:float1 22s ease-in-out infinite}.orb-2{animation:float2 28s ease-in-out infinite}.orb-3{animation:float3 19s ease-in-out infinite}.card{background:#fff;border-radius:20px;box-shadow:0 1px #ffffffe6 inset,0 2px 6px #5b5ef40a,0 10px 30px #5b5ef412,0 30px 60px #0000000a;transition:box-shadow .25s ease,transform .25s ease}.card:hover{box-shadow:0 1px #ffffffe6 inset,0 4px 12px #5b5ef40f,0 20px 50px #5b5ef41a,0 40px 80px #0000000f}.card-accent{background:linear-gradient(140deg,#5b5ef4,#7b7ef9 60%,#9394f8);box-shadow:0 2px #ffffff26 inset,0 8px 24px #5b5ef459,0 30px 60px #5b5ef433}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:2px;outline:none;cursor:pointer;transition:background 0s}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;border:2.5px solid #5b5ef4;box-shadow:0 1px 6px #5b5ef459;cursor:pointer;transition:transform .15s,box-shadow .15s}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 2px 12px #5b5ef48c}input[type=range]:focus::-webkit-slider-thumb{box-shadow:0 0 0 4px #5b5ef42e,0 2px 8px #5b5ef466}input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:2.5px solid #5b5ef4;box-shadow:0 1px 6px #5b5ef459;cursor:pointer}input[type=number]{background:#fff;border:1.5px solid #c7d2fe;color:#5b5ef4;border-radius:8px;padding:5px 8px;text-align:right;outline:none;cursor:text;font-family:Inter,sans-serif;font-size:14px;font-weight:700;transition:border-color .2s,box-shadow .2s;-moz-appearance:textfield}input[type=number]:hover{border-color:#818cf8}input[type=number]:focus{border-color:#5b5ef4;box-shadow:0 0 0 3px #5b5ef41f;background:#fff}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.toggle-track{width:44px;height:24px;border-radius:12px;background:#e2e8f0;position:relative;cursor:pointer;transition:background .25s,box-shadow .25s;flex-shrink:0}.toggle-track.active{background:linear-gradient(135deg,#5b5ef4,#818cf8);box-shadow:0 2px 12px #5b5ef466}.toggle-thumb{width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:3px;left:3px;transition:transform .22s cubic-bezier(.34,1.56,.64,1);box-shadow:0 1px 4px #00000026}.toggle-track.active .toggle-thumb{transform:translate(20px)}.btn-primary{background:linear-gradient(135deg,#5b5ef4,#818cf8);color:#fff;border:none;cursor:pointer;font-family:Inter,sans-serif;font-weight:700;border-radius:14px;transition:transform .15s,box-shadow .2s;box-shadow:0 4px 16px #5b5ef459}.btn-primary:hover{box-shadow:0 8px 24px #5b5ef473;transform:translateY(-1px)}.btn-primary:active{transform:scale(.97)}.breakdown-item{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-bottom:1px solid #f1f5f9;transition:transform .15s}.breakdown-item:last-child{border-bottom:none}.breakdown-item:hover{transform:translate(3px)}.progress-track{height:4px;border-radius:2px;background:#f1f5f9;overflow:hidden}.progress-fill{height:100%;border-radius:2px;transition:width .35s ease}.saved-card{background:#fff;border:1.5px solid #f1f5f9;border-radius:14px;padding:14px;cursor:pointer;position:relative;transition:border-color .18s,transform .18s,box-shadow .18s}.saved-card:hover{border-color:#818cf8;transform:translateY(-2px);box-shadow:0 8px 24px #5b5ef41a}.author-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#fff;border:1.5px solid #f1f5f9;border-radius:16px;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s,box-shadow .2s}.author-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #5b5ef41a}.badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;letter-spacing:.04em}.step-num{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;background:linear-gradient(135deg,#5b5ef4,#818cf8);color:#fff;box-shadow:0 3px 10px #5b5ef459;flex-shrink:0}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.6}}.pulse-dot{animation:pulse-dot 2s ease-in-out infinite}@keyframes modal-in{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f143273;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:overlay-in .18s ease}.modal-box{background:#fff;border-radius:20px;padding:2rem;width:100%;max-width:420px;box-shadow:0 2px #fffc inset,0 24px 60px #5b5ef42e,0 8px 24px #0000001f;animation:modal-in .22s cubic-bezier(.34,1.4,.64,1)}.modal-input{width:100%;border:1.5px solid #e2e8f0;border-radius:12px;padding:12px 14px;font-size:14px;font-family:Inter,sans-serif;font-weight:500;color:#1e293b;outline:none;transition:border-color .2s,box-shadow .2s;background:#f8faff;margin-top:16px;margin-bottom:20px}.modal-input:focus{border-color:#5b5ef4;box-shadow:0 0 0 3px #5b5ef41f;background:#fff}.modal-input::placeholder{color:#94a3b8}@keyframes banner-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.warning-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:14px;background:#ef44440f;border:1.5px solid rgba(239,68,68,.2);margin-bottom:16px;animation:banner-in .2s ease}.btn-ghost{background:#f1f5f9;color:#64748b;border:none;cursor:pointer;font-family:Inter,sans-serif;font-weight:600;border-radius:12px;transition:background .15s,color .15s}.btn-ghost:hover{background:#e2e8f0;color:#1e293b}.reset-btn{background:none;border:none;cursor:pointer;font-family:Inter,sans-serif;font-size:12px;font-weight:600;color:#94a3b8;padding:0;transition:color .15s;text-decoration:underline;text-underline-offset:3px;text-decoration-style:dashed}.reset-btn:hover{color:#5b5ef4}@keyframes hint-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.saved-card.compare-active{border-color:#5b5ef4!important;background:#5b5ef408!important}@media print{body{background:#fff!important}.no-print,.orb-1,.orb-2,.orb-3{display:none!important}.main-layout{flex-direction:column!important}.inputs-col{display:none!important}.results-col{width:100%!important}.card,.card-accent{box-shadow:none!important;border:1px solid #e2e8f0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;break-inside:avoid;page-break-inside:avoid}.card-accent{background:#5b5ef4!important}footer{display:none!important}}
