:root{--bg:#080d21;--panel:rgba(14,23,51,.86);--panel2:#121d3c;--border:rgba(162,184,255,.14);--text:#f0f5ff;--muted:#9baacf;--teal:#50eedb;--violet:#a38bff;--gold:#ffca74;--pink:#ff7fb4;--blue:#66b7ff;--danger:#ff818e;--radius:22px;--shadow:0 22px 75px rgba(1,4,20,.32);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;color:var(--text);background:var(--bg);min-height:100vh;line-height:1.55}body:before{content:"";position:fixed;inset:0;background:linear-gradient(180deg,transparent 30%,#080d21 95%);pointer-events:none;z-index:-1}#space{position:fixed;inset:0;width:100%;height:100%;z-index:-3;pointer-events:none}.ambient{position:fixed;z-index:-2;filter:blur(75px);opacity:.27;pointer-events:none;border-radius:50%;width:450px;height:450px}.ambient-a{top:-160px;left:-170px;background:#326ecb}.ambient-b{right:-180px;top:250px;background:#6b3fb4}
button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.46}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}a{color:var(--teal)}a:hover{text-decoration:none}#app{min-height:100vh}.topbar{max-width:1350px;margin:auto;padding:22px clamp(17px,4vw,50px);display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;color:inherit;border:0;background:none;text-align:left;padding:0}.brand-icon{width:46px;height:46px;display:grid;place-items:center;background:linear-gradient(125deg,#39468c,#5ad8d6);border:1px solid #92e0ee;border-radius:15px;font-size:28px;box-shadow:0 0 28px #39ddc530}.brand-copy{font-weight:950;letter-spacing:-1px;font-size:22px;line-height:1.04}.brand-copy>span{color:var(--teal)}.brand-copy small{display:block;font-size:9px;letter-spacing:1.7px;color:#9db2d4;margin-top:5px;font-weight:700}.top-actions{display:flex;align-items:center;gap:11px}.conn{font-size:10px;letter-spacing:1.2px;color:#aac9d1;font-weight:800}.conn i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--teal);margin-right:7px;box-shadow:0 0 12px var(--teal)}.icon-btn,.xp-pill,.ghost-btn{border:1px solid var(--border);background:rgba(22,31,62,.76);color:var(--text);border-radius:13px;padding:10px 13px}.xp-pill{font-weight:900;color:var(--gold);white-space:nowrap}.xp-pill small{font-size:10px}.icon-btn{font-size:19px;width:45px;height:45px}.wrap{max-width:1280px;padding:16px clamp(17px,4vw,50px) 145px;margin:auto}.eyebrow,.tag{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:900;color:var(--teal)}h1,h2,h3,p{margin-top:0}h1{font-weight:950;font-size:clamp(38px,5.7vw,73px);letter-spacing:-3.1px;line-height:1.08;margin:15px 0 19px}h1 .gradient,.gradient{background:linear-gradient(90deg,#fff 0%,#78fff0 50%,#c4afff 95%);background-clip:text;-webkit-background-clip:text;color:transparent}h2{font-size:clamp(26px,3vw,36px);letter-spacing:-1.3px;line-height:1.16}h3{letter-spacing:-.45px}.muted{color:var(--muted)}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center;min-height:450px;padding:20px 0 30px}.hero p{max-width:590px;color:#b6c6e4;font-size:16px}.hero-actions,.controls-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:23px}.btn{border:0;border-radius:14px;background:linear-gradient(115deg,#5af1e1,#7aa8ff);color:#081228;font-weight:950;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 21px;min-height:49px;box-shadow:0 9px 30px #46d8d823}.btn:hover{filter:brightness(1.09);transform:translateY(-1px)}.btn.secondary{background:#1b294e;border:1px solid #40557d;color:#e7f0ff;box-shadow:none}.btn.soft{background:rgba(98,119,196,.15);border:1px solid var(--border);color:#eaf2ff;box-shadow:none}.btn.warning{background:linear-gradient(115deg,#ffe0a1,#ffbf79)}.btn.small{padding:9px 14px;min-height:36px;font-size:13px}.hero-art{position:relative;height:390px;display:grid;place-items:center;perspective:850px}.orbit{position:absolute;width:340px;height:340px;border:1px solid #8eaeff2d;border-radius:50%;transform:rotateX(64deg) rotateZ(-26deg);box-shadow:0 0 42px #85a0ff13}.orbit.two{width:270px;height:270px;transform:rotateX(66deg) rotateZ(28deg)}.planet{position:relative;width:min(310px,88%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 27% 22%,#88fcf2 0%,#3d8eb9 21%,#363c95 51%,#14153f 80%);box-shadow:inset -30px -23px 40px #0c1139b0,inset 10px 8px 35px #d2ffff4c,0 0 80px #59e9d74c,0 30px 90px #171e68;animation:hover 7s ease-in-out infinite;overflow:hidden}.planet:before{content:"";position:absolute;inset:12%;border:2px solid #c4fff8a5;border-radius:43% 57% 61% 39%;transform:rotate(-32deg);box-shadow:0 0 25px #86ffeb}.planet:after{content:"";position:absolute;inset:34% 15% 24% 27%;border-radius:30% 65%;border:3px solid #d6e7ffa6;transform:rotate(32deg)}.planet-words{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;font-weight:950;font-size:70px;text-shadow:0 7px 25px #070c33;letter-spacing:-8px}.float-chip{position:absolute;background:rgba(20,34,74,.85);backdrop-filter:blur(10px);border:1px solid #5eddd856;padding:10px 14px;border-radius:14px;box-shadow:var(--shadow);font-size:13px;font-weight:800;animation:hover 5s ease-in-out infinite}.chip-one{left:0;top:26%}.chip-two{right:0;bottom:21%;animation-delay:1.6s}.chip-three{right:13%;top:4%;animation-delay:.8s}.chip-one strong{color:var(--teal)}.chip-two strong{color:var(--gold)}@keyframes hover{50%{transform:translateY(-13px)}}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 27px}.metric{border:1px solid var(--border);background:rgba(16,27,56,.7);border-radius:17px;padding:18px}.metric strong{font-size:25px;display:block;letter-spacing:-1px}.metric span{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:800}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:25px}.config{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:16px;margin-bottom:34px}.config label,.input-label{display:grid;gap:7px;color:#b7c5e4;font-size:13px;font-weight:800}.select{background:#0a1530;color:#fff;border:1px solid #3b4e76;border-radius:12px;min-height:48px;padding:10px 14px;width:100%}.section-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin:18px 0}.section-head p{margin:0}.world-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.world{border:1px solid rgba(145,172,244,.17);border-radius:22px;background:linear-gradient(150deg,rgba(25,37,77,.92),rgba(11,20,44,.91));padding:0;overflow:hidden;text-align:left;position:relative;color:var(--text);transition:transform .18s,border-color .18s;min-height:290px;display:flex;flex-direction:column}.world:hover{transform:translateY(-5px);border-color:#66e9dc88}.world:focus-visible{outline-offset:4px}.world-visual{height:145px;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 60% 25%,var(--world-glow,#2cb2cb) 0%,transparent 58%),linear-gradient(145deg,#20265a,#0c1b36)}.world-visual:before{content:"";width:250px;height:250px;border-radius:50%;position:absolute;transform:translate(33%,38%) rotateX(64deg);border:19px solid rgba(255,255,255,.05)}.world-glyph{font-size:77px;line-height:1;filter:drop-shadow(0 13px 20px #0019);transition:transform .2s}.world:hover .world-glyph{transform:scale(1.12) rotate(-5deg)}.world-num{position:absolute;top:13px;left:16px;font-size:11px;letter-spacing:1.6px;font-weight:900;color:#d5e7ff}.world-check{position:absolute;top:12px;right:15px;background:#103c49;color:#66ffe6;padding:5px 10px;border-radius:99px;font-size:10px;font-weight:900}.world-body{padding:20px 21px 22px;flex:1;display:flex;flex-direction:column}.world-body h3{font-size:20px;margin:0 0 6px}.world-body p{font-size:12.5px;color:#a5b6d3;margin-bottom:18px}.world-meta{display:flex;gap:7px;margin-top:auto;align-items:center;justify-content:space-between;font-size:11px;color:#bfd0ec}.mini-tag{background:#273660;color:#a7cbff;border-radius:7px;padding:4px 8px;font-size:10px;font-weight:900}.arrow{font-size:19px;color:var(--teal)}.footer{text-align:center;color:#8d9cc0;font-size:12px;margin-top:35px}
.dock{position:fixed;z-index:100;left:50%;transform:translateX(-50%);bottom:17px;max-width:490px;width:calc(100% - 24px);padding:8px;display:flex;gap:5px;border:1px solid #52618b71;box-shadow:0 12px 45px #0009;background:#131e3bef;backdrop-filter:blur(25px);border-radius:21px}.dock button{flex:1;color:#a5b3d6;background:none;border:0;border-radius:13px;display:grid;place-items:center;gap:0;font-size:11px;padding:6px 5px}.dock button span{font-size:22px;line-height:1.4}.dock button.active{background:#304a74;color:#ecffff}.toast{position:fixed;bottom:110px;left:50%;transform:translate(-50%,20px);background:#20335b;border:1px solid #82cfff9c;padding:12px 21px;max-width:calc(100% - 30px);border-radius:14px;z-index:200;font-size:14px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
/* Missions */
.game-shell{max-width:1050px;margin:auto}.game-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:9px 0 22px}.game-head h1{font-size:clamp(31px,4.4vw,50px);margin:8px 0;letter-spacing:-2px}.game-head p{margin:0}.game-badge{padding:10px 13px;border:1px solid var(--border);background:var(--panel);border-radius:13px;white-space:nowrap;font-size:12px}.mission-layout{display:grid;grid-template-columns:1fr 320px;gap:19px;align-items:start}.mission-main{min-width:0}.mission-card{padding:25px;background:rgba(13,25,55,.94);border:1px solid #5868a74b;border-radius:23px;box-shadow:var(--shadow)}.mission-topline{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.pill{font-size:11px;padding:5px 10px;border-radius:99px;background:#203259;color:#a3eaf8;border:1px solid #58719655;font-weight:800}.prompt{font-size:20px;line-height:1.45;letter-spacing:-.3px;font-weight:800;max-width:700px}.challenge-instruction{font-size:13px;color:#b9c7e5;margin:0 0 18px}.game-surface{background:#0a1633;border:1px solid rgba(164,190,255,.13);border-radius:17px;padding:16px;margin:17px 0 20px;overflow:hidden}.game-surface svg{width:100%;max-height:390px;display:block}.input-group{margin:18px 0}.input-group input,.input-group textarea{width:100%;border:1px solid #40557f;background:#0a1530;border-radius:12px;padding:13px;color:white;font-size:17px}.input-group textarea{resize:vertical;min-height:87px;font-size:14px}.value-row{display:flex;justify-content:space-between;gap:12px;color:#d9e7fc;font-size:13px;font-weight:800}.range-field{margin:14px 0 22px}.range-field input[type=range]{accent-color:#5ce8d6;width:100%;height:23px;touch-action:pan-y}.range-field output{color:var(--teal);font-size:18px;font-weight:900}.feedback{margin-top:18px;padding:17px;border-radius:14px;border:1px solid #6fcfda61;background:#183c4d80;font-size:13.5px;white-space:pre-line}.feedback.err{border-color:#e99e735d;background:#47303a6b}.feedback strong{display:block;font-size:16px;margin-bottom:6px}.side-stack{display:grid;gap:14px}.side-panel{padding:21px;background:rgba(20,34,69,.84);border:1px solid var(--border);border-radius:19px}.side-panel h3{margin-bottom:10px;font-size:17px}.side-panel p,.side-panel li{font-size:12.5px;color:#b3c3df}.side-panel ul{margin:0;padding-left:17px}.side-icon{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#2a4268;color:var(--teal);margin-bottom:12px}.tally{display:flex;justify-content:space-between;margin:8px 0;color:#b2c2df;font-size:12px}.tally strong{color:#f1f6ff}.separator{height:1px;background:var(--border);margin:15px 0}.meter{border-radius:99px;background:#233658;height:7px;overflow:hidden;margin:12px 0}.meter div{height:100%;background:linear-gradient(90deg,#50eedb,#b59bff);border-radius:99px}.interact-readout{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.readout{border:1px solid #415b83;background:#132447;border-radius:13px;padding:9px 14px;min-width:95px;text-align:center}.readout strong{display:block;font-size:22px}.readout small{color:#98adce;text-transform:uppercase;font-size:9px;letter-spacing:1px}.method-check{display:grid;gap:9px;margin:17px 0 0}.method-check label{padding:10px;border-radius:10px;border:1px solid #526b8b;background:#15274b;font-size:13px}.method-check input{accent-color:#50eedb;margin-right:8px}.answer-actions{display:flex;gap:10px;flex-wrap:wrap}.answer-actions .btn{flex:1}.finale{text-align:center;padding:19px 5px}.finale>div:first-child{font-size:66px}.finale h2{margin:9px 0 7px}.finale .btn{margin-top:18px}.stars{font-size:25px;color:var(--gold);letter-spacing:7px}.breakdown{font-size:13px;color:#a6b9d6}.num-control{display:flex;align-items:center;gap:8px}.num-control input{max-width:145px}.mini-demo{display:flex;align-items:center;justify-content:space-around;gap:10px;padding:17px 8px;flex-wrap:wrap}.mini-demo strong{font-size:22px;color:var(--teal)}.orbs{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;max-width:260px;margin:auto}.orb{width:27px;height:27px;border-radius:50%;box-shadow:inset 4px 4px 9px #fff7,0 3px 7px #0005}.orb.red{background:#f77fa4}.orb.blue{background:#62bdfc}.orb-sm{width:10px;height:10px;display:inline-block;border-radius:50%;margin-right:4px}.camera-preview{max-height:220px;max-width:100%;object-fit:contain;border-radius:12px;margin:10px auto;display:block}.capture-label{display:inline-flex;gap:8px;align-items:center;background:#223d62;border:1px solid #4c9b9f;border-radius:12px;padding:11px;color:#d7f9f3;font-weight:800;font-size:12px;cursor:pointer}.capture-label input{position:absolute;opacity:0;width:1px;height:1px}.choice-list{display:grid;gap:10px}.choice{padding:14px;border:1px solid #475987;background:#182b52;border-radius:12px;text-align:left;color:#e8f2ff;font-size:14px}.choice:hover,.choice.selected{border-color:#50eedb;background:#1b4559}.quote-card{padding:16px;border:1px solid #56648c;background:#172747;border-radius:13px;margin-bottom:18px}.top-link{display:inline-block;color:#a7eae8;background:#203659;border:1px solid #5d8b9299;padding:9px 12px;border-radius:11px;font-weight:700;font-size:12px;text-decoration:none}.small-note{font-size:11px;color:#93a9d2}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.resource-box{margin-bottom:13px;padding:16px;background:#182848;border:1px solid #40577d;border-radius:12px}.resource-box h4{margin:0 0 5px}.resource-box p{margin:0 0 12px;font-size:12px;color:#a8b8d6}.grid-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.guide-card{padding:21px;background:#122144;border:1px solid var(--border);border-radius:18px}.guide-card h3{margin:7px 0 9px}.guide-card p{color:#abbedb;font-size:13px}.levelbar{font-size:12px;color:#9cafe0}.history-row{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--border);padding:11px 0;font-size:13px}.history-row span{color:#aebcdd}.insight{padding:14px 18px;border-left:3px solid var(--teal);background:#16274b;border-radius:0 12px 12px 0;margin-top:19px;color:#c3dbec;font-size:13px}
@media(max-width:900px){.mission-layout{grid-template-columns:1fr}.side-stack{grid-template-columns:repeat(2,1fr)}.hero{min-height:auto}.world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.config{grid-template-columns:1fr 1fr}.config .btn{grid-column:1/-1}.hero-art{height:320px}.planet{width:245px}.orbit{width:280px;height:280px}}
@media(max-width:620px){.wrap{padding-top:6px}.topbar{padding:14px 17px}.conn{display:none}.brand-copy{font-size:17px}.brand-copy small{font-size:7px;letter-spacing:1px}.brand-icon{width:39px;height:39px}.xp-pill{padding:10px}.icon-btn{width:40px;height:40px}.hero{grid-template-columns:1fr;text-align:left;gap:0}.hero-art{height:225px;order:-1}.planet{width:175px}.orbit{width:205px;height:205px}.orbit.two{width:165px;height:165px}.planet-words{font-size:46px;letter-spacing:-4px}.float-chip{font-size:10px;padding:6px 9px}.chip-one{left:3%;top:22%}.chip-two{right:2%;bottom:17%}.chip-three{top:5%;right:10%}h1{font-size:43px;letter-spacing:-2px}.hero p{font-size:14px}.metrics{grid-template-columns:repeat(2,1fr);gap:8px}.metric{padding:12px}.metric strong{font-size:22px}.config{grid-template-columns:1fr;padding:16px;gap:10px}.config .btn{grid-column:auto}.world-grid{grid-template-columns:1fr;gap:12px}.world{min-height:0;display:grid;grid-template-columns:38% 1fr}.world-visual{height:100%;min-height:166px}.world-glyph{font-size:57px}.world-body{padding:15px 12px}.world-body h3{font-size:17px}.world-body p{margin-bottom:12px;font-size:12px}.world-meta{flex-wrap:wrap}.world-num{font-size:10px;left:8px;top:8px}.world-check{font-size:8px;padding:3px 5px;right:5px;top:7px}.section-head{align-items:start;flex-direction:column}.section-head h2{margin:0}.panel,.mission-card{padding:17px}.game-head{align-items:start;flex-direction:column;gap:6px}.game-head h1{font-size:33px}.mission-topline{gap:6px}.prompt{font-size:18px}.game-surface{padding:9px}.side-stack{grid-template-columns:1fr}.two-col,.grid-cards{grid-template-columns:1fr}.readout{min-width:80px;padding:8px}.readout strong{font-size:19px}.top-actions{gap:5px}.xp-pill small{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Autoria permanent, visible en totes les pantalles */
.site-credit{position:relative;z-index:2;padding:22px 18px 112px;margin:18px auto 0;text-align:center;color:#cad4f0;font-size:.85rem;line-height:1.65;max-width:1160px;border-top:1px solid rgba(158,186,239,.16)}
.site-credit strong{color:#f1f5ff;font-weight:700}
