:root{--primary:#4f46e5;--primary-hover:#4338ca;--bg-color:#f3f4f6;--card-bg:#fff;--text-main:#1f2937;--text-sub:#6b7280;--danger:#ef4444;--success:#10b981;--radius:12px;--shadow:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;padding:20px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}#root{flex-direction:column;justify-content:center;max-width:600px;min-height:80vh;margin:0 auto;display:flex}.card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;padding:30px;transition:transform .2s}.card:hover{transform:translateY(-2px)}h1{color:var(--text-main);text-align:center;margin-bottom:10px;font-size:24px;font-weight:800}h2{color:var(--primary);margin-bottom:15px;font-size:20px}input[type=text],input[type=number],select{box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;width:100%;margin-top:5px;padding:10px 12px;font-size:16px;transition:border-color .2s}input:focus,select:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #4f46e51a}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-hover));color:#fff;cursor:pointer;border:none;border-radius:50px;width:100%;margin-top:20px;padding:14px;font-size:16px;font-weight:600;transition:all .2s;display:block;box-shadow:0 4px 6px #4f46e54d}.btn-primary:hover{filter:brightness(1.1);transform:scale(1.02)}.btn-primary:active{transform:scale(.98)}.btn-outline{width:100%;color:var(--text-sub);cursor:pointer;background:0 0;border:1px solid #d1d5db;border-radius:50px;margin-top:10px;padding:12px;transition:all .2s;display:block}.btn-outline:hover{color:var(--text-main);background:#f9fafb}input[type=range]{-webkit-appearance:none;background:#e5e7eb;border-radius:5px;outline:none;width:100%;height:6px;margin:15px 0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--primary);cursor:pointer;border-radius:50%;width:20px;height:20px;transition:transform .1s;box-shadow:0 2px 4px #0003}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}.form-group{margin-bottom:20px}.label-text{color:var(--text-sub);margin-bottom:5px;font-size:14px;font-weight:500;display:block}.grid-4{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.score-box{text-align:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:10px}.score-value{color:var(--primary);font-size:18px;font-weight:700}
