*{box-sizing:border-box}body{color:#4a2a5a;background:linear-gradient(160deg,#ffe0f0,#e0e8ff);min-height:100vh;margin:0;padding:12px;font-family:Trebuchet MS,Comic Sans MS,sans-serif}h1{text-align:center;margin:4px 0 12px;font-size:clamp(1.4rem,4vw,2.2rem)}main{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:16px;max-width:960px;margin:0 auto;display:flex}#stage{border:5px solid #fff;border-radius:24px;width:min(320px,80vw);overflow:hidden;box-shadow:0 8px 24px #7a5cff44}#stage.pop svg{animation:.3s pop}#stage svg{width:100%;height:auto;display:block}@keyframes pop{50%{transform:scale(1.04)}}#panel{background:#fffc;border-radius:24px;flex:1;min-width:300px;max-width:580px;padding:14px;box-shadow:0 8px 24px #7a5cff22}#tabs{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}button{font:inherit;cursor:pointer;border:0;border-radius:14px}#tabs button{color:#4a2a5a;background:#f0e6ff;padding:8px 12px}#tabs button.on{color:#fff;background:#7a5cff}#colors{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.swatch{border:3px solid #fff;border-radius:50%;width:36px;height:36px;box-shadow:0 0 0 2px #cdbbea}.swatch.on{box-shadow:0 0 0 4px #7a5cff}#options{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;min-height:120px;display:grid}.opt{color:#4a2a5a;background:#fff;border:3px solid #eadcff;padding:4px;font-size:.85rem}.opt.on{background:#f3edff;border-color:#7a5cff}.opt svg{border-radius:8px;width:100%;height:80px;display:block}#actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}#actions button{color:#fff;background:#ff5c8a;flex:1;padding:12px;font-size:1rem;font-weight:700}#actions #reset{background:#9a8ab8}#actions #photo{background:#3fb8ff}#timer{text-align:center;color:#ff5c8a;margin:0 0 10px;font-size:2.4rem;font-weight:700}#podium{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:12px;max-width:760px;margin:16px auto 0;display:flex}#podium[hidden]{display:none}.place{text-align:center;background:#fffc;border-radius:20px;width:200px;padding:8px;font-weight:700;box-shadow:0 8px 24px #7a5cff22}.place svg{border-radius:14px;width:100%;height:auto;display:block}.place.first{transform:translateY(-24px)}
