@font-face{font-family:'Nunito';font-style:normal;font-weight:200 1000;font-display:swap;src:url('/preschool/flash/fonts/Nunito.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('/preschool/flash/fonts/DMSans.ttf') format('truetype')}
:root{color-scheme:dark;font-family:'DM Sans',sans-serif;color:#f1f1e9;background:#121c32;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100svh;background:radial-gradient(ellipse at 50% 65%,#3348666b,transparent 64%)}button,select,input{font:inherit}button,a,select,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid #f9d65e;outline-offset:5px}.skip-link{position:fixed;left:20px;top:-80px;z-index:100;background:#fff3c2;color:#17233a;padding:12px}.skip-link:focus{top:15px}.header,main,footer{position:relative;z-index:2}.header{max-width:1240px;margin:auto;padding:28px 35px;display:flex;align-items:center;gap:18px}.brand{font:900 31px/1 'Nunito',sans-serif;background:#f8d766;color:#172338;width:43px;height:43px;border-radius:13px;display:grid;place-content:center;padding-bottom:4px}.back{font-size:12px;color:#c5d0e1}.motion{margin-left:auto;border:1px solid #61718a;color:#c8d3e5;border-radius:20px;background:#14203888;padding:8px 13px;font-size:11px}.weather{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}.clouds{position:absolute;top:0;width:100%;height:39vh;min-height:250px;opacity:.8}.rain{position:absolute;inset:-120px -50px;transform:rotate(12deg)}.drop{position:absolute;left:var(--x);top:-15%;height:var(--length);width:1px;background:linear-gradient(transparent,#9fb6d8);opacity:var(--opacity);animation:rainfall var(--duration) linear var(--delay) infinite}.wind{position:absolute;width:240px;fill:none;stroke:#a1b8d1;stroke-width:1.8;stroke-linecap:round;opacity:.24;animation:wind 12s ease-in-out infinite}.wind-one{left:-3%;top:44%;transform:rotate(-8deg)}.wind-two{right:-4%;top:75%;width:290px;animation-delay:-7s;animation-direction:reverse}.little-cloud{position:absolute;width:135px;right:7%;top:21%;transform:rotate(9deg);animation:cloud-bob 9s ease-in-out infinite}.intro{text-align:center;padding:6px 20px 28px}.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:600;color:#abbdd7;margin:0 0 13px}h1{font:900 clamp(54px,8vw,78px)/1.08 'Nunito',sans-serif;letter-spacing:-.065em;margin:0;color:#f8f4df;position:relative}.title-bolt{display:inline-block;font-size:.82em;color:#f8d460;transform:rotate(10deg);margin:0 -.055em 0 .02em}.title-dot{color:#f8d460}.intro>p:last-child{color:#b3c3d9;font-size:14px;margin:12px 0 0}.practice-layout{max-width:960px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 258px;gap:32px;padding:0 28px}.practice{min-width:0}.card-topline{display:flex;justify-content:space-between;gap:10px;padding:0 10px 13px;color:#aebfd7;font-size:10px;letter-spacing:.14em}.card-topline>span:last-child{letter-spacing:0;font-size:11px}.card-topline>span:last-child>span:nth-child(2){color:#f8d460;font-size:17px}.flash-card{width:100%;min-height:344px;padding:30px 24px 23px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:22px;background:#f7f5e9;color:#25314a;border:2px solid #fffbed;border-radius:25px;box-shadow:0 15px 0 #080f2070,0 22px 65px #0004;text-align:center;touch-action:manipulation;transition:background .25s,border-color .25s,box-shadow .25s;position:relative}.flash-card:hover{border-color:#f7d86b}.flash-card:active{transform:translateY(2px)}.flash-card.fast{background:#ffe17b;border-color:#fff2ab;box-shadow:0 15px 0 #080f2070,0 0 60px #ffd65630}.card-content{display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-width:0}.problem{display:flex;justify-content:center;align-items:center;gap:clamp(12px,3vw,26px);width:100%;font:900 clamp(50px,6vw,78px)/1.15 'Nunito',sans-serif;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.operand{display:flex;flex-direction:column;align-items:center;gap:15px;flex:1;min-width:0}.operator{color:#687186;font-size:.72em;padding-bottom:4px}.bolts{display:grid;grid-template-columns:repeat(5,13px);gap:4px 3px;justify-content:center}.bolt{display:block;width:13px;height:18px;fill:#b47d16}.zero-bolts{font:500 11px/1.5 'DM Sans',sans-serif;color:#697486;letter-spacing:0}.has-aid .problem{align-items:flex-start;font-size:62px}.has-aid .operator{padding-top:8px}.has-aid{min-height:365px}.mini-problem{font:700 20px/1.2 'Nunito',sans-serif;color:#697388;letter-spacing:.015em}.answer{font:900 100px/1 'Nunito',sans-serif;letter-spacing:-.05em}.answer-bolts{grid-template-columns:repeat(10,13px)}.card-prompt{font-size:11px;color:#667186;letter-spacing:.025em;display:flex;justify-content:center;align-items:center;gap:14px}.card-prompt>span{font-size:18px}.fast .card-prompt,.fast .mini-problem{color:#69511c}.spark-badge{position:absolute;top:18px;right:19px;color:#846117;font-size:11px;display:flex;align-items:center;gap:5px}.spark-badge svg{width:14px;height:20px;fill:currentColor}.tap-help{font-size:11px;text-align:center;color:#b6c4d8;margin:24px 0 10px;line-height:1.65}.status{margin:0;text-align:center;color:#f1d67f;font-size:12px;min-height:20px}.settings{background:#17243cc7;border:1px solid #43526b;border-radius:18px;padding:22px;margin-top:28px;align-self:start;box-shadow:0 12px 40px #0001}.settings>.eyebrow{font-size:9px;margin-bottom:22px}fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}legend{font-size:12px;color:#e0e6f0;margin-bottom:11px}.operations{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.operations button{font:700 24px/1 'Nunito',sans-serif;color:#c8d3e4;border:1px solid #53627b;background:#29374d;border-radius:10px;height:44px}.operations button[aria-pressed=true]{color:#26314a;background:#f8d66d;border-color:#f8d66d}.select-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;margin:18px 0;color:#d4deec}select{border:1px solid #53627b;border-radius:7px;background:#24334c;padding:7px 6px;color:#edf1f7;font-size:11px;max-width:112px}.visual-option{display:flex;align-items:center;gap:10px;position:relative;padding:20px 0;border-block:1px solid #40506a;cursor:pointer}.visual-option strong{font-size:12px;font-weight:500;display:block}.visual-option small{display:block;color:#9eb0ca;font-size:10px;margin-top:5px}.visual-option input{position:absolute;right:0;opacity:0;width:38px;height:30px;cursor:pointer}.switch{width:35px;height:21px;background:#53617a;border:1px solid #6d7d96;border-radius:15px;margin-left:auto;flex-shrink:0}.switch:after{content:'';display:block;width:13px;height:13px;margin:3px;border-radius:50%;background:#d0dbeb;transition:transform .2s}.visual-option input:checked+.switch{background:#f4d372;border-color:#f4d372}.visual-option input:checked+.switch:after{transform:translateX(13px);background:#293853}.visual-option input:focus-visible+.switch{outline:3px solid #f9d65e;outline-offset:4px}.settings-note{font-size:10px;line-height:1.7;color:#9eafc8;margin:0}.practice-count{display:flex;align-items:center;gap:13px;border-top:1px solid #40506a;margin-top:18px;padding-top:17px}.practice-count>strong{font:800 31px/1 'Nunito',sans-serif;color:#f1d47c}.practice-count>span{font-size:10px;color:#d0dbeb;line-height:1.8}.practice-count small{font-size:9px;color:#92a7c6}footer{display:flex;justify-content:space-between;gap:20px;max-width:960px;padding:34px 28px 25px;margin:auto;color:#8da0bd;font-size:10px}footer a:hover{color:#f8d66d}.strike{position:fixed;inset:0;pointer-events:none;z-index:8;visibility:hidden}.strike svg{position:absolute;width:100%;height:100%;fill:none;stroke-linejoin:miter}.strike-glow{stroke:#f7c95e;stroke-width:18;filter:blur(8px)}.strike-core{stroke:#fff6ca;stroke-width:3}.sky-flash{position:absolute;inset:0;background:#edf4ff;opacity:.1}.strike.active{visibility:visible;animation:lightning .5s ease-out both}.noscript{text-align:center;background:#f5d570;color:#172338;padding:20px}.motion-paused .drop,.motion-paused .wind,.motion-paused .little-cloud{animation-play-state:paused}.motion-paused .rain{opacity:.3}.motion-paused .strike.active{display:none}@keyframes rainfall{to{transform:translateY(130vh)}}@keyframes wind{0%,100%{translate:-20px 0;opacity:.08}50%{translate:25px -8px;opacity:.28}}@keyframes cloud-bob{50%{translate:10px -10px;rotate:-3deg}}@keyframes lightning{0%{opacity:0}12%{opacity:1}100%{opacity:0}}
@media(min-width:1200px){.practice-layout{gap:46px}.intro{padding-bottom:34px}.header{padding-block:31px}.little-cloud{right:10%}}
@media(max-width:700px){.header{padding:20px;gap:12px}.brand{width:36px;height:36px;font-size:27px;border-radius:10px}.back{font-size:10px}.motion{font-size:10px;padding:7px 10px}.intro{padding:8px 20px 27px}.intro>p:last-child{font-size:12px}.intro>.eyebrow{font-size:8px}.practice-layout{grid-template-columns:1fr;padding:0 20px;gap:23px;max-width:500px}.flash-card{min-height:300px;padding:25px 20px 20px}.problem{font-size:62px;gap:13px}.answer{font-size:88px}.settings{margin-top:0;padding:21px}.settings>.eyebrow{margin-bottom:17px}.operations button{height:46px}.tap-help{font-size:10px;margin-top:22px}.card-topline{font-size:9px}.settings-note{font-size:11px}.select-label{font-size:12px}.visual-option strong{font-size:13px}.little-cloud{width:85px;right:-14px;top:15%}.wind-one{top:48%;left:-120px}.wind-two{top:85%;right:-100px}footer{font-size:9px;padding:27px 20px;max-width:500px}.bolts{grid-template-columns:repeat(5,11px);gap:4px 2px}.bolt{width:11px;height:16px}.answer-bolts{grid-template-columns:repeat(10,11px)}.has-aid .problem{font-size:53px}.has-aid{min-height:340px}.has-aid .operator{padding-top:6px}.intro h1{font-size:60px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.strike.active{display:none}.rain{opacity:.2}}

/* Traditional, right-aligned flash cards with room to count beside each row. */

.intro .title-bolt{width:.49em;height:.83em;fill:#f8d460;transform:none;font-size:1em;margin:0 .025em 0 .035em;vertical-align:-.015em;overflow:visible}
.flash-card,.flash-card.has-aid{height:660px;min-height:660px;padding-top:42px}
.flash-card .problem{position:relative;display:grid;grid-template-columns:.45em 2.1em;grid-template-rows:184px 184px 5px 126px;gap:12px 18px;align-items:center;justify-content:center;width:100%;font-size:120px;line-height:1;letter-spacing:0;margin:auto}
.flash-card.has-aid .problem{grid-template-columns:.42em 1.45em auto;font-size:104px;align-items:center}
.problem .operand-number{display:block;text-align:right;font-variant-numeric:tabular-nums;letter-spacing:0}
.flash-card .problem .operator{display:block;padding:0;align-self:center;font-size:.65em;line-height:1;color:#687186}
.sum-line{grid-column:1/-1;display:block;height:5px;background:none;margin:0}
.sum-rule{position:absolute;left:0;right:0;display:block;height:5px;border-radius:3px;background:#7f8796}
.problem .answer{font:inherit;letter-spacing:0}
.flash-card .bolts{grid-template-columns:repeat(5,32px);gap:5px 4px;align-content:center;justify-content:start;margin-left:4px}
.flash-card .bolts .bolt{width:32px;height:42px}
.flash-card .spark-badge .bolt{width:14px;height:20px}
.flash-card .zero-bolts{grid-column:1/-1;font-size:14px;text-align:left}
.visual-option:has(input:disabled){cursor:default}
.visual-option input:disabled{cursor:default}
.visual-option input:disabled+.switch{opacity:.35}
.visual-option:has(input:disabled) strong{color:#a2b1c7}
.practice-layout.fixed-mode{grid-template-columns:172px minmax(0,1fr) 258px;max-width:1140px;gap:24px}
.number-picker{align-self:start;margin-top:28px;background:#17243cc7;border:1px solid #43526b;border-radius:18px;padding:15px 12px}
.number-picker[hidden]{display:none}
.number-picker .eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:8px}
.number-picker>p:not(.eyebrow){font-size:10px;color:#b3c3d9;line-height:1.5;margin:0 0 14px}
.number-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.number-choices button{min-height:44px;padding:0;border:1px solid #53627b;border-radius:8px;background:#29374d;color:#d9e2ef;font:800 23px/1 'Nunito',sans-serif}
.number-choices button[aria-pressed=true]{color:#26314a;background:#f8d66d;border-color:#f8d66d}
@media(min-width:701px) and (max-width:1100px){
 .practice-layout.fixed-mode{grid-template-columns:172px minmax(0,1fr);max-width:850px}
 .fixed-mode .settings{grid-column:2;margin-top:0}
}
@media(min-width:701px) and (max-width:900px){
 .practice-layout:not(.fixed-mode){grid-template-columns:1fr;max-width:650px}
 .practice-layout:not(.fixed-mode) .settings{margin-top:0}
}
@media(max-width:700px){
 .flash-card,.flash-card.has-aid{height:540px;min-height:540px;padding:35px 16px 20px}
 .flash-card .problem{font-size:94px;grid-template-rows:142px 142px 4px 110px;gap:10px 12px}
 .flash-card.has-aid .problem{font-size:78px;grid-template-columns:.42em 1.45em auto;gap:10px 9px}
 .flash-card .bolts{grid-template-columns:repeat(5,23px);gap:4px 3px;margin-left:2px}
 .flash-card .bolts .bolt{width:23px;height:32px}
 .sum-line,.sum-rule{height:4px}
 .flash-card .zero-bolts{font-size:12px}
 .practice-layout.fixed-mode{grid-template-columns:1fr;max-width:500px;gap:23px}
 .number-picker{margin-top:0;padding:17px}
 .number-choices{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(max-width:360px){
 .flash-card .problem{font-size:86px}
 .flash-card.has-aid .problem{font-size:72px;grid-template-columns:.35em 1.25em auto;gap:10px 6px}
 .flash-card .bolts{grid-template-columns:repeat(5,22px);gap:4px 2px}
 .flash-card .bolts .bolt{width:22px;height:32px}
}
