.logic-lobby,.logic-studio{--logic-accent:#378b88;padding-top:44px;padding-bottom:60px}.logic-lobby-top,.logic-studio-header{justify-content:space-between;align-items:center;gap:24px;display:flex}.logic-lobby-top h1{letter-spacing:-.045em;margin:12px 0;font-size:clamp(34px,4vw,54px)}.logic-lobby p,.logic-studio p{color:#686773;line-height:1.65}.logic-paths{background:#edece4;border:1px solid #deded1;border-radius:22px;justify-content:space-between;align-items:center;gap:24px;margin:32px 0;padding:22px 26px;display:flex}.logic-paths p{margin:6px 0 0;font-size:14px}.logic-paths [role=group]{background:#faf8f3;border-radius:14px;gap:6px;padding:5px;display:flex}.logic-paths button{text-transform:capitalize;color:#34313e;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:12px 18px}.logic-paths button[aria-pressed=true]{color:#fff;background:#315e5b;box-shadow:0 2px 5px #315e5b22}.logic-workshops{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.logic-workshops>button{text-align:left;color:#30313d;cursor:pointer;background:#fffdf8;border:1px solid #e3dfd5;border-radius:24px;flex-direction:column;align-items:flex-start;padding:26px;transition:transform .15s,border-color .15s;display:flex}.logic-workshops>button:hover{border-color:var(--logic-accent);transform:translateY(-3px)}.logic-workshop-art{width:120px;height:108px;color:var(--logic-accent);background:radial-gradient(ellipse, color-mix(in srgb, var(--logic-accent) 23%, transparent), transparent 70%);text-shadow:0 0 26px color-mix(in srgb, var(--logic-accent) 25%, transparent);border-radius:28px;justify-content:center;align-self:center;align-items:center;margin:4px 0 30px;font-size:74px;display:flex}.logic-workshops small{letter-spacing:.16em;color:var(--logic-accent);font-size:10px;font-weight:700}.logic-workshops h2{letter-spacing:-.035em;margin:10px 0 0;font-size:25px}.logic-workshops p{margin:8px 0 24px;font-size:14px}.logic-open{justify-content:space-between;align-items:center;width:100%;margin-top:auto;font-size:14px;font-weight:600;display:flex}.logic-quiet-note{color:#696571;justify-content:center;align-items:center;gap:10px;margin:28px 0 0;font-size:12px;display:flex}.logic-studio-header h1,.logic-studio-header h2{margin:7px 0;font-size:30px}.logic-studio-header p{margin:0;font-size:13px}.logic-step-label{text-transform:capitalize;color:#66606b;font-size:13px}.logic-options{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:22px;padding:26px 0;font-size:13px;display:flex}.logic-options label{align-items:center;gap:8px;min-height:32px;display:flex}.logic-options input{width:17px;height:17px;accent-color:var(--logic-accent)}.logic-challenge-copy{text-align:center;max-width:760px;margin:12px auto 28px}.logic-challenge-copy h2{letter-spacing:-.025em;margin:0 0 8px;font-size:clamp(25px,3vw,37px)}.logic-challenge-copy h2:focus{outline:none}.logic-challenge-copy p{margin:0;font-size:15px}.logic-board-surface{background:#fffdf8;border:1px solid #e4e0d7;border-radius:28px;padding:clamp(18px,3vw,36px);box-shadow:0 10px 36px #40334105}.logic-solved .logic-board-surface{border-color:var(--logic-accent);box-shadow:0 0 45px color-mix(in srgb, var(--logic-accent) 25%, transparent)}.logic-board-fieldset{border:0;min-width:0;margin:0;padding:0}.logic-board-fieldset button{font:inherit;color:inherit;cursor:pointer;min-height:44px}.logic-board-fieldset button:disabled{cursor:default}.logic-board-fieldset:disabled{opacity:1}.logic-board-fieldset button:focus-visible,.logic-workshops button:focus-visible,.logic-paths button:focus-visible{outline-offset:4px;outline:3px solid #535199}.logic-board-fieldset button[aria-pressed=true]{outline:2px solid var(--logic-accent);outline-offset:2px}.logic-instruction,.logic-selection{text-align:center;margin:22px 0;font-size:14px}.logic-selection{font-weight:600;color:#494553!important}.logic-measuring{max-width:760px;margin:10px auto}.logic-measuring>span{margin:16px 0 10px;font-size:13px;display:block}.logic-target-track{background:repeating-linear-gradient(90deg, transparent, transparent calc(100% / var(--units) - 1px), #b0abb4 calc(100% / var(--units) - 1px), #b0abb4 calc(100% / var(--units)));border:2px dashed #87818b;border-radius:6px;height:34px}.logic-train-track{border-bottom:2px solid #dad5ca;flex-wrap:nowrap;align-items:center;gap:0;min-height:70px;display:flex}.logic-train-track p{font-size:14px;font-style:italic}.logic-rod{border:1px solid #6b627a55;border-radius:6px;flex-shrink:0;height:46px;font-weight:700!important}.logic-rod-tray{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;max-width:820px;margin:auto;display:flex}.logic-choice-row{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:20px;display:flex}.logic-choice-row>button{text-transform:capitalize;background:#f5f0e7;border:1px solid #d6d1c8;border-radius:16px;justify-content:center;align-items:center;gap:12px;min-width:100px;padding:14px 20px;display:flex}.logic-choice-row .logic-fraction-choice{flex-direction:column;gap:6px;min-width:130px}.logic-fraction-choice strong{font-size:32px}.logic-fraction-choice span{font-size:13px}.logic-fraction-board{justify-content:center;align-items:center;gap:48px;display:flex}.logic-fraction-board svg{flex-shrink:0;width:min(300px,48%)}.logic-fraction-board h3{margin:14px 0;font-size:28px}.logic-fraction-board p{max-width:280px;font-size:14px}.logic-piece-list{flex-wrap:wrap;gap:8px;display:flex}.logic-piece-list button{background:#eee4f4;border:1px solid #c9b7d6;border-radius:10px;min-width:60px}.logic-tile-shape{background:currentColor;flex-shrink:0;width:28px;height:28px;display:inline-block}.logic-tile-shape.triangle{clip-path:polygon(50% 0,100% 100%,0 100%)}.logic-tile-shape.circle{border-radius:50%}.logic-tile-shape.square{border-radius:3px}.logic-sort-tiles{grid-template-columns:repeat(3,1fr);gap:14px;max-width:740px;margin:auto;display:grid}.logic-sort-tile{background:#faf5eb;border:1px solid #d8d3c8;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;display:flex}.logic-sort-tile small{color:#67636e;width:100%;font-size:11px}.logic-sort-tile span:not(.logic-tile-shape){font-size:12px}.logic-sort-tile.coral .logic-tile-shape{color:#c75269}.logic-sort-tile.blue .logic-tile-shape{color:#5083c3}.logic-sort-tile.gold .logic-tile-shape{color:#ae8b22}.logic-sort-zones{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.logic-sort-zones button{background:#ede7f4;border:1px solid #bbb3cb;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:20px 12px;display:flex}.logic-sort-zones button:nth-child(2){background:#e2eee6;border-color:#9eb5a5}.logic-sort-zones span{font-size:12px;line-height:1.5}.logic-sort-zones small{font-size:11px}.logic-jump-trail{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;min-height:80px;display:flex}.logic-jump-trail b{background:#f3dfe9;border-radius:50%;justify-content:center;align-items:center;min-width:45px;height:45px;padding:8px;display:inline-flex}.logic-number-bank{grid-template-columns:repeat(10,1fr);gap:8px;max-width:780px;margin:auto;display:grid}.logic-number-bank button{aspect-ratio:1;background:#f4edf3;border:1px solid #dbd4de;border-radius:10px}.logic-number-bank button[aria-pressed=true]{background:#dab7ca}.logic-pattern-sequence{flex-wrap:wrap;justify-content:center;gap:9px;margin:25px auto 35px;display:flex}.logic-pattern-sequence>div{flex-direction:column;align-items:center;gap:10px;display:flex}.logic-pattern-sequence>div>span{color:#517db0;background:#e7edf4;border-radius:11px;justify-content:center;align-items:center;width:49px;height:60px;font-size:32px;display:flex}.logic-pattern-sequence small{color:#68636b}.logic-pattern-sequence .logic-pattern-missing>span{background:0 0;border:2px dashed #68788e}.logic-line-scroll{padding:30px 8px 8px;overflow-x:auto}.logic-number-line{min-width:580px;margin:15px auto 0;display:flex}.logic-number-line button{background:0 0;border:0;flex-direction:column;flex:1;align-items:center;min-height:80px;padding:0;display:flex;position:relative;font-size:14px!important}.logic-number-line button:before{content:"";border-top:3px solid #958991;position:absolute;top:9px;left:0;right:0}.logic-number-line button:first-child:before{left:50%}.logic-number-line button:last-child:before{right:50%}.logic-line-tick{z-index:1;border-left:2px solid #8b8089;height:22px;margin-bottom:20px}.logic-number-line button[aria-pressed=true]{outline:none}.logic-number-line button[aria-pressed=true] .logic-line-tick:before{content:"";background:#ad8141;border-radius:50%;width:18px;height:18px;margin-left:-9px;display:block;position:absolute;top:-16px;box-shadow:0 0 20px #ad814155}.logic-ten-frames{flex-wrap:wrap;justify-content:center;gap:28px;margin:28px auto;display:flex}.logic-ten-frame{border:2px solid #5c6c77;border-radius:7px;grid-template-columns:repeat(5,1fr);width:100%;max-width:360px;display:grid;overflow:hidden}.logic-ten-frame button{aspect-ratio:1;background:#faf8f1;border:1px solid #9eabb2;justify-content:center;align-items:center;min-width:0;padding:9px;display:flex}.logic-counter{aspect-ratio:1;background:#499c9e;border-radius:50%;width:100%;max-width:42px;display:block;box-shadow:inset 0 0 0 2px #387a7f22}.logic-counter.starter{background:#746187}.logic-ten-frame button[aria-pressed=true]{outline:none}.logic-ten-frame button:focus-visible{outline-offset:-4px}.logic-array-layout{justify-content:space-evenly;align-items:center;gap:30px;padding:20px 0;display:flex}.logic-array-controls{flex-direction:column;gap:20px;max-width:230px;display:flex}.logic-array-controls label{margin-bottom:8px;font-size:13px;font-weight:600;display:block}.logic-stepper{border:1px solid #d7ccba;border-radius:12px;justify-content:space-between;align-items:center;display:flex;overflow:hidden}.logic-stepper button{background:#f3e7d6;border:0;width:50px;font-size:24px}.logic-stepper output{padding:0 20px;font-size:24px;font-weight:600}.logic-array{gap:12px;min-width:160px;max-width:340px;display:grid}.logic-array .logic-counter{background:#cc945a;width:40px}.logic-shape-grid{gap:5px;width:260px;max-width:100%;margin:24px auto;display:grid}.logic-shape-grid.mirror{gap:6px;width:420px}.logic-shape-grid button{aspect-ratio:1;background:0 0;border:1px dashed #c2bbcc;border-radius:5px;min-width:0;min-height:0;padding:9px}.logic-shape-grid button.allowed{background:#f3edf9;border:1px solid #aba0bb}.logic-shape-grid button.outside{visibility:hidden}.logic-shape-grid button.filled{background:#c8b4e4;border-color:#8c73aa;outline:none}.logic-shape-grid button.filled span{aspect-ratio:1;opacity:.4;background:#8471a8;border-radius:3px;display:block}.logic-shape-grid button.mirror-edge{border-right:4px solid #cc7463}.logic-shape-grid button:disabled{opacity:1}.logic-feedback{text-align:center;min-height:65px;margin:24px 0;line-height:1.6}.logic-feedback strong{color:#54505c;justify-content:center;align-items:center;gap:8px;display:flex}.logic-feedback p{margin:8px 0;font-size:14px}.logic-feedback small{color:#6d6873;max-width:650px;margin:12px auto 0;font-size:12px;display:block}.logic-feedback.success strong{color:#396c58}.logic-toolbar{border-top:1px solid #e3ded4;justify-content:space-between;align-items:center;gap:14px;padding-top:22px;display:flex}.logic-toolbar>div{align-items:center;gap:10px;display:flex}.logic-plain .logic-board-surface{filter:grayscale()}.logic-finished{text-align:center;max-width:750px;padding:85px 24px}.logic-finished>svg{color:#518b7b;margin-bottom:24px}.logic-finished h1{letter-spacing:-.04em;font-size:46px}.logic-finished p{color:#6b6670;font-size:17px;line-height:1.7}.logic-finished blockquote{margin:32px auto;font-size:22px;line-height:1.6}.logic-finished>a,.logic-finished>button{margin:8px}.logic-options .learn-text-link{margin:0}.logic-board-fieldset button:disabled:not([aria-pressed=true]){opacity:.8}.logic-board-fieldset:disabled button{opacity:1}@media (max-width:850px){.logic-workshops{grid-template-columns:repeat(2,minmax(0,1fr))}.logic-paths{flex-direction:column;align-items:flex-start}.logic-studio-header{flex-wrap:wrap}.logic-studio-header>div{flex:1}.logic-sort-zones{grid-template-columns:repeat(2,1fr)}.logic-toolbar{flex-wrap:wrap}.logic-number-bank{grid-template-columns:repeat(5,1fr)}}@media (max-width:520px){.logic-lobby,.logic-studio{padding-top:28px}.logic-lobby-top{flex-direction:column;align-items:flex-start}.logic-workshops{gap:12px}.logic-workshops>button{border-radius:18px;padding:18px 14px}.logic-workshops h2{font-size:21px}.logic-workshop-art{width:90px;height:75px;margin-bottom:20px;font-size:55px}.logic-workshops p,.logic-open{font-size:12px}.logic-paths{padding:18px}.logic-paths button{padding:12px 14px}.logic-studio-header h1,.logic-studio-header h2{font-size:24px}.logic-studio-header>.learn-secondary{padding:10px;font-size:12px}.logic-step-label{text-align:center;width:100%}.logic-options{justify-content:center;gap:16px}.logic-fraction-board{text-align:center;flex-direction:column;gap:10px}.logic-fraction-board svg{width:190px}.logic-choice-row{gap:10px}.logic-choice-row>button{min-width:70px;padding:12px}.logic-choice-row .logic-fraction-choice{flex:1;min-width:80px}.logic-fraction-choice strong{font-size:26px}.logic-sort-tiles{gap:9px}.logic-sort-tile{text-align:center;flex-direction:column;gap:8px;padding:10px 4px}.logic-sort-tile span:not(.logic-tile-shape){font-size:10px}.logic-sort-zones button{padding:14px 8px}.logic-array-layout{flex-direction:column}.logic-array-controls{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:none;display:grid}.logic-array-controls>.learn-secondary{grid-column:span 2;justify-self:center}.logic-stepper button{width:40px}.logic-stepper output{padding:0 12px}.logic-array{gap:10px;margin-top:15px}.logic-array .logic-counter{width:34px}.logic-toolbar>div{flex-wrap:wrap;justify-content:center;width:100%}.logic-toolbar .learn-primary{justify-content:center;width:100%}.logic-toolbar .learn-secondary{padding:12px}.logic-quiet-note{text-align:center;line-height:1.6}.logic-pattern-sequence{gap:7px}.logic-pattern-sequence>div>span{width:40px}.logic-finished h1{font-size:36px}.logic-shape-grid.mirror{gap:3px}.logic-shape-grid button{padding:6px}}@media (prefers-reduced-motion:reduce){.logic-workshops>button{transition:none}.logic-workshops>button:hover{transform:none}}
