:root{
  --blue:#3070E7; --dark:#0F1729; --navy:#07182D; --teal:#16BDEB; --cyber:#00C8FF;
  --green:#22C55E; --yellow:#F59E0B; --orange:#FF9000; --red:#EF4444; --pink:#FF2D8E;
  --ink:#1e293b; --muted:#64748B; --line:#E2E8F0; --panel:#fff;
  --glass:rgba(255,255,255,.075); --glass-strong:rgba(255,255,255,.12);
  --rim:rgba(140,230,255,.32); --gold:#FBBF24; --radius:22px;
  --font:'CiscoSans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  /* colores de estación */
  --c-identity:#7C3AED; --c-ai-security:#22C55E; --c-zero-trust-access:#F59E0B;
  --c-hybrid-mesh-firewall:#FF7A1A; --c-ai-workloads-k8s:#3B82F6;
  --c-secops-splunk:#EF4444; --c-security-cloud-control:#FF2D8E;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{min-height:100%}
body{
  font-family:var(--font); color:#eaf1fb; background:
   radial-gradient(circle at 20% -10%, rgba(48,112,231,.45), transparent 32rem),
   radial-gradient(circle at 100% 10%, rgba(255,45,142,.18), transparent 23rem),
   radial-gradient(circle at 8% 58%, rgba(22,189,235,.15), transparent 18rem),
   linear-gradient(180deg,#07182D 0%,#0b1224 48%,#05070d 100%);
  min-height:100vh; -webkit-font-smoothing:antialiased; overscroll-behavior:none;
  font-feature-settings:"kern" 1,"liga" 1;
}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.55;mix-blend-mode:screen;background:
  linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.05) 42.4% 43.1%,transparent 43.5% 100%),
  repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px);
  mask-image:linear-gradient(180deg,#000,transparent 72%)}
body::after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.11;background-image:radial-gradient(circle at 1px 1px,#fff 1px,transparent 0);background-size:18px 18px}
.app{max-width:520px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;position:relative;isolation:isolate;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0) 16rem)}
.screen{display:none;flex:1;flex-direction:column;padding:1.35rem 1.15rem calc(2.1rem + env(safe-area-inset-bottom));position:relative}
.screen.active{display:flex;animation:screenIn .42s cubic-bezier(.2,.8,.2,1)}
@keyframes screenIn{from{opacity:0;transform:translateY(14px) scale(.985);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}

/* Topbar */
.topbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:calc(.82rem + env(safe-area-inset-top)) 1.05rem .82rem;position:sticky;top:0;
  background:linear-gradient(180deg,rgba(7,24,45,.9),rgba(7,24,45,.72));backdrop-filter:blur(18px) saturate(1.25);-webkit-backdrop-filter:blur(18px) saturate(1.25);z-index:10;border-bottom:1px solid rgba(140,230,255,.13);box-shadow:0 10px 30px rgba(0,0,0,.2)}
