@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #fdfdfe;--text: #1d2029;--muted: #5d6373;--surface: #ffffff;--surface-2: #f5f6f9;--line: #e5e7ee;--accent: #f5b31c;--accent-deep: #a8741a;--accent-ink: #241a02;--c-image: #c47714;--c-son: #0c87a0;--c-rythme: #d6336c;--c-emotion: #7c5cd6;--ok: #1f9d5b;--danger: #d64545;--font-display: "Space Grotesk Variable", "Space Grotesk", "Avenir Next", "Segoe UI", sans-serif;--font-body: "Inter Variable", "Inter", -apple-system, "Segoe UI", sans-serif;--footer-h: 78px;--topbar-h: 52px;--radius: 20px;--shadow-1: 0 10px 34px -14px rgba(30, 34, 50, .18);--shadow-2: 0 30px 80px -24px rgba(30, 34, 50, .28)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}::selection{background:var(--accent);color:var(--accent-ink)}button{font-family:inherit;color:inherit;background:none;border:none;cursor:pointer}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}.app{height:100%;display:flex;flex-direction:column}.bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;background:radial-gradient(55% 45% at 4% 96%,rgba(255,197,173,.4),transparent 62%),radial-gradient(45% 38% at 97% 3%,rgba(184,208,255,.32),transparent 60%),radial-gradient(40% 32% at 85% 95%,rgba(255,226,168,.3),transparent 60%),linear-gradient(180deg,#fefeff,#f8f8fb)}.bg-glow{position:absolute;border-radius:50%;filter:blur(90px);will-change:transform}.g1{width:52vw;height:52vw;top:-24%;right:-12%;background:var(--amb, var(--accent));opacity:.1;animation:drift1 28s ease-in-out infinite alternate}.g2{width:40vw;height:40vw;bottom:-28%;left:-12%;background:#b9c8f2;opacity:.28;animation:drift2 34s ease-in-out infinite alternate}.g3{width:22vw;height:22vw;bottom:-8%;right:24%;background:var(--amb, var(--accent));opacity:.08;animation:drift3 23s ease-in-out infinite alternate}@keyframes drift1{0%{transform:translate(0) scale(1)}to{transform:translate(-6%,8%) scale(1.12)}}@keyframes drift2{0%{transform:translate(0) scale(1)}to{transform:translate(8%,-6%) scale(1.08)}}@keyframes drift3{0%{transform:translate(0)}to{transform:translate(-10%,-10%)}}.topbar{position:fixed;top:0;left:0;right:0;height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,2.5vw,32px);z-index:30;pointer-events:none}.brand{font-family:var(--font-display);font-weight:700;font-size:.8rem;letter-spacing:.24em;color:var(--text);opacity:.45;text-transform:uppercase}.step-badge{pointer-events:auto;display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-1);font-family:var(--font-display);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.slide-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px}.footer{position:fixed;left:0;right:0;bottom:0;height:var(--footer-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 22px;z-index:40;background:#ffffffd1;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line)}.f-left{display:flex;gap:10px;justify-content:flex-start}.f-center{display:flex;align-items:center;gap:14px}.f-right{display:flex;gap:8px;justify-content:flex-end}.fbtn{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:12px;border:1px solid var(--line);background:#ffffffb3;color:var(--text);font-size:.82rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;transition:border-color .2s,background .2s,opacity .2s;white-space:nowrap}.fbtn:hover:not(:disabled){border-color:var(--accent);background:#fff8e4}.fbtn:disabled{opacity:.35;cursor:default}.fbtn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.fbtn.primary:hover:not(:disabled){background:#ffc63d;border-color:#ffc63d}.pcount{font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.08em;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.pbar{width:150px;height:4px;border-radius:2px;background:#e8eaf0;overflow:hidden}.pbar i{display:block;height:100%;background:var(--accent);border-radius:2px;transition:width .4s cubic-bezier(.2,.7,.2,1)}.stage{position:fixed;top:var(--topbar-h);bottom:var(--footer-h);left:0;right:0;display:flex;overflow-y:auto;overflow-x:hidden}.stage-inner{margin:auto;width:100%;max-width:1640px;padding:clamp(12px,1.6vh,24px) clamp(18px,2.6vw,48px);display:flex;flex-direction:column;align-items:center;gap:clamp(12px,1.8vh,22px)}.step-enter{animation:stepIn .45s cubic-bezier(.2,.7,.2,1) both}@keyframes stepIn{0%{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:none}}.kicker{display:flex;align-items:center;gap:14px;font-family:var(--font-display);font-size:clamp(.78rem,1.4vw,.95rem);font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--amb, var(--accent-deep))}.kicker:before{content:"";width:30px;height:3px;border-radius:2px;background:currentColor;flex:none}.kicker.center:after{content:"";width:30px;height:3px;border-radius:2px;background:currentColor;flex:none}.h-hero{font-family:var(--font-display);font-size:clamp(3rem,9vw,8rem);font-weight:700;line-height:.95;letter-spacing:-.02em;text-transform:uppercase;text-align:center;text-wrap:balance;color:var(--text)}.h-hero .accent{color:var(--amb, var(--accent-deep))}.h1{font-family:var(--font-display);font-size:clamp(2rem,4.6vw,3.6rem);font-weight:700;line-height:1.05;letter-spacing:-.01em;text-transform:uppercase;text-align:center;text-wrap:balance}.h2{font-family:var(--font-display);font-size:clamp(1.3rem,2.6vw,2rem);font-weight:700;line-height:1.15;text-wrap:balance}.lead{font-size:clamp(1.1rem,2.1vw,1.5rem);line-height:1.45;color:var(--text);max-width:34ch;text-align:center;text-wrap:balance}.muted{color:var(--muted)}.small-note{font-size:.95rem;color:var(--muted);letter-spacing:.01em;text-align:center}.quote{font-family:var(--font-display);font-size:clamp(1.9rem,5vw,4.2rem);font-weight:600;line-height:1.12;text-align:center;text-wrap:balance;max-width:26ch}.hl{color:var(--amb, var(--accent-deep));font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:14px 32px;border-radius:16px;border:1px solid transparent;font-family:var(--font-display);font-size:clamp(.95rem,1.5vw,1.12rem);font-weight:700;letter-spacing:.07em;text-transform:uppercase;transition:transform .15s,background .2s,border-color .2s,box-shadow .2s;-webkit-user-select:none;user-select:none}.btn:active{transform:translateY(1px) scale(.99)}.btn:disabled{opacity:.4;cursor:default}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 14px 34px -12px #f5b31c8c}.btn-primary:hover:not(:disabled){background:#ffc63d;box-shadow:0 18px 40px -12px #f5b31ca6}.btn-ghost{background:#fff;border-color:#d8dbe4;color:var(--text)}.btn-ghost:hover:not(:disabled){border-color:var(--accent);background:#fff8e4}.btn-danger{background:#fdf1f0;border-color:#f0c4c1;color:#b03a34}.btn-danger:hover:not(:disabled){background:#fbe4e2}.btn-lg{min-height:68px;padding:18px 44px;font-size:clamp(1.05rem,1.8vw,1.3rem)}.btn-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:center}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(18px,2.6vw,32px);box-shadow:var(--shadow-1)}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;width:100%}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;width:100%}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;width:100%}.power{--pc: var(--accent-deep);position:relative;display:flex;flex-direction:column;gap:12px;padding:clamp(18px,2.4vw,30px);border-radius:24px;background:linear-gradient(165deg,color-mix(in srgb,var(--pc) 8%,#ffffff),#fff 62%);border:1px solid color-mix(in srgb,var(--pc) 34%,#e3e5ec);box-shadow:var(--shadow-1);transition:transform .2s}.power:hover{transform:translateY(-4px)}.power .pnum{font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.24em;color:var(--pc)}.power .pic{color:var(--pc)}.power .plabel{font-family:var(--font-display);font-size:clamp(1.25rem,2.2vw,1.9rem);font-weight:700;letter-spacing:.02em}.power .pdesc{color:var(--muted);font-size:.95rem;line-height:1.4}.power.locked{opacity:.5;border-style:dashed;background:var(--surface);box-shadow:none}.power.locked .plabel,.power.locked .pic,.power.locked .pnum{color:var(--muted)}.power.pop{animation:cardPop .55s cubic-bezier(.2,.8,.25,1.15) both;animation-delay:var(--d, 0s)}@keyframes cardPop{0%{opacity:0;transform:translateY(22px) scale(.9)}to{opacity:1;transform:none}}.concept{--pc: var(--accent-deep);width:100%;max-width:620px;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--pc) 26%,#e3e5ec);border-left:5px solid var(--pc);background:#fff;padding:20px 26px;display:flex;flex-direction:column;gap:10px;animation:stepIn .4s both}.concept .ctitle{font-family:var(--font-display);font-weight:700;letter-spacing:.18em;font-size:.95rem;color:var(--pc)}.concept .cdef{font-size:clamp(1.05rem,1.8vw,1.3rem);font-weight:600}.concept .cex{display:flex;align-items:baseline;gap:12px;font-size:1.02rem}.concept .cmark{font-weight:800;flex:none;width:20px;text-align:center}.concept .cmark.bad{color:var(--danger)}.concept .cmark.good{color:var(--ok)}.concept .cbad{color:var(--muted);text-decoration:line-through;text-decoration-color:#d6454599}.concept .cgood{font-weight:600}.chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.chip{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-family:var(--font-display);font-weight:700;letter-spacing:.08em;font-size:clamp(.85rem,1.4vw,1.05rem)}.piste{display:flex;flex-direction:column;gap:6px;padding:16px 20px;border-radius:16px;border:1px solid color-mix(in srgb,var(--amb, var(--accent-deep)) 24%,#e3e5ec);border-left:5px solid var(--amb, var(--accent-deep));background:#fff;animation:cardPop .4s both;animation-delay:var(--d, 0s)}.piste b{font-family:var(--font-display);letter-spacing:.1em;font-size:.95rem;color:var(--amb, var(--accent-deep))}.piste span{color:var(--muted);font-size:.92rem}.phrase-card{width:100%;max-width:1240px;background:var(--surface);border:1px solid var(--line);border-left:7px solid var(--accent);border-radius:18px;padding:clamp(22px,3.6vh,44px) clamp(24px,4vw,56px);box-shadow:var(--shadow-1);animation:stepIn .4s both}.phrase-card .quote{text-align:left;font-size:clamp(1.7rem,4.2vw,3.3rem);max-width:none;font-weight:700}.vote-pills{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.vpill{padding:clamp(12px,1.8vh,16px) clamp(24px,3vw,40px);border-radius:999px;border:2px solid;font-family:var(--font-display);font-weight:700;letter-spacing:.08em;font-size:clamp(1rem,1.8vw,1.3rem)}.vpill.oui{color:#1d4ed8;border-color:#a9c3f7;background:#eef4ff}.vpill.non{color:#d64545;border-color:#f2b9b6;background:#fef1f0}.vpill.dep{color:var(--accent-deep);border-color:#ecd9a0;background:#fdf8ec}.decrypt{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(24px,3.5vw,56px);align-items:center;width:100%;animation:stepIn .4s both}.decrypt-body{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(10px,1.6vh,18px)}.decrypt-title{font-family:var(--font-display);font-size:clamp(1.9rem,4.2vw,3.4rem);font-weight:700;line-height:1.05;letter-spacing:-.01em;color:var(--text)}.defcard{width:100%;background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--amb, var(--accent-deep));border-radius:14px;padding:16px 22px;box-shadow:var(--shadow-1)}.defcard-label{font-family:var(--font-display);font-size:.72rem;font-weight:700;letter-spacing:.24em;color:var(--accent-deep);margin-bottom:6px}.defcard p{font-size:clamp(1rem,1.7vw,1.25rem);font-weight:600;line-height:1.4}.quotecard{width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:16px 22px;display:flex;flex-direction:column;gap:8px}.quotecard-phrase{font-family:var(--font-display);font-weight:700;font-size:clamp(1rem,1.8vw,1.3rem)}.quotecard-text{color:var(--muted);font-size:clamp(.92rem,1.4vw,1.05rem);line-height:1.45}.quotecard-transform{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;border-top:1px dashed var(--line);padding-top:10px;margin-top:2px;font-size:.9rem}.quotecard-transform .cmark{font-weight:800}.quotecard-transform .cmark.bad{color:var(--danger)}.quotecard-transform .cmark.good{color:var(--ok)}.quotecard-transform .cbad{color:var(--muted);text-decoration:line-through}.quotecard-transform .cgood{font-weight:600}.quotecard-transform .transform-arrow{color:var(--muted);font-weight:700}.decrypt-illus{width:100%;max-height:clamp(240px,54vh,580px);object-fit:contain;justify-self:center;filter:drop-shadow(0 24px 44px rgba(30,34,50,.16));animation:cardPop .5s both;animation-delay:.1s}.checklist{list-style:none;display:flex;flex-direction:column;gap:14px;width:100%;max-width:640px}.checklist li{display:flex;align-items:center;gap:18px;font-family:var(--font-display);font-size:clamp(1.05rem,1.9vw,1.45rem);font-weight:600;letter-spacing:.01em;padding:14px 20px;border-radius:14px;border:1px solid var(--line);background:var(--surface);animation:cardPop .4s both;animation-delay:var(--d, 0s)}.checklist .box{flex:none;width:26px;height:26px;border-radius:8px;border:2px solid var(--amb, var(--accent-deep));display:grid;place-items:center;color:#fff;background:transparent;transition:background .2s}.checklist li.done .box{background:var(--amb, var(--accent-deep))}.checklist li.done .lbl{color:var(--muted);text-decoration:line-through;text-decoration-thickness:2px}button.checklist li{cursor:pointer;transition:border-color .2s,background .2s}button.checklist li:hover{border-color:var(--amb, var(--accent-deep));background:#fffdf5}.timer{display:flex;flex-direction:column;align-items:center;gap:14px;padding:clamp(20px,3vh,34px) clamp(28px,4vw,56px);border-radius:26px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-1);transition:border-color .3s}.timer.running{border-color:color-mix(in srgb,var(--amb, var(--accent-deep)) 45%,#e3e5ec)}.timer.danger{border-color:#d645458c}.timer-time{font-family:var(--font-display);font-size:clamp(4rem,11vw,9rem);font-weight:700;line-height:1;letter-spacing:.01em;font-variant-numeric:tabular-nums;text-align:center;color:var(--text)}.timer.danger .timer-time{color:var(--danger);animation:blink 1s ease-in-out infinite}.timer.done .timer-time{color:var(--ok)}@keyframes blink{50%{opacity:.55}}.timer-status{font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);padding:6px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2)}.timer.running .timer-status{color:var(--amb, var(--accent-deep));border-color:color-mix(in srgb,var(--amb, var(--accent-deep)) 40%,#e3e5ec)}.timer.done .timer-status{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,#e3e5ec)}.timer-controls{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.timer-end{font-family:var(--font-display);font-size:clamp(1.6rem,4vw,3.2rem);font-weight:700;letter-spacing:.06em;color:var(--ok);text-transform:uppercase;text-align:center;animation:endPulse .9s ease-in-out infinite}@keyframes endPulse{50%{transform:scale(1.05)}}.phase-msg{display:inline-flex;align-items:center;gap:12px;padding:14px 26px;border-radius:999px;font-family:var(--font-display);font-weight:700;letter-spacing:.1em;font-size:clamp(1rem,2vw,1.4rem);color:var(--accent-ink);background:var(--accent);box-shadow:0 16px 40px -14px #f5b31c99;animation:cardPop .35s both}.draw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;width:100%;max-width:1180px}.draw-card{--pc: var(--accent-deep);display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center;padding:clamp(20px,2.6vw,34px);border-radius:22px;border:1px solid var(--line);background:var(--surface);min-height:170px;justify-content:center;transition:border-color .25s,background .25s}.draw-card.settled{border-color:color-mix(in srgb,var(--pc) 42%,#e3e5ec);border-top:5px solid var(--pc);background:linear-gradient(170deg,color-mix(in srgb,var(--pc) 7%,#ffffff),#fff 55%);box-shadow:var(--shadow-1)}.draw-card .dlabel{font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.3em;color:var(--pc)}.draw-card .dvalue{font-family:var(--font-display);font-size:clamp(1.25rem,2.4vw,2rem);font-weight:700;line-height:1.15;text-transform:uppercase;text-wrap:balance}.draw-card.rolling .dvalue{color:var(--muted)}.mission-line{font-family:var(--font-display);font-size:clamp(1.3rem,2.8vw,2.2rem);font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-align:center;animation:cardPop .4s both}.secret-word{font-family:var(--font-display);font-size:clamp(2.6rem,7vw,6rem);font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--accent-deep);text-align:center;line-height:1;padding:10px 0;min-height:1.2em;animation:wordIn .35s cubic-bezier(.2,.8,.25,1.1) both}@keyframes wordIn{0%{opacity:0;transform:translateY(14px) scale(.94);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}.secret-word.rolling{color:var(--muted)}.team-grid{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:860px}.team-btn{padding:16px 26px;border-radius:16px;border:1px solid var(--line);background:var(--surface);font-family:var(--font-display);font-weight:700;font-size:clamp(.95rem,1.6vw,1.2rem);letter-spacing:.06em;transition:border-color .2s,background .2s,transform .15s}.team-btn:hover{border-color:var(--accent);transform:translateY(-2px)}.team-btn.sel{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.perf-live{display:flex;flex-direction:column;align-items:center;gap:clamp(16px,3vh,30px);width:100%}.perf-team{font-family:var(--font-display);font-size:clamp(2.4rem,6vw,5rem);font-weight:700;text-transform:uppercase;letter-spacing:.02em;text-align:center;color:var(--amb, var(--accent-deep));animation:wordIn .4s both}.reperes{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.repere{display:flex;align-items:center;gap:12px;padding:14px 22px;border-radius:16px;border:1px solid var(--line);background:var(--surface);font-family:var(--font-display);font-weight:700;letter-spacing:.08em;font-size:clamp(.9rem,1.5vw,1.1rem);animation:cardPop .4s both;animation-delay:var(--d, 0s)}.repere .ric{color:var(--amb, var(--accent-deep));display:inline-flex}.effet{padding:clamp(16px,2.2vw,26px);border-radius:16px;border:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;font-family:var(--font-display);font-weight:700;letter-spacing:.06em;font-size:clamp(.85rem,1.4vw,1.08rem);animation:cardPop .4s both;animation-delay:var(--d, 0s)}.effets-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;width:100%}.celebrate{display:flex;flex-direction:column;align-items:center;gap:26px;width:100%}.celebrate-title{font-family:var(--font-display);font-size:clamp(2.2rem,6vw,5.2rem);font-weight:700;letter-spacing:.02em;text-transform:uppercase;text-align:center;color:var(--accent-deep);text-shadow:0 2px 0 rgba(255,255,255,.8),0 10px 40px rgba(245,179,28,.35);animation:cardPop .5s cubic-bezier(.2,.8,.25,1.15) both}.sparkle{display:inline-flex;color:var(--accent);animation:spin 6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#f8f8fbb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;animation:fadeIn .2s both;padding:24px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:min(720px,100%);max-height:calc(100vh - 60px);overflow-y:auto;border-radius:24px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow-2);padding:clamp(24px,4vw,44px);display:flex;flex-direction:column;gap:22px;animation:stepIn .25s both}.kbd-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.kbd-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);font-size:.95rem}kbd{font-family:var(--font-display);font-weight:700;font-size:.85rem;padding:5px 10px;border-radius:8px;background:var(--surface-2);border:1px solid #dfe2ea;border-bottom-width:3px;color:var(--text);white-space:nowrap}.panel{position:fixed;top:10px;right:10px;bottom:10px;width:min(560px,calc(100vw - 20px));z-index:60;display:flex;flex-direction:column;border-radius:22px;border:1px solid #ecd9a0;background:#fff;box-shadow:var(--shadow-2);animation:panelIn .28s cubic-bezier(.2,.7,.2,1) both;overflow:hidden}@keyframes panelIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 22px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff8e4,#fff)}.panel-title{display:flex;flex-direction:column;gap:2px}.panel-title b{font-family:var(--font-display);font-size:.95rem;letter-spacing:.2em;color:var(--accent-deep)}.panel-title span{font-size:.85rem;color:var(--muted)}.panel-body{flex:1;overflow-y:auto;padding:20px 22px;display:flex;flex-direction:column;gap:16px}.panel-warn{display:flex;gap:10px;padding:12px 16px;border-radius:12px;border:1px solid #ecd9a0;background:#fff8e4;font-size:.85rem;line-height:1.45;color:#7a5a12}.panel-foot{display:flex;flex-wrap:wrap;gap:10px;padding:16px 22px;border-top:1px solid var(--line)}.nsec{border-left:3px solid color-mix(in srgb,var(--accent-deep) 45%,#ffffff);padding:2px 0 2px 16px;display:flex;flex-direction:column;gap:6px}.nlabel{font-family:var(--font-display);font-size:.72rem;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--accent-deep)}.nsec p,.nsec li{font-size:.95rem;line-height:1.5;color:var(--text)}.nsec ul{list-style:none;display:flex;flex-direction:column;gap:6px}.nsec li:before{content:"— ";color:var(--muted)}.nsec .say{font-style:italic}.score-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.score-name{font-family:var(--font-display);font-weight:700;font-size:1.05rem;flex:1 1 120px}.score-val{font-family:var(--font-display);font-weight:700;font-size:1.4rem;min-width:44px;text-align:center;color:var(--accent-deep);font-variant-numeric:tabular-nums}.mini-btn{padding:9px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);font-family:var(--font-display);font-weight:700;font-size:.88rem;transition:border-color .15s,background .15s}.mini-btn:hover{border-color:var(--accent);background:#fff8e4}.tag{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;font-family:var(--font-display);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-deep);border:1px solid #ecd9a0;background:#fdf8ec;width:fit-content}select.dist-sel{font-family:var(--font-body);font-size:.88rem;color:var(--text);background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 10px;max-width:210px}.toast{position:fixed;bottom:calc(var(--footer-h) + 18px);left:50%;transform:translate(-50%);z-index:70;padding:13px 24px;border-radius:999px;background:#fff;border:1px solid #ecd9a0;color:var(--text);font-family:var(--font-display);font-weight:700;letter-spacing:.05em;font-size:.95rem;box-shadow:var(--shadow-2);animation:toastIn .25s both}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.tele{min-height:100%;max-width:900px;margin:0 auto;padding:40px 30px 140px;display:flex;flex-direction:column;gap:22px}.tele-head{display:flex;flex-direction:column;gap:6px}.tele-status{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.tele-dot{width:9px;height:9px;border-radius:50%;background:var(--danger)}.tele-dot.ok{background:var(--ok)}.tele-nav{position:fixed;left:0;right:0;bottom:0;display:flex;gap:12px;justify-content:center;padding:16px 24px calc(16px + env(safe-area-inset-bottom));background:#ffffffe0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line)}.center-col{display:flex;flex-direction:column;align-items:center;gap:clamp(14px,2.4vh,26px);width:100%}.rule{width:64px;height:3px;border-radius:2px;background:var(--amb, var(--accent-deep));opacity:.85}.big-S{font-family:var(--font-display);font-weight:700;font-size:clamp(4rem,11vw,9rem);line-height:.9;color:transparent;-webkit-text-stroke:2px rgba(12,135,160,.35);-webkit-user-select:none;user-select:none}.s-hl{color:var(--c-son);font-weight:800}.beats{display:flex;gap:10px;align-items:center}.beats i{width:12px;height:12px;border-radius:50%;background:var(--c-rythme);opacity:.3}.beats i.on{opacity:1;animation:beat 1.1s ease-in-out infinite}.beats i.on:nth-child(2){animation-delay:.18s}.beats i.on:nth-child(3){animation-delay:.36s}.beats i.on:nth-child(4){animation-delay:.54s}@keyframes beat{50%{transform:scale(1.45)}}.example-quote{font-family:var(--font-display);font-size:clamp(1.3rem,2.6vw,2.1rem);font-weight:600;line-height:1.3;text-align:center;text-wrap:balance;animation:cardPop .45s both;animation-delay:var(--d, 0s)}.ic{display:inline-flex;flex:none}.phrase-illus{max-height:clamp(150px,27vh,330px);max-width:min(70vw,880px);object-fit:contain;filter:drop-shadow(0 20px 44px rgba(30,34,50,.2));animation:wordIn .5s both}.vote-quote{font-size:clamp(1.5rem,3.6vh + 1vw,3rem)}.recap-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;width:100%;max-width:1560px}.recap-item{display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 12px;border-radius:16px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-1);text-align:center;animation:cardPop .4s both;animation-delay:var(--d, 0s)}.recap-illus{height:clamp(70px,13vh,130px);max-width:100%;object-fit:contain}.recap-item b{font-family:var(--font-display);font-size:.82rem;letter-spacing:.06em;color:var(--text)}.recap-item span{font-size:.76rem;color:var(--muted);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.welcome-header{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.lesson-hub{width:100%;max-width:1020px;display:flex;flex-direction:column;gap:14px;margin-top:4px}.lesson-hub-label{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;padding:0 4px}.lesson-hub-count{background:var(--surface-2);border:1px solid var(--line);padding:3px 10px;border-radius:999px;font-size:.72rem;color:var(--text);letter-spacing:.08em}.lesson-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;width:100%}.lesson-nav-tab{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:16px;padding:12px 14px;cursor:pointer;transition:all .2s cubic-bezier(.2,.8,.25,1);box-shadow:0 4px 14px -6px #1e223214;position:relative}.lesson-nav-tab:hover{border-color:#cbd1de;transform:translateY(-2px)}.lesson-nav-tab.active{border-color:var(--accent);background:#fff;box-shadow:0 10px 28px -8px #f5b31c61,0 0 0 3px #f5b31c47;transform:translateY(-2px)}.tab-top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:6px}.tab-code{font-family:var(--font-display);font-size:.82rem;font-weight:800;letter-spacing:.1em;color:var(--muted)}.lesson-nav-tab.active .tab-code{color:var(--accent-deep)}.tab-dot{width:8px;height:8px;border-radius:50%;background:#c2c7d4;flex:none}.tab-dot.active{background:var(--ok);box-shadow:0 0 0 3px #1f9d5b40}.tab-title{font-family:var(--font-display);font-weight:700;font-size:.86rem;line-height:1.25;color:var(--text);margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.2em}.tab-sub{margin-top:auto;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:.72rem;color:var(--muted)}.tab-duration{font-weight:600}.tab-badge{padding:2px 7px;border-radius:6px;font-weight:600;font-size:.68rem;background:var(--surface-2);color:var(--muted)}.tab-badge.active{background:#e8f7ee;color:#167944}.lesson-card{background:var(--surface);border:1.5px solid var(--line);border-radius:24px;padding:22px 28px;box-shadow:var(--shadow-1);display:flex;flex-direction:column;gap:14px;animation:stepIn .3s both}.lesson-card.active{border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.lesson-card-top{display:flex;flex-direction:column;gap:5px}.lesson-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:3px}.lesson-state-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.lesson-state-pill.active{background:#e8f7ee;color:#167944;border:1px solid #c2ebd0}.lesson-state-pill.upcoming{background:#fdf5e2;color:#9c6807;border:1px solid #fae4a8}.lesson-meta-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--surface-2);border:1px solid var(--line);color:var(--muted)}.lesson-card-title{font-family:var(--font-display);font-size:clamp(1.3rem,2.2vw,1.85rem);font-weight:700;line-height:1.2;color:var(--text)}.lesson-card-num{color:var(--accent-deep)}.lesson-card-subtitle{font-size:1.05rem;color:var(--muted);font-weight:500}.lesson-card-desc{font-size:1.02rem;line-height:1.5;color:var(--text)}.lesson-points-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 18px;background:var(--surface-2);border:1px solid var(--line);border-radius:16px;padding:12px 18px}.lesson-point-item{display:flex;align-items:baseline;gap:8px;font-size:.94rem}.lesson-point-icon{color:var(--accent-deep);font-weight:800;flex:none}.lesson-card-actions{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:4px}.lesson-btn-box{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.lesson-upcoming-box{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.lesson-upcoming-alert{display:flex;align-items:center;gap:10px;background:#fdfaf0;border:1px solid #f6e6b8;border-radius:14px;padding:12px 18px;font-size:.95rem;color:#724d03;width:100%;justify-content:center}.alert-emoji{font-size:1.2rem}@media (max-width: 1100px){.grid4,.effets-grid{grid-template-columns:repeat(2,1fr)}.draw-grid{grid-template-columns:1fr}.grid3{grid-template-columns:1fr 1fr}.recap-grid{grid-template-columns:repeat(3,1fr)}.decrypt{grid-template-columns:1fr}.decrypt-illus{max-height:32vh;order:-1}.lesson-nav{grid-template-columns:repeat(3,1fr)}}@media (max-width: 760px){:root{--footer-h: 66px}.fbtn span.flabel{display:none}.grid2,.grid3,.kbd-grid{grid-template-columns:1fr}.pbar{display:none}.recap-grid{grid-template-columns:repeat(2,1fr)}.lesson-nav{grid-template-columns:1fr 1fr}.lesson-points-grid{grid-template-columns:1fr}}@media (max-height: 760px){.h-hero{font-size:clamp(2.4rem,8vh + 1vw,6rem)}.h1{font-size:clamp(1.5rem,4.5vh + .5vw,2.4rem)}.timer-time{font-size:clamp(2.8rem,9vh,6rem)}.quote{font-size:clamp(1.6rem,5.5vh,3.4rem)}.stage-inner{gap:10px}.timer{gap:8px;padding-top:14px;padding-bottom:14px}.timer .timer-controls .btn{min-height:46px;padding:10px 20px}.checklist{gap:8px}.checklist li{padding:9px 16px;font-size:clamp(.95rem,1.7vh + .4vw,1.25rem);gap:12px}.checklist .box{width:21px;height:21px;border-radius:6px}.draw-card{min-height:120px;padding:14px}.card{padding:16px 20px}.btn-lg{min-height:56px;padding:13px 32px}.effet{padding:12px}.concept{padding:14px 20px;gap:6px}.concept .cdef{font-size:1rem}.big-S{font-size:clamp(3rem,9vh,6rem)}.perf-team{font-size:clamp(1.8rem,6vh,3.6rem)}.piste{padding:10px 14px}.grid2{gap:10px}.phrase-card{padding:16px 28px}.decrypt-illus{max-height:42vh}.defcard{padding:12px 18px}.defcard p{font-size:1rem}.quotecard{padding:12px 18px;gap:5px}.recap-grid{gap:9px}.recap-item{padding:8px 6px;gap:5px}.recap-illus{height:clamp(56px,9.5vh,90px)}.recap-item b{font-size:.68rem}.recap-item span{font-size:.66rem;-webkit-line-clamp:1}.decrypt-body,.lesson-hub{gap:8px}.lesson-card{padding:14px 18px;gap:8px}.lesson-card-title{font-size:clamp(1.15rem,2vh + .5vw,1.45rem)}.lesson-points-grid{padding:8px 12px;gap:4px}.lesson-nav-tab{padding:8px 10px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
