:root{--ink:#15131b;--muted:#716e7a;--paper:#f7f5ef;--card:#fffefb;--line:#ddd9d0;--violet:#5b47e8;--violet-dark:#4030c6;--coral:#ff765f;--mint:#25bea0;--blue:#4d86ec;--yellow:#f4b844}*{box-sizing:border-box}html{scroll-behavior:smooth;max-width:100%;overflow-x:hidden}body{background:var(--paper);max-width:100%;color:var(--ink);margin:0;font-family:Avenir Next,PingFang SC,Microsoft YaHei,sans-serif;overflow-x:hidden}button,a{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #5b47e847}.home-shell,.game-shell{background:var(--paper);min-height:100vh;overflow:hidden}nav{z-index:10;justify-content:space-between;align-items:center;max-width:1240px;height:80px;margin:auto;padding:0 28px;display:flex;position:relative}.brand{letter-spacing:-.5px;align-items:center;gap:10px;font-size:19px;font-weight:750;display:flex}.brand-mark{color:#fff;background:var(--violet);border-radius:9px 9px 9px 3px;place-items:center;width:30px;height:30px;font-weight:850;display:grid;transform:rotate(-4deg);box-shadow:0 5px 14px #5b47e838}.nav-links{gap:36px;display:flex}.nav-links a{color:#5f5c67;font-size:14px;text-decoration:none}.nav-links a:hover{color:var(--violet)}.nav-cta,.primary-button{background:var(--violet);color:#fff;border:0;font-weight:700;transition:transform .2s,background .2s;box-shadow:0 10px 26px #5b47e833}.nav-cta{border-radius:99px;padding:11px 20px;font-size:13px}.nav-cta span{margin-left:8px}.primary-button{border-radius:13px;padding:16px 22px}.primary-button span{margin-left:16px}.primary-button:hover,.nav-cta:hover{background:var(--violet-dark);transform:translateY(-2px)}.secondary-button{color:var(--ink);background:#ffffff80;border:1px solid #d6d2c9;border-radius:12px;padding:14px 20px;font-weight:650}.secondary-button:hover{background:#fff}.text-button{color:#6d6976;background:0 0;border:0;font-size:14px}.hero{grid-template-columns:.9fr 1.1fr;align-items:center;gap:80px;max-width:1200px;min-height:650px;margin:auto;padding:66px 28px 80px;display:grid;position:relative}.hero>*{min-width:0}.hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#6b58eb21,#0000 65%);border-radius:50%;width:520px;height:520px;position:absolute;top:-80px;right:-150px}.eyebrow{color:var(--violet);letter-spacing:1.8px;text-transform:uppercase;font-size:11px;font-weight:800}.pulse-dot{background:var(--mint);border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 5px #25bea01c}.hero h1{letter-spacing:-5px;margin:26px 0;font-size:clamp(54px,6vw,78px);font-weight:760;line-height:.98}.hero h1 span{color:var(--violet)}.hero-copy>p{max-width:470px;color:var(--muted);font-size:17px;line-height:1.8}.hero-actions{align-items:center;gap:25px;margin-top:34px;display:flex}.play-link{color:#45414f;background:0 0;border:0;font-weight:650}.play-link i{background:#fff;border-radius:50%;place-items:center;width:34px;height:34px;margin-right:7px;font-size:10px;font-style:normal;display:inline-grid;box-shadow:0 5px 18px #231d361a}.trust-row{color:#8e8a94;gap:12px;margin-top:30px;font-size:11px;display:flex}.hero-game-card{background:var(--card);border:1px solid #cbc6beb3;border-radius:22px;padding-bottom:25px;position:relative;transform:rotate(1deg);box-shadow:0 32px 80px #2d254a24}.mini-window-head{color:#8f899a;letter-spacing:1.2px;background:#1c1924;border-radius:21px 21px 0 0;grid-template-columns:1fr 1fr 1fr;align-items:center;height:45px;padding:0 17px;font-size:8px;display:grid}.mini-window-head>span:first-child{gap:5px;display:flex}.mini-window-head i{background:#57515f;border-radius:50%;width:6px;height:6px}.mini-window-head span:nth-child(2){text-align:center;white-space:nowrap}.mini-window-head b{color:#fff;text-align:right;font-size:10px}.mini-question{align-items:center;gap:14px;padding:24px 34px 12px;display:flex}.mini-question>span{color:#d1cdd7;font-size:25px;font-weight:800}.mini-question div{flex-direction:column;gap:2px;display:flex}.mini-question b{font-size:14px}.mini-question small{color:#9995a0;font-size:9px}.mini-options{gap:10px;padding:0 34px;display:flex}.mini-options button{color:#4f4b55;background:#fff;border:1px solid #e4e0d8;border-radius:9px;flex:1;height:42px;font-size:10px}.mini-options button:hover{border-color:var(--violet);color:var(--violet)}.floating-badge{background:#fff;border:1px solid #e7e3db;border-radius:12px;display:flex;position:absolute;box-shadow:0 15px 35px #2a234326}.badge-streak{flex-direction:column;padding:12px 16px;top:115px;right:-55px}.badge-streak b{color:var(--yellow);font-size:17px}.badge-streak span,.badge-score span{color:#99949f;font-size:8px}.badge-score{align-items:center;gap:10px;padding:12px 15px;bottom:72px;left:-46px}.badge-score b{color:var(--mint)}.flow-board{width:min(100%,460px);margin:0 auto;padding:4px 34px 18px}.hero-game-card .flow-board{transform-origin:50%;margin-top:-20px;margin-bottom:-20px;transform:scale(.83)}.symbol-row,.exit-row{z-index:2;place-items:center;display:grid;position:relative}.symbol-token{background:#fff;border:2px solid;border-radius:50%;place-items:center;width:33px;height:33px;font-size:20px;line-height:1;display:inline-grid;box-shadow:0 4px 12px #221d3221}.symbol-small{width:24px;height:24px;box-shadow:none;font-size:14px}.symbol-coral{color:var(--coral)}.symbol-violet{color:var(--violet)}.symbol-blue{color:var(--blue)}.symbol-mint{color:var(--mint)}.symbol-yellow{color:var(--yellow)}.pipe-grid{margin:-1px 0}.pipe-row{height:46px;display:grid;position:relative}.straight-pipe{position:relative}.straight-pipe:after{content:"";background:#d6d3dc;border-radius:4px;width:4px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:inset 1px 0 #fffc}.swap-pair{height:46px;position:relative}.swap-pair i{transform-origin:50%;background:#aaa4bb;border-radius:4px;width:71%;height:4px;position:absolute;top:50%;left:25%}.swap-pair i:first-child{transform:translate(-1%,-50%)rotate(31deg)}.swap-pair i:last-child{transform:translate(-1%,-50%)rotate(-31deg)}.exit-row{min-height:33px}.question-mark{color:#b9b5c1;background:#eeece7;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.is-revealed .exit-row .symbol-token{animation:.45s both pop}@keyframes pop{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}.feature-strip{border-top:1px solid #dcd8cf;border-bottom:1px solid #dcd8cf;grid-template-columns:repeat(3,1fr);max-width:1200px;margin:0 auto 130px;padding:25px 0;display:grid}.feature-strip>div{border-right:1px solid #dcd8cf;justify-content:center;align-items:center;gap:18px;display:flex}.feature-strip>div:last-child{border:0}.feature-strip b{color:#c4c0ca;font-size:12px}.feature-strip span{flex-direction:column;display:flex}.feature-strip strong{font-size:13px}.feature-strip small{color:#96919b;margin-top:3px;font-size:10px}.about-section{text-align:center;max-width:760px;margin:auto;padding:0 28px 130px}.about-section h2{letter-spacing:-2.6px;margin:20px 0;font-size:clamp(36px,5vw,56px);line-height:1.15}.about-section p{color:var(--muted);font-size:15px;line-height:1.9}.about-section button{margin-top:20px}footer{color:#8c8893;border-top:1px solid #ddd9d0;justify-content:space-between;align-items:center;max-width:1200px;height:100px;margin:auto;padding:0 28px;font-size:11px;display:flex}footer .brand{color:var(--ink)}.tutorial-layout,.result-layout{grid-template-columns:1fr 1fr;align-items:center;gap:90px;max-width:1120px;min-height:calc(100vh - 80px);margin:auto;padding:55px 28px 100px;display:grid}.tutorial-copy h1{letter-spacing:-4px;margin:22px 0;font-size:clamp(45px,5.2vw,68px);line-height:1.06}.tutorial-copy>p{color:var(--muted);max-width:510px;font-size:15px;line-height:1.8}.tutorial-steps{gap:25px;margin:34px 0;display:flex}.tutorial-steps div{flex-direction:column;gap:5px;display:flex}.tutorial-steps b{color:var(--violet);font-size:11px}.tutorial-steps span{color:#56515e;font-size:12px}.tutorial-card{background:var(--card);border:1px solid #dfdbd3;border-radius:23px;padding:27px 30px 23px;box-shadow:0 30px 70px #2820441f}.card-label{color:#6d6874;letter-spacing:.5px;font-size:11px;font-weight:700}.tutorial-card .flow-board{margin-top:28px}.tutorial-card>p{text-align:center;color:#99949e;font-size:10px}.play-screen{background:#f3f1ec}.game-status{grid-template-columns:1fr 1fr 1fr;align-items:end;max-width:890px;margin:15px auto 18px;padding:0 18px;display:grid}.game-status>div{flex-direction:column;display:flex}.game-status>div:last-child{align-items:flex-end}.game-status small{color:#97929d;letter-spacing:1px;font-size:9px}.game-status strong{margin-top:2px;font-size:24px}.game-status em{color:#918c97;margin-left:2px;font-size:11px;font-style:normal}.game-status .level-chip{color:var(--violet);letter-spacing:1px;background:#5b47e817;border-radius:99px;justify-self:center;padding:7px 13px;font-size:9px;font-weight:800;display:block}.game-status .urgent strong{color:var(--coral)}.challenge-card{background:var(--card);border:1px solid #ddd9d1;border-radius:24px;max-width:890px;min-height:610px;margin:auto;padding:28px 55px 34px;transition:border .2s,transform .2s;position:relative;box-shadow:0 25px 65px #2d254017}.challenge-card.feedback-correct{border-color:#25bea08c}.challenge-card.feedback-wrong{border-color:#ff765f8c}.challenge-head{justify-content:space-between;align-items:center;display:flex}.challenge-head>div:first-child{align-items:center;gap:18px;display:flex}.question-index{color:#d1cdd6;font-size:28px;font-weight:800}.challenge-head h2{margin:0 0 4px;font-size:17px}.challenge-head p{color:#99949e;margin:0;font-size:10px}.combo{color:#b67a06;letter-spacing:.5px;background:#fff5d9;border-radius:99px;padding:7px 12px;font-size:9px;font-weight:750}.challenge-card .flow-board{min-height:350px;padding-top:26px}.challenge-card .pipe-row,.challenge-card .swap-pair{height:43px}.answers{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px;display:grid}.answer{background:#fff;border:1px solid #dedad2;border-radius:12px;align-items:center;min-height:62px;padding:0 16px;transition:transform .15s,border .15s,background .15s;display:flex}.answer:hover:not(:disabled){border-color:var(--violet);transform:translateY(-2px)}.key-hint{color:#96919c;border:1px solid #dedad4;border-radius:6px;place-items:center;width:22px;height:22px;font-size:9px;display:grid}.answer-symbols{gap:8px;margin:auto;display:flex}.answer.is-answer{border-color:var(--mint);background:#25bea012}.answer.is-selected:not(.is-answer){border-color:var(--coral);background:#ff765f0f}.feedback-toast{z-index:1000;color:#fff;text-align:center;background:#1c1924;border:1px solid #ffffff1f;border-radius:99px;width:max-content;max-width:calc(100vw - 32px);padding:12px 20px;font-size:12px;line-height:1.45;animation:.25s both toast;position:fixed;top:clamp(118px,18vh,160px);left:50%;transform:translate(-50%);box-shadow:0 12px 34px #14121b47}@keyframes toast{0%{opacity:0;transform:translate(-50%,-8px)scale(.94)}}.keyboard-note{text-align:center;color:#a19ca6;margin:15px 0 30px;font-size:9px}.result-layout{grid-template-columns:.85fr 1.15fr}.result-hero h1{letter-spacing:-3.5px;margin:20px 0 28px;font-size:clamp(42px,5vw,62px);line-height:1.05}.result-hero>p{color:#8f8a95;font-size:12px}.big-score{color:var(--violet);letter-spacing:-7px;font-size:90px;font-weight:800;line-height:1}.result-hero .best-score{margin:5px 0 27px;font-size:10px}.result-actions{gap:10px;display:flex}.report-card{background:var(--card);border:1px solid #dedad2;border-radius:23px;padding:28px;box-shadow:0 30px 70px #2a22411c}.report-head{color:#595460;border-bottom:1px solid #ebe8e1;justify-content:space-between;padding-bottom:20px;font-size:11px;font-weight:700;display:flex}.report-head>span{color:var(--mint);background:#25bea017;border-radius:99px;padding:5px 9px;font-size:8px}.stat-grid{grid-template-columns:1fr 1fr;margin:15px 0;display:grid}.stat-grid>div{border-bottom:1px solid #ebe8e1;border-right:1px solid #ebe8e1;flex-direction:column;padding:25px 20px;display:flex}.stat-grid>div:nth-child(2n){border-right:0}.stat-grid>div:nth-last-child(-n+2){border-bottom:0}.stat-grid small{color:#98939e;font-size:9px}.stat-grid strong{margin-top:6px;font-size:32px}.stat-grid em{color:#817c87;margin-left:3px;font-size:12px;font-style:normal}.coach-note{background:#f2efff;border-radius:14px;gap:14px;padding:18px;display:flex}.coach-note>span{color:var(--violet)}.coach-note b{font-size:11px}.coach-note p{color:#6f6a79;margin:5px 0 0;font-size:11px;line-height:1.65}.switch-hero{grid-template-columns:.92fr 1.08fr}.switch-demo-card{min-height:555px;padding-bottom:16px}.switch-demo-card .mini-question{padding-bottom:2px}.switch-demo-card .badge-streak b{color:var(--violet);font-size:12px}.switch-demo-card .badge-streak{top:155px}.switch-demo-card .badge-score{bottom:105px}.switch-board{flex-direction:column;align-items:center;width:min(100%,560px);margin:0 auto;padding:8px 18px 4px;display:flex;position:relative}.switch-board-compact{transform-origin:top;width:620px;max-width:100%;margin-bottom:-135px;transform:scale(.72)}.switch-symbol-row{z-index:3;justify-content:center;align-items:center;gap:14px;display:flex;position:relative}.switch-symbol-row .symbol-token{background:#f0efec;border:0;border-radius:9px;box-shadow:0 4px 11px #241f301a}.sequence-label{color:#aaa5af;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:7px;font-size:8px;font-weight:800}.target-label{margin:7px 0 0}.switch-funnel{z-index:2;width:76px;height:47px;margin:9px 0 -2px;position:relative}.switch-funnel>i{background:var(--violet);clip-path:polygon(0 0,100% 0,66% 100%,34% 100%);border-radius:4px;width:64px;height:34px;margin:auto;display:block}.switch-funnel>span{background:#2f24ae;border-radius:4px;justify-content:space-evenly;align-items:center;width:68px;height:10px;display:flex;position:absolute;top:-3px;left:4px}.switch-funnel b{background:#fff;border-radius:50%;width:4px;height:4px}.switch-funnel:after{content:"";background:#2f24ae;border-radius:3px;width:16px;height:12px;position:absolute;bottom:0;left:30px}.funnel-flip{margin:-2px 0 9px;transform:rotate(180deg)}.switch-pipe{background:#c9c2fb;border-radius:99px;width:7px;min-height:16px;margin:-2px auto}.switch-pipe.between{height:17px}.switch-step{flex-direction:column;align-items:center;width:100%;display:flex}.fixed-rule{color:#fff;letter-spacing:2px;z-index:2;background:#362bb8;border-radius:11px;place-items:center;min-width:94px;height:48px;font-size:21px;font-weight:650;display:grid;position:relative;box-shadow:0 7px 15px #4030c62e}.choice-rule-block{z-index:2;background:#eeeafe;border:3px solid #c9c2fb;border-radius:23px;width:100%;max-width:490px;padding:13px 14px;position:relative}.blank-label{background:var(--card);color:var(--violet);border:1px solid #d9d3fa;border-radius:99px;padding:2px 8px;font-size:8px;font-weight:800;position:absolute;top:-10px;left:18px}.rule-options{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.rule-option{color:#2e2937;letter-spacing:1px;background:#fff;border:1px solid #dbd7e6;border-radius:10px;min-height:49px;font-size:19px;font-weight:600;transition:transform .15s,border .15s,background .15s;position:relative}.rule-option>span{color:#9b96a4;letter-spacing:0;background:#f0edf6;border-radius:4px;place-items:center;width:15px;height:15px;font-size:7px;display:grid;position:absolute;top:5px;left:7px}.rule-option:hover:not(:disabled){border-color:var(--violet);transform:translateY(-2px)}.rule-option.is-selected{border-color:var(--violet);color:var(--violet);box-shadow:inset 0 0 0 1px var(--violet);background:#ece9ff}.rule-option.is-correct{border-color:var(--mint);color:#178a75;box-shadow:inset 0 0 0 1px var(--mint);background:#e8faf5}.rule-option.is-wrong{border-color:var(--coral);color:#d95743;box-shadow:inset 0 0 0 1px var(--coral);background:#fff0ed}.switch-challenge-card{max-width:920px;min-height:700px;padding-bottom:25px}.switch-challenge-card .switch-board{min-height:540px;padding-top:16px}.difficulty-value{color:var(--violet);background:#eeebff;border-radius:99px;padding:7px 11px;font-size:9px;font-weight:800}.level-center{gap:4px;align-items:center!important}.level-center>small{color:#928d98;font-size:8px}.timer-value{letter-spacing:-.5px}.level7-submit{background:var(--violet);color:#fff;border:0;border-radius:11px;min-width:170px;height:42px;margin:3px auto 0;font-size:12px;font-weight:700;display:block}.level7-submit:disabled{cursor:not-allowed;background:#cfccd5}.switch-challenge-card .feedback-toast{top:clamp(118px,18vh,160px)}.rule-explainer{background:#fff;border:1px solid #e0dcd4;border-radius:13px;align-items:center;gap:20px;width:fit-content;margin-top:25px;padding:16px 18px;display:flex}.rule-explainer div{flex-direction:column;gap:5px;display:flex}.rule-explainer span{color:#9a95a0;font-size:9px}.rule-explainer b{letter-spacing:2px;font-size:14px}.rule-explainer i{color:#b0aab7;font-style:normal}.violet-text{color:var(--violet)}.switch-tutorial-card{padding-bottom:15px}.switch-tutorial-card .switch-board{transform-origin:top;margin-bottom:-105px;transform:scale(.78)}.switch-tutorial-card>p{margin-top:7px}@media (width<=900px){.nav-links{display:none}.hero{grid-template-columns:1fr;gap:55px;padding-top:45px}.hero-copy{text-align:center;min-width:0}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.trust-row{justify-content:center}.hero-game-card{width:90%;max-width:620px;margin:auto}.feature-strip{margin-left:20px;margin-right:20px}.tutorial-layout,.result-layout{grid-template-columns:1fr;gap:45px;padding-top:35px}.tutorial-copy,.result-hero{text-align:center}.tutorial-copy>p{margin-left:auto;margin-right:auto}.tutorial-steps,.result-actions{justify-content:center}.rule-explainer{margin-left:auto;margin-right:auto}}@media (width<=620px){nav{height:68px;padding:0 18px}.brand{font-size:16px}.brand-mark{width:27px;height:27px}.nav-cta{padding:9px 13px}.hero{gap:42px;width:100%;min-height:0;padding:42px 18px 70px}.hero-copy .eyebrow{letter-spacing:1.15px;justify-content:center;align-items:center;max-width:100%;font-size:9px;line-height:1.45;display:flex}.hero h1{letter-spacing:-3.5px;max-width:100%;font-size:clamp(42px,13vw,51px)}.hero-copy>p{font-size:14px}.hero-actions{flex-direction:column;gap:16px}.trust-row{flex-wrap:wrap;gap:6px}.hero-game-card{width:100%;max-width:100%;transform:none}.mini-question{min-width:0;padding-left:20px;padding-right:20px}.mini-question div{min-width:0}.mini-question b{line-height:1.4}.floating-badge{display:none}.feature-strip{grid-template-columns:1fr;padding:0}.feature-strip>div{border-bottom:1px solid #dcd8cf;border-right:0;justify-content:flex-start;padding:20px}.feature-strip>div:last-child{border-bottom:0}footer{flex-direction:column;justify-content:center;gap:8px;height:140px}.tutorial-layout,.result-layout{padding:40px 18px 70px}.tutorial-copy h1,.result-hero h1{letter-spacing:-2.8px;font-size:43px}.tutorial-steps{justify-content:space-between;gap:12px}.tutorial-card{padding:22px 8px}.game-status{margin-top:8px}.challenge-card{min-height:0;margin:0 10px;padding:22px 14px 27px}.challenge-card .flow-board{min-height:340px;padding-left:16px;padding-right:16px}.challenge-head{padding:0 5px}.answers{grid-template-columns:1fr}.answer{min-height:53px}.symbol-token{width:30px;height:30px;font-size:17px}.symbol-small{width:22px;height:22px;font-size:12px}.combo{display:none}.big-score{font-size:75px}.report-card{padding:20px 15px}.switch-demo-card{min-height:470px;overflow:hidden}.switch-board-compact{width:100%;max-width:100%;margin-bottom:-165px;transform:scale(.65)}.switch-challenge-card{min-height:0}.switch-challenge-card .switch-board{min-height:0;padding-left:0;padding-right:0}.switch-symbol-row{gap:10px}.choice-rule-block{border-radius:17px;padding:11px 9px}.rule-options{gap:6px}.rule-option{min-height:45px;font-size:16px}.difficulty-value{display:none}.level-center>small{text-align:center;max-width:100px}.switch-tutorial-card .switch-board{margin-bottom:-145px;transform:scale(.7)}.feedback-toast,.switch-challenge-card .feedback-toast{top:calc(env(safe-area-inset-top,0px) + 116px);border-radius:14px;width:calc(100vw - 32px);max-width:420px;padding:12px 16px;font-size:12px}}@media (width<=380px){.hero{padding-left:14px;padding-right:14px}.hero h1{font-size:41px}.hero-copy .eyebrow{letter-spacing:.9px;font-size:8px}.nav-cta span{margin-left:4px}.rule-option{letter-spacing:.5px;font-size:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
