*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#16242d;color:#f5f3e9;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{cursor:pointer;border:1px solid #ffffff24;border-radius:9px;background:#243640e8;color:#fff;font-size:14px;font-weight:700;padding:11px 15px;touch-action:manipulation}button:hover{background:#36505e}button:disabled{opacity:.5;cursor:default}button:focus-visible{outline:3px solid #ffa133;outline-offset:3px}.primary{background:#ff9025;color:#231d16;border-color:#ffb165;box-shadow:0 3px #a94b13;font-weight:800}.primary:hover{background:#ffa642}[hidden]{display:none!important}#viewport,#shade{position:fixed;inset:0}#viewport canvas{display:block;width:100%;height:100%;touch-action:none}#shade{pointer-events:none;background:linear-gradient(#101d2780,transparent 26%,transparent 75%,#0a171f66)}header{position:absolute;top:0;left:0;width:100%;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.logo{font-weight:900;font-size:22px;letter-spacing:-.7px;text-shadow:0 2px 15px #000}.logo b{color:#ff972f}.logo span{display:block;font-size:10px;letter-spacing:2.4px;margin-top:5px;color:#ced5d4;font-weight:500}.topbuttons{display:flex;gap:8px;pointer-events:auto}.topbuttons button{font-size:12px;padding:9px 12px}.modal{position:fixed;inset:0;background:#0b1824cc;backdrop-filter:blur(9px);z-index:20;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}.welcome-card{max-width:1000px;background:#192a35;border:1px solid #ffffff24;border-radius:22px;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr;box-shadow:0 30px 100px #0008}.welcome-card img{width:100%;height:100%;object-fit:cover;object-position:68% center}.welcome-copy{padding:42px 34px}.eyebrow{font-size:11px;letter-spacing:2px;color:#ffac59;font-weight:700}h1{font-size:44px;line-height:1.05;letter-spacing:-1.5px;margin:20px 0}p{font-size:16px;line-height:1.6;color:#bdcbd1}.steps{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:#fff;padding:10px 0 25px}.welcome-copy .primary{width:100%;font-size:17px;padding:16px}.welcome-copy small{display:block;color:#93a8b3;font-size:12px;text-align:center;margin-top:16px}#jobcard{position:absolute;left:24px;top:103px;width:270px;padding:20px;border:1px solid #ffffff20;border-radius:14px;background:#15252de8;box-shadow:0 12px 30px #0002}h2{font-size:26px;margin:10px 0}#jobcard p{font-size:13px;line-height:1.5;margin:10px 0 18px}.roomprogress,.mini-progress{background:#ffffff19;height:4px;overflow:hidden;border-radius:6px}.roomprogress i,.mini-progress i{display:block;background:#ff9a39;width:0;height:100%;transition:width .15s}.roomcaption{display:flex;align-items:center;justify-content:space-between;margin-top:10px;color:#b8c8d0;font-size:11px}.roomcaption button{font-size:11px;padding:6px 8px}#markers{position:absolute;inset:0;pointer-events:none}.marker{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);background:#fa9029;color:#201a14;border:2px solid #ffd4a3;border-radius:50%;width:42px;height:42px;padding:0;font-weight:900;box-shadow:0 0 0 7px #ff941b22,0 4px 15px #0005}.marker.done{background:#8cdfaf;border-color:#c3f6d8}.marker:hover{background:#ffb35c}.marker span{position:absolute;top:46px;left:50%;transform:translate(-50%);background:#172730d9;border-radius:5px;padding:5px 8px;white-space:nowrap;font-size:10px;color:#fff;font-weight:600}#toast{position:absolute;top:82px;left:50%;transform:translate(-50%);background:#172a34ec;border:1px solid #ff98274d;padding:12px 18px;border-radius:12px;text-align:center;font-size:14px;opacity:0;transition:opacity .2s;max-width:85vw;pointer-events:none}#walkHUD{position:absolute;bottom:25px;left:25px;right:25px;display:flex;align-items:flex-end;justify-content:space-between;pointer-events:none}#joystick{width:116px;height:116px;border:2px solid #ffffff3b;background:#14263065;border-radius:50%;display:flex;align-items:center;justify-content:center;pointer-events:auto;touch-action:none}#stick{height:48px;width:48px;background:#ff9d3cbb;border:2px solid #ffc88d;border-radius:50%;pointer-events:none}.walk-actions{text-align:right;pointer-events:auto}.walk-actions span{display:block;font-size:12px;color:#e1e8e8;line-height:1.7;margin-top:12px;text-shadow:0 2px 4px #000}.walk-actions .primary{min-width:190px;font-size:16px}#workHUD{pointer-events:none;position:absolute;inset:0}.work-heading{position:absolute;top:95px;left:24px;right:24px;display:flex;align-items:center;gap:14px;background:#172730e8;border:1px solid #ffffff22;padding:12px 18px;border-radius:12px}.work-heading button{pointer-events:auto}.work-heading>div{flex:1}.work-heading span{font-size:11px;letter-spacing:1.5px;color:#b8cbd3;display:block}.work-heading strong{font-size:20px;display:block;margin-top:3px}.work-heading>b{font-size:26px;color:#ffad5b}#technique{position:absolute;top:186px;left:50%;transform:translate(-50%);width:320px;text-align:center;background:#172730ce;border-radius:8px;padding:10px 14px;font-size:13px}#technique .mini-progress{margin-top:9px}.work-tools{position:absolute;bottom:20px;left:24px;right:24px;background:#14252fee;border:1px solid #ffffff22;padding:18px;display:flex;align-items:center;gap:24px;border-radius:14px;pointer-events:auto}.tool-controls{display:flex;gap:28px;flex:1}.tool-controls label{font-size:12px;color:#afc0c9;display:block;flex:1}.tool-controls output{float:right;color:#fff;font-weight:700}input[type=range]{display:block;width:100%;accent-color:#ff982b;margin:12px 0 0;cursor:pointer;min-width:80px}.hawk-control{width:135px}.hawk-control>span{font-size:10px;color:#b0c1c9;letter-spacing:1px}.hawk-control b{float:right;color:#fff}.hawk-control .mini-progress{margin:6px 0}.hawk-control button{font-size:12px;width:100%;padding:7px}kbd{font-size:10px;opacity:.6;padding-left:4px}.work-tools>.primary{max-width:190px;min-height:49px}.dialog{width:100%;max-width:550px;background:#1c303b;border:1px solid #ffffff25;box-shadow:0 20px 80px #0006;padding:30px;border-radius:20px;max-height:90dvh;overflow:auto}.dialog p{font-size:14px}.dialog small{display:block;color:#8fa7b3;font-size:12px;line-height:1.5;margin:20px 0}.dialog button{margin:8px 8px 0 0}#rating{font-size:48px;color:#ffac56;font-weight:900}body.working #jobcard,body.working .logo span{display:none}@media(max-width:750px){header{padding:14px}.logo{font-size:17px}.logo span{font-size:8px;letter-spacing:1.4px}.topbuttons{gap:5px}.topbuttons button{font-size:11px;padding:8px}.welcome-card{max-width:500px;display:block}.welcome-card img{height:180px;object-position:center}.welcome-copy{padding:22px}h1{font-size:34px;margin:12px 0}h1 br{display:none}.welcome-copy p{font-size:14px}.steps{padding-bottom:15px;font-size:11px}#jobcard{top:76px;left:14px;width:220px;padding:13px}#jobcard h2{font-size:20px}#jobcard p{font-size:12px;margin:6px 0 12px}.eyebrow{font-size:9px}#walkHUD{bottom:20px;left:18px;right:18px}#joystick{width:100px;height:100px}.walk-actions span{font-size:10px}.walk-actions .primary{min-width:150px;font-size:14px}#toast{top:66px;width:max-content;max-width:90vw;font-size:12px;padding:9px 12px}.work-heading{top:65px;left:12px;right:12px;padding:10px;gap:10px}.work-heading strong{font-size:16px}.work-heading button{font-size:12px;padding:10px}.work-heading>b{font-size:20px}#technique{top:142px;width:260px;font-size:12px}.work-tools{bottom:12px;left:12px;right:12px;gap:12px;flex-wrap:wrap;padding:13px}.tool-controls{gap:18px;flex-basis:100%}.hawk-control{flex:1;width:auto}.hawk-control button{width:auto;float:right}.hawk-control>span{display:block;width:45%}.hawk-control .mini-progress{width:45%}.hawk-control button{margin-top:-28px}.work-tools>.primary{max-width:180px;font-size:12px;min-height:40px}.dialog{padding:22px}}@media(max-height:550px){.welcome-card{display:grid;grid-template-columns:1fr 1fr;max-width:850px}.welcome-card img{height:100%;min-height:280px}.welcome-copy{padding:20px}h1{font-size:30px}.welcome-copy p{font-size:13px}.welcome-copy small{font-size:10px}.steps{font-size:10px;padding-bottom:12px}#jobcard{top:66px;padding:12px;width:220px}#jobcard p{margin:6px 0 10px}.work-heading{top:58px;left:14px;right:auto;width:310px;padding:8px}.work-heading strong{font-size:15px}.work-heading button{padding:8px;font-size:11px}.work-heading>b{font-size:20px}#technique{top:64px;left:auto;right:14px;transform:none;width:250px}.work-tools{padding:10px;flex-wrap:nowrap;bottom:10px}.tool-controls{flex-basis:auto;gap:15px}.hawk-control{flex:none;width:115px}.hawk-control>span,.hawk-control .mini-progress{width:100%}.hawk-control button{width:100%;float:none;margin:0}.work-tools>.primary{font-size:12px;max-width:155px}#walkHUD{bottom:15px}#joystick{width:85px;height:85px}.walk-actions span{font-size:10px}header{padding:12px 16px}}@media(min-width:900px)and (min-height:551px){#technique{left:auto;right:24px;transform:none;width:250px}}#stageTrack{display:flex;justify-content:space-between;gap:4px;margin-top:15px}#stageTrack span{font-size:8px;color:#708892;border-top:2px solid #ffffff18;padding-top:6px;flex:1;text-align:center}#stageTrack span.current{color:#ffac59;border-color:#ff9025}#stageTrack span.past{color:#9ad2ad;border-color:#83c89a}.simple-tool{flex:1}.simple-tool strong{display:block;font-size:15px;margin-top:7px;color:#dde6e8}#cutting{position:absolute;right:24px;top:240px;width:255px;pointer-events:auto;background:#172a34f0;border:1px solid #ffac5933;border-radius:12px;padding:16px}.cut-title{display:flex;justify-content:space-between;font-size:11px;color:#ffac59}.cut-title b{color:#fff}#cutting p{font-size:12px;line-height:1.5;margin:12px 0}#cutting label{display:block;color:#b8cbd1;font-size:12px}#cutting output{float:right;color:#fff}#cutting input{margin-top:10px}.cutButtons{display:flex;gap:7px;margin:13px 0 8px}.cutButtons button{font-size:11px;padding:10px;flex:1}#cement{width:100%;font-size:12px}.cutButtons button.cut{background:#2c6245;border-color:#91d5ab}body.cornice #technique{display:none}@media(max-width:750px){.simple-tool strong{font-size:12px;line-height:1.4}.work-tools{flex-wrap:nowrap}.simple-tool{min-width:0}#cutting{right:12px;top:auto;bottom:105px;width:225px;padding:12px}#cutting p{margin:8px 0;font-size:11px}#cutting input{margin-top:8px}.cutButtons{margin:9px 0 6px}#stageTrack span{font-size:7px}.work-tools>.primary{min-width:120px}body.cornice .simple-tool strong{max-width:200px}}@media(max-height:550px){#cutting{top:120px;bottom:auto;right:14px;width:210px;padding:10px}.cut-title{font-size:10px}#cutting p{font-size:10px;margin:6px 0}.cutButtons button{padding:7px;font-size:10px}.cutButtons{margin:7px 0 5px}#cement{padding:7px;font-size:11px}.simple-tool strong{font-size:12px}#jobcard{width:220px}#stageTrack{margin-top:10px}}#loading{z-index:40}#error{z-index:45}#freshConfirm{z-index:50}.logo img{width:128px;height:58px;object-fit:contain;background:#fff;padding:5px;border-radius:6px}.logo span{font-size:11px;letter-spacing:1.4px}.brand{display:block!important;width:170px!important;height:76px!important;object-fit:contain!important;background:#fff;border-radius:6px;padding:6px;margin-bottom:20px}.welcome-card .welcome-copy .brand{width:145px!important;height:65px!important}.welcome-copy .eyebrow{display:block}.welcome-copy h1{margin:14px 0}.welcome-copy #newJob{width:100%;margin-top:12px}.completion{max-width:920px}.completion h2{font-size:34px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px}.comparison figure{margin:0;position:relative}.comparison img{width:100%;border-radius:9px;display:block}.comparison figcaption{position:absolute;left:10px;bottom:10px;background:#172730df;padding:6px 12px;border-radius:5px}#rating{font-size:24px}.backlink{display:inline-block;color:#ffc078;margin:15px}#cutting{top:auto;bottom:112px}.work-heading{top:90px}.simple-tool strong{font-size:14px}.eyebrow{font-size:12px}#performance{font:12px monospace}select{padding:10px;border-radius:8px;margin-left:12px;background:#263d49;color:#fff}#technique{top:168px}#jobcard{width:245px;top:113px}#jobcard p{font-size:14px}.marker{width:46px;height:46px}.marker span{font-size:12px}#stageTrack span{font-size:9px}#cutting label,#cutting p{font-size:14px}.cutButtons button{font-size:12px;min-height:44px}#cement{min-height:44px}#cutAngle{height:30px}.topbuttons button{min-height:42px}#jobcard:has(+#markers){pointer-events:auto}#pauseModal .dialog{max-width:480px}@media(max-width:750px){header{padding:8px 12px}.logo img{width:95px;height:43px}.logo span{display:none}.topbuttons button{font-size:12px;padding:9px 8px}#jobcard{top:66px;left:12px;width:205px;padding:12px}#jobcard p{font-size:12px}#jobcard h2{font-size:19px}.work-heading{top:64px}#technique{top:140px;width:235px}.brand{width:120px!important;height:54px!important}.welcome-copy .brand{display:none!important}.welcome-copy p{line-height:1.45}.comparison{gap:6px}.completion h2{font-size:26px}#cutting{width:190px;bottom:105px;padding:10px}#cutting p,#cutting label{font-size:12px}.cut-title{font-size:10px}.work-tools{padding:10px;gap:8px}.work-tools>.primary{min-width:110px;max-width:135px}.simple-tool strong{font-size:12px}.modal{padding:12px}.marker span,.roomcaption{font-size:10px}}@media(max-height:550px){.logo img{width:90px;height:40px}.work-heading{top:58px;width:310px}.work-tools{bottom:7px}#technique{top:65px}#cutting{top:112px;bottom:auto;width:205px;padding:8px}#cutting p,.cutButtons{margin:5px 0}.cutButtons button,#cement{min-height:34px;padding:6px}#cutAngle{height:15px;margin:0}#jobcard{top:65px;width:210px}.welcome-copy .brand{display:none!important}.welcome-copy{padding:20px}.welcome-copy h1{font-size:28px}.welcome-copy p{font-size:13px}.welcome-copy .primary{padding:12px}.comparison img{max-height:190px;object-fit:cover}.completion .brand{display:none!important}}#markers,#workHUD{display:none!important}#profiles{margin-top:12px}#profiles[hidden]{display:none}.profile-options{display:flex;gap:6px;margin:7px 0}.profile-options button{padding:8px 12px;font-size:12px}.profile-options button[aria-pressed=true]{background:#ee762f;color:#14222b;border-color:#ee762f}#profiles small{font-size:11px}.walk-actions span{max-width:260px}#points{display:inline-flex;align-items:center;padding:9px 12px;border-radius:20px;background:#f9dca7;color:#253039;font-size:13px;font-weight:800;white-space:nowrap}#jobcard{max-height:calc(100dvh - 250px);overflow:auto;overscroll-behavior:contain;width:280px}#learningGuide{margin:12px 0;border-top:1px solid #ffffff30;padding-top:12px}summary{cursor:pointer;font-weight:700;line-height:1.4}#learningGuide summary{font-size:13px;color:#ffbf76}#learningGuide h3{font-size:13px;margin:12px 0 6px}#learnChoices{display:grid;gap:6px}#learnChoices button{font-size:12px;text-align:left;min-height:44px}#learningGuide p{line-height:1.5}.game-shortcut{padding:9px;border-left:2px solid #ef9a49;background:#ffffff09}#learnAnswer{color:#c9eccb;font-size:12px!important}.recap{text-align:left;margin:15px 0}.recap li{margin:10px 0;font-size:14px;line-height:1.5}.recap p{font-size:13px}.modal{overflow-y:auto}.dialog{max-height:90dvh;overflow-y:auto}@media(max-width:750px){#points{font-size:11px;padding:7px}#jobcard{width:215px;max-height:calc(100dvh - 245px)}header{gap:5px}.topbuttons{flex-wrap:wrap;justify-content:flex-end;gap:4px}.topbuttons button{min-height:36px;padding:7px;font-size:11px}}@media(max-height:550px){#jobcard{max-height:calc(100dvh - 150px);width:230px}#learningGuide summary{font-size:12px}.dialog{max-height:94dvh}}.stage-reason{border-left:2px solid #ffb66f;padding-left:9px;color:#f4d4ac;font-size:12px!important}#jobcard{scrollbar-width:thin;scrollbar-color:#637980 #172730}@media(max-width:500px)and (min-height:551px){#jobcard{top:102px;max-height:calc(100dvh - 275px)}#toast{top:auto;bottom:170px;max-width:calc(100vw - 24px)}}.games-back{pointer-events:auto;display:inline-flex;align-items:center;min-height:42px;padding:9px 12px;background:#243640e8;border:1px solid #ffffff24;border-radius:9px;color:#fff;text-decoration:none;font-size:13px;font-weight:700}.games-back:focus-visible{outline:3px solid #ffa133;outline-offset:3px}@media(max-width:750px){.games-back{font-size:11px;min-height:36px;padding:7px}}
