/* Adventure editor is scoped so existing puzzle and Scratch workspaces keep their layout. */
.adventure-workspace{--adv-accent:#b47c42;--adv-ink:#233e3b;--adv-soft:#f5f3eb;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,1fr);gap:22px;align-items:start;color:var(--adv-ink);width:100%;font-family:inherit;isolation:isolate}.adventure-workspace *{box-sizing:border-box}.adventure-workspace button,.adventure-workspace select,.adventure-workspace input{font:inherit}.adventure-workspace button{cursor:pointer}.adventure-workspace button:focus-visible,.adventure-workspace select:focus-visible,.adventure-workspace input:focus-visible{outline:3px solid #1c668d;outline-offset:3px}.adventure-workspace button:disabled{opacity:.42;cursor:default}.adv-stage,.adv-editor{min-width:0;border:1px solid #dcded3;border-radius:21px;background:#fffef8;overflow:hidden;box-shadow:0 8px 30px #233e3b08}.adv-stage{padding:24px}.adv-stage-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.adv-eyebrow{display:block;font-size:.56rem;font-weight:750;letter-spacing:.11em;color:#61746a;line-height:1.7}.adv-world-title{font-size:1.7rem!important;line-height:1.2!important;margin:6px 0 0!important;font-family:Georgia,serif;color:var(--adv-ink)}.adv-scenario-label{display:flex;flex-direction:column;gap:6px;flex-shrink:0;font-size:.65rem;font-weight:650;color:#637568;max-width:44%}.adv-scenario{width:100%;max-width:180px;min-height:38px;padding:7px 25px 7px 10px;border:1px solid #d6ddcf;border-radius:8px;background:#f8f8ef;color:var(--adv-ink);font-size:.72rem!important}.adv-map-wrap{border:7px solid #fffdf3;border-radius:17px;box-shadow:0 0 0 1px #d2d9cb,0 7px 0 #e0e4d7;overflow:hidden;position:relative;background:#e7e8d4}.adv-map{position:relative;width:100%;aspect-ratio:var(--adv-columns)/var(--adv-rows);background-size:cover;background-position:center;overflow:hidden;container-type:inline-size}.adv-cell,.adv-item,.adv-actor{position:absolute;left:calc(var(--x)*100%/var(--adv-columns));top:calc(var(--y)*100%/var(--adv-rows));width:calc(100%/var(--adv-columns));height:calc(100%/var(--adv-rows))}.adv-cell{background:#f9f5e0c7;border:1px solid #e6e0c076;display:grid;place-items:center}.adv-cell:nth-child(2n){background:#f0eddbb0}.adv-wall{background:repeating-linear-gradient(135deg,#9b937d 0,#9b937d 5px,#b7b09c 5px,#b7b09c 10px)!important;border:4px solid #ded6bf;border-radius:13%;box-shadow:inset 0 -7px 0 #736e5d75;color:#e9e5d8;font-size:2rem}.adv-wall>span{opacity:.8;line-height:1}.adv-dock{background:#f4d990d9!important;box-shadow:inset 0 0 0 3px #b77c2d}.adv-dock-mark{display:block;position:absolute;right:9%;bottom:5%;font-size:clamp(.8rem,4cqw,1.8rem);font-weight:900;color:#95651c}.adv-goal{box-shadow:inset 0 0 0 3px #366858!important}.adv-goal-mark{position:absolute;left:8%;top:5%;color:#366858;font-size:clamp(.9rem,4cqw,1.6rem);line-height:1}.adv-item{display:grid;place-items:center;z-index:2;pointer-events:none;color:#f6f0d0;font-size:clamp(1rem,7cqw,2.7rem);text-shadow:0 2px 0 #865921;filter:drop-shadow(0 3px 2px #47372145);transform:scale(.7);border-radius:20%;background:var(--adv-accent);box-shadow:inset 0 0 0 3px #ffffff50;transition:transform .3s,opacity .3s}.adv-item[hidden]{display:none}.adv-item.is-delivered,.adv-item.is-activated{font-size:clamp(.7rem,5cqw,1.7rem);background:#366858;color:white;text-shadow:none;transform:scale(.55);box-shadow:0 0 0 3px #f6f5e0}.adv-item.is-delivered{align-items:end;justify-items:end;background:transparent;color:#244d3c;box-shadow:none;transform:scale(.8);filter:none}.adv-actor{z-index:4;transition:left .38s ease-in-out,top .38s ease-in-out;pointer-events:none;filter:drop-shadow(0 4px 3px #253e3245)}.adv-actor-image{width:100%;height:100%;display:block;object-fit:contain;padding:7%;transform:rotate(var(--dir));transition:transform .3s ease-in-out}.adv-actor:after{content:'➤';position:absolute;right:1%;top:36%;font-size:clamp(.6rem,3cqw,1.25rem);color:#fff;line-height:1;text-shadow:0 0 3px #233e3b;transform:rotate(var(--dir));transform-origin:-190% 50%}.adv-cargo{position:absolute;bottom:0;right:0;border-radius:7px;background:#a96e31;color:#fff8e8;border:2px solid #fff8e8;min-width:37%;height:37%;display:grid;place-items:center;font-size:clamp(.7rem,3cqw,1.25rem);box-shadow:0 2px 5px #253e3255}.adv-cargo[hidden]{display:none}.adv-legend{display:flex;flex-wrap:wrap;gap:12px;margin:21px 0 16px;font-size:.63rem;color:#607062;line-height:1.4}.adv-legend>span{display:flex;align-items:center;gap:5px}.adv-legend i{display:inline-block;width:11px;height:11px;flex:none;border-radius:3px;background:var(--adv-accent)}.adv-legend .adv-legend-actor{border-radius:50%;background:#335c57}.adv-legend .adv-legend-wall{background:#a69c82}.adv-legend .adv-legend-dock{background:#e5c772;border:1px solid #b77c2d}.adv-legend .adv-legend-goal{background:#eef1e7;border:2px solid #366858}.adv-metrics{display:flex;flex-wrap:wrap;justify-content:space-between;gap:7px;padding:11px 0;border-top:1px solid #e3e6db;border-bottom:1px solid #e3e6db;font-size:.68rem;font-weight:650;font-variant-numeric:tabular-nums}.adv-metrics [data-over=true]{color:#ab4139}.adv-run-controls{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.adv-button{border:1px solid #d2dccf;border-radius:9px;padding:10px 12px;min-height:42px;background:#f4f6eb;color:#31534a;font-size:.73rem!important;font-weight:700!important;white-space:normal;line-height:1.4}.adv-button:hover:not(:disabled){background:#e5edda}.adv-button-primary{background:#335b48;border-color:#335b48;color:#fffbed}.adv-button-primary:hover:not(:disabled){background:#234d3b}.adv-feedback{margin-top:16px;border-radius:10px;background:#f1f4e9;padding:13px 14px;font-size:.78rem;line-height:1.65;min-height:55px;color:#4a6659;overflow-wrap:anywhere}.adv-feedback[data-status=error]{background:#fbefdf;color:#80592e}.adv-feedback[data-status=success]{background:#dfeddb;color:#315b43}.adv-scenario-results{display:grid;gap:8px;margin-top:10px}.adv-scenario-result{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #e4e8dc;padding:8px 1px;font-size:.67rem;line-height:1.5}.adv-scenario-result>span{text-align:right;color:#68766b}.adv-scenario-result[data-scenario-result=error]{color:#956333}.adv-editor-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:1rem;font-weight:750;padding:20px 20px 8px}.adv-text-button{background:none;border:0;padding:7px 0;color:#6a7667;font-size:.68rem!important;text-decoration:underline;text-underline-offset:3px}.adv-draft{font-size:.6rem;color:#6d796d;margin:0 20px 15px!important;line-height:1.5}.adv-palette{display:flex;flex-wrap:wrap;gap:7px;background:#edf0e5;border-top:1px solid #dfe5d5;border-bottom:1px solid #dfe5d5;padding:15px 18px}.adv-palette-block{border:1px solid #c5d5db;background:#dfebee;border-radius:7px;padding:9px 11px;font-weight:700;font-size:.71rem!important;color:#315466;min-height:38px;line-height:1.35;text-align:left}.adv-op-repeat,.adv-op-if,.adv-op-until{--block-color:#f5e4be;--block-line:#dec98e}.adv-palette-block.adv-op-repeat,.adv-palette-block.adv-op-if,.adv-palette-block.adv-op-until{background:#f4e3bd;border-color:#ddc98d;color:#75551c}.adv-palette-block.adv-op-pick,.adv-palette-block.adv-op-drop,.adv-palette-block.adv-op-activate{background:#e3e9d4;border-color:#cad8b4;color:#526b37}.adv-palette-block:hover{filter:brightness(.96);transform:translateY(-1px)}.adv-editor-hint{margin:12px 20px!important;font-size:.64rem;color:#697767;line-height:1.65}.adv-program{padding:0 16px 16px;min-height:200px;max-height:610px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.adv-container{padding:8px;border:1px dashed #d4dbcd;border-radius:9px;min-width:0;background:#fffef9}.adv-container.is-selected{border-color:#6f947a;background:#f7faee}.adv-insertion{display:block;text-align:left;background:none;color:#73806b;border:0;padding:6px 3px;font-size:.62rem!important;line-height:1.5;min-height:30px;white-space:normal;font-weight:650}.is-selected>.adv-insertion{color:#335f45}.adv-empty{font-size:.7rem;color:#87917d;text-align:center;padding:13px 3px;line-height:1.6;margin:0!important}.adv-block{margin-top:8px;border:1px solid var(--block-line,#bdd1d8);border-radius:8px;background:var(--block-color,#dfebef);overflow:hidden;box-shadow:0 2px 0 #30475415;transition:box-shadow .15s}.adv-block.adv-op-pick,.adv-block.adv-op-drop,.adv-block.adv-op-activate{--block-color:#e3ead7;--block-line:#c6d6b1}.adv-block.is-executing{box-shadow:0 0 0 3px #c38c33,0 3px 8px #c38c3338}.adv-block-head{min-height:43px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 7px;min-width:0}.adv-block-label{font-size:.72rem;font-weight:750;line-height:1.5;overflow-wrap:anywhere}.adv-block-tools{display:flex;gap:2px;margin-left:auto}.adv-block-tool{border:0;border-radius:5px;background:#ffffff75;color:#526b62;padding:3px;min-width:26px;min-height:29px;font-size:.86rem!important;line-height:1}.adv-block-tool:hover:not(:disabled){background:#fff}.adv-block>.adv-container{margin:0 6px 7px;border-radius:5px;padding:5px}.adv-repeat{width:45px;min-height:29px;max-width:100%;border:1px solid #ccb879;border-radius:6px;background:#fffaf0;color:#6e5525;padding:4px;font-size:.73rem!important}.adv-times{font-size:.64rem}.adv-condition{border:1px solid #d7bf82;border-radius:6px;background:#fffaf0;max-width:100%;min-width:0;padding:6px;font-size:.68rem!important;color:#6e5525}.adv-check{width:calc(100% - 36px);margin:0 18px 19px;min-height:45px}.adventure-workspace[data-world=space] .adv-cell{background:#bac9e4b8;border-color:#f0f3ff42}.adventure-workspace[data-world=space] .adv-cell:nth-child(2n){background:#94a8c9b5}.adventure-workspace[data-world=space] .adv-wall{background:radial-gradient(circle at 30% 30%,#7e8aab,#475375)!important;border-color:#9da9c6;border-radius:35%}.adventure-workspace[data-world=ocean] .adv-cell{background:#62c2d39c;border-color:#d6f4ef40}.adventure-workspace[data-world=ocean] .adv-cell:nth-child(2n){background:#75d0dca8}.adventure-workspace[data-world=ocean] .adv-wall{background:radial-gradient(ellipse at bottom,#5e798c,#859a97)!important;border-color:#92b1a7;border-radius:40% 40% 10% 10%}.adventure-workspace[data-world=garden] .adv-cell{background:#c5da9cba;border-color:#799f7130}.adventure-workspace[data-world=garden] .adv-cell:nth-child(2n){background:#acc988a6}.adventure-workspace[data-world=garden] .adv-wall{background:radial-gradient(circle,#59874b,#386c41)!important;border-color:#83a76d;border-radius:35%}.adventure-workspace[data-world=city] .adv-cell{background:#d9dfd4c9;border-color:#f4eee560}.adventure-workspace[data-world=city] .adv-cell:nth-child(2n){background:#b9c8bdcc}.adventure-workspace[data-world=city] .adv-wall{background:linear-gradient(#c98460 0 15%,#e5c39b 15% 80%,#ba8a62 80%)!important;border-color:#c4b8a1;border-radius:10% 10% 0 0}.adventure-workspace[data-world=museum] .adv-cell{background:#e8ddc1ce;border-color:#a68e5540}.adventure-workspace[data-world=museum] .adv-cell:nth-child(2n){background:#f0e5c8c2}.adventure-workspace[data-world=museum] .adv-wall{background:repeating-linear-gradient(90deg,#aa9c7d 0,#aa9c7d 10%,#c8bca0 10%,#c8bca0 20%)!important;border-color:#daceb0;border-radius:5%}.adventure-workspace[data-world=volcano] .adv-cell{background:#b7a49bbd;border-color:#ffe7bd40}.adventure-workspace[data-world=volcano] .adv-cell:nth-child(2n){background:#cdb29daa}.adventure-workspace[data-world=volcano] .adv-wall{background:linear-gradient(25deg,#9b4433,#e78a39 35%,#efbd5c 48%,#ad4935 64%)!important;border-color:#ba6e45;border-radius:20%}.adventure-workspace[data-world=rail] .adv-cell{background:repeating-linear-gradient(0deg,#c7b58bba 0,#c7b58bba 16%,#9a90779e 16%,#9a90779e 20%);border-color:#e6dcc280}.adventure-workspace[data-world=rail] .adv-cell:before{content:'';position:absolute;inset:28% 0;border-top:2px solid #857b68;border-bottom:2px solid #857b68;opacity:.65}.adventure-workspace[data-world=rail] .adv-wall{background:#a08b6c!important;border-color:#d1c29e;border-radius:10%}
@media(min-width:1500px){.adv-program{max-height:720px}.adv-stage{padding:28px}.adv-world-title{font-size:1.9rem!important}}
@media(max-width:1050px){.adventure-workspace{grid-template-columns:minmax(0,1fr);max-width:800px;margin:0 auto;gap:19px}.adv-program{max-height:540px}.adv-stage-heading{margin-bottom:17px}.adv-world-title{font-size:1.55rem!important}.adv-map-wrap{max-width:620px;margin:auto}.adv-stage{padding:21px}}
@media(max-width:480px){.adventure-workspace{gap:15px}.adv-stage{padding:15px}.adv-stage-heading{gap:8px}.adv-world-title{font-size:1.25rem!important}.adv-eyebrow{font-size:.44rem;letter-spacing:.04em}.adv-scenario-label{font-size:.58rem;max-width:44%}.adv-scenario{min-height:35px;font-size:.62rem!important;padding:5px 17px 5px 7px}.adv-map-wrap{border-width:4px;border-radius:11px}.adv-wall{border-width:2px;font-size:1.2rem}.adv-legend{gap:8px 11px;font-size:.58rem;margin:17px 0 13px}.adv-metrics{font-size:.61rem;gap:8px}.adv-run-controls{gap:6px}.adv-button{padding:9px 10px;font-size:.67rem!important;flex:1 1 auto}.adv-feedback{font-size:.73rem;padding:11px}.adv-editor-heading{padding:16px 15px 7px;font-size:.92rem}.adv-draft{margin-left:15px!important}.adv-palette{padding:13px;gap:6px}.adv-palette-block{font-size:.66rem!important;min-height:40px;padding:8px}.adv-editor-hint{margin:10px 15px!important;font-size:.61rem}.adv-program{padding:0 10px 12px;max-height:none}.adv-container{padding:5px}.adv-block>.adv-container{margin:0 4px 6px;padding:3px}.adv-block-head{gap:4px;padding:5px;min-height:42px}.adv-block-label{font-size:.67rem}.adv-block-tool{min-width:25px;min-height:32px}.adv-condition{font-size:.62rem!important;max-width:100%;padding:5px}.adv-times{font-size:.57rem}.adv-insertion{font-size:.58rem!important}.adv-check{width:calc(100% - 26px);margin:0 13px 15px}.adv-scenario-result{font-size:.63rem;align-items:flex-start;gap:8px;flex-direction:column}.adv-scenario-result>span{text-align:left}}
@media(prefers-reduced-motion:reduce){.adventure-workspace *{transition:none!important;animation:none!important;scroll-behavior:auto!important}.adv-palette-block:hover{transform:none}}

.adv-rules{font-size:.72rem;line-height:1.55;color:#61746a;border-bottom:1px solid #dcded3;padding:0 0 12px;margin:-4px 0 14px}.adv-rules summary{cursor:pointer;font-weight:650}.adv-rules p{margin:8px 0 0;max-width:52ch}
