@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.p.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.p.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.p.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1bffadaabf893a1e-s.p.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_bf6e6ad-module__wzA2ea__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_bf6e6ad-module__wzA2ea__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--bg:#e5e7f1;--surface:#ffffffc4;--surface-solid:#fff;--ink:#211f33;--ink-soft:#5d5b73;--ink-faint:#9997ad;--primary:#6e49f7;--primary-dark:#5a38d6;--primary-soft:#ece6fe;--green:#2fa34f;--green-soft:#e3f4e8;--red:#e05252;--red-soft:#fbe9e9;--border:#fff;--sidebar-stroke:#d8dbe9;--scroll-thumb:#b6b3c9;--scroll-thumb-hover:#a29fb9;--seg-on:#3d3a52;--radius-card:16px;--radius-pill:999px;--max-col:480px;--canvas-inset:10px;--canvas-radius:20px;--sidebar-width:248px;--sidebar-width-collapsed:72px}*{box-sizing:border-box}html{overflow-x:clip}*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--scroll-thumb);background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:var(--scroll-thumb-hover)}::-webkit-scrollbar-thumb:active{background-color:var(--ink-faint)}::-webkit-scrollbar-corner{background:0 0}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--font-inter), -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;-webkit-font-smoothing:antialiased;margin:0;padding:0}a{color:inherit}button,[role=button],[role=tab],[role=switch],[aria-pressed],.wordmark,.option,.btn,.likert-cell,.likert-labels,.lang-row,.drawer a,.faq-q,.progress-track,.seg-pill,.seg-pill__seg,.seg-pill__label,.nav-link,.owner-card,.langset-row,.langset-opt{-webkit-user-select:none;user-select:none}img,svg{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}button{font-family:inherit}.col{width:100%;max-width:var(--max-col);margin:0 auto;padding:0 20px}.btn{border-radius:var(--radius-pill);cursor:pointer;text-align:center;border:none;justify-content:center;align-items:center;width:100%;height:56px;padding:0 24px;font-size:18px;font-weight:600;line-height:1.2;text-decoration:none;transition:transform .1s,background .18s,opacity .18s;display:flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-primary:disabled{cursor:not-allowed;background:#b9b4d8}.btn-grey{color:#fff;background:#0000008c}.btn-grey:hover{background:#000000a6}.btn-grey:disabled{cursor:not-allowed;background:#00000040}.btn-ghost{color:var(--ink-soft);background:0 0;font-weight:600}.btn-google{color:#1f1f1f;background:#fff;border:1px solid #dadce0;gap:12px;font-size:17px}.btn-google:hover{background:#f7f8f8}.btn-google:disabled{opacity:.55;cursor:not-allowed}.btn-apple{color:#fff;background:#000;gap:10px;margin-top:12px;font-size:17px}.btn-apple:hover{background:#1a1a1a}.btn-apple:disabled{opacity:.55;cursor:not-allowed}.btn-apple svg{margin-top:-2px}.btn-link{width:100%;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;margin-top:14px;padding:8px;font-size:15px;font-weight:600;text-decoration:underline;display:block}.btn-link:disabled{opacity:.5;cursor:not-allowed}.auth-divider{color:var(--ink-soft);align-items:center;gap:12px;margin:20px 0 16px;font-size:14px;font-weight:600;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line,#e6e6ef);flex:1;height:1px}p.auth-error{border-radius:var(--radius-card);background:var(--red-soft);color:var(--red);text-align:center;margin:0 0 12px;padding:10px 14px;font-size:14px;font-weight:600;animation:.4s cubic-bezier(.36,.07,.19,.97) auth-shake}@keyframes auth-shake{0%,to{transform:translate(0)}15%{transform:translate(-7px)}30%{transform:translate(6px)}45%{transform:translate(-4px)}60%{transform:translate(3px)}75%{transform:translate(-2px)}}@media (prefers-reduced-motion:reduce){p.auth-error{animation:none}}.option{background:var(--surface);border-radius:var(--radius-card);width:100%;color:var(--ink);cursor:pointer;text-align:start;border:2px solid #fff;align-items:center;gap:12px;margin-bottom:10px;padding:21px 24px;font-size:16px;font-weight:500;line-height:1.35;transition:border-color .25s ease-out,background .25s ease-out,transform .15s;display:flex}.option:hover{border-color:var(--primary);transition-duration:.15s}.option:active{transform:scale(.975)}.option.selected{border-color:var(--primary);background:var(--surface-solid)}.option .emoji{flex-shrink:0;font-size:22px;line-height:1}.option .icon{color:#5c5f70;flex-shrink:0;width:22px;height:22px;transition:color .2s}.option.selected .icon{color:var(--primary)}.option .icon.capy-mask{background:currentColor;width:46px;height:34px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.option .check{background:var(--bg);border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-inline-start:auto;transition:background-color .2s;display:flex}.option .check svg{opacity:0;transition:opacity .15s,transform .22s cubic-bezier(.34,1.4,.64,1);transform:scale(.4)}.option.selected .check{background:var(--primary)}.option.selected .check svg{opacity:1;transform:scale(1)}.likert-bar{background:var(--surface);border-radius:var(--radius-card);border:2px solid #fff;display:flex;overflow:hidden}.likert-cell{border:none;cursor:pointer;filter:grayscale(.9)brightness(1.06);background:0 0;border-inline-end:1px solid #211f3314;flex:1;padding:18px 0;font-size:26px;transition:background .18s,transform .1s,filter .18s}.likert-cell:last-child{border-inline-end:none}.likert-cell:first-child,.likert-cell:last-child{filter:none}.likert-emoji{transition:transform .15s;display:inline-block}.likert-cell:hover .likert-emoji{transform:scale(1.15)}.likert-cell:active,.likert-cell.selected{background:var(--primary-soft);filter:none}.likert-cell:active .likert-emoji,.likert-cell.selected .likert-emoji{transform:scale(.94)}.progress-track{border-radius:var(--radius-pill);background:#dbdeed;flex:1;height:6px;overflow:hidden}.progress-fill{background:var(--primary);border-radius:var(--radius-pill);height:100%;transition:width .45s}.input{border-radius:var(--radius-card);width:100%;color:var(--ink);background:#ffffff8c;border:2px solid #fff;outline:none;padding:16px;font-family:inherit;font-size:17px}.input:focus{border-color:var(--primary)}.card{background:var(--surface);border-radius:var(--radius-card);border:2px solid #fff;padding:20px}.img-placeholder{border-radius:var(--radius-card);color:#ffffffe6;letter-spacing:.04em;text-transform:uppercase;background:#bbbfd2;border:none;justify-content:center;align-items:center;width:100%;font-size:12px;font-weight:600;display:flex}.wordmark{color:#5c5f70;letter-spacing:-.3px;align-items:center;gap:7px;font-size:20px;font-weight:600;text-decoration:none;display:inline-flex}.wordmark img{width:24px;height:24px;display:block}.centered-step{text-align:center;flex-direction:column;flex:1;padding-bottom:96px;display:flex}.centered-step:before,.centered-step:after{content:"";flex:1 1 0;min-height:12px}.cta-footer{inset-inline-start:var(--shell-left,0px);inset-inline-end:0;z-index:60;background:var(--bg);padding:12px 0 calc(20px + env(safe-area-inset-bottom));position:fixed;bottom:0}.loading-overlay{z-index:220;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#65697a61;justify-content:center;align-items:center;padding:24px;animation:.18s fadeIn;display:flex;position:fixed;inset:0}.loading-modal{background:var(--surface-solid);text-align:center;border-radius:22px;width:fit-content;min-width:min(84vw,340px);max-width:min(92vw,480px);padding:32px 28px 28px}@media (min-width:640px){.loading-modal{padding:44px 44px 36px}}.now-goal{flex-direction:column;gap:12px;width:100%;margin-bottom:24px;display:flex;position:relative}.now-goal__card{flex:1;width:100%;min-width:0}.now-goal__arrow{display:none}@media (min-width:640px){.now-goal{flex-direction:row;align-items:stretch;gap:14px;width:min(640px,100vw - 40px);margin-left:50%;transform:translate(-50%)}.now-goal__arrow{z-index:2;pointer-events:none;width:108px;height:44px;display:block;position:absolute;top:24px;left:50%;overflow:visible;transform:translate(-50%)}}.modal-kicker{color:#5d5b73bf;margin:0 0 10px;font-size:14px;font-weight:500}.modal-btn{color:#37325f9e;background:#ececf4;flex:1;height:52px;font-size:16px}.modal-btn:hover{background:#e0e0ec}.modal-btn:active{background:var(--primary);color:#fff}.lang-menu{top:48px;z-index:95;background:var(--surface-solid);border:2px solid #fff;border-radius:14px;min-width:172px;padding:5px;position:fixed;inset-inline-end:56px}.lang-row{width:100%;color:var(--ink);text-align:start;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:9px;padding:9px 10px;font-size:13.5px;font-weight:500;transition:background-color .3s ease-out;display:flex}.lang-row:hover{background:var(--bg);transition-duration:.15s}.lang-row.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.drawer-overlay{z-index:90;background:#211f3373;animation:.15s fadeIn;position:fixed;inset:0}.drawer{top:0;inset-inline-end:0;background:var(--surface-solid);z-index:91;flex-direction:column;width:min(300px,84vw);padding:24px 20px;animation:.18s slideIn;display:flex;position:fixed;bottom:0}.drawer a,.drawer .drawer-row{color:var(--ink);border-radius:10px;align-items:center;gap:10px;padding:11px 8px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.drawer .drawer-row{text-align:start;cursor:pointer;background:0 0;border:none;width:100%}.drawer a:hover,.drawer .drawer-row:hover{background:var(--primary-soft)}[dir=rtl] .drawer{animation-name:slideInRtl}@keyframes slideInRtl{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:none}}@keyframes slideIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}.auth-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#65697a61;justify-content:center;align-items:center;padding:20px;animation:.18s fadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}.auth-sheet{background:var(--surface-solid);border-radius:22px;width:100%;max-width:400px;margin:auto;padding:28px 24px 24px;position:relative}@media (min-width:640px){.auth-sheet{padding:36px 32px 28px}}.auth-sheet__close{top:14px;cursor:pointer;color:var(--ink-soft);background:0 0;border:none;padding:4px;display:flex;position:absolute;inset-inline-end:14px}.faq-item{background:var(--surface);border-radius:var(--radius-card);border:2px solid #fff;margin-bottom:10px;transition:border-color .18s,background .18s;overflow:hidden}.faq-item.open{background:var(--surface-solid)}.faq-q{width:100%;color:var(--ink);text-align:start;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:16px;font-size:15px;font-weight:600;line-height:1.4;display:flex}.faq-chevron{color:var(--ink-faint);flex-shrink:0;transition:transform .25s cubic-bezier(.2,0,0,1)}.faq-item.open .faq-chevron{color:var(--primary);transform:rotate(180deg)}.faq-a{grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.2,0,0,1);display:grid}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-a-inner{overflow:hidden}.faq-a-text{color:var(--ink-soft);opacity:0;padding:0 16px 16px;font-size:14.5px;line-height:1.55;transition:opacity .22s cubic-bezier(.2,0,0,1) 50ms,transform .22s cubic-bezier(.2,0,0,1) 50ms;transform:translateY(-4px)}.faq-item.open .faq-a-text{opacity:1;transform:none}.h-quiz{letter-spacing:-.02em;text-align:center;text-wrap:balance;margin:0 0 28px;font-size:24px;font-weight:600;line-height:1.25}.h-quiz:has(+.sub){margin-bottom:20px}.h-section{letter-spacing:-.01em;margin:32px 0 10px;font-size:18px;font-weight:600;line-height:1.3}.sub{color:#53576b;text-align:center;text-wrap:balance;margin:0 0 18px;font-size:16px;font-weight:400;line-height:1.55}.caption{color:var(--ink-faint);font-size:13px;font-weight:500;line-height:1.4}.notfound{text-align:center;justify-content:center;align-items:center;min-height:100dvh;display:flex}.notfound__code{letter-spacing:-.04em;color:var(--primary);-webkit-user-select:none;user-select:none;margin:0 0 4px;font-size:clamp(88px,22vw,168px);font-weight:700;line-height:1}.notfound__cta{width:auto;min-width:220px;max-width:100%;margin:8px auto 0;display:inline-flex}.fade-in{animation:.3s ease-out both stepIn}@keyframes stepIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.phone-stage{overscroll-behavior:none;background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:16px;display:flex;overflow:hidden}.phone-body{--phone-pad:clamp(10px, 2.4vw, 12px);--phone-chrome:calc(2 * var(--phone-pad) + 8px);--phone-w:min(100vw - 32px, 34rem, (100svh - 32px - var(--phone-chrome)) * 325 / 704 + var(--phone-chrome));--phone-round:.17;--screen-r:calc((var(--phone-w) - var(--phone-chrome)) * var(--phone-round));width:var(--phone-w);padding:var(--phone-pad);border-radius:calc(var(--screen-r) + 4px + var(--phone-pad));background:#ffffff8c}.phone-ring{padding:2px}.phone-ring--outer{border-radius:calc(var(--screen-r) + 4px);background:radial-gradient(80% 55% at 0 0,#fff 0%,#fff0 70%)}.phone-ring--inner{border-radius:calc(var(--screen-r) + 2px);background:radial-gradient(80% 55% at 100% 100%,#fff 0%,#fff0 70%)}.phone-screen{aspect-ratio:325/704;border-radius:var(--screen-r);background:#53576b;flex-direction:column;width:100%;display:flex;position:relative;overflow:hidden}@supports (corner-shape:squircle){.phone-body,.phone-ring,.phone-screen{corner-shape:squircle}}.btn-float{top:max(16px, env(safe-area-inset-top));z-index:90;border:1px solid #211f331a;width:auto;height:40px;padding:0 20px;font-size:15px;position:fixed;inset-inline-end:max(16px, env(safe-area-inset-right))}.phone-screen{container:phone/inline-size}.capy-stage{background:#f1f2f6;width:100%;height:100%;position:relative;overflow:hidden}.capy-stage__bg,.capy-stage__rive{position:absolute;inset:0}.capy-stage__bg{z-index:0;object-fit:cover;object-position:center;width:100%;height:100%}.capy-stage__rive{z-index:1}.capy-stage__rive,.capy-stage__rive>*{width:100%;height:100%}.capy-stage__rive canvas{background:0 0;width:100%;height:100%;display:block}.talk-header{z-index:10;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:3.6cqw;left:4.6cqw;right:4.6cqw}.talk-header__logo{pointer-events:none;justify-content:center;align-items:center;height:10.2cqw;display:flex;position:absolute;top:0;left:0;right:0}.talk-header__logo img{object-fit:contain;width:35cqw;height:12.2cqw}.talk-header__rail{flex-direction:column;align-items:center;gap:2cqw;display:flex}.end-call-btn,.glass-disc{cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:10.2cqw;height:10.2cqw;padding:0;display:flex}.end-call-btn{background:#f0f0f3}.glass-disc{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#fff6,#fff6) padding-box padding-box,radial-gradient(circle at 100% 100%,#fff 0%,#fff0 85%) border-box,radial-gradient(circle at 0 0,#fff 0%,#fff0 85%) border-box;border:1px solid #0000}.end-call-btn:active,.glass-disc:active{opacity:.6}.end-call-btn img,.glass-disc img{width:4.6cqw;height:4.6cqw}.end-call-btn img{width:4.1cqw;height:4.1cqw}.cc-pop{transition:transform .22s cubic-bezier(.34,1.4,.64,1),opacity 90ms;display:flex}.cc-pop--out{opacity:0;transition-duration:90ms;transform:scale(.3)}.talk-caption{z-index:5;pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;top:38cqw;left:0;right:0}.talk-caption__clip{width:87.5cqw;height:15.3cqw;transition:opacity .14s;overflow:hidden}.talk-caption__text,.talk-caption__measure{text-align:center;color:#000;width:87.5cqw;margin:0;font-size:5.6cqw;font-weight:600;line-height:7.63cqw}.talk-caption__measure{opacity:0;pointer-events:none;position:absolute;top:0}.talk-caption__live{color:#6e49f7}.talk-gate{z-index:12;flex-direction:column;align-items:center;gap:2.2cqw;display:flex;position:absolute;bottom:7cqw;left:6cqw;right:6cqw}.talk-gate__btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:999px;width:100%;padding:4cqw 6cqw;font-family:inherit;font-size:4.6cqw;font-weight:600}.talk-gate__btn:active{transform:scale(.98)}.route-progress{z-index:200;pointer-events:none;background:0 0;height:2px;position:fixed;top:0;left:0;right:0}.route-progress__bar{background:var(--primary);border-radius:0 2px 2px 0;height:100%;transition:width .18s ease-out,opacity .22s ease-in}.langset-heading{text-align:start;margin:0 0 8px;font-size:15px;font-weight:700}.langset-row{border:none;cursor:pointer;text-align:start;background:0 0;border-bottom:1px solid #211f3314;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:12px 0;font-family:inherit;display:flex}.langset-row:last-child{border-bottom:none}.langset-row__label{color:var(--ink-soft);font-size:15px}.langset-row__value{text-align:end;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.langset-row__value img{border-radius:2px;flex-shrink:0}.langset-row__chev{color:var(--ink-faint);font-size:18px;line-height:1}.modal-overlay{z-index:240;background:#211f3373;justify-content:center;align-items:center;padding:20px;animation:.18s fadeIn;display:flex;position:fixed;inset:0}.modal-card{border-radius:var(--radius-card);background:#fff;width:100%;max-width:360px;max-height:80dvh;padding:8px;overflow-y:auto}.modal-card__head{justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 12px;display:flex}.modal-card__title{margin:0;font-size:16px;font-weight:700}.modal-card__close{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px;line-height:1}.langset-opt{width:100%;color:var(--ink);cursor:pointer;text-align:start;background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;padding:12px;font-family:inherit;font-size:15px;font-weight:600;display:flex}.langset-opt:hover,.langset-opt--on{background:var(--surface)}.langset-opt img{border-radius:2px;flex-shrink:0}.langset-opt__name{flex:1}.langset-opt__tick{color:var(--primary);font-weight:700}.seg-set{text-align:center;margin-top:18px}.seg-set__label{color:var(--ink-faint);margin:0 0 8px;font-size:13px;font-weight:500;line-height:1.4}.seg-set__caption{min-height:18px;color:var(--ink-faint);margin:6px 0 0;font-size:12.5px;font-weight:500;line-height:1.4}.seg-pill{background:var(--surface);isolation:isolate;border:2px solid #fff;border-radius:999px;gap:4px;padding:4px;display:flex;position:relative}.seg-pill__thumb{background:var(--seg-on);pointer-events:none;z-index:0;border-radius:999px;position:absolute;top:4px;bottom:4px;left:0}.seg-pill.is-ready .seg-pill__thumb{transition:transform .38s cubic-bezier(.22,1,.36,1),width .38s cubic-bezier(.22,1,.36,1)}.seg-pill__seg{z-index:1;min-width:0;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 8px;font-family:inherit;font-size:14px;font-weight:600;transition:color .22s;display:flex;position:relative}.seg-pill:not(.is-ready) .seg-pill__seg--on{background:var(--seg-on)}.seg-pill__seg--on{color:#fff}.seg-pill__emoji{font-size:15px;line-height:1}.seg-pill__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (prefers-reduced-motion:reduce){.seg-pill.is-ready .seg-pill__thumb,.seg-pill__seg{transition:none}}.talk-error{text-align:center;z-index:12;position:absolute;bottom:7cqw;left:6cqw;right:6cqw}.talk-error button{cursor:pointer;background:0 0;border:none;width:100%;font-family:inherit;display:block}.talk-error__msg,.talk-error__retry{font-size:3.3cqw;line-height:1.4;display:block}.talk-error__msg{color:#e5484d;font-weight:500}.talk-error__retry{color:#7a65de;margin-top:1cqw;font-weight:600}.talk-notice{background:var(--surface-solid);text-align:center;z-index:14;border:1px solid #211f331f;border-radius:4cqw;padding:5cqw;position:absolute;bottom:7cqw;left:6cqw;right:6cqw}.talk-notice__title{color:var(--ink);margin:0 0 1.5cqw;font-size:4.3cqw;font-weight:700}.talk-notice__body{color:var(--ink-soft);margin:0 0 3.5cqw;font-size:3.4cqw;line-height:1.45}.talk-notice__go,.talk-notice__no{cursor:pointer;border:none;border-radius:999px;width:100%;font-family:inherit}.talk-notice__go{background:var(--primary);color:#fff;padding:3.2cqw;font-size:3.9cqw;font-weight:600}.talk-notice__no{color:var(--ink-soft);background:0 0;margin-top:1.5cqw;padding:2cqw;font-size:3.5cqw;font-weight:600}.sheet-overlay{z-index:20;background:#211f3373;align-items:flex-end;animation:.18s fadeIn;display:flex;position:absolute;inset:0}.sheet{background:#fff;border-radius:5cqw 5cqw 0 0;flex-direction:column;width:100%;height:80%;animation:.26s cubic-bezier(.22,1,.36,1) sheetUp;display:flex;overflow:hidden}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:none}}.sheet__head{border-bottom:1px solid #eceaf3;flex-shrink:0;padding:3cqw 5cqw 2.5cqw;position:relative}.sheet__grabber{background:#d8d6e2;border-radius:999px;width:10cqw;height:1cqw;margin:0 auto 2.5cqw;display:block}.sheet__titles{flex-direction:column;gap:1cqw;padding-inline-end:9cqw;display:flex}.sheet__title{color:var(--ink);margin:0;font-size:4.4cqw;font-weight:700}.sheet__sub{color:var(--ink-soft);margin:0;font-size:3.3cqw;line-height:1.4}.sheet__close{top:3cqw;width:8cqw;height:8cqw;color:var(--ink-soft);cursor:pointer;background:#f2f1f7;border:none;border-radius:50%;font-size:3.6cqw;position:absolute;inset-inline-end:3.5cqw}.sheet__body{flex-direction:column;flex:1;gap:3.5cqw;padding:4cqw 5cqw 6cqw;display:flex;overflow-y:auto}.sheet__empty{text-align:center;color:var(--ink-faint);margin:0;font-size:3.5cqw}.msg-row{display:flex}.msg-row--user{justify-content:flex-end}.msg-row--ai{align-items:flex-start;gap:2cqw}.msg__avatar{object-fit:contain;flex-shrink:0;width:8cqw;height:8cqw}.msg__col{flex-direction:column;gap:2cqw;min-width:0;display:flex}.msg__name{color:#000;font-size:4cqw;font-weight:600}.msg{overflow-wrap:anywhere;border-radius:4cqw;max-width:68cqw;padding:3.5cqw;font-size:4cqw;line-height:1.38}.msg--ai{color:#000;background:#f4f4f4}.msg--user{color:#fff;background:#6e49f7}.scenario-chip{background:var(--primary-soft);color:var(--primary);border-radius:999px;align-self:flex-start;align-items:center;gap:1.2cqw;padding:1.2cqw 3cqw;font-size:3cqw;font-weight:600;display:inline-flex}.scenario-row{text-align:start;cursor:pointer;background:#f6f6fa;border:2px solid #fff;border-radius:4cqw;align-items:center;gap:3cqw;width:100%;padding:3.4cqw;font-family:inherit;transition:border-color .18s,background .18s;display:flex}.scenario-row:hover{border-color:var(--primary)}.scenario-row--on{border-color:var(--primary);background:#fff}.scenario-row__emoji{flex-shrink:0;font-size:5.5cqw;line-height:1}.scenario-row__col{flex-direction:column;gap:.6cqw;min-width:0;display:flex}.scenario-row__title{color:var(--ink);font-size:3.9cqw;font-weight:600}.scenario-row__blurb{color:var(--ink-soft);font-size:3.2cqw;line-height:1.35}.studio{--studio-bg:#e5e7f1;--studio-card:#fff;--studio-border:#d9dce8;--studio-text:#0a1a26;--studio-dim:#60646c;--studio-accent:#7a65de;--studio-bad:#e53935;--studio-picked:#282933;--studio-gap:8px;--studio-section:36px;background:var(--studio-bg);min-height:100dvh;color:var(--studio-text);flex-direction:column;display:flex}.studio__header{flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.studio__back{color:#000;cursor:pointer;background:#f0f0f3;border:none;border-radius:20px;width:40px;height:40px;font-size:22px;line-height:1}.studio__title{color:var(--studio-text);margin:0;font-size:18px;font-weight:600}.studio__spacer{width:40px}.studio__content{gap:var(--studio-gap);flex-direction:column;flex:1;width:100%;max-width:720px;margin:0 auto;padding:0 20px 64px;display:flex}.studio__hint{color:var(--studio-dim);margin:0 0 4px;font-size:13px;line-height:19px}.studio__sub{color:var(--studio-dim);margin:0;font-size:12px;line-height:17px}.studio__sub--warn{color:var(--studio-bad)}.studio__label{margin:calc(var(--studio-section) - var(--studio-gap)) 0 4px;color:var(--studio-text);font-size:13px;font-weight:600}.studio__label--flush{margin-top:0}.studio__labelrow{margin-top:calc(var(--studio-section) - var(--studio-gap));justify-content:space-between;align-items:center;display:flex}.destructive{color:var(--studio-bad);cursor:pointer;background:0 0;border:none;padding:4px;font-family:inherit;font-size:12.5px;font-weight:500}.voice-row,.mirror-row{background:var(--studio-card);border:1px solid var(--studio-border);text-align:start;cursor:pointer;border-radius:32px;align-items:center;gap:14px;width:100%;margin-top:8px;padding:18px 20px;font-family:inherit;display:flex}.voice-row--on,.mirror-row--on{border-color:var(--studio-accent);background:#ece7fa}.voice-row__col,.mirror-row__col{flex-direction:column;flex:1;min-width:0;display:flex}.voice-row__name,.mirror-row__name{color:var(--studio-text);font-size:15.5px;font-weight:600}.voice-row__name--on,.mirror-row__name--on{color:var(--studio-accent)}.voice-row__meta{color:var(--studio-dim);margin-top:3px;font-size:12.5px;font-weight:500}.voice-row__char{color:var(--studio-dim);margin-top:1px;font-size:12px}.play-wrap{cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;padding:0;display:flex;position:relative}.play-ring{position:absolute;top:0;left:0}.play-btn{background:var(--studio-bg);border-radius:20px;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:relative}.play-btn--on{background:#fff}.play-glyph{color:var(--studio-accent);margin-left:2px;font-size:13px}.play-glyph--stop{margin-left:0}.play-spinner{border:2px solid #7a65de40;border-top-color:var(--studio-accent);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite micSpin}.chip-row{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.chip{background:var(--studio-card);border:1px solid var(--studio-border);color:var(--studio-text);cursor:pointer;border-radius:8px;padding:7px 12px;font-family:inherit;font-size:12.5px;font-weight:500}.chip--on{background:var(--studio-picked);border-color:var(--studio-picked);color:#fff}.tag-chip{background:var(--studio-bg);border:1px solid var(--studio-border);color:var(--studio-accent);cursor:pointer;border-radius:8px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:500}.line-block{margin-top:8px}.line-block__head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.line-block__label{color:var(--studio-dim);font-size:12.5px;font-weight:500}.line-input{background:var(--studio-card);border:1px solid var(--studio-border);width:100%;color:var(--studio-text);resize:vertical;border-radius:20px;min-height:160px;padding:14px 16px;font-family:inherit;font-size:15px;line-height:22px}.line-input::placeholder{color:#a0a4ad}.line-input:focus{border-color:var(--studio-accent);outline:none}.studio__add{color:var(--studio-accent);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:8px 0;font-family:inherit;font-size:13px;font-weight:600}.past-line{background:var(--studio-card);border:1px solid var(--studio-border);width:100%;color:var(--studio-text);text-align:start;cursor:pointer;-webkit-line-clamp:2;border-radius:20px;-webkit-box-orient:vertical;margin-top:6px;padding:12px 16px;font-family:inherit;font-size:13.5px;line-height:19px;display:-webkit-box;overflow:hidden}.saved-row{background:var(--studio-card);border:1px solid var(--studio-border);text-align:start;border-radius:20px;align-items:center;gap:12px;width:100%;margin-top:6px;padding:10px 14px;font-family:inherit;display:flex}.saved-row__load{text-align:start;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;min-width:0;padding:0;font-family:inherit;display:flex}.saved-row__name{color:var(--studio-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.saved-row__meta{color:var(--studio-dim);margin-top:1px;font-size:12px}.mirror-row__logo{object-fit:contain;width:138px;height:48px;margin-top:6px}.mirror-row__logo--flipped{transform:scaleX(-1)}.switch{background:var(--studio-bg);border:1px solid var(--studio-border);border-radius:16px;flex-shrink:0;justify-content:flex-start;align-items:center;width:52px;height:32px;padding:3px;display:flex}.switch--on{background:var(--studio-accent);border-color:var(--studio-accent);justify-content:flex-end}.switch__knob{border:1px solid var(--studio-border);background:#fff;border-radius:12px;width:24px;height:24px}.switch--on .switch__knob{border-color:var(--studio-accent)}.studio__error{color:var(--studio-bad);margin:14px 0 0;font-size:13px;line-height:18px}.studio__footer{border-top:1px solid var(--studio-border);background:var(--studio-bg);justify-content:center;gap:10px;width:100%;max-width:720px;margin:0 auto;padding:12px 20px 16px;display:flex;position:sticky;bottom:0}.studio__save{background:var(--studio-card);border:1px solid var(--studio-border);color:var(--studio-text);cursor:pointer;border-radius:24px;padding:15px 20px;font-family:inherit;font-size:14px;font-weight:600}.studio__start{color:#fff;cursor:pointer;background:#6e49f7;border:none;border-radius:24px;flex:1;max-width:340px;padding:15px;font-family:inherit;font-size:15px;font-weight:600}.studio__start--busy{opacity:.7}.studio__footer button:disabled{cursor:default}.studio button:active,.voice-row:active,.mirror-row:active,.past-line:active,.saved-row__load:active{opacity:.6}.take-arm{z-index:8;cursor:pointer;background:0 0;border:none;position:absolute;inset:0}.take-mic,.talk-mic{z-index:12;justify-content:center;display:flex;position:absolute;bottom:6cqw;left:0;right:0}.mic-hold{justify-content:center;align-items:center;width:24.4cqw;height:24.4cqw;display:flex;position:relative}.mic-hold__btn{cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #1c243624;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;transition:transform .1s;display:flex}.mic-hold__btn:active{transform:scale(1.05)}.mic-hold__btn svg{pointer-events:none;width:9.2cqw;height:9.2cqw}.mic-hold__btn--on{transform:scale(1.05)}.mic-hold__arc{pointer-events:none;width:31.5cqw;height:31.5cqw;animation:1.1s linear infinite micSpin;position:absolute;inset:-3.56cqw}@keyframes micSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.mic-hold__arc{animation-duration:3s}}.store-row{gap:10px;margin-top:64px;display:flex}.btn-store{white-space:nowrap;flex:1 1 0;gap:8px;width:auto;min-width:0;padding:0 12px;font-size:15px}.btn-store img,.btn-store svg{flex-shrink:0}.btn-play{color:#fff;background:#000}.btn-play:hover{background:#1a1a1a}.btn-appstore{color:#000;background:#fff}.btn-speak{height:62px;margin-top:18px;font-size:19px}@media (max-width:600px){.phone-stage{padding:0}.phone-body{background:0 0;border-radius:0;width:100%;max-width:none;padding:0}.phone-ring,.phone-ring--outer,.phone-ring--inner{background:0 0;border-radius:0;padding:0}.phone-screen{aspect-ratio:auto;border-radius:0;width:100%;height:100dvh}.talk-header{top:max(3.6cqw, env(safe-area-inset-top))}.take-mic,.talk-mic,.talk-gate,.talk-error,.talk-notice{bottom:max(6cqw, env(safe-area-inset-bottom))}}.btn-creator{color:#fff;background:linear-gradient(135deg,#ff5fc8 0%,#b14ae8 55%,#7a4df7 100%);animation:1.8s ease-in-out infinite creator-pulse}.btn-creator:hover{filter:brightness(1.06)}@keyframes creator-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.btn-creator:active{filter:brightness(.92)}@media (prefers-reduced-motion:reduce){.btn-creator{animation:none}}.back-arrow{top:max(10px, env(safe-area-inset-top));z-index:90;border-radius:var(--radius-pill);cursor:pointer;color:#636676;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:fixed;inset-inline-start:calc(max(14px, env(safe-area-inset-left)) + var(--shell-left,0px))}.back-arrow:active{transform:scale(.94)}.sidebar{--sidebar-ease:cubic-bezier(.22, 1, .36, 1);--sidebar-line:#e4e5ef;--sidebar-fill:#fff;--sidebar-dim:#6f6d84;--sidebar-hover:#ffffff8c;--sidebar-sel:#ededf0;--sidebar-sel-line:#e0e0e4;--sidebar-press:#e4e4e9;--ease-enter:cubic-bezier(.16, 1, .3, 1);--ease-leave:cubic-bezier(.33, .01, .24, 1);--ease-press:cubic-bezier(.34, .01, .2, 1);--dur-enter:.18s;--dur-leave:.4s;--dur-press:90ms;top:0;inset-inline-start:0;z-index:100;width:var(--sidebar-width);background:var(--bg);height:auto;transition:transform .28s var(--sidebar-ease), width .32s var(--sidebar-ease), padding .32s var(--sidebar-ease);will-change:width;border:none;border-radius:0;flex-direction:column;padding:18px 12px 16px;display:flex;position:fixed;bottom:0;overflow:hidden;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}@media (max-width:959px){[dir=rtl] .sidebar:not(.is-open){transform:translate(100%)}}.sidebar-overlay{z-index:99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#211f3373;display:none;position:fixed;inset:0}.sidebar-overlay.is-open{display:block}.sidebar-menu-btn{top:calc(var(--canvas-inset) + 10px);z-index:98;width:38px;height:38px;color:var(--ink-soft);cursor:pointer;background:#f3f4f8;border:1px solid #e4e5ef;border-radius:999px;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;inset-inline-start:calc(var(--canvas-inset) + 10px)}@media (min-width:960px){.sidebar{background:0 0;transform:none}.sidebar.is-collapsed{width:var(--sidebar-width-collapsed);padding:16px 10px 14px}.sidebar-overlay,.sidebar-menu-btn{display:none!important}}.sidebar-top{justify-content:space-between;align-items:center;gap:8px;min-height:40px;margin-bottom:28px;padding:0 4px;display:flex}.sidebar.is-collapsed .sidebar-top{justify-content:center;margin-bottom:20px;padding:0}.sidebar .brand{-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.sidebar-brand-expand{cursor:pointer;width:100%;height:40px;transition:background-color var(--dur-leave) var(--ease-leave), transform var(--dur-leave) var(--ease-leave);background:0 0;border:none;border-radius:12px;justify-content:center;align-items:center;padding:0;display:flex}.sidebar-brand-expand:hover,.sidebar-brand-expand:focus-visible{background-color:var(--sidebar-sel);transition:background-color var(--dur-enter) var(--ease-enter), transform var(--dur-enter) var(--ease-enter);outline:none}.sidebar-brand-expand:active{background-color:var(--sidebar-press);transition:background-color var(--dur-press) var(--ease-press), transform var(--dur-press) var(--ease-press);transform:scale(.94)}.sidebar-brand-expand .brand-logo{pointer-events:none}.sidebar .brand-logo{flex-shrink:0;width:32px;height:32px;display:block}.sidebar .brand-name{letter-spacing:-.02em;color:var(--ink);white-space:nowrap;pointer-events:none;font-size:22px;font-weight:600;line-height:1.1}.sidebar-close{background:var(--sidebar-fill);width:32px;height:32px;color:var(--ink-soft);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0;display:flex}.sidebar-collapse-btn{width:32px;height:32px;color:var(--ink-faint);cursor:pointer;transition:background-color var(--dur-leave) var(--ease-leave), color var(--dur-leave) var(--ease-leave), transform var(--dur-leave) var(--ease-leave);background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.sidebar-collapse-btn:hover,.sidebar-collapse-btn:focus-visible{background:var(--sidebar-sel);color:var(--ink);transition:background-color var(--dur-enter) var(--ease-enter), color var(--dur-enter) var(--ease-enter), transform var(--dur-enter) var(--ease-enter);outline:none}.sidebar-collapse-btn:active{background:var(--sidebar-press);color:var(--ink);transition:background-color var(--dur-press) var(--ease-press), color var(--dur-press) var(--ease-press), transform var(--dur-press) var(--ease-press);transform:scale(.92)}@media (min-width:960px){.sidebar-close{display:none}.sidebar-collapse-btn{display:flex}}.sidebar-nav-wrap{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.sidebar-nav{scrollbar-width:none;flex-direction:column;flex:1;gap:20px;display:flex;overflow:hidden auto}.sidebar-nav::-webkit-scrollbar{width:0;height:0}.sidebar-scroll-thumb{opacity:0;cursor:grab;touch-action:none;background:#211f332e;border-radius:999px;width:3px;transition:opacity .18s,background-color .18s;position:absolute;inset-inline-end:-7px}.sidebar:hover .sidebar-scroll-thumb{opacity:1}.sidebar-scroll-thumb:hover,.sidebar-scroll-thumb:active{background:#211f3357}.sidebar-scroll-thumb:active{cursor:grabbing}@media (prefers-reduced-motion:reduce){.sidebar-scroll-thumb{transition:none}}.nav-group{flex-direction:column;gap:6px;display:flex}.nav-group-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);box-sizing:border-box;-webkit-user-select:none;user-select:none;white-space:nowrap;opacity:1;visibility:visible;height:24px;padding:0 8px 8px;font-size:11px;font-weight:600;line-height:16px;transition:opacity .2s,color .2s;overflow:hidden}.sidebar.is-collapsed .nav-group-label{opacity:0;visibility:hidden;pointer-events:none;color:#0000}.nav-link{box-sizing:border-box;letter-spacing:-.01em;text-align:start;width:100%;height:36px;color:var(--sidebar-dim);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:color var(--dur-leave) var(--ease-leave), background-color var(--dur-leave) var(--ease-leave), border-color var(--dur-leave) var(--ease-leave), transform var(--dur-leave) var(--ease-leave), gap .28s var(--sidebar-ease,ease);background-color:#0000;border:1px solid #0000;border-radius:10px;outline:none;align-items:center;gap:9px;padding:0 8px;font-family:inherit;font-size:13.5px;font-weight:500;line-height:1;text-decoration:none;display:flex;position:relative}.nav-link:hover,.nav-link:focus-visible{transition:color var(--dur-enter) var(--ease-enter), background-color var(--dur-enter) var(--ease-enter), border-color var(--dur-enter) var(--ease-enter), transform var(--dur-enter) var(--ease-enter), gap .28s var(--sidebar-ease,ease)}.sidebar.is-collapsed .nav-link{justify-content:center;gap:0;padding:0 8px}.nav-link-icon{width:18px;height:18px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.nav-link-icon svg{opacity:.75;transition:opacity var(--dur-leave) var(--ease-leave);display:block}.nav-link:hover .nav-link-icon svg,.nav-link:focus-visible .nav-link-icon svg{transition:opacity var(--dur-enter) var(--ease-enter)}.nav-link-label{white-space:nowrap;opacity:1;min-width:0;max-width:140px;transition:opacity .18s ease, max-width .28s var(--sidebar-ease,ease);overflow:hidden}.sidebar.is-collapsed .nav-link-label{opacity:0;pointer-events:none;max-width:0}.nav-link:not(.is-active):hover{color:var(--ink);background-color:var(--sidebar-sel)}.nav-link:not(.is-active):hover .nav-link-icon svg{opacity:1}.nav-link:active{background-color:var(--sidebar-press);transition:color var(--dur-press) var(--ease-press), background-color var(--dur-press) var(--ease-press), border-color var(--dur-press) var(--ease-press), transform var(--dur-press) var(--ease-press), gap .28s var(--sidebar-ease,ease);transform:scale(.985)}.nav-link.is-active{color:var(--ink);background-color:var(--sidebar-sel);border-color:var(--sidebar-sel-line)}.nav-link.is-active .nav-link-icon svg{opacity:1}.nav-link.is-active:hover{background-color:var(--sidebar-sel)}.nav-link:focus-visible{color:var(--ink);outline:2px solid var(--primary);outline-offset:-1px}.sidebar-footer{min-height:48px;margin-top:auto;padding-top:16px}.discord-card{--discord-w:calc(var(--sidebar-width) - 24px);--discord-h:calc(var(--discord-w) * 184 / 353);--discord-u:calc(var(--discord-w) / 353);width:100%;height:var(--discord-h);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:height .32s var(--sidebar-ease,ease), border-radius .32s var(--sidebar-ease,ease), opacity var(--dur-leave) var(--ease-leave), transform var(--dur-leave) var(--ease-leave);background-color:#6b42ff;border-radius:18px;margin-bottom:16px;text-decoration:none;display:block;position:relative;overflow:hidden}.discord-card.is-collapsed{border-radius:10px;height:36px}.discord-card:hover,.discord-card:focus-visible{opacity:.96;transition:height .32s var(--sidebar-ease,ease), border-radius .32s var(--sidebar-ease,ease), opacity var(--dur-enter) var(--ease-enter), transform var(--dur-enter) var(--ease-enter);outline:none}.discord-card:active{opacity:.92;transition:height .32s var(--sidebar-ease,ease), border-radius .32s var(--sidebar-ease,ease), opacity var(--dur-press) var(--ease-press), transform var(--dur-press) var(--ease-press);transform:scale(.99)}.discord-card:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.discord-card__full{width:var(--discord-w);height:var(--discord-h);opacity:1;transition:opacity .18s var(--ease-enter) .14s;position:absolute;top:0;left:50%;transform:translate(-50%)}.discord-card.is-collapsed .discord-card__full{opacity:0;transition:opacity .12s var(--ease-leave) 0s}.discord-card__mini{color:#fff;opacity:0;transition:opacity .12s var(--ease-leave) 0s;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.discord-card.is-collapsed .discord-card__mini{opacity:1;transition:opacity .18s var(--ease-enter) .14s}.discord-card__cover{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.discord-card__stroke{border-radius:inherit;pointer-events:none;border:1px solid #ffffff38;position:absolute;inset:0}.discord-card__label{justify-content:center;align-items:center;gap:calc(var(--discord-u) * 6);padding-top:calc(var(--discord-u) * 12);font-weight:700;font-size:calc(var(--discord-u) * 18);line-height:calc(var(--discord-u) * 22);color:#fff;white-space:nowrap;display:flex;position:relative}.discord-card__icon{width:calc(var(--discord-u) * 18);height:calc(var(--discord-u) * 14.4);flex-shrink:0}.discord-card__mark{flex-shrink:0;width:18px;height:14.4px;display:block}@media (prefers-reduced-motion:reduce){.discord-card,.discord-card:hover,.discord-card:focus-visible,.discord-card:active,.discord-card__full,.discord-card__mini,.discord-card.is-collapsed .discord-card__full,.discord-card.is-collapsed .discord-card__mini{transition:none}.discord-card:active{transform:none}}.owner-card{box-sizing:border-box;cursor:pointer;text-align:start;width:100%;height:48px;color:inherit;transition:background-color var(--dur-leave) var(--ease-leave), border-color var(--dur-leave) var(--ease-leave), transform var(--dur-leave) var(--ease-leave), gap .28s var(--sidebar-ease,ease);background-color:#0000;border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:0 8px;font-family:inherit;text-decoration:none;display:flex;position:relative}.owner-card:hover,.owner-card:focus-visible,.owner-card.is-active{background-color:var(--surface-solid);border-color:var(--sidebar-stroke);outline:none}.owner-card:hover,.owner-card:focus-visible{transition:background-color var(--dur-enter) var(--ease-enter), border-color var(--dur-enter) var(--ease-enter), transform var(--dur-enter) var(--ease-enter), gap .28s var(--sidebar-ease,ease)}.owner-card.is-active,.owner-card.is-active:hover{transition:gap .28s var(--sidebar-ease,ease)}.owner-card:active{background-color:var(--surface-solid);border-color:var(--sidebar-stroke);transition:background-color var(--dur-press) var(--ease-press), border-color var(--dur-press) var(--ease-press), transform var(--dur-press) var(--ease-press), gap .28s var(--sidebar-ease,ease);transform:scale(.99)}@media (prefers-reduced-motion:reduce){.nav-link,.nav-link:hover,.nav-link:focus-visible,.nav-link:active,.owner-card,.owner-card:hover,.owner-card:focus-visible,.owner-card:active,.sidebar-collapse-btn,.sidebar-collapse-btn:hover,.sidebar-collapse-btn:focus-visible,.sidebar-collapse-btn:active,.sidebar-brand-expand,.sidebar-brand-expand:hover,.sidebar-brand-expand:focus-visible,.sidebar-brand-expand:active{transition:none;transform:none}}.sidebar.is-collapsed .owner-card{justify-content:center;gap:0}.sidebar.is-collapsed .owner-meta{clip-path:inset(50%);white-space:nowrap;opacity:0;pointer-events:none;border:0;flex:none;width:1px;max-width:none;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.owner-card .avatar{width:32px;height:32px;color:var(--ink-soft);background:var(--sidebar-fill);border:1px solid var(--sidebar-line);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex;overflow:hidden}.avatar__photo{object-fit:cover;width:100%;height:100%;display:block}.owner-meta{flex-direction:column;gap:1px;min-width:0;display:flex;overflow:hidden}.owner-name{color:var(--ink);white-space:nowrap;font-size:13px;font-weight:600}.owner-sub{color:var(--ink-faint);white-space:nowrap;font-size:11px}:root[data-sidebar]{--bg:#fff}:root[data-sidebar],:root[data-sidebar] body{overscroll-behavior:none;overflow:hidden}.has-sidebar{--shell-left:0px;box-sizing:border-box;flex-direction:column;width:100%;min-width:0;max-width:100%;height:100svh;min-height:100dvh;padding:0;display:flex;overflow:hidden}.app-canvas{overscroll-behavior:none;background:0 0;border:none;border-radius:0;flex:auto;width:100%;min-width:0;min-height:0;position:relative;overflow:hidden auto}.app-page{box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:100%}.app-canvas .col{max-width:min(var(--max-col), 100%);min-width:0}.app-page--center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.app-page--center>*{min-width:0;max-width:100%}.app-page__col{padding-top:48px}@media (min-width:960px){:root[data-sidebar]{--bg:#fafafa}.has-sidebar{--shell-left:var(--sidebar-width);padding:var(--canvas-inset);padding-inline-start:var(--shell-left);padding-inline-end:0;transition:padding-inline-start .32s cubic-bezier(.22,1,.36,1)}:root[data-sidebar=collapsed] .has-sidebar{--shell-left:var(--sidebar-width-collapsed)}.app-canvas{background:var(--surface-solid);border:1px solid var(--lessons-stroke,#e0e0e4);border-radius:var(--canvas-radius);border-inline-end:none;border-start-end-radius:0;border-end-end-radius:0}}@media (max-width:959px){.app-page__col{padding-top:64px}.app-canvas .studio__header{padding-left:58px}.btn-store{padding:0 10px;font-size:13.5px}}.app-canvas .card,.app-canvas .seg-pill,.app-canvas .input{background:#f3f4f8;border:1px solid #e4e5ef}.app-canvas .btn-appstore{color:#000;background:#f3f4f8;border:1px solid #e4e5ef}.app-canvas .studio{background:0 0;min-height:100%}.app-canvas .btn-float{top:calc(var(--canvas-inset) + 16px);inset-inline-end:calc(var(--canvas-inset) + 16px)}.lessons-page{flex-direction:column;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.lesson-carousel{flex-direction:column;flex:1;min-height:0;padding-top:84px;display:flex;position:relative}.lesson-backdrop{pointer-events:none;z-index:0;height:520px;position:absolute;top:0;left:0;right:0;overflow:hidden}.lesson-backdrop__layer{background-image:radial-gradient(90% 70% at 100% 0%, var(--bd-corner) 0%, transparent 58%), linear-gradient(180deg, var(--bd-top) 0%, var(--bd-mid) 22%, #fff 62%);position:absolute;inset:0}.lesson-strip{z-index:1;margin-bottom:16px;position:relative;overflow:hidden}.lesson-strip__row{will-change:transform;display:flex}.lesson-strip__cell{text-align:center;flex:none;min-width:0;padding:0 8px}.lesson-strip__title{color:#000;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:24px;font-weight:600;overflow:hidden}.lesson-strip__count{color:var(--unit-muted,#888496);margin:10px 0 0;font-size:16px;font-weight:500}.lesson-carousel__scroll{z-index:1;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;outline:none;flex:1;align-items:center;min-height:0;display:flex;position:relative;overflow:auto hidden}.lesson-carousel__scroll::-webkit-scrollbar{display:none}.lesson-card{scroll-snap-align:center;scroll-snap-stop:always;transform-origin:50%;will-change:transform, opacity;flex:none;position:relative;overflow:visible}.lesson-card__hit{box-sizing:border-box;cursor:pointer;-webkit-user-select:none;user-select:none;width:100%;height:100%;transition:transform var(--dur-press) var(--ease-press), opacity var(--dur-press) var(--ease-press);background:0 0;border:0;justify-content:center;align-items:center;padding:8%;display:flex;position:relative}.lesson-card__hit:active:not(:disabled){opacity:.94;transform:scale(.98)}.lesson-card__hit:disabled{cursor:default}.lesson-card__art{object-fit:contain;object-position:center;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%}.lesson-card__lock{color:#fff;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lesson-card__lock>svg{box-sizing:content-box;background-color:#28293373;border-radius:28px;width:30px;height:30px;padding:13px}.lesson-card__done{top:14px;color:#fff;pointer-events:none;background-color:#0000002e;border-radius:15px;justify-content:center;align-items:center;width:30px;height:30px;display:flex;position:absolute;inset-inline-end:14px}.lesson-dots{z-index:1;justify-content:center;gap:6px;margin-top:18px;display:flex;position:relative}.lesson-dots__hit{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:center;align-items:center;margin:-10px -5px;padding:10px 5px;display:flex}.lesson-dots__hit:focus-visible{outline:2px solid var(--primary);outline-offset:-6px;border-radius:8px}.lesson-dots__dot{pointer-events:none;width:8px;height:8px;transition:background-color var(--dur-enter) var(--ease-enter);background-color:#e2e1e6;border-radius:4px}.lessons-page__card{z-index:1;align-self:center;width:min(420px,100% - 32px);margin:20px 16px 24px;position:relative}.lesson-start{border:2px solid var(--lessons-stroke,#e8e8e9);background-color:#fff;border-radius:28px;flex-direction:column;gap:12px;padding:16px 16px 20px;display:flex}.lesson-start__top{align-items:center;display:flex}.lesson-start__capy{object-fit:contain;flex:none;width:56px;height:64px}.lesson-start__name{color:#000;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0 0 0 12px;font-size:16px;font-weight:600;overflow:hidden}.lesson-start__name.is-locked{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.lesson-start__dot{background-color:#e5e7ec;border-radius:9px;flex:none;width:18px;height:18px}.lesson-start__btn{border:0;color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;height:48px;transition:transform var(--dur-press) var(--ease-press), border-bottom-width var(--dur-press) var(--ease-press);border-bottom:4px solid #0000;border-radius:24px;justify-content:center;align-items:center;gap:8px;font-size:18px;font-weight:500;display:flex}.lesson-start__btn:active:not(:disabled){border-bottom-width:2px;transform:translateY(2px)}.lesson-start__btn:disabled{cursor:default}@media (max-width:640px){.lesson-strip__title{font-size:21px}.lesson-strip__count{margin-top:18px}.lesson-carousel{padding-top:56px}}.unit-page{flex-direction:column;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.unit-page__head{flex:none;align-items:center;gap:12px;padding:12px 20px 0;display:flex}.unit-page__back,.unit-page__count{height:40px;color:var(--unit-muted,#888496);-webkit-user-select:none;user-select:none;background-color:#f5f4f8;border-radius:20px;flex:none;justify-content:center;align-items:center;display:flex}.unit-page__back{width:40px;transition:background-color var(--dur-enter) var(--ease-enter)}.unit-page__back:hover{background-color:#ebeaf0}.unit-page__count{padding:0 16px;font-size:16px;font-weight:500}.unit-page__art{object-fit:contain;flex:auto;width:64px;min-width:0;height:64px}.unit-page__band{white-space:nowrap;text-overflow:ellipsis;border-radius:20px;flex:none;justify-content:center;align-items:center;height:60px;margin:8px 16px 0;padding:0 16px;font-size:18px;font-weight:600;display:flex;overflow:hidden}.unit-page__scroll{scrollbar-width:thin;flex:1;min-height:0;padding:48px 20px 0;position:relative;overflow-y:auto}.lesson-path{width:fit-content;max-width:100%;margin:0 auto;padding-bottom:156px}.lesson-path__row{cursor:pointer;text-align:start;-webkit-user-select:none;user-select:none;--step-in:.26s cubic-bezier(.22, 1.18, .36, 1);--step-out:.45s cubic-bezier(.33, .01, .24, 1);--step-press:80ms cubic-bezier(.34, .01, .2, 1);transform-origin:44px bottom;width:fit-content;min-height:100px;transition:transform var(--step-out);background:0 0;border:0;align-items:flex-end;margin-bottom:44px;padding:0;display:flex}.lesson-path__row:hover:not(:disabled),.lesson-path__row:focus-visible:not(:disabled){transition:transform var(--step-in);transform:scale(1.045)}.lesson-path__row:active:not(:disabled){transition:transform var(--step-press);transform:scale(.975)}.lesson-path__row:disabled{cursor:default}@media (prefers-reduced-motion:reduce){.lesson-path__row,.lesson-path__row:hover,.lesson-path__row:focus-visible,.lesson-path__row:active{transition:none;transform:none}}.lesson-path__row:focus-visible{outline:2px solid var(--focus,#6e49f7);outline-offset:6px;border-radius:12px}.lesson-path__trunk{object-fit:contain;-webkit-user-drag:none;flex:none;width:88px}.lesson-path__trunk.is-current{height:100px}.lesson-path__trunk.is-done,.lesson-path__trunk.is-locked{height:38px}.lesson-path__name{color:#000;max-width:200px;margin-inline-start:16px;padding-bottom:14px;font-size:18px;font-weight:500}.lesson-path__row.is-locked .lesson-path__name{color:#00000054}.unit-page__card{z-index:60;background-color:#fff;border:2px solid #e8e8e9;border-radius:28px;flex:none;max-width:420px;margin:0 auto;padding:20px 16px;display:flex;position:absolute;bottom:28px;left:16px;right:16px}.unit-page__card .lesson-start__btn{flex:1}.unit-page:after{content:"";pointer-events:none;z-index:50;background:linear-gradient(#fff0,#fff 60%);height:160px;position:absolute;bottom:0;left:0;right:12px}.lesson-page{flex-direction:column;height:100%;min-height:0;display:flex}.lesson-page__spacer{flex:1}.lesson-page__body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:24px 24px 64px;display:flex}.lesson-page__capy{object-fit:contain;width:132px;height:150px;margin-bottom:12px}.lesson-page__title{letter-spacing:-.02em;color:#000;margin:0;font-size:26px;font-weight:700}.lesson-page__kicker{margin:10px 0 0;font-size:16px;font-weight:600}.lesson-page__body-copy{color:var(--ink-soft);max-width:34ch;margin:6px 0 0;font-size:15px}.lesson-progress{z-index:4;background-color:#ffffff73;border-radius:3px;width:168px;height:6px;position:absolute;top:64px;left:50%;overflow:hidden;transform:translate(-50%)}.lesson-progress__fill{height:100%;transition:width .45s var(--ease-enter);background-color:#6e49f7;border-radius:3px}.lesson-prompt{z-index:4;text-align:center;pointer-events:none;position:absolute;top:172px;left:24px;right:24px}.lesson-prompt__line{color:#000;max-width:372px;animation:lesson-prompt-in .34s var(--ease-enter) backwards;transition:color var(--dur-leave) var(--ease-leave);margin:0 auto;font-size:26px;font-weight:600;line-height:1.32}.lesson-prompt__quote{transition:color var(--dur-leave) var(--ease-leave)}.lesson-prompt__line.is-hit .lesson-prompt__quote{color:#22c29a}.lesson-prompt__line.is-shaky .lesson-prompt__quote{color:#e8a23d}.lesson-prompt__line.is-miss .lesson-prompt__quote{color:#e5634d}@keyframes lesson-prompt-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.lesson-word{margin-inline-end:.28em}.lesson-word:last-child{margin-inline-end:0}.lesson-word--hit{color:#22c29a}.lesson-word--shaky{color:#e8a23d}.lesson-word--miss{color:#e5634d}.lesson-word--live{color:#6e49f7}.lesson-word--hint{color:#9599a9}.lesson-prompt__note{color:#53576b;max-width:372px;margin:10px auto 0;padding:0 16px;font-size:16px;font-weight:500;line-height:1.38}.lesson-prompt__note.is-error{color:#e5634d}.lesson-prompt__reading{color:#6b54d6;max-width:372px;margin:6px auto 0;padding:0 16px;font-size:17px;font-weight:600;line-height:1.35}.lesson-controls{z-index:5;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:34px;left:0;right:0}.lesson-controls__row{justify-content:center;align-items:center;gap:22px;display:flex}.lesson-controls__aux{color:#fff;-webkit-backdrop-filter:blur(6px);cursor:pointer;-webkit-user-select:none;user-select:none;width:44px;height:44px;transition:opacity var(--dur-leave) var(--ease-leave), background-color var(--dur-leave) var(--ease-leave), transform var(--dur-leave) var(--ease-leave);background-color:#ffffff2e;border:0;border-radius:22px;justify-content:center;align-items:center;display:flex}.lesson-controls__aux:hover:not(:disabled){transition:background-color var(--dur-enter) var(--ease-enter), transform var(--dur-enter) var(--ease-enter);background-color:#ffffff47;transform:scale(1.06)}.lesson-controls__aux:active:not(:disabled){transition:transform var(--dur-press) var(--ease-press);transform:scale(.94)}.lesson-controls__aux:disabled{opacity:.35;cursor:default}.lesson-controls__aux.is-hidden{opacity:0;pointer-events:none}.lesson-missing{text-align:center;color:#fff;background-color:#6e49f7;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:32px;display:flex;position:absolute;inset:0}.lesson-missing img{object-fit:contain;width:120px;height:136px}.lesson-done{background-color:#fff;flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.lesson-done__glow{pointer-events:none;background-image:url(/lessons/ending-bg.webp);background-position:top;background-size:cover;height:62%;position:absolute;top:0;left:0;right:0}.lesson-done__body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:0 28px 40px;display:flex;position:relative}.lesson-stars{justify-content:center;align-items:flex-end;gap:12px;margin-bottom:30px;display:flex}.lesson-stars__slot{line-height:0;display:block;position:relative}.lesson-stars__slot.is-middle{margin-bottom:30px}.lesson-stars__earned{animation:lesson-star-pop .42s var(--ease-enter) backwards;display:block;position:absolute;inset:0}@keyframes lesson-star-pop{0%{opacity:0;scale:.4}60%{scale:1.12}to{opacity:1;scale:1}}.lesson-done__title{letter-spacing:-.02em;color:#0a1a26;margin:0;font-size:28px;font-weight:700}.lesson-done__stats{color:var(--ink-soft);margin:0;font-size:16px;font-weight:500}.lesson-done__footer{flex-direction:column;gap:10px;padding:0 16px 24px;display:flex;position:relative}.lesson-done__again,.lesson-done__next{cursor:pointer;-webkit-user-select:none;user-select:none;height:52px;transition:transform var(--dur-leave) var(--ease-leave);border:0;border-radius:26px;justify-content:center;align-items:center;gap:8px;font-size:17px;font-weight:600;display:flex}.lesson-done__again{color:#433e4f;background-color:#f2f1f6}.lesson-done__next{color:#fff;background-color:#6e49f7;border-bottom:4px solid #3913c8}.lesson-done__again:active,.lesson-done__next:active{transition:transform var(--dur-press) var(--ease-press);transform:scale(.98)}@media (prefers-reduced-motion:reduce){.lesson-stars__earned{animation:none}.lesson-progress__fill{transition:none}}.lesson-screen-in{animation:lesson-retry-in .34s var(--ease-enter) both}@keyframes lesson-retry-in{0%{opacity:0}to{opacity:1}}.lesson-controls{animation:lesson-controls-in .4s var(--ease-enter) .14s backwards}@keyframes lesson-controls-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.lesson-card__art{opacity:1}@media (prefers-reduced-motion:reduce){.lesson-controls,.lesson-prompt__line{animation:none}.lesson-card__art{transition:none}}.phone-body{animation:.52s cubic-bezier(.16,1,.3,1) both phone-arrive}@keyframes phone-arrive{0%{opacity:0;transform:translateY(14px)scale(.972)}to{opacity:1;transform:none}}.phone-screen{animation:.46s cubic-bezier(.16,1,.3,1) .12s both phone-wake}@keyframes phone-wake{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.phone-body,.phone-screen,.lesson-screen-in{animation-duration:.01ms;animation-delay:0s}}.sk{animation:sk-sweep 1.5s var(--ease-leave) infinite;background:linear-gradient(90deg,#fff0 0%,#ffffff8c 50%,#fff0 100%) 0 0/220% 100% no-repeat,#e8e9f0;border-radius:10px;display:block}@keyframes sk-sweep{0%{background-position-x:-120%}to{background-position-x:220%}}@media (prefers-reduced-motion:reduce){.sk{animation:none}}.lessons-skeleton{flex-direction:column;flex:1;align-items:center;min-height:0;padding-top:84px;display:flex}.lessons-skeleton__strip{flex-direction:column;align-items:center;gap:22px;margin-bottom:32px;display:flex}.sk--title{width:190px;height:26px}.sk--sub{width:104px;height:15px}.sk--art{border-radius:28px;width:min(66vw,272px);height:min(66vw,272px)}.lessons-skeleton__dots{gap:6px;margin-top:18px;display:flex}.sk--dot{border-radius:4px;width:8px;height:8px}.lessons-skeleton__card{background-color:#fff;border:2px solid #e8e8e9;border-radius:28px;flex-direction:column;gap:12px;width:min(420px,100% - 32px);margin:auto 16px 24px;padding:16px 16px 20px;display:flex}.sk--row{width:70%;height:20px}.sk--btn{border-radius:24px;height:48px}.unit-skeleton{flex-direction:column;flex:1;min-height:0;display:flex}.unit-skeleton__head{align-items:center;gap:12px;padding:12px 20px 0;display:flex}.sk--disc{border-radius:20px;flex:none;width:40px;height:40px}.sk--unit-art{border-radius:18px;width:64px;height:64px;margin:0 auto}.sk--pill{border-radius:20px;flex:none;width:58px;height:40px}.sk--band{border-radius:20px;height:60px;margin:8px 16px 0}.unit-skeleton__path{width:fit-content;margin:0 auto;padding:48px 20px 0}.unit-skeleton__row{align-items:flex-end;gap:16px;margin-bottom:44px;display:flex}.sk--trunk{border-radius:12px;flex:none;width:88px;height:38px}.sk--name{width:148px;height:18px;margin-bottom:8px}[dir=rtl] .flip-rtl{transform:scaleX(-1)}:lang(ja) h1,:lang(ja) h2,:lang(ja) h3{word-break:auto-phrase}.dg-close{opacity:.4;transition:opacity .16s}.dg-close:hover,.dg-close:focus-visible{opacity:.75}.dg-overlay{padding-left:12px;padding-right:12px}.dg-sheet{text-align:center;-webkit-user-select:none;user-select:none;max-width:100%;padding:26px 16px 20px}.dg-title{letter-spacing:-.02em;margin:0 0 8px;font-size:22px;font-weight:700;line-height:1.2}.dg-sub{color:var(--ink-soft);margin:0 0 26px;font-size:14.5px;font-weight:500}.dg-sub--warn{color:var(--primary)}.dg-stage{flex-direction:column;align-items:center;gap:18px;display:flex}.dg-action{width:100%;margin-top:18px}.dg-action--spin{color:#fff;background:#ff6b00}.dg-action--spin:hover:not(:disabled){background:#e85d00}.dg-action--spin:disabled{color:#fff;background:#ffa766}.dg-action--spin:not(:disabled){animation:1.8s ease-in-out infinite dg-breathe}.dg-action--spin:active{animation:none;transform:scale(.98)}@keyframes dg-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.dg-action--spin:not(:disabled){animation:none}}.dg-card{aspect-ratio:2;width:100%;max-width:400px;position:relative}.dg-scratch,.dg-prize{border-radius:var(--radius-card);width:100%;height:100%;position:absolute;inset:0}.dg-prize{background:var(--primary-soft);border:2px solid var(--primary);color:var(--primary);flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.dg-prize__pct{letter-spacing:-.03em;font-size:46px;font-weight:800;line-height:1}.dg-prize__off{letter-spacing:.12em;font-size:14px;font-weight:700}.dg-scratch{touch-action:none;cursor:grab}.dg-scratch:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.dg-stage--wheel{gap:10px}.dg-wheel{aspect-ratio:1;width:100%;max-width:320px;position:relative}.dg-wheel__svg{touch-action:none;cursor:grab;border-radius:50%;width:100%;height:100%}.dg-wheel__label{letter-spacing:-.02em;font-size:19px;font-weight:800}.dg-wheel__pin{border-inline:11px solid #0000;border-top:20px solid var(--ink);z-index:1;width:0;height:0;position:absolute;top:-2px;left:50%;transform:translate(-50%)}.dg-boxes{justify-content:center;gap:8px;width:100%;display:flex}.dg-box{aspect-ratio:5/8;border-radius:var(--radius-card);background:linear-gradient(150deg, var(--from), var(--to));cursor:pointer;-webkit-user-select:none;user-select:none;border:none;flex:1;max-width:150px;padding:0;transition:transform .2s;position:relative;overflow:hidden}.dg-box:hover{transform:translateY(-5px)}.dg-box.is-picked{transform:translateY(-9px)}.dg-box__mark{color:#ffffffe6;justify-content:center;align-items:center;font-size:40px;font-weight:800;transition:opacity .22s,transform .22s;display:flex;position:absolute;inset:0}.dg-box.is-open .dg-box__mark{opacity:0;transform:scale(.6)}.dg-box__prize{letter-spacing:-.02em;color:#fff;opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:24px;font-weight:800;line-height:1;transition:opacity .3s .1s,transform .3s .1s;display:flex;position:absolute;inset:0;transform:scale(.7)}.dg-box.is-open .dg-box__prize{opacity:1;transform:scale(1)}.dg-box__off{letter-spacing:.1em;font-size:10px;font-weight:700}.dg-ttt{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:400px;display:grid;position:relative}.dg-ttt__strike{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.dg-ttt__strike line{stroke:var(--primary);stroke-width:6px;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:100;stroke-dashoffset:100px;animation:.42s cubic-bezier(.32,0,.2,1) forwards dg-strike}@keyframes dg-strike{to{stroke-dashoffset:0}}.dg-ttt__cell{aspect-ratio:1;background:var(--bg);border:2px solid var(--ink-faint);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;justify-content:center;align-items:center;padding:0;transition:background .16s,border-color .16s;display:flex}.dg-ttt__cell:hover:not(:disabled){border-color:var(--primary)}.dg-ttt__cell:disabled{cursor:default}.dg-ttt__cell.is-win{background:var(--primary-soft);border-color:var(--primary)}.dg-ttt__mark{width:60%;height:60%}.dg-ttt__status{min-height:20px;margin:0;font-size:14.5px;font-weight:600}.dg-won{padding-top:6px}.dg-code{border-radius:var(--radius-card);background:var(--primary-soft);border:2px dashed var(--primary);flex-direction:column;align-items:center;gap:2px;padding:12px;display:flex}.dg-code__label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:11px;font-weight:700}.dg-code__value{letter-spacing:.06em;color:var(--primary);text-transform:uppercase;-webkit-user-select:all;user-select:all;font-size:20px;font-weight:800}.dg-banner__code{text-transform:uppercase;letter-spacing:.04em}.dg-banner{border-radius:var(--radius-pill);background:var(--green-soft);color:var(--green);-webkit-user-select:none;user-select:none;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-bottom:14px;padding:10px 14px;font-size:14px;font-weight:700;display:flex}@media (min-width:640px){.dg-sheet{max-width:500px;padding:38px 36px 30px}.dg-title{font-size:28px}.dg-sub{margin-bottom:32px;font-size:16px}.dg-card{max-width:440px}.dg-prize__pct{font-size:62px}.dg-prize__off{font-size:17px}.dg-wheel{max-width:340px}.dg-boxes{gap:14px}.dg-box{max-width:190px}.dg-box__prize{font-size:30px}.dg-box__off{font-size:12px}.dg-ttt{gap:12px;max-width:330px}.dg-ttt__status{font-size:16.5px}.dg-code__value{font-size:24px}.dg-action{padding:15px 20px;font-size:16.5px}}@media (min-width:1024px){.dg-sheet{max-width:580px;padding:44px 44px 34px}.dg-title{font-size:32px}.dg-sub{margin-bottom:38px;font-size:17px}.dg-card{max-width:500px}.dg-prize__pct{font-size:72px}.dg-wheel{max-width:400px}.dg-box{max-width:220px}.dg-box__prize{font-size:36px}.dg-ttt{max-width:390px}.dg-code__value{font-size:26px}}.embed-loading{text-align:center;color:var(--ink-soft);flex-direction:column;align-items:center;gap:10px;padding:24px 16px;display:flex}.embed-loading__spinner{border:2.5px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite micSpin}.embed-loading__label{margin:0}.embed-loading__note{max-width:320px;margin:0;font-size:13.5px;line-height:1.4}@media (prefers-reduced-motion:reduce){.embed-loading__spinner{animation-duration:2.4s}}
:root{--port-ink:#000;--port-ink-soft:#6b6b73;--port-ink-faint:#aaa;--port-fill:#fff;--port-tile:#f3f3f5;--port-hairline:#ececef;--port-pill:#e6e6e8;--port-orange:#ff7300;--port-col:520px;--tabbar-height:64px;--tabbar-space:calc(var(--tabbar-height) + 4px + env(safe-area-inset-bottom))}.mask-icon{background-color:currentColor;flex-shrink:0;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.port-screen{box-sizing:border-box;width:100%;max-width:var(--port-col);background:var(--port-fill);min-height:100%;color:var(--port-ink);margin-inline:auto;position:relative}.port-stage{box-sizing:border-box;background:var(--port-fill);width:100%;height:100dvh;position:relative;overflow:hidden}@media (min-width:960px){.port-stage{width:min(430px,100%);height:min(900px, calc(100dvh - 2 * var(--canvas-inset)));margin:max(0px, calc((100dvh - 2 * var(--canvas-inset) - 900px) / 2)) auto 0;border:1px solid var(--port-hairline);border-radius:36px}.port-stage--full{border:0;border-radius:0;width:100%;height:100dvh;margin:0}}.tabbar{display:none}@media (max-width:959px){.sidebar,.sidebar-menu-btn,.sidebar-overlay{display:none!important}.app-page__col{padding-top:24px}.app-canvas .studio__header{padding-left:16px}.tabbar{inset-inline:0;bottom:calc(4px + env(safe-area-inset-bottom));z-index:100;pointer-events:none;justify-content:center;transition:opacity .2s,transform .2s;display:flex;position:fixed}.tabbar.is-hidden{opacity:0;transform:translateY(90px)}.tabbar.is-hidden .tabbar__bar{pointer-events:none}body:has(.tabbar:not(.is-hidden)) .app-canvas{padding-bottom:var(--tabbar-space)}}.tabbar__bar{border:1px solid var(--port-hairline);pointer-events:auto;background:#fff;border-radius:32px;gap:4px;padding:4px;display:flex;position:relative}.tabbar__pill{top:4px;background:var(--port-pill);width:68px;height:56px;transform:translateX(calc(var(--tab-index,0) * 72px));border-radius:28px;transition:transform .42s cubic-bezier(.34,1.3,.64,1);position:absolute;inset-inline-start:4px}[dir=rtl] .tabbar__pill{transform:translateX(calc(var(--tab-index,0) * -72px))}.tabbar__item{z-index:1;width:68px;height:56px;color:var(--port-ink-faint);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:2px;text-decoration:none;transition:color .2s;display:flex;position:relative}.tabbar__item.is-active{color:var(--port-ink)}.tabbar__item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.tabbar__icon{display:flex;position:relative}.tabbar__label{white-space:nowrap;text-overflow:ellipsis;max-width:64px;font-size:10px;font-weight:500;line-height:1.2;overflow:hidden}.tabbar__dot{top:-2px;background:var(--port-orange);opacity:0;border-radius:4px;width:8px;height:8px;transition:opacity .26s,transform .26s cubic-bezier(.34,1.56,.64,1);position:absolute;inset-inline-end:-3px;transform:scale(0)}.tabbar__dot.is-on{opacity:1;transform:scale(1)}@media (prefers-reduced-motion:reduce){.tabbar,.tabbar__pill,.tabbar__dot{transition:none}}.transient-notice{z-index:20;color:#fff;text-align:center;pointer-events:none;background:#0a1a26eb;border-radius:22px;width:max-content;max-width:calc(100% - 32px);padding:10px 16px;font-size:13px;font-weight:500;line-height:1.35;animation:.22s ease-out notice-in;position:absolute;top:10px;left:50%;transform:translate(-50%)}.transient-notice--global{top:calc(12px + env(safe-area-inset-top));z-index:300;position:fixed}@keyframes notice-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.transient-notice{animation:none}}.port-stage-page{background:var(--port-fill);min-height:100dvh}@media (min-width:960px){.port-stage-page{padding:var(--canvas-inset);background:#fafafa}.port-stage-page--full{padding:0}}.app-avatar{background:#2a1848;flex-shrink:0;display:inline-block;overflow:hidden}.app-avatar img{object-fit:cover;width:100%;height:100%;display:block}.glass{box-sizing:border-box;background:rgba(255, 255, 255, var(--glass-fill,.4));display:block;position:relative}.glass:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:radial-gradient(85% 85% at 0 0,#fff,#fff0),radial-gradient(85% 85% at 100% 100%,#fff,#fff0);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass-box{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.game-header{top:calc(env(safe-area-inset-top) + 12px);z-index:2;align-items:center;height:48px;padding-inline:18px;display:flex;position:absolute;inset-inline:0}.game-header__back,.glass-back{cursor:pointer;z-index:1;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:20px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:inline-flex;position:relative}.game-header__back:active,.glass-back:active{opacity:.65}.game-header__logo{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.game-header__logo img{object-fit:contain;width:138px;height:48px}.game-header__logo img.is-mirrored{transform:scaleX(-1)}.coin-chip{color:#fff;background:#0000004d;border-radius:14px;align-self:center;align-items:center;gap:4px;padding:5px 10px;font-size:13px;font-weight:700;display:inline-flex}.edge-fade{pointer-events:none;position:absolute;inset-inline:0}.edge-fade--top{z-index:8;top:0}.edge-fade--bottom{z-index:50;bottom:0}