:root{--bg:#071018;--panel:#0d1823ee;--panel2:#101d2afd;--line:#203242;--muted:#8fa0ae;--text:#eef6ff;--white:#fff;--blue:#3779ff;--blue2:#275bd7;--green:#4ce0ad;--green2:#24b987;--danger:#ff6680;--shadow:0 30px 100px #0009;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:#05080c;min-height:100vh;overflow-x:hidden}.aurora{position:fixed;inset:0;background:radial-gradient(circle at 20% 5%,#2957ff33,transparent 34%),radial-gradient(circle at 80% 12%,#45ffc433,transparent 28%),radial-gradient(circle at 50% 80%,#14355fcc,transparent 42%),linear-gradient(120deg,#08121d,#05090f 55%,#0a151f);z-index:-3}.aurora:after{content:"";position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1800&q=70') center/cover;opacity:.26;filter:saturate(.9) brightness(.75)}.grain{position:fixed;inset:0;opacity:.08;pointer-events:none;background-image:linear-gradient(90deg,#fff1 1px,transparent 1px),linear-gradient(#fff1 1px,transparent 1px);background-size:48px 48px;z-index:-1}.app-shell{width:min(1220px,calc(100% - 36px));margin:26px auto 110px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:44px}.brand{display:flex;gap:13px;align-items:center;padding:10px 14px;background:#0b1723b8;border:1px solid #244254;border-radius:18px;box-shadow:0 10px 40px #0005;backdrop-filter:blur(16px)}.brand-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#42e2ad,#2b78ff);display:grid;place-items:center;overflow:hidden}.brand-icon img{width:115%;height:115%;object-fit:contain}.eyebrow{font-size:11px;color:var(--green);font-weight:900;letter-spacing:.22em}.mode-switch{display:flex;background:#08111d;border:1px solid #1c3041;padding:6px;border-radius:13px;box-shadow:0 15px 40px #0008}.mode{border:0;padding:13px 22px;border-radius:10px;background:transparent;color:#aab7c4;font-weight:800;cursor:pointer}.mode.active{background:linear-gradient(135deg,var(--green),#45d39f);color:#062016;box-shadow:0 0 0 1px #b8ffe066,0 0 30px #4ce0ad55}.hero{position:relative;margin-bottom:26px}.progress-lines{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:18px}.progress-lines span{height:7px;border-radius:99px;background:#1f3343;overflow:hidden}.progress-lines span:before{content:"";display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--blue));transition:.35s}.progress-lines span.done:before{width:100%}.step-caption{color:#acbbc8;font-weight:700;margin-bottom:18px}.pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid #2d776a;background:#103a36aa;color:#58e8b8;border-radius:999px;font-size:13px;font-weight:900;letter-spacing:.14em;box-shadow:0 0 40px #4ce0ad22}.hero h1{font-size:clamp(38px,5vw,66px);line-height:.98;margin:22px 0 12px;letter-spacing:-.055em}.hero h1 span{color:var(--green);text-shadow:0 0 30px #4ce0ad55}.hero p{max-width:710px;color:#a0acba;font-size:18px;line-height:1.45;margin:0}.card{background:linear-gradient(180deg,#0f1c29ef,#0a1420f5);border:1px solid #23384b;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);backdrop-filter:blur(18px);animation:cardIn .35s ease;position:relative;overflow:hidden}.card:before{content:"";position:absolute;inset:-1px;background:linear-gradient(135deg,#4ce0ad24,transparent 28%,#3679ff24 80%,transparent);pointer-events:none}.card>*{position:relative}.hidden{display:none!important}@keyframes cardIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card-head{display:flex;align-items:center;gap:16px;margin-bottom:24px}.num{width:42px;height:42px;border-radius:13px;background:#163d3b;border:1px solid #2f8c7a;color:#5af0bf;display:grid;place-items:center;font-weight:900;font-size:18px;box-shadow:0 0 30px #4ce0ad2d}.card h2{margin:0;font-size:22px}.card h3{margin:0 0 18px}.card p{margin:4px 0 0;color:#94a2b0}.grid{display:grid;gap:16px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.compact{margin-bottom:18px}label,.usage>span{display:flex;flex-direction:column;gap:9px;color:#9aa7b5;font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}small{color:#768797;text-transform:none;letter-spacing:0;font-size:11px}input,select,textarea{width:100%;height:54px;border-radius:13px;border:1px solid #253949;background:#07121d;color:#e8f4ff;padding:0 14px;font:600 15px Inter;outline:none;transition:.2s}input:focus,select:focus{border-color:#4ce0ad;box-shadow:0 0 0 4px #4ce0ad1e}.usage-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice{height:68px;border:1px solid #233848;background:#08131f;color:#8d9dad;border-radius:14px;cursor:pointer;font-weight:900;transition:.2s}.choice small{display:block;margin-top:4px}.choice.active{background:#133b37;border-color:#4ce0ad;color:#5be7b9;box-shadow:0 0 22px #4ce0ad20}.upload-zone{margin:18px 0;min-height:138px;border:2px dashed #2a3a4b;border-radius:18px;background:#07111b99;display:grid;place-items:center;text-align:center;cursor:pointer;position:relative;overflow:hidden}.upload-zone input{display:none}.upload-zone span{font-size:34px;color:#9aaaae}.upload-zone img{display:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.42}.upload-zone.has-img img{display:block}.tip{margin-top:18px;padding:14px 16px;border:1px solid #255f5a;background:#0f3b37aa;color:#8cebd0;border-radius:13px;font-weight:700;font-size:13px}.toolbar{display:flex;gap:10px;margin-bottom:16px}.ghost,.primary{border:1px solid #2a4256;border-radius:12px;height:46px;padding:0 18px;background:#0a1724;color:#cde0f3;font-weight:900;cursor:pointer;transition:.2s}.ghost:hover{transform:translateY(-1px);border-color:#4ce0ad}.primary{border:0;background:linear-gradient(135deg,var(--blue),var(--green));color:white;box-shadow:0 14px 35px #2a7fff3b}.primary:hover{transform:translateY(-1px);filter:brightness(1.08)}.table-wrap{overflow:auto;border:1px solid #213546;border-radius:16px;background:#07121c}table{width:100%;border-collapse:collapse;min-width:860px}th,td{padding:10px;border-bottom:1px solid #1d3040;text-align:left}th{font-size:11px;color:#90a0b0;text-transform:uppercase;letter-spacing:.08em;background:#0b1723}td input{height:42px}.del{height:38px;border:0;border-radius:10px;background:#341925;color:#ff8ba0;font-weight:900;cursor:pointer}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.metric{background:#08141f;border:1px solid #213649;border-radius:17px;padding:18px}.metric b{display:block;margin-top:7px;font-size:24px}.formula-box{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.formula-box div{padding:24px;border-radius:18px;background:linear-gradient(135deg,#0c1b29,#10263a);border:1px solid #233d54}.formula-box strong{display:block;margin-top:8px;font-size:26px}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{padding:20px;border:1px solid #22384c;border-radius:20px;background:#08141f}.weights{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:18px 0}.weight{padding:15px;border:1px solid #21384c;background:#08141f;border-radius:16px}.weight b{font-size:13px}.weight input{height:42px;margin-top:8px}.result-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:stretch}.big-result{padding:28px;border-radius:24px;background:radial-gradient(circle at 20% 0,#4ce0ad30,transparent 40%),linear-gradient(135deg,#0e2634,#0c1724);border:1px solid #2c5f66;display:flex;flex-direction:column;justify-content:center}.big-result small{text-transform:uppercase;color:#9fb0bf;font-weight:900;letter-spacing:.12em}.big-result strong{font-size:clamp(42px,6vw,72px);letter-spacing:-.07em;margin:8px 0;color:#fff;text-shadow:0 0 32px #4ce0ad3d}.big-result span{color:#60e4b9;font-weight:900;margin-bottom:22px}.chart-card{padding:18px;border:1px solid #21384a;border-radius:24px;background:#08141f;min-height:320px}.strategy{margin-top:18px;padding:20px;border:1px solid #2b5f5c;background:#0f3734;border-radius:18px;color:#d8fff4;font-weight:650;line-height:1.55}.bottom-nav{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);width:min(1180px,calc(100% - 36px));display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px;border:1px solid #22384a;background:#07121de6;border-radius:20px;box-shadow:0 20px 70px #000b;backdrop-filter:blur(18px);z-index:20}.actions{display:flex;gap:10px}.presentation .no-print{display:none!important}.presentation .app-shell{margin:20px auto}.presentation .hero{display:none}.presentation .card{display:block!important;margin-bottom:24px;page-break-inside:avoid}.presentation .card:not(.result-card){display:block}.presentation input,.presentation select{border:0;background:transparent;padding-left:0}.presentation .toolbar,.presentation .del{display:none}.presentation .card{box-shadow:none}@media(max-width:860px){.topbar,.bottom-nav{flex-direction:column;align-items:stretch}.two,.three,.four,.split,.result-layout,.weights,.metric-grid,.formula-box{grid-template-columns:1fr}.app-shell{width:calc(100% - 22px)}.hero h1{font-size:42px}.card{padding:20px}.actions{flex-direction:column}table{min-width:760px}}@media print{body{background:#fff;color:#111}.aurora,.grain,.no-print,.bottom-nav{display:none!important}.app-shell{width:100%;margin:0}.card{display:block!important;background:#fff;color:#111;border:1px solid #ddd;box-shadow:none;margin:0 0 14px;break-inside:avoid}.card p,label,.usage>span,small{color:#555}.hero{display:block}.hero h1,.hero h1 span{color:#111;text-shadow:none}.hero p{color:#333}input,select{border:0;color:#111;background:#fff}.metric,.panel,.formula-box div,.chart-card,.big-result,.strategy{background:#fff;color:#111;border:1px solid #ddd}.table-wrap{background:#fff}th{background:#f4f4f4;color:#333}td,th{border-color:#ddd;color:#111}.pill{border:1px solid #aaa;background:#f6f6f6;color:#111}}
.upload-zone.dragging{border-color:var(--green);box-shadow:0 0 0 5px #4ce0ad1e,0 0 45px #4ce0ad35}.upload-zone.has-img b,.upload-zone.has-img small,.upload-zone.has-img span{position:relative;z-index:1;text-shadow:0 2px 10px #000}.upload-zone.has-img:after{content:"Cambiar foto";position:absolute;right:14px;bottom:14px;padding:8px 12px;border-radius:999px;background:#07121dcc;border:1px solid #4ce0ad88;color:#dffff5;font-size:12px;font-weight:900;z-index:2}
