/* Focused, touch-first training. Game chrome is shared with the duel controller. */
.lg-practice{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:var(--lg-paper);color:var(--lg-ink)}
.lg-screen.lg-practice{padding:0}
.lg-practice .lp-setup{max-width:1080px;padding:clamp(24px,5vw,60px) 24px 32px;margin:0 auto;text-align:center}
.lg-practice .lp-heading h2{font:600 clamp(31px,4vw,50px)/1.15 LigaGame,system-ui,sans-serif}
.lg-practice .lp-settings{display:grid;grid-template-columns:110px 150px minmax(200px,1fr);gap:14px;margin:30px auto;max-width:720px;text-align:left}
.lg-practice .lp-settings select{width:100%;min-height:52px;font-size:16px}
.lg-practice .lp-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.lg-practice .lp-mode{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;min-height:190px;padding:24px 14px;border:2px solid var(--lg-rule);border-bottom-width:5px;border-radius:22px;background:var(--lg-card);color:var(--lg-ink);box-shadow:0 4px 12px #173d4d0a}
.lg-practice .lp-mode[aria-pressed=true]{background:#e1f4eb;border-color:#3c9671;box-shadow:inset 0 0 0 2px #fff,0 4px 12px #1c765119;color:#173f32}
.lg-practice .lp-mode>span{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#e5eef3;color:#31596a;font-size:35px}
.lg-practice .lp-mode[aria-pressed=true]>span{background:#bce5d0;color:#1b6b4b}
.lg-practice .lp-mode strong{font:600 25px/1.1 LigaGame,system-ui,sans-serif}
.lg-practice .lp-mode small{font-size:12px;color:var(--lg-muted)}
.lg-practice .lp-mode[aria-pressed=true] small{color:#376b55}
.lg-practice .lp-guided{margin-top:26px}.lg-practice .lp-guided .lg-button{font-size:12px;background:transparent;border-color:transparent;color:var(--lg-muted)}
.lg-practice .lp-error{min-height:22px;margin:12px 0 0!important;color:#a74429;font-size:13px}
.lg-practice .lp-session{max-width:1440px;margin:0 auto;padding:18px clamp(16px,3vw,42px) 30px}
.lg-practice .lp-session-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px;font-size:13px;color:var(--lg-muted)}
.lg-practice .lp-session-strip .lg-button{font-size:12px;min-height:44px;background:transparent}
.lg-practice .lp-progress{white-space:nowrap}.lg-practice .lp-progress strong{font-weight:700;color:#27805e}
.lg-practice .lp-problem{max-width:1120px;margin:16px auto 24px}
.lg-practice .lp-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:850px;margin:30px auto}
.lg-practice .lp-answer-option{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:12px;align-items:center;min-height:106px;padding:18px 22px;border:2px solid #b7cbd4;border-bottom-width:5px;border-radius:18px;background:var(--lg-card);color:var(--lg-ink);text-align:left;box-shadow:0 4px 12px #153d4a08}
.lg-practice .lp-answer-option>span{grid-row:span 2;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e3edf3;color:#3f6277;font:600 20px LigaGame,system-ui,sans-serif}
.lg-practice .lp-answer-option strong{font:600 clamp(28px,3vw,42px)/1 LigaGame,system-ui,sans-serif;overflow-wrap:anywhere}
.lg-practice .lp-answer-option small{font-size:14px;margin-top:7px;color:var(--lg-muted)}
.lg-practice .lp-answer-option:hover:not(:disabled){border-color:#4486ab;background:#f2f9fc}
.lg-practice .lp-answer-option[data-correct=true]{border-color:#269466;background:#e2f5e8;color:#155c3b;opacity:1}
.lg-practice .lp-answer-option.was-selected[data-correct=false]{border-color:#bc744a;background:#fff0e6;opacity:1}
.lg-practice .lp-answer-option:disabled:not([data-correct=true]):not(.was-selected){opacity:.48}
.lg-practice .lp-solve{display:grid;grid-template-columns:minmax(260px,500px) minmax(240px,360px);justify-content:center;gap:32px;align-items:start;max-width:1180px;margin:20px auto 0}
.lg-practice .lp-solve--written{grid-template-columns:minmax(360px,1fr) minmax(260px,380px)}
.lg-practice .lp-workspace{min-width:0;padding:22px;border:1px solid var(--lg-rule);border-radius:20px;background:var(--lg-card)}
.lg-practice .lp-final-answer{grid-template-columns:minmax(0,1fr) minmax(110px,.8fr)}
.lg-practice .lp-final-answer input{width:100%;min-width:0;min-height:62px;text-align:center;cursor:pointer;border:2px solid var(--lg-rule);border-radius:12px;background:var(--lg-paper);color:var(--lg-ink);font:500 30px LigaGame,system-ui,sans-serif;padding:9px 12px;caret-color:transparent}
.lg-practice .lp-final-answer input.is-active{border-color:#438ac1;box-shadow:0 0 0 3px #438ac121}
.lg-practice .lp-final-answer select{width:100%;min-width:0;min-height:62px;background:var(--lg-paper);font-size:16px}
.lg-practice [data-lp-check]{width:100%;min-height:56px;margin-top:12px;font-size:21px}
.lg-practice .lp-control-station{min-width:0}.lg-practice .lp-control-station .lg-controller{margin-top:0!important;max-width:none}
.lg-practice .lp-control-station .lg-keypad{display:grid!important;max-width:none;margin:0}
.lg-practice .lp-controller{display:grid;grid-template-columns:95px minmax(0,1fr);gap:14px;align-items:center;padding:17px 15px;background:linear-gradient(135deg,#2d5871,#163145);border:2px solid #6d8fa0;border-bottom:7px solid #112b3e;border-radius:28px;box-shadow:inset 0 2px 0 #a3c8dd55,0 10px 16px #153b4e18;color:#fff}
.lg-practice .lp-controller-label{text-align:center;display:grid;gap:8px;justify-items:center}.lg-practice .lp-controller-label>span{font-size:42px;color:#ffdc81}.lg-practice .lp-controller-label strong{font:500 17px LigaGame,system-ui,sans-serif}.lg-practice .lp-controller-label small{font-size:10px;line-height:1.4;color:#c1d9e5}
.lg-practice .lp-controller .lg-keypad .lg-button{min-height:54px;border:1px solid #c5d6d9;border-bottom:4px solid #8fa7b4;background:linear-gradient(#fffdf2,#dbe6e4);color:#193b4e;border-radius:11px;font:600 24px LigaGame,system-ui,sans-serif;padding:9px 5px;box-shadow:inset 0 2px #fff}
.lg-practice .lp-controller .lg-keypad .lg-button:active{transform:translateY(3px);border-bottom-width:1px}
.lg-practice .lp-arithmetic{min-width:0;margin-bottom:12px;border-radius:15px;outline:2px solid transparent;outline-offset:7px}.lg-practice .lp-arithmetic.is-active{outline-color:#438ac13d}
.lg-practice .lp-work-tools{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:12px 0}.lg-practice .lp-work-tools .lg-button{font-size:12px;min-height:44px}
.lg-practice .lp-history{display:flex;flex-wrap:wrap;gap:7px;font:500 15px LigaGame,system-ui,sans-serif;margin-bottom:18px;color:var(--lg-muted)}
.lg-practice .lp-history:empty{display:none}.lg-practice .lp-history span{padding:6px 10px;background:var(--lg-paper);border:1px solid var(--lg-rule);border-radius:8px}
.lg-practice .lp-feedback{display:grid;grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:20px;max-width:1000px;padding:22px 26px;margin:24px auto;border:2px solid #cfaa81;border-radius:22px;background:#fff7eb;color:#634828}
.lg-practice .lp-feedback[data-correct=true]{border-color:#8fc8a8;background:#ecf8ef;color:#235a3d}
.lg-practice .lp-feedback-mark{font:600 50px/1 LigaGame,system-ui,sans-serif}.lg-practice .lp-feedback h3{font-size:28px;margin-bottom:6px!important}.lg-practice .lp-solution{font:600 27px LigaGame,system-ui,sans-serif}.lg-practice .lp-explanation{font-size:15px;line-height:1.5;margin-top:10px!important}.lg-practice [data-lp-next]{min-height:58px;font-size:18px;white-space:nowrap}
.lg-shell[data-lg-contrast=dark] .lg-practice .lp-mode[aria-pressed=true]{background:#245348;color:#fff}.lg-shell[data-lg-contrast=dark] .lg-practice .lp-mode[aria-pressed=true] small{color:#d0e7db}
.lg-shell[data-lg-contrast=dark] .lg-practice .lp-feedback{color:#634828}.lg-shell[data-lg-contrast=dark] .lg-practice .lp-feedback[data-correct=true]{color:#235a3d}.lg-shell[data-lg-contrast=dark] .lg-practice .lp-answer-option[data-correct=true]{color:#155c3b}.lg-shell[data-lg-contrast=dark] .lg-practice .lp-answer-option.was-selected[data-correct=false]{color:#634828}
/* 3.2 training selection uses original game illustrations and live, accessible labels. */
.lg-practice[data-lp-screen]{min-height:100%;position:relative;isolation:isolate}
.lg-practice[data-lp-screen=setup]{background:#173f58;color:#fff}
.lg-practice[data-lp-screen=setup]::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(#12324b8c,#163d55b8),url("../images/liga-arena.webp") center/cover no-repeat;pointer-events:none}
.lg-practice .lp-setup{max-width:1150px;padding:clamp(24px,3vw,40px) 28px 28px}
.lg-practice .lp-heading .lg-eyebrow{color:#c9e9e9;text-shadow:0 1px 4px #092c42}
.lg-practice .lp-heading h2{color:#fff1bd;text-shadow:0 3px 0 #1c3c4a,0 6px 12px #0a293e55;font-size:clamp(34px,4.2vw,54px)}
.lg-practice .lp-settings{padding:14px 18px;margin:24px auto;max-width:790px;border:1px solid #d7c590;border-bottom:4px solid #927744;border-radius:18px;background:#f5f2e8ed;box-shadow:inset 0 2px #fff,0 5px 16px #08233729;color:#24434d}
.lg-practice .lp-settings .lg-field>span{font-size:12px;font-weight:700;color:#44606b}.lg-practice .lp-settings select{background:#fffefb;border:1px solid #b7c8cb;color:#1d414b;border-radius:10px;min-height:48px}
.lg-practice .lp-mode{position:relative;display:flex;gap:0;min-height:0;padding:0;overflow:hidden;border:2px solid #aa894e;border-bottom:6px solid #69502c;border-radius:22px;background:#163e56;color:#fff;box-shadow:inset 0 2px #e6d2a433,0 8px 18px #06223745;transition:transform .15s,box-shadow .15s}
.lg-practice .lp-mode:hover{transform:translateY(-4px);box-shadow:0 11px 22px #0622375c}
.lg-practice .lp-mode:active{transform:translateY(2px)}
.lg-practice .lp-mode[aria-pressed=true]{border-color:#ffde86;border-bottom-color:#b38b36;background:#1d5865;color:#fff9d7;box-shadow:0 0 0 3px #9fe4d459,0 10px 22px #08283c70}
.lg-practice .lp-mode>.lp-mode-art{position:relative;display:block;width:100%;height:auto;aspect-ratio:16/10;padding:0;border-radius:0;background:#326878;overflow:hidden}
.lg-practice .lp-mode-art>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%;transition:transform .2s;user-select:none;pointer-events:none}
.lg-practice .lp-mode:hover .lp-mode-art>img{transform:scale(1.035)}
.lg-practice .lp-mode-art::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#163e5670,transparent 48%);box-shadow:inset 0 2px #ffffff20}
.lg-practice .lp-mode-check{position:absolute;z-index:1;top:11px;right:11px;display:grid;place-items:center;width:33px;height:33px;border:2px solid #f6dc8d;border-radius:50%;background:#176656;color:#ffecad;font:700 22px/1 LigaGame,system-ui,sans-serif;box-shadow:0 2px 7px #0e293c88;opacity:0;transform:scale(.7);transition:transform .15s,opacity .15s}
.lg-practice .lp-mode[aria-pressed=true] .lp-mode-check{opacity:1;transform:scale(1)}
.lg-practice .lp-mode>.lp-mode-copy{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;height:auto;min-height:90px;padding:17px 10px 18px;border-top:1px solid #b1ceca66;border-radius:0;background:#153e55;color:#fff}
.lg-practice .lp-mode[aria-pressed=true]>.lp-mode-copy{background:#235c66;color:#fff5cc}
.lg-practice .lp-mode-copy strong{font-size:26px;line-height:1.06;text-shadow:0 2px 0 #0c2d41}
.lg-practice .lp-mode-copy small,.lg-practice .lp-mode[aria-pressed=true] .lp-mode-copy small{font-size:12px;color:#d8e9ea;line-height:1.3}
.lg-practice .lp-setup>.lp-error{color:#ffe4bd;text-shadow:0 1px 3px #102d42;min-height:0;margin-top:12px!important}
.lg-practice .lp-setup>.lp-error:empty{display:none}
.lg-practice .lp-setup>.lg-actions{margin-top:25px}.lg-practice [data-lp-start]{min-width:240px;min-height:62px;font-size:25px;border-radius:17px}
.lg-practice .lp-guided{margin-top:13px}.lg-practice .lp-guided .lg-button{color:#e0ecec;min-height:44px;border-color:#e1f2ef55;background:#1032474a;padding:8px 15px}
.lg-practice[data-lp-screen=problem]{background:linear-gradient(90deg,#f4f8f4e8,#f9fbf8fa 17%,#f9fbf8fa 83%,#f4f8f4e8),url("../images/liga-arena.webp") center/cover fixed no-repeat}
.lg-practice .lp-session{padding-top:16px}.lg-practice .lp-session-strip{margin-bottom:18px}
.lg-practice .lp-session-strip .lg-button[data-lp-change]{min-height:50px;padding:11px 20px;border:2px solid #466d81;border-bottom:5px solid #1b4359;border-radius:14px;background:linear-gradient(#ffe6a4,#f5cb6c);color:#304854;box-shadow:inset 0 2px #fff5d2,0 3px 9px #133d4c15;font:600 17px/1.1 LigaGame,system-ui,sans-serif}
.lg-practice .lp-session-strip .lg-button[data-lp-change]>span{font:600 25px/1 LigaGame,system-ui,sans-serif;margin-right:3px}
.lg-practice .lp-session-strip .lg-button[data-lp-change]:hover{background:linear-gradient(#ffedbd,#f8d685);border-color:#466d81}
.lg-practice .lp-progress{padding:9px 15px;border:1px solid #cbdcd6;border-radius:99px;background:#ffffffd9;color:#47635f;box-shadow:0 2px 5px #244d4026;font-size:13px}
.lg-practice .lp-progress strong{color:#1d7860}
.lg-practice .lp-problem{padding:22px clamp(18px,3vw,38px) 12px;border:1px solid #d5e2da;border-radius:22px;background:#fff;box-shadow:0 8px 24px #234d3f0b}
.lg-practice .lp-problem .lg-statement{color:#18323a}.lg-practice .lp-problem .lg-eyebrow{color:#58706d}
.lg-practice .lp-answer-station{min-width:0;display:grid;gap:19px;align-content:start;position:sticky;top:14px}
.lg-practice .lp-answer-console{padding:19px;border:2px solid #bfd4c9;border-top:5px solid #478f7c;border-radius:18px;background:#fff;box-shadow:0 4px 12px #214f3f0b}
.lg-practice .lp-answer-console>h3{font:600 24px/1.1 LigaGame,system-ui,sans-serif;color:#315e54;margin-bottom:15px!important;text-align:left}
.lg-practice .lp-answer-console .lg-field>span{font-size:12px;font-weight:600;color:#58706a}
.lg-practice .lp-workspace>.lp-answer-console{padding:0;border:0;box-shadow:none}
.lg-practice .lp-solve--written{grid-template-columns:minmax(0,1fr) 350px;gap:24px;max-width:1370px}
.lg-practice .lp-workbench-host{padding:0;border:0;background:transparent;box-shadow:none;outline:2px solid transparent;outline-offset:6px;border-radius:20px}
.lg-practice .lp-workbench-host.is-active{outline-color:#71ac9d38}
.lg-practice .lp-answer-station .lp-control-station .lg-controller{width:100%}
.lg-practice .lp-answer-console [data-lp-check]{font-size:20px;border-radius:12px}
@media(max-width:900px){.lg-practice .lp-solve,.lg-practice .lp-solve--written{grid-template-columns:minmax(0,1fr) minmax(235px,320px);gap:20px}.lg-practice .lp-workspace{padding:16px}.lg-practice .lp-mode strong{font-size:22px}.lg-practice .lp-mode{padding:20px 12px}.lg-practice .lp-feedback{grid-template-columns:45px minmax(0,1fr);gap:15px}.lg-practice [data-lp-next]{grid-column:1/-1;justify-self:center}}
@media(max-width:700px){.lg-practice .lp-settings{grid-template-columns:1fr 1fr;margin-block:24px}.lg-practice .lp-settings>label:last-child{grid-column:1/-1}.lg-practice .lp-modes{gap:10px}.lg-practice .lp-mode{min-height:165px;padding:15px 8px;gap:10px;border-radius:17px}.lg-practice .lp-mode strong{font-size:20px}.lg-practice .lp-mode small{font-size:10px;line-height:1.4}.lg-practice .lp-mode>span{width:48px;height:48px;font-size:30px}.lg-practice .lp-solve,.lg-practice .lp-solve--written{grid-template-columns:1fr;max-width:580px}.lg-practice .lp-control-station{width:100%;max-width:450px;justify-self:center}.lg-practice .lp-answers{gap:12px}.lg-practice .lp-answer-option{padding:15px;min-height:102px;column-gap:9px;grid-template-columns:32px minmax(0,1fr)}.lg-practice .lp-answer-option>span{width:30px;height:30px;font-size:17px}.lg-practice .lp-session-strip{font-size:11px}.lg-practice .lp-session-strip .lg-button{font-size:11px;padding:8px 10px}.lg-practice .lp-feedback{padding:18px}.lg-practice .lp-feedback h3{font-size:25px}}
@media(max-width:400px){.lg-practice .lp-setup{padding-inline:14px}.lg-practice .lp-heading h2{font-size:30px}.lg-practice .lp-modes{grid-template-columns:1fr}.lg-practice .lp-mode{display:grid;grid-template-columns:48px 1fr;text-align:left;min-height:91px;gap:5px 14px;padding:13px 17px}.lg-practice .lp-mode>span{grid-row:span 2}.lg-practice .lp-mode strong{font-size:23px}.lg-practice .lp-mode small{font-size:11px}.lg-practice .lp-answers{grid-template-columns:1fr}.lg-practice .lp-answer-option{min-height:85px}.lg-practice .lp-session{padding-inline:12px}.lg-practice .lp-final-answer{gap:9px}.lg-practice .lp-final-answer select{font-size:14px}.lg-practice .lp-controller{grid-template-columns:70px minmax(0,1fr);gap:10px;padding:13px 11px}.lg-practice .lp-controller .lg-keypad .lg-button{min-height:50px;font-size:22px}.lg-practice .lp-feedback{grid-template-columns:32px minmax(0,1fr);gap:12px}.lg-practice .lp-feedback-mark{font-size:38px}.lg-practice .lp-explanation{font-size:14px}}
@media(max-width:1050px){.lg-practice .lp-setup{padding-inline:23px}.lg-practice .lp-modes{gap:14px}.lg-practice .lp-mode-copy strong{font-size:23px}.lg-practice .lp-solve--written{grid-template-columns:minmax(0,1fr) 305px;gap:20px}.lg-practice .lp-answer-console{padding:16px}.lg-practice .lp-answer-console [data-lp-check]{font-size:18px}}
@media(max-width:900px){.lg-practice .lp-mode{padding:0}.lg-practice .lp-mode>.lp-mode-copy{padding:15px 8px;min-height:85px}.lg-practice .lp-mode-copy strong{font-size:22px}.lg-practice .lp-mode-copy small{font-size:11px}}
@media(max-width:700px){.lg-practice .lp-solve--written{grid-template-columns:1fr;max-width:610px}.lg-practice .lp-answer-station{position:static;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.lg-practice .lp-answer-station .lp-control-station{align-self:start}.lg-practice .lp-answer-console{padding:16px}.lg-practice .lp-answer-station .lp-final-answer{grid-template-columns:1fr}.lg-practice .lp-mode>.lp-mode-art{width:100%;height:auto;aspect-ratio:16/10}.lg-practice .lp-mode>.lp-mode-copy{width:100%;height:auto;gap:7px}.lg-practice .lp-session-strip .lg-button[data-lp-change]{font-size:15px;min-height:48px;padding:10px 13px}.lg-practice .lp-progress{font-size:11px;padding:8px 11px}.lg-practice .lp-problem{padding:18px 17px 10px}.lg-practice .lp-settings{padding:12px;margin-block:20px}}
@media(max-width:620px){.lg-practice .lp-modes{grid-template-columns:1fr;max-width:460px;margin:auto;gap:13px}.lg-practice .lp-mode{display:grid;grid-template-columns:145px minmax(0,1fr);gap:0;text-align:left;padding:0;min-height:112px;border-radius:19px}.lg-practice .lp-mode>.lp-mode-art{width:145px;height:100%;min-height:112px;aspect-ratio:4/3;grid-row:1}.lg-practice .lp-mode>.lp-mode-copy{min-height:112px;height:100%;padding:14px 16px;border-top:0;border-left:1px solid #b1ceca55;align-items:flex-start;justify-content:center;grid-row:1}.lg-practice .lp-mode-copy strong{font-size:25px}.lg-practice .lp-mode-copy small{font-size:12px}.lg-practice .lp-mode-check{width:28px;height:28px;font-size:19px;top:8px;right:8px}.lg-practice .lp-settings{gap:10px}.lg-practice .lp-setup{padding:24px 18px}.lg-practice .lp-heading h2{font-size:37px}.lg-practice .lp-answer-station{grid-template-columns:1fr;max-width:450px;width:100%;justify-self:center}.lg-practice .lp-answer-station .lp-final-answer{grid-template-columns:minmax(0,1fr) minmax(110px,.8fr)}}
@media(max-width:400px){.lg-practice .lp-mode{grid-template-columns:112px minmax(0,1fr)}.lg-practice .lp-mode>.lp-mode-art{width:112px;min-height:108px;aspect-ratio:auto}.lg-practice .lp-mode>.lp-mode-copy{padding:13px;min-height:108px}.lg-practice .lp-mode-copy strong{font-size:22px}.lg-practice .lp-mode-copy small{font-size:11px}.lg-practice .lp-heading h2{font-size:33px}.lg-practice .lp-session-strip .lg-button[data-lp-change]{font-size:13px;padding:9px 11px;gap:4px}.lg-practice .lp-session-strip .lg-button[data-lp-change]>span{font-size:22px}.lg-practice .lp-session-strip{gap:8px}.lg-practice .lp-progress{font-size:10px;padding:7px 9px}}
/* Keep the written controller beside the board; the answer can wait below it. */
.lg-practice[data-lp-screen=problem][data-lp-mode=written]{overflow:visible}
.lg-practice .lp-solve--written .lp-answer-station{gap:14px}
.lg-practice .lp-solve--written .lp-workbench-host{padding:0}
.lg-practice .lp-solve--written .lp-answer-console{padding:13px;border-top-width:4px}
.lg-shell .lg-practice .lp-solve--written .lp-final-answer{display:grid;grid-template-columns:minmax(0,1fr) minmax(105px,.85fr);gap:10px}
.lg-practice .lp-solve--written .lp-final-answer .lg-field{gap:5px}
.lg-practice .lp-solve--written .lp-final-answer input,.lg-practice .lp-solve--written .lp-final-answer select{min-height:50px;padding:8px 9px}
.lg-practice .lp-solve--written .lp-final-answer input{font-size:27px}
.lg-practice .lp-solve--written .lp-final-answer select{font-size:14px}
.lg-practice .lp-solve--written [data-lp-check]{min-height:48px;margin-top:10px;padding:10px;font-size:18px}
.lg-practice .lp-solve--written [data-lp-answer-error]:empty{display:none}
/* 3.3: one training header, a compact game rail and separate workspaces. */
.lg-practice .lp-training-header{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.8fr);gap:24px;align-items:center;margin:0 auto 26px;padding:19px 22px;border:1px solid #d7c590;border-bottom:4px solid #927744;border-radius:20px;background:#f5f2e8f5;box-shadow:inset 0 2px #fff,0 6px 18px #08233730;color:#24434d}
.lg-practice .lp-training-header .lp-heading h2{font-size:34px;color:#244b5a;text-shadow:none;text-align:left}
.lg-practice .lp-training-header .lp-settings{grid-template-columns:86px 120px minmax(160px,1fr);width:100%;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;gap:12px}
.lg-practice .lp-modes{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.lg-practice .lp-mode>.lp-mode-copy{min-height:102px;justify-content:center}
.lg-practice .lp-mode-copy strong{font-size:25px}.lg-practice .lp-mode-copy small{font-size:11px}
.lg-practice .lp-mode-selected{position:absolute;z-index:2;left:50%;bottom:10px;transform:translateX(-50%);display:none;padding:8px 15px;border:1px solid #ffe7a1;border-bottom:3px solid #967033;border-radius:99px;background:linear-gradient(#ffe9b2,#f7cf72);color:#513b1f;font:600 16px/1 LigaGame,system-ui,sans-serif;box-shadow:0 3px 9px #15324e80;white-space:nowrap}
.lg-practice .lp-mode[aria-pressed=true] .lp-mode-selected{display:block}
.lg-practice .lp-mode[aria-pressed=true]{border-color:#ffdf84;border-bottom-color:#b38b36;box-shadow:0 0 0 3px #fce7a34d,0 10px 22px #08283c70}
.lg-practice .lp-session{padding-top:22px}
.lg-practice .lp-reading-row{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:24px;align-items:start}
.lg-practice .lp-reading-row .lp-problem{margin:0;width:100%;max-width:none;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:24px clamp(20px,3vw,38px) 16px}
.lg-practice .lp-game-rail{display:grid;gap:13px;min-width:0}
.lg-practice .lp-game-rail .lg-button[data-lp-change]{min-height:50px;padding:10px 12px;border:2px solid #466d81;border-bottom:5px solid #1b4359;border-radius:14px;background:linear-gradient(#ffe6a4,#f5cb6c);color:#304854;box-shadow:inset 0 2px #fff5d2,0 3px 9px #133d4c15;font:600 15px/1.15 LigaGame,system-ui,sans-serif}
.lg-practice .lp-game-rail .lg-button[data-lp-change]>span{font-size:24px;line-height:1}
.lg-practice .lp-game-rail .lg-button[data-lp-change]:hover{background:linear-gradient(#ffedbd,#f8d685);border-color:#466d81}
.lg-practice .lp-progress-card{position:relative;display:grid;grid-template-columns:59px minmax(0,1fr);gap:5px 10px;align-items:center;padding:12px;border:2px solid #caa35b;border-bottom:5px solid #796039;border-radius:19px;background:linear-gradient(145deg,#28546b,#173c53);box-shadow:inset 0 2px #c8dfd628,0 5px 10px #20453d13;color:#fff4d1}
.lg-practice .lp-progress-card>img{grid-column:1;grid-row:1 / span 2;display:block;width:58px;height:62px;object-fit:contain;filter:drop-shadow(0 2px 2px #0b243355)}
.lg-practice .lp-progress-figures{grid-column:2;display:flex;justify-content:center;align-items:center;gap:6px;font:600 31px/1 LigaGame,system-ui,sans-serif;color:#ffe29b}
.lg-practice .lp-progress-figures>span{font-size:21px;color:#a8c6cd}
.lg-practice .lp-progress-caption{grid-column:2;white-space:nowrap;text-align:center;font-size:10px;color:#d1e4e5}
.lg-practice .lp-streak-stars{grid-column:1 / -1;display:flex;justify-content:center;gap:7px;margin-top:4px;font-size:23px;line-height:1;color:#658490}
.lg-practice .lp-streak-stars .is-earned{color:#ffdf7c;text-shadow:0 0 9px #ffdd7940}
.lg-practice .lp-streak{grid-column:1;white-space:nowrap;font-size:11px;color:#d3e5e5}
.lg-practice .lp-accuracy{grid-column:2;justify-self:end;border:1px solid #b8ccca55;border-radius:99px;padding:3px 9px;background:#15354c;color:#cfe6de;font-size:11px;font-weight:700}
.lg-practice .lp-playarea{margin-top:23px}.lg-practice .lp-playarea .lp-answers{margin:0 auto}
.lg-practice .lp-notes-panel{--ln-height:285px;min-width:0;width:100%;align-self:start}
.lg-practice .lp-solve--mental,.lg-practice .lp-solve--calculator{grid-template-columns:260px 325px minmax(260px,1fr);gap:20px;max-width:none;margin-top:0;align-items:start}
.lg-practice .lp-solve--mental .lp-workspace,.lg-practice .lp-solve--calculator .lp-workspace{padding:18px;border:2px solid #bdd2c8;border-top:5px solid #478f7c}
.lg-shell .lg-practice .lp-solve--mental .lp-final-answer,.lg-shell .lg-practice .lp-solve--calculator .lp-final-answer{display:grid;grid-template-columns:1fr;gap:12px}
.lg-practice .lp-solve--mental .lp-answer-console>h3,.lg-practice .lp-solve--calculator .lp-answer-console>h3{margin-bottom:13px!important;font-size:23px}
.lg-practice .lp-solve--mental .lp-final-answer input,.lg-practice .lp-solve--mental .lp-final-answer select,.lg-practice .lp-solve--calculator .lp-final-answer input,.lg-practice .lp-solve--calculator .lp-final-answer select{min-height:52px}
.lg-practice .lp-solve--mental [data-lp-answer-error]:empty,.lg-practice .lp-solve--calculator [data-lp-answer-error]:empty{display:none}
.lg-practice .lp-solve--mental [data-lp-check],.lg-practice .lp-solve--calculator [data-lp-check]{font-size:18px;min-height:50px}
.lg-practice .lp-solve--mental .lp-control-station{width:100%}.lg-practice .lp-solve--mental .lp-control-station .lg-controller{width:100%}
.lg-practice .lp-solve--written{grid-template-columns:minmax(0,1fr) 350px;gap:23px;max-width:none;margin-top:0}
.lg-practice .lp-written-tools{display:grid;gap:16px;min-width:0;align-content:start;position:sticky;top:14px}
.lg-practice .lp-written-tools .lp-notes-panel{--ln-height:235px}
.lg-practice .lp-written-tools .lp-answer-console{padding:13px}
.lg-practice .lp-calculator-panel{min-width:0;align-self:start}
.lg-practice[data-lp-screen=problem]{overflow:visible}
@media(max-width:1180px){.lg-practice .lp-training-header{grid-template-columns:minmax(180px,.6fr) minmax(0,1.5fr);padding:17px 18px;gap:18px}.lg-practice .lp-training-header .lp-heading h2{font-size:31px}.lg-practice .lp-training-header .lp-settings{grid-template-columns:80px 110px minmax(130px,1fr);gap:10px}.lg-practice .lp-mode-copy strong{font-size:22px}.lg-practice .lp-solve--mental,.lg-practice .lp-solve--calculator{grid-template-columns:220px 285px minmax(220px,1fr);gap:16px}.lg-practice .lp-solve--mental .lp-workspace,.lg-practice .lp-solve--calculator .lp-workspace{padding:15px}.lg-practice .lp-solve--written{grid-template-columns:minmax(0,1fr) 305px;gap:18px}}
@media(max-width:960px){.lg-practice .lp-training-header{grid-template-columns:1fr}.lg-practice .lp-training-header .lp-heading h2{text-align:center}.lg-practice .lp-modes{grid-template-columns:repeat(2,minmax(0,1fr));max-width:740px;margin:auto}.lg-practice .lp-mode-copy strong{font-size:26px}.lg-practice .lp-reading-row{grid-template-columns:minmax(0,1fr) 185px;gap:17px}.lg-practice .lp-game-rail .lg-button[data-lp-change]{font-size:14px;padding-inline:9px}.lg-practice .lp-progress-card{grid-template-columns:49px minmax(0,1fr);padding:10px;gap:5px 7px}.lg-practice .lp-progress-card>img{width:48px;height:56px}.lg-practice .lp-progress-figures{font-size:28px}.lg-practice .lp-progress-caption{font-size:9px}.lg-practice .lp-solve--mental,.lg-practice .lp-solve--calculator{grid-template-columns:minmax(190px,.8fr) minmax(240px,1fr);gap:17px}.lg-practice .lp-solve--mental .lp-notes-panel,.lg-practice .lp-solve--calculator .lp-notes-panel{grid-column:1 / -1;--ln-height:230px}.lg-practice .lp-solve--written{grid-template-columns:minmax(0,1fr) 280px;gap:16px}}
@media(max-width:700px){.lg-practice .lp-reading-row{grid-template-columns:minmax(0,1fr) 172px;gap:13px}.lg-practice .lp-reading-row .lp-problem{padding:20px 16px 12px}.lg-practice .lp-game-rail .lg-button[data-lp-change]{font-size:13px;min-height:50px;padding:9px 7px}.lg-practice .lp-game-rail .lg-button[data-lp-change]>span{font-size:21px}.lg-practice .lp-progress-card{grid-template-columns:42px minmax(0,1fr);padding:9px;gap:5px}.lg-practice .lp-progress-card>img{width:42px;height:48px}.lg-practice .lp-progress-figures{font-size:25px;gap:4px}.lg-practice .lp-streak-stars{font-size:20px;gap:5px}.lg-practice .lp-solve--written{grid-template-columns:1fr;max-width:none}.lg-practice .lp-written-tools{position:static;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.lg-practice .lp-written-tools .lp-notes-panel{--ln-height:240px}.lg-practice .lp-solve--written .lp-final-answer{grid-template-columns:1fr}}
@media(max-width:620px){.lg-practice .lp-modes{grid-template-columns:1fr;max-width:460px}.lg-practice .lp-training-header{padding:16px;gap:15px;margin-bottom:20px}.lg-practice .lp-training-header .lp-settings{grid-template-columns:1fr 1fr;gap:11px}.lg-practice .lp-training-header .lp-settings>label:last-child{grid-column:1 / -1}.lg-practice .lp-mode>.lp-mode-copy{min-height:112px}.lg-practice .lp-mode-selected{font-size:12px;padding:6px 8px;bottom:8px}.lg-practice .lp-reading-row{grid-template-columns:1fr}.lg-practice .lp-reading-row .lp-problem{grid-row:1}.lg-practice .lp-game-rail{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px}.lg-practice .lp-progress-card{grid-template-columns:42px minmax(0,1fr);padding:7px 9px;border-bottom-width:3px;gap:3px 5px}.lg-practice .lp-progress-card>img{grid-row:1 / span 2;height:42px}.lg-practice .lp-progress-figures{font-size:24px}.lg-practice .lp-progress-caption{font-size:8px}.lg-practice .lp-streak-stars{grid-column:1;margin:0;font-size:12px;gap:1px}.lg-practice .lp-streak{grid-column:2;font-size:10px;text-align:center}.lg-practice .lp-accuracy{position:absolute;bottom:5px;right:5px;font-size:8px;padding:2px 4px;transform:translateY(1px)}.lg-practice .lp-streak{padding-right:25px}.lg-practice .lp-game-rail .lg-button[data-lp-change]{min-height:54px;font-size:14px}.lg-practice .lp-solve--mental,.lg-practice .lp-solve--calculator{grid-template-columns:1fr;max-width:480px;margin-inline:auto}.lg-practice .lp-solve--mental .lp-notes-panel,.lg-practice .lp-solve--calculator .lp-notes-panel{grid-column:1;--ln-height:270px}.lg-practice .lp-solve--mental .lp-control-station{max-width:none}.lg-practice .lp-written-tools{grid-template-columns:1fr}.lg-practice .lp-written-tools .lp-notes-panel{--ln-height:260px}.lg-practice .lp-playarea{margin-top:17px}}
@media(max-width:400px){.lg-practice .lp-training-header .lp-heading h2{font-size:29px}.lg-practice .lp-progress-figures{font-size:22px}.lg-practice .lp-game-rail{gap:9px}.lg-practice .lp-game-rail .lg-button[data-lp-change]{font-size:12px;padding-inline:5px}.lg-practice .lp-game-rail .lg-button[data-lp-change]>span{font-size:19px}.lg-practice .lp-reading-row .lp-problem{padding:18px 14px 11px}}
@media(min-width:961px) and (max-width:1180px){.lg-practice .lp-solve--mental{grid-template-columns:220px 310px minmax(220px,1fr)}}
.lg-practice .lp-solve--written .lp-written-tools .lp-notes-panel{--ln-height:560px}
@media(max-width:1100px){.lg-practice .lp-solve--written .lp-written-tools .lp-notes-panel{--ln-height:440px}}
@media(max-width:700px){.lg-practice .lp-solve--written .lp-written-tools .lp-notes-panel{--ln-height:350px}}
/* 3.5: a game banner and compact workspaces with the answer at the right. */
.lg-practice .lp-training-header{position:relative;grid-template-columns:minmax(260px,.85fr) minmax(0,1.7fr);padding:16px 21px;border:2px solid #e3c37f;border-bottom:6px solid #80623a;background:linear-gradient(115deg,#19465b,#235b6b 52%,#153e56);box-shadow:inset 0 2px #a8d5d03b,0 7px 18px #0925374d;color:#fff1ca;overflow:hidden}
.lg-practice .lp-training-header::after{content:"";position:absolute;right:-30px;top:-50px;width:210px;height:160px;transform:rotate(35deg);background:#d7ecd309;pointer-events:none}
.lg-practice .lp-training-header .lp-heading{display:flex;align-items:center;justify-content:flex-start;gap:13px;min-width:0;text-align:left}
.lg-practice .lp-title-emblem{display:block;width:64px;height:64px;flex:0 0 64px;object-fit:contain;filter:drop-shadow(0 3px 3px #09263877)}
.lg-practice .lp-training-header .lp-heading h2{font:700 39px/.96 LigaGame,system-ui,sans-serif;color:#ffe4a1;text-align:left;text-shadow:0 2px #fff0bd,0 4px #8e602d,0 6px #17394b;letter-spacing:-.02em}
.lg-practice .lp-training-header .lp-heading h2>span{display:block;margin-bottom:7px;font-size:17px;line-height:1;color:#d6eef0;text-shadow:0 2px #163d50;font-weight:600;letter-spacing:.09em;text-transform:uppercase}
.lg-practice .lp-training-header .lp-heading h2>strong{font:inherit;text-transform:uppercase}
.lg-practice .lp-training-header .lp-settings .lg-field>span{color:#d3e9e7;font-size:11px;letter-spacing:.04em}.lg-practice .lp-training-header .lp-settings select{border-color:#e5cd8e;border-bottom:3px solid #9c8b64;border-radius:10px;min-height:46px;box-shadow:inset 0 2px #fff;background:#fffcf2;color:#264d59}
.lg-practice .lp-session{padding-top:16px;padding-bottom:22px}.lg-practice .lp-reading-row{gap:19px}.lg-practice .lp-reading-row .lp-problem{padding-top:19px;padding-bottom:11px}.lg-practice .lp-playarea{margin-top:17px}
.lg-practice .lp-solve--calculator{grid-template-columns:280px minmax(280px,1fr) 240px;gap:20px;max-width:none}
.lg-practice .lp-solve--calculator .lp-notes-panel{grid-column:auto;--ln-height:300px}
.lg-practice .lp-solve--calculator .lp-workspace{padding:15px;position:sticky;top:10px}
.lg-practice .lp-solve--calculator .lp-answer-console>h3{font-size:23px;margin-bottom:12px!important}
.lg-practice .lp-solve--calculator [data-lp-check]{font-size:17px;min-height:48px;padding:10px 8px}
.lg-practice .lp-solve--written .lp-written-tools .lp-notes-panel{--ln-height:320px}
@media(min-width:1200px){.lg-practice .lp-solve--written{grid-template-columns:minmax(650px,1fr) minmax(245px,.45fr) 185px;gap:12px}.lg-practice .lp-solve--written .lp-written-tools{display:contents}.lg-practice .lp-solve--written .lp-written-tools>.lp-notes-panel{grid-column:2;position:sticky;top:10px}.lg-practice .lp-solve--written .lp-written-tools>.lp-answer-console{grid-column:3;position:sticky;top:10px;padding:12px}.lg-shell .lg-practice .lp-solve--written .lp-final-answer{grid-template-columns:1fr;gap:12px}.lg-practice .lp-solve--written [data-lp-check]{font-size:16px}}
@media(min-width:1320px){.lg-practice .lp-solve--written{grid-template-columns:minmax(650px,1fr) minmax(290px,.45fr) 220px;gap:18px}.lg-practice .lp-solve--written [data-lp-check]{font-size:18px}}
@media(max-width:1180px){.lg-practice .lp-training-header{grid-template-columns:minmax(230px,.8fr) minmax(0,1.7fr);gap:18px;padding:15px 17px}.lg-practice .lp-training-header .lp-heading h2{font-size:35px}.lg-practice .lp-title-emblem{width:57px;height:57px;flex-basis:57px}.lg-practice .lp-solve--calculator{grid-template-columns:265px minmax(250px,1fr) 210px;gap:16px}.lg-practice .lp-solve--calculator .lp-workspace{padding:13px}.lg-practice .lp-solve--calculator .lp-answer-console>h3{font-size:21px}}
@media(max-width:960px){.lg-practice .lp-training-header{grid-template-columns:1fr}.lg-practice .lp-training-header .lp-heading{justify-content:center}.lg-practice .lp-solve--calculator{grid-template-columns:265px minmax(260px,1fr);gap:17px}.lg-practice .lp-solve--calculator .lp-notes-panel{grid-column:2}.lg-practice .lp-solve--calculator .lp-workspace{grid-column:1 / -1;position:static}.lg-shell .lg-practice .lp-solve--calculator .lp-final-answer{grid-template-columns:1fr 1fr}.lg-practice .lp-solve--calculator .lp-answer-console{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:0 17px;align-items:end}.lg-practice .lp-solve--calculator .lp-answer-console>h3{grid-column:1 / -1}.lg-practice .lp-solve--calculator [data-lp-check]{margin:0}.lg-practice .lp-solve--calculator [data-lp-answer-error]{grid-column:1 / -1}}
@media(max-width:700px){.lg-practice .lp-session{padding-top:14px}.lg-practice .lp-reading-row{gap:13px}.lg-practice .lp-solve--written .lp-written-tools .lp-notes-panel{--ln-height:320px}.lg-practice .lp-training-header .lp-heading h2{font-size:36px}}
@media(max-width:620px){.lg-practice .lp-solve--calculator{grid-template-columns:1fr;max-width:480px}.lg-practice .lp-solve--calculator .lp-notes-panel,.lg-practice .lp-solve--calculator .lp-workspace{grid-column:1}.lg-practice .lp-solve--calculator .lp-answer-console{display:block}.lg-practice .lp-solve--calculator [data-lp-check]{margin-top:12px}.lg-practice .lp-training-header{padding:16px;gap:19px}.lg-practice .lp-training-header .lp-heading h2{font-size:38px}.lg-practice .lp-title-emblem{width:62px;height:62px;flex-basis:62px}}
@media(min-width:1200px) and (max-height:850px){.lg-practice[data-lp-mode=written] .lp-session{padding-top:10px}.lg-practice[data-lp-mode=written] .lp-game-rail{gap:9px}.lg-practice[data-lp-mode=written] .lp-game-rail .lg-button[data-lp-change]{min-height:50px;padding-block:6px}.lg-practice[data-lp-mode=written] .lp-progress-card{padding-block:7px;row-gap:4px}.lg-practice[data-lp-mode=written] .lp-streak-stars{font-size:20px;margin-top:2px}.lg-practice[data-lp-mode=written] .lp-playarea{margin-top:14px}}
.lg-practice .lp-game-rail .lg-button[data-lp-change]{gap:8px}
.lg-practice .lp-game-rail .lg-button[data-lp-change]>.lp-change-art{display:block;width:43px;height:32px;flex:0 0 43px;object-fit:cover;border:1px solid #fff0bc;border-radius:8px;box-shadow:0 2px 4px #59472533}
.lg-practice .lp-game-rail .lg-button[data-lp-change]>.lp-change-label{min-width:0;font:inherit;line-height:1.15;text-align:center;overflow-wrap:normal}
@media(max-width:960px){.lg-practice .lp-game-rail .lg-button[data-lp-change]{gap:7px}.lg-practice .lp-game-rail .lg-button[data-lp-change]>.lp-change-art{width:37px;height:29px;flex-basis:37px}}
@media(max-width:700px){.lg-practice .lp-game-rail .lg-button[data-lp-change]{gap:6px}.lg-practice .lp-game-rail .lg-button[data-lp-change]>.lp-change-art{width:34px;height:27px;flex-basis:34px}}
@media(max-width:400px){.lg-practice .lp-game-rail .lg-button[data-lp-change]>.lp-change-art{width:30px;height:24px;flex-basis:30px}}
@media print{.lg-practice{overflow:visible}.lg-practice .lp-control-station,.lg-practice .lp-session-strip,.lg-practice .lg-reading-actions,.lg-practice [data-lp-check],.lg-practice [data-lp-next]{display:none!important}}
