@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap";:root{color:#20262c;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f7fb;font-family:Noto Sans JP,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 80% 0,#fff 0,#f6f8fb 40%,#eef1f5 100%);min-width:320px;min-height:100vh;margin:0}button{font:inherit;cursor:pointer;border:0}.app-shell{min-height:100vh}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f9fafcc7;border-bottom:1px solid #e1e6eb;justify-content:space-between;align-items:center;height:74px;padding:0 42px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{justify-content:center;align-items:center;gap:4px;width:31px;height:25px;display:flex;position:relative}.brand-mark:before{content:"";background:#232b31;border-radius:5px;width:23px;height:3px;position:absolute;top:3px;left:4px;transform:rotate(-10deg)}.brand-mark span{background:#232b31;border-radius:50%;width:5px;height:5px;margin-top:13px}.brand strong{letter-spacing:-.04em;font-family:Manrope;font-size:17px;line-height:18px;display:block}.brand small{color:#84909a;letter-spacing:.08em;font-size:9px;display:block}.top-actions{align-items:center;gap:18px;display:flex}.streak{color:#84909a;align-items:center;gap:6px;font-size:11px;display:flex}.streak svg{color:#f1ae52}.icon-button{color:#8c98a2;background:#fff;border:1px solid #dfe5e9;border-radius:50%;place-items:center;width:33px;height:33px;display:grid}.game-layout{grid-template-columns:190px minmax(500px,690px) 245px;justify-content:center;gap:42px;max-width:1420px;margin:0 auto;padding:45px 42px 70px;display:grid}.level-sidebar{padding-top:26px}.side-label,.action-eyebrow,.insight-heading>div>span,.equation-label>span:first-child,.balance-title{letter-spacing:.17em;color:#a5afb8;font-family:DM Mono,monospace;font-size:9px}.level-list{gap:11px;margin-top:16px;display:grid}.level-button{text-align:left;color:#9ca6ae;background:0 0;border:1px solid #0000;border-radius:14px;grid-template-columns:31px 1fr 17px;align-items:center;gap:8px;width:100%;padding:15px 10px 15px 13px;transition:all .2s;display:grid}.level-button:hover{background:#fff}.level-number{color:#a8b1b8;font:500 15px DM Mono}.level-button.blue.active .level-number{color:#688bc4}.level-button.purple.active .level-number{color:#9875b7}.level-button b,.level-button small{display:block}.level-button b{letter-spacing:.04em;font-size:11px}.level-button small{color:#abb4ba;white-space:nowrap;margin-top:4px;font-size:9px}.active-chevron{color:#95a1a8;transform:rotate(180deg)}.side-note{color:#adb6bd;gap:9px;margin:40px 10px;font-size:10px;line-height:1.7;display:flex}.side-note svg{color:#efbd71;flex:none}.game-content{min-width:0}.game-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.eyebrow{color:#9ea9b0;letter-spacing:.13em;align-items:center;gap:8px;margin:0 0 10px;font:9px DM Mono;display:flex}.live-dot,.balance-dot{background:#9bd7c5;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 4px #e3f4ef}h1{letter-spacing:-.07em;margin:0;font-size:clamp(24px,3vw,32px);font-weight:800;line-height:1.25}.subheading{color:#9aa5ad;margin:8px 0 0;font-size:11px}.problem-count{text-align:right;white-space:nowrap;padding-bottom:3px;font-family:DM Mono}.problem-count span{color:#adb6bc;letter-spacing:.14em;font-size:8px;display:block}.problem-count b{color:#4b5962;font-size:26px;font-weight:400}.problem-count i{color:#aab3b8;margin-left:2px;font-size:10px;font-style:normal}.equation-card{background:linear-gradient(115deg,#f4fbf8,#f8fbfc);border:1px solid #e0e8e9;border-radius:17px;margin-bottom:13px;padding:17px 22px 14px;position:relative;overflow:hidden}.equation-card:after{content:"";border:20px solid #9bd8c929;border-radius:50%;width:170px;height:170px;position:absolute;top:-52px;right:-30px}.shaking{animation:.25s shake}@keyframes shake{30%{transform:translate(-4px)}70%{transform:translate(4px)}}.equation-label{z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.balanced-badge{color:#68a391;letter-spacing:.08em;align-items:center;gap:7px;font:9px DM Mono;display:flex}.balanced-badge .balance-dot{width:5px;height:5px;box-shadow:0 0 0 3px #ddf1eb}.equation-text{z-index:1;letter-spacing:-.09em;color:#34464b;justify-content:center;align-items:center;gap:24px;padding:10px 0 9px;font:500 31px DM Mono;display:flex;position:relative}.equation-text b{color:#9eb3b4;font-weight:400}.equation-progress{z-index:1;background:#e1efeb;border-radius:4px;height:3px;position:relative}.equation-progress span{border-radius:inherit;background:#9bcfc1;height:100%;transition:width .35s;display:block}.step-caption{z-index:1;text-align:center;color:#8ba7a1;margin-top:7px;font-size:9px;position:relative}.balance-card{background:#fff;border:1px solid #e1e6eb;border-radius:17px;padding:17px 22px 13px;box-shadow:0 11px 30px #414f5c0b}.balance-card-top{justify-content:space-between;align-items:center;display:flex}.balance-state{color:#8fa69f;align-items:center;gap:6px;font-size:9px;display:flex}.balance-state .balance-dot{width:5px;height:5px;box-shadow:none}.balance-scene{height:225px;margin-top:4px;position:relative;overflow:hidden}.balance-glow{background:radial-gradient(#e0f3efb3,#0000 70%);width:390px;height:130px;position:absolute;top:31px;left:calc(50% - 195px)}.beam{background:#6d8589;border-radius:99px;width:342px;height:8px;position:absolute;top:91px;left:calc(50% - 171px);transform:rotate(0);box-shadow:0 4px #dfe6e7}.beam:after{content:"";border-radius:inherit;background:#9dc2bd;position:absolute;inset:1px 20px}.beam-cap{z-index:1;background:#f9fcfb;border:3px solid #6d8589;border-radius:50%;width:17px;height:17px;position:absolute;top:-5px}.beam-cap.left{left:-7px}.beam-cap.right{right:-7px}.pan-wrap{z-index:2;width:146px;height:127px;position:absolute;top:17px}.pan-wrap.left{left:calc(50% - 205px)}.pan-wrap.right{right:calc(50% - 205px)}.pan-string{background:#9caeb0;width:1px;height:76px;margin:0 auto}.pan:before,.pan:after{content:"";background:#a6b5b7;width:1px;height:32px;position:absolute;top:73px}.pan:before{left:23px;transform:rotate(38deg)}.pan:after{right:23px;transform:rotate(-38deg)}.pan{background:linear-gradient(#dcecea,#c3dbd6);border:1px solid #a9c6c0;border-radius:8px 8px 72px 72px;width:146px;height:47px;position:absolute;bottom:0;box-shadow:inset 0 4px 6px #ffffffbf,0 5px 10px #4b716b17}.pan-items{justify-content:center;align-items:flex-end;gap:4px;height:100%;padding:0 8px 8px;display:flex;overflow:hidden}.weight{border-radius:6px 6px 10px 10px;flex:none;place-items:center;width:29px;height:30px;font:500 11px DM Mono;animation:.25s pop;display:grid;position:relative}@keyframes pop{0%{opacity:.4;transform:translateY(-5px)scale(.9)}to{opacity:1;transform:none}}.weight.x{color:#6fb19e;background:#fff;border:1px solid #99cfc1;box-shadow:0 3px #c7e9e1}.weight.number{color:#c68e43;background:#fff8ef;border:1px solid #efc889;box-shadow:0 3px #f4dfbe}.weight-x{font-size:13px;line-height:11px}.weight-caption{color:#a4cfc4;font:7px Noto Sans JP}.balance-pivot{clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(90deg,#b6c6c6,#728b8d 52%,#c2d0d0);width:16px;height:61px;position:absolute;top:95px;left:calc(50% - 8px)}.balance-pivot span{background:#e4f5ef;border-radius:50%;width:8px;height:8px;position:absolute;top:2px;left:4px}.balance-base{background:#71878a;border-radius:10px 10px 2px 2px;width:119px;height:10px;position:absolute;bottom:12px;left:calc(50% - 59px);box-shadow:0 4px #d7e0e0}.balance-legend{color:#adb7bc;justify-content:center;gap:20px;font-size:9px;display:flex}.balance-legend span{align-items:center;gap:5px;display:flex}.legend-x,.legend-number{border-radius:5px;place-items:center;width:18px;height:18px;font:10px DM Mono;display:grid}.legend-x{color:#6fb19e;background:#f4fcfa;border:1px solid #99cfc1}.legend-number{color:#c68e43;background:#fff8ef;border:1px solid #efc889}.action-area{margin-top:25px}.action-header{justify-content:space-between;align-items:end;display:flex}.action-header h2{letter-spacing:-.05em;margin:5px 0 0;font-size:17px}.hint-button{color:#c7995d;background:0 0;align-items:center;gap:5px;padding:6px 3px;font-size:10px;display:flex}.hint-button:hover{color:#9e6d26}.hint-box{color:#a67a3d;background:#fff8ea;border:1px solid #f3dfb8;border-radius:10px;align-items:center;gap:8px;margin-top:11px;padding:11px 13px;font-size:10px;display:flex}.hint-box b{color:#8f6224}.operation-button{text-align:left;color:#fff;background:#29353a;border-radius:12px;align-items:center;gap:13px;width:100%;margin-top:12px;padding:15px 17px;transition:all .2s;display:flex;box-shadow:0 9px 16px #28353a29}.operation-button:active:not(:disabled){transform:translateY(1px)}.operation-button:disabled{cursor:default}.operation-icon{color:#92d1c2;background:#a1dccf1f;border-radius:9px;flex:none;place-items:center;width:38px;height:38px;display:grid}.solved .operation-icon{color:#fff;background:#ffffff2e}.divide-symbol{font-family:DM Mono;font-size:24px}.operation-copy small{color:#92a0a4;letter-spacing:.13em;font:8px DM Mono;display:block}.operation-copy strong{margin-top:3px;font-size:12px;font-weight:600;display:block}.operation-arrow{color:#92a0a4;margin-left:auto}.action-footer{color:#aab3b9;justify-content:space-between;align-items:center;margin:10px 3px 0;font-size:9px;display:flex}.action-footer>span{align-items:center;gap:5px;display:flex}.tap-icon{color:#a0cfc4;font-size:18px}.action-footer button{color:#aab3b9;background:0 0;align-items:center;gap:5px;font-size:9px;display:flex}.insight-panel{padding-top:42px}.insight-heading{align-items:center;gap:10px;display:flex}.insight-icon{color:#a88ace;background:#f0eafa;border-radius:9px;place-items:center;width:31px;height:31px;display:grid}.insight-heading b{letter-spacing:-.03em;margin-top:4px;font-size:13px;display:block}.insight-card{background:#fff;border:1px solid #e1e6eb;border-radius:14px;margin-top:15px;padding:16px;box-shadow:0 10px 25px #414f5c0a}.mini-equation{text-align:center;color:#6f7d82;background:#f7f9fb;border-radius:7px;padding:9px 8px;font:11px DM Mono}.insight-card p{color:#9aa5ac;margin:13px 0 16px;font-size:10px;line-height:1.8}.rule-line{color:#9ca7ad;border-top:1px solid #edf0f2;align-items:center;gap:9px;padding-top:12px;font-size:9px;line-height:1.7;display:flex}.rule-line+.rule-line{margin-top:12px}.rule-number{color:#b0a0c8;font:10px DM Mono}.rule-line b{color:#67767b;font-weight:600}.score-card{background:#f0f6f5;border:1px solid #dcebe7;border-radius:13px;justify-content:space-between;align-items:center;margin-top:14px;padding:15px;display:flex}.score-card span,.score-card b{display:block}.score-card span{color:#9caeaa;font-size:9px}.score-card b{color:#6b9e90;margin-top:3px;font:20px DM Mono}.score-ring{color:#a6cfc3;border:1px solid #acd4c9;border-radius:50%;place-items:center;width:35px;height:35px;font-size:14px;display:grid}.next-problem{color:#7f6b99;background:0 0;border:1px solid #dcd1ec;border-radius:10px;justify-content:space-between;align-items:center;width:100%;margin-top:14px;padding:12px 14px;font-size:10px;display:flex}.success-toast{z-index:10;background:#fffffff5;border:1px solid #cde9e0;border-radius:13px;align-items:center;gap:11px;padding:12px 14px 12px 11px;animation:.35s toast-in;display:flex;position:fixed;bottom:25px;right:28px;box-shadow:0 14px 35px #2d4c4426}@keyframes toast-in{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}.success-icon{color:#fff;background:#83c3b2;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.success-toast b,.success-toast span{display:block}.success-toast b{font-size:12px}.success-toast span{color:#87a49d;margin-top:2px;font-size:10px}.success-toast>button{color:#abb9ba;background:0 0;align-self:flex-start;padding:2px}.mobile-stage-select{display:none}@media (width<=1060px){.game-layout{grid-template-columns:150px minmax(450px,650px);gap:28px;padding-left:28px;padding-right:28px}.insight-panel{display:none}}@media (width<=720px){.topbar{height:64px;padding:0 18px}.brand small,.streak{display:none}.game-layout{padding:21px 16px 50px;display:block}.level-sidebar{display:none}.mobile-stage-select{margin-bottom:23px;display:block}.stage-select-button{color:#6b9b91;background:#eaf5f2;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font:10px DM Mono;display:flex;position:relative}.stage-select-button select{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.game-heading{margin-bottom:17px}h1{font-size:25px}.subheading{font-size:10px}.problem-count b{font-size:22px}.equation-card{padding:14px 15px 12px}.equation-text{gap:16px;font-size:25px}.balance-card{padding:14px 10px 11px}.balance-scene{transform-origin:top;height:195px;margin-bottom:-9px;transform:scale(.83)}.pan-wrap.left{left:calc(50% - 205px)}.pan-wrap.right{right:calc(50% - 205px)}.action-area{margin-top:21px}.success-toast{bottom:16px;left:16px;right:16px}}@media (width<=380px){.equation-text{font-size:22px}.balance-scene{margin-bottom:-30px;transform:scale(.72)}.game-layout{padding-left:12px;padding-right:12px}}:root{color:#493c3a;background:#fff9f1}.topbar{background:#fffcf7db;border-color:#f0e4d9}.brand-mark:before,.brand-mark span{background:#66514a}.brand strong{color:#4a3d3b}.icon-button{color:#b69586;border-color:#efdfd5}.level-button.active{border-color:#f0ded3;box-shadow:0 9px 24px #b8845f14}.side-note svg{color:#f0a46e}h1{color:#493c3a}h1 span{color:#e99d78}.subheading,.problem-count span,.problem-count i{color:#b09b91}.equation-card{background:linear-gradient(115deg,#fff4e8,#f7fbf4);border-color:#f1dfd0}.equation-card:after{border-color:#f1b18629}.equation-label>span:first-child,.balance-title,.action-eyebrow{color:#bd9d8c}.balanced-badge{color:#75ad8d}.balanced-badge .balance-dot{background:#99d1ad;box-shadow:0 0 0 3px #e2f4e8}.equation-text{color:#554542;letter-spacing:-.1em;font-size:35px;font-weight:600}.equation-progress{background:#f5dfd2}.equation-progress span{background:linear-gradient(90deg,#efb18a,#a9d6ba)}.step-caption{color:#b18d7c}.balance-state{color:#8bab98}.balance-state .balance-dot{background:#99d1ad}.balance-scene{background:radial-gradient(at 50% 43%,#fffaf0 0,#f5fbf7 48%,#0000 70%);border-radius:15px}.balance-glow{background:radial-gradient(#ffe0b58c,#dcf4e54d 48%,#0000 72%)}.beam{background:#a48478;box-shadow:0 4px #ead8ce}.beam:after{background:#dba58a}.beam-cap{background:#fffaf2;border-color:#a48478}.pan{background:linear-gradient(#d9f0e3,#b9dec9);border-color:#9cc9b2;box-shadow:inset 0 4px 6px #fffc,0 5px 10px #5a8b6d1f}.pan-string,.pan:before,.pan:after{background:#a9b9ac}.weight{border-radius:8px 8px 12px 12px;width:33px;height:35px;font-size:13px}.weight.x{color:#5eaa82;background:#fbfffc;border-color:#83c5a5;box-shadow:0 3px #bde3ce}.weight.number{color:#c8814f;background:#fff8ee;border-color:#efbb82;box-shadow:0 3px #f6d7b2}.weight-x{font-size:16px}.weight-caption{font-size:8px}.balance-pivot{background:linear-gradient(90deg,#c5d0c7,#8b9b8d 52%,#d8ded3)}.balance-pivot span{background:#ffe0a9}.balance-base{background:#9c8176;box-shadow:0 4px #ebddd4}.balance-face{z-index:4;color:#8c6b5d;background:#ffe2b5;border:2px solid #fff9ee;border-radius:50%;place-items:center;width:36px;height:26px;font:13px Manrope;display:grid;position:absolute;top:113px;left:calc(50% - 18px);box-shadow:0 2px #8f685629}.balance-face span{transform:translateY(-1px)}.legend-x{color:#5eaa82;background:#f2fcf5;border-color:#9fd1b5}.legend-number{color:#c8814f;background:#fff8ee;border-color:#efbb82}.action-header h2{color:#53423f}.hint-box{color:#b17a43;background:#fff4df;border-color:#f4d8ad}.operation-button{background:#624d46;box-shadow:0 9px 16px #63483b29}.operation-button:hover:not(:disabled){background:#765b50}.operation-icon{color:#ffc59e;background:#ffd2b126}.operation-button.solved{background:#e6a47e;box-shadow:0 9px 16px #d1855d2e}.tap-icon{color:#efa77d}.insight-card{border-color:#f0e2d8;box-shadow:0 10px 25px #bc89640f}.mini-equation{color:#98796c;background:#fff6e9}.rule-line{border-color:#f4eae4}.rule-number{color:#d19d80}.rule-line b{color:#755c53}.score-card{background:#f0f8f2;border-color:#d8ebdd}.score-card b{color:#76a887}.score-ring{color:#efaa78;border-color:#a9d4b4}.next-problem{color:#a06e86;border-color:#e9cddd}.next-problem:hover{background:#fff5fb}.success-toast{border-color:#f0d7c7;box-shadow:0 14px 35px #a06b4d26}.success-icon{background:#e4a17d}.success-toast span{color:#a6897d}@media (width<=720px){.equation-text{letter-spacing:-.11em;font-size:31px}.balance-scene{height:207px;margin-bottom:-2px;transform:scale(.9)}.pan,.pan-wrap{width:154px}.pan-wrap.left{left:calc(50% - 213px)}.pan-wrap.right{right:calc(50% - 213px)}.weight{width:31px;height:34px}.action-area{margin-top:19px}}@media (width<=380px){.equation-text{font-size:27px}.balance-scene{margin-bottom:-16px;transform:scale(.82)}}.app-shell{background:linear-gradient(#ffffff3d,#0000 30%)}.topbar{border-bottom-color:#0000}.game-heading{position:relative}.game-heading:after{content:"✦";color:#f3b77f;opacity:.75;font-size:17px;position:absolute;top:-11px;right:18%;transform:rotate(16deg)}.problem-count{background:#fff1e1;border:1px solid #f3d8c3;border-radius:12px;padding:7px 10px 5px}.equation-card{border-width:2px;border-color:#f1d7c1;box-shadow:0 12px #f7d7bf40}.equation-label .balanced-badge{background:#edf8ee;border-radius:99px;padding:5px 8px}.balance-card{border-width:2px;border-color:#f1dfcf;padding-top:15px;box-shadow:0 12px #efd8c54d}.balance-card-top{padding:0 3px}.balance-scene{isolation:isolate;background-color:#fffaf0;background-image:radial-gradient(#dcb18f29 .8px,#0000 .8px),linear-gradient(#fff9ee 0%,#f1faef 100%);background-position:0 0;background-repeat:repeat;background-size:13px 13px,100% 100%;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border:2px solid #e8cdbb;border-radius:19px 16px 21px 15px;height:238px;margin-top:5px;position:relative;box-shadow:inset 0 -18px #d8efe047,3px 4px #deb59924}.balance-scene .pan-string{background:repeating-linear-gradient(175deg,#a9bba9 0 8px,#0000 8px 11px);width:2px;transform:rotate(-.8deg)}.balance-scene .pan{border-width:2px;border-radius:46% 54% 48% 52%/14% 15% 85% 86%;transform:rotate(-1.2deg);box-shadow:inset 0 4px 5px #ffffffc7,2px 4px #73a98529}.balance-scene .pan-wrap.right .pan{transform:rotate(1.3deg)}.balance-scene .pan:before,.balance-scene .pan:after{width:2px}.balance-scene .beam{background:#b38e82;height:7px;transform:rotate(-.7deg);box-shadow:2px 4px #ead8ce}.balance-scene .beam:after{background:#e3aa8e;transform:rotate(.6deg)}.balance-scene .beam-cap{border-width:2px;transform:rotate(-8deg)}.balance-scene .beam-cap.right{transform:rotate(8deg)}.balance-scene .balance-pivot{transform:rotate(1.5deg)}.balance-scene .balance-base{border-radius:56% 44% 15% 12%;transform:rotate(-1deg)}.balance-scene .weight{border-width:2px;border-radius:40% 60% 48% 52%/28% 22% 78% 72%;transform:rotate(-3deg);box-shadow:2px 3px #609d7729}.balance-scene .weight:nth-child(2n){transform:rotate(3deg)translateY(-1px)}.balance-scene .weight.number{box-shadow:2px 3px #ce8a5829}.balance-face{border-width:2px;transform:rotate(-4deg);box-shadow:2px 3px #8f685624}.balance-legend .legend-x,.balance-legend .legend-number{border-width:2px;border-radius:42% 58% 53% 47%;transform:rotate(-4deg)}.balance-legend .legend-number{transform:rotate(4deg)}.balance-card-top .balance-title:after{content:"  ✎ hand-drawn";color:#c9a394;letter-spacing:.03em;font-family:Noto Sans JP;font-size:8px}.balance-scene:before,.balance-scene:after{z-index:1;color:#f0b579;opacity:.7;font-size:17px;position:absolute}.balance-scene:before{content:"✦";top:50px;left:17%;transform:rotate(-14deg)}.balance-scene:after{content:"•  ✦";letter-spacing:8px;color:#acd5b7;top:38px;right:16%}.balance-face{color:#825f52;background:#ffdca9;border-width:3px;border-radius:50%;width:43px;height:31px;font-size:15px;top:115px}.balance-base{width:136px;height:12px;left:calc(50% - 68px)}.action-area{padding:0 3px}.action-header h2{font-size:18px}.operation-button{background:linear-gradient(135deg,#f2aa80,#e88e78);border:2px solid #f2c1a0;padding:17px;position:relative;overflow:hidden;box-shadow:0 6px #d77f6c,0 15px 23px #d87f6633}.operation-button:before{content:"";background:#ffffff24;border-radius:50%;width:100px;height:100px;position:absolute;top:-65px;right:10px}.operation-button:hover:not(:disabled){background:linear-gradient(135deg,#f6b48c,#ed987f);transform:translateY(-3px);box-shadow:0 8px #d77f6c,0 18px 25px #d87f663d}.operation-button:active:not(:disabled){transform:translateY(2px);box-shadow:0 3px #d77f6c}.operation-icon{color:#fff;background:#ffffff38;border:1px solid #fff3}.operation-copy small,.operation-arrow{color:#fff0e8}.operation-copy strong{font-size:13px}.operation-button.solved:hover:not(:disabled){background:linear-gradient(135deg,#9bd8af,#75c4a2)}.action-footer{margin-top:13px}.mobile-stage-select{position:relative}.stage-select-button{box-shadow:0 4px #dfb79d4d}@media (width<=720px){.game-heading:after{top:-18px;right:6%}.problem-count{padding:5px 8px 4px}.equation-card{box-shadow:0 7px #f7d7bf40}.balance-card{box-shadow:0 7px #efd8c54d}.balance-scene{height:217px}.operation-button{padding:16px 14px}}.balance-scene{overflow:hidden}.sketch-defs{width:0;height:0;position:absolute;overflow:hidden}.doodle-ink{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.doodle-ink path{fill:none;stroke-linecap:round;stroke-linejoin:round}.doodle-shadow{stroke:#d7b9a3;stroke-width:4px;opacity:.36}.doodle-beam{stroke:#9f766d;stroke-width:5px;filter:url(#sketchy)}.doodle-beam-light{stroke:#edb89d;stroke-width:2px;opacity:.9}.doodle-pan{stroke:#6ea986;stroke-width:4px;fill:#c9ead5;opacity:.82;filter:url(#sketchy)}.doodle-pan.right{stroke:#74a98d;fill:#c7e7d2}.doodle-string{stroke:#a4ad9f;stroke-width:2.5px;stroke-dasharray:7 4;opacity:.78}.doodle-pivot{stroke:#98786e;stroke-width:4px;fill:#d9b6a2;opacity:.84;filter:url(#sketchy)}.doodle-base{stroke:#98786e;stroke-width:4px;fill:#b99082;opacity:.85;filter:url(#sketchy)}.balance-scene>.pan-wrap,.balance-scene>.beam,.balance-scene>.balance-pivot,.balance-scene>.balance-base{z-index:2}.balance-scene>.pan-wrap,.balance-scene>.beam,.balance-scene>.balance-pivot,.balance-scene>.balance-base,.balance-scene>.balance-face{filter:url(#sketchy)}.balance-scene .pan{background:#d0edd8ba}.balance-scene .beam{background:#b28477ad}.balance-scene .balance-base{background:#b2897bb8}.balance-scene .balance-face{z-index:5}body{background:#220d32}.app-shell{isolation:isolate;background-color:#3b164d;background-image:linear-gradient(#2a0c3e2e,#ffe0de47 36%,#2a0c3e2e),url(/circus-stage.png);background-position:top;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;min-height:100vh;position:relative}.app-shell:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#1f073142,#ffe0d32e 42%,#20083447);position:fixed;inset:0}.topbar{color:#fff8ed;background:#230a368a;border-bottom-color:#ffe8be3d}.brand strong,.brand small,.icon-button,.streak{color:#fff8ed}.brand-mark:before,.brand-mark span{background:#ffe8ab}.brand-mark span:first-child{background:#ff9bb6}.brand-mark span:last-child{background:#7de2d7}.icon-button{background:#ffffff1f;border-color:#ffeecc6b}.game-layout{position:relative}.level-sidebar{color:#fff7ea}.side-label,.level-button,.level-button small,.side-note{color:#fff6e8c7}.level-button.active{color:#fff9eb;background:#371152ad;border-color:#ffda9894;box-shadow:0 8px 22px #0e021c40}.level-button.active .level-number{color:#ffd075}.game-heading h1,.game-heading .subheading,.eyebrow,.problem-count span,.problem-count i{color:#fff9ee;text-shadow:0 2px #2607304d}.eyebrow{color:#ffcf9e}.live-dot{background:#71e3cf;box-shadow:0 0 0 4px #50edd233}.problem-count{background:#450e58ad;border-color:#ffdd95b3}.problem-count b{color:#ffe083}.equation-card{background:#fff9ebeb;border-color:#ffcf91;box-shadow:0 6px #ffb87140,0 13px 24px #19032733}.equation-text{color:#5b175f}.equation-text b{color:#eb6e91}.balance-card{background:#fffbede6;border-color:#ffcf91;box-shadow:0 7px #ffb87152,0 15px 26px #19032738}.balance-title,.balance-state{color:#8e4c68}.balance-card-top .balance-title:after{color:#b77a61}.balance-scene{background-image:radial-gradient(#d45c7b21 .8px,#0000 .8px),linear-gradient(#fff7d8e0,#e7fbf6e0)}.balance-legend{color:#805271}.action-area{color:#fff9ed}.action-header h2{color:#fff9ed;text-shadow:0 2px #25052f59}.action-eyebrow{color:#ffce9b}.hint-button{color:#ffe39c}.operation-button{background:linear-gradient(135deg,#ff6e9f,#d3388a 55%,#7e38b4);border-color:#ffd179;box-shadow:0 6px #842768,0 15px 25px #1f032f4d}.operation-button:hover:not(:disabled){background:linear-gradient(135deg,#ff82ad,#dd4a98 55%,#8c47c1);box-shadow:0 8px #842768,0 18px 28px #1f032f5c}.operation-button.solved{background:linear-gradient(135deg,#55dec6,#31a9bc 55%,#3869bd);border-color:#a5ffdf;box-shadow:0 6px #226b91,0 15px 25px #182f5547}.action-footer,.action-footer button{color:#fff5e3d1}.insight-panel,.insight-heading b{color:#fff8ed}.insight-card,.score-card{background:#fff8ebeb;border-color:#ffcf91}@media (width<=720px){.app-shell{background-position:top;background-size:auto 100%;background-attachment:scroll}.topbar{background:#230a36b8}.game-layout{padding-top:20px}.mobile-stage-select{background:#ffeccee0;border-radius:10px;padding:2px}.stage-select-button{color:#fff7dd;background:#711f77;box-shadow:0 4px #340c3e59}}.history-strip{scrollbar-width:none;align-items:center;gap:6px;margin-top:13px;padding:7px 2px 3px;display:flex;overflow-x:auto}.history-strip::-webkit-scrollbar{display:none}.history-title{color:#f2c39d;letter-spacing:.08em;flex:none;font:9px DM Mono}.history-step{color:#8e5571;background:#fff9eae0;border:1px dashed #ffcc9ebf;border-radius:9px;flex:none;padding:5px 8px;font:9px DM Mono}.footer-actions{align-items:center;gap:10px;display:flex}.action-footer button:disabled{opacity:.42;cursor:not-allowed}@media (width<=720px){.balance-scene{height:222px;margin-bottom:0;overflow:visible;transform:none}.balance-scene .pan-wrap{width:36%;top:18px}.balance-scene .pan-wrap.left{left:2%}.balance-scene .pan-wrap.right{right:2%}.balance-scene .pan{width:100%}.balance-scene .pan-items{gap:2px;padding-left:3px;padding-right:3px}.balance-scene .weight{width:24px;height:31px}.balance-scene .weight-x{font-size:14px}.balance-scene .weight-caption{font-size:7px}.balance-scene .beam{width:64%;left:18%}.balance-scene .balance-pivot{left:calc(50% - 8px)}.balance-scene .balance-face{left:calc(50% - 19px)}.balance-scene .balance-base{width:110px;left:calc(50% - 55px)}.doodle-ink{inset:0}.footer-actions{gap:7px}.action-footer{font-size:8px}}@media (width>=721px){.level-sidebar,.game-heading,.action-area,.insight-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffcf4f0;border:1px solid #ffd29ac7;border-radius:18px;box-shadow:0 8px 20px #1f053029}.level-sidebar{padding:22px 16px}.game-heading{margin-bottom:18px;padding:18px 20px}.action-area{padding:18px}.insight-panel{padding:24px 16px}.game-heading h1,.game-heading .subheading,.eyebrow,.problem-count span,.problem-count i,.action-header h2,.action-eyebrow{color:#5a304f;text-shadow:none}.subheading{color:#8d6d79!important}.eyebrow,.action-eyebrow{color:#b16a83!important}.level-sidebar .side-label,.level-sidebar .side-note{color:#8f6e7c}.insight-panel,.insight-heading b{color:#5a304f}}@media (width<=720px){.game-heading,.action-area{background:#fffcf4eb;border:1px solid #ffcf91;border-radius:18px;padding:14px}.game-heading{margin-left:0;margin-right:0}.game-heading h1,.game-heading .subheading,.eyebrow,.action-header h2,.action-eyebrow{color:#5a304f;text-shadow:none}.action-area{margin-top:19px}}.footer-actions{flex-wrap:wrap;justify-content:flex-end}.next-inline{font-weight:700;color:#a23d79!important}.summary-backdrop{z-index:30;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#240434a6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.level-summary{text-align:center;color:#5a304f;background:linear-gradient(145deg,#fff7e7,#fffdf6);border:3px solid #ffd17a;border-radius:26px;width:min(460px,100%);padding:26px 24px 22px;box-shadow:0 12px #842768,0 25px 60px #14021e59}.summary-stars{color:#eaa861;letter-spacing:.12em;font-size:22px}.summary-kicker{color:#b16a83;letter-spacing:.16em;margin-top:4px;font:700 11px DM Mono;display:block}.level-summary h2{color:#7f286e;margin:10px 0;font-size:clamp(24px,5vw,32px)}.level-summary p{color:#765665;max-width:34em;margin:0 auto 14px;font-size:14px;line-height:1.8}.summary-example{color:#7f286e;background:#fff0d4;border-radius:13px;padding:10px 16px;font-size:18px;font-weight:800;display:inline-block}.summary-rule{color:#47775f;background:#eef8ef;border-radius:14px;margin-top:16px;padding:12px}.summary-rule span{color:#74a886;margin-bottom:4px;font-size:11px;display:block}.summary-rule b{font-size:13px}.summary-actions{justify-content:center;gap:10px;margin-top:20px;display:flex}.summary-actions button{color:#8d5270;cursor:pointer;background:#fff;border:1px solid #e8b8a4;border-radius:12px;min-height:44px;padding:9px 15px;font-weight:700}.summary-actions .summary-primary{color:#fff8ed;background:#842768;border-color:#842768;align-items:center;gap:6px;display:inline-flex}@media (width<=420px){.level-summary{padding:22px 16px 18px}.summary-actions{flex-direction:column-reverse}.summary-actions button{width:100%}}.balance-scene .doodle-beam{stroke:#b9a49c;stroke-width:3px;opacity:.24;filter:none}.balance-scene .doodle-beam-light{stroke:#ead4c8;stroke-width:1.5px;opacity:.3}.balance-scene .doodle-shadow{stroke:#d9c6bc;stroke-width:2px;opacity:.18}.balance-scene .doodle-string{stroke:#b9c5bb;stroke-width:2px;opacity:.38}.balance-scene>.beam{z-index:1;opacity:.28;filter:none;height:5px;box-shadow:0 2px #ead8ce80}.balance-scene>.beam .beam-cap{opacity:.35}.balance-scene>.pan-wrap{z-index:5}.balance-scene>.pan-wrap .weight{z-index:7}.balance-scene>.balance-pivot{z-index:2;opacity:.42}.balance-scene>.balance-base{z-index:1;opacity:.35}.action-footer{gap:8px}.action-footer>span:first-child{color:#a67580}.action-footer button{background:#ffffffd1;border:1px solid #e8c0b0;border-radius:10px;min-height:38px;padding:7px 9px;font-weight:700;color:#8d5270!important}.action-footer button:hover:not(:disabled){background:#fff2df}.action-footer button.next-inline{background:#842768;border-color:#842768;color:#fff8ed!important}@media (width<=720px){.footer-actions{justify-content:stretch;gap:6px;width:100%}.footer-actions button{flex:1 1 0;justify-content:center;font-size:10px}.action-footer{flex-wrap:wrap}.action-footer>span:first-child{width:100%}}
