:root{font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:#243b32;background:#f7f8f3;font-size:18px;--green:#286e53;--muted:#68766e;--line:#e2e8dc;--pale:#edf3e8}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d99135;outline-offset:4px}button:disabled{cursor:default;opacity:.48}button:hover:not(:disabled){filter:brightness(.97)}a{color:var(--green)}h1,h2,h3,p{margin:0}h1{font-size:36px;letter-spacing:1px;line-height:1.45}h2{font-size:25px}h3{font-size:21px}p{line-height:1.8}small{font-size:15px}svg{width:24px;height:24px;flex-shrink:0}.shell{max-width:1440px;margin:auto;display:flex;min-height:100vh}.sidebar{width:242px;position:fixed;top:0;bottom:0;inset:0 auto 0 auto;border-right:1px solid var(--line);padding:38px 24px;background:#fffef9;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;margin-bottom:45px;text-align:left;padding:0}.brand img{width:43px;height:43px}.brand strong{font-size:24px;letter-spacing:1px}.brand small{display:block;color:var(--muted);font-size:12px;margin-top:3px;letter-spacing:2px}.nav{display:grid;gap:12px}.nav button{display:flex;align-items:center;gap:15px;padding:16px 20px;border-radius:12px;text-align:left;color:#627166;font-size:19px}.nav button.active{background:#eaf1e3;color:#286344;font-weight:700}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:24px 10px 0;color:#748174;font-size:14px;line-height:1.8}.sidebar-foot svg{color:#688b47}.main{margin-left:242px;padding:35px 46px 45px;flex:1;min-width:0}.topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.crumb{font-size:16px;color:var(--muted)}.top-actions{display:flex;gap:12px;align-items:center}.text-btn{display:flex;gap:7px;align-items:center;border:1px solid var(--line);background:#fffefb;padding:10px 14px;border-radius:10px;font-size:15px}.avatar{background:#e9eedf;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;color:#547248}.greeting{display:flex;justify-content:space-between;align-items:flex-end;margin:0 0 25px}.greeting p{color:var(--muted);margin-top:8px}.date{font-size:15px;color:var(--muted);padding-bottom:5px}.hero{position:relative;background:#eaf1e2;border:1px solid #e0e8d7;border-radius:22px;min-height:258px;padding:32px 36px;overflow:hidden;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:14px;letter-spacing:2px;display:flex;align-items:center;gap:8px;color:#547248;margin-bottom:12px}.dot{width:7px;height:7px;border-radius:50%;background:#75a35d;display:inline-block}.hero h2{font-size:32px;line-height:1.5}.hero p{color:#617256;font-size:17px;margin:9px 0 23px}.primary{background:var(--green);color:white;border-radius:11px;padding:15px 24px;font-weight:700;display:inline-flex;gap:16px;align-items:center;justify-content:center;min-height:54px}.secondary{border:1px solid #cfdacb;border-radius:11px;padding:14px 22px;background:white;min-height:54px}.hero-note{font-size:14px;margin-left:15px;color:#68795e}.hero-art{width:240px;height:205px;position:relative;flex-shrink:0;margin-right:15px}.sun{width:155px;height:155px;border-radius:50%;background:#d9e4c7;position:absolute;top:18px;left:43px}.mini-grid{position:absolute;transform:rotate(-10deg);top:32px;left:18px;padding:13px;border-radius:19px;display:grid;grid-template-columns:repeat(3,34px);gap:6px;background:#fffef5;box-shadow:0 10px 25px #5d754016}.mini-grid span{background:#e8efd9;border-radius:6px;text-align:center;padding:7px 0;color:#55763b;font-size:20px;font-weight:700}.mini-grid span:nth-child(5){background:#7b9e56;color:white}.leaf{position:absolute;width:55px;height:100px;background:#7b9c64;right:11px;bottom:29px;border-radius:100% 0 100% 0;transform:rotate(20deg)}.leaf:after{content:'';position:absolute;width:40px;height:70px;background:#a5b97c;left:-35px;top:38px;border-radius:0 100% 0 100%;transform:rotate(-25deg)}.spark{position:absolute;color:#9aa66a;font-size:30px;top:1px;right:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);background:#fffefa;border:1px solid var(--line);border-radius:16px;margin-top:21px;padding:21px 10px}.stat{display:flex;align-items:center;justify-content:center;gap:16px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat .ico{background:#f3f3e8}.stat small{color:var(--muted);display:block;margin-bottom:3px}.stat strong{font-size:27px}.stat em{font-style:normal;font-size:15px;color:var(--muted);margin-left:6px}.section-head{display:flex;align-items:center;justify-content:space-between;margin:32px 0 18px;gap:12px}.section-head small{font-weight:400;color:var(--muted);margin-left:12px}.link-btn{color:#59724c;font-size:16px;display:flex;align-items:center;gap:6px}.categories{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.chip{padding:11px 19px;border-radius:9px;background:#fffefa;border:1px solid var(--line);min-height:46px;font-size:17px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.chip.active{background:var(--green);border-color:var(--green);color:white}.game-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.game-card{border:1px solid var(--line);border-radius:16px;background:#fffefa;padding:23px;text-align:left;position:relative;transition:transform .2s,box-shadow .2s}.game-card:hover{transform:translateY(-3px);box-shadow:0 7px 20px #3655330a}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.ico{width:49px;height:49px;display:inline-flex;justify-content:center;align-items:center;border-radius:14px;background:#eaf1e2;color:#5b8348}.ico svg{width:27px;height:27px}.ico.c1{background:#fbefd2;color:#a28227}.ico.c2{background:#fae7dd;color:#bb7454}.ico.c3{background:#efebf6;color:#8d78a9}.ico.c4{background:#e5efed;color:#588f82}.badge{font-size:13px;background:#f1f4eb;border-radius:5px;padding:5px 8px;color:#6d7f60}.game-card h3{margin-bottom:7px}.game-card p{font-size:15px;line-height:1.7;color:var(--muted);min-height:50px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eef0e8;margin-top:17px;padding-top:15px;color:#647e53;font-size:15px}.card-bottom svg{width:18px}.tip{margin-top:28px;background:#f0f2e9;border-radius:12px;padding:16px 20px;color:#68765d;display:flex;gap:12px;font-size:15px;line-height:1.7}.panel{background:#fffefa;border:1px solid var(--line);border-radius:18px;padding:28px;margin:20px 0}.muted{color:var(--muted)}.title-row{display:flex;gap:17px;align-items:center;margin:24px 0}.title-row .ico{width:66px;height:66px}.back{padding:10px 0;display:flex;gap:8px;align-items:center;color:#65765e}.rules{list-style:none;counter-reset:steps;padding:0;display:grid;gap:17px;margin:22px 0 4px}.rules li{counter-increment:steps;display:flex;gap:12px;align-items:flex-start;line-height:1.8}.rules li:before{content:counter(steps);border-radius:50%;background:#eaf1e2;color:#497340;min-width:30px;height:30px;text-align:center}.option-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:15px}.field{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}.field input,.field select{border:1px solid #cfd9c9;border-radius:9px;padding:10px 12px;background:white;min-height:48px;max-width:100%;color:inherit}.field input[type=number]{width:100px}.full{width:100%}.start-wrap{display:flex;gap:14px;margin-top:24px}.game-stage{max-width:720px;margin:auto}.game-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.game-head h2{font-size:24px}.game-meta{display:flex;gap:20px;font-size:17px;color:#6b7963;margin:16px 0}.game-meta strong{color:var(--green)}.progress{height:6px;border-radius:5px;background:#e4ebdc;overflow:hidden;margin-bottom:24px}.progress i{display:block;height:100%;background:#83a36a;transition:width .2s}.play-panel{text-align:center;background:#fffefa;border:1px solid var(--line);border-radius:20px;padding:28px;min-height:360px}.prompt{font-size:22px;font-weight:700;margin-bottom:24px;line-height:1.7}.board{display:grid;gap:9px;max-width:490px;margin:20px auto;grid-template-columns:repeat(var(--n,3),1fr)}.cell{aspect-ratio:1;border:1px solid #d7e1ce;background:#f2f6eb;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:26px;font-size:clamp(18px,3vw,29px);font-weight:600;min-width:0;padding:0}.cell.done{background:#dce9cf;color:#648253}.cell.lit,.cell.selected{background:#638b43;color:white;border-color:#638b43}.cell.empty{background:#fbfcf7;border-color:transparent}.cell.fixed{background:#edf0e7;color:#334b3e;font-weight:700}.cell.note{font-size:11px;white-space:pre-wrap;color:#627457}.dense{gap:5px}.dense .cell{border-radius:5px;font-size:20px}.round .cell{border-radius:50%}.feedback{min-height:32px;color:#46723b;margin:15px 0;line-height:1.7}.feedback.error{color:#b04e39}.answer{border:2px solid #c9d7bf;border-radius:12px;padding:15px;font-size:28px;text-align:center;width:100%;max-width:360px;color:inherit;background:white}.big-stimulus{font-size:48px;font-weight:700;letter-spacing:8px;overflow-wrap:anywhere;padding:35px 12px}.answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px auto 0;max-width:460px}.answer-btn{padding:18px;background:#f0f5e9;border:1px solid #d6e1c9;border-radius:12px;min-height:64px;font-size:23px}.reaction{border-radius:50%;width:230px;height:230px;background:#e5ebde;margin:22px auto;font-size:25px;display:block;font-weight:700}.reaction.ready{background:#347d50;color:white}.reaction.stop{background:#b44839;color:white}.tracking{position:relative;height:320px;background:#f3f6ed;border-radius:14px;margin:16px 0;overflow:hidden}.ball{position:absolute;width:37px;height:37px;border-radius:50%;background:#72835c;color:white;border:3px solid transparent;padding:0}.ball.target{background:#d1903c;border-color:#734b10}.ball.selected{border-color:#233c2c;background:#aac183}.shape{display:inline-block;width:31px;height:31px;vertical-align:middle}.shape.circle{border-radius:50%}.shape.diamond{transform:rotate(45deg);width:24px;height:24px}.sudoku{gap:0;border:2px solid #667955;max-width:495px}.sudoku .cell{border-radius:0;border:0;border-right:1px solid #d1dbc8;border-bottom:1px solid #d1dbc8;min-height:34px;font-size:23px}.sudoku .cell:nth-child(3n){border-right:2px solid #667955}.sudoku .cell:nth-child(n+19):nth-child(-n+27),.sudoku .cell:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid #667955}.number-pad{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.number-pad button{min-width:40px;min-height:48px;border:1px solid #d1dbc8;border-radius:6px;background:#edf2e5;font-size:23px}.result{text-align:center;max-width:650px;margin:auto}.result-symbol{width:90px;height:90px;background:#e9f0db;color:#729648;border-radius:50%;display:grid;place-items:center;margin:30px auto 20px}.result-symbol svg{width:45px;height:45px}.result h1{font-size:32px}.result-score{font-size:62px;font-weight:700;color:var(--green);margin:20px 0 0}.result-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:25px}.record{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);gap:16px}.record:last-child{border:0}.record small{display:block;color:var(--muted);margin-top:5px}.empty-state{text-align:center;padding:42px 20px}.empty-state svg{width:45px;height:45px;color:#8a9e7c;margin-bottom:16px}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:25px 0}.day{text-align:center;border:1px solid var(--line);padding:14px 3px;border-radius:10px;color:#77846f;font-size:15px}.day strong{display:block;font-size:23px;margin-top:10px}.day.today{border-color:#6b8e54;color:#37694b}.day.trained{background:#e8f0dc;color:#37694b}.bar-row{display:grid;grid-template-columns:60px 1fr 50px;gap:15px;align-items:center;margin:22px 0;font-size:16px}.bar{height:13px;background:#edf1e6;border-radius:8px}.bar i{display:block;height:100%;background:#92ac74;border-radius:8px}.setting{display:flex;justify-content:space-between;align-items:center;padding:22px 0;gap:20px;border-bottom:1px solid var(--line)}.setting:last-child{border:0}.setting p{font-size:15px;color:var(--muted);margin-top:5px}.toggle{background:#dce2d6;border-radius:30px;width:58px;height:33px;padding:4px;flex-shrink:0}.toggle:before{content:'';display:block;background:white;width:25px;height:25px;border-radius:50%;box-shadow:0 1px 4px #0002}.toggle.on{background:var(--green)}.toggle.on:before{margin-left:25px}.plan-list{display:grid;gap:14px;margin-top:22px}.plan-item{display:flex;align-items:center;gap:17px;padding:18px;border:1px solid var(--line);border-radius:13px;text-align:left;background:#fffefa}.plan-item>div{flex:1}.plan-item p{color:var(--muted);font-size:15px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}.two-cols .panel{margin-top:0}.search-input{width:100%;border:1px solid var(--line);border-radius:12px;padding:15px 18px;background:#fffefa;margin:22px 0}.mobile-brand{display:none}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);padding:14px 24px;background:#294432;color:white;border-radius:10px;z-index:100;display:none;max-width:90vw;text-align:center}#toast.show{display:block}.large{font-size:21px}.large h3{font-size:24px}.large .game-card p,.large .card-bottom,.large .chip,.large .nav button,.large .muted,.large .rules,.large .setting p{font-size:20px}.large .game-card{padding:20px}.large .game-card p{min-height:70px}.help-text{font-size:15px;line-height:1.8;color:#76826c;margin-top:18px}.pause-overlay{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px}.poem-title{font-size:21px;margin-bottom:10px}.timer{font-variant-numeric:tabular-nums}.cards-hand{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:25px 0}.playing-card{padding:18px 12px;background:white;border:1px solid #d4ddce;border-radius:9px;min-width:65px;font-size:28px;box-shadow:0 3px 6px #00000005}.playing-card small{display:block;color:#b64f3e;font-size:23px}dialog{border:1px solid var(--line);border-radius:18px;max-width:450px;padding:30px;color:inherit}dialog::backdrop{background:#1a2f2055}
@media(min-width:1440px){.sidebar{margin-left:0}}@media(max-width:1150px){.sidebar{width:210px;padding:30px 17px}.brand strong{font-size:21px}.main{margin-left:210px;padding:28px}.game-list{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-art{width:180px;margin-right:0}.hero{padding:28px}.hero-note{display:block;margin:12px 0 0}.date{display:none}}@media(max-width:760px){:root{font-size:18px}.sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;inset:auto 0 0;width:auto;padding:5px 4px 8px;padding:5px 4px max(6px,env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);background:#fffefbf5;backdrop-filter:blur(10px)}.sidebar .brand,.sidebar-foot{display:none}.nav{display:flex;gap:0;justify-content:space-around}.nav button{display:flex;flex-direction:column;gap:4px;font-size:13px;padding:8px 0;width:19%;border-radius:9px}.nav button svg{width:23px;height:23px}.main{margin-left:0;padding:22px 19px 105px}.mobile-brand{display:flex;align-items:center;gap:8px;font-size:21px;font-weight:700}.mobile-brand img{width:30px;height:30px}.crumb,.avatar{display:none}.topline{margin-bottom:28px}.text-btn{font-size:14px;padding:9px}.greeting{margin-bottom:21px}h1{font-size:29px}.greeting p{font-size:16px}.hero{padding:25px;min-height:250px}.hero h2{font-size:27px;position:relative;z-index:1}.hero p{max-width:210px;font-size:16px;position:relative;z-index:1}.hero-art{position:absolute;right:-35px;top:55px;transform:scale(.6);transform-origin:right top;opacity:.65}.hero .primary{position:relative;z-index:1}.hero-note{font-size:13px}.stats{padding:17px 4px;margin-top:16px}.stat{gap:8px}.stat .ico{display:none}.stat strong{font-size:26px}.stat small{font-size:13px}.stat em{font-size:13px}.section-head{margin-top:28px}.section-head h2{font-size:23px}.section-head small{display:none}.link-btn{font-size:14px}.categories{gap:7px}.chip{padding:10px 14px;font-size:16px}.game-list{gap:12px}.game-card{padding:17px 14px}.card-top{margin-bottom:15px}.ico{width:44px;height:44px;border-radius:12px}.game-card h3{font-size:19px}.game-card p{font-size:14px;min-height:48px}.card-bottom{font-size:14px}.badge{font-size:11px;padding:4px 6px}.tip{font-size:14px;padding:15px}.panel{padding:22px 18px}.title-row h1{font-size:27px}.title-row p{font-size:15px}.play-panel{padding:23px 13px}.big-stimulus{font-size:38px;letter-spacing:4px}.game-head h2{font-size:21px}.game-head .secondary{padding:11px 14px;font-size:16px}.board{gap:6px}.dense{gap:3px}.dense .cell{font-size:17px}.two-cols{grid-template-columns:1fr;gap:0}.game-meta{font-size:15px;gap:13px}.sudoku{gap:0}.sudoku .cell{font-size:21px}.sudoku .cell.note{font-size:10px}.large .game-list{grid-template-columns:1fr}.large .nav button{font-size:15px}.large .hero-art{display:none}.large .hero p{max-width:none}#toast{bottom:95px}.date{display:none}.start-wrap{flex-direction:column}.answers{gap:9px}.answer-btn{font-size:21px;padding:16px}.week{gap:4px}.day{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

@supports not (aspect-ratio:1){.cell:before{content:"";padding-top:100%;width:0}.cell{height:auto}.hero-art{flex-shrink:0}}

.schulte-wheel{display:block;width:100%;height:auto;max-width:520px;margin:24px auto}.schulte-wheel path{fill:#fffef7;stroke:#81ad99;stroke-width:2}.schulte-wheel text{font-size:23px;font-weight:700;pointer-events:none}.schulte-wheel g{cursor:pointer}.schulte-wheel .hit-right path{fill:#b7ddc6}.schulte-wheel .hit-wrong path{fill:#f3b6a8}.schulte-grid .hit-right{background:#c7e4c4}.schulte-grid .hit-wrong{background:#f2c0ae}.sudoku .cell.related{background:#f8edc6}.number-pad small{font-size:11px;display:block}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;text-align:center}.calendar-day{min-height:64px;border:1px solid #d8e2cf;border-radius:8px;background:#f6f8f0}.calendar-day small{display:block;font-size:11px}.calendar-day.chosen{border:2px solid #286e53;background:#dfecd4}.muted-day{opacity:.5}textarea{font:inherit;resize:vertical}.plan-item small{display:block;color:#68766e}.schulte-wheel g:focus-visible path{stroke:#d99135;stroke-width:5}.number-pad button{min-height:58px}@media(max-width:760px){.calendar-day{min-height:56px}.calendar-grid{gap:3px}.schulte-wheel text{font-size:25px}}

.cell.wrong-guess{background:#e9b35b;border-color:#be7b23;color:#54370b;opacity:1}

.shape.memory-symbol{width:auto;height:auto;font-size:32px;line-height:1.3;transform:none}.prompt .memory-symbol{font-size:50px}

.word-review{width:100%;max-width:480px;text-align:left}.word-review>div{background:#eef4e8;border-radius:12px;padding:14px 18px;margin:8px 0}.word-review h3{font-size:28px;overflow-wrap:anywhere}

.number-pad .chosen{background:#286e53;color:white}.cards-hand{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.playing-card{min-width:0;padding:10px 4px;font-size:28px}

.shape.triangle{clip-path:polygon(50% 0,100% 100%,0 100%)}
@media(max-width:760px){.playing .sidebar,.playing .topline{display:none}.playing .main{padding-top:18px;padding-bottom:24px}.cards-hand.many-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}[data-game-kind="cards"] .playing-card{font-size:24px;line-height:1.1;padding:8px 3px}[data-game-kind="cards"] .playing-card small{font-size:17px;line-height:1.2}[data-game-kind="cards"] .prompt{margin:10px 0;font-size:21px}[data-game-kind="cards"] .number-pad{margin:12px auto}[data-game-kind="cards"] .number-pad button{min-height:44px;padding:8px 2px}[data-game-kind="cards"] .answer{font-size:22px;padding:12px}[data-game-kind="cards"] .game-meta{margin-bottom:12px}}

/* 1.3: training-first layouts, consistent type scale and controls. */
:root{color:#203c36;background:#f4f7f6;--green:#236f60;--muted:#61756e;--line:#dde7e3;--pale:#eaf3ef}
body{line-height:1.5}h1{font-size:30px;letter-spacing:0}h2{font-size:23px}p{line-height:1.65}
.main{max-width:1400px}.topline{margin-bottom:24px}.sidebar{background:#fff;border-color:var(--line)}.nav button.active{background:#e7f2ed;color:var(--green)}
.primary{background:var(--green);border-radius:12px;box-shadow:none;min-height:52px;justify-content:center}.secondary{background:white;border:1px solid #ccdcd5;border-radius:12px;min-height:48px}.full{width:100%;display:flex;justify-content:center;align-items:center;gap:10px}
.panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:none;padding:24px}.panel .section-head{margin:0 0 12px}.section-head{margin:26px 0 14px;align-items:center}.section-head .muted{font-size:13px}.text-btn,.back{min-height:44px}.back{display:inline-flex;align-items:center;gap:4px}.muted{color:var(--muted)}
.home-intro{display:flex;align-items:center;justify-content:space-between;margin:4px 0 22px}.home-intro .eyebrow{font-size:14px;color:var(--muted);margin-bottom:6px}.home-intro>svg{width:36px;height:36px;color:#c29340}.home-intro h1{font-size:30px}
.focus-entry{display:grid;grid-template-columns:1fr 125px;gap:20px;background:#e7f0ea;border:1px solid #d6e5dc;border-radius:22px;padding:28px}.focus-copy{align-self:center}.focus-copy .eyebrow{font-size:14px;color:#4a7162}.focus-copy h2{font-size:31px;margin:8px 0}.focus-copy p{font-size:16px;color:#5d7569}.focus-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;transform:rotate(5deg);align-self:center}.focus-mini span{display:grid;place-items:center;height:37px;background:#fff9;border-radius:7px;color:#5c796c;font-size:21px;font-weight:600}.focus-mini .accent{color:white;background:#37836c}.focus-entry .primary{justify-self:start;min-width:240px}.focus-record{display:flex;gap:6px;align-items:center;justify-content:center;font-size:15px;color:var(--green)}
.stats{border:0;border-radius:18px;background:#fff;margin:16px 0;padding:22px 12px}.stat{justify-content:center}.stat .ico{display:none}.stat small{font-size:14px;color:var(--muted)}.stat strong{font-size:28px}.stat em{font-size:14px}.stat+.stat{border-left:1px solid var(--line)}
.daily-entry{display:flex;align-items:center;gap:14px;background:#fff;padding:18px 20px;border:1px solid var(--line);border-radius:16px;width:100%;text-align:left}.daily-entry>span:nth-child(2){flex:1}.daily-entry strong{display:block;font-size:19px}.daily-entry small{display:block;font-size:14px;color:var(--muted);margin-top:3px}.daily-entry .ico{flex-shrink:0}
.categories{gap:8px;margin:12px 0 18px;display:flex;flex-wrap:wrap}.chip{border-radius:10px;min-height:44px;padding:9px 16px;background:#fff;border:1px solid var(--line);font-size:16px}.chip.active{color:#fff;background:var(--green);border-color:var(--green)}
.game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.game-card{display:flex;gap:14px;align-items:center;text-align:left;min-width:0;border:1px solid var(--line);background:white;border-radius:16px;padding:20px;box-shadow:none}.game-card .ico{flex:0 0 48px;width:48px;height:48px;border-radius:14px}.game-card-copy{flex:1;min-width:0}.game-card h3{font-size:20px;margin:0 0 4px}.game-card p{min-height:0;font-size:15px;line-height:1.5;color:var(--muted);margin:0}.game-card>svg{width:18px;flex:0 0 18px;color:#82978c}.game-tag{font-size:12px;color:#5e7d6f;display:block;margin-top:7px}.continue-entry{width:100%;padding:20px 0;display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;font-size:15px;text-align:left}.continue-entry span{color:var(--green)}
.search-input{margin:16px 0 8px;padding:13px 16px;background:white}.setting{padding:18px 0}.setting h3{font-size:20px}.setting p{line-height:1.5}.toggle.on:before{margin-left:25px}.toggle{width:58px;min-width:58px;height:33px}.plan-list{gap:10px}.plan-item{background:white;padding:16px;border-radius:14px}.title-row{margin:18px 0}.game-stage{max-width:620px;margin:0 auto}.focused-page .topline{display:none}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 20px}.page-heading h1{font-size:24px}.page-heading .back{margin:0;padding:8px}.page-heading .text-btn{color:var(--green)}
.segmented{display:flex;background:#e5ece8;border-radius:12px;padding:4px;gap:4px;margin:16px 0}.segmented button{flex:1;border-radius:9px;padding:10px 5px;min-height:44px;font-size:16px}.segmented button.active{background:white;box-shadow:0 2px 5px #193d2910;color:var(--green);font-weight:600}.mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}.mode-grid.sizes{grid-template-columns:repeat(3,minmax(0,1fr))}.mode-grid button{background:#fff;border:1px solid var(--line);border-radius:10px;min-height:46px;font-size:16px;padding:9px 4px}.mode-grid button.active,.level-grid button.active{border-color:var(--green);background:#e3f0e9;color:var(--green);box-shadow:inset 0 0 0 1px var(--green);font-weight:600}.mode-description{font-size:15px;color:var(--muted);margin:14px 0}.challenge-note{font-size:14px;border-radius:10px;background:#fff1dc;color:#85571a;padding:10px 12px}.level-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.level-grid button{height:42px;border-radius:8px;background:white;border:1px solid var(--line)}
.board-preview{position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);gap:4px;max-width:216px;height:150px;margin:20px auto}.board-preview>span{border:1px solid #d9e6de;border-radius:5px;background:#fff}.board-preview>div{position:absolute;inset:0;background:#f4f7f6b8;display:flex;flex-direction:column;align-items:center;justify-content:center}.board-preview strong{font-size:32px;color:#537569;letter-spacing:3px}.board-preview small{font-size:14px;margin-top:8px;color:var(--muted)}.best-strip{display:flex;align-items:center;justify-content:space-between;padding:14px 0 18px;font-size:15px;gap:12px}.best-strip>span{color:var(--muted)}.best-strip strong{font-weight:600;color:var(--green)}
.practice-options{border-top:1px solid var(--line);margin:20px 0;padding:14px 0;font-size:16px;color:var(--muted)}.practice-options summary{cursor:pointer;min-height:44px;line-height:44px;font-size:16px;color:#365b4a}.practice-options p{font-size:14px;margin:14px 0}.practice-options .setting{color:#294b3e}.practice-options .rules{font-size:16px;margin:12px 0}.schulte-play{max-width:500px}.game-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px}.game-head h2{font-size:20px}.game-head .back{margin:0;padding:8px 0;font-size:16px}.play-mode{text-align:center;color:var(--muted);font-size:15px;margin:18px 0 10px}.clock-label{text-align:center;font-size:13px;color:var(--muted)}.schulte-clock{text-align:center;font-size:48px;line-height:1.25;font-weight:650;letter-spacing:1px;margin:5px 0 24px;color:#255d4e}.schulte-clock.urgent{color:#ac482e}.board-status{display:flex;align-items:center;justify-content:space-between;font-size:15px;margin-bottom:12px}.board-status strong{font-size:20px;color:#236f60}.board-status>span:last-child strong{font-size:16px;color:inherit}
.schulte-surface{background:transparent;padding:0;border:0;box-shadow:none;position:relative;min-height:0}.schulte-grid{margin:0;width:100%;max-width:none;gap:7px}.schulte-grid .cell{background:#fff;border:1px solid #dae5de;border-radius:9px;color:#243e38;font-size:clamp(24px,6vw,34px);font-variant-numeric:tabular-nums;font-weight:600;box-shadow:0 1px 2px #193b2810;aspect-ratio:1;position:relative;overflow:hidden}.schulte-grid .cell span{display:inline-block}.schulte-grid.dense{gap:4px}.schulte-grid.dense .cell{font-size:clamp(16px,4.5vw,24px);border-radius:5px}.schulte-grid .cell.completed{background:#e1ede4;border-color:#d4e3d9;color:#577265!important}.schulte-grid .cell.hit-right{background:#3d826d;color:white!important;border-color:#3d826d}.schulte-grid .cell.hit-wrong{background:#f9d4ad;border-color:#b87a35}.schulte-wheel{margin:0 auto}.schulte-wheel path{fill:white;stroke:#b6cdbf}.schulte-wheel .completed path{fill:#dfece3}.schulte-wheel .hit-right path{fill:#a6ceb8}
.board-progress{display:flex;align-items:center;gap:12px;margin:18px 0 20px}.board-progress .progress{flex:1;margin:0;height:5px;background:#dfe7e2}.board-progress .progress i{background:#39816b}.board-progress>span{font-size:13px;min-width:48px;text-align:right;color:var(--muted)}.play-actions{display:flex;gap:12px;justify-content:center;margin:14px 0}.play-actions>button{flex:1;min-width:0;padding:12px 8px;font-size:16px}.play-hint,.completed-boards{text-align:center;color:var(--muted);font-size:14px;margin:15px 0}.board-mask{min-height:300px;background:#e5eee8;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}.board-mask p{font-size:16px;color:var(--muted)}.pause-symbol{border:1px solid #8ba796;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;font-size:22px}.ready-count{font-size:80px;color:var(--green);font-weight:700}.board-mask .primary{margin-top:12px}.interference{background-image:radial-gradient(#7d9f9740 1px,transparent 2px);background-size:15px 15px}.interference .cell{background:#f7faf8b0;border-color:#e4eae7;color:#99aaa2!important}.interference .cell span{opacity:.8}.interference .cell.hit-right span{opacity:1}
.schulte-result{text-align:center}.schulte-result .result-symbol{width:64px;height:64px;margin:24px auto 18px;background:#e5f0e8;color:var(--green)}.schulte-result h1{font-size:25px}.schulte-result>.muted{font-size:15px;margin:10px 0}.schulte-result .result-score{font-size:58px;line-height:1.3;margin:22px 0 6px;font-variant-numeric:tabular-nums}.result-score small{font-size:17px;margin-left:8px;font-weight:400}.result-badge{font-size:14px;color:#4c7764;min-height:24px}.result-metrics{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin:24px 0;padding:20px 0}.result-metrics span{display:block;color:var(--muted);font-size:14px;margin-bottom:7px}.result-metrics strong{font-size:22px}.result-metrics>div+div{border-left:1px solid var(--line)}.result-main-actions{max-width:440px;margin:auto}.schulte-result .panel{text-align:left;margin-top:24px}.schulte-result .panel h2{font-size:19px}.trend-chart{display:block;width:100%;height:auto;margin:10px auto}.trend-chart text{font-size:11px;fill:#657a6f}.trend-summary{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);gap:12px;margin:6px 0 16px}.trend-summary strong{color:#245d4d}.record-select{display:block;margin:22px 0 16px;font-size:15px;color:var(--muted)}.record-select select{display:block;width:100%;margin-top:7px;padding:12px 8px;min-width:0;font-size:15px;white-space:normal;background:white;border:1px solid var(--line);border-radius:10px}.replay-dialog{width:min(94vw,480px);padding:20px;max-height:94vh;overflow:auto}.replay-dialog .page-heading{margin-bottom:8px}.replay-dialog .muted{font-size:14px}.replay-dialog [data-replay-board]{margin:18px 0}.replay-dialog input{width:100%;min-height:44px}.replay-dialog [data-replay-caption]{font-size:15px}.replay-dialog .play-actions{gap:7px}.replay-dialog .play-actions>button{font-size:14px}.result-main-actions>.text-btn{font-size:15px}
@media(max-width:760px){.main{padding:20px 18px 100px}.topline{margin-bottom:22px}.mobile-brand{font-size:20px}.mobile-brand img{width:28px;height:28px}.top-actions .text-btn{font-size:13px}.home-intro h1{font-size:25px}.home-intro .eyebrow{font-size:13px}.home-intro>svg{width:30px}.home-intro{margin-bottom:17px}.focus-entry{padding:21px 18px;grid-template-columns:minmax(0,1fr) 85px;gap:16px 8px;border-radius:19px}.focus-copy h2{font-size:25px;margin:6px 0}.focus-copy .eyebrow{font-size:13px}.focus-copy p{font-size:14px}.focus-mini span{height:25px;font-size:16px;border-radius:5px}.focus-mini{gap:3px}.focus-entry .primary{min-width:0;width:100%;font-size:17px;min-height:49px;padding:12px 10px}.focus-record{font-size:13px;gap:3px}.focus-record svg{width:17px}.stats{padding:17px 2px;margin:14px 0}.stat strong{font-size:25px}.stat small{font-size:12px}.stat em{font-size:12px}.daily-entry{padding:15px 14px;gap:11px}.daily-entry strong{font-size:18px}.daily-entry small{font-size:13px}.daily-entry .ico{width:40px;height:40px}.section-head h2{font-size:21px}.link-btn{font-size:14px}.categories{gap:6px}.categories .chip{font-size:14px;padding:8px 11px;min-height:40px}.game-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.game-card{display:block;padding:15px 12px;position:relative;border-radius:15px}.game-card .ico{width:38px;height:38px;border-radius:11px;margin-bottom:12px}.game-card .ico svg{width:22px}.game-card>svg{position:absolute;right:11px;top:23px;width:16px}.game-card h3{font-size:18px;line-height:1.45;margin-bottom:5px}.game-card p{font-size:13px;min-height:39px;line-height:1.5}.game-tag{font-size:12px;margin-top:8px}.focused-page .main{padding-top:14px}.focused-page .sidebar{display:none}.focused-page .main{padding-bottom:24px}.page-heading{margin-bottom:14px}.page-heading h1{font-size:22px}.training-tabs button{font-size:14px;padding:9px 2px}.segmented{margin:14px 0}.mode-grid{margin:14px 0;gap:7px}.mode-grid button{font-size:15px;min-height:44px}.board-preview{height:128px;margin:14px auto;max-width:180px}.best-strip{padding:8px 0 16px;font-size:14px}.mode-description{font-size:14px;margin:12px 0}.level-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}.level-grid button{font-size:14px;height:36px}.playing .main{padding:14px 18px 22px}.play-mode{margin:15px 0 7px;font-size:14px}.schulte-clock{font-size:43px;margin:3px 0 20px}.board-status{font-size:14px}.board-status strong{font-size:19px}.schulte-grid .cell{font-size:clamp(21px,7vw,32px)}.schulte-grid.dense .cell{font-size:clamp(15px,4vw,20px)}.schulte-grid{gap:5px}.schulte-grid.dense{gap:3px}.schulte-result .result-score{font-size:54px}.schulte-result h1{font-size:24px}.panel{padding:20px 16px}.schulte-result .panel .section-head{flex-wrap:wrap;gap:5px}.result-metrics strong{font-size:20px}.large .home-intro h1{font-size:28px}.large .focus-copy h2{font-size:28px}.large .focus-copy p{font-size:17px}.large .focus-entry{grid-template-columns:1fr}.large .focus-mini{display:none}.large .focus-record{font-size:17px;min-height:44px}.large .game-list{grid-template-columns:1fr}.large .game-card{display:flex;gap:14px;padding:18px}.large .game-card .ico{margin:0;flex:0 0 42px}.large .game-card h3{font-size:23px}.large .game-card p{font-size:18px;min-height:0}.large .game-card>svg{position:static}.large .mode-grid button,.large .segmented button{font-size:18px}.large .training-tabs{flex-wrap:wrap}.large .training-tabs button{flex-basis:40%}.large .mode-description,.large .best-strip,.large .board-status,.large .play-mode,.large .practice-options summary{font-size:18px}.large .board-preview{display:none}.large .daily-entry small{font-size:17px}.large .schulte-grid.dense .cell{font-size:clamp(17px,4.2vw,23px)}.large .play-actions button{font-size:19px}.large .result-metrics strong{font-size:23px}.large .stats .stat strong{font-size:28px}.large .stats .stat small,.large .stats .stat em{font-size:15px}}
@media(max-width:350px){.main,.playing .main{padding-left:12px;padding-right:12px}.focus-entry{grid-template-columns:minmax(0,1fr) 66px;padding:18px 14px}.focus-copy h2{font-size:22px}.focus-mini span{height:20px;font-size:14px}.focus-record{font-size:12px}.focus-record svg{display:none}.categories .chip{padding:8px 9px}.schulte-clock{font-size:39px}.game-card h3{font-size:17px}}
@supports not (aspect-ratio:1){.schulte-grid .cell:before{content:'';padding-top:100%;width:0}.schulte-grid .cell{display:flex;align-items:center;justify-content:center}}
.head-spacer{width:44px}.word-entry{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:48px;font-size:15px;color:var(--green);margin-top:12px}.word-entry svg{width:16px}
.result-main-actions>.text-btn{display:flex;align-items:center;justify-content:center;margin:0 auto}
.replay-dialog{position:fixed;top:3vh;bottom:auto;left:0;right:0;margin:0 auto;width:92vw;max-width:480px;max-height:94vh}
.replay-dialog .page-heading{position:sticky;top:-20px;background:white;z-index:2;padding:8px 0}
@media(max-width:760px){.system-large .focus-entry{display:block}.system-large .focus-mini{display:none}.system-large .focus-copy h2{font-size:23px}.system-large .focus-copy p{font-size:14px}.system-large .focus-entry .primary{margin-top:18px}.system-large .focus-record{width:100%;font-size:14px;min-height:44px;margin-top:6px;white-space:nowrap}.system-large .game-list{grid-template-columns:1fr}.system-large .game-card{display:flex;gap:14px}.system-large .game-card .ico{margin:0;flex:0 0 42px}.system-large .game-card>svg{position:static}.system-large .game-card p{min-height:0}.system-large .board-preview{display:none}.system-large .level-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.system-large .mode-description{margin:20px 0}.system-large .home-intro{margin-bottom:14px}.system-large .home-intro h1{font-size:23px}}
/* 1.4: spacious dialogs and stable tile states, including older Android WebViews. */
button:focus,[role="button"]:focus{outline:none}
.keyboard-input button:focus,.keyboard-input [role="button"]:focus{outline:3px solid #154c75;outline-offset:2px}
.keyboard-input .schulte-grid .cell:focus{outline:none;box-shadow:inset 0 0 0 3px #194b70}
button{-webkit-tap-highlight-color:transparent}
.confirm-dialog{width:calc(100vw - 40px);max-width:390px;max-height:90vh;overflow:auto;padding:30px 24px 24px;border:3px solid #fff;border-radius:26px;background:#fffdf4;color:#193c5d;box-shadow:0 18px 60px #102d4b40;text-align:center}
.confirm-dialog::backdrop{background:#132c48a6}
.dialog-symbol{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;border-radius:18px;background:#e5f2f6;font-size:26px;color:#266e99}
.confirm-dialog h2{font-size:25px;line-height:1.4;margin:0 0 14px}
.confirm-dialog p{font-size:17px;line-height:1.8;color:#52697b;margin:0}
.dialog-actions{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:14px;margin-top:26px}
.dialog-actions button{width:100%;min-height:54px;padding:14px 18px;font-size:19px;line-height:1.4;border-radius:14px}
.dialog-actions .primary{background:#f2bd55;color:#193c5d;border:2px solid #e9ae3f;box-shadow:0 3px 0 #d79c30}
.dialog-actions .secondary{background:transparent;border:1px solid #d3e2e8;color:#346783;box-shadow:none}
.play-actions,.result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px}
.replay-dialog .play-actions{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px}
/* The reference's hierarchy is recreated with original CSS artwork and accessible text. */
.schulte-theme{background:#2f7fac;color:#183d60;background-image:radial-gradient(ellipse at 15% 0,#50a4ce 0,transparent 65%),linear-gradient(145deg,#328ab9,#24699c);background-attachment:fixed}
.schulte-theme .shell,.schulte-theme .main{background:transparent}
.schulte-theme .sidebar{display:none}
.schulte-theme .main{margin:0 auto;width:100%;max-width:780px;padding:24px 24px 40px}
.schulte-theme .topline{display:none}
.schulte-theme .page-heading,.schulte-theme .game-head{color:#fff;margin-bottom:24px}
.schulte-theme .page-heading h1{font-size:24px}
.schulte-theme .page-heading .back,.schulte-theme .game-head .back{display:flex;align-items:center;justify-content:center;border-radius:50px;min-width:44px;min-height:44px;padding:10px;background:#fffdf4;color:#1e5075;box-shadow:0 3px 0 #dbe7df;font-size:16px}
.schulte-theme .page-heading .text-btn{color:#fff;font-size:16px;min-height:44px}
.schulte-hero{display:grid;grid-template-columns:102px minmax(0,1fr);grid-gap:18px;align-items:center;border:3px solid white;border-radius:24px;background:#fffdf3;padding:16px;box-shadow:0 5px 0 #163e5d20;margin-bottom:22px}
.schulte-hero h2{font-size:24px;line-height:1.4;margin:0 0 8px;color:#183f63}
.schulte-hero p{font-size:15px;color:#586e80;line-height:1.6;margin:0}
.schulte-hero .text-btn{color:#276d87;font-size:16px;padding:10px 0 0;min-height:38px;display:flex;align-items:center}
.schulte-hero .text-btn svg{width:16px;margin-left:6px}
.schulte-art{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;align-content:center;justify-content:center;padding:15px;border-radius:16px;min-height:100px;background-color:#bce4da;background-image:linear-gradient(#ffffff30 1px,transparent 1px),linear-gradient(90deg,#ffffff30 1px,transparent 1px);background-size:14px 14px}
.schulte-art.nine{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:4px;padding:12px}
.schulte-art span{display:flex;align-items:center;justify-content:center;min-height:26px;padding:3px;background:#fffbea;border:1px solid #fff;border-radius:5px;color:#254a6a;font-size:20px;font-weight:750;box-shadow:0 3px 0 #456d6f26}
.schulte-art.nine span{font-size:17px;padding:1px;min-height:23px}
.schulte-art span:nth-child(5){background:#f8ce70}
.schulte-art.lavender{background-color:#dfd7ef}.schulte-art.gold{background-color:#ffe7a3}.schulte-art.sky{background-color:#c4e4f6}.schulte-art.rose{background-color:#f6d4cc}
.schulte-theme .training-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;background:#fffdf3;border:3px solid white;border-radius:20px;padding:8px;margin:20px 0 26px}
.schulte-theme .training-tabs button{border-radius:12px;font-size:18px;color:#234d6e;background:#e4f1f7;min-height:48px;padding:10px 6px;border:2px solid white;box-shadow:0 2px 0 #2d64821c}
.schulte-theme .training-tabs button.active{background:#f5bf5c;border-color:#fff4d7;color:#193d5e}
.schulte-theme .difficulty-heading h2,.blue-heading{color:white;font-size:23px}.difficulty-heading{margin:24px 0 14px;align-items:center}.difficulty-heading>span{font-size:13px;color:#eef8ff}
.schulte-theme .mode-grid,.schulte-theme .mode-grid.sizes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;border:3px solid #fff;border-radius:24px;background:#fffdf3;padding:14px;margin:0 0 24px}
.schulte-theme .mode-grid button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:102px;padding:16px 8px 12px;border:3px solid white;border-radius:18px;background:#e8f4f9;color:#1c4364;box-shadow:0 3px 0 #456d6f22;font-size:19px}
.schulte-theme .mode-grid button strong{font-size:25px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}
.schulte-theme .mode-grid button small{font-size:13px;font-weight:400;display:flex;align-items:center;justify-content:center;border-top:1px solid #fff;width:100%;padding-top:10px;margin-top:12px;line-height:1.4;color:#516c80}
.schulte-theme .mode-grid button small svg{width:15px;height:15px;margin-right:5px;flex:0 0 15px}
.schulte-theme .mode-grid button.active{border-color:#f3bf51;background:#fff8df;box-shadow:0 3px 0 #cda24338}
.mode-check{position:absolute;top:4px;right:9px;font-size:15px;font-weight:700;color:#9a6411}
.schulte-rules{border:3px solid #fff;background:#fffdf3;border-radius:22px;padding:20px;color:#1e4666}
.schulte-rules h2{font-size:21px;margin:0 0 10px}.schulte-rules .mode-description{font-size:18px;line-height:1.8;color:#244967;margin:0}.rule-note{font-size:14px;color:#607686;line-height:1.6;margin:12px 0 0}
.schulte-theme .best-strip{color:#e8f6ff;padding:20px 4px}.schulte-theme .best-strip>span,.schulte-theme .best-strip strong{color:inherit;font-size:16px}
.schulte-theme .primary{background:#f5bf57;color:#173f60;border:2px solid #fff4d6;border-radius:16px;box-shadow:0 4px 0 #d69c38;font-weight:650;min-height:54px;font-size:20px}
.schulte-start{background:#fffdf3;padding:7px;border:2px solid white;border-radius:22px}
.schulte-theme .practice-options{background:#fffdf3;border:3px solid white;border-radius:22px;padding:10px 18px;color:#4d687d;margin-top:24px}
.schulte-theme .practice-options summary{font-size:18px;color:#204e70}.schulte-theme .practice-options p{font-size:16px;line-height:1.7}.schulte-theme .practice-options .setting{color:#254968;font-size:17px;display:grid;grid-template-columns:minmax(0,1fr) 58px;grid-gap:14px}
.schulte-theme .toggle.on{background:#397ea3}.schulte-theme .secondary{background:#fffdf3;color:#244c6b;border:2px solid #fff;border-radius:15px;box-shadow:0 3px 0 #234f6720}
.schulte-theme .game-head h2{font-size:21px}.schulte-theme .play-mode{color:#e9f7ff;font-size:16px;margin:16px 0 10px}.schulte-theme .clock-label{color:#e4f2fa;font-size:14px}
.schulte-theme .schulte-clock{font-size:52px;font-weight:750;color:white;text-shadow:0 3px 0 #235374;margin:2px 0 20px;letter-spacing:1px}.schulte-theme .schulte-clock.urgent{color:#ffdf8c}
.schulte-theme .board-status{background:#ffffff16;border-radius:12px;padding:12px 14px;color:white;font-size:17px;margin-bottom:18px}.schulte-theme .board-status strong{color:#ffe198;font-size:23px}.schulte-theme .board-status>span:last-child{font-size:15px}
.schulte-theme .schulte-surface{padding:16px;background:#bce5dc;border:3px solid #f7fff9;border-radius:26px;box-shadow:0 6px 0 #1e5a7826}
.schulte-grid{position:relative}.schulte-grid .cell,.schulte-grid .cell.completed,.schulte-grid .cell.hit-right,.schulte-grid .cell.hit-wrong{box-sizing:border-box;border-width:2px;border-style:solid;border-radius:10px;transform:none;outline:none;transition:background-color .12s,color .12s;min-width:0;min-height:0;padding:0}
.schulte-theme .schulte-grid{grid-gap:7px}.schulte-theme .schulte-grid .cell{background:#fffcf0;border-color:#fff;color:#173e60;box-shadow:0 3px 0 #4f807329;font-size:30px;font-weight:650}
.schulte-theme .schulte-grid .cell.completed{background:#c7e7be;border-color:#e7f5df;color:#335d3a!important}
.schulte-theme .schulte-grid .cell.hit-right{background:#aedaa0;border-color:#e7f5df;color:#214b2b!important}
.schulte-theme .schulte-grid .cell.hit-wrong{background:#f7bdb1;border-color:#fff0e9;color:#772d26!important}
.schulte-theme .schulte-grid.dense{grid-gap:4px}.schulte-grid.dense .cell,.schulte-grid.dense .cell.completed,.schulte-grid.dense .cell.hit-right,.schulte-grid.dense .cell.hit-wrong{border-radius:6px}
.schulte-theme .schulte-grid.dense .cell{font-size:21px}
.schulte-theme .schulte-grid.interference .cell{background:#eff4e6c9;color:#91a99e!important}
.focus-board:after{content:'+';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:24px;height:24px;line-height:1;border:2px solid #e7aa39;border-radius:50%;background:#fff7d1bb;color:#9c660b;pointer-events:none;font-size:16px}
.schulte-theme .board-progress{color:white;margin:20px 3px}.schulte-theme .board-progress>span{color:#eff9ff;font-size:15px}.schulte-theme .board-progress .progress{background:#ffffff40;height:6px}.schulte-theme .board-progress .progress i{background:#ffdc82}
.schulte-theme .play-actions{grid-gap:16px;margin-top:24px}.schulte-theme .play-actions button{font-size:18px;min-height:54px;padding:12px 8px}.schulte-theme .schulte-play>.play-actions button:first-child{background:#f5bf57;border-color:#fff4d6}
.schulte-theme .play-hint,.schulte-theme .completed-boards{color:#edf8ff;font-size:15px}.schulte-theme .board-mask{background:#c3e6df;min-height:280px;color:#214e69}.schulte-theme .board-mask p{color:#3f6979}
.schulte-theme .schulte-result{color:#fff}.schulte-theme .schulte-result>.muted{color:#ebf6ff;font-size:16px}.schulte-theme .result-symbol{width:80px;height:80px;background:#fff1bc;color:#c88c20;border:3px solid #fff;box-shadow:0 4px 0 #1a52752a}.schulte-theme .result-symbol svg{width:42px;height:42px}
.schulte-theme .schulte-result h1{color:#fff;font-size:26px}.schulte-theme .schulte-result .result-score{background:#fffdf3;border:3px solid white;border-radius:22px 22px 0 0;color:#1b4d72;padding:20px 12px 0;margin:24px 0 0;font-size:62px}
.schulte-theme .result-badge{background:#fffdf3;border:3px solid white;border-top:0;border-radius:0 0 22px 22px;padding:5px 12px 22px;color:#51758b;font-size:16px}
.schulte-theme .result-metrics{background:#fffdf3;border:3px solid white;border-radius:20px;padding:20px 10px;margin:16px 0 24px;color:#244969}.schulte-theme .result-metrics span{color:#5f7481;font-size:15px}.schulte-theme .result-metrics strong{font-size:23px}
.schulte-theme .result-main-actions>.text-btn{color:white;font-size:17px;margin-top:18px}.schulte-theme .schulte-result .panel{background:#fffdf3;border:3px solid white;border-radius:22px;color:#204764}.schulte-theme .schulte-result .panel .muted{color:#557282}
.catalog-intro{color:#effaff;font-size:18px;line-height:1.7;margin:0 0 24px}.variant-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px}.variant-card{padding:8px 8px 16px;background:#fffdf3;border:3px solid white;border-radius:24px;box-shadow:0 4px 0 #18496626;color:#1e4666;text-align:center}
.variant-card .schulte-art{height:126px;grid-gap:8px;padding:22px}.variant-card .schulte-art span{font-size:27px}.variant-card .schulte-art.nine{padding:16px}.variant-card .schulte-art.nine span{font-size:20px;min-height:26px}.variant-card strong{font-size:20px;display:block;margin-top:14px}.variant-card small{display:block;font-size:14px;line-height:1.6;margin:8px 5px 0;color:#617888}
.blue-heading{margin:28px 0 18px}.related-games{display:grid;grid-gap:12px}.related-games button{background:#fffdf3;border:2px solid white;border-radius:18px;color:#214c70;padding:18px;text-align:left;font-size:20px}.related-games span{display:block;font-size:15px;color:#5b7787;margin-top:6px}
@media(max-width:760px){.schulte-theme .main,.schulte-theme .playing .main{padding:18px 18px 30px}.schulte-theme .schulte-play{max-width:500px}.schulte-theme .page-heading h1{font-size:22px}.schulte-theme .schulte-grid .cell{font-size:clamp(20px,6.2vw,30px)}.schulte-theme .schulte-grid.dense .cell{font-size:clamp(15px,4vw,21px)}.schulte-theme .schulte-surface{padding:12px;border-radius:22px}.schulte-theme .mode-grid button strong{font-size:24px}.schulte-theme .mode-grid button{min-height:102px}.schulte-theme .large .mode-grid button strong{font-size:28px}.schulte-theme .large .mode-grid button small{font-size:16px}.schulte-theme .large .mode-description,.schulte-theme .large .rule-note{font-size:20px}.schulte-theme .large .schulte-hero{grid-template-columns:1fr}.schulte-theme .large .schulte-hero>.schulte-art{display:none}.schulte-theme .large .training-tabs button{font-size:20px}.schulte-theme .large .board-status{font-size:18px}.schulte-theme .large .variant-cards{grid-template-columns:1fr}.schulte-theme .large .variant-card strong{font-size:24px}.schulte-theme .large .variant-card small{font-size:18px}}
@media(max-width:350px){.schulte-theme .main,.schulte-theme .playing .main{padding-left:12px;padding-right:12px}.schulte-hero{grid-template-columns:80px minmax(0,1fr);grid-gap:12px;padding:12px}.schulte-hero h2{font-size:22px}.schulte-hero p{font-size:14px}.schulte-art{padding:8px}.schulte-art.nine{padding:7px}.schulte-theme .mode-grid{padding:10px;grid-gap:10px}.schulte-theme .page-heading .text-btn{font-size:14px}.difficulty-heading>span{font-size:12px}.schulte-theme .schulte-surface{padding:8px}.schulte-theme .schulte-grid{grid-gap:5px}.schulte-theme .board-status{padding:10px;font-size:15px}.schulte-theme .board-status>span:last-child{font-size:13px}.schulte-theme .schulte-clock{font-size:46px}.variant-cards{grid-gap:10px}.variant-card strong{font-size:18px}.variant-card .schulte-art{padding:12px;height:100px}.variant-card small{font-size:13px}.confirm-dialog{padding:24px 18px}.confirm-dialog h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.schulte-grid .cell{transition:none}}

.schulte-theme .page-heading .text-btn,.schulte-theme .result-main-actions>.text-btn{background:transparent;border:0;box-shadow:none}
.schulte-hero .text-btn{background:transparent;border:0;box-shadow:none}
.more-difficulties{color:white;font-size:16px;margin:-4px 0 24px}.more-difficulties summary{min-height:46px;line-height:1.6;padding:10px 2px;cursor:pointer}.more-difficulties[open] .mode-grid{margin-top:12px}
.schulte-theme .schulte-result .result-score{border-bottom:0}
.replay-dialog{background:#fffdf3;border:3px solid white;border-radius:22px;color:#234967}
.schulte-theme .replay-dialog .page-heading,.replay-dialog .page-heading{color:#234967;background:#fffdf3;margin:0 0 8px;top:-20px}
.schulte-theme .replay-dialog .page-heading .text-btn,.replay-dialog .page-heading .text-btn{color:#24567b;background:#e6f2f7;border:0;min-height:44px;padding:8px 12px}
.schulte-theme .replay-dialog .play-actions,.replay-dialog .play-actions{grid-gap:8px;margin:14px 0 0}
.schulte-theme .replay-dialog .play-actions>button,.replay-dialog .play-actions>button{font-size:14px;white-space:nowrap;min-height:48px;padding:10px 3px}
.schulte-theme .replay-dialog .primary{font-size:14px}

.focus-board:after{content:'';width:32px;height:32px;background:transparent;border:2px solid #bf7f14;box-shadow:0 0 0 3px #ffd98560}
.schulte-theme .schulte-stats-page>.muted,.schulte-theme .schulte-stats-page .record-select{color:#edf8ff}
.schulte-theme .schulte-stats-page .panel{background:#fffdf3;border:3px solid #fff;color:#214b6a;border-radius:22px}
.schulte-theme .schulte-stats-page .segmented{background:#fffdf3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px}
.schulte-theme .schulte-stats-page .segmented button.active{background:#f5bf57;color:#204664}
.schulte-theme .schulte-stats-page .record-select select{font-size:16px;line-height:1.5;background:#fffdf3;color:#214b6a}
.schulte-theme .schulte-stats-page .panel .text-btn{color:#245475}
/* 1.4.1: a quiet home page with prominent stats and colorful game illustrations. */
.home-theme{background:#2f7fac;background-image:radial-gradient(ellipse at 15% 0,#50a4ce 0,transparent 65%),linear-gradient(145deg,#328ab9,#24699c);background-attachment:fixed}
.home-theme .main{background:transparent}.home-theme .topline{margin-bottom:20px}.home-theme .crumb{color:white;font-size:24px;font-weight:700}.home-theme .mobile-brand{color:white}.home-theme .top-actions .text-btn{color:#204d6d;background:#fffdf3;border:2px solid white;border-radius:14px}.home-theme .avatar{display:none}
.home-training>.stats{margin:0;padding:22px 8px;background:#fffdf3;border:3px solid white;border-radius:23px;color:#214b6a;box-shadow:0 4px 0 #1a527520}
.home-training .stat{border-color:#dce8ea}.home-training .stat strong{color:#214b6a}.home-training .stat small,.home-training .stat em{color:#5b7281}.home-training .stat .ico{display:none}.home-training>.section-head{color:white;margin:26px 0 16px}.home-training h1{font-size:25px}.training-count{font-size:15px;color:#e9f7ff;white-space:nowrap}
.home-training>.categories{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:8px;margin-bottom:22px}.home-training .categories .chip{min-height:46px;padding:10px 4px;border:2px solid white;border-radius:13px;background:#e0f1f6;color:#244967;font-size:17px}.home-training .categories .chip:nth-child(3){background:#fff0bd}.home-training .categories .chip:nth-child(4){background:#f8dacf}.home-training .categories .chip:nth-child(5){background:#e5dcf4}.home-training .categories .chip:nth-child(6){background:#cdebe2}.home-training .categories .chip.active{background:#f5bf57;color:#193f60;border-color:#fff1cb;font-weight:700}
.illustrated-games{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;align-items:stretch}
.game-card.illustrated-card{display:flex;flex-direction:column;padding:10px 10px 20px;gap:0;border:3px solid #fff;border-radius:24px;background:#fffdf3;box-shadow:0 5px 0 #204d691c;text-align:center;overflow:hidden;transform:none;min-width:0}
.illustrated-card .game-card-copy{width:100%;padding:0 6px;flex:1}.illustrated-card h3{color:#1c4567;font-size:22px;line-height:1.45;margin:16px 0 6px;overflow-wrap:anywhere}.illustrated-card p{color:#557186;font-size:16px;line-height:1.65;min-height:0;margin:0}
.game-art{width:100%;height:150px;border-radius:16px;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:var(--art-bg);background-image:linear-gradient(#ffffff30 1px,transparent 1px),linear-gradient(90deg,#ffffff30 1px,transparent 1px);background-size:18px 18px}
.art-mint{--art-bg:#bde5d9}.art-lavender{--art-bg:#dfd5f1}.art-sky{--art-bg:#bee2f7}.art-gold{--art-bg:#ffe5a2}.art-rose{--art-bg:#f7cfcf}.art-peach{--art-bg:#ffdbbd}
.game-art-pieces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;align-items:center;justify-content:center;width:75%;max-width:170px;transform:rotate(-5deg)}
.game-art .piece{display:flex;align-items:center;justify-content:center;background:#fffbed;border:2px solid #fffdf5;border-radius:8px;box-shadow:0 4px 0 #41677726;color:#234a6b;font-size:28px;font-weight:750;min-width:0;min-height:40px;line-height:1.2;padding:4px 2px}
.art-nine .game-art-pieces{max-width:130px;width:66%;grid-gap:4px}.art-nine .piece{font-size:22px;min-height:30px;border-radius:5px;padding:1px}.art-schulte .piece-4,.art-sequence .piece-1,.art-slide .piece-8{background:#f8cf71}.art-four .game-art-pieces{grid-template-columns:repeat(2,minmax(0,1fr));max-width:130px;width:65%}.art-four .piece{min-height:44px}.art-visual .piece{color:#338b73;font-size:18px}.art-visual .piece-1,.art-visual .piece-3,.art-visual .piece-4,.art-visual .piece-8{background:#78b99f;color:#fff}.art-slide .piece-7{background:#ffffff20;box-shadow:none;border-color:#ffffff50}
.art-symbols .piece-0,.art-ink .piece-0{color:#b74643}.art-symbols .piece-1,.art-ink .piece-1{color:#2d74b0}.art-symbols .piece-2,.art-ink .piece-2{color:#32826a}.art-symbols .piece{font-size:27px}.art-poem .game-art-pieces{transform:rotate(-4deg)}
.art-orbits .game-art-pieces{transform:none;position:relative;height:95px;grid-template-columns:repeat(3,1fr);max-width:150px}.art-orbits .piece{border-radius:50%;min-height:0;height:40px;width:40px;color:#fff;background:#4d9f91;border:3px solid #ebfff4;box-shadow:0 5px 0 #398d7d33;font-size:17px}.art-orbits .piece-1{align-self:start;background:#ecb84f}.art-orbits .piece-2{align-self:end;background:#8c80b6}
.art-big-symbol .game-art-pieces{display:flex;transform:rotate(5deg)}.art-big-symbol .piece{height:90px;width:90px;border-radius:50%;font-size:72px;line-height:1;background:#fff9e6;color:#407cb4}
.art-signals .game-art-pieces{grid-template-columns:repeat(2,minmax(0,1fr));transform:none;grid-gap:12px;max-width:140px}.art-signals .piece{border-radius:50%;height:55px;min-height:0;background:#4d9f7b;color:white}.art-signals .piece-1{background:#d77562}
.art-playing-cards .game-art-pieces{width:82%;grid-gap:4px;transform:none}.art-playing-cards .piece{min-height:66px;transform:rotate(-10deg);font-size:22px;color:#b54c49}.art-playing-cards .piece-1{transform:translateY(-8px);color:#294d67}.art-playing-cards .piece-2{transform:rotate(10deg)}
@media(max-width:1000px){.illustrated-games{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.home-theme .main{padding-top:18px}.home-theme .topline{margin-bottom:18px}.home-theme .mobile-brand{font-size:21px}.home-theme .top-actions .text-btn{font-size:14px;padding:8px 10px;min-height:44px}.home-training>.stats{padding:18px 4px;border-radius:21px}.home-training .stat strong{font-size:28px}.home-training .stat small{font-size:14px}.home-training .stat em{font-size:13px;margin-left:3px}.home-training>.section-head{margin:24px 0 16px}.home-training h1{font-size:24px}.training-count{font-size:14px}.home-training>.categories{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;margin-bottom:20px}.home-training .categories .chip{font-size:17px;padding:8px 4px;min-height:44px}.illustrated-games{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px}.game-card.illustrated-card{display:flex;padding:7px 7px 16px;border-radius:21px}.illustrated-card .game-card-copy{padding:0 3px}.illustrated-card h3{font-size:19px;margin-top:14px;margin-bottom:6px}.illustrated-card p{font-size:14px;min-height:0;line-height:1.6}.game-art{height:118px;border-radius:14px;background-size:14px 14px}.game-art-pieces{width:86%;grid-gap:4px}.game-art .piece{font-size:23px;min-height:34px;border-radius:6px}.art-nine .game-art-pieces{width:77%;max-width:100px;grid-gap:3px}.art-nine .piece{min-height:25px;font-size:17px;border-radius:4px}.art-four .game-art-pieces{width:70%;max-width:104px;grid-gap:5px}.art-four .piece{min-height:35px;font-size:23px}.art-big-symbol .piece{height:74px;width:74px;font-size:60px}.art-orbits .game-art-pieces{height:80px;width:90%}.art-orbits .piece{height:32px;width:32px;font-size:15px;min-height:0}.art-signals .piece{height:44px;font-size:23px;min-height:0}.art-playing-cards .piece{min-height:54px;font-size:17px}.art-visual .piece{font-size:14px}
.large .illustrated-games,.system-large .illustrated-games{grid-template-columns:1fr}.large .game-card.illustrated-card,.system-large .game-card.illustrated-card{display:grid;grid-template-columns:105px minmax(0,1fr);grid-gap:16px;align-items:center;text-align:left;padding:12px}.large .illustrated-card .game-card-copy,.system-large .illustrated-card .game-card-copy{padding:0}.large .illustrated-card h3,.system-large .illustrated-card h3{margin-top:0;font-size:23px}.large .illustrated-card p,.system-large .illustrated-card p{font-size:18px;min-height:0}.large .game-art,.system-large .game-art{height:110px}.large .home-training .categories .chip{font-size:20px}.large .home-training .stat small{font-size:16px}.large .home-training .stat em{font-size:14px}.large .home-training .stat strong{font-size:28px}.large .home-training .stat{gap:0}.system-large .home-training .stat small{font-size:13px}}
@media(max-width:350px){.illustrated-games{grid-gap:10px}.game-art{height:106px}.illustrated-card h3{font-size:18px}.illustrated-card p{font-size:14px}.game-card.illustrated-card{padding:6px 6px 14px}.home-theme .mobile-brand{font-size:20px}.home-theme .mobile-brand img{width:25px}.home-training .stat small{font-size:13px}.home-training .stat em{font-size:12px}.large .game-card.illustrated-card,.system-large .game-card.illustrated-card{grid-template-columns:85px minmax(0,1fr);grid-gap:12px}.large .game-art,.system-large .game-art{height:96px}.large .illustrated-card h3{font-size:21px}}
.reaction-theme{background:#eaf3f9;color:#213f59}
.reaction-theme .main{background:transparent}
.reaction-theme .focused-page .topline,.reaction-theme .playing .topline{display:none}
.rx-page{max-width:650px;margin:0 auto;color:#213f59;font-size:18px;line-height:1.6}
.rx-page button{touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}
.rx-page .primary{background:#306ca7;color:#fff;border:2px solid #306ca7;border-radius:16px;min-height:56px;font-size:20px;box-shadow:0 3px 0 #205080}
.rx-page .primary:active{background:#245888;box-shadow:none}
.rx-page .secondary{background:white;border:2px solid #c4d9e9;color:#285d88;border-radius:14px;min-height:48px}
.rx-page .text-btn,.rx-page .back{color:#285d88}
.rx-page .page-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 0 22px}
.rx-page .page-heading h1{text-align:center;font-size:26px;line-height:1.4}
.rx-page .page-heading .back{padding:8px 0;white-space:nowrap;font-size:17px}
.rx-page .help-text{color:#607587;text-align:center;font-size:15px;line-height:1.7;margin:15px 0}
.rx-intro{display:grid;grid-template-columns:108px 1fr;gap:20px;align-items:center;padding:20px;background:#fffdf3;border:2px solid white;border-radius:24px;margin-bottom:22px}
.rx-intro .game-art{height:108px}
.rx-intro h2{font-size:22px;line-height:1.5;margin:5px 0 0}
.rx-eyebrow{font-size:16px;color:#526d82}
.rx-section{background:#fff;border:1px solid #dbe7ef;border-radius:20px;padding:22px;margin:18px 0}
.rx-section h2{font-size:21px;margin:0 0 16px}
.rx-modes{display:flex;flex-wrap:wrap;gap:12px}
.rx-modes button{flex:1;min-width:120px;background:#f4f8fc;border:2px solid #dbe5ef;border-radius:14px;color:#234b6a;min-height:62px;padding:12px;text-align:left}
.rx-modes button.active{border-color:#397bb5;background:#dfedfa;box-shadow:inset 0 0 0 1px #397bb5}
.rx-modes strong{font-size:19px;line-height:1.5}
.rx-modes strong>span{display:inline-flex;width:24px;height:24px;font-size:15px;align-items:center;justify-content:center;border-radius:7px;background:#fff;color:#3975a5}
.rx-modes small{display:block;font-size:14px;color:#587083;line-height:1.5;margin-top:6px}
.rx-modes.many{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rx-modes.many button{min-width:0;padding:12px 10px}
.rx-instructions ol{margin:0;padding-left:26px;line-height:1.85;color:#3e5669}
.rx-instructions li+li{margin-top:9px}
.rx-rule-note{background:#eef4fa;border-radius:12px;padding:12px;font-size:16px;margin-top:18px;color:#365b7a}
.rx-personal{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:24px 4px;font-size:16px}
.rx-personal strong{text-align:right;color:#2c6695}
.rx-start{margin:0 0 6px}
.rx-play .game-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;margin:0 0 16px;align-items:center}
.rx-play .game-head h2{text-align:center;font-size:24px;line-height:1.4}
.rx-play .game-head .back{font-size:17px;padding:8px 0;white-space:nowrap}
.rx-play .game-head .secondary{padding:8px 15px;font-size:17px}
.rx-scoreboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.rx-scoreboard>div{background:#dfebff;border:2px solid #fff;border-radius:16px;padding:12px 4px;text-align:center;min-width:0}
.rx-scoreboard>div:nth-child(2){background:#ffedca}.rx-scoreboard>div:nth-child(3){background:#d9eee5}
.rx-scoreboard strong{display:block;font-size:29px;line-height:1.3;font-variant-numeric:tabular-nums;color:#264e72;white-space:nowrap}
.rx-scoreboard span{display:block;color:#47657a;font-size:14px;line-height:1.4;margin-top:4px}
.rx-panel.play-panel{background:#fffdf8;border:2px solid white;border-radius:24px;padding:22px;min-height:0;box-shadow:0 4px 18px #2848650a;text-align:center;display:block}
.rx-panel .pause-overlay{min-height:340px;padding:30px 10px;display:flex;flex-direction:column;gap:18px;align-items:center;justify-content:center;position:static;background:none}
.rx-pause-symbol{font-size:52px;color:#487eae}.rx-panel .pause-overlay h2{font-size:24px}.rx-panel .pause-overlay p{margin:0;color:#526d82}
.rx-prompt{font-size:22px;font-weight:700;line-height:1.5;margin:0 0 18px;color:#244e6e}
.rx-small-rule{font-size:16px;color:#5d7385;line-height:1.6;margin:16px 0 0}
.rx-ready{min-height:350px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:22px}
.rx-ready>strong{font-size:94px;line-height:1.1;color:#316fa7;font-variant-numeric:tabular-nums}
.rx-ready p{color:#536d7f;font-size:18px;line-height:1.7}.rx-ready .rx-correct-mark{color:#258564}
.rx-tap-pad{width:100%;min-height:350px;background:#d8eaff;border:3px solid #aacbec;border-radius:20px;color:#285d88;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:20px}
.rx-tap-pad:active{background:#bcdcf6;border-color:#76a8d2}
.rx-tap-pad strong{font-size:27px;line-height:1.5}.rx-tap-pad>span:last-child{font-size:17px}.rx-tap-rings{font-size:90px;line-height:1.3;color:#387cb6}
.rx-notice{min-height:30px;color:#237552;text-align:center;font-size:17px;line-height:1.6;margin-top:12px}
.rx-notice.error{color:#aa4339}.rx-mode-label{margin-top:4px!important}
.rx-color-grid{display:grid;grid-template-columns:repeat(var(--rx-cols),minmax(0,1fr));gap:7px;max-width:500px;margin:auto}
.rx-color-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--cell-color);color:white;border:2px solid #c7d7e4;border-radius:10px;font-size:clamp(22px,5vw,34px);font-weight:700;min-width:0;min-height:0;padding:0;box-shadow:none;position:relative}
.rx-color-cell.rx-hit{opacity:.32}.rx-color-cell:active{filter:brightness(.93)}
.rx-arrows{width:min(100%,330px);aspect-ratio:1.18;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);align-items:center;justify-items:center;margin:8px auto 22px;line-height:1;font-family:Arial,sans-serif}
.rx-arrows>span{font-size:58px;font-weight:800;color:#758596}.rx-arrows.style-1>span{font-family:serif}.rx-arrows.style-2>span{font-weight:400}.rx-arrows .rx-center{font-size:66px}
.rx-directions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.rx-answer{background:#e1edfb;border:2px solid #c2d6ee;border-radius:14px;color:#254f72;min-height:62px;padding:9px 4px;font-size:21px}
.rx-answer:active{background:#bcd9f3}.rx-directions .rx-answer{display:flex;flex-direction:column;align-items:center;gap:4px}
.rx-directions b{font-size:32px;line-height:1}.rx-directions span{font-size:16px}.rx-choices{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.rx-choices .rx-answer:nth-child(2){background:#d7eee3;border-color:#b7d9c8;color:#23674c}
.rx-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0;min-height:180px;align-items:center}
.rx-picture{background:#fff;border:1px solid #e2e8ee;border-radius:18px;padding:16px}.rx-picture svg{display:block;width:100%;max-width:190px;height:auto;margin:auto}
.rx-flash{background:#18384f;color:#fff;min-height:320px;border-radius:18px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:28px;overflow:hidden}
.rx-flash .rx-eyebrow{color:#d3e6f6}.rx-flash strong{font-family:Arial,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:2px;line-height:1.5}
.rx-number-answer{min-height:70px;border:2px solid #bdd4e5;border-radius:14px;background:white;display:flex;align-items:center;justify-content:center;color:#214f72;font-size:30px;letter-spacing:3px;font-weight:700;margin:16px 0 20px;overflow-wrap:anywhere}
.rx-number-answer span{font-size:17px;font-weight:400;letter-spacing:0;color:#617889}
.rx-keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rx-keypad button{min-height:56px;background:#e5eef8;border:1px solid #c8d9e9;border-radius:12px;color:#254f72;font-size:25px;font-weight:700;padding:8px}
.rx-keypad button[data-rx=erase],.rx-keypad button[data-rx=submit]{font-size:20px}.rx-keypad button.rx-key-submit{background:#326ea5;color:white;border-color:#326ea5}.rx-keypad button:active{filter:brightness(.9)}
.rx-ring-stage{display:block;width:100%;background:#f0f5fa;border:0;border-radius:50%;padding:0;line-height:0;aspect-ratio:1;max-width:380px;margin:auto;touch-action:manipulation}
.rx-ring-stage svg{width:100%;height:100%}.rx-ring-percent{font-size:35px;fill:#315d7c;font-weight:700}.rx-ring-caption{font-size:14px;fill:#597589}
.rx-jump{margin-top:18px}.rx-play[data-game-kind=ringpaint] .rx-panel{padding:18px}
.rx-result-hero{text-align:center;padding:24px 20px;background:#fffdf3;border:2px solid white;border-radius:26px;position:relative}
.rx-result-mascot{display:flex;width:116px;height:116px;align-items:center;justify-content:center;border-radius:50%;background:#e0efe5;font-size:68px;margin:0 auto 14px;border:6px solid #f2f8ee}
.level-3 .rx-result-mascot,.level-4 .rx-result-mascot{background:#ffedb9;border-color:#fff5d9}
.rx-grade{display:inline-block;background:#e3edf6;color:#37668a;border-radius:20px;padding:4px 15px;font-size:15px;margin-bottom:10px}
.rx-result-hero h2{font-size:29px;margin:0 0 8px;color:#234e71}.rx-result-hero>p{font-size:16px;color:#607487;line-height:1.7;margin:0}
.rx-result-number{font-size:68px;line-height:1.3;font-weight:800;color:#306ca7;margin:12px 0 4px;font-variant-numeric:tabular-nums}
.rx-result-number small{font-size:23px;margin-left:8px;font-weight:500}.rx-result-hero .rx-outcome{color:#3f627a;font-size:17px}
.rx-new-best{display:inline-block;background:#ffebae;color:#865d15;border-radius:10px;padding:6px 14px;font-size:16px;margin-top:14px}
.rx-advice{padding:20px 22px;background:#e1eee7;border:1px solid #d1e2d8;border-radius:18px;margin:18px 0;color:#315e4b}
.rx-advice h3{font-size:19px;margin:0 0 8px}.rx-advice p{font-size:18px;line-height:1.8;margin:0}
.rx-detail-list>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;font-size:17px;border-bottom:1px solid #e4ecf3}.rx-detail-list>div:first-child{padding-top:0}.rx-detail-list>div:last-child{border:0;padding-bottom:0}.rx-detail-list strong{text-align:right;font-size:18px;color:#285d83}
.rx-result-actions{display:grid;gap:16px;margin:24px 0}.rx-result-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rx-result-actions .secondary{font-size:18px;padding:12px 5px}
.rx-history{background:#fff;border-radius:16px;padding:16px 20px;font-size:16px}.rx-history summary{cursor:pointer;padding:4px 0;color:#426781}.rx-history .record{font-size:15px;gap:12px}.rx-history strong{text-align:right}
.rx-recap{background:white;border-radius:18px;padding:20px;margin-top:18px}.rx-recap h3{font-size:19px;margin-bottom:15px}.rx-recap .rx-color-grid{max-width:300px}.rx-recap p{font-size:16px;color:#5d7385;margin-top:12px}.rx-missed:after{content:'×';position:absolute;inset:0;background:#ffffffd9;color:#ad372e;font-size:34px;display:flex;align-items:center;justify-content:center;border-radius:8px}.rx-expected{outline:3px solid #da9e28;outline-offset:2px}
.large .rx-page{font-size:21px}.large .rx-instructions li,.large .rx-advice p{font-size:21px}.large .rx-modes strong{font-size:22px}.large .rx-modes small{font-size:17px}.large .rx-scoreboard span{font-size:16px}.large .rx-prompt{font-size:25px}.large .rx-small-rule{font-size:19px}.large .rx-result-hero>p{font-size:19px}.large .rx-detail-list>div{font-size:20px}.large .rx-detail-list strong{font-size:21px}
@media(max-width:760px){
 .reaction-theme .main,.reaction-theme .playing .main{padding:18px 16px 30px}.rx-page .page-heading{margin-bottom:18px}.rx-page .page-heading h1{font-size:22px}.rx-page .page-heading .text-btn{font-size:16px;padding:8px 2px}.rx-play .game-head h2{font-size:22px}.rx-play .game-head{gap:8px}.rx-play .game-head .secondary{padding:8px 12px}
 .rx-intro{grid-template-columns:85px 1fr;gap:14px;padding:16px}.rx-intro .game-art{height:90px}.rx-intro h2{font-size:20px}.rx-section{padding:18px}.rx-modes strong{font-size:17px}.rx-modes small{font-size:14px}.rx-scoreboard{gap:8px}.rx-scoreboard>div{padding:10px 3px}.rx-scoreboard strong{font-size:26px}.rx-scoreboard span{font-size:13px}
 .rx-panel.play-panel{padding:18px 14px;border-radius:20px}.rx-ready{min-height:310px}.rx-tap-pad{min-height:310px}.rx-tap-pad strong{font-size:25px}.rx-prompt{font-size:20px}.rx-color-grid{gap:6px}.rx-color-cell{border-radius:8px;border-width:1px;font-size:24px}.rx-arrows{max-width:270px}.rx-arrows>span{font-size:49px}.rx-arrows .rx-center{font-size:57px}.rx-directions{gap:8px}.rx-pair{min-height:160px;gap:14px;margin:20px 0}.rx-picture{padding:10px}.rx-flash{min-height:270px}.rx-number-answer{min-height:62px;font-size:27px}.rx-keypad{gap:8px}.rx-keypad button{min-height:52px}.rx-play[data-game-kind=ringpaint] .rx-panel{padding:16px 10px}.rx-result-hero h2{font-size:27px}
 .large .rx-modes.many{grid-template-columns:1fr}.large .rx-intro{grid-template-columns:1fr}.large .rx-intro .game-art{display:none}.large .rx-scoreboard strong{font-size:26px}.large .rx-scoreboard span{font-size:14px}.large .rx-detail-list>div{flex-wrap:wrap;gap:5px}.large .rx-detail-list strong{margin-left:auto}
}
@media(max-width:350px){.reaction-theme .main,.reaction-theme .playing .main{padding-left:12px;padding-right:12px}.rx-play .game-head h2{font-size:20px}.rx-page .page-heading h1{font-size:20px}.rx-page .page-heading .back,.rx-play .game-head .back{font-size:15px}.rx-play .game-head .secondary{font-size:15px;padding:8px 10px}.rx-section{padding:15px}.rx-modes.many button{padding:10px 7px}.rx-modes strong{font-size:16px}.rx-modes strong>span{width:20px;height:20px}.rx-intro h2{font-size:18px}.rx-scoreboard span{font-size:12px}.rx-panel.play-panel{padding:15px 10px}.rx-color-grid{gap:5px}.rx-color-cell{font-size:21px}.rx-prompt{font-size:19px}.rx-ready{min-height:290px}.rx-tap-pad{min-height:290px}.rx-keypad button{min-height:48px}.rx-scoreboard strong{font-size:23px}.rx-personal{flex-wrap:wrap}.rx-history{padding:14px}.rx-history .record{flex-wrap:wrap}}
