/* NuvoMilo kit-builder: block board + piece list. Per-kit colours via --c1/--c2; motion = transform/opacity. Loaded only on the kit pages (/en|es/kits/...). */
.k-yellow{--c1:#f59e0b;--c2:#c2410c}.k-blue{--c1:#2f80ed;--c2:#6d28d9}.k-peach{--c1:#ff8a4c;--c2:#c2255c}
@keyframes kit-snap{0%{transform:translateY(-60%) scale(.92);opacity:0}55%{transform:translateY(7%);opacity:1}78%{transform:translateY(-3%)}100%{transform:none}}
@keyframes kit-shine{0%{transform:translateX(-110%);opacity:1}100%{transform:translateX(110%);opacity:1}}
@keyframes kit-flow{to{background-position:100% 50%}}
.kit-board{--stud:radial-gradient(circle closest-side,rgba(255,255,255,.55) 0 58%,rgba(0,0,0,.14) 63%,transparent 70%);position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,120px));gap:10px;justify-content:center;min-width:0;transition:gap .4s var(--ease)}
.kit-board:after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.7) 50%,transparent 65%)}
.kit-board.is-done{gap:0;border-radius:22px;overflow:hidden}
.kit-board.is-done:after{animation:kit-shine .9s var(--ease) .3s 1 both}
.kit-tile{position:relative;container-type:inline-size;aspect-ratio:1;display:grid;place-items:center;border:2px dashed rgba(29,27,24,.38);border-radius:22px;background:rgba(255,255,255,.4);transition:border-radius .4s var(--ease)}
.kit-tile.is-on{border:2px solid transparent;background:linear-gradient(145deg,var(--c1),var(--c2));box-shadow:inset 0 -.5em 0 rgba(0,0,0,.16),inset 0 2px 0 rgba(255,255,255,.4),0 12px 18px -10px var(--c2)}
.kit-tile.is-on:before{content:'';position:absolute;inset:9%;pointer-events:none;background:var(--stud) 0 0/19% 19% no-repeat,var(--stud) 100% 0/19% 19% no-repeat,var(--stud) 0 100%/19% 19% no-repeat,var(--stud) 100% 100%/19% 19% no-repeat}
.kit-board.is-done .kit-tile{border-radius:0;box-shadow:inset 0 -.5em 0 rgba(0,0,0,.16),inset 0 2px 0 rgba(255,255,255,.4)}
.kit-glyph{display:grid;place-items:center;line-height:1;color:var(--ink)}
.kit-tile .kit-glyph{font-size:46cqw;opacity:.35}
.kit-tile.is-on .kit-glyph{color:#fff;opacity:1;text-shadow:0 2px 0 rgba(0,0,0,.22)}
.kit-tile.pop,.kit-pieces .kit-glyph.pop{animation:kit-snap .32s cubic-bezier(.3,1.4,.5,1)}
.guide-hero .kit-board{margin-top:6px}
.kit-main{padding-top:28px;padding-bottom:72px}
.kit-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:8px}
.kit-count{font-size:clamp(18px,4.6vw,22px);font-weight:800;letter-spacing:-.02em;line-height:1.3}
.button.kit-reset{min-height:44px;padding:8px 18px;font-size:14px}
.button.kit-cart{width:100%;margin-top:10px;text-align:center}
.kit-cartnote{margin-top:8px;font-size:13px;color:var(--muted)}
.kit-done{position:relative;overflow:hidden;display:grid;justify-items:start;gap:12px;margin:20px 0 4px;padding:24px;border-radius:var(--radius);color:#fff;background:linear-gradient(110deg,#1d1b18,var(--c2) 45%,#1d1b18) 0 50%/220% 100%;animation:kit-flow 8s ease-in-out infinite alternate}
.kit-done .milo.mini{margin-bottom:0}
.kit-done h2{font-size:clamp(28px,6vw,40px)}
.kit-done p{font-size:16px}
.kit-done-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}
.kit-done .text-link{color:#fff;text-decoration:underline;text-underline-offset:5px}
.kit-url{width:100%;min-height:44px;padding:0 14px;border:0;border-radius:12px;font-size:16px;color:var(--ink);background:#fff}
.kit-h{font-size:clamp(26px,5vw,36px);margin:30px 0 16px}
.kit-pieces{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.kit-pieces li{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px 14px;align-content:start;padding:16px;border:1px solid var(--line);border-radius:22px;background:#fff;transition:border-color .3s,box-shadow .3s}
.kit-pieces li.is-on{border-color:var(--c2);box-shadow:0 14px 26px -20px var(--c2)}
.kit-pieces .kit-glyph{width:56px;height:56px;border:2px dashed rgba(29,27,24,.3);border-radius:16px;font-size:28px;color:rgba(29,27,24,.4)}
.kit-pieces li.is-on .kit-glyph{border-color:transparent;background:linear-gradient(145deg,var(--c1),var(--c2));color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.22);box-shadow:inset 0 -5px 0 rgba(0,0,0,.16)}
.kit-pieces h3{font-size:19px;line-height:1.2;letter-spacing:-.02em;margin-bottom:6px;overflow-wrap:anywhere}
.kit-why{font-size:15px}
.kit-check{margin-top:6px;font-size:14px;color:var(--muted)}
.kit-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px}
.kit-toggle{flex:1 1 150px;min-height:48px;padding:10px 18px;border:2px solid var(--c2);border-radius:100px;background:#fff;color:var(--ink);font-size:15px;font-weight:800;line-height:1.2;transition:background-color .2s,color .2s}
.kit-toggle[aria-pressed=true]{background:var(--c2);color:#fff}
.kit-toggle[aria-pressed=true]:before{content:'✓ ';content:'✓ ' / ''}
.button.kit-link{flex:1 1 190px;min-height:48px;padding:10px 18px;font-size:14px;text-align:center}
.kit-hint{margin-top:22px}
@media(min-width:700px){.kit-pieces{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.kit-done{grid-template-columns:auto 1fr;align-items:center;column-gap:24px}.kit-done>*{grid-column:2}.kit-done .milo{grid-column:1;grid-row:1/span 4}.button.kit-cart{width:auto}}
@media(prefers-reduced-motion:reduce){*,:before,:after{animation:none!important;transition:none!important}}
