:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#29443b;background:#f6f4ed;font-synthesis:none;font-weight:400;font-size:14px;--pine: #214d3e;--ink: #29443b;--muted: #849084;--line: #e4e5db;--cream: #f7f5ee;--sage: #e7eddf;--orange: #c87949;--gold: #edcf91;--sand: #cbbda4;--paper: #fffbed;--card: #fffdf7;--veil-white: #ffffff50;--parchment: #fcfbf5;--bark: #514133;--tan: #b59c7a;--glow: #fff4db;--umber: #68543c}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:1px solid var(--line);background:var(--card);border-radius:7px;color:var(--ink);padding:9px 12px;font-weight:500;transition:background .15s,box-shadow .15s,transform .15s}button:hover:not(:disabled){background:#eaf0e3}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.42}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bc8d49;outline-offset:3px}a{color:var(--pine)}h1,h2,h3,p{margin:0}[data-screen-title]:focus{outline:none}h1{font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-1.1px;line-height:1.12}h2{font-size:18px;font-weight:600;letter-spacing:-.3px}h3{font-size:11px;letter-spacing:1.1px;text-transform:uppercase;margin:0 0 10px}p{line-height:1.7;color:#6f7a6e}small{font-size:11px}svg{flex-shrink:0}button.primary{background:var(--pine);border-color:var(--pine);color:#f5f2df;min-height:43px;padding:11px 17px}button.primary:hover:not(:disabled){background:#30614d;box-shadow:0 4px 12px #27473515}.primary.large{min-height:52px;padding:15px 22px;font-size:15px}.text-link{border:0;background:transparent;padding:7px 0;font-size:12px}.app-body{display:flex;min-height:100dvh}.cafe-canvas{width:100%;height:100%;position:relative;isolation:isolate}.cafe-canvas canvas{outline:none;touch-action:none}.actor-label{font-size:6px;letter-spacing:1px;background:#fff9e5c9;color:#61725e;border-radius:3px;white-space:nowrap;padding:3px 5px}.scene-loading,.webgl-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:50px;text-align:center;color:#788a6e;flex-direction:column;gap:20px}.webgl-fallback p{max-width:400px}.workspace-main{flex:1;min-width:0;padding:22px 26px 20px;display:flex;flex-direction:column;height:calc(100dvh - 82px);min-height:620px}.workspace-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.breadcrumb{border:0;background:transparent;color:#929d87;font-size:10px;padding:0;margin-bottom:10px}.breadcrumb span{margin:0 6px;color:#c5cab8}.workspace-heading h1{font-size:28px;display:flex;align-items:center;gap:17px;letter-spacing:-.6px}.workbench{display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:23px;flex:1;min-height:0}.cafe-panel{display:flex;flex-direction:column;min-height:0}.scene-space{position:relative;flex:1;min-height:260px;border:1px solid #dfe5d3;border-radius:12px;background:radial-gradient(ellipse at 50% 48%,#e7ecd9,#dfe8d5);overflow:hidden}.scene-space .cafe-canvas{position:absolute;inset:0;padding:0 2px 16px}.playback-toolbar{display:flex;align-items:center;gap:13px;margin:11px 0 15px}.playback-toolbar>button{padding:6px 8px;font-size:10px;background:transparent;border:0;color:#7d8f74}.editor-panel{border:1px solid #e0e3d6;border-radius:12px;background:var(--parchment);overflow:hidden;display:flex;flex-direction:column;min-height:0;box-shadow:0 5px 15px #526b4504}.editor-body{flex:1;min-height:100px;overflow:auto;background:radial-gradient(#dce1d24d .7px,transparent .7px);background-size:12px 12px;scrollbar-width:thin;scrollbar-color:#d9dfcd transparent}.block-list{padding:16px 12px 24px}.block{display:flex;align-items:center;min-height:38px;margin-bottom:6px;border:1px solid;border-radius:5px;position:relative;box-shadow:0 2px #5364490a;scroll-margin:12px}.block:before{content:"";position:absolute;top:-1px;left:30px;width:16px;height:4px;border-radius:0 0 3px 3px;background:var(--parchment);border:1px solid;border-top:0;border-color:inherit}.block.flow{background:#e4ece4;border-color:#cbd9ca;color:#5f7d68}.block.action{background:#eee9d7;border-color:#ddd4b5;color:#8a7b4e}.block.function{background:#ece5ed;border-color:#d9cbdc;color:#8b6f92}.block.help{background:#f1e0d4;border-color:#e0c4b0;color:#ae7c5f}.block.selected{outline:1px solid #93a785;outline-offset:2px}.block.active{outline:2px solid #bfa150;outline-offset:1px;background:#f5e9b9}.block.failure{outline:2px solid #c06d53;outline-offset:1px;background:#f3dacf}.block select:disabled{opacity:1;cursor:default}.palette{position:relative;padding:14px 14px 13px;border-top:1px solid #e7e9dd;background:#f7f7ee}.palette .library-help{position:absolute;z-index:5;top:100%;right:10px;left:10px;margin:6px 0 0;padding:8px 12px;border-radius:10px;color:#f7f1e6;background:#2f2a24f0;box-shadow:0 6px 18px #2f2a2433;font-size:12.5px;line-height:1.45;pointer-events:none}.palette .library-help strong{margin-right:2px;font-weight:750}.palette .library-help-example{display:block;margin-top:2px;color:#f7f1e6bf}.palette>label{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1.1px;font-weight:600;color:#9aa488;margin-bottom:9px}.palette label span{font-size:6px;letter-spacing:.3px;font-weight:400}.palette>div{display:flex;gap:7px}.palette select{width:100%;min-width:0;font-size:9px;color:#7b8b6e;padding:9px;border:1px solid #dde4ce;background:#fffdf4;border-radius:5px}.targets{display:flex;justify-content:space-between;margin:0 0 11px;font-size:8px;color:#a2aa92}.targets span{display:flex;align-items:center;gap:4px}.run-button{width:100%;font-size:12px;min-height:43px!important}.run-button kbd{margin-left:auto;font-size:10px;background:#ffffff0d;border:1px solid #ffffff20;color:#bed0b6}.run-button>svg{margin-right:auto}.run-button.stop-button{background:#63785b;border-color:#63785b}.code-input{width:100%;height:100%;min-height:240px;padding:15px;font-family:ui-monospace,monospace;font-size:12px;line-height:1.7;resize:none;border:0;background:#f9f8ef;color:#51725e;white-space:pre;tab-size:2}.modal{border:1px solid #d5ddc9;border-radius:14px;background:#faf9f1;color:var(--ink);padding:25px;width:min(540px,90vw);max-height:min(650px,90dvh);box-shadow:0 24px 80px #17392b38}.modal.wide{width:min(710px,92vw)}.modal::backdrop{background:#183c3366;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:15px}.modal-top h2{font-family:Georgia,serif;font-weight:400;font-size:25px}.modal-top>button{border:0;background:transparent;padding:5px}.modal p{margin:14px 0;font-size:12px}.modal button{font-size:11px}.modal-buttons{display:flex;justify-content:flex-end;gap:9px;margin-top:23px}.danger{background:#ae6245;color:#fff3dd;border-color:#ae6245}.lesson-note{background:#eaf0e0;padding:20px;font-family:Georgia,serif;line-height:1.7;font-size:16px;border-radius:8px;color:#617b55}.help-targets{display:flex;gap:13px;margin:20px 0;font-size:10px;color:#b19c6a}.code-example{max-height:280px;overflow:auto;background:#edf0e3;border-radius:8px;padding:18px;font-size:11px;line-height:1.6;color:#58784e}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}.setting-row strong{font-size:12px;font-weight:500}.setting-row small{display:block;color:#96a086;line-height:1.6;margin-top:5px;font-size:10px}input[type=checkbox]{appearance:none;width:33px;height:19px;border-radius:20px;background:#d8decf;flex-shrink:0;position:relative;cursor:pointer}input[type=checkbox]:before{content:"";height:13px;width:13px;position:absolute;left:3px;top:3px;border-radius:50%;background:#fff;transition:transform .15s}input[type=checkbox]:checked{background:#809f6b}input[type=checkbox]:checked:before{transform:translate(14px)}kbd{font-size:11px;padding:3px 5px;border:1px solid #dfe3d4;background:#f0f2e7;border-radius:4px;white-space:nowrap}.error-text{color:#b3694f!important}input[type=range]{width:100%;height:4px;accent-color:#819f69;cursor:pointer}.outline-danger{margin-top:13px;font-size:11px;background:transparent;border-color:#dbcab4;color:#a08a6a}.file-input{display:none}html[data-motion=reduced] *,html[data-motion=reduced] *:before,html[data-motion=reduced] *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}@media(min-width:1500px){.workbench{grid-template-columns:minmax(0,1fr) 425px;gap:28px}.workspace-main{padding:28px 40px 25px}.block{min-height:43px}}@media(max-width:1150px){.workspace-main{padding:19px 19px 17px;height:calc(100dvh - 72px);min-height:620px}.workbench{grid-template-columns:minmax(0,1fr) 340px;gap:17px}.workspace-heading{margin-bottom:18px}.workspace-heading h1{font-size:24px;gap:10px}}@media(max-width:900px){.workspace-main{height:auto;min-height:710px}.workbench{grid-template-columns:minmax(0,1fr) 330px}.workspace-heading h1{font-size:22px}}.block select{font-size:11px}.palette>label{font-size:8px;letter-spacing:.8px}.palette label span{font-size:8px}.palette select{font-size:11px}.targets{font-size:9px}.playback-toolbar>button{font-size:11px}.workspace-heading h1{flex-wrap:wrap}.scene-space .cafe-canvas{padding-bottom:25px}.workspace .app-body{min-width:0;min-height:100dvh;background:radial-gradient(ellipse at 30% 48%,#e2e9d8,#f6f4ed 68%)}.workspace-main{height:100dvh;min-height:640px;padding:24px 30px;gap:20px}.workspace-heading{margin:0;flex-shrink:0}.workspace-heading h1{font-size:25px}.workbench{grid-template-columns:minmax(0,1fr) minmax(330px,380px);gap:32px}.cafe-panel{justify-content:center;gap:18px;padding:12px 0 10px}.scene-space{border:0;background:transparent;border-radius:0;min-height:300px}.scene-space .cafe-canvas{padding:0}.playback-toolbar{align-self:center;flex-shrink:0;max-width:100%;margin:0;padding:8px;gap:8px;background:var(--parchment);border:1px solid #e0e3d6;border-radius:14px;box-shadow:0 8px 30px #29443b0c;flex-wrap:wrap;justify-content:center}.playback-toolbar .run-button{width:auto;min-width:135px;font-size:12px;padding:10px 14px}.playback-toolbar .run-button>svg{margin:0}.playback-toolbar .run-button kbd{display:none}.editor-panel{align-self:center;width:100%;height:100%;max-height:780px;border-radius:18px;box-shadow:0 16px 48px #29443b12,0 2px 8px #29443b06}.targets{flex-wrap:wrap;gap:8px;margin-bottom:0}@media(min-width:1500px){.workspace-main{padding:30px 44px}.workbench{grid-template-columns:minmax(0,1fr) 410px;gap:44px}}@media(max-width:1000px){.workspace-main{padding:20px;gap:16px}.workbench{grid-template-columns:minmax(0,1fr) 330px;gap:16px}.playback-toolbar{gap:3px}.playback-toolbar .run-button{min-width:0}}@media(max-width:720px){.workspace-main{height:auto;min-height:100dvh;padding:16px}.workspace-heading h1{font-size:22px}.workbench{grid-template-columns:minmax(0,1fr);gap:24px}.cafe-panel{min-height:420px;padding:0}.scene-space{min-height:340px}.editor-panel{height:580px;max-height:none}}.playback-toolbar .run-button{background:var(--pine);color:#f5f2df}.playback-toolbar .run-button:hover{background:#30614d}.robot-tabs{display:flex;gap:5px;padding:8px 14px;border-top:1px solid #e0e3d6}.robot-tabs button{flex:1;font-size:11px;background:transparent}.robot-tabs button[aria-selected=true]{background:#e2ebd9;border-color:#9aaf8d;color:#486743}.tile-count{width:44px;border:1px solid #c6d0b9;border-radius:4px;background:#fffdf2;color:inherit;padding:5px;font-size:11px}.block>span{font:inherit;padding:0 4px}.playback-speed{display:flex;flex-direction:column;gap:7px;min-width:130px;flex:1}.playback-speed>span{display:flex;align-items:center;gap:6px;font-size:10px;color:#6b805f}.playback-speed small{margin-left:auto;font-size:9px;color:#849078}.playback-speed input{width:100%;accent-color:#66875b}.playback-speed strong{font-variant-numeric:tabular-nums}.editor-panel .code-row .block.picked{outline:2px dashed #f4c95d;outline-offset:2px}.editor-panel .code-insertion.next-spot{opacity:1}.editor-panel .code-insertion.next-spot:not(.with-hint):after{content:"";position:absolute;top:5px;left:0;right:0;height:2px;border-radius:2px;background:#f4c95d}.editor-panel .code-insertion.with-hint.next-spot{border-color:#f4c95d;color:#8a6a1f}.editor-panel .block-actions{position:absolute;top:50%;left:calc(100% + 8px);display:flex;gap:3px;padding:3px;border-radius:8px;background:#fffaf2;box-shadow:0 0 0 1px #d8c6ad,0 3px 8px #4a35201f;transform:translateY(-50%);z-index:4}.editor-panel .block-actions button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:6px;background:transparent;color:#5c4632;cursor:pointer}.editor-panel .block-actions button:hover,.editor-panel .block-actions button:focus-visible{background:#f4c95d55}.editor-panel .block-actions button[aria-disabled=true]{color:#5c463266;cursor:default}.editor-panel .block-actions button[aria-disabled=true]:hover{background:transparent}.editor-panel .block .block-fold,.editor-panel .block .block-go{display:inline-flex;align-items:center;gap:1px;min-width:24px;height:24px;margin-left:2px;padding:0 5px;border:0;border-radius:6px;background:#ffffff59;color:inherit;font:600 10px ui-monospace,monospace;cursor:pointer}.editor-panel .block .block-fold:hover,.editor-panel .block .block-fold:focus-visible,.editor-panel .block .block-go:hover,.editor-panel .block .block-go:focus-visible{background:#ffffffa6}.editor-panel .code-scope.folded>.code-row:after{content:"";position:absolute;left:10px;bottom:-6px;width:22px;height:4px;border-radius:0 0 4px 4px;border:2px dashed #bca58b;border-top:0}.editor-panel .code-row .block.flagged{outline:2px solid #f0a64a;outline-offset:2px}.editor-panel .code-text-lines>.flagged{background:#f0a64a1f;box-shadow:inset 3px 0 #f0a64a}.routine-check{flex:none;display:flex;align-items:center;gap:9px;padding:9px 12px 9px 16px;border-top:1px solid #f0a64a4d;background:color-mix(in srgb,var(--draft-deep, #2b231f) 90%,#f0a64a);color:var(--draft-text, #f3e6cf);font-size:12px;line-height:1.45}.workspace-main .editor-panel .routine-check{border-radius:0 0 17px 17px}.workspace-main .editor-panel .routine-check:has(~.failure-card){border-radius:0}.workspace-main .editor-panel:has(.routine-check,.text-tools) .editor-body{border-radius:0}.routine-check>svg{flex:none;color:#f6bd6d}.routine-check>p{flex:1;margin:0}.routine-check>p>strong{color:#f6bd6d}.routine-check>button{flex:none;padding:4px 11px;border:1px solid #f0a64a80;border-radius:999px;background:transparent;color:inherit;font-size:11.5px;font-weight:700}.routine-check>button:hover{background:#ffffff10}.routine-check>button:focus-visible{outline:2px solid #f6bd6d;outline-offset:2px}.text-tools{flex:none;display:flex;align-items:center;gap:12px;min-height:38px;padding:6px 12px 6px 16px;border-top:1px solid var(--draft-line, #655345);background:var(--draft-deep, #2b231f);color:var(--draft-muted, #c5b298);font-size:11.5px;line-height:1.4}.workspace-main .editor-panel .text-tools:not(:has(~.routine-check,~.failure-card)){border-radius:0 0 17px 17px}.text-help{flex:1;min-width:0;margin:0}.text-help>strong{color:var(--draft-text, #f3e6cf)}.text-tools>button{flex:none;display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border:1px solid var(--draft-line, #655345);border-radius:999px;background:transparent;color:var(--draft-text, #f3e6cf);font-size:11.5px;font-weight:700}.text-tools>button:hover{background:#ffffff10}.text-tools>button:focus-visible{outline:2px solid #f4c95d;outline-offset:2px}.webgl-retry{font-weight:700}:root{--pine: #71452f;--ink: #392b24;--muted: #766659;--line: #ddd2c1;--cream: #faf5e9;--sage: #dce4ce;--orange: #b96847;--coffee: #71452f;--yellow: #ecd29b;--red: #b96847;--mint: #dce4ce;color:var(--ink);background:var(--cream);font-family:Avenir Next,Nunito,ui-rounded,Segoe UI,sans-serif}body{background:var(--cream)}button{border-radius:12px;color:var(--ink);font-weight:650;background:var(--card)}button:hover:not(:disabled){background:#eee3d1;border-color:#c6a37b}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--coffee)}button.primary,.playback-toolbar .run-button{background:var(--coffee);border-color:var(--coffee);color:#fff;box-shadow:0 3px #4e3023}button.primary:hover:not(:disabled),.playback-toolbar .run-button:hover:not(:disabled){background:#593623}button.primary:active:not(:disabled){box-shadow:none;transform:translateY(3px)}h1{font-family:inherit;font-weight:850;letter-spacing:-1.6px;line-height:1.08}h2{font-family:inherit;font-weight:800}p{color:var(--muted)}.text-link{color:var(--coffee);font-weight:700}.setting-row strong{font-size:14px;font-weight:750}.setting-row small{font-size:12px;color:var(--muted)}input[type=range]{accent-color:var(--coffee)}input[type=checkbox]:checked{background:var(--coffee)}.workspace .app-body{background:var(--cream)}.workspace-main{padding:24px 28px;gap:20px;min-height:720px}.workspace-heading h1{font-size:29px;font-weight:850}.breadcrumb{color:var(--muted);font-size:11px;margin-bottom:8px}.workbench{grid-template-columns:minmax(0,1fr) minmax(483px,529px);gap:24px}.cafe-panel{padding:0;gap:14px}.scene-space{background:radial-gradient(ellipse at 50% 55%,#ede1cf,transparent 70%);border-radius:24px;min-height:300px}.playback-toolbar{background:#fff;border-color:var(--line);box-shadow:0 4px #e6e0d1;border-radius:18px;padding:10px;gap:10px}.playback-toolbar>button{color:var(--ink);font-weight:700}.playback-toolbar .run-button{border-radius:12px;font-size:13px;min-height:42px}.playback-toolbar .run-button.stop-button{background:var(--red);box-shadow:0 3px #a83d2c;border-color:var(--red)}.playback-speed>span{color:var(--ink)}.playback-speed small{color:var(--muted)}.playback-speed input{accent-color:var(--coffee)}.editor-panel{align-self:stretch;height:100%;max-height:none;background:#fff;border:1px solid #d2bfa6;border-radius:22px;box-shadow:0 5px #ded0b8;overflow:hidden}.robot-tabs{padding:7px 16px;border:0;background:#f1eade;gap:7px}.robot-tabs button{font-size:12px;border:0;border-radius:10px;padding:7px;color:var(--muted)}.robot-tabs button[aria-selected=true]{background:var(--coffee);color:#fff}.editor-body{background:#faf9f5;min-height:150px;overflow:auto;scrollbar-color:#c5b49b transparent}.block-list{padding:16px 16px 20px;min-width:100%;width:max-content}.block,.command-tile,.robot-action{--tile: #f4c95d;--edge: #b3822b;--tile-ink: #443117}.block.flow,.command-tile.flow,.robot-action.flow{--tile: #f49b83;--edge: #b26550;--tile-ink: #502c25}.block.motion,.command-tile.motion,.robot-action.motion{--tile: #91d5b6;--edge: #4d9275;--tile-ink: #203e33}.block.function,.command-tile.function,.robot-action.function{--tile: #c3acf0;--edge: #8a70b8;--tile-ink: #38274f}.block.help,.command-tile.help{--tile: #9bcef2;--edge: #628eae;--tile-ink: #233e53}.block{background:var(--tile);border:1px solid var(--edge);color:var(--tile-ink);border-radius:8px 12px 12px 8px;box-shadow:0 3px 0 var(--edge);min-height:44px;min-width:298px;margin-bottom:9px;position:relative;scroll-margin:18px;outline:none;padding-right:5px}.block:before{left:44px;top:-1px;width:18px;height:5px;background:#faf9f5;border:1px solid var(--edge);border-top:0;border-radius:0 0 5px 5px}.block .tile-count{background:#fffa;border-color:var(--edge);font-weight:750;font-size:12px;width:44px}.block.selected{outline:2px solid var(--coffee);outline-offset:3px}.block.drop-target{border-top:3px solid var(--coffee)}.code-input{background:#faf9f5;color:var(--ink);font-size:13px;line-height:1.85;padding:20px;tab-size:2;min-height:150px}.palette{background:#fff;border-top:1px solid #d9cebd;padding:12px 16px;flex-shrink:0}.palette>label{color:var(--ink);font-size:9px;letter-spacing:1px;font-weight:850;margin-bottom:9px}.palette label span{color:var(--coffee);font-size:9px;letter-spacing:0}.palette select{font-size:11px;border:1px solid #d9cebd;border-radius:9px;background:#f5efe3;color:var(--ink);padding:8px}.palette .command-library{display:block;max-height:124px;overflow-y:auto;overscroll-behavior:contain;padding:8px 2px 4px}.command-library section+section{margin-top:9px}.command-library h3{font-size:8px;color:var(--muted);margin:0 0 6px;letter-spacing:1px}.command-library section>div{display:flex;flex-wrap:wrap;gap:6px}.command-tile{border:1px solid var(--edge);background:var(--tile);color:var(--tile-ink);box-shadow:0 2px 0 var(--edge);border-radius:6px;padding:5px 7px;gap:4px;font:700 10px/1.3 ui-monospace,monospace;touch-action:none;cursor:grab}.command-tile:hover:not(:disabled){background:var(--tile);border-color:var(--tile-ink);transform:translateY(-1px)}.targets{font-size:10px;color:var(--muted)}.targets svg{color:var(--coffee)}.modal{background:var(--cream);color:var(--ink);border:1px solid #d2bfa6;border-radius:22px;padding:26px;overflow-y:auto}.modal::backdrop{background:#252d4b66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-top h2{font-family:inherit;font-size:25px;font-weight:850;color:var(--ink)}.modal p{font-size:13px}.modal button{font-size:12px}.danger{background:#a9502f;border-color:#a9502f;color:#fff}.outline-danger{color:#b4432e;border-color:#e1b5a5}.lesson-note{background:var(--yellow);color:#5f4a1f;font-family:inherit;border-radius:14px;font-size:16px}.code-example{background:#eee3d1;color:var(--ink);border-radius:12px}.error-text{color:#b4432e!important}.editor-panel{--draft: #352b26;--draft-deep: #2b231f;--draft-line: #655345;--draft-text: #f3e6cf;--draft-muted: #c5b298;--draft-chalk: #e4cba5;background:var(--draft);border:1px solid #77604a;border-radius:9px;box-shadow:5px 5px #dac8af,0 14px 32px #392b2416;color:var(--draft-text)}.robot-tabs{background:var(--draft-deep);border-bottom:1px solid var(--draft-line);padding:8px 14px}.robot-tabs button{border:1px solid transparent;border-radius:4px;color:var(--draft-muted);font:700 11px ui-monospace,monospace}.robot-tabs button[aria-selected=true]{background:var(--bark);color:#fff;border-color:var(--tan);box-shadow:inset 0 -2px #e4cba5}.robot-tabs button:hover:not(:disabled){background:var(--bark);color:#fff;border-color:var(--tan)}.editor-body{background-color:var(--draft);background-image:linear-gradient(#e4cba50b 1px,transparent 1px),linear-gradient(90deg,#e4cba50b 1px,transparent 1px),linear-gradient(#e4cba51a 1px,transparent 1px),linear-gradient(90deg,#e4cba51a 1px,transparent 1px);background-size:12px 12px,12px 12px,60px 60px,60px 60px;border-top:1px solid var(--draft-line);scrollbar-color:#8e775f var(--draft-deep)}.block-list{padding:18px 18px 24px;position:relative}.editor-panel .block{border:1px solid var(--edge);border-left:4px solid var(--edge);border-radius:7px 12px 12px 7px;box-shadow:0 3px 0 var(--edge),0 5px 8px #17110c26,inset 0 1px 0 var(--veil-white);color:var(--tile-ink);background:var(--tile);margin-bottom:10px;min-height:43px}.editor-panel .block:before{background:var(--draft);border-color:var(--edge);border-radius:0 0 4px 4px;height:5px}.editor-panel .block .tile-count{color:var(--tile-ink);background:var(--veil-white);border:1px solid var(--edge);border-radius:5px}.editor-panel .block .tile-count[aria-invalid=true]{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}.editor-panel .block.selected{outline:2px solid var(--glow);outline-offset:4px}.editor-panel .block.selected:after{content:"＋";position:absolute;right:-12px;bottom:-10px;color:var(--glow);font:17px ui-monospace,monospace;pointer-events:none}.editor-panel .block.drop-target{border-top:3px solid var(--gold)}.editor-panel .code-input{color:#f3e6cf;background:transparent;caret-color:var(--gold);font:12px/1.85 ui-monospace,monospace}.editor-panel .code-input::placeholder{color:#b8a98f;opacity:1}.editor-panel .palette{background:var(--draft-deep);border-color:var(--draft-line);padding:11px 16px}.editor-panel .palette>label{color:var(--draft-text);font:700 9px ui-monospace,monospace;letter-spacing:1px}.editor-panel .palette label span{color:var(--gold);font-size:9px;letter-spacing:0}.editor-panel .palette select{background:#3f342b;border:1px solid #927a5d;color:var(--draft-text);border-radius:3px;font:11px ui-monospace,monospace}.editor-panel .command-library{scrollbar-color:#8e775f var(--draft-deep)}.editor-panel .command-library h3{color:var(--draft-muted);font:8px ui-monospace,monospace;letter-spacing:1.4px}.editor-panel .command-tile{border-radius:5px 8px 8px 5px;box-shadow:0 2px 0 var(--edge);background:var(--tile);border-color:var(--edge);color:var(--tile-ink)}.editor-panel .command-tile:hover:not(:disabled){background:var(--tile);border-color:var(--tile-ink);color:var(--tile-ink);box-shadow:0 2px 0 var(--edge),0 0 0 1px var(--glow)}.coding-pane-heading{padding:20px 20px 16px;background:var(--draft-deep);border-bottom:1px solid var(--draft-line)}.coding-pane-heading h2{margin:0 0 8px;color:var(--draft-text);font-size:20px;line-height:1.2;letter-spacing:-.5px}.coding-pane-heading p{margin:0;color:var(--draft-muted);font-size:12px;line-height:1.55}.editor-panel .compact-palette{border-top:0;border-bottom:1px solid var(--draft-line);padding:12px 16px;background:var(--draft-deep)}.editor-panel .compact-palette .command-library{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;max-height:180px;padding:2px 2px 5px}.editor-panel .compact-palette .command-tile{display:flex;align-items:center;gap:3px;padding:3px;cursor:default;max-width:100%}.editor-panel .command-tile>button{background:transparent;color:inherit;border:0;border-radius:3px;padding:5px 3px;font:inherit;gap:3px;cursor:grab;white-space:nowrap}.editor-panel .command-tile>button:hover:not(:disabled){background:#ffffff40;color:inherit}.editor-panel .command-tile select,.editor-panel .command-tile .tile-count{background:var(--veil-white);border:1px solid var(--edge);border-radius:4px;color:var(--tile-ink);font:650 10px ui-monospace,monospace;padding:4px;min-width:0;max-width:150px}.editor-panel .command-tile .tile-count{width:38px}.editor-panel .block-verb{flex-shrink:0;color:var(--tile-ink);font:800 12px ui-monospace,monospace;padding:0 5px 0 0}.editor-panel .block-list{min-height:100%;padding-top:20px}.editor-panel .editor-body{flex:1;min-height:180px;border-top:0}@media(min-width:1500px){.workbench{grid-template-columns:minmax(0,1fr) 564px;gap:36px}.workspace-main{padding:28px 40px}.palette .command-library{max-height:150px}}@media(max-height:850px)and (min-width:901px){.workspace-main{padding:16px 22px;gap:12px;min-height:650px}.palette .command-library{max-height:80px}.palette{padding:9px 14px}}@media(max-width:1100px){.workbench{grid-template-columns:minmax(0,1fr) 472px;gap:16px}.workspace-main{padding:18px}.playback-speed small{display:none}}@media(max-width:900px){.app-body,.workspace-main{height:auto;min-height:100dvh}.workbench{grid-template-columns:minmax(0,1fr)}.cafe-panel{min-height:410px}.editor-panel{height:760px;max-width:620px;justify-self:center}.scene-space{min-height:330px}}@media(max-width:560px){.workspace-main{padding:12px}.workspace-heading{align-items:flex-start;gap:10px}.workspace-heading h1{font-size:23px}.block{min-width:270px}.editor-panel{height:740px}.cafe-panel{min-height:360px}.scene-space{min-height:280px}}.editor-panel .visual-program{width:max-content;min-width:100%;padding:20px 40px 60px 48px;overflow:visible}.code-row{position:relative;width:max-content;margin-bottom:8px;z-index:1}.line-number{position:absolute;width:22px;text-align:right;top:14px;font:10px ui-monospace,monospace;color:#bca58b;pointer-events:none}.editor-panel .code-row .block{display:flex;width:max-content;min-width:0;gap:8px;margin:0;min-height:43px;padding:5px 12px 5px 4px;border-left-width:1px;font:650 12px/1.3 ui-monospace,monospace}.editor-panel .code-row .block:before{display:none}.editor-panel .code-row .block-verb{padding:0;white-space:nowrap;text-transform:none;font-size:12px}.code-statement,.code-scope{width:max-content;position:relative;z-index:1}.scope-body{margin-left:27px;padding-left:13px;border-left:2px solid #f49b8380;min-width:90px}.code-scope.function>.scope-body{border-color:#c3acf080}.insertion-anchor{position:relative;width:100%;height:0}.insertion-anchor.with-hint{height:auto}.insertion-anchor.else-preview{position:absolute;left:calc(100% + 16px);top:0;width:94px;z-index:3}.drag-source{opacity:.3}.drag-preview{transform:none;white-space:nowrap;width:max-content;pointer-events:none}.editor-panel .code-insertion{position:absolute;top:-10px;left:0;display:flex;width:100%;min-width:110px;height:12px;min-height:0;margin:0;padding:0;border:0;border-radius:3px;background:transparent;box-shadow:none;color:#bca58b;font:10px ui-monospace,monospace;opacity:0;pointer-events:none;z-index:2}.editor-panel .code-insertion.with-hint{position:relative;top:0;opacity:1;align-items:center;height:32px;border:1px dashed #bca58b55;padding:5px 12px;width:max-content;margin-bottom:8px}.is-dragging .code-insertion:not(.with-hint){opacity:1}.is-dragging .code-insertion:not(.with-hint):after{content:"";position:absolute;top:5px;height:2px;left:0;right:0;background:transparent;border-radius:2px;transition:background .12s ease,box-shadow .12s ease}.editor-panel .code-insertion.drop-target:after{background:#f4c95d}.editor-panel .code-insertion.with-hint.drop-target{box-shadow:0 0 0 2px var(--glow)}.editor-panel .code-insertion.else-option{gap:8px;min-width:94px;min-height:43px;padding:8px 14px;background:var(--tile);color:var(--tile-ink);border:1px dashed var(--edge);border-radius:7px 12px 12px 7px;box-shadow:0 3px 0 var(--edge);opacity:.65}.editor-panel .code-insertion.else-option.drop-target{opacity:1}.block-icon{flex-shrink:0;opacity:.8}.block-select{position:relative;flex-shrink:0}.editor-panel .block-select>button{background:#fff8e960;color:var(--tile-ink);border:1px solid var(--edge);border-radius:5px;box-shadow:inset 0 1px 2px #49301c15;padding:6px 8px;gap:8px;font:inherit;white-space:nowrap}.editor-panel .block-select>button:disabled{opacity:1;cursor:default}.editor-panel .block-select>button:hover:not(:disabled){background:#fff8e9a0}.operand-menu-floating{z-index:1000;width:max-content;overflow-y:auto;overflow-x:hidden;border:1px solid var(--edge);border-radius:8px;background:var(--tile);padding:4px;box-shadow:0 8px 24px #160d0b55,0 2px 0 var(--edge);font:600 12px ui-monospace,monospace}.operand-menu>button{display:flex;justify-content:flex-start;width:100%;padding:8px 10px;color:var(--tile-ink);background:transparent;border:0;border-radius:4px;font:inherit;white-space:normal;text-align:left}.operand-menu>button.focused,.operand-menu>button:hover{background:#fff8e970}.operand-menu>button[aria-selected=true]{font-weight:850}.editor-panel .compact-palette .command-library{max-height:none;overflow:visible}.editor-panel .compact-palette{overflow:visible;position:relative;z-index:40}.editor-panel .command-tile{white-space:nowrap}.editor-panel .command-tile .block-select>button{padding:4px 6px}.editor-panel .code-row .jump-target{width:84px;min-height:31px;background:var(--tile);border:1px solid var(--edge);box-shadow:0 3px 0 var(--edge);color:var(--tile-ink);cursor:grab;touch-action:none}.editor-panel .code-row .jump-target:active{cursor:grabbing}.jump-arrows{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;color:#69b4ef;filter:drop-shadow(0 2px 0 #291c19);z-index:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.editor-panel .code-row .block.active{outline:1px solid #fff6dd;outline-offset:1px;border-color:#fff4d4;background:color-mix(in srgb,var(--tile) 80%,#fff8e8);box-shadow:0 3px 0 var(--edge),0 0 0 4px #fce9b91a,0 5px 23px #ffd88b38,inset 0 1px #fff8eb;z-index:2}.editor-panel .block.active:after,.editor-panel .block.failure:after{display:none}.editor-panel .code-row .block.failure{outline:1px solid #ff8e7b;outline-offset:1px;border-color:#ffb09e;background:color-mix(in srgb,var(--tile) 65%,#ffc1b1);box-shadow:0 3px #b26153,0 0 0 4px #f17d651c,0 3px 24px #ff654d40;z-index:2;animation:instruction-error-bloom .7s ease-out both}.workbench{position:relative;isolation:isolate}@keyframes instruction-error-bloom{0%{box-shadow:0 0 0 5px #ff9b7250,0 0 32px #ff654d88}to{box-shadow:0 3px #b26153,0 0 0 4px #f17d651c,0 3px 24px #ff654d40}}.coding-pane-heading{padding:15px 18px 13px}.coding-title-row{display:flex;align-items:center;gap:8px;margin-bottom:9px}.coding-title-row h2{flex:1;min-width:0;margin:0;font-size:19px}.coding-tools{display:flex;gap:4px;flex-shrink:0}.coding-tools button{width:26px;height:26px;min-height:0;padding:5px;border:1px solid #a88b632e;border-radius:6px;background:#ffffff06;color:#c7ae8e}.coding-tools button:hover:not(:disabled){background:#ffffff12;border-color:#a88b6370;color:#fff0d3}.coding-pane-heading .shift-story{font-size:11px;line-height:1.5;color:#cfb99d;margin:0 0 10px}.coding-pane-heading .shift-objective{font-size:11px;line-height:1.5;color:#f0dfc5;padding-left:10px;border-left:2px solid #d7b57966}.shift-objective>span{display:block;font:750 8px/1.3 ui-monospace,monospace;letter-spacing:1px;text-transform:uppercase;color:#d2ae7f;margin-bottom:4px}.editor-panel .command-tile .block-suffix{font:inherit;padding:0}.editor-panel .code-row .block-suffix{font:800 12px ui-monospace,monospace}.workspace-main>.workspace-heading{margin-bottom:0;min-height:20px}.editor-panel .code-row{margin-bottom:5px}.editor-panel .code-row .block{min-height:32px;padding:3px 7px 3px 3px;gap:5px;font-size:11px}.editor-panel .code-row .block-verb{font-size:11px}.editor-panel .code-row .block-select>button{padding:3px 5px;gap:4px;font-size:11px}.editor-panel .block-select>button{height:28px;min-height:28px;box-sizing:border-box;display:inline-flex;align-items:center}.editor-panel .tile-count{height:28px;min-height:28px;box-sizing:border-box}.editor-panel .if-comparison-operands{display:inline-flex;align-items:center;gap:4px;min-width:0}.editor-panel .if-comparison-operands .block-select>button{min-width:0}.editor-panel .code-row .tile-count{width:36px;padding:3px;font-size:10px}.editor-panel .code-row .block-suffix{font-size:10px}.editor-panel .block,.editor-panel .command-tile,.editor-panel .block-verb{-webkit-user-select:none;user-select:none}.editor-panel .code-row input{-webkit-user-select:auto;user-select:auto}.editor-panel .insertion-anchor.else-preview{position:relative;left:0;top:0;width:max-content;margin:3px 0 7px;z-index:3}.editor-panel .insertion-anchor.else-preview .code-insertion{position:relative;top:0;width:max-content;min-width:94px;min-height:32px;height:auto;margin:0;padding:5px 10px}.editor-panel .direction-select{display:inline-flex;align-items:center}.editor-panel .direction-select>.direction-trigger{display:grid;place-items:center;width:31px;height:31px;padding:0!important;gap:0;border:0;border-radius:3px;background:transparent;box-shadow:none}.editor-panel .direction-select>.direction-trigger:hover:not(:disabled){background:transparent}.direction-mini-grid{display:grid;grid-template-columns:repeat(3,9px);grid-template-rows:repeat(3,9px);gap:1px;width:31px;height:31px;padding:1px;background:var(--edge);border-radius:3px;overflow:hidden}.direction-mini-grid>span{width:9px;height:9px;border:0;background:#fff}.direction-mini-grid>span.empty{background:var(--tile)}.direction-mini-grid>span.chosen{background:#2563eb}.editor-panel .code-row .block.active{outline:none;outline-offset:0;border-color:var(--edge);background:var(--tile);box-shadow:0 3px 0 var(--edge),inset 0 1px 0 var(--veil-white)}.workspace-main{--workspace-padding: 10px;padding:var(--workspace-padding);gap:0}.workspace .workbench{height:100%;min-height:0}.workspace .editor-panel{border:1px solid #77604a;border-radius:9px;box-shadow:none}.workspace .workspace-heading{align-self:stretch;padding-top:0}.playback-toolbar{border:0;box-shadow:none}.playback-toolbar .run-button{box-shadow:none;transition:background-color .15s ease}.playback-toolbar .run-button:hover:not(:disabled){background:#684631;border-color:#684631;color:#fff;transform:none;box-shadow:none}.playback-toolbar .run-button.stop-button{box-shadow:none}.playback-toolbar .run-button.stop-button:hover:not(:disabled){background:#b94d3b;border-color:#b94d3b}.editor-panel .code-row .block,.editor-panel .compact-palette .command-tile{height:35px;min-height:35px;border-radius:7px;padding:2px 7px;gap:5px;font:650 10.5px/1.3 ui-monospace,monospace}.editor-panel .code-row .block{cursor:grab;touch-action:none}.editor-panel .code-row .block:active{cursor:grabbing}.block-dragging,.block-dragging *{cursor:grabbing!important}.editor-panel .code-row .block[aria-disabled=true]{cursor:default}.editor-panel .block-verb,.editor-panel .code-row .block-verb,.editor-panel .code-row .block-suffix{font:inherit;padding:0}.editor-panel .block:before{display:none}.editor-panel .code-row .block:is([data-jump],[data-target]){width:84px;height:35px;min-height:35px}.editor-panel .line-number{top:10px}.editor-panel .direction-select>.direction-trigger{width:28px;height:28px;border-radius:5px;overflow:hidden}.direction-mini-grid{width:28px;height:28px;padding:0;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);border-radius:5px}.direction-mini-grid>span{width:auto;height:auto}.model-thumbnail{display:inline-block;width:21px;height:21px;flex-shrink:0;vertical-align:middle}.model-thumbnail img{display:block;width:100%;height:100%;object-fit:contain}.direction-select.is-expanded .direction-trigger>.direction-mini-grid{visibility:hidden}.direction-menu{z-index:1000;transform-origin:center;animation:direction-grow .18s ease-out both}.direction-menu .direction-mini-grid{width:100%;height:100%;border-radius:24px}.direction-menu .direction-mini-grid>button{display:block;min-width:0;min-height:0;padding:0;gap:0;border:0;border-radius:0;background:#fff;box-shadow:none;transform:none}.direction-menu .direction-mini-grid>button.chosen{background:#2563eb}.direction-menu .direction-mini-grid>button:hover,.direction-menu .direction-mini-grid>button.focused{box-shadow:inset 0 0 0 .5px var(--edge)}.direction-menu.direction-closing{animation:direction-shrink .18s ease-in both;pointer-events:none}.direction-mini-grid>.direction-player{display:grid;place-items:center;overflow:hidden;background:var(--tile)}.direction-player .model-thumbnail{width:100%;height:100%}@keyframes direction-grow{0%{transform:scale(.2)}to{transform:scale(1)}}@keyframes direction-shrink{0%{transform:scale(1)}to{transform:scale(.2)}}.has-drop-preview .drag-source{height:0;opacity:0;overflow:hidden;pointer-events:none}.insertion-anchor:has(>.drop-projection){height:auto}.drop-projection{position:relative;opacity:.65;pointer-events:none}.editor-panel .insertion-anchor.else-preview .code-insertion{display:block;width:max-content;height:auto;min-height:0;padding:0;border:0;box-shadow:none;background:transparent;opacity:.65}.editor-panel .insertion-anchor.else-preview .code-insertion.drop-target{opacity:1}.editor-panel .insertion-anchor.else-preview .code-insertion:after{display:none}.empty-scope{display:flex;align-items:center;height:38px;min-width:150px;margin-bottom:5px;padding:0 9px;border:1px dashed #bca58b55;border-radius:7px;color:#bca58b;font:650 11px/1.3 ui-monospace,monospace}.editor-panel .code-insertion.drop-target:not(.else-option){height:0;min-height:0;padding:0;margin:0;border:0;box-shadow:none}.editor-panel .code-insertion.drop-target:not(.else-option):after{display:none}@media(prefers-reduced-motion:reduce){.direction-menu,.direction-player .model-thumbnail{animation:none}.direction-menu{transform:scale(1)}.direction-menu.direction-closing{transform:scale(.2)}}html[data-motion=reduced] .direction-menu{transform:scale(1)}html[data-motion=reduced] .direction-menu.direction-closing{transform:scale(.2)}@media(max-width:900px){.workspace .workbench{height:auto}.workspace .editor-panel{height:760px;border-top:1px solid #77604a;border-radius:9px}}.drop-projection button:disabled,.floating-code-preview button:disabled{opacity:1}.floating-code-preview{font:650 11px/1.3 ui-monospace,monospace}@media(min-width:1500px){.workspace-main{--workspace-padding: 14px}}@media(max-width:1100px){.workspace-main{--workspace-padding: 10px}}@media(max-width:560px){.workspace-main{--workspace-padding: 8px}}.editor-panel .code-row .block.failure{border-color:#dc3938;outline:2px solid #df4645;background:#ffd8d1;animation:error-line-pulse 1s ease-in-out infinite}@keyframes error-line-pulse{0%,to{filter:none;box-shadow:0 0 0 2px #ec444433}50%{filter:brightness(1.16);box-shadow:0 0 0 5px #ec444466}}@media(prefers-reduced-motion:reduce){.editor-panel .code-row .block.failure{animation:none}}html[data-motion=reduced] .editor-panel .code-row .block.failure{animation:none}.order-quantity{position:absolute;right:-2px;top:0;padding:1px 3px;border-radius:5px;background:#e5ecdd;color:#36513c;font:800 11px/1.2 Inter,sans-serif}.execution-cursor{position:absolute;left:0;top:0;z-index:50;display:block;width:32px;height:32px;pointer-events:none;transition-property:transform;transition-timing-function:cubic-bezier(.8,0,.2,1);will-change:transform}.execution-cursor svg{display:block;fill:#dc463c;stroke:#dc463c;stroke-width:3;stroke-linejoin:round}@media(prefers-reduced-motion:reduce){.execution-cursor,.execution-line-highlight{transition:none!important}}html[data-motion=reduced] .execution-cursor,html[data-motion=reduced] .execution-line-highlight{transition:none!important}.editor-panel .compact-palette .command-tile:has(.if-comparison-operands){flex-wrap:wrap;height:auto;min-width:0}.editor-panel .compact-palette .if-comparison-operands{flex-wrap:wrap;max-width:100%}.editor-panel .compact-palette .if-comparison-operands .block-select{max-width:100%}.editor-panel .compact-palette .if-comparison-operands .block-select>button{max-width:100%;height:auto;white-space:normal;text-align:left}.editor-panel .editor-body{overflow-x:hidden;min-width:0}.editor-panel .visual-program{width:100%;min-width:0;box-sizing:border-box}.editor-panel .visual-program :is(.code-statement,.code-scope,.code-row,.else-body){max-width:100%;min-width:0}.editor-panel .visual-program :is(.code-statement,.code-scope,.else-body){width:100%}.editor-panel .visual-program .scope-body{min-width:0}.editor-panel .visual-program .code-row .block{width:fit-content;max-width:100%;box-sizing:border-box;flex-wrap:wrap;height:auto}.editor-panel .visual-program .if-comparison-operands{flex-wrap:wrap;max-width:100%}.editor-panel .visual-program .block-select{max-width:100%;min-width:0}.editor-panel .visual-program .block-select>button{max-width:100%;height:auto;white-space:normal;text-align:left;overflow-wrap:anywhere}.editor-panel .visual-program .code-row .block:is([data-jump],[data-target]){width:84px}.editor-panel .visual-program .code-insertion.with-hint{max-width:100%;min-width:0;white-space:normal;height:auto}.editor-panel .visual-program .code-insertion.with-hint:not(.drop-target){min-height:32px;margin-bottom:5px}.editor-panel .code-input{min-width:0;width:100%;white-space:pre-wrap;overflow-wrap:anywhere}.editor-panel .code-text{display:grid;min-height:100%}.editor-panel .code-text>*{grid-area:1 / 1}.editor-panel .code-text .code-input{height:auto;overflow:hidden;padding-left:50px}.editor-panel .code-text-lines{padding:20px 20px 20px 50px;counter-reset:line;color:transparent;font:12px/1.85 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2;pointer-events:none}.editor-panel .code-text-lines>div{position:relative;margin:0 -20px 0 -50px;padding:0 20px 0 50px;counter-increment:line}.editor-panel .code-text-lines>div:after{content:counter(line);position:absolute;top:0;left:0;width:32px;color:#8f7f69;font-size:10.5px;text-align:right}.editor-panel .code-text-lines>:is(.scope-edge,.in-scope){background-image:linear-gradient(#f4c95d80,#f4c95d80);background-position:40px 0;background-size:2px 100%;background-repeat:no-repeat}.editor-panel .code-text-lines>.scope-edge:after{color:#f4c95d;font-weight:700}.editor-panel .code-text-lines>.active{position:relative}.editor-panel .code-text-lines>.active:before{content:"";position:absolute;top:50%;left:-14px;width:12px;height:14px;background:#dc463c;clip-path:polygon(0 0,100% 50%,0 100%);transform:translateY(-50%)}.editor-panel .code-text-lines>.active{background:#ffe6ad12}.editor-panel .code-text-lines>.failed{background:#ff654d26;box-shadow:inset 3px 0 #ff7a5c}.editor-panel .code-input:focus-visible{outline:1px solid #f3e6cf38;outline-offset:-8px;border-radius:12px}.workspace .editor-panel{overflow:visible}.editor-panel .editor-body{margin-left:-16px;padding-left:16px;background-clip:content-box;border-radius:0 0 9px 9px}.editor-panel .visual-program .code-row{width:100%}.execution-line-highlight{position:absolute;left:16px;background:#ffe6ad12;pointer-events:none;z-index:-1;transition-property:top,height;transition-duration:inherit;transition-timing-function:inherit}.view-controls button{gap:6px;padding:8px 12px;border:0;border-radius:7px;background:transparent;color:#786a57;font-size:12px;white-space:nowrap;box-shadow:none}.view-controls button:hover:not(:disabled){background:#fffbed80}.view-controls button[aria-pressed=true]{background:var(--paper);color:var(--coffee);font-weight:650;box-shadow:0 1px 3px #49301c25}.view-controls button:active:not(:disabled){transform:none}.robot-tabs{display:flex;gap:6px;flex-wrap:wrap}.robot-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:1}.robot-tabs button:disabled,.view-controls button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.view-controls button{padding:8px 9px;font-size:11px}.robot-tabs{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;padding:10px 14px;background:var(--draft-deep)}.robot-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;min-width:90px;padding:0;overflow:hidden;border:1px solid #9b846655;border-radius:9px;background:#ffffff06;color:var(--draft-muted);font-family:inherit;font-size:12px;font-weight:600;line-height:1.4;box-shadow:none;transition:background .15s,border-color .15s}.robot-tabs button[aria-selected=true]{background:#ead8b8;color:#493727;border-color:#ead8b8;box-shadow:none}.robot-tabs button:hover:not(:disabled):not([aria-selected=true]){background:#ffffff10;border-color:var(--tan);color:#fff2de}.robot-tabs button:active:not(:disabled){transform:none}.robot-choice-label{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 9px}.robot-choice-label svg{flex-shrink:0}.locked-robot-zone{position:relative;flex-basis:0;min-width:100px;border-radius:9px}.locked-robot-buttons{display:flex;gap:8px;height:100%}.locked-robot-buttons button:disabled{opacity:1;cursor:not-allowed;min-width:0}.robot-tabs button:focus-visible{outline:2px solid #b58b52;outline-offset:3px}.view-controls .robot-choice-label{padding:0;gap:6px}.view-controls .locked-robot-zone{flex-basis:auto;min-width:0;max-width:100%}.view-controls .locked-robot-buttons{gap:3px;flex-wrap:wrap}.view-controls .locked-robot-buttons button:disabled{flex:1;opacity:1}.editor-panel .if-condition-rows{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;max-width:100%}.editor-panel .visual-program .code-row .block:has(.if-condition-rows){align-items:flex-start;flex-wrap:nowrap}.editor-panel .block .if-condition-rows{flex:1;min-width:0}.editor-panel .code-row .block:has(.if-condition-rows)>.block-verb{height:28px;display:flex;align-items:center}.editor-panel .code-row .block:has(.if-condition-rows)>.block-icon{margin-top:6px}.editor-panel .optional-connector .block-select>button{background:transparent;border:1px dashed currentColor;box-shadow:none;opacity:.55;padding-inline:6px}.editor-panel .optional-connector .block-select>button:hover{opacity:1;background:#fff2}.order-mark{padding:1px 4px;border-radius:999px;background:var(--sage);color:var(--ink);font:700 9px/1.2 Inter,sans-serif;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.order-mark.rush{background:#a9502f;color:var(--cream)}.editor-panel .code-row .block:has(.assignment-operands){background:transparent;border:0;box-shadow:none;padding:0;flex-wrap:nowrap}.editor-panel .block:has(.assignment-operands)>.block-verb{display:none}.assignment-operands{display:inline-flex;align-items:center;gap:8px;min-width:0}.assignment-equals{font:inherit;color:#e9ddca}.editor-panel .assignment-operands .block-select>button{background:var(--tile);border:1px solid var(--edge);box-shadow:0 2px 0 var(--edge);border-radius:6px;padding:5px 8px;white-space:nowrap}.editor-panel .code-row .block-select>button{font-size:10.5px;min-height:26px}.editor-panel .code-row .block-icon{width:14px;height:14px}.variable-1{color:#2563a5}.variable-2{color:#8745a0}.variable-3{color:#28744a}.variable-4{color:#ad6419}.editor-panel .code-row .block:is([data-jump],[data-target]){--tile: #b6d8ee;--edge: #5c88aa;--tile-ink: #183e5a}.block.data,.command-tile.data,.robot-action.data{--tile: #f4d27d;--edge: #b38b3d;--tile-ink: #493715}.block.jump,.command-tile.jump,.robot-action.jump{--tile: #b6d8ee;--edge: #5c88aa;--tile-ink: #183e5a}.block.help,.command-tile.help{--tile: #efb378;--edge: #b67c42;--tile-ink: #513315}.editor-panel .block-select>button,.editor-panel .visual-program .block-select>button,.editor-panel .compact-palette .block-select>button{height:28px;min-height:28px;max-height:28px;padding:3px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.editor-panel .block-select .model-thumbnail{width:20px;height:20px}.editor-panel .tile-count{height:28px;min-height:28px;max-height:28px}.editor-panel .code-row .block:has(.assignment-operands){min-height:35px}.editor-panel .assignment-tile{display:inline-flex;align-items:center;height:35px;box-sizing:border-box;padding:2px 7px;border:1px solid var(--edge);border-radius:7px;background:var(--tile);box-shadow:0 2px 0 var(--edge)}.editor-panel .assignment-operands .block-select>button{height:28px;min-height:28px;max-height:28px;border:0;outline:0;padding:3px 5px;box-shadow:none;background:var(--veil-white)}.editor-panel .assignment-operands .assignment-tile:last-child{--tile: #f4d27d;--edge: #b38b3d;--tile-ink: #493715}.editor-panel .compact-palette .command-tile{zoom:.72}.editor-panel .compact-palette .command-library{gap:6px;align-items:flex-start}.floating-code-preview.from-shop{animation:shop-block-grow .15s ease-out;transform-origin:top left}@keyframes shop-block-grow{0%{transform:scale(.78);opacity:.75}to{transform:scale(1);opacity:1}}.drop-projection{opacity:.75;animation:placement-appear .14s ease-out}@keyframes placement-appear{0%{opacity:.3}to{opacity:.9}}.workspace .editor-panel>.coding-pane-heading{border-radius:8px 8px 0 0;overflow:hidden}.editor-panel .editor-body{margin-left:-16px;padding-left:16px;border-radius:0 0 8px 8px;background-clip:content-box;background-origin:content-box}.editor-panel .visual-program{padding-left:48px}@media(prefers-reduced-motion:reduce){.floating-code-preview,.drop-projection{animation:none}}html[data-motion=reduced] .floating-code-preview,html[data-motion=reduced] .drop-projection{animation:none}.editor-panel .compact-palette .command-tile:has(.assignment-operands){background:transparent;border:0;box-shadow:none;padding:0;gap:5px}.editor-panel .if-condition-rows{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,max-content) minmax(0,max-content) minmax(0,max-content);gap:4px;flex:0 1 auto}.editor-panel .if-condition-rows>.if-comparison-operands{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;gap:4px}.editor-panel .if-condition-rows>.if-comparison-operands>.block-select,.editor-panel .if-condition-rows>.if-comparison-operands>.block-select>button{width:100%}.editor-panel .scope-body{position:relative;border-left:0;padding-left:15px}.editor-panel .scope-body:before{content:"";position:absolute;left:0;top:0;bottom:18px;width:11px;border-left:2px solid #d38c7770;border-bottom:2px solid #d38c7770;border-bottom-left-radius:10px;pointer-events:none}.editor-panel .code-scope.function>.scope-body:before{border-color:#b59bd370}.editor-panel .block-select.direction-select>.direction-trigger{display:grid;place-items:center;padding:0!important;width:28px;height:28px;min-height:28px;border:0;line-height:0}.editor-panel .direction-mini-grid .direction-player{min-width:0;min-height:0;display:grid;place-items:center}.editor-panel .direction-mini-grid .direction-player .model-thumbnail{display:block;width:100%;height:100%;min-width:0;min-height:0}.editor-panel .assignment-tile{gap:5px}.editor-panel .store-label{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;white-space:nowrap;color:var(--tile-ink);font:inherit;cursor:grab}.editor-panel .compact-palette .assignment-tile>button.store-label{width:auto;min-width:0;height:28px;margin:0;padding:0;background:transparent;border:0;box-shadow:none;color:var(--tile-ink);font:inherit}.editor-panel .store-label strong{font:inherit}.editor-panel{--code-font: 650 10.5px/1.3 ui-monospace, monospace}.editor-panel .code-row .block,.editor-panel .compact-palette .command-tile,.editor-panel .floating-code-preview{font:var(--code-font)}.editor-panel :is(.block,.command-tile) :is(.block-verb,.block-suffix,.store-label,.assignment-operands,.assignment-tile,.assignment-equals,strong){font:var(--code-font)}.editor-panel .code-row .tile-count,.editor-panel .compact-palette .tile-count,.editor-panel .code-row .block-select>button,.editor-panel .compact-palette .block-select>button{font:var(--code-font)}.editor-panel .code-row .block:has(.assignment-operands){padding:0;min-height:35px;align-items:center}.editor-panel .assignment-operands{padding:0;align-items:center;line-height:1.3}.editor-panel .assignment-tile{vertical-align:middle;box-shadow:0 3px 0 var(--edge)}.editor-panel .code-row .block.failure{animation:none;outline:none;background:var(--tile);border-color:var(--edge);box-shadow:0 3px 0 var(--edge)}.editor-panel .code-row .block:has(.assignment-operands):is(.active,.failure){background:transparent;border:0;box-shadow:none}.customer-speech,.robot-holding{--bubble-ink: #3d2e25;--bubble-line: #7a5f4a;--bubble-paper: #fffaf0;--bubble-well: #f5ecdc;--bubble-well-line: #e8d9bf;--bubble-quiet: #7a6657;--bubble-font: "Avenir Next", "Nunito", ui-rounded, sans-serif;position:relative;transform:translateY(-50%);border:1.5px solid var(--bubble-line);border-radius:12px;background:var(--bubble-paper);color:var(--bubble-ink);filter:drop-shadow(0 5px 7px #2a1a0e38);pointer-events:auto}.bubble-tail{position:absolute;top:calc(100% - 1px);left:calc(50% - 6px);width:12px;height:7px;overflow:visible;fill:var(--bubble-paper);stroke:var(--bubble-line);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.bubble-pill{position:absolute;top:-9px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:3px;height:16px;padding:0 7px 0 5px;border:1px solid color-mix(in srgb,var(--pill, #d4ac6b) 82%,var(--bubble-ink));border-radius:999px;background:var(--pill, #d4ac6b);color:#fffcf5;text-shadow:0 .5px 1px color-mix(in srgb,var(--pill, #d4ac6b) 40%,#2a1d15);font:800 9.5px/1 var(--bubble-font);letter-spacing:.03em;white-space:nowrap}.bubble-pill svg{flex:none;width:10px;height:10px}.customer-speech{width:max-content;max-width:210px;padding:7px 10px 8px;text-align:center}.customer-speech.at-counter{transform:translate(calc(-50% + 36px),-50%)}.customer-speech.at-counter .bubble-tail{left:calc(100% - 42px)}.customer-speech blockquote{margin:0;font:650 12px/1.35 var(--bubble-font);overflow-wrap:anywhere}.customer-speech .order-icons{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:5px 0 0;padding:0}.customer-speech .order-icons li{position:relative;display:flex;align-items:center;gap:2px;max-width:100%;padding:2px 5px 2px 3px;border-radius:8px;background:var(--bubble-well);box-shadow:inset 0 0 0 1px var(--bubble-well-line);color:var(--umber);font:700 10.5px/1.3 var(--bubble-font);overflow-wrap:anywhere}.customer-speech .order-icons .model-thumbnail{width:24px;height:24px}.customer-speech .order-icons .model-sugar{width:15px;height:15px}.customer-speech small{display:block;margin-top:4px;color:var(--bubble-quiet);font:italic 600 10px/1.3 var(--bubble-font)}.order-queue-bubble{min-width:74px;max-width:104px;padding:11px 6px 6px;transform:translate(calc(-50% + 18px),-50%)}.order-queue-bubble .bubble-tail{left:calc(100% - 24px)}.order-queue-bubble .order-icons{margin:0}.order-queue-bubble small{margin:0;font-style:normal}.robot-holding{width:124px;padding:11px 6px 6px;transition:height .24s ease}.robot-holding-content{display:flex;flex-direction:column;gap:5px;animation-play-state:inherit}.robot-holding-content *{animation-play-state:inherit}.robot-action{position:relative;display:flex;align-items:center;gap:5px;min-height:28px;padding:5px 7px 6px 5px;overflow:hidden;border-radius:7px;background:var(--tile);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--edge) 45%,transparent);color:var(--tile-ink);font:750 10px/1.15 var(--bubble-font)}.robot-action-icon{position:relative;flex:none;display:grid;place-items:center;width:20px;height:18px}.robot-action-icon .block-icon{width:15px;height:15px}.robot-action-icon svg{transform-origin:center}.robot-action-label{flex:1;min-width:0;overflow-wrap:anywhere;text-wrap:balance}.action-thinking .thinking-gear{position:absolute;left:0;top:0;width:13px;height:13px;animation:action-turn 4s linear infinite}.action-thinking .thinking-gear+.thinking-gear{left:9px;top:7px;width:11px;height:11px;animation-direction:reverse;animation-duration:3.2s}@keyframes action-turn{to{transform:rotate(360deg)}}.robot-holding .robot-action-icon :is(svg,path,polyline){animation-play-state:inherit}.robot-action-progress{position:absolute;inset:auto 0 0;height:2px;background:color-mix(in srgb,var(--edge) 22%,transparent)}.robot-action-progress:before{content:"";display:block;height:100%;background:var(--edge);transform:scaleX(var(--progress, 0));transform-origin:left}.robot-action-progress.idle:before{width:35%;border-radius:999px;transform:none;animation:wait-sweep 1.6s ease-in-out infinite alternate}@keyframes wait-sweep{0%{margin-left:0}to{margin-left:65%}}.robot-holding ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:4px;margin:0;padding:0}.robot-holding li{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px}.holding-item-icon{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:var(--bubble-well);box-shadow:inset 0 0 0 1px var(--bubble-well-line)}.robot-holding .model-thumbnail{width:32px;height:32px}.robot-holding .holding-badge{position:absolute;right:-3px;bottom:-3px;padding:1px;border-radius:4px;background:var(--bubble-paper);box-shadow:0 0 0 1px var(--bubble-well-line)}.holding-sugar{display:flex;align-items:center;justify-content:center;gap:2px;min-height:13px;white-space:nowrap;font:750 9.5px/1.2 var(--bubble-font)}.robot-holding .holding-sugar .model-thumbnail{width:13px;height:13px}.robot-memory{display:flex;flex-wrap:wrap;justify-content:center;gap:3px}.robot-memory>span{display:flex;align-items:center;gap:3px;padding:2px 6px 2px 3px;border-radius:999px;background:#efe8fb;box-shadow:inset 0 0 0 1px #d4c6ee;color:#45336b;font:750 9px/1.2 var(--bubble-font);white-space:nowrap}.robot-holding[data-motion=reduced],.robot-holding[data-motion=reduced] *{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){.robot-holding,.robot-holding *{animation:none!important;transition:none!important}}.editor-panel .code-row .block:focus-visible,.editor-panel .assignment-operands .block-select>button:focus-visible{outline:3px solid var(--coffee);outline-offset:2px}.app:not(.workspace){--shell-ink: var(--ink);--shell-muted: var(--muted);--shell-rule: var(--line);--shell-paper: var(--cream);--shell-card: var(--card);--shell-accent: var(--coffee);color:var(--shell-ink);background:var(--shell-paper);--cafe-wall: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260' fill='none' stroke='%23dcc6a2' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg transform='translate(44 52) rotate(-28)'%3E%3Cellipse rx='9' ry='13'/%3E%3Cpath d='M0-12c-5 7 5 17 0 24'/%3E%3C/g%3E%3Cg transform='translate(176 58)'%3E%3Cpath d='M-12-4h20v7c0 7-4 11-10 11s-10-4-10-11z'/%3E%3Cpath d='M8-1c5 0 6 5 1 7'/%3E%3Cpath d='M-6-10c-2-3 2-5 0-8M0-10c-2-3 2-5 0-8'/%3E%3C/g%3E%3Cpath d='M112 150l3 8 8 3-8 3-3 8-3-8-8-3 8-3z'/%3E%3Cg transform='translate(214 196) rotate(34)'%3E%3Cellipse rx='9' ry='13'/%3E%3Cpath d='M0-12c-5 7 5 17 0 24'/%3E%3C/g%3E%3Ccircle cx='36' cy='210' r='3'/%3E%3Ccircle cx='232' cy='128' r='2.5'/%3E%3Cpath d='M60 128c6-5 12 5 18 0'/%3E%3C/svg%3E") 0 0 / 260px, radial-gradient(ellipse 80% 70% at 40% 30%, #fbf6ea, transparent 75%), #f1e6d2}.app:not(.workspace) .app-body{min-width:0;min-height:100dvh}.app.home .app-body{min-height:100dvh}.front-page{--front-ink: #392b24;--front-muted: #766659;--front-paper: #fffcf4;--front-clay: #b96847;--front-coffee: #71452f;--front-marker: #f3d98a;--front-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;position:relative;display:grid;flex:1;grid-template-columns:clamp(380px,36vw,520px);align-items:center;min-width:0;min-height:100dvh;overflow:hidden;padding:clamp(28px,5dvh,56px) clamp(32px,4vw,64px);color:var(--front-ink);background:var(--cafe-wall)}.front-menu{position:relative;z-index:1;display:flex;justify-content:center}.front-ticket{position:relative;width:100%;padding:clamp(30px,4.6dvh,46px) clamp(26px,2.6vw,38px) 26px;background:linear-gradient(var(--front-paper),var(--front-paper)) top / 100% calc(100% - 12px) no-repeat,conic-gradient(from 135deg at 50% 6px,transparent 90deg,var(--front-paper) 0) 0 calc(100% + 12px) / 12px 24px repeat-x;filter:drop-shadow(0 14px 18px #392b242e) drop-shadow(0 1px 1px #392b241f);transform:rotate(-1.2deg);transform-origin:50% -6px;animation:front-hang 1s cubic-bezier(.3,1.6,.5,1) both}.front-clip{position:absolute;top:-14px;left:50%;width:46px;height:24px;border-radius:6px 6px 3px 3px;background:linear-gradient(#c97a58,var(--front-clay));box-shadow:0 2px 3px #392b2440;transform:translate(-50%)}.front-kicker{color:var(--front-clay);font-family:var(--front-mono);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.front-ticket h1{margin:clamp(14px,2.4dvh,24px) 0 clamp(12px,2dvh,20px);color:var(--front-ink);font-family:Georgia,Times New Roman,serif;font-size:clamp(50px,min(5.4vw,8.4dvh),82px);font-style:italic;font-weight:700;letter-spacing:-2px;line-height:1}.front-ticket h1 em{background:linear-gradient(transparent 58%,var(--front-marker) 58% 88%,transparent 88%);color:var(--front-clay)}.front-tagline{max-width:400px;color:var(--front-muted);font-size:clamp(15px,2dvh,17px);line-height:1.6}.front-resume{max-width:420px;padding:12px 14px;border-left:3px solid var(--front-clay);border-radius:4px;background:#f6ecdb}.front-resume-kicker{color:var(--front-clay);font-family:var(--front-mono);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.front-resume h2{margin:4px 0 6px;color:var(--front-ink);font-size:18px;font-weight:800;line-height:1.25}.front-resume p:not(.front-resume-kicker){margin:0;color:var(--front-muted);font-size:14px;line-height:1.5}.front-resume p.front-resume-standing{margin-top:6px;color:var(--front-ink);font-weight:650}.front-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin:clamp(22px,4dvh,38px) 0 clamp(20px,3.6dvh,34px)}.front-page button.front-start{gap:10px;height:clamp(54px,7dvh,64px);padding:0 22px;border:0;border-radius:14px;color:#fff;background:var(--front-coffee);box-shadow:0 4px #4e3023;font-size:18px;font-weight:800;transition:transform .12s}.front-page button.front-start:hover:not(:disabled){border:0;background:#593623;transform:translateY(-1px)}.front-page button.front-start:active:not(:disabled){box-shadow:0 1px #4e3023;transform:translateY(3px)}.front-links{display:flex;flex-wrap:wrap;gap:8px 20px}.front-page button.front-link{gap:7px;padding:6px 2px;border:0;border-bottom:2px dashed #392b2440;border-radius:0;color:var(--front-ink);background:none;font-size:15px;font-weight:700}.front-page button.front-link:hover:not(:disabled){border-color:var(--front-ink);background:none}.front-page button:focus-visible{outline:2px solid var(--front-ink);outline-offset:3px}.front-foot{display:grid;gap:4px;padding-top:16px;border-top:2px dashed #392b242e;color:var(--front-ink);font-family:var(--front-mono);font-size:13px;text-align:center}.front-foot p{display:flex;justify-content:space-between;color:inherit;font-weight:700}.front-foot small{color:var(--front-muted);font-size:11px;letter-spacing:1.4px;text-transform:uppercase}.front-barcode{height:22px;margin:10px 18% 2px;background:repeating-linear-gradient(90deg,var(--front-ink) 0 2px,transparent 2px 4px,var(--front-ink) 4px 5px,transparent 5px 8px,var(--front-ink) 8px 11px,transparent 11px 12px);opacity:.75}.front-scene{position:absolute;inset:0 0 0 clamp(120px,16vw,260px);pointer-events:none}.front-scene .cafe-canvas{position:absolute;inset:0}@keyframes front-hang{0%{transform:rotate(3deg)}45%{transform:rotate(-2.4deg)}75%{transform:rotate(-.8deg)}to{transform:rotate(-1.2deg)}}html[data-motion=reduced] .front-page *,html[data-motion=reduced] .front-page *:before,html[data-motion=reduced] .front-page *:after{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){.front-page *,.front-page *:before,.front-page *:after{animation:none!important;transition:none!important}}.app.campaign .app-body{min-width:0;min-height:100dvh}.campaign-page{--pass-ink: #392b24;--pass-muted: #766659;--pass-paper: #fffcf4;--pass-clay: #b96847;--pass-coffee: #71452f;--pass-marker: #f3d98a;--pass-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--pass-serif: Georgia, "Times New Roman", serif;--pass-scene: #7a4e6c;--pass-row: clamp(26px, calc((100dvh - 540px) / 13), 40px);--pass-line: clamp(12px, 1.4dvh, 14px);display:grid;flex:1;min-width:0;grid-template-columns:minmax(0,1fr) clamp(340px,28vw,460px);grid-template-rows:auto auto minmax(0,1fr);grid-template-areas:"bar bar" "title recipe" "stage recipe";gap:0 32px;height:100dvh;padding:18px 32px;color:var(--pass-ink);background:var(--cafe-wall)}.campaign-page button{color:var(--pass-ink)}.campaign-page button:focus-visible{outline:2px solid var(--pass-ink);outline-offset:3px}.shell-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.campaign-page .shell-bar{grid-area:bar}.shell-bar-actions{display:flex;align-items:center;gap:10px}.shell-bar button{color:#392b24}.shell-bar button:focus-visible{outline:2px solid #392b24;outline-offset:3px}.shell-back,.shell-stars,.shell-icon{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 15px 0 12px;border:0;border-radius:999px;color:#392b24;background:#fffcf4cc;box-shadow:0 1px 2px #392b241a;font-size:14px;font-weight:700}.shell-back,.shell-icon{cursor:pointer;transition:background .15s ease}.shell-icon{position:relative;justify-content:center;width:38px;padding:0}.shell-icon-new{position:absolute;top:5px;right:5px;width:9px;height:9px;border:2px solid #fffcf4;border-radius:50%;background:#b96847}.shell-stars svg{color:#d4962c}.shell-stars small{color:#766659;font-weight:600}.shell-back:hover,.shell-icon:hover{background:#fffcf4}.pass-title{grid-area:title;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 18px;padding:26px 0 8px}.pass-kicker{width:100%;color:var(--pass-clay);font-family:var(--pass-mono);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.pass-title h1{font-family:var(--pass-serif);font-size:40px;font-style:italic;font-weight:700;letter-spacing:-1px;line-height:1.1}.pass-progress{color:var(--pass-muted);font-size:14px;font-weight:600}.pass-progress strong{color:var(--pass-ink)}.pass-stage{position:relative;grid-area:stage;min-width:0;min-height:0}.pass{height:100%;overflow:auto;overscroll-behavior:contain;scroll-snap-type:x proximity;scrollbar-color:#b9a891 transparent;scrollbar-width:thin}.pass-track{position:relative;display:flex;align-items:flex-start;justify-content:center;gap:10px;min-width:min-content;padding:16px 12px 14px}.pass-track:before{position:absolute;top:10px;right:0;left:0;height:14px;border-radius:7px;background:linear-gradient(#eef3f1,#c1cfcc 45%,#8ea19b 55%,#d3dedb);box-shadow:0 3px 6px #392b242e;content:""}.ticket{--tilt: 1.4deg;position:relative;flex:none;width:clamp(220px,17vw,260px);padding:22px 10px 18px;font-family:var(--pass-mono);background:linear-gradient(var(--pass-paper),var(--pass-paper)) top / 100% calc(100% - 12px) no-repeat,conic-gradient(from 135deg at 50% 6px,transparent 90deg,var(--pass-paper) 0) 0 calc(100% + 12px) / 12px 24px repeat-x;filter:drop-shadow(0 8px 10px #392b2424) drop-shadow(0 1px 1px #392b241f);scroll-snap-align:center;transform:rotate(var(--tilt));transform-origin:50% -6px;transition:transform .6s cubic-bezier(.3,1.6,.5,1),opacity .3s}.ticket:nth-child(2n){--tilt: -1.6deg}.ticket:nth-child(3n){--tilt: .8deg}.ticket.current{--tilt: 0deg;z-index:1;animation:ticket-swing .9s ease-out}.ticket.locked .ticket-crew{color:#a8957e}.ticket.locked .ticket-shop,.ticket.locked .ticket-foot{visibility:hidden}.campaign-page .ticket.locked .ticket-head{border-bottom-color:transparent}.ticket-stamp{position:absolute;top:50%;left:50%;z-index:1;display:flex;align-items:center;gap:7px;padding:7px 14px;border:3px double var(--pass-clay);border-radius:6px;color:var(--pass-clay);background:#fffcf4d9;font-size:15px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;white-space:nowrap;transform:translate(-50%,-50%) rotate(-11deg);opacity:.9}.ticket-clip{position:absolute;top:-12px;left:50%;width:46px;height:26px;border-radius:5px 5px 8px 8px;background:linear-gradient(#e3ebe8,#a8b8b3);box-shadow:inset 0 -3px #8a9c96,0 2px 3px #392b2433;transform:translate(-50%)}.campaign-page .ticket-head{display:grid;justify-items:center;gap:2px;width:100%;padding:2px 0 10px;border:0;border-bottom:2px dashed #ddd2c1;border-radius:0;background:none;font-family:inherit;text-align:center}.campaign-page .ticket-head:hover:not(:disabled){background:none}.campaign-page .ticket-head:disabled{opacity:1}.ticket:not(.current) .ticket-head:not(:disabled):hover .ticket-crew{text-decoration:underline wavy #392b2466 1.5px;text-underline-offset:5px}.ticket-shop{color:var(--pass-muted);font-size:10px;letter-spacing:1.2px;text-transform:uppercase}.ticket-kicker{margin-top:6px;font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase}.ticket-crew{font-family:var(--pass-serif);font-size:clamp(28px,3.4dvh,36px);font-style:italic;line-height:1.1}.ticket-tagline{max-width:200px;margin-top:3px;color:var(--pass-muted);font-size:11px;line-height:1.4}.ticket-lines{display:grid;gap:0;margin:0;padding:8px 0;list-style:none}.campaign-page .shift-card{position:relative;display:flex;align-items:baseline;gap:6px;width:100%;min-height:var(--pass-row);padding:3px 6px;border:0;border-radius:3px;background:none;font-family:inherit;font-size:var(--pass-line);text-align:left;transition:background .2s}.shift-no{flex:none;color:var(--pass-muted)}.shift-name{min-width:0;font-weight:600;line-height:1.2;overflow-wrap:anywhere}.shift-leader{flex:1;min-width:8px;border-bottom:2px dotted #d6c8b1;transform:translateY(-3px)}.shift-mark{flex:none;display:inline-flex;align-items:center;font-size:11px}.shift-card.complete .shift-mark{color:#c48a26}.shift-card.next .shift-mark{padding:1px 5px;border-radius:3px;color:var(--pass-paper);background:var(--pass-clay);font-size:10px;font-weight:800;animation:line-blink 1.6s steps(1) infinite}.campaign-page .ticket:not(.locked) .shift-card:hover:not(:disabled){background:#f5ecdc}.campaign-page .shift-card.selected,.campaign-page .shift-card.selected:hover:not(:disabled){background:linear-gradient(100deg,transparent 0 1%,var(--pass-marker) 2% 97%,transparent 99%)}.shift-card.selected:before{position:absolute;top:50%;left:-11px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:8px solid var(--pass-ink);transform:translateY(-50%);content:""}.campaign-page .shift-card.locked{opacity:1}.shift-card.locked .shift-name,.shift-card.locked .shift-no,.shift-card.locked .shift-mark{color:#b9a891}.shift-card.locked .shift-name{font-weight:400}.shift-card.ordering{animation:line-call .3s ease-in-out 2}.scene-card .scene-icon{display:inline-flex;align-self:center;color:var(--pass-scene)}.scene-card .shift-name{color:var(--pass-scene);font-style:italic}.shift-card.scene-card.complete .shift-mark{color:var(--pass-scene);font-size:10px;font-weight:800;letter-spacing:.6px}.shift-card.scene-card.next .shift-mark{background:var(--pass-scene)}.campaign-page .ticket:not(.locked) .scene-card:hover:not(:disabled){background:#f3e6ee}.ticket-foot{display:grid;gap:2px;padding:10px 0 8px;border-top:2px dashed #ddd2c1;font-size:11px;text-transform:uppercase}.ticket-foot p{display:flex;justify-content:space-between;letter-spacing:1px}.ticket-foot p span:last-child{font-weight:700}.ticket-barcode{height:22px;margin:6px 12px 2px;background:repeating-linear-gradient(90deg,var(--pass-ink) 0 2px,transparent 2px 4px,var(--pass-ink) 4px 5px,transparent 5px 8px,var(--pass-ink) 8px 11px,transparent 11px 12px);opacity:.8}.ticket-foot small{color:var(--pass-muted);font-size:9.5px;letter-spacing:1.5px;text-align:center}.recipe{grid-area:recipe;display:flex;flex-direction:column;min-height:0;padding:36px 12px 16px;contain:size}.board{--chalk: #f3e6cf;--chalk-dim: #f3e6cf99;--chalk-yellow: #f0d48e;--chalk-red: #e8a080;position:relative;display:flex;flex:1;flex-direction:column;gap:24px;padding:clamp(26px,3.6dvh,40px) clamp(24px,2.4vw,34px) 26px;border-radius:4px;color:var(--chalk);background:radial-gradient(ellipse at 25% 20%,#ffffff12,transparent 55%),radial-gradient(ellipse at 80% 85%,#ffffff0d,transparent 50%),#352b26;box-shadow:inset 0 0 0 1px #00000040,inset 0 0 40px #00000059,0 0 0 10px #a7805a,0 0 0 12px #70503d,0 20px 34px -8px #392b2473;text-shadow:0 0 1px var(--chalk-dim);transform:rotate(.4deg)}.board:after{position:absolute;right:30px;bottom:-15px;width:36px;height:7px;border-radius:3px;background:linear-gradient(#fff,#e4d8c2);box-shadow:0 1px 1px #392b2466;transform:rotate(-5deg);content:""}.board-chalk{display:flex;flex:1;flex-direction:column;gap:clamp(12px,2.2dvh,24px)}.board-chalk>*{animation:chalk-write .5s ease-out both}.board-chalk>:nth-child(2){animation-delay:.06s}.board-chalk>:nth-child(3){animation-delay:.16s}.board-chalk>:nth-child(4){animation-delay:.22s}.board-chalk>:nth-child(n+5){animation-delay:.3s}.board-kicker{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--chalk-yellow);font-family:var(--pass-mono);font-size:11px;letter-spacing:1.6px;text-transform:uppercase}.board-no{white-space:nowrap}.board-tag{flex:none;white-space:nowrap;padding:2px 9px;border:2px solid currentColor;border-radius:50% 45% 50% 40%;font-weight:800;transform:rotate(-4deg)}.board-tag.next{color:var(--chalk-red)}.board-tag.done{color:#a9c7a3}.board-clapper{vertical-align:-2px;margin-left:4px}.scene-recipe .board-kicker{color:#e2b8d4}.recipe h2{margin-top:4px;font-family:var(--pass-serif);font-size:clamp(32px,4.6dvh,48px);font-style:italic;font-weight:700;letter-spacing:-.4px;line-height:1.1}.board-swash{flex:none;width:150px;height:12px;margin-top:calc(-1*clamp(8px,1.6dvh,18px));overflow:visible}.board-swash path{fill:none;stroke:var(--chalk-red);stroke-linecap:round;stroke-width:2.5}.board-menu{display:grid;gap:5px;margin:4px 0;font-family:var(--pass-mono);font-size:clamp(13px,1.6dvh,15px)}.board-menu div{display:flex;align-items:baseline;gap:8px}.board-menu dt{color:var(--chalk-yellow);letter-spacing:1px}.board-menu div:after{order:1;flex:1;border-bottom:2px dotted #f3e6cf40;transform:translateY(-3px);content:""}.board-menu dd{order:2;margin:0;font-weight:700}.board-story{color:var(--chalk-dim);font-family:var(--pass-serif);font-size:clamp(15px,2dvh,19px);font-style:italic;line-height:1.55}.board-note{padding-top:12px;color:var(--chalk);border-top:2px dashed #f3e6cf33;font-size:clamp(14px,1.8dvh,17px);font-weight:600;line-height:1.5}.board-note strong{display:block;margin-bottom:2px;color:var(--chalk-red);font-family:var(--pass-mono);font-size:11px;letter-spacing:2px;text-transform:uppercase}.board-doodle{flex:1 1 0;width:100%;min-height:0;max-height:210px;margin-block:auto;overflow:visible}.board-doodle path{fill:none;stroke:var(--chalk-dim);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2}.board-doodle .board-steam{stroke:#f3e6cf66;animation:steam 3.2s ease-in-out infinite}.board-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--chalk-dim);font-size:13px;font-weight:600}.board-stars{color:var(--chalk-yellow);font-size:clamp(24px,3.6dvh,38px);letter-spacing:4px}.board .board-order-up{position:absolute;top:45%;left:50%;padding:8px 18px;border:3px solid var(--chalk-yellow);border-radius:50% 44% 50% 42%;color:var(--chalk-yellow);background:#352b26eb;font-family:var(--pass-serif);font-size:34px;font-style:italic;font-weight:700;white-space:nowrap;animation:order-stamp .35s cubic-bezier(.3,1.5,.5,1) both;pointer-events:none}.board-launch{display:grid;gap:10px;padding-top:20px;border-top:2px dashed #f3e6cf33}.board-hint{color:var(--chalk-dim);font-family:var(--pass-mono);font-size:11px;letter-spacing:.5px;text-align:center}.board-hint kbd{display:inline-block;min-width:20px;padding:0 4px;border:1.5px solid #f3e6cf66;border-radius:4px;color:var(--chalk);background:none;font-family:inherit}.campaign-page button.recipe-start{height:clamp(54px,7dvh,64px);gap:10px;border:0;border-radius:14px;color:#fff;background:var(--pass-coffee);box-shadow:0 4px #4e3023;font-size:18px;font-weight:800;text-shadow:none;transition:transform .12s}.campaign-page button.recipe-start:hover:not(:disabled){border:0;background:#593623;box-shadow:0 4px #4e3023;transform:translateY(-1px)}.campaign-page button.recipe-start:active:not(:disabled),.campaign-page.ordering button.recipe-start{box-shadow:0 1px #4e3023;opacity:1;transform:translateY(3px)}@keyframes ticket-swing{0%{transform:rotate(3deg)}35%{transform:rotate(-2deg)}65%{transform:rotate(1deg)}to{transform:rotate(0)}}@keyframes line-blink{50%{opacity:.55}}@keyframes line-call{50%{background:#ecc76a}}@keyframes steam{50%{opacity:.35;transform:translateY(-3px)}}@keyframes chalk-write{0%{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 -10% 0 0)}}@keyframes order-stamp{0%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) scale(1.8)}to{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) scale(1)}}.campaign-page.still *,.campaign-page.still *:before,.campaign-page.still *:after{animation:none!important;transition:none!important}.campaign-page.still .board-order-up{transform:translate(-50%,-50%) rotate(-8deg)}@media(max-width:1100px){.campaign-page{grid-template-columns:minmax(0,1fr) 330px;gap:0 22px;padding-inline:22px}}@media(hover:none)and (pointer:coarse){.board-hint{display:none}}@media(max-height:820px){.campaign-page{--pass-row: 24px}.board-hint{display:none}.board{gap:14px;padding-bottom:18px}.board-launch{padding-top:14px}}.modal.settings-window{--slip-ink: #392b24;--slip-muted: #766659;--slip-paper: #fffcf4;--slip-clay: #b96847;--slip-coffee: #71452f;--slip-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;width:min(820px,92vw);max-height:min(760px,94dvh);padding:30px 36px 34px;border:0;border-radius:4px 4px 0 0;color:var(--slip-ink);background:linear-gradient(var(--slip-paper),var(--slip-paper)) top / 100% calc(100% - 12px) no-repeat,conic-gradient(from 135deg at 50% 6px,transparent 90deg,var(--slip-paper) 0) 0 calc(100% + 12px) / 12px 24px repeat-x;box-shadow:none;filter:drop-shadow(0 18px 30px #392b2440) drop-shadow(0 2px 2px #392b2426);animation:slip-print .45s cubic-bezier(.2,1.3,.4,1)}.modal.settings-window::backdrop{background:#392b2466;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-window .modal-top{align-items:flex-start;margin-bottom:8px;padding-bottom:18px;border-bottom:2px dashed #392b242e}.settings-window .modal-kicker{margin:0 0 6px;color:var(--slip-clay);font-family:var(--slip-mono);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.settings-window .modal-top h2{font-family:Georgia,Times New Roman,serif;font-size:38px;font-style:italic;font-weight:700;letter-spacing:-1px;line-height:1.1}.settings-window .modal-top>button{width:38px;height:38px;border-radius:999px;color:var(--slip-ink);background:#f1e7d6}.settings-window .modal-top>button:hover:not(:disabled){background:#e9dfcf}.settings-sheet{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.settings-block{padding:20px 0 6px}.settings-block:nth-child(n+3){border-top:2px dashed #392b241f}.settings-block h3{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-family:var(--slip-mono);font-size:12px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase}.settings-block h3 svg{color:var(--slip-clay)}.settings-window p,.settings-block small{color:var(--slip-muted);font-size:13px;line-height:1.6}.settings-window .settings-block p{margin:0 0 14px}.settings-window .settings-block p.settings-status{margin:10px 0 0;color:var(--slip-ink)}.settings-window .settings-block p.settings-status:empty{margin:0}.settings-block>small{display:block;margin-top:10px;font-size:12px}.guestbook-notes{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;margin:20px 0 0;padding:0;list-style:none}.guestbook-notes figure{height:100%;margin:0;padding:12px 16px 10px;border-left:3px solid var(--slip-clay);background:repeating-linear-gradient(transparent 0 23px,#392b2414 23px 24px)}.guestbook-notes blockquote{margin:0}.settings-window .guestbook-notes p{margin:0;color:var(--slip-ink);font-size:14px;line-height:24px}.guestbook-notes figcaption{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 12px;margin-top:6px}.guestbook-notes cite{color:var(--slip-coffee);font-style:italic;font-weight:700}.guestbook-notes small{color:var(--slip-muted);font-family:var(--slip-mono);font-size:11px;letter-spacing:.4px}.guestbook-new{margin-right:auto;color:var(--slip-coffee);font-family:var(--slip-mono);font-size:11px;letter-spacing:.4px;text-transform:uppercase}.guestbook-notes li.new figure{border-left-color:var(--slip-coffee);background-color:#b968470f}.settings-window p.guestbook-blank{margin:18px 0 0;font-style:italic;text-align:center}.shelf-keepsakes{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin:20px 0 0;padding:0;list-style:none}.shelf-keepsakes li{display:flex;gap:12px;align-items:flex-start;height:100%;padding:12px 14px;border:1px dashed #392b2440;color:var(--slip-muted)}.shelf-keepsakes li.earned{border:1px solid #392b2440;border-left:3px solid var(--slip-clay);color:var(--slip-coffee)}.shelf-keepsakes svg{flex:none;margin-top:2px}.shelf-keepsakes h3{display:inline;margin:0 10px 0 0;color:var(--slip-ink);font-size:15px}.shelf-keepsakes small{font-family:var(--slip-mono);font-size:11px;letter-spacing:.4px;text-transform:uppercase}.shelf-keepsakes li.earned small{color:var(--slip-coffee)}.shelf-keepsakes li.new{border-left-color:var(--slip-coffee);background:#b968470f}.settings-window .shelf-keepsakes p{margin:4px 0 0;color:var(--slip-ink);font-size:14px;line-height:1.45}.settings-window .shelf-keepsakes li:not(.earned) p{color:var(--slip-muted)}.settings-volume{display:block;margin:14px 0 18px}.settings-volume>span{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px;font-weight:700}.settings-volume strong{color:var(--slip-muted);font-family:var(--slip-mono);font-size:12px}.settings-window input[type=range]{accent-color:var(--slip-coffee)}.settings-window input[type=checkbox]{background:#e2d6c2}.settings-window input[type=checkbox]:checked{background:var(--slip-coffee)}.settings-window .setting-row{margin:14px 0}.settings-window .setting-row strong{font-size:14px}.settings-window .setting-row small{margin-top:3px;font-size:12px}.settings-backup{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px dashed #392b2433}.settings-window .settings-block .settings-backup p{margin:0}.settings-backup .settings-chip{flex:none}.settings-changes{margin-top:8px;font-size:13px}.settings-window .settings-changes p{margin:0}.settings-changes ul{display:grid;gap:4px;margin:4px 0 0;padding-left:18px}.options-report{margin-top:18px;padding-top:14px;border-top:1px dashed #392b2433}.options-report h3{margin:0 0 6px;color:var(--slip-ink);font-size:14px}.settings-window .options-report p{margin:0 0 12px}.settings-window .options-report p.settings-status{margin:10px 0 0;color:var(--slip-ink)}.settings-window .options-report p.settings-status:empty{margin:0}.options-report-preview{max-height:220px;margin:0 0 12px;padding:10px 12px;overflow:auto;border:1px solid #392b2433;border-radius:8px;color:var(--slip-ink);background:#f5ecdc;font:11px/1.5 var(--slip-mono);white-space:pre-wrap;overflow-wrap:anywhere}.options-report-preview:focus-visible{outline:2px solid var(--slip-coffee);outline-offset:2px}.settings-actions{display:flex;flex-wrap:wrap;gap:10px}.settings-window button.settings-chip{gap:7px;min-height:38px;padding:0 15px;border:1.5px solid #392b2433;border-radius:999px;color:var(--slip-ink);background:var(--slip-paper);font-size:13px;font-weight:700}.settings-window button.settings-chip:hover:not(:disabled){border-color:var(--slip-ink);background:#f5ecdc}.settings-window button.outline-danger.settings-chip{margin:0;border-color:#b9684766;color:#9c4f32}.settings-window button.outline-danger.settings-chip:hover:not(:disabled){border-color:var(--slip-clay);background:#f8e8dc}.settings-update{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding:10px 12px;border-left:4px solid #d4962c;border-radius:10px;background:#f8f1e3;font-size:13px}.settings-window .settings-update p{margin:0}.settings-update .settings-chip{flex:none}.settings-window .settings-foot{display:flex;flex-direction:column;align-items:center;gap:8px;margin:20px 0 0;padding-top:18px;border-top:2px dashed #392b242e;font-family:var(--slip-mono);font-size:11px;letter-spacing:1.4px;text-transform:uppercase}.settings-barcode{width:180px;height:22px;background:repeating-linear-gradient(90deg,var(--slip-ink) 0 2px,transparent 2px 4px,var(--slip-ink) 4px 5px,transparent 5px 8px,var(--slip-ink) 8px 11px,transparent 11px 12px);opacity:.75}.guide-stars{color:#d4962c;letter-spacing:1px}.modal.settings-window.confirm-slip{width:min(500px,92vw);padding:26px 30px 34px}.confirm-slip .modal-top{margin-bottom:16px;padding-bottom:14px}.confirm-slip .modal-top h2{font-size:30px}.settings-window.confirm-slip p:not(.modal-kicker){margin:0 0 10px;font-size:14px;line-height:1.55}.settings-window.confirm-slip p.export-status{margin:8px 0 0;font-size:13px}.settings-window.confirm-slip p.export-status:empty{margin:0}.confirm-slip .modal-buttons{align-items:center;gap:12px;margin-top:22px}.confirm-slip .modal-buttons>button:last-child{min-height:42px;padding:0 18px;border:0;border-radius:12px;color:#fff;background:var(--slip-coffee);box-shadow:0 3px #4e3023;font-size:14px;font-weight:800}.confirm-slip .modal-buttons>button.danger:last-child{background:#a9502f;box-shadow:0 3px #7c3a22}.confirm-slip .modal-buttons>button:last-child:hover:not(:disabled){filter:brightness(.92)}.confirm-slip .modal-buttons>button:last-child:active:not(:disabled){box-shadow:0 1px #4e3023;transform:translateY(2px)}.confirm-slip .modal-buttons>button.danger:last-child:active:not(:disabled){box-shadow:0 1px #7c3a22}.settings-window button:focus-visible{outline:2px solid var(--slip-ink);outline-offset:3px}.modal.settings-window.help-slip{width:min(620px,92vw)}.modal.settings-window.help-slip[open]{display:flex;flex-direction:column}.help-slip[open]>*{flex:none}.help-slip .lesson-note{margin:0 0 14px;padding:14px 18px;border-left:4px solid var(--slip-clay);border-radius:2px;color:var(--slip-ink);background:#f8edd6;font-size:15px;font-weight:500;line-height:1.55}.settings-window.help-slip p.help-running{margin:8px 0 0;color:var(--slip-muted);font-size:12.5px}.settings-window.help-slip p strong{color:var(--slip-ink)}.help-slip .help-targets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;padding:14px 0;border-block:2px dashed #392b241f;color:var(--slip-ink);font-size:13px}.help-slip .help-targets dt{color:#d4962c;font-size:14px;letter-spacing:1px}.help-slip .help-targets dd{margin:2px 0 0;color:var(--slip-muted);font-family:var(--slip-mono);font-size:11.5px}.help-slip .help-targets dd small{display:block;margin-top:3px;font-family:inherit;font-size:10.5px;opacity:.8}.settings-window.help-slip p.code-example-label{margin:14px 0 0;color:var(--slip-muted);font-family:var(--slip-mono);font-size:11px;letter-spacing:1px;text-transform:uppercase}.help-slip[open]>.code-example-label+.code-example{margin-top:6px}.help-slip[open]>.code-example{flex:0 1 280px;min-height:132px;margin:14px 0 0;padding:14px 18px;overflow:auto;border:1.5px dashed #392b2433;border-radius:4px;color:var(--slip-ink);background:#f8f1e3;font-family:var(--slip-mono);font-size:12px;line-height:1.6}.help-slip .help-hints{display:grid;gap:8px;margin:0 0 14px;padding:0;list-style:none}.help-slip .help-hints li{padding:10px 14px 11px;border:1.5px dashed #392b2433;border-radius:4px;background:#f8f1e3}.help-slip .help-hint-label{color:var(--slip-clay);font-family:var(--slip-mono);font-size:10.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.settings-window.help-slip .help-hints p{margin:3px 0 0;color:var(--slip-ink);font-size:13.5px;line-height:1.5}.settings-window.help-slip button.help-hint-show{min-height:30px;margin-top:8px;padding:0 12px;font-size:12px}.help-slip .help-hint-count{align-self:center;color:var(--slip-muted);font-family:var(--slip-mono);font-size:11px}.settings-window.help-slip p.help-example-warning{margin:0 0 10px;color:var(--slip-ink);font-size:13px}.confirm-slip .help-example-actions{justify-content:space-between;margin-top:0}.settings-window.confirm-slip .setting-row{margin-bottom:14px}.modal.settings-window.restore-slip{width:min(560px,92vw)}.restore-versions{display:grid;gap:6px;margin:0 0 14px;padding:0;border:0}.restore-version{display:flex;align-items:flex-start;gap:11px;padding:9px 12px;border:1.5px solid #392b241f;border-radius:10px;cursor:pointer}.restore-version:has(input:checked){border-color:var(--slip-coffee);background:#71452f0d}.restore-version:has(input:focus-visible){outline:2px solid var(--slip-coffee);outline-offset:2px}.restore-version:has(input:disabled){cursor:default;opacity:.62}.restore-version input{flex:none;margin:3px 0 0;accent-color:var(--slip-coffee)}.restore-version strong{display:block;font-size:14px}.restore-version small{display:block;margin-top:2px;color:var(--slip-muted);font-size:12px;line-height:1.4}.settings-window.confirm-slip p.restore-compare-title{display:flex;justify-content:space-between;gap:12px;margin:0;color:var(--slip-muted);font-family:var(--slip-mono);font-size:11px;letter-spacing:1px;text-transform:uppercase}.restore-compare-title span{color:var(--slip-ink);letter-spacing:0;text-transform:none}.restore-diff{max-height:min(220px,30dvh);margin:6px 0 14px;padding:8px 0;overflow:auto;border:1.5px dashed #392b2433;border-radius:4px;color:var(--slip-muted);background:#f8f1e3;font-family:var(--slip-mono);font-size:12px;line-height:1.6;list-style:none}.restore-diff li{display:flex;padding:0 12px 0 6px}.restore-diff code{font:inherit;white-space:pre}.restore-diff-mark{flex:none;width:16px;font-weight:800;text-align:center}.restore-diff .add{color:#22603c;background:#2f8f5a1f}.restore-diff .remove{color:#8f3f22;background:#b968471f}.compare-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.compare-pick label{display:grid;gap:4px;min-width:0}.compare-pick span{color:var(--slip-muted);font-family:var(--slip-mono);font-size:11px;letter-spacing:1px;text-transform:uppercase}.compare-pick select{min-width:0;min-height:34px;padding:0 8px;border:1.5px solid #392b2433;border-radius:8px;background:var(--slip-paper);color:var(--slip-ink);font:inherit;font-size:13px;text-overflow:ellipsis}.compare-pick select:focus-visible{outline:2px solid var(--slip-coffee);outline-offset:1px}.compare-table{width:100%;margin:0;border-block:2px dashed #392b241f;border-collapse:collapse;font-family:var(--slip-mono);font-size:12.5px}.compare-table th,.compare-table td{padding:7px 6px;text-align:left;vertical-align:top}.compare-table thead th{color:var(--slip-muted);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.compare-table tbody th{color:var(--slip-muted);font-weight:400}.compare-table tbody td{font-weight:700}.compare-table tbody tr+tr>*{border-top:1px dotted #392b2426}.compare-table .compare-change{white-space:nowrap}.compare-table .compare-change svg{margin-right:4px;vertical-align:-2px}.compare-table .better .compare-change{color:#3f6d2c}.compare-table .worse .compare-change{color:#9a4527}.compare-table .same .compare-change,.compare-table .unjudged .compare-change{color:var(--slip-muted);font-weight:400}.settings-window.confirm-slip p.compare-note{margin:8px 0 0;color:var(--slip-muted);font-family:var(--slip-mono);font-size:11px}.compare-routines{margin-top:16px}.compare-routines h3{margin:0 0 8px;color:var(--slip-ink);font-size:14px}.settings-window.confirm-slip .compare-routines p.compare-same{margin:-4px 0 0;color:var(--slip-muted);font-size:12px}.settings-window.receipt-slip p.receipt-compare{margin:10px 0 0;text-align:center}.receipt-compare button{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:0;border-radius:6px;background:transparent;color:var(--slip-coffee);font:inherit;font-family:var(--slip-mono);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.receipt-compare button:hover{background:#392b240f}.receipt-slip .receipt-lead{color:var(--slip-ink);font-weight:700;text-align:center}.settings-window.receipt-slip p.receipt-stars{margin:4px 0 14px;color:#d4962c;font-size:34px;letter-spacing:8px;line-height:1;text-align:center}.settings-window.receipt-slip p.receipt-best{margin:-8px 0 12px;color:var(--slip-muted);font-family:var(--slip-mono);font-size:12px;text-align:center}.receipt-slip .receipt-totals{margin:14px 0 0;padding:6px 0;border-block:2px dashed #392b241f;font-family:var(--slip-mono);font-size:13px}.receipt-slip .receipt-totals>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0}.receipt-slip .receipt-totals dt{color:var(--slip-muted)}.receipt-slip .receipt-totals dd{margin:0;font-weight:700}.receipt-slip .receipt-totals small{color:var(--slip-muted);font-size:11px;font-weight:400}.receipt-slip .receipt-totals .met dd:after{content:" ✓";color:#5f7f45}.receipt-slip .receipt-totals .held dd:after{color:var(--slip-muted)}.settings-window.receipt-slip p.receipt-note{margin:8px 0 0;color:var(--slip-muted);font-family:var(--slip-mono);font-size:11px;text-align:center}.receipt-slip .receipt-waits{margin:14px 0 0;font-family:var(--slip-mono);font-size:12px}.settings-window.receipt-slip .receipt-waits p{margin:0 0 8px;color:var(--slip-ink);font-size:12px;text-align:center}.receipt-slip .receipt-waits dl{display:grid;gap:4px;margin:0}.receipt-slip .receipt-waits dl>div{display:grid;grid-template-columns:11em 1fr;gap:10px;align-items:center}.receipt-slip .receipt-waits dt{color:var(--slip-muted)}.receipt-slip .receipt-waits dd{display:flex;gap:8px;align-items:center;margin:0;font-weight:700}.receipt-slip .receipt-wait-bar{min-inline-size:2px;block-size:6px;border-radius:3px;background:var(--slip-muted);opacity:.45}.receipt-slip .receipt-waits dl>div:first-child .receipt-wait-bar{background:#d4962c;opacity:1}.settings-window.receipt-slip p.receipt-thanks{margin:16px 0 0;color:var(--slip-muted);font-family:var(--slip-mono);font-size:12px;text-align:center}.receipt-slip .modal-buttons{justify-content:space-between}@keyframes slip-print{0%{opacity:0;transform:translateY(-24px) rotate(-1deg)}}html[data-motion=reduced] .modal.settings-window{animation:none}@media(prefers-reduced-motion:reduce){.modal.settings-window{animation:none}}.app.scene .app-body,.app.ending .app-body{min-width:0;min-height:100dvh}.story-page{--story-ink: #392b24;--story-muted: #766659;--story-paper: #fffcf4;--story-clay: #b96847;--story-coffee: #71452f;--story-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;position:relative;display:grid;flex:1;grid-template-columns:clamp(420px,38vw,580px);grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:100dvh;overflow:hidden;padding:18px 32px clamp(24px,4dvh,44px);color:var(--story-ink);background:var(--cafe-wall)}.story-page .shell-bar{position:relative;z-index:2;grid-column:1 / -1;width:calc(100vw - 64px)}.story-scene{position:absolute;inset:0 0 0 clamp(160px,20vw,320px);pointer-events:none}.story-scene .cafe-canvas{position:absolute;inset:0}.story-note{position:relative;z-index:1;align-self:center;margin:clamp(20px,4dvh,40px) 0 0 clamp(0px,2vw,32px);padding:clamp(30px,4.6dvh,44px) clamp(26px,2.6vw,40px) clamp(20px,3dvh,28px);border-radius:3px;background:var(--story-paper);box-shadow:0 14px 26px #392b242e,0 1px 1px #392b241f;transform:rotate(-.8deg);transform-origin:50% 0;animation:story-pin .7s cubic-bezier(.3,1.5,.5,1) both}.story-tape{position:absolute;top:-13px;left:50%;width:118px;height:28px;background:#f3d98acc;box-shadow:0 1px 2px #392b2426;transform:translate(-50%) rotate(-3deg)}.story-kicker{color:var(--story-clay);font-family:var(--story-mono);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.story-note h1:focus{outline:none}.story-note h1{margin:clamp(10px,1.8dvh,18px) 0 clamp(16px,2.6dvh,26px);color:var(--story-ink);font-family:Georgia,Times New Roman,serif;font-size:clamp(36px,min(3.6vw,6dvh),56px);font-style:italic;font-weight:700;letter-spacing:-1.2px;line-height:1.02}.story-narration{color:var(--story-muted)}.story-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin:clamp(22px,3.6dvh,34px) 0 clamp(18px,3dvh,28px)}.story-page button.story-start{gap:10px;height:clamp(52px,6.6dvh,60px);padding:0 22px;border:0;border-radius:14px;color:#fff;background:var(--story-coffee);box-shadow:0 4px #4e3023;font-size:17px;font-weight:800;transition:transform .12s}.story-page button.story-start:hover:not(:disabled){border:0;background:#593623;transform:translateY(-1px)}.story-page button.story-start:active:not(:disabled){box-shadow:0 1px #4e3023;transform:translateY(3px)}.story-page button.story-link{padding:6px 2px;border:0;border-bottom:2px dashed #392b2440;border-radius:0;color:var(--story-ink);background:none;font-size:15px;font-weight:700;cursor:pointer}.story-page button.story-link:hover{border-color:var(--story-ink)}.story-page button:focus-visible{outline:2px solid var(--story-ink);outline-offset:3px}.story-foot{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-top:14px;border-top:2px dashed #392b242e;color:var(--story-muted);font-family:var(--story-mono);font-size:11px;letter-spacing:1.4px;text-transform:uppercase}.story-foot strong{overflow:hidden;color:var(--story-ink);font-size:13px;letter-spacing:0;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.story-receipt{display:grid;gap:6px;margin-top:clamp(18px,3dvh,26px);padding-top:14px;border-top:2px dashed #392b242e;font-family:var(--story-mono);font-size:14px}.story-receipt div{display:flex;justify-content:space-between;gap:16px}.story-receipt dt{color:var(--story-muted);font-size:12px;letter-spacing:1.4px;text-transform:uppercase}.story-receipt dd{margin:0;font-weight:700}.story-receipt .story-milestone dt{letter-spacing:.6px}.story-receipt .story-total{margin-top:4px;padding-top:8px;border-top:1px dashed #392b242e}@media(max-height:820px){.story-receipt{gap:2px}}.story-thanks{display:grid;justify-items:center;gap:8px;text-align:center;text-wrap:balance}.story-barcode{width:64%;height:22px;background:repeating-linear-gradient(90deg,var(--story-ink) 0 2px,transparent 2px 4px,var(--story-ink) 4px 5px,transparent 5px 8px,var(--story-ink) 8px 11px,transparent 11px 12px);opacity:.75}@keyframes story-pin{0%{opacity:0;transform:translateY(-14px) rotate(1.6deg)}to{opacity:1;transform:rotate(-.8deg)}}html[data-motion=reduced] .story-page *,html[data-motion=reduced] .story-page *:before,html[data-motion=reduced] .story-page *:after{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){.story-page *,.story-page *:before,.story-page *:after{animation:none!important;transition:none!important}}.save-notice{position:fixed;top:14px;left:50%;z-index:60;display:flex;align-items:center;gap:12px;width:max-content;max-width:min(640px,calc(100vw - 28px));padding:10px 10px 10px 16px;border-left:4px solid #b4432e;border-radius:12px;color:#392b24;background:#fffcf4;box-shadow:0 14px 30px #392b2433,0 1px 2px #392b2426;transform:translate(-50%);animation:save-notice-in .3s cubic-bezier(.2,1.3,.4,1)}.save-notice>svg{flex:none;color:#b4432e}.save-notice.is-update{align-items:flex-start;border-left-color:#d4962c}.save-notice.is-update>svg{margin-top:2px;color:#d4962c}.save-notice p{margin:0;font-size:13px;line-height:1.45}.save-notice button{flex:none;display:inline-flex;align-items:center;justify-content:center;border:0;color:#392b24;cursor:pointer;font:inherit}.save-notice .save-notice-open{min-height:34px;padding:0 14px;border-radius:999px;color:#fff;background:#71452f;font-size:13px;font-weight:700}.save-notice .save-notice-open:hover{background:#5d3826}.save-notice .save-notice-keep{min-height:34px;padding:0 14px;border:1px solid #71452f66;border-radius:999px;background:transparent;font-size:13px;font-weight:700}.save-notice .save-notice-keep:hover{background:#392b2412}.save-notice .save-notice-close{width:30px;height:30px;border-radius:50%;background:transparent}.save-notice .save-notice-close:hover{background:#392b2412}.save-notice button:focus-visible{outline:2px solid #392b24;outline-offset:2px}@keyframes save-notice-in{0%{opacity:0;transform:translate(-50%,-12px)}}.settings-pace{display:flex;flex:none;gap:10px;font-size:13px;font-weight:700}.settings-pace label{display:flex;align-items:center;gap:5px}.settings-pace input[type=radio]{accent-color:var(--slip-coffee)}.workspace-main{--desk-ink: #392b24;--desk-muted: #766659;--desk-paper: #fffcf4;--desk-pill: #fffcf4cc;--desk-rule: #e3d6c1;--desk-shadow: 0 1px 2px #392b241a;--workspace-padding: 14px}.workspace .workbench{gap:14px}.workspace .cafe-panel{container:cafe-panel / inline-size;gap:10px;padding:0}.workspace .workspace-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;min-width:0}.workspace-main .breadcrumb{display:inline-flex;align-items:center;gap:7px;min-height:36px;margin:0;padding:0 15px 0 12px;border:0;border-radius:999px;background:var(--desk-pill);box-shadow:var(--desk-shadow);color:var(--desk-ink);font-size:13px;font-weight:700}.workspace-main .breadcrumb:hover:not(:disabled){background:var(--desk-paper);color:var(--desk-ink)}.workspace-main .breadcrumb span{margin:0;color:var(--desk-rule);font-weight:400}.workspace-main .view-controls{display:flex;align-items:center;flex-wrap:nowrap;justify-content:flex-end;gap:2px;max-width:100%;padding:3px;border:0;border-radius:999px;background:var(--desk-pill);box-shadow:var(--desk-shadow)}.workspace-main .view-controls button{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--desk-muted);font-size:12px;font-weight:650;box-shadow:none}.workspace-main .view-controls button svg{width:15px;height:15px}.workspace-main .view-controls button:hover:not(:disabled){background:#f1e6d2;color:var(--desk-ink)}.workspace-main .view-controls button[aria-pressed=true],.workspace-main .view-controls button[aria-pressed=true]:hover:not(:disabled){background:var(--coffee);color:#fffcf4}.workspace-main .heading-tools{display:flex;align-items:center;gap:8px;min-width:0;margin-left:auto}.workspace-main .heading-toggle{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 13px;border:0;border-radius:999px;background:var(--desk-pill);box-shadow:var(--desk-shadow);color:var(--desk-muted);font-size:12px;font-weight:650}.workspace-main .heading-toggle svg{width:15px;height:15px}.workspace-main .heading-toggle:hover{color:var(--desk-ink)}.workspace-main .preview-toggle[aria-pressed=true]{background:#dff2e8;box-shadow:var(--desk-shadow),inset 0 0 0 2px #3f9a77;color:#22513f}.workspace-main .summary-toggle[aria-pressed=true]{background:#e3ecf6;box-shadow:var(--desk-shadow),inset 0 0 0 2px #4d7aa8;color:#23415f}@container cafe-panel (max-width: 760px){.workspace-main .heading-toggle:not([aria-pressed=true]) span{display:none}.workspace-main .view-controls>button:not([aria-pressed=true]),.workspace-main .view-controls button:not([aria-pressed=true]) .robot-choice-label{gap:0;font-size:0}.workspace-main .view-controls button:not([aria-pressed=true]){padding:0 9px}}.workspace-main .locked-robot-zone{display:flex;align-items:center;flex-basis:auto;gap:2px;min-width:0}.workspace-main .locked-robot-buttons{display:flex;flex-wrap:nowrap;gap:2px;height:auto}.workspace-main .locked-robot-buttons button:disabled{flex:0 1 auto;opacity:.45;cursor:not-allowed}.workspace-main .view-controls .robot-choice-label{padding:0;gap:6px}.workspace-main .view-controls .locked-robot-buttons button:disabled{padding:0 8px}.workspace-main .view-controls .locked-robot-buttons .robot-choice-label{gap:0;font-size:0}.workspace-main .robot-tabs{position:relative;flex-wrap:nowrap;gap:4px;padding:10px 14px}.workspace-main .robot-tabs:before{content:"";position:absolute;inset:6px 10px;border:1px solid #ffffff0d;border-radius:999px;background:#0000001f;pointer-events:none}.workspace-main .robot-tabs>button,.workspace-main .robot-tabs .locked-robot-zone{position:relative;flex:1 1 0}.workspace-main .robot-tabs button{border:0;border-radius:999px;background:transparent}.workspace-main .robot-tabs .robot-choice-label{padding:7px 9px}.workspace-main .robot-tabs button[aria-selected=true]{background:#ead8b8;color:#493727;box-shadow:0 1px 3px #0000004d}.workspace-main .robot-tabs button:hover:not(:disabled):not([aria-selected=true]){background:#ffffff0d;color:#fff2de}.workspace-main .robot-tabs button:focus-visible{outline-offset:1px}.workspace-main .robot-tabs button[data-activity]{display:flex;align-items:center;justify-content:center}.workspace-main .robot-tabs .robot-activity{display:inline-flex;align-items:center;gap:4px;margin:0 9px 0 -3px;font-size:10.5px;font-weight:650;opacity:.72}.workspace-main .robot-tabs .robot-activity:before{content:"";width:6px;height:6px;border:1.5px solid currentColor;border-radius:50%}.workspace-main .robot-tabs [data-activity=working] .robot-activity:before{border-color:#4fbf85;background:#4fbf85;animation:robot-working 1.2s ease-in-out infinite}.workspace-main .robot-tabs [data-activity=waiting] .robot-activity:before{border-color:#e0b25c}.workspace-main .robot-tabs [aria-selected=true][data-activity=working] .robot-activity:before{border-color:#2f8f5a;background:#2f8f5a}.workspace-main .robot-tabs [aria-selected=true][data-activity=waiting] .robot-activity:before{border-color:#b07d22}@keyframes robot-working{50%{opacity:.45}}.workspace-main .robot-tabs .locked-robot-buttons{flex:1;gap:4px}.workspace-main .robot-tabs .locked-robot-buttons button:disabled{flex:1 1 0;min-width:0;opacity:.4}.workspace-main .scene-space{border-radius:18px}.workspace-main .playback-toolbar{align-self:center;flex-wrap:nowrap;gap:6px;margin:0;padding:5px;border:0;border-radius:999px;background:var(--desk-pill);box-shadow:var(--desk-shadow)}.workspace-main .playback-toolbar .run-button{min-height:40px;min-width:150px;padding:0 18px 0 16px;border-radius:999px;font-size:14px;font-weight:750}.workspace-main .playback-toolbar .run-button kbd{display:inline-block;margin-left:2px;padding:2px 6px;border:0;border-radius:999px;background:#ffffff24;color:inherit;font:600 10px/1.4 ui-monospace,SF Mono,Menlo,monospace;opacity:.85}@media(max-width:1180px){.workspace-main .playback-toolbar .run-button{min-width:0;white-space:nowrap}.workspace-main .playback-toolbar .run-button kbd{display:none}}@media(hover:none)and (pointer:coarse){.workspace-main .playback-toolbar .run-button kbd{display:none}}.workspace-main .playback-toolbar>button:not(.run-button){display:inline-flex;align-items:center;gap:5px;min-height:40px;padding:0 14px;border-radius:999px;color:var(--desk-ink);font-size:13px;font-weight:650}.workspace-main .playback-toolbar>button:not(.run-button):hover:not(:disabled){background:#f1e6d2}.workspace-main .playback-toolbar>.step-button{padding:0 12px;white-space:nowrap}@media(max-width:1180px){.workspace-main .playback-toolbar>.step-button{justify-content:center;width:40px;padding:0}.workspace-main .playback-toolbar .step-label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}.workspace-main .playback-round{color:var(--desk-muted);font-size:12px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.workspace-main .playback-round .round-pips{display:inline-flex;gap:3px;margin-right:7px;vertical-align:1px}.workspace-main .round-pips i{width:7px;height:7px;border:1.5px solid #c9b8a2;border-radius:50%}.workspace-main .round-pips i.current{border-color:var(--desk-ink)}.workspace-main .round-pips i.passed{border-color:#3b9566;background:#3b9566}.workspace-main .playback-round.practice strong{margin-right:6px;padding:1px 6px;border-radius:999px;background:#2f8f5a1f;color:#2a6e47;font-size:11px;font-weight:700;letter-spacing:.02em}.workspace-main .playback-toolbar>button:disabled{color:var(--desk-muted);opacity:.55}.workspace-main .playback-speed{gap:5px;min-width:170px;padding:0 16px 0 10px;border-left:1px solid var(--desk-rule)}.workspace-main .playback-speed>span{color:var(--desk-ink);font-size:12px;font-weight:650}.workspace-main .playback-speed small{color:var(--desk-muted);font:500 10px ui-monospace,SF Mono,Menlo,monospace}.workspace-main .editor-panel{border-radius:18px}.workspace-main .coding-pane-heading{padding:18px 20px 8px;border-bottom:0;border-radius:17px 17px 0 0}.workspace-main .editor-panel .editor-body{border-radius:0 0 17px 33px/0 0 17px 17px}.workspace-main .editor-panel:has(.failure-card,.first-routine-tips,.handover,.robot-inspector) .editor-body{border-radius:0}.first-routine-tips{flex:none;padding:10px 16px 12px;border-top:1px solid #f2c66d40;border-radius:0 0 17px 17px;background:color-mix(in srgb,var(--draft-deep) 92%,#f2c66d);color:var(--draft-text);font-size:12px;line-height:1.5}.first-routine-tips:has(+.failure-card,+.practice-card){border-radius:0}.first-routine-tips header{display:flex;align-items:center;gap:10px}.first-routine-tips header p{display:flex;align-items:center;gap:7px;margin:0;color:#f5d68f;font-weight:750}.first-routine-step{color:var(--draft-muted);font-weight:600;white-space:pre}.first-routine-pips{display:flex;gap:4px;margin:0;padding:0;list-style:none}.first-routine-pips li{width:14px;height:4px;border-radius:999px;background:#ffffff1f}.first-routine-pips li.done{background:#4fbf85}.first-routine-pips li.current{background:#f5d68f}.first-routine-tips header button{display:grid;place-items:center;width:24px;height:24px;margin-left:auto;padding:0;border:0;border-radius:999px;background:transparent;color:var(--draft-muted)}.first-routine-tips header button:hover{background:#ffffff10;color:var(--draft-text)}.workspace-main .first-routine-text{margin:4px 0 0 21px;color:var(--draft-text)}.first-routine-text strong{color:#f5d68f}.handover{flex:none;padding:10px 16px 12px;border-top:1px solid #8fbce840;border-radius:0 0 17px 17px;background:color-mix(in srgb,var(--draft-deep) 92%,#8fbce8);color:var(--draft-text);font-size:12px;line-height:1.45}.handover:has(+.failure-card,+.practice-card){border-radius:0}.handover header{display:flex;align-items:center;gap:10px}.handover header p{display:flex;align-items:center;gap:7px;margin:0;color:#b9d7f2;font-weight:750}.handover-count{color:var(--draft-muted);font-weight:600;white-space:nowrap}.handover header button{display:grid;place-items:center;width:24px;height:24px;margin-left:auto;padding:0;border:0;border-radius:999px;background:transparent;color:var(--draft-muted)}.handover header button:hover{background:#ffffff10;color:var(--draft-text)}.handover header button svg{transition:transform .16s ease}.handover header button[aria-expanded=false] svg{transform:rotate(-90deg)}.workspace-main .handover-lead{margin:4px 0 6px 21px;color:var(--draft-muted)}.handover-steps{display:flex;flex-wrap:wrap;gap:4px 0;margin:0 0 0 21px;padding:0;list-style:none}.handover-steps li{display:flex;align-items:center;gap:5px;color:var(--draft-muted);font-weight:650;white-space:nowrap}.handover-steps li:not(:last-child):after{content:"›";margin:0 6px 0 1px;color:var(--draft-line);font-weight:400}.handover-mark{display:inline-grid;flex:none;place-items:center;width:15px;height:15px;border:1px solid var(--draft-line);border-radius:999px;font-size:9.5px;font-weight:800}.handover-steps li.done{color:var(--draft-text)}.handover-steps li.done .handover-mark{border-color:#4fbf85;background:#4fbf85;color:var(--draft-deep)}.handover-steps li.missing{color:#f5d68f}.handover-steps li.missing .handover-mark{border-color:#f5d68f}.workspace-main .handover-status{margin:6px 0 0 21px;color:var(--draft-muted)}.handover-status strong{color:#f5d68f;font-weight:700}.handover:not(:has(li.missing)) .handover-status{color:#8fe0b4;font-weight:650}.robot-inspector{flex:none;padding:10px 16px 12px;border-top:1px solid #b9a5f040;border-radius:0 0 17px 17px;background:color-mix(in srgb,var(--draft-deep) 92%,#b9a5f0);color:var(--draft-text);font-size:12px;line-height:1.45}.robot-inspector:has(+.first-routine-tips,+.handover,+.failure-card,+.practice-card){border-radius:0}.robot-inspector header{display:flex;align-items:center;gap:10px}.robot-inspector header p{display:flex;align-items:center;gap:7px;margin:0;color:#d5c9f7;font-weight:750}.inspector-when{margin-left:auto;color:var(--draft-muted);font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.robot-inspector dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:3px 14px;margin:6px 0 0 21px}.robot-inspector dl>div{display:contents}.robot-inspector dt{color:var(--draft-muted);font-weight:650}.robot-inspector dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;min-width:0;margin:0;color:var(--draft-text)}.robot-inspector dd strong{color:#d5c9f7;font-weight:700}.inspector-block{color:var(--draft-muted);font-variant-numeric:tabular-nums;font-weight:600}.inspector-unset{color:var(--draft-muted);font-style:italic}.inspector-reason{margin-left:auto;padding:1px 8px;border-radius:999px;background:#8f78d64d;color:#e4dcfb;font-size:11px;font-weight:700;white-space:nowrap}.inspector-reason+.inspector-when{margin-left:0}.workspace-main .editor-panel button.line-number{top:7px;width:24px;height:18px;margin-left:-2px;padding:0 4px 0 0;border:0;border-radius:999px;background:transparent;color:#bca58b;justify-content:flex-end;pointer-events:auto;transition:none}.workspace-main .editor-panel button.line-number:hover{background:#b9a5f033;color:#e4dcfb}.workspace-main .editor-panel button.line-number:active{transform:none}.workspace-main .editor-panel button.line-number.marked{justify-content:center;padding:0;background:#8f78d6;color:#fff;font-weight:700}.workspace-main .editor-panel .code-text-lines>.marked:after{left:10px;width:24px;border-radius:999px;background:#8f78d6;color:#fff;font-weight:700;text-align:center}.workspace-main .pause-at{position:relative}.workspace-main .pause-at-button{gap:5px;min-height:40px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--desk-ink);font-size:13px;font-weight:650;white-space:nowrap}.workspace-main .pause-at-button:hover:not(:disabled),.workspace-main .pause-at-button[aria-expanded=true]{background:#f1e6d2}.workspace-main .pause-at-count{min-width:17px;padding:0 5px;border-radius:999px;background:#8f78d6;color:#fff;font-size:10.5px;font-weight:750;line-height:17px;font-variant-numeric:tabular-nums}@media(max-width:1180px){.workspace-main .pause-at-button{padding:0 10px}}.workspace-main .pause-at-menu{position:absolute;bottom:calc(100% + 10px);left:50%;z-index:30;display:grid;gap:2px;width:290px;padding:12px;border:1px solid var(--desk-rule);border-radius:16px;background:#fffcf4;box-shadow:0 12px 32px #392b2433;color:var(--desk-ink);font-size:13px;transform:translate(-50%)}.workspace-main .pause-at-title{margin:0 4px 6px;color:var(--desk-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.workspace-main .pause-at-marks{display:flex;align-items:center;gap:10px;margin-bottom:4px;padding:8px 10px;border-radius:11px;background:#8f78d614}.workspace-main .pause-at-marks p{display:grid;gap:1px;margin:0;line-height:1.35}.workspace-main .pause-at-marks p span,.workspace-main .pause-at-menu label small{color:var(--desk-muted);font-size:11.5px;font-weight:500}.workspace-main .pause-at-marks button{flex:none;margin-left:auto;padding:5px 11px;border-radius:999px;font-size:12px}.workspace-main .pause-at-menu label{display:flex;align-items:flex-start;gap:9px;padding:7px 10px;border-radius:11px;font-weight:650;line-height:1.35;cursor:pointer}.workspace-main .pause-at-menu label:hover{background:#f1e6d2}.workspace-main .pause-at-menu label>span{display:grid;gap:1px}.workspace-main .pause-at-menu input[type=checkbox]{flex:none;width:15px;height:15px;margin:2px 0 0;accent-color:#7a62c9}.failure-card{flex:none;max-height:45%;overflow:auto;border-top:1px solid #ff8e7b4d;border-radius:0 0 17px 17px;background:color-mix(in srgb,var(--draft-deep) 90%,#ff654d);color:var(--draft-text);scrollbar-width:thin;scrollbar-color:var(--draft-line) transparent}.failure-card.stale{border-top-color:var(--draft-line);background:var(--draft-deep)}.failure-card>header>button{display:flex;align-items:center;gap:8px;width:100%;padding:11px 16px;border:0;border-radius:0;background:transparent;color:#ffb4a3;font-size:12px;font-weight:750;text-align:left}.failure-card>header>button:hover:not(:disabled){background:#ffffff08}.failure-card>header>button:focus-visible{outline:1px solid #f3e6cf55;outline-offset:-3px}.failure-card.stale>header>button{color:var(--draft-muted)}.failure-card-when{color:var(--draft-muted);font-weight:600}.failure-card-chevron{flex:none;margin-left:auto;transition:rotate .18s ease}.failure-card [aria-expanded=false] .failure-card-chevron{rotate:-90deg}html[data-motion=reduced] .failure-card-chevron{transition:none}.failure-card-body{display:grid;gap:9px;padding:0 16px 14px 39px;font-size:12px;line-height:1.5}.failure-card-body[hidden]{display:none}.failure-card-body p,.failure-card-body blockquote{margin:0}.failure-card-body blockquote{color:var(--draft-chalk);font-style:italic}.failure-card-reason{color:var(--draft-text)}.failure-card-stale{color:var(--draft-muted);font-size:11px}.failure-card.stale .failure-card-body>:not(.failure-card-stale){opacity:.6}.failure-compare{width:100%;border-collapse:collapse;font-size:12px}.failure-compare th,.failure-compare td{padding:5px 8px 5px 0;text-align:left;vertical-align:middle}.failure-compare thead :is(th,td){color:#d2ae7f;font:750 9px/1.3 ui-monospace,monospace;letter-spacing:1px;text-transform:uppercase}.failure-compare tbody :is(th,td){border-top:1px solid var(--draft-line)}.failure-compare tbody th{color:var(--draft-muted);font-weight:600;white-space:nowrap}.failure-compare tbody th svg{margin-right:6px;vertical-align:-2px}.failure-compare-got{color:#ffb4a3;font-weight:700}.failure-card.stale .failure-compare-got{color:inherit}.failure-decisions h3{margin:0 0 4px;color:#d2ae7f;font:750 9px/1.3 ui-monospace,monospace;letter-spacing:1px;text-transform:uppercase}.failure-decisions h3 span{color:var(--draft-muted)}.failure-decisions ol{display:grid;margin:0;padding:0;list-style:none}.failure-decisions li{display:grid;grid-template-columns:auto 1fr;column-gap:10px;padding:5px 0;border-top:1px solid var(--draft-line)}.failure-decision-block{grid-row:span 3;color:var(--draft-muted);font-weight:600;white-space:nowrap}.failure-decision-if{color:var(--draft-text)}.failure-decision-if:first-letter{text-transform:uppercase}.failure-decision-if strong{font-weight:700}.failure-decision-if .yes{color:#8fe0b4}.failure-decision-if .no{color:#ffb4a3}.failure-decision-parts,.failure-decision-heard{color:var(--draft-muted);font-size:11px}.failure-card-next{color:var(--draft-muted)}.failure-card-next strong{margin-right:4px;color:#d2ae7f;font:750 9px ui-monospace,monospace;letter-spacing:1px;text-transform:uppercase}.failure-card-show{display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:5px 10px;border:1px solid var(--draft-line);border-radius:8px;background:transparent;color:var(--draft-text);font-size:11px}.failure-card-show:hover:not(:disabled){border-color:var(--draft-chalk);background:#ffffff0d}.failure-card-actions{display:flex;flex-wrap:wrap;gap:8px}.failure-card.practice-card{border-top-color:#7fd6a64d;background:color-mix(in srgb,var(--draft-deep) 90%,#4fcf8c)}.practice-card-title{display:flex;align-items:center;gap:8px;margin:0;padding:11px 16px;color:#a9e8c4;font-size:12px;font-weight:750}.editor-body .observation-note{max-width:34ch;margin:18px 16px;padding:10px 14px;border:1px dashed #bca58b88;border-radius:10px;color:#6f5a45;font-size:13px;line-height:1.45}.workspace-main .coding-tools button{width:30px;height:30px;border-radius:8px}.workspace-main .history-tools{display:flex;gap:4px;margin-right:6px;padding-right:10px;border-right:1px solid #a88b632e}.workspace-main .coding-tools button:disabled{opacity:.35;cursor:default}.workspace-main .coding-pane-heading .shift-objective{margin-top:12px}.editor-panel .compact-palette .command-tile{zoom:.84}.editor-panel .compact-palette .command-library{gap:7px}@keyframes shop-block-grow{0%{transform:scale(.86);opacity:.75}to{transform:scale(1);opacity:1}}.workspace-main .replay-timeline{position:absolute;right:50%;bottom:12px;z-index:20;display:grid;gap:4px;width:min(720px,calc(100% - 24px));padding:8px 10px 6px;border-radius:16px;background:var(--desk-pill);box-shadow:0 6px 20px #392b241f;color:var(--desk-ink);transform:translate(50%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.workspace-main .replay-track{position:relative;height:22px}.workspace-main .replay-marks{position:absolute;inset:4px 8px;pointer-events:none}.workspace-main .replay-marks:before{position:absolute;inset:6px 0;border-radius:999px;background:var(--desk-rule);content:""}.workspace-main .replay-tick,.workspace-main .replay-round{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;border-radius:1px;background:var(--desk-muted)}.workspace-main .replay-tick.order{background:#b3822b}.workspace-main .replay-tick.handoff{background:#4d9275}.workspace-main .replay-tick.slip{top:-2px;bottom:-2px;width:3px;background:#c4553d}.workspace-main .replay-tick.start{top:3px;bottom:3px;width:1px;background:#8f78d6}.workspace-main .replay-round{top:-3px;bottom:-3px;width:0;border-left:1px dashed var(--desk-muted);background:none}.workspace-main .replay-scrubber{position:absolute;inset:0;width:100%;height:100%;margin:0;background:transparent;appearance:none}.workspace-main .replay-scrubber::-webkit-slider-runnable-track{height:100%;background:transparent}.workspace-main .replay-scrubber::-moz-range-track{background:transparent}.workspace-main .replay-scrubber::-webkit-slider-thumb{width:16px;height:16px;margin-top:3px;border:2px solid var(--desk-paper);border-radius:50%;background:var(--desk-ink);box-shadow:0 1px 3px #392b2459;appearance:none}.workspace-main .replay-scrubber::-moz-range-thumb{width:12px;height:12px;border:2px solid var(--desk-paper);border-radius:50%;background:var(--desk-ink);box-shadow:0 1px 3px #392b2459}.workspace-main .replay-scrubber:focus-visible{outline:none}.workspace-main .replay-scrubber:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--desk-paper),0 0 0 4px #8f78d6}.workspace-main .replay-scrubber:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--desk-paper),0 0 0 4px #8f78d6}.workspace-main .replay-controls{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0}.workspace-main .replay-controls button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:28px;padding:0 9px;border:0;border-radius:999px;background:transparent;color:var(--desk-ink);font-size:12px;font-weight:650;white-space:nowrap}.workspace-main .replay-controls button:hover:not(:disabled){background:#f1e6d2}.workspace-main .replay-controls button:disabled{color:var(--desk-muted);opacity:.55}.workspace-main .replay-controls .replay-jump{width:28px;padding:0}.workspace-main .replay-when{min-width:112px;color:var(--desk-ink);font-size:12px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}.workspace-main .replay-when.earlier{color:#6b55b3}.workspace-main .replay-kinds{display:flex;gap:2px;margin-left:auto;padding:2px;border-radius:999px;background:#f1e6d2a6}.workspace-main .replay-kinds button{min-height:24px;padding:0 8px;color:var(--desk-muted);font-size:11.5px}.workspace-main .replay-kinds button[aria-pressed=true]{background:var(--desk-paper);box-shadow:var(--desk-shadow);color:var(--desk-ink)}.workspace-main .replay-controls .replay-now{background:#6b55b3;color:#fff}.workspace-main .replay-controls .replay-now:hover:not(:disabled){background:#5c47a3}.workspace-main .replay-follow{max-width:190px;min-height:28px;padding:0 24px 0 10px;border:1px solid var(--desk-rule);border-radius:999px;background:var(--desk-paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23766659' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 9px center;color:var(--desk-ink);font-size:12px;font-weight:650;text-overflow:ellipsis;appearance:none}.workspace-main .replay-follow:hover{border-color:#8f78d6}.workspace-main .replay-follow:focus-visible{outline:2px solid #8f78d6;outline-offset:1px}.workspace-main .order-route{position:absolute;top:12px;left:12px;z-index:20;display:grid;gap:4px;width:min(280px,calc(100% - 24px));max-height:calc(100% - 120px);padding:9px 10px 8px;overflow:auto;border-radius:14px;background:var(--desk-pill);box-shadow:0 6px 20px #392b241f;color:var(--desk-ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);scrollbar-width:thin}.workspace-main .order-route header{display:flex;align-items:center;gap:6px;color:#6b55b3}.workspace-main .order-route h3{flex:1;margin:0;color:var(--desk-ink);font-size:13px;font-weight:750}.workspace-main .order-route h3 span{color:var(--desk-muted);font-weight:650}.workspace-main .order-route-stop{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--desk-muted)}.workspace-main .order-route-stop:hover{background:#f1e6d2;color:var(--desk-ink)}.workspace-main .order-route-phrase,.workspace-main .order-route-wait{margin:0 0 2px;color:var(--desk-muted);font-size:12px;font-style:italic}.workspace-main .order-route ol{display:grid;margin:0;padding:0;list-style:none}.workspace-main .order-route li{position:relative;padding-left:16px}.workspace-main .order-route li:before{position:absolute;top:0;bottom:0;left:4px;width:2px;background:var(--desk-rule);content:""}.workspace-main .order-route li:first-child:before{top:11px}.workspace-main .order-route li:last-child:before{bottom:calc(100% - 11px)}.workspace-main .order-route li:after{position:absolute;top:7px;left:1px;width:8px;height:8px;box-sizing:border-box;border:2px solid var(--desk-muted);border-radius:50%;background:var(--desk-muted);content:""}.workspace-main .order-route li.later:after,.workspace-main .order-route li.order-route-more:after{background:var(--desk-paper)}.workspace-main .order-route li.current:after{top:5px;left:-1px;width:12px;height:12px;border-color:#8f78d6;background:var(--desk-paper);box-shadow:inset 0 0 0 2px #8f78d6}.workspace-main .order-route li.slip:after{border-color:#c4553d;background:#c4553d}.workspace-main .order-route li>button{display:flex;gap:8px;width:100%;padding:3px 6px;border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;text-align:left}.workspace-main .order-route li>button:hover{background:#f1e6d2}.workspace-main .order-route li:not(:has(>button)){display:flex;gap:8px;padding-block:3px;padding-right:6px}.workspace-main .order-route li:not(:has(>button))>:first-child{margin-left:6px}.workspace-main .order-route-time{flex:none;min-width:42px;color:var(--desk-muted);font-size:11.5px;font-weight:650;font-variant-numeric:tabular-nums}.workspace-main .order-route-words{font-size:12.5px;line-height:1.35}.workspace-main .order-route li.later .order-route-words{color:var(--desk-muted)}.workspace-main .order-route li.current .order-route-words{font-weight:700}.workspace-main .order-route li.current .order-route-time{color:#6b55b3}.workspace-main .order-route li.slip .order-route-words{color:#a8412b}.workspace-main .order-route-more .order-route-words{color:var(--desk-muted);font-style:italic}@container cafe-panel (max-width: 620px){.workspace-main .replay-when{min-width:0}.workspace-main .replay-kinds button{padding:0 6px}}.workspace-main .block-preview{position:absolute;top:12px;left:12px;z-index:20;width:min(300px,calc(100% - 24px));padding:9px 11px;border-radius:14px;background:var(--desk-pill);box-shadow:0 6px 20px #392b241f;color:var(--desk-ink);font-size:12px;line-height:1.4;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.workspace-main .block-preview h3{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 4px;font-size:13px;font-weight:750}.workspace-main .block-preview h3 svg,.workspace-main .block-preview-empty svg{flex:none;color:#3f9a77}.workspace-main .block-preview h3 span{margin-left:auto;color:var(--desk-muted);font-size:11px;font-weight:650}.workspace-main .block-preview ul{display:grid;gap:3px;margin:0;padding:0;list-style:none}.workspace-main .block-preview li{padding-left:10px;border-left:3px solid #3f9a7766}.workspace-main .block-preview li.first{border-left-color:#3f9a77}.workspace-main .block-preview-times{color:var(--desk-muted);font-weight:650;white-space:nowrap}.workspace-main .block-preview li.block-preview-more{border-left-color:transparent;color:var(--desk-muted)}.workspace-main .block-preview-empty{display:flex;gap:6px;margin:0;color:var(--desk-muted)}.workspace-main .service-summary{position:absolute;top:12px;right:12px;z-index:20;display:grid;gap:8px;width:min(300px,calc(100% - 24px));max-height:calc(100% - 120px);padding:9px 11px 10px;overflow:auto;border-radius:14px;background:var(--desk-pill);box-shadow:0 6px 20px #392b241f;color:var(--desk-ink);font-size:12px;line-height:1.4;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.workspace-main .service-summary h3{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:13px;font-weight:750}.workspace-main .service-summary h3 svg{flex:none;color:#4d7aa8}.workspace-main .service-summary h3 span{margin-left:auto;color:var(--desk-muted);font-size:11px;font-weight:650;font-variant-numeric:tabular-nums}.workspace-main .service-summary h4{margin:0 0 2px;color:var(--desk-muted);font-size:10.5px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.workspace-main .service-summary ul{display:grid;margin:0;padding:0;list-style:none}.workspace-main .service-summary li{display:grid;padding:3px 0;border-top:1px solid #a88b632e}.workspace-main .service-summary li:first-child{border-top:0}.workspace-main .service-summary li strong{font-weight:700}.workspace-main .service-summary-empty{margin:0;color:var(--desk-muted)}.workspace-main .service-summary-stopped{margin:0;padding:6px 8px;border-left:3px solid #a9502f;border-radius:6px;background:#f6e3da;color:#6e2f17;font-weight:650}.dialogue{--dialogue-ink: #392b24;--dialogue-muted: #766659;--dialogue-paper: #fffcf4;--dialogue-coffee: #71452f;--dialogue-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--speaker: var(--dialogue-coffee);color:var(--dialogue-ink)}.dialogue-scene{position:fixed;z-index:1000;inset:0;display:grid;align-items:end;padding:0 clamp(20px,4vw,56px) clamp(20px,4dvh,44px);background:linear-gradient(#1d151052,#1d151080,#1d1510c7);cursor:pointer;animation:dialogue-fade .3s ease-out both}.dialogue-stage{--portrait-height: clamp(220px, 42dvh, 460px);position:relative;width:min(1040px,100%);margin:0 auto}.portrait{position:absolute;z-index:0;bottom:calc(100% - var(--portrait-height) * .3);left:clamp(0px,2vw,24px);display:grid;place-items:end center;height:var(--portrait-height);aspect-ratio:3 / 4;pointer-events:none;animation:dialogue-step-in .28s cubic-bezier(.3,1.3,.5,1) both}.portrait img{width:100%;height:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 12px 18px #1d151040);-webkit-user-select:none;user-select:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.portrait-card{display:grid;place-items:center;width:78%;height:86%;border:4px solid #fffcf4;border-radius:48% 48% 18px 18px;color:#fffcf4;box-shadow:0 14px 26px #1d151047;font-family:Georgia,Times New Roman,serif;font-size:clamp(64px,12dvh,128px);font-style:italic;font-weight:700;text-shadow:0 3px 0 #1d151033}.portrait[data-mood=worried] .portrait-card{transform:rotate(-3deg)}.portrait[data-mood=surprised] .portrait-card{transform:translateY(-8px) scale(1.03)}.portrait[data-mood=happy] .portrait-card{transform:rotate(2deg)}.dialogue-box{position:relative;z-index:1;display:grid;gap:10px;min-height:clamp(150px,20dvh,190px);margin-bottom:4px;padding:30px clamp(22px,2.6vw,34px) 16px;border:3px solid var(--dialogue-ink);border-radius:20px;background:var(--dialogue-paper);box-shadow:0 6px 0 var(--dialogue-ink),0 22px 40px #1d151055;cursor:default}.dialogue-kicker{position:absolute;top:-34px;right:6px;color:#fffcf4;font-family:var(--dialogue-mono);font-size:11px;font-weight:700;letter-spacing:2px;text-shadow:0 1px 3px #1d151099;text-transform:uppercase}.dialogue-name{position:absolute;top:-18px;left:22px;display:flex;align-items:baseline;padding:4px 15px;border:3px solid var(--dialogue-ink);border-radius:999px;color:#fff;background:var(--speaker);font-size:15px;font-weight:800;letter-spacing:.2px}.dialogue-role{margin-right:5px;font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:400}.dialogue-text{font-size:clamp(17px,2.3dvh,21px);font-weight:600;line-height:1.5}.dialogue-unread{visibility:hidden}.narration .dialogue-text{color:var(--dialogue-muted);font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:400}.robot-voice .dialogue-text{font-family:var(--dialogue-mono);font-size:clamp(16px,2.1dvh,19px);font-weight:700;letter-spacing:.6px;text-transform:uppercase}.dialogue-sfx{color:var(--dialogue-muted);font-style:italic;text-transform:none}.dialogue .dialogue-block{display:inline-flex;align-items:center;gap:5px;margin:0 1px;padding:1px 8px 1px 6px;font:700 .8em/1.5 ui-monospace,monospace;font-style:normal;letter-spacing:0;text-transform:none;vertical-align:.08em;white-space:nowrap;cursor:inherit}.dialogue .dialogue-block.command-tile:hover{transform:none}.dialogue-controls{display:flex;align-items:center;justify-content:flex-end;gap:14px;align-self:end}.dialogue-count{margin-right:auto;color:var(--dialogue-muted);font-family:var(--dialogue-mono);font-size:11px;letter-spacing:1.4px}.dialogue button.dialogue-back,.dialogue button.dialogue-skip{display:inline-flex;align-items:center;gap:6px;padding:6px 2px;border:0;border-bottom:2px dashed #392b2440;border-radius:0;color:var(--dialogue-muted);background:none;font-size:13px;font-weight:700;cursor:pointer}.dialogue button.dialogue-back:hover,.dialogue button.dialogue-skip:hover{border-color:var(--dialogue-ink);color:var(--dialogue-ink)}.dialogue button.dialogue-next{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:0;border-radius:12px;color:#fff;background:var(--dialogue-coffee);box-shadow:0 3px #4e3023;font-size:14px;font-weight:800;cursor:pointer;transition:transform .12s}.dialogue button.dialogue-next:hover{background:#593623;transform:translateY(-1px)}.dialogue button.dialogue-next:active{box-shadow:0 1px #4e3023;transform:translateY(2px)}.dialogue button:focus-visible{outline:2px solid var(--dialogue-ink);outline-offset:3px}.dialogue-aside{position:absolute;z-index:6;right:14px;bottom:26px;left:14px;animation:dialogue-rise .25s ease-out both}.dialogue-aside .dialogue-stage{width:min(760px,100%);cursor:pointer;--portrait-height: clamp(130px, 22dvh, 200px)}.dialogue-aside .portrait-card{border-width:3px;font-size:clamp(40px,7dvh,64px)}.dialogue-aside .dialogue-box{gap:8px;min-height:0;padding:24px 20px 12px;border-radius:16px;box-shadow:0 4px 0 var(--dialogue-ink),0 8px 16px #1d151040}.dialogue-aside .dialogue-text{font-size:16px}.dialogue-aside .robot-voice .dialogue-text{font-size:15px}.dialogue-aside button.dialogue-next{height:34px;font-size:13px}.cutscene{--photo-width: min(62vw, calc((100dvh - 330px) * 16 / 9));--photo-border: clamp(6px, .8vw, 12px);position:fixed;z-index:999;inset:0;overflow:hidden;background:radial-gradient(ellipse at 50% 32%,#241b16,#0b0908 72%)}.cutscene-art{position:absolute;inset:0}.cutscene-still{--tilt: -1.8deg;--nudge: -1.2%, .6%;position:absolute;top:5dvh;left:50%;width:var(--photo-width);margin:0;padding:var(--photo-border);border-radius:3px;background:#f4eee3;box-shadow:0 2px 3px #00000080,0 20px 44px #000000b3;opacity:0;transform:translate(-50%) translate(var(--nudge)) rotate(calc(var(--tilt) + 5deg)) scale(1.18);transition:opacity .25s ease-out,transform .6s cubic-bezier(.2,.9,.3,1),filter .6s ease-out}.cutscene-still:nth-child(5n+2){--tilt: 1.4deg;--nudge: 1.4%, -.4%}.cutscene-still:nth-child(5n+3){--tilt: -.7deg;--nudge: -.4%, 1%}.cutscene-still:nth-child(5n+4){--tilt: 2.3deg;--nudge: 1.8%, .2%}.cutscene-still:nth-child(5n+5){--tilt: -2.4deg;--nudge: -1.8%, -.6%}.cutscene-still.shown,.cutscene-still.under{opacity:1;transform:translate(-50%) translate(var(--nudge)) rotate(var(--tilt))}.cutscene-still.under{filter:brightness(.5)}.cutscene-still img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;-webkit-user-select:none;user-select:none}.cutscene .dialogue-scene{background:linear-gradient(transparent 45%,#0b09088c);animation:none}.cutscene-placeholder{display:grid;align-content:center;justify-items:center;gap:10px;aspect-ratio:16 / 9;overflow:hidden;padding:4% 10%;color:#f3e6cf;background:radial-gradient(ellipse at 50% 30%,#6d4a60,#2e2029 70%);font-family:Georgia,Times New Roman,serif;font-size:clamp(13px,1.8dvh,18px);font-style:italic;line-height:1.45;text-align:center}.cutscene-placeholder span{color:#f3e6cf99;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px;font-style:normal;letter-spacing:2px;text-transform:uppercase}.cutscene.still .cutscene-still{transition:none}@keyframes dialogue-fade{0%{opacity:0}}@keyframes dialogue-rise{0%{opacity:0;transform:translateY(14px)}}@keyframes dialogue-step-in{0%{opacity:0;transform:translate(-18px)}}[data-motion=reduced] .dialogue,[data-motion=reduced] .dialogue .portrait{animation:none}
