@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fredoka-latin-500-normal-B0JifZgm.woff2)format("woff2"),url(/assets/fredoka-latin-500-normal-BL692wg7.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(/assets/fredoka-latin-600-normal-CcrEjrB4.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-latin-700-normal-BOIZVyIN.woff2)format("woff2"),url(/assets/fredoka-latin-700-normal-C8FeHd3X.woff)format("woff")}:root{--ink:#3a2a6a;--purple:#6b3df5;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--font:"Fredoka", "Varela Round", ui-rounded, "SF Pro Rounded", system-ui, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;font-family:var(--font);color:#fff;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overscroll-behavior:none;touch-action:none;background:#1f1658;margin:0;overflow:hidden}#app{position:fixed;top:0;bottom:0;left:0;right:0}#stage{position:absolute;top:0;bottom:0;left:0;right:0}#stage canvas{touch-action:none;width:100%;height:100%;display:block}#ui{pointer-events:none;z-index:10;position:absolute;top:0;bottom:0;left:0;right:0}#ui>*{pointer-events:auto}.btn{font:inherit;color:#fff;cursor:pointer;touch-action:manipulation;background:0 0;border:none;padding:0}.btn-round{background:linear-gradient(#8f6bff 0%,#6b3df5 100%);border-radius:50%;place-items:center;transition:transform .12s cubic-bezier(.3,1.6,.5,1),box-shadow .12s;display:grid;position:relative;box-shadow:0 6px #4a24c4,0 10px 22px #1e0a5059,inset 0 2px #ffffff73}.btn-round:before{content:"";filter:blur(1px);pointer-events:none;background:#fff6;border-radius:50%;width:46%;height:26%;position:absolute;top:9%;left:18%}.btn-round:active{transform:translateY(5px)scale(.94);box-shadow:0 1px #4a24c4,0 4px 10px #1e0a504d,inset 0 2px #ffffff73}.btn-round svg{filter:drop-shadow(0 2px #0000002e);width:52%;height:52%}.btn-small{background:#fff3;width:68px;height:68px;box-shadow:0 4px #1e0a5040,inset 0 2px #ffffff59}.btn-small:active{box-shadow:0 1px #1e0a5040}.btn-mid{width:94px;height:94px}.btn-big{width:128px;height:128px}.btn-hero{width:168px;height:168px}.btn-hero,.btn-big{background:linear-gradient(#ffe45c 0%,#ffab1c 100%);box-shadow:0 8px #db7a00,0 14px 30px #78320059,inset 0 3px #fff9}.btn-hero:active,.btn-big:active{box-shadow:0 2px #db7a00,0 4px 10px #7832004d,inset 0 3px #fff9}.btn-hero svg,.btn-big svg{color:#fff;filter:drop-shadow(0 3px #b4500073);width:48%;height:48%;margin-left:8%}.btn-book{background:linear-gradient(#ff8fd2 0%,#ff4fa3 100%);box-shadow:0 6px #d02a7c,0 10px 22px #78003c4d,inset 0 2px #ffffff80}.btn-cake{background:linear-gradient(#7ee8ff 0%,#2bb4ff 100%);animation:2.4s ease-in-out infinite wobble;box-shadow:0 6px #1386cc,0 10px 22px #003c784d,inset 0 2px #ffffff80}.btn-glow{animation:1.6s ease-in-out infinite glow}.btn-glow:after{content:"";pointer-events:none;border:4px solid #fff0a0cc;border-radius:50%;animation:1.6s ease-out infinite ring;position:absolute;top:-10px;bottom:-10px;left:-10px;right:-10px}.btn-placeholder{width:94px;height:94px}.badge{color:#fff;text-align:center;background:#ff3b5c;border-radius:17px;min-width:34px;height:34px;padding:0 8px;font-size:21px;font-weight:700;line-height:34px;animation:1.2s ease-in-out infinite pulse;position:absolute;top:-6px;right:-6px;box-shadow:0 2px #b8122f}.corner{top:calc(var(--safe-t) + 12px);align-items:center;gap:10px;display:flex;position:absolute}.corner-tl{left:14px}.corner-tr{right:14px}.star-chip{text-shadow:0 2px #00000026;background:#fff3;border-radius:34px;align-items:center;gap:8px;height:68px;padding:0 24px 0 16px;font-size:38px;font-weight:700;display:flex;box-shadow:inset 0 2px #ffffff4d}.star-chip-icon{color:#ffd23f;filter:drop-shadow(0 0 6px #ffd23ccc);width:44px;height:44px}.star-chip-icon svg{stroke-width:1.5px;width:100%;height:100%}.title-actions,.results-bar{left:0;right:0;bottom:calc(var(--safe-b) + 28px);pointer-events:none;justify-content:center;align-items:center;gap:clamp(18px,5vw,40px);display:flex;position:absolute}.title-actions>*,.results-bar>*{pointer-events:auto}.results-bar{animation:.5s cubic-bezier(.3,1.5,.5,1) both rise}.topbar{top:calc(var(--safe-t) + 12px);pointer-events:none;align-items:center;gap:14px;height:70px;display:flex;position:absolute;left:14px;right:14px}.topbar>*{pointer-events:auto}.btn-back{background:#ffffff38;flex:none;width:68px;height:68px;box-shadow:0 4px #1e0a5040,inset 0 2px #ffffff59}.topbar-spacer{flex:none;width:118px}.progress{flex:1;max-width:620px;height:32px;margin:0 auto;position:relative}.progress-track{background:#ffffff2e;border-radius:16px;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;box-shadow:inset 0 3px 6px #00000040}.progress-fill{background:linear-gradient(90deg,#ff3b5c,#ff8a1c,#ffd60a,#35d45a,#2fa8ff,#9d5cff) 0 0/560px 100%;border-radius:16px;width:0;height:100%;transition:width .6s cubic-bezier(.34,1.56,.64,1);box-shadow:inset 0 3px #ffffff73,0 0 14px #ffffff80}.progress-fill.bump{animation:.4s ease-out bump}.progress-star{color:#ffffff8c;width:58px;height:58px;transition:color .3s;position:absolute;top:50%;right:-24px;transform:translateY(-50%)}.progress-star svg{stroke-width:1.4px;width:100%;height:100%}.progress-star.lit{color:#ffd23f;filter:drop-shadow(0 0 10px #ffd23ce6);animation:.8s cubic-bezier(.3,1.6,.5,1) spin-pop}#caption{z-index:12;pointer-events:none;opacity:0;will-change:transform;transition:opacity .2s;position:fixed;top:0;left:0}#caption.show{opacity:1}.caption-inner{animation:.35s cubic-bezier(.3,1.6,.5,1) both bubble-in;position:relative}#caption[data-side=right] .caption-inner{transform-origin:0%}#caption[data-side=left] .caption-inner{transform-origin:100%}#caption[data-side=above] .caption-inner{transform-origin:50% 100%}#caption[data-side=below] .caption-inner{transform-origin:50% 0}.caption-bubble{z-index:1;color:var(--ink);text-align:center;background:#fff;border-radius:26px;padding:10px 24px 12px;font-size:clamp(24px,2.5vw,34px);font-weight:600;line-height:1.2;position:relative;box-shadow:0 5px #3c1e8c2e,0 10px 24px #1e0a5040}.caption-tail{background:#fff;border-radius:5px;width:26px;height:26px;position:absolute;transform:rotate(45deg)}#caption[data-side=free] .caption-tail{display:none}@keyframes bubble-in{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:none}}.hl{margin:0 .06em;font-size:1.12em;font-weight:700;animation:.5s cubic-bezier(.3,1.8,.5,1) word-pop;display:inline-block}.hl-light{text-shadow:0 0 1px #3c2864e6,0 1px #3c2864b3,0 2px 2px #3c286459}.hl-pop{color:#ff2f8e}#overlay{z-index:30;padding:calc(var(--safe-t) + 12px) 12px calc(var(--safe-b) + 12px);background:#180a3cbd;justify-content:center;align-items:center;display:none;position:fixed;top:0;bottom:0;left:0;right:0}#overlay.open{display:flex}.panel{width:min(94vw,880px);max-height:100%;color:var(--ink);touch-action:pan-y;-webkit-overflow-scrolling:touch;background:linear-gradient(#fff 0%,#f5eeff 100%);border-radius:34px;padding:26px 26px 30px;animation:.45s cubic-bezier(.3,1.5,.5,1) both pop-in;position:relative;overflow-y:auto;box-shadow:0 10px #5a32c840,0 30px 60px #14003c73}.panel h1{color:var(--purple);text-align:center;margin:0 0 8px;font-size:clamp(36px,5vw,52px)}.panel-close{color:var(--purple);z-index:2;background:#ece4ff;position:absolute;top:14px;right:14px;box-shadow:0 4px #cfc0fb}.panel-close:before{display:none}.sticker-count{color:#8a6ad8;justify-content:center;align-items:center;gap:8px;margin-bottom:20px;font-size:32px;font-weight:600;display:flex}.sticker-count span{color:#ffc928;width:36px;height:36px}.sticker-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:16px;display:grid}.sticker{aspect-ratio:1;font:inherit;cursor:pointer;animation:.45s cubic-bezier(.3,1.6,.5,1) both appear;animation-delay:var(--d);border:none;border-radius:50%;place-items:center;display:grid;position:relative}.sticker.have{background:radial-gradient(circle at 35% 30%,#fff 0%,#fff0fb 60%,#ffd9f3 100%);font-size:62px;box-shadow:0 5px #f0c3e8,0 8px 16px #78288c26}.sticker.missing{color:#cdbff3;background:#faf7ff;border:3px dashed #ddd0fb;font-size:38px;font-weight:700}.sticker.new:after{content:"NEW";color:#fff;background:#ff3b5c;border-radius:12px;padding:3px 9px;font-size:16px;font-weight:700;animation:1s ease-in-out infinite pulse;position:absolute;top:-6px;right:-8px}.sticker.boing{animation:.55s cubic-bezier(.3,1.8,.5,1) boing}.gate{text-align:center;width:min(92vw,540px)}.gate p{color:#8a7ab8;margin:4px 0 12px;font-size:22px}.gate-q{margin:8px 0 18px;font-size:58px;font-weight:700}.gate-choices{justify-content:center;gap:14px;display:flex}.gate-choice{background:linear-gradient(#8f6bff,#6b3df5);border-radius:22px;min-width:108px;height:78px;font-size:36px;font-weight:700;box-shadow:0 5px #4a24c4}.gate-choice:active{transform:translateY(4px);box-shadow:0 1px #4a24c4}.gate-choice[disabled]{opacity:.45}.gate-choice.wrong{opacity:1;background:linear-gradient(#ff6b81,#e0244a);box-shadow:0 5px #a3132f}.gate-wait{color:var(--purple);margin:10px 0 6px;font-size:40px;font-weight:700}.version-bar{color:#8a7ab8;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 16px;margin:0 auto 4px;font-size:19px;display:flex}.version-bar b{color:var(--purple);font-size:23px}.version-status.good{color:#1f9a4a;font-weight:600}.version-status.warn{color:#d9730d;font-weight:600}.btn-update{background:linear-gradient(#62e982,#20b04a);border-radius:14px;padding:8px 18px;font-size:19px;font-weight:700;box-shadow:0 4px #158a36}.shake{animation:.45s shake}.settings{-webkit-user-select:text;user-select:text}.settings section{background:#fff;border-radius:22px;margin:18px 0;padding:16px 18px;box-shadow:0 3px #e6dcff}.settings h2{color:var(--purple);margin:0 0 12px;font-size:28px}.field{color:#7a6aa8;flex-direction:column;gap:8px;margin:12px 0;font-size:20px;display:flex}.row{gap:8px;display:flex}.text-input,.num-input,.select{font:inherit;color:var(--ink);-webkit-user-select:text;user-select:text;background:#faf7ff;border:2px solid #ddd0fb;border-radius:14px;outline:none;padding:10px 14px;font-size:24px}.num-input{width:96px}.num-input.wide{width:130px}.select{max-width:100%;font-size:20px}.toggle{cursor:pointer;justify-content:space-between;align-items:center;margin:12px 0;font-size:23px;display:flex;position:relative}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle i{background:#ddd0fb;border-radius:17px;flex:none;width:58px;height:34px;transition:background .2s;position:relative}.toggle i:after{content:"";background:#fff;border-radius:50%;width:28px;height:28px;transition:transform .25s cubic-bezier(.3,1.6,.5,1);position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #0003}.toggle input:checked+i{background:#35d45a}.toggle input:checked+i:after{transform:translate(24px)}.btn-text{color:var(--purple);background:#f0e9ff;border-radius:16px;margin:12px 0 2px;padding:12px 18px;font-size:21px;font-weight:600;display:block}.btn-text.danger{color:#e0244a;background:#ffe8ec}.btn-primary{background:linear-gradient(#8f6bff,#6b3df5);border-radius:20px;width:100%;margin-top:10px;padding:16px;font-size:30px;font-weight:700;display:block;box-shadow:0 5px #4a24c4}.summary{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;display:grid}.summary>div{background:#f5f0ff;border-radius:16px;flex-direction:column;align-items:center;padding:10px 4px;display:flex}.summary b{font-size:30px}.summary span{color:#8a7ab8;font-size:18px}.skill{margin:12px 0}.skill-head{justify-content:space-between;font-size:22px;display:flex}.skill-head span{color:#8a7ab8;font-size:18px}.skill-bar{background:#eee6ff;border-radius:6px;height:14px;margin:6px 0;overflow:hidden}.skill-bar i{background:linear-gradient(90deg,#9d5cff,#35d45a);border-radius:6px;height:100%;display:block}.skill-note{color:#b0692a;font-size:19px}.skill-note.good{color:#1f9a4a}.muted{color:#8a7ab8;font-size:20px;line-height:1.4}#wipe{z-index:50;visibility:hidden;clip-path:circle(0%);background:radial-gradient(circle,#ffffff38 2.5px,#0000 3.5px) 0 0/34px 34px,radial-gradient(circle,#8f5cf0 0%,#5a2f9e 45%,#24135e 100%);position:fixed;top:0;bottom:0;left:0;right:0}#boot{z-index:100;background:linear-gradient(#1f1658 0%,#5a2a7c 100%);place-items:center;transition:opacity .7s;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}#boot.hide{opacity:0;pointer-events:none}.boot-spinner{border:8px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:64px;height:64px;animation:.9s linear infinite spin}@keyframes glow{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes ring{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-7deg)}75%{transform:rotate(7deg)}}@keyframes bump{50%{filter:brightness(1.5)}}@keyframes spin-pop{0%{transform:translateY(-50%)scale(.5)rotate(-180deg)}to{transform:translateY(-50%)scale(1)rotate(0)}}@keyframes word-pop{0%{transform:scale(.4)}to{transform:scale(1)}}@keyframes pop-in{0%{opacity:0;transform:scale(.7)translateY(30px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(140px)}to{opacity:1;transform:none}}@keyframes appear{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes boing{0%{transform:scale(1)}30%{transform:scale(1.3)rotate(-8deg)}60%{transform:scale(.9)rotate(5deg)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-12px)}40%,80%{transform:translate(12px)}}@keyframes spin{to{transform:rotate(360deg)}}.code-panel{left:0;right:0;bottom:calc(var(--safe-b) + 14px);background:#120a30b8;border-radius:32px;flex-direction:column;align-items:center;gap:12px;width:-moz-fit-content;width:fit-content;max-width:96vw;margin:0 auto;padding:16px 18px 18px;animation:.5s cubic-bezier(.3,1.5,.5,1) both rise;display:flex;position:absolute;box-shadow:0 12px 30px #0000004d,inset 0 1px #ffffff26}.code-strip{justify-content:center;gap:10px;padding-bottom:22px;display:flex}.code-slot{background:#ffffff14;border:3px dashed #ffffff59;border-radius:18px;place-items:center;width:70px;height:70px;transition:transform .15s,box-shadow .15s;display:grid;position:relative}.code-slot.filled{background:var(--c);border:3px solid #ffffffe6;animation:.3s cubic-bezier(.3,1.8,.5,1) appear;box-shadow:0 5px #00000040,inset 0 3px #ffffff59}.code-slot svg,.code-arrow svg{color:#fff;filter:drop-shadow(0 2px #0003);width:70%;height:70%}.dir-right svg{transform:rotate(90deg)}.dir-down svg{transform:rotate(180deg)}.dir-left svg{transform:rotate(-90deg)}.code-slot.active{transform:scale(1.18);box-shadow:0 0 0 5px #fff,0 0 28px 8px #ffffffbf}.code-slot.error{animation:.45s shake;box-shadow:0 0 0 5px #ff3b5c,0 0 26px 8px #ff3b5cb3}.code-panel.debug .code-slot.filled{cursor:pointer;animation:2.2s ease-in-out infinite wobble}.slot-num{color:#ffffffb3;font-size:18px;font-weight:600;position:absolute;bottom:-26px}.code-palette{align-items:center;gap:14px;display:flex}.code-arrow{background:var(--c);border-radius:28px;place-items:center;width:98px;height:98px;transition:transform .1s;display:grid;box-shadow:0 7px #0000004d,inset 0 3px #fff6}.code-arrow:active{transform:translateY(5px)scale(.95);box-shadow:0 2px #0000004d}.code-arrow[disabled],.code-clear[disabled]{opacity:.4;filter:grayscale(.5);pointer-events:none}.code-arrow.hint{animation:.8s ease-in-out 4 pulse;box-shadow:0 0 0 6px #fff,0 0 30px 10px #ffffffb3}.code-clear{background:#ffffff2e;border-radius:50%;place-items:center;width:76px;height:76px;margin-left:8px;display:grid;box-shadow:0 5px #00000040}.code-clear svg{width:52%;height:52%}.code-go{letter-spacing:1px;text-shadow:0 3px #00501459;background:linear-gradient(#62e982 0%,#20b04a 100%);border-radius:49px;align-items:center;gap:8px;height:98px;padding:0 34px 0 24px;font-size:42px;font-weight:700;display:flex;box-shadow:0 8px #158a36,inset 0 3px #ffffff73}.code-go span{width:46px;height:46px;display:inline-grid}.code-go span svg{width:100%;height:100%}.code-go:active{transform:translateY(5px);box-shadow:0 3px #158a36}.code-go.ready{animation:1.3s ease-in-out infinite glow}.code-panel.debug .code-arrow,.code-panel.debug .code-clear{display:none}.code-panel.running .code-go{opacity:.5;pointer-events:none}.lyrics{left:0;right:0;bottom:calc(var(--safe-b) + 30px);white-space:nowrap;pointer-events:none;background:#1408329e;border-radius:36px;width:-moz-fit-content;width:fit-content;max-width:96vw;margin:0 auto;padding:40px 36px 16px;animation:.45s cubic-bezier(.3,1.5,.5,1) both rise;position:absolute;box-shadow:0 10px 30px #0000004d}.lyrics-line{color:#ffffff80;text-shadow:0 3px #00000040;font-size:clamp(40px,5vw,64px);font-weight:700;position:relative}.syl{transition:color .15s,transform .2s cubic-bezier(.3,1.8,.5,1);display:inline-block}.syl.done{color:#fff}.syl.on{color:#ffd23f;text-shadow:0 0 18px #ffd23fcc,0 3px #00000040;transform:scale(1.2)translateY(-4px)}.lyrics-ball{color:#ffd23f;filter:drop-shadow(0 0 8px #ffd23ce6);width:36px;height:36px;transition:transform .18s ease-out;position:absolute;top:4px;left:36px}.lyrics-ball svg{width:100%;height:100%}.lyrics-ball.hop svg{animation:.32s ease-out ball-hop}@keyframes ball-hop{40%{transform:translateY(-14px)}}.corner-br{top:auto;right:20px;bottom:calc(var(--safe-b) + 20px)}.btn-dress{background:linear-gradient(#ffb6e8 0%,#ff5fae 100%);animation:3s ease-in-out infinite wobble;box-shadow:0 8px #d33a86,0 14px 30px #78003c59,inset 0 3px #ffffff8c}.btn-dress svg{width:54%;height:54%;margin-left:0}.chip-part{align-items:center;gap:6px;display:inline-flex}.chip-friends{margin-left:20px}.chip-emoji{font-size:36px;line-height:1}.wardrobe{left:0;right:0;bottom:calc(var(--safe-b) + 16px);width:min(94vw,920px);color:var(--ink);background:#fffffff5;border-radius:34px;flex-direction:column;gap:16px;margin:0 auto;padding:18px 22px 24px;animation:.45s cubic-bezier(.3,1.5,.5,1) both rise;display:flex;position:absolute;box-shadow:0 10px #5a32c840,0 30px 60px #14003c73}.wardrobe-tabs{justify-content:center;gap:14px;display:flex}.wardrobe-tab{cursor:pointer;background:#efe8ff;border:none;border-radius:22px;width:96px;height:70px;font-size:40px;box-shadow:0 5px #d8ccfb}.wardrobe-tab.on{background:#6b3df5;box-shadow:0 5px #4a24c4}.wardrobe-grid{grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:18px 14px;display:grid}.wardrobe-item{aspect-ratio:1;font:inherit;cursor:pointer;background:#f5f0ff;border:none;border-radius:28px;place-items:center;display:grid;position:relative;box-shadow:0 5px #ddd0fb}.wardrobe-item:active{transform:translateY(4px)}.wardrobe-emoji{font-size:56px;line-height:1}.wardrobe-item.worn{background:#e8fff0;box-shadow:0 0 0 5px #35d45a,0 5px #b8ecc8}.wardrobe-item.locked .wardrobe-emoji,.wardrobe-item.locked .swatch{opacity:.55;filter:grayscale(.35)}.swatch{border-radius:50%;width:66%;height:66%;box-shadow:inset 0 -7px #00000029,inset 0 6px #ffffff59}.price{color:#ffd23f;white-space:nowrap;background:#3a2a6a;border-radius:16px;align-items:center;gap:3px;padding:3px 11px 3px 8px;font-size:22px;font-weight:700;display:flex;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.price span{width:20px;height:20px;display:inline-grid}.price svg{width:100%;height:100%}.wardrobe-close{color:var(--purple);background:#fff;position:absolute;top:-24px;right:-12px;box-shadow:0 5px #d8ccfb}.wardrobe-close:before{display:none}@media (max-width:900px){.code-slot{border-radius:16px;width:60px;height:60px}.code-strip{gap:8px}.code-arrow{width:88px;height:88px}.code-go{height:88px;padding:0 26px 0 18px;font-size:36px}}.text-area{width:100%;font:inherit;color:var(--ink);resize:vertical;-webkit-user-select:text;user-select:text;background:#faf7ff;border:2px solid #ddd0fb;border-radius:16px;outline:none;padding:12px 16px;font-size:24px;line-height:1.35}.subhead{color:var(--purple);margin:18px 0 8px;font-size:22px}.friend-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.friend-row{align-items:center;gap:10px;display:flex}.friend-dot{border-radius:50%;flex:none;width:30px;height:30px;box-shadow:inset 0 -4px #00000026}.friend-input{flex:1;min-width:0}
