@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAVoAA8AAAAACegAAAUTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbDBwYBmAAbBEIColciA0LHgABNgIkAzgEIAWDZAc+DAcb9QdRlE5OmOBngm2rYa0IiBSU4SB6GXpb1ovxAEMb3kc8/X6ve+4LIEoWKsKQjE0KaAS5si8LV935qoC6jkBWl99PeNa/acrMsmIWkJM7J2fiwyD6/rZ3nySQEEJPI2+8mQgCjl/7/xfCPjhmumgbjyJtDTLAgZRI5C2Lsyg9Ej+AogCfIgpT4Glg/xqJD/gP3cxixar09EqCLkAR0S2CjsmOByOgCZ096O8EMaNtszM3NFMavYQr9Cp5x9dfFA/5c6zg2Tty8yAadUVizTiA6qa3QCC/ewmYw2NFVjA0W0NfnG8fGGCFUMwlNjUZzmSW9PlG/R/AyDGpxk28hPlctcMi84z8m/D+t4A8BCJ1LJF6PM8poA/kPvkJWDJ1K8BaUZaAFU7lYnST2ctUYrFxdcncWZ+9iCBZ7QpGtRZjgknaiROuAw9zmuW0fBVJAuYMq2n1OtKMXVFHky8Q0hrFz5fHL9r+nEPMnjt7HmivMC8x91xDA/1M/oAFOmT59tOnXR4D/SyfffGCednGaXbT8vxlrLJwBWKuYq7gZdFz7CSU+gIt6kE7uc+Qo2v37Ql5HkHKQsxRQtvGGz2XFwMdv411vIFQ6YqXmDMUlNIsQgwHBXRRFWtcw+hMzOajmR59mMsOuWmOF4yqrMx9tIxFTBfJL+Ii0RlIK4ImubT7MpIsjraaeanajTm7MtJOmW4rxrqXFRkT0If2oT0spW5rQzzafpjguAN9hiRinFZih+0AJ4zTkDbS8Uh95LjURmGlmKaOU1gqqpGTVk+skg4HuviVSNOtxkAukjRmgehpuFJzeK1lTT5P1BR1/PNEQdrPnuV+BTaWg//+kPhs+NC04dbkEaOaIOzcWmf+0GCvjO57t/beypjctoHZoyi8WpYUkmvITj8o+TTCOX91Xp24bnVevsQkk/AmUsZTIOZotreXUWEZNO7bn9qWsbLZpFW6JvXu9NXJzKKH42p+jchuqW1L6vNy1e9301q7tfmbr/QZMkUOD899Yd14NHBLo/SjF5cCSkjT2NHk135OQk4wT8IJPl3A+KVAmsC6w9Yzeb5ippX3NAv4svYkQsqFgb5lm1UzJZ7DRrsvW6fPCvnquOaJ3AZkUSKvIgyXf96PrZJ0kgSzaEuXOoX1hffmtOr/WYZ+xra+RIUo1WFKdehUQIrG3y5m3i9eznH2AwnYJE9dQSY4kM2VOdnutWqt4pcfeb+k1NlrCD2P3ZO5XLekNz+2uPpKb/XJ2t0NUfOkPccR0vHefWSNS4H/BGiupbdcml/BnXeommkZlIk13/I8D/sOQlw8z33xfpVl+C/GxBeA17vkDn3BYWv7dXrdRJsCQnVz7EH1QwnxcArxoPR47glkG2iQNwSZIChqhlyhaVP9a/045AZNdsyOfJGctxwg9NgmBAURbAFAm+MIaZIADY94zBhygFn0uMesbKlubVJlNpuQyGwxwB96jhQ4qR9Qu4XyKu1Tp1cLH/p5ZE990E5DFwpNaqksidKBtoMWVahBSjs1KNRwaI2gi380ig9P3rz5SjWgRqcMBWu/Q2sDMrNLKOq0U7MWT/ny5gPGn6tBkwHtavQaVcbp0m0kfWtTWctTnNVxceak0ulKzTpDe6uiNRqHjom7XY06zVt5qtVilAt3lKFEEM26JK19bwCDFNQf9sQgYUrmZO1Qm5ZiW0CGLZ6Hyvq4TZke5H+6xGcf+8Snzvruczt8Mu1G9R7wrwIAAA==)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lilita-one-latin-400-normal-87r-Z-Re.woff2)format("woff2"),url(/assets/lilita-one-latin-400-normal-DXkechA3.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#2b2350;--ink-2:#5f5885;--card:#fff;--cream:#fff8e8;--sky:#4fc3f7;--sky-deep:#2aa3e8;--grape:#6c4bf4;--grape-deep:#4f31cf;--sun:#ffd23f;--sun-deep:#e9ad00;--pink:#ff5d8f;--mint:#3ddc97;--mint-soft:#a6f0cd;--mint-deep:#149b63;--red:#e5344a;--amber:#b46a00;--keepout:#e5344a52;--outline:3px solid var(--ink);--shadow:4px 5px 0 var(--ink);--shadow-sm:2px 3px 0 var(--ink);--display:"Lilita One", "Nunito Variable", system-ui, sans-serif;--sans:"Nunito Variable", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--ink);font:600 15px/1.42 var(--sans);background-color:var(--sky);background-image:radial-gradient(#ffffff47 2.5px,#0000 3px),radial-gradient(#ffffff47 2.5px,#0000 3px);background-position:0 0,17px 17px;background-size:34px 34px;min-width:1180px}h1,h2{font-family:var(--display);letter-spacing:.01em;margin:0 0 8px;font-weight:400;line-height:1.12}h1{font-size:30px}h2{font-size:26px}h3{font-family:var(--display);letter-spacing:.01em;color:var(--grape-deep);margin:0 0 8px;font-size:18px;font-weight:400;line-height:1.15}p{margin:0 0 10px}p:last-child{margin-bottom:0}kbd{font:800 11px var(--sans);background:#ffffff8c;border:2px solid;border-radius:6px;margin-left:4px;padding:1px 6px}small{font-size:12.5px}.muted{color:var(--ink-2)}.small{font-size:13px}.spacer,.grow{flex:1}.bad-text{color:var(--red);font-weight:800}.centered{place-items:center;min-height:100%;padding:24px;display:grid}.loading{font:400 24px var(--display);color:#fff;text-shadow:2px 2px 0 var(--ink)}.row{gap:10px;display:flex}.row.end{justify-content:flex-end}.notice{max-width:460px}.btn{font:800 14px var(--sans);color:var(--ink);border:var(--outline);cursor:pointer;box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;padding:8px 15px;transition:transform 80ms,box-shadow 80ms,filter .12s}.btn:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px)rotate(-.6deg)}.btn:active:not(:disabled){box-shadow:0 0 0 var(--ink);transform:translate(2px,3px)}.btn:disabled{color:#7f79a0;box-shadow:none;cursor:not-allowed;background:#ece9f5;border-color:#9c96bb}.btn.primary:not(:disabled){background:var(--sun)}.btn.secondary:not(:disabled){background:var(--mint)}.btn.big{font:400 19px var(--display);letter-spacing:.02em;box-shadow:var(--shadow);border-radius:14px;padding:11px 20px}.btn.small{border-radius:10px;padding:5px 11px;font-size:13px}.btn.wide{width:100%}:focus-visible{outline:3px solid var(--pink);outline-offset:2px}.link{color:var(--ink-2);font:700 13px var(--sans);cursor:pointer;background:0 0;border:0;padding:4px;text-decoration:underline}.panel{background:var(--card);border:var(--outline);box-shadow:var(--shadow);border-radius:18px;padding:14px 15px}.logo{font:400 86px/.92 var(--display);letter-spacing:.01em;color:var(--sun);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:5px 6px 0 var(--ink);flex-direction:column;display:inline-flex;transform:rotate(-3deg)}.logo span:last-child{color:var(--pink);margin-left:36px}.logo.small{-webkit-text-stroke-width:1.5px;text-shadow:2px 3px 0 var(--ink);flex-direction:row;gap:2px;font-size:28px;transform:rotate(-2deg)}.logo.small span:last-child{margin-left:0}.auth{grid-template-columns:1fr 430px;align-items:center;gap:56px;max-width:1060px;min-height:100%;margin:0 auto;padding:40px;display:grid}.auth-speech{align-items:center;gap:16px;margin:30px 0 18px;display:flex}.auth-speech svg{flex-shrink:0;animation:3.2s ease-in-out infinite wobble}.auth-speech p{border:var(--outline);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;margin:0;padding:13px 16px;font-size:18px;font-weight:800;position:relative}.stamp{font:400 15px var(--display);letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--grape);border:var(--outline);border-radius:10px;padding:3px 12px;display:inline-block;transform:rotate(-3deg)}.auth-form{flex-direction:column;gap:12px;padding:24px;display:flex}.auth-form label{flex-direction:column;gap:4px;font-size:13.5px;font-weight:800;display:flex}.auth-form input{font:700 15px var(--sans);border:var(--outline);background:var(--cream);color:var(--ink);border-radius:12px;padding:10px 12px}.form-error{color:var(--red);margin:0;font-size:14px;font-weight:800}.shell{flex-direction:column;height:100%;display:flex}.topbar{background:var(--grape);color:#fff;border-bottom:var(--outline);align-items:center;gap:12px;padding:9px 18px;display:flex}.topbar .logo{margin-right:12px}.stat{color:var(--ink);border:2.5px solid var(--ink);box-shadow:var(--shadow-sm);background:#fff;border-radius:99px;align-items:center;gap:6px;padding:3px 12px 3px 6px;display:flex}.stat span{color:var(--ink-2);font-size:12px;font-weight:800}.stat strong{font:400 17px var(--display)}.pop{animation:.45s cubic-bezier(.3,1.8,.5,1) pop;display:inline-block}.sync{color:#d9fbe9;font-size:12.5px;font-weight:800}.sync.offline{color:var(--ink);background:#ffc9c9;border-radius:99px;padding:1px 9px}.sync.saving,.sync.pending{color:#e4dcff}.user{font-size:13.5px;font-weight:800}.screen{flex:1;min-height:0;padding:16px 18px;overflow:auto}.section-title{color:#fff;-webkit-text-stroke:1.5px var(--ink);paint-order:stroke fill;text-shadow:2px 3px 0 var(--ink);margin-bottom:14px;font-size:25px;display:inline-block}.board{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:30px;max-width:1360px;margin:0 auto;padding-bottom:96px;display:grid}.jobs{flex-direction:column;gap:22px;display:flex}.job-card{background:var(--cream);border:var(--outline);box-shadow:var(--shadow);border-radius:20px;padding:22px 22px 20px;transition:transform .15s;position:relative}.job-card:nth-child(odd){transform:rotate(-.8deg)}.job-card:nth-child(2n){transform:rotate(.7deg)}.job-card:not(.locked):hover{transform:rotate(0)scale(1.012)}.job-card.locked{background:#e7e3f4}.job-card h3{color:var(--ink);margin-bottom:7px;font-size:27px}.pin{background:var(--pink);border:var(--outline);border-radius:50%;width:26px;height:26px;margin-left:-13px;position:absolute;top:-11px;left:50%;box-shadow:inset -4px -4px #00000029}.locked .pin{background:#9c96bb}.job-customer{font:800 13px var(--sans);color:var(--grape-deep)}.job-meta{gap:10px;margin:12px 0 15px;display:flex}.tag{border:2.5px solid var(--ink);border-radius:99px;align-items:center;gap:6px;padding:3px 12px;font-weight:800;display:inline-flex}.tag.pay{background:#fff0b3}.tag.time{background:#c7ecff}.locked-note{border:2.5px dashed var(--ink);background:#fff;border-radius:12px;padding:8px 12px;font-size:14px}.locked-note span{color:var(--ink-2)}.tools{flex-direction:column;gap:13px;display:flex}.tool-card{border:var(--outline);box-shadow:var(--shadow);background:#fff;border-radius:18px;gap:13px;padding:13px;display:flex}.tool-badge{border:2.5px solid var(--ink);background:#fff0b3;border-radius:15px;flex-shrink:0;place-items:center;width:62px;height:62px;display:grid}.tool-card:nth-child(2) .tool-badge{background:#c7ecff}.tool-card:nth-child(3) .tool-badge{background:#e4dcff}.tool-body{flex:1;min-width:0}.tool-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.tool-card h3{color:var(--ink);margin-bottom:2px;font-size:19px}.tool-level{gap:4px;padding-top:4px;display:flex}.tool-level span{border:2px solid var(--ink);background:#e7e3f4;border-radius:50%;width:13px;height:13px}.tool-level span.on{background:var(--mint)}.tool-stats{color:var(--ink-2);gap:14px;margin-bottom:9px;font-size:13px;display:flex}.upgrade{border-top:2.5px dotted #c9c3e0;justify-content:space-between;align-items:center;gap:12px;padding-top:9px;font-size:14px;display:flex}.upgrade span{color:var(--ink-2);font-size:12.5px;display:block}.upgrade .btn{flex-shrink:0}.maxed{color:var(--mint-deep);font-weight:800}.planning,.assembly{grid-template-columns:300px minmax(0,1fr) 300px;gap:16px;height:100%;display:grid}.side{flex-direction:column;gap:13px;min-height:0;padding:2px 7px 8px 2px;display:flex;overflow:auto}.planning>.side:first-child,.assembly>.side:first-child{padding-bottom:88px}.wishes{margin:0 0 10px;padding:0;font-size:14px;list-style:none}.wishes li{padding:2px 0 2px 21px;position:relative}.wishes li:before{content:"♥";color:var(--pink);position:absolute;left:1px}.plan-area{flex-direction:column;gap:9px;min-height:0;display:flex}.toolbar{align-items:center;gap:8px;display:flex}.segmented{border:var(--outline);box-shadow:var(--shadow-sm);border-radius:13px;display:inline-flex;overflow:hidden}.segmented button{font:800 14px var(--sans);color:var(--ink);cursor:pointer;background:#fff;border:0;padding:8px 15px}.segmented button.active{background:var(--grape);color:#fff}.plan-stage{border:var(--outline);min-height:0;box-shadow:var(--shadow);background:#e6f8ff;border-radius:20px;flex:1;overflow:hidden}.plan{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.plan-wall{stroke:var(--ink);stroke-width:.13px;stroke-linecap:round}.plan-window{stroke:#fff;stroke-width:.09px}.room-label{font:400 .24px var(--display);fill:var(--ink);opacity:.72;pointer-events:none}.decor{stroke:var(--ink);stroke-width:.02px;opacity:.6}.decor-rug{opacity:.55}.placed{cursor:grab}.placed:active{cursor:grabbing}.placed .body{stroke:var(--ink);stroke-width:.045px}.placed .front-zone{fill:#3ddc976b;stroke:var(--mint-deep);stroke-width:.018px;stroke-dasharray:.07 .05}.placed .front-arrow{stroke:#fff;stroke-width:.04px}.placed .front-dot{fill:#fff;stroke:var(--ink);stroke-width:.02px}.placed .furn-label{font:400 .17px var(--display);fill:var(--ink);text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:#fff;stroke-width:.055px;stroke-linejoin:round}.placed.selected .body{stroke:var(--pink);stroke-width:.075px}.placed.error .body{fill:#ff7a85;stroke:var(--red);stroke-width:.075px}.delivery{flex-direction:column;gap:9px;display:flex}.delivery-item{text-align:left;font:inherit;background:var(--cream);color:var(--ink);border:2.5px solid var(--ink);cursor:pointer;border-radius:14px;align-items:center;gap:10px;padding:8px 9px;transition:transform .1s;display:flex}.delivery-item:hover{transform:scale(1.02)rotate(-.5deg)}.delivery-item svg{flex-shrink:0}.delivery-item strong{font-weight:800;line-height:1.2;display:block}.delivery-item small{color:var(--ink-2);display:block}.delivery-item.placed-item{background:#d6f8e6}.delivery-item.current{box-shadow:0 0 0 3px var(--pink)}.errors{color:var(--red);margin:0 0 10px;padding-left:18px;font-size:14px;font-weight:800}.scene{border:var(--outline);width:100%;height:100%;min-height:0;box-shadow:var(--shadow);background:linear-gradient(#7fdcff,#c9f2ff 70%);border-radius:20px;position:relative;overflow:hidden}.scene-fallback{text-align:center;place-items:center;height:100%;padding:24px;font-weight:800;display:grid}.plan-stage .scene{box-shadow:none;border:0;border-radius:0}.bench{flex-direction:column;gap:11px;min-height:0;display:flex}.bench .scene{flex:1}.bench-head{justify-content:space-between;align-items:center;display:flex}.bench-head>div:first-child{border:var(--outline);box-shadow:var(--shadow-sm);background:#fff;border-radius:99px;align-items:center;gap:9px;padding:3px 15px;display:flex}.clock{font:400 20px var(--display)}.clock .muted{font:700 13px var(--sans)}.clock.over{color:var(--red)}.bench-head>.muted{color:var(--ink);background:#fff;border-radius:99px;padding:3px 12px}.tabs{flex-direction:column;gap:5px;padding:8px;display:flex}.tab{font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:2.5px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:6px 9px;font-size:14px;line-height:1.2;display:flex}.tab strong,.tab span{font-weight:800}.tab:hover:not(:disabled){background:var(--cream)}.tab.active{background:var(--grape);border-color:var(--ink);color:#fff}.manual{background:var(--cream);flex:1;min-height:150px;overflow:auto}.manual ol{margin:0;padding-left:21px;font-size:14px}.manual li{margin-bottom:8px}.manual li::marker{font-family:var(--display);color:var(--grape-deep)}.manual li.done{color:var(--ink-2);text-decoration:line-through;-webkit-text-decoration-color:var(--mint-deep);text-decoration-color:var(--mint-deep);text-decoration-thickness:2px}.choices{flex-direction:column;gap:5px;display:flex}.choice{font:inherit;text-align:left;background:var(--cream);color:var(--ink);border:2.5px solid var(--ink);cursor:pointer;border-radius:11px;padding:5px 9px;font-size:14px;font-weight:700;line-height:1.2;transition:transform 80ms;display:block}.choice:hover:not(:disabled){transform:translate(2px)}.choice:disabled{opacity:.65;cursor:not-allowed}.choice.active{background:var(--grape);color:#fff}.choice.with-meta{align-items:center;gap:8px;display:flex}.choice svg{background:#fff;border-radius:7px;flex-shrink:0;padding:1px}.choice small{opacity:.78;font-weight:600;display:block}.count{font:400 16px var(--display)}.mount{margin-top:10px}.feedback{border:var(--outline);box-shadow:var(--shadow-sm);background:#fff;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;padding:9px 13px;font-size:14px;font-weight:800;animation:.35s shake;display:flex}.feedback.bad{color:#9c0f25;background:#ffd6d9}.feedback.warn{color:#6b4200;background:#fff0b3}.feedback .btn{color:var(--ink);flex-shrink:0}.timing{border:var(--outline);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:11px 14px}.timing-label{font:400 18px var(--display);margin-bottom:7px}.timing-track{border:var(--outline);background:linear-gradient(90deg,#8bd8ff,#ffe17a 55%,#ff8a8a);border-radius:99px;height:34px;position:relative;overflow:hidden}.zone{background:var(--mint-soft);border-inline:2px solid var(--mint-deep);position:absolute;top:0;bottom:0}.zone.perfect{background:var(--mint-deep);border:0}.timing-pointer{background:var(--ink);border:1.5px solid #fff;border-radius:4px;width:8px;margin-left:-4px;position:absolute;top:-2px;bottom:-2px;left:0}.timing-button{-webkit-user-select:none;user-select:none;touch-action:none;width:100%;margin-top:9px}.timing-result{text-align:center;font:400 22px var(--display);margin-top:9px;padding:6px;animation:.4s cubic-bezier(.3,1.8,.5,1) pop}.timing-result.perfekt,.timing-result.gut{color:var(--mint-deep)}.timing-result.locker{color:var(--amber)}.timing-result.ueberdreht{color:var(--red)}.result{grid-template-columns:minmax(0,1fr) 380px;gap:16px;height:100%;display:grid;position:relative}.result-main{flex-direction:column;gap:13px;min-height:0;display:flex}.result-head{align-items:center;gap:20px;display:flex}.result-head>div:first-child{flex:1}.result-head h2{margin:0}.stars{color:#dcd7ec;gap:2px;font-size:40px;line-height:1;display:flex}.stars span{-webkit-text-stroke:2px var(--ink);paint-order:stroke fill}.stars span.on{color:var(--sun);animation:.55s cubic-bezier(.3,1.8,.5,1) backwards star-in}.score{font:400 28px var(--display)}.score small{color:var(--ink-2);font-size:15px}.reaction{background:var(--pink);color:#2b0a1c;border:var(--outline);max-width:90%;box-shadow:var(--shadow-sm);border-radius:18px 18px 18px 4px;align-self:flex-start;margin:0;padding:8px 15px;font-size:16px;font-weight:800;transform:rotate(-.6deg)}.result-scene{flex:1;min-height:0;padding-bottom:6px;padding-right:5px}.result-side{padding-right:7px}.ledger{margin:0}.ledger>div{border-bottom:2.5px dotted #d7d2e8;justify-content:space-between;padding:3px 0;display:flex}.ledger dt{color:var(--ink-2)}.ledger dd{margin:0;font-weight:800}.ledger .total dt{color:var(--ink);font-weight:800}.ledger .total dd{font:400 20px var(--display);color:var(--mint-deep)}.checklist{margin:0;padding:0;font-size:14px;list-style:none}.checklist li{padding:2px 0 2px 22px;position:relative}.checklist li:before{font-weight:900;position:absolute;left:1px}.checklist .ok:before{content:"✓";color:var(--mint-deep)}.checklist .miss{color:var(--red);font-weight:800}.checklist .miss:before{content:"✗";color:var(--red)}.quality-row{margin-bottom:11px}.quality-row:last-child{margin-bottom:0}.quality-name{justify-content:space-between;font-size:14px;font-weight:800;display:flex}.quality-track{border:2.5px solid var(--ink);background:#ece9f5;border-radius:99px;height:13px;margin:3px 0;overflow:hidden}.quality-track div{border-right:2.5px solid var(--ink);height:100%}.tip-host{z-index:8;pointer-events:none;flex-direction:column-reverse;align-items:flex-start;gap:10px;display:flex;position:fixed;bottom:12px;left:18px}.mascot-button{border:var(--outline);width:76px;height:76px;box-shadow:var(--shadow-sm);cursor:pointer;pointer-events:auto;background:#fff;border-radius:50%;flex-shrink:0;place-items:center;padding:0;transition:transform .12s;display:grid;position:relative}.mascot-button:hover{transform:scale(1.08)rotate(-4deg)}.mascot-button.idle svg{animation:3.2s ease-in-out infinite wobble}.mascot-label{background:var(--pink);color:#2b0a1c;font:400 13px var(--display);border:2.5px solid var(--ink);border-radius:99px;padding:1px 7px;position:absolute;top:-9px;right:-13px;transform:rotate(8deg)}.tip-bubble{border:var(--outline);width:296px;box-shadow:var(--shadow);pointer-events:auto;transform-origin:0 100%;background:#fff;border-radius:18px 18px 18px 4px;padding:12px 14px;animation:.35s cubic-bezier(.3,1.6,.5,1) bubble-in;position:relative}.tip-bubble.oops{background:#fff0b3}.tip-bubble h3{color:var(--ink);margin-bottom:4px;font-size:19px}.tip-bubble p{margin-bottom:9px;font-size:14.5px}.tip-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.confetti{pointer-events:none;z-index:5;position:fixed;inset:0;overflow:hidden}.confetti span{border:1.5px solid var(--ink);opacity:0;border-radius:2px;width:11px;height:17px;animation:2.4s ease-in forwards fall;position:absolute;top:-20px}.modal-backdrop{z-index:10;background:#2b23509e;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{width:610px;max-width:100%;padding:22px}.conflict-grid{grid-template-columns:1fr 1fr;gap:13px;margin:14px 0 18px;display:grid}.conflict-side{background:var(--cream);border:2.5px solid var(--ink);border-radius:14px;padding:12px}.conflict-side ul{margin:0;padding-left:18px;font-size:14px}@keyframes pop{0%{transform:scale(.6)}to{transform:scale(1)}}@keyframes star-in{0%{transform:scale(0)rotate(-40deg)}to{transform:scale(1)rotate(0)}}@keyframes bubble-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes wobble{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)translateY(-2px)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes fall{0%{opacity:1;transform:translateY(0)rotate(0)}85%{opacity:1}to{opacity:0;transform:translateY(100vh)rotate(540deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.confetti{display:none}}