.brand{display:flex;align-items:center;gap:.62rem;font-weight:900;letter-spacing:.15px;min-width:0;text-shadow:0 1px 10px rgba(0,200,255,.2)}
.brand .dot{width:31px;height:23px;border-radius:8px;background:
  radial-gradient(circle at 50% 76%,#fff 0 2px,transparent 2.5px),
  repeating-linear-gradient(90deg,var(--teal) 0 2px,transparent 2px 5px),
  linear-gradient(135deg,var(--blue),var(--cyber));box-shadow:0 0 0 1px rgba(255,255,255,.2) inset,0 0 22px rgba(0,200,255,.28)}
.brand small{display:block;font-size:.58rem;color:#8CE6FF;font-weight:800;letter-spacing:.62px;margin-top:.03rem;white-space:nowrap}
.prog-mini{font-size:.85rem;font-weight:900;color:#fff;background:linear-gradient(135deg,rgba(48,112,231,.38),rgba(0,200,255,.18));
  border:1px solid rgba(140,230,255,.4);padding:.33rem .72rem;border-radius:999px;box-shadow:0 0 22px rgba(0,200,255,.12) inset,0 8px 20px rgba(0,0,0,.18)}

/* Hero / titles */
h1{font-size:clamp(1.85rem,8vw,2.55rem);font-weight:900;line-height:1.02;margin-bottom:.68rem;letter-spacing:-.055em;text-wrap:balance}
h1 .accent{background:linear-gradient(100deg,#fff 0%,#8CE6FF 28%,var(--cyber) 58%,#B8A5FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 26px rgba(0,200,255,.22)}
h2{font-size:1.38rem;font-weight:900;margin-bottom:.48rem;letter-spacing:-.03em;text-wrap:balance}
.lead{color:#c4d2e7;font-size:1rem;line-height:1.62;margin-bottom:1.05rem}
.lead strong{color:#fff;font-weight:900}
.eyebrow{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:800;letter-spacing:.6px;
  text-transform:uppercase;color:#a7efff;background:linear-gradient(135deg,rgba(22,189,235,.16),rgba(48,112,231,.12));border:1px solid rgba(140,230,255,.36);
  padding:.38rem .76rem;border-radius:999px;margin-bottom:1rem;box-shadow:0 10px 30px rgba(0,0,0,.12),0 0 22px rgba(0,200,255,.09) inset;width:max-content;max-width:100%}

/* Forms */
.field{margin:.74rem 0}
.field label{display:block;font-size:.78rem;font-weight:900;color:#d8e6f8;margin-bottom:.38rem;letter-spacing:.02em}
.field input,.field select,.field textarea{width:100%;padding:.85rem .9rem;border-radius:12px;border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.055));color:#fff;font-size:1rem;font-family:inherit;min-height:48px;box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 12px 28px rgba(0,0,0,.14);transition:border-color .18s,box-shadow .18s,background .18s,transform .18s}
.field input::placeholder,.field textarea::placeholder{color:#7f95b3}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:#8CE6FF;box-shadow:0 0 0 4px rgba(0,200,255,.18),0 0 30px rgba(0,200,255,.11);background:rgba(255,255,255,.095)}
.field textarea{min-height:112px;resize:vertical;line-height:1.45}
.consent{display:flex;gap:.6rem;align-items:flex-start;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);
  border-radius:16px;padding:.85rem;margin:.82rem 0;font-size:.85rem;color:#c7d5ea;line-height:1.45;box-shadow:0 16px 34px rgba(0,0,0,.13)}
.consent input{margin-top:.2rem;width:22px;height:22px;flex:0 0 auto;accent-color:var(--teal)}
.notice{font-size:.82rem;color:#9fb2cc;line-height:1.5;background:rgba(255,255,255,.04);border-left:3px solid var(--teal);
  border-radius:12px;padding:.82rem .88rem;margin:.75rem 0;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.micro{font-size:.8rem;color:#97abc7;margin-top:.65rem;text-align:center;line-height:1.45}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:48px;padding:.98rem 1rem;border:none;
  border-radius:16px;font-size:1.02rem;font-weight:900;cursor:pointer;font-family:inherit;letter-spacing:-.01em;position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;box-shadow:0 14px 30px rgba(48,112,231,.36),0 1px 0 rgba(255,255,255,.22) inset;
  transition:transform .16s cubic-bezier(.2,.8,.2,1),box-shadow .16s,opacity .16s,filter .16s}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0 35%,rgba(255,255,255,.3) 45%,transparent 56%);transform:translateX(-120%);transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.btn:hover{transform:translateY(-1px);box-shadow:0 18px 40px rgba(48,112,231,.42),0 1px 0 rgba(255,255,255,.25) inset;filter:saturate(1.08)}
.btn:hover::after{transform:translateX(120%)}
.btn:active{transform:translateY(1px) scale(.995)}
.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.btn.ghost{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 30px rgba(0,0,0,.12);color:#eaf6ff}
.btn.gold{background:linear-gradient(135deg,#F59E0B,#FF7A1A 52%,#FF2D8E);box-shadow:0 16px 38px rgba(245,158,11,.35),0 0 26px rgba(255,45,142,.15)}
.btn-row{display:flex;gap:.6rem;margin-top:.6rem}
.spacer{flex:1}
:is(a,button,input,textarea,select,.station,.topic,.star):focus-visible{outline:3px solid rgba(140,230,255,.95);outline-offset:3px;box-shadow:0 0 0 7px rgba(0,200,255,.16)}

/* ---------- Kaleidoscope ---------- */
.kaleido-wrap{position:relative;display:flex;flex-direction:column;align-items:center;margin:.05rem 0 1.1rem;padding:.45rem 0 .2rem}
.kaleido-wrap::before{content:"";position:absolute;top:.65rem;left:50%;width:330px;height:330px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(0,200,255,.18),rgba(48,112,231,.08) 38%,transparent 68%);filter:blur(8px);z-index:-1;animation:orbreathe 5.5s ease-in-out infinite}
#kaleido{touch-action:manipulation}
.kaleido{position:relative;width:min(74vw,292px);height:min(74vw,292px);filter:drop-shadow(0 18px 36px rgba(0,200,255,.18)) drop-shadow(0 6px 18px rgba(0,0,0,.45));border-radius:50%}
.kaleido::before{content:"";position:absolute;inset:-12px;border-radius:50%;background:conic-gradient(from -90deg,var(--c-identity),var(--c-ai-security),var(--c-zero-trust-access),var(--c-hybrid-mesh-firewall),var(--c-ai-workloads-k8s),var(--c-secops-splunk),var(--c-security-cloud-control),var(--c-identity));opacity:.34;filter:blur(14px);animation:slowSpin 16s linear infinite;z-index:-1}
.kaleido::after{content:"";position:absolute;inset:10%;border-radius:50%;pointer-events:none;background:conic-gradient(from 12deg,transparent 0 16%,rgba(255,255,255,.38) 18%,transparent 21% 100%);mix-blend-mode:screen;opacity:.24;animation:slowSpin 8s linear reverse infinite}
.kaleido svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.halo-ring{fill:none;stroke:rgba(140,230,255,.26);stroke-width:1.5;stroke-dasharray:3 8;filter:drop-shadow(0 0 10px rgba(0,200,255,.3));animation:slowSpin 18s linear infinite;transform-origin:130px 130px}
.inner-ring{fill:none;stroke:rgba(255,255,255,.22);stroke-width:1}
.wedge{cursor:pointer;opacity:.19;stroke:rgba(255,255,255,.18);stroke-width:1.35;stroke-linejoin:round;transition:opacity .5s ease,filter .5s ease,fill .85s ease,transform .5s cubic-bezier(.2,.8,.2,1);transform-origin:130px 130px;filter:saturate(.72) brightness(.78)}
.wedge.on{opacity:1;filter:url(#kGlow) saturate(1.24) brightness(1.06);animation:wedgeIgnite .72s cubic-bezier(.18,.9,.22,1.18) both}
.wedge:hover{opacity:.8;filter:saturate(1.18) brightness(1.05);transform:scale(1.015)}
.facet-line{stroke:rgba(255,255,255,.16);stroke-width:1;stroke-linecap:round;opacity:.85;filter:drop-shadow(0 0 4px rgba(255,255,255,.1))}
@keyframes wedgeIgnite{0%{transform:scale(.75) rotate(-2deg);opacity:.25;filter:brightness(2.1) blur(1px)}58%{transform:scale(1.045) rotate(1deg);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes orbreathe{50%{opacity:.55;transform:translateX(-50%) scale(1.06)}}
@keyframes slowSpin{to{transform:rotate(360deg)}}
.kaleido .core{fill:url(#coreGrad);stroke:rgba(140,230,255,.4);stroke-width:1.5;transition:fill .8s,stroke .8s,filter .8s;filter:drop-shadow(0 0 14px rgba(0,200,255,.22))}
.kaleido.complete{animation:completePulse 1.2s cubic-bezier(.2,.8,.2,1) both}
.kaleido.complete::before{background:radial-gradient(circle,#fff 0 9%,rgba(255,255,255,.72) 16%,rgba(0,200,255,.18) 42%,transparent 72%);opacity:.9;filter:blur(18px);animation:whiteBloom 1.5s ease-out both,slowSpin 14s linear infinite 1.5s}
.kaleido.complete::after{inset:-8%;background:conic-gradient(from 0deg,transparent 0 10%,rgba(255,255,255,.9) 12%,transparent 15% 24%,rgba(255,255,255,.72) 27%,transparent 31% 100%);opacity:0;animation:whiteSweep 1.65s cubic-bezier(.22,.8,.2,1) .05s both}
.kaleido.complete .core{fill:#ffffff;stroke:#fff;filter:drop-shadow(0 0 18px rgba(255,255,255,.95)) drop-shadow(0 0 36px rgba(0,200,255,.55));animation:coreWhite 1.25s ease-out both,glow 1.8s ease-in-out 1.25s infinite alternate}
.kaleido.complete .wedge{opacity:1;fill:#ffffff!important;stroke:rgba(255,255,255,.82);filter:drop-shadow(0 0 8px rgba(255,255,255,.8));animation:convergeWhite 1.18s cubic-bezier(.18,.9,.2,1.08) both;animation-delay:calc(var(--i,0) * 70ms)}
.kaleido.complete .facet-line{stroke:rgba(255,255,255,.5);animation:linesFlash 1.2s ease-out both}
@keyframes convergeWhite{0%{transform:scale(1);filter:brightness(1.1)}34%{transform:scale(.88) rotate(calc((var(--i,0) - 3) * 1.6deg));filter:brightness(2.4) drop-shadow(0 0 14px rgba(255,255,255,.8))}68%{transform:scale(1.045);fill:#fff}100%{transform:scale(1);fill:#fff;filter:drop-shadow(0 0 9px rgba(255,255,255,.9))}}
@keyframes completePulse{0%{transform:scale(.985)}55%{transform:scale(1.035)}100%{transform:scale(1)}}
@keyframes whiteBloom{0%{transform:scale(.7) rotate(0deg);opacity:.35}72%{transform:scale(1.08) rotate(210deg);opacity:1}100%{transform:scale(1) rotate(360deg);opacity:.78}}
@keyframes whiteSweep{0%{opacity:0;transform:rotate(-120deg) scale(.78)}30%{opacity:1}100%{opacity:.28;transform:rotate(260deg) scale(1.06)}}
@keyframes coreWhite{0%{r:26px;filter:drop-shadow(0 0 4px rgba(255,255,255,.2))}62%{r:42px;filter:drop-shadow(0 0 34px rgba(255,255,255,.95))}100%{r:30px}}
@keyframes glow{from{filter:drop-shadow(0 0 12px rgba(255,255,255,.75))}to{filter:drop-shadow(0 0 28px rgba(255,255,255,1)) drop-shadow(0 0 42px rgba(0,200,255,.45))}}
@keyframes linesFlash{50%{opacity:1;stroke:#fff}100%{opacity:.55}}
.kaleido-center{position:absolute;top:.45rem;left:50%;transform:translateX(-50%);width:min(74vw,292px);height:min(74vw,292px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}
.kaleido-center .cnt{font-size:2.75rem;font-weight:900;color:#fff;line-height:1;text-shadow:0 0 18px rgba(0,200,255,.38)}
.kaleido-center .lbl{font-size:.7rem;letter-spacing:1.15px;color:#a9bad3;text-transform:uppercase;margin-top:.24rem;font-weight:900}
.kaleido.complete + .kaleido-center .cnt,.kaleido.complete + .kaleido-center .lbl{color:#07182D;text-shadow:0 1px 16px rgba(255,255,255,.75)}

/* Station list */
.stations{display:flex;flex-direction:column;gap:.72rem;margin-top:.35rem}
.station{display:flex;align-items:center;gap:.85rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  border-radius:18px;padding:.85rem .9rem;cursor:pointer;min-height:68px;position:relative;overflow:hidden;box-shadow:0 15px 34px rgba(0,0,0,.13),0 1px 0 rgba(255,255,255,.05) inset;transition:transform .16s,border-color .16s,background .16s,box-shadow .16s}
.station::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--st,#16BDEB),transparent 38%);opacity:.08;pointer-events:none}
.station:active{transform:scale(.99)}
.station:hover{transform:translateY(-1px);border-color:rgba(140,230,255,.24);background:rgba(255,255,255,.075)}
.station .chip{width:42px;height:42px;border-radius:14px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  font-weight:900;color:#fff;font-size:.9rem;box-shadow:0 10px 26px rgba(0,0,0,.25),0 1px 0 rgba(255,255,255,.25) inset}
.station .info{flex:1;min-width:0}
.station .info .t{font-weight:900;font-size:.96rem;color:#fff;letter-spacing:-.015em}
.station .info .s{font-size:.78rem;color:#9db0ca;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.08rem}
.station .state{font-size:1.3rem}
.station.done{border-color:rgba(34,197,94,.48);background:linear-gradient(135deg,rgba(34,197,94,.13),rgba(255,255,255,.045));box-shadow:0 16px 38px rgba(34,197,94,.08)}
.station.locked .state{opacity:.5}

/* Modal / sheet */
.sheet{position:fixed;inset:0;z-index:50;display:none;align-items:flex-end;justify-content:center;
  background:radial-gradient(circle at 50% 20%,rgba(0,200,255,.12),transparent 24rem),rgba(3,8,18,.76);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.sheet.open{display:flex;animation:screenIn .25s}
.sheet-card{width:100%;max-width:520px;background:linear-gradient(180deg,rgba(15,28,52,.98),rgba(8,16,30,.99));border:1px solid rgba(140,230,255,.18);
  border-radius:28px 28px 0 0;padding:1rem 1.15rem calc(1.65rem + env(safe-area-inset-bottom));max-height:92vh;overflow-y:auto;animation:up .36s cubic-bezier(.2,.8,.2,1);box-shadow:0 -20px 60px rgba(0,0,0,.42),0 1px 0 rgba(255,255,255,.08) inset}
@keyframes up{from{transform:translateY(44px) scale(.985);opacity:.55;filter:blur(3px)}to{transform:none;opacity:1;filter:none}}
.grip{width:48px;height:5px;border-radius:99px;background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(140,230,255,.58),rgba(255,255,255,.18));margin:.12rem auto .98rem}
.comic-page{width:100%;border-radius:18px;border:1px solid rgba(255,255,255,.16);display:block;background:#0b1222;margin:.75rem 0;box-shadow:0 18px 40px rgba(0,0,0,.28)}
.badge-station{display:inline-flex;align-items:center;gap:.5rem;font-weight:800;font-size:.8rem;color:#fff;
  padding:.38rem .76rem;border-radius:999px;margin-bottom:.6rem;box-shadow:0 12px 26px rgba(0,0,0,.22),0 1px 0 rgba(255,255,255,.24) inset}
.flag-row{display:flex;gap:.55rem;margin-top:.55rem;align-items:stretch}
.flag-row input{flex:1;text-transform:uppercase;letter-spacing:1px;min-width:0;min-height:48px;padding:.85rem .9rem;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.055));color:#fff;font-size:1rem;font-family:inherit;box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 12px 28px rgba(0,0,0,.14)}
.err{color:#fecaca;font-size:.82rem;margin-top:.4rem;min-height:1.1rem}
.piece{display:flex;align-items:center;gap:.7rem;background:rgba(255,255,255,.06);border:1px dashed rgba(22,189,235,.4);
  border-radius:18px;padding:.9rem;margin:.75rem 0;box-shadow:0 16px 34px rgba(0,0,0,.16);position:relative;overflow:hidden}
.piece::after{content:"33 RPM";position:absolute;right:.82rem;top:.72rem;color:rgba(255,255,255,.18);font-size:.68rem;font-weight:900;letter-spacing:.18em}
.vinyl{width:58px;height:58px;border-radius:50%;background:
  radial-gradient(circle at 50% 50%,#05070d 0 9%,var(--pc,#16BDEB) 9.5% 18%,#111827 18.5% 23%,transparent 23.5%),
  repeating-radial-gradient(circle,#151923 0 2px,#05070d 2.7px 4px),
  conic-gradient(from 24deg,rgba(255,255,255,.12),transparent 16%,rgba(255,255,255,.08) 30%,transparent 44%,rgba(255,255,255,.14) 58%,transparent 76%);
  border:2px solid #02040a;position:relative;flex:0 0 auto;box-shadow:0 14px 26px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.1) inset;animation:vinylFloat 3.8s ease-in-out infinite}
.vinyl::before{content:"";position:absolute;inset:8px;border-radius:50%;border:1px solid rgba(255,255,255,.11)}
.vinyl::after{content:"";position:absolute;inset:24px;border-radius:50%;background:#f8fbff;box-shadow:0 0 0 5px var(--pc,#16BDEB),0 0 20px rgba(255,255,255,.38)}
@keyframes vinylFloat{50%{transform:translateY(-2px) rotate(7deg)}}

/* Leads interests */
.topics{display:grid;grid-template-columns:1fr 1fr;gap:.62rem;margin:.72rem 0}
.topic{display:flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);
  border-radius:15px;padding:.7rem .7rem;cursor:pointer;font-size:.82rem;font-weight:800;color:#dbe7f7;min-height:54px;transition:.16s ease;box-shadow:0 12px 28px rgba(0,0,0,.1)}
.topic input{width:20px;height:20px;accent-color:var(--teal);flex:0 0 auto}
.topic.on{border-color:var(--teal);background:rgba(22,189,235,.14);box-shadow:0 0 0 1px rgba(22,189,235,.18),0 16px 30px rgba(0,200,255,.1)}

/* Stars */
.stars{display:flex;gap:.28rem;justify-content:center;margin:.65rem 0 .4rem;font-size:2.45rem;filter:drop-shadow(0 6px 18px rgba(0,0,0,.22))}
.star{cursor:pointer;color:#34435b;transition:color .14s,transform .14s,text-shadow .14s;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.star:hover{transform:translateY(-2px) rotate(-4deg);color:#6b7d98}
.star.on{color:#F59E0B;transform:scale(1.08);text-shadow:0 0 20px rgba(245,158,11,.42)}

/* Confetti / success */
.success-badge{width:112px;height:112px;border-radius:50%;margin:.4rem auto 1rem;display:flex;align-items:center;justify-content:center;
  font-size:3.2rem;background:radial-gradient(circle,#fff 0 32%,rgba(34,197,94,.35) 33%,transparent 72%);box-shadow:0 0 42px rgba(255,255,255,.32),0 18px 50px rgba(0,0,0,.28);animation:wedgeIgnite .7s}
.center{text-align:center}
.pill{display:inline-block;background:rgba(245,158,11,.16);border:1px solid rgba(245,158,11,.4);color:#ffd9a0;
  font-weight:900;font-size:.84rem;padding:.45rem .86rem;border-radius:999px;margin:.55rem 0;box-shadow:0 14px 30px rgba(245,158,11,.1)}
.dev-note{position:fixed;bottom:8px;left:0;right:0;text-align:center;font-size:.68rem;color:#5b6b85;pointer-events:none}
@media (max-width:380px){.topics{grid-template-columns:1fr}.flag-row{flex-direction:column}.flag-row .btn{width:100%!important}.brand small{font-size:.52rem}.kaleido-center{width:min(74vw,292px);height:min(74vw,292px)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.screen.active,.sheet.open{animation:none!important}.kaleido::before,.kaleido::after{display:none}}
