:root{--paper:#fbf8f0;--ink:#3f4038;--muted:#6e7065;--line:#dedfd3;--green:#405944;--yellow:#edc66d;--sage:#9fab7b;--peach:#eeb499;--lavender:#b8a5c8;--blue:#9bbecf}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-rounded,'Trebuchet MS',system-ui,sans-serif;font-size:16px}button,a,input{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #456b90;outline-offset:5px}button{touch-action:manipulation}button:disabled{cursor:default}h1,h2,h3,p{margin:0}h1,h2{font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(2.1rem,4vw,3.5rem);line-height:1.12}h2{font-size:clamp(1.8rem,4vw,2.8rem)}h3{font-size:1.2rem}p{line-height:1.7}.topbar{max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:28px 44px;gap:20px}.brand{border:0;background:none;display:flex;align-items:center;gap:7px;font-size:1.6rem;letter-spacing:-.06em;white-space:nowrap}.brand strong{font-weight:800}.brand-dot{width:25px;height:25px;border-radius:50%;background:var(--yellow);display:inline-block;margin-right:5px}.quiet{background:transparent;border:1px solid var(--line);border-radius:100px;padding:12px 18px;font-size:.9rem;min-height:46px}.quiet:hover{background:#eeeee3}.top-actions{display:flex;gap:10px}main{max-width:1192px;margin:auto;padding:18px 24px 56px}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:14px 5px 0}.eyebrow{text-transform:uppercase;font-size:.76rem;font-weight:700;letter-spacing:.17em;color:var(--green);margin-bottom:12px}.intro p{margin-top:12px;color:var(--muted);font-size:1.1rem}.levels{display:flex;border:1px solid var(--line);padding:5px;border-radius:100px;flex-shrink:0;gap:3px}.levels button{background:none;border:0;border-radius:50px;padding:11px 17px;line-height:1.3}.levels button.active{background:var(--green);color:white}.levels small{display:block;font-size:.78rem;margin-top:3px}.friends{width:100%;height:240px;object-fit:cover;object-position:center 57%;mix-blend-mode:multiply;display:block;margin:0 auto 8px}.sectionline{display:flex;align-items:center;justify-content:space-between;margin:8px 4px 20px;gap:12px}.sectionline h2{font-size:1.3rem;letter-spacing:-.02em}.sectionline span{color:var(--muted);font-size:.88rem}.games{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gamecard{border:1px solid #dcded0;border-radius:24px;padding:22px;text-align:left;background:#fffdf8;min-height:190px;display:flex;flex-direction:column;gap:9px;transition:background .2s}.gamecard:hover{background:#f2f2e8}.cardtop{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.category{font-size:.73rem;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:var(--muted)}.gamecard h3{font-size:1.38rem;font-weight:600;letter-spacing:-.035em}.gamecard p{font-size:.93rem;color:var(--muted);line-height:1.4}.cardicon{width:90px;height:58px;display:flex;align-items:center;gap:5px}.chipshape{display:inline-block;flex-shrink:0;width:32px;height:32px;background:var(--yellow);border:1px solid #00000009}.circle{border-radius:50%}.square{border-radius:7%}.triangle{clip-path:polygon(50% 0,100% 100%,0 100%);border:0}.oval{border-radius:50%;width:23px}.rectangle{border-radius:8%;width:40px;height:27px}.tile{display:inline-flex;align-items:center;justify-content:center;background:#dae5ea;border-radius:7px;width:35px;height:43px;font-size:1.4rem;font-weight:600}.numbericon{font-size:2.3rem;font-weight:500;letter-spacing:.08em;color:var(--green)}.below{margin-top:24px;padding:22px 26px;border:1px dashed #c8cdb9;border-radius:20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.below p{font-size:.95rem;color:var(--muted)}.below strong{display:block;font-size:1rem;margin-bottom:4px;font-weight:600}.below button{flex-shrink:0}footer{max-width:1192px;margin:auto;padding:20px 29px 30px;display:flex;justify-content:space-between;color:var(--muted);font-size:.8rem;border-top:1px solid var(--line);gap:15px}.playtop{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.progress{display:flex;gap:8px}.progress i{width:11px;height:11px;border-radius:50%;background:#dfdfd2}.progress i.filled{background:var(--green)}.stage{background:#fffdf8;border:1px solid var(--line);border-radius:32px;text-align:center;padding:32px;min-height:560px;position:relative;overflow:hidden}.hostline{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:14px;color:var(--muted);font-size:.92rem}.avatar{height:64px;width:64px;display:inline-block;background-image:url('/assets/amigos-ale.png');background-size:320px 165px;background-position-y:-30px;mix-blend-mode:multiply}.promptrow{display:flex;justify-content:center;align-items:center;gap:16px}.repeat{border:1px solid var(--line);background:none;width:46px;height:46px;border-radius:50%;font-size:1.3rem;flex-shrink:0}.instruction{color:var(--muted);margin-top:10px}.choices{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;margin:34px auto 18px;max-width:790px}.choice{background:#f8f7f1;border:2px solid #e2e3d7;min-width:144px;min-height:158px;border-radius:24px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;padding:22px;font-size:1.2rem}.choice:hover:not(:disabled){border-color:var(--green)}.choice.selected{border-color:var(--green);background:#edf2e7}.choice .chipshape{width:76px;height:76px}.choice .oval{width:52px}.choice .rectangle{width:90px;height:60px}.swatch{width:80px;height:80px;border-radius:50%;border:1px solid #00000015}.feedback{font-size:1.2rem;min-height:34px;margin:12px 0;color:var(--green)}.primary{background:var(--green);color:#fff;border:0;border-radius:100px;padding:16px 30px;font-weight:600;min-height:54px}.primary:hover{background:#314a36}.secondary{background:transparent;border:1px solid var(--line);border-radius:100px;padding:16px 28px;min-height:54px}.targetshape{display:flex;justify-content:center;gap:15px;align-items:center;margin:26px auto 0;min-height:88px;flex-wrap:wrap}.targetshape .chipshape{width:64px;height:64px}.targetshape .oval{width:44px}.targetshape .rectangle{width:78px;height:54px}.countdot{height:42px;width:42px;background:var(--yellow);border-radius:50%;border:2px solid #d6ae50}.numchoice{font-size:2.8rem}.memorygrid{display:grid;grid-template-columns:repeat(3,1fr);max-width:580px;margin:28px auto 16px;gap:15px}.memorycard{height:112px;border-radius:20px;border:2px solid #dcded0;background:#e9ecdf;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#637353}.memorycard .chipshape{width:60px;height:60px}.memorycard.matched{background:#f4f6ef;border-color:#a7b791}.memorycard.revealed{background:#fffdf8;border-color:#8f9e7b}.finish{max-width:580px;margin:40px auto}.finish .avatar{transform:scale(1.5);margin:20px}.finish h2{margin:20px 0 12px}.finish p{margin-bottom:26px;color:var(--muted)}.finishactions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.questionmark{font-size:3rem;color:#7d806f}.patternitem{padding:14px;border-radius:18px;background:#f1f1e7}.parentgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.parentbox{background:#f3f4eb;padding:22px;border-radius:18px}.parentbox h3{margin-bottom:8px}.parentbox p,.parentbox li{font-size:.95rem;color:#626658}.parentbox ul{padding-left:20px;line-height:1.8}.parentbox.wide{grid-column:1/-1}.parentbox .quiet{margin-top:12px}dialog{border:1px solid var(--line);border-radius:28px;background:var(--paper);color:var(--ink);width:min(800px,calc(100% - 30px));padding:32px;max-height:90vh}dialog::backdrop{background:#26352780}.close{float:right;margin-bottom:20px}#parentContent{clear:both}#parentContent h2{margin-bottom:15px}.gate{max-width:420px;padding:15px 0}.gate p{margin:16px 0}.gate input{width:100%;padding:16px;border:1px solid var(--line);border-radius:12px;margin:10px 0 20px;background:#fff}.error{color:#85442e}.episode{display:flex;gap:18px;align-items:flex-start;padding:16px 0;border-top:1px solid var(--line)}.episode b{color:var(--green);font-size:.9rem}.episode span{display:block;font-size:.9rem;color:var(--muted);margin-top:4px}.badge{display:inline-block;font-size:.76rem;background:#e8ebde;border-radius:30px;padding:6px 11px;margin:6px 0 18px}.hint{font-size:.86rem;color:var(--muted)}
@media(min-width:1400px){.friends{height:255px}.gamecard{min-height:195px}}@media(max-width:760px){.topbar{padding:20px;align-items:flex-start}.brand{font-size:1.35rem}.top-actions{gap:6px}.top-actions .quiet{padding:10px;font-size:.78rem}.intro{align-items:flex-start;flex-direction:column;padding:5px 0 0;gap:20px}.intro p{font-size:1rem}.levels{align-self:flex-start}.friends{height:175px;margin-top:6px}.games{grid-template-columns:repeat(2,1fr);gap:12px}.gamecard{padding:17px;min-height:180px}.gamecard h3{font-size:1.15rem}.gamecard p{font-size:.86rem}.category{font-size:.66rem}.cardicon{width:75px}.cardtop{align-items:flex-start;flex-direction:column-reverse;gap:9px;margin:0}.below{align-items:flex-start;flex-direction:column;padding:20px}.sectionline span{font-size:.8rem}.stage{padding:26px 16px;min-height:530px;border-radius:24px}.choices{gap:12px;margin-top:25px}.choice{min-width:110px;min-height:130px;padding:16px;flex:0 1 42%;font-size:1rem}.choice .chipshape{width:58px;height:58px}.choice .rectangle{width:73px;height:48px}.choice .oval{width:43px}.swatch{width:65px;height:65px}.promptrow{gap:9px}.promptrow h2{font-size:1.7rem}.repeat{width:40px;height:40px}.parentgrid{grid-template-columns:1fr}.parentbox.wide{grid-column:auto}dialog{padding:23px}.memorygrid{gap:10px}.memorycard{height:93px}.countdot{width:32px;height:32px}.targetshape{gap:10px}.targetshape .chipshape{width:44px;height:44px}.patternitem{padding:10px}footer{flex-direction:column;gap:6px}.playtop .quiet{padding:10px 14px}main{padding:12px 18px 35px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Keep the complete character silhouettes and names visible. */
.friends{height:auto;aspect-ratio:2.7;object-position:center 55%}

/* Signature: five letters, five character shapes. */
.brand{padding:0;line-height:1;min-width:180px;flex-shrink:0}.brand-logo{display:block;width:180px;height:auto}.topbar{align-items:center}
@media(max-width:520px){.topbar{flex-wrap:wrap;gap:14px}.brand{margin:0 auto}.top-actions{width:100%;justify-content:center}.topbar{padding-bottom:12px}}
