/* Robot Rescue: tactile exploration first, visible code second. */
#spark-inventor .iv-mission-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
#spark-inventor .iv-mission-badge{font-size:10px;font-weight:900;letter-spacing:1px;color:#0c2637;background:#ffd36b;border-radius:999px;padding:7px 10px}
#spark-inventor .iv-play-modes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
#spark-inventor .iv-play-modes button{font-weight:850;background:#132b40;border-color:#3d5e75}
#spark-inventor .iv-play-modes button[aria-pressed=true]{background:linear-gradient(135deg,#b7fa8b,#68e6ca);color:#102b23;border:0;box-shadow:0 8px 26px #63e5c633}
#spark-inventor .iv-play-modes em{display:inline-grid;place-items:center;min-width:23px;height:23px;margin-left:5px;background:#10243322;border-radius:999px;font-style:normal}
#spark-inventor .iv-quest{display:grid;gap:7px;margin:12px 0 16px}
#spark-inventor .iv-quest-step{display:flex;align-items:center;gap:9px;color:#8fa8ba;font-size:12px;font-weight:750}
#spark-inventor .iv-quest-step b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#20384b;color:#bdd0dc}
#spark-inventor .iv-quest-step.active{color:#ffd879}#spark-inventor .iv-quest-step.active b{background:#ffd879;color:#2c260d}
#spark-inventor .iv-quest-step.done{color:#a5f48b}#spark-inventor .iv-quest-step.done b{background:#a5f48b;color:#153524}
#spark-inventor .iv-drive-zone{display:grid;grid-template-columns:158px 1fr;gap:12px;align-items:center;padding:14px;border:1px solid #365b72;border-radius:22px;background:radial-gradient(circle at 25% 35%,#24485b,#102638 68%);box-shadow:inset 0 1px #ffffff0d}
#spark-inventor .iv-dpad{display:grid;grid-template-columns:repeat(3,48px);grid-template-rows:repeat(2,48px);gap:5px;justify-content:center}
#spark-inventor .iv-dpad button{min-height:48px;padding:0;font-size:25px;font-weight:950;border:0;background:linear-gradient(145deg,#3e6680,#213d52);box-shadow:0 5px 0 #091927,0 9px 18px #0005;transition:transform .12s,box-shadow .12s}
#spark-inventor .iv-dpad button:active{transform:translateY(4px);box-shadow:0 1px 0 #091927,0 3px 8px #0005}
#spark-inventor .iv-dpad [data-drive=left]{grid-column:1;grid-row:2}#spark-inventor .iv-dpad [data-drive=forward]{grid-column:2;grid-row:1;background:linear-gradient(145deg,#bdfa8e,#65dca9);color:#112d24}#spark-inventor .iv-dpad [data-drive=right]{grid-column:3;grid-row:2}#spark-inventor .iv-dpad [data-drive=back]{grid-column:2;grid-row:2}
#spark-inventor .iv-drive-actions{display:grid;gap:7px}#spark-inventor .iv-drive-actions button{text-align:left;font-size:12px;font-weight:800}#spark-inventor .iv-drive-actions [data-drive=pickup]{border-color:#ffc85c;color:#ffe4a1}#spark-inventor .iv-drive-actions [data-drive=deliver]{border-color:#70c8ff;color:#b7e6ff}
#spark-inventor .iv-route-label{display:block;margin:15px 0 7px;color:#93aabd;font-size:10px;font-weight:900;letter-spacing:1px}
#spark-inventor .iv-route,#spark-inventor .iv-program{display:flex;gap:6px;overflow-x:auto;flex-wrap:nowrap;min-height:62px;padding:9px;border:1px dashed #4d6c81;border-radius:15px;background:#0b2031;scrollbar-width:thin}
#spark-inventor .iv-route>span,#spark-inventor .iv-program>span{align-self:center;color:#7791a3;font-size:12px;padding:0 6px}
#spark-inventor .iv-route button,#spark-inventor .iv-program button{display:grid;flex:0 0 58px;place-items:center;gap:2px;padding:5px;min-height:48px;border-color:#42647a;background:#19364a}
#spark-inventor .iv-route button b,#spark-inventor .iv-program button b{font-size:20px;line-height:1}#spark-inventor .iv-route button span,#spark-inventor .iv-program button span{font-size:7px;line-height:1.1;color:#bed0db}
#spark-inventor .iv-tray button{display:flex;align-items:center;gap:9px;text-align:left}#spark-inventor .iv-tray button b{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#31516a;color:#c9ff9e;font-size:18px}#spark-inventor .iv-tray button span{font-size:11px}
#spark-inventor .iv-program-actions{display:flex;justify-content:space-between;gap:8px;margin-top:9px}#spark-inventor .iv-program-actions button{flex:1;font-size:12px}
@media(max-width:760px){#spark-inventor .iv-drive-zone{grid-template-columns:150px 1fr;padding:11px}#spark-inventor .iv-dpad{grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px)}#spark-inventor .iv-dpad button{min-height:44px}#spark-inventor .iv-layout{padding-bottom:max(12px,env(safe-area-inset-bottom))}}

/* Inventor Island is a game map first, a menu second. */
.inventor-entry{position:relative;overflow:hidden;margin:4px 0 24px;padding:28px;border:1px solid #8ff4dc66;border-radius:32px;background:radial-gradient(circle at 82% 8%,#80f0ff55,transparent 30%),linear-gradient(155deg,#17375b 0%,#174e62 48%,#233b70 100%);box-shadow:0 24px 55px #06132170,inset 0 1px #ffffff30;color:#fff;isolation:isolate}
.inventor-entry:after{content:"";position:absolute;z-index:-2;left:-8%;right:-8%;bottom:-70px;height:180px;border-radius:50% 50% 0 0;background:linear-gradient(#62c56c,#236c56);box-shadow:inset 0 10px #9df17c55}
.iv-world-sky,.iv-world-sky i,.iv-world-sky span{position:absolute;pointer-events:none}.iv-world-sky{inset:0;z-index:-1}.iv-world-sky i{width:95px;height:28px;border-radius:50%;background:#fff3;filter:blur(1px)}.iv-world-sky i:nth-child(1){left:8%;top:25%}.iv-world-sky i:nth-child(2){right:5%;top:18%;transform:scale(.65)}.iv-world-sky i:nth-child(3){left:44%;top:9%;transform:scale(.45)}.iv-world-sky span{color:#c8fff3;animation:ivTwinkle 1.8s ease-in-out infinite alternate}.iv-world-sky span:nth-of-type(1){right:29%;top:15%}.iv-world-sky span:nth-of-type(2){left:34%;top:32%;animation-delay:.6s}@keyframes ivTwinkle{to{transform:scale(1.6) rotate(25deg);opacity:.45}}
.iv-entry-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.inventor-entry .iv-entry-head small{display:block;color:#b7ff8d;font-size:11px;font-weight:950;letter-spacing:1.7px}.inventor-entry h1{margin:7px 0 0;font-size:clamp(34px,5.6vw,64px);line-height:.92;letter-spacing:-2.8px}.inventor-entry h1 em{color:#ffe878;font-style:normal;text-shadow:0 4px 24px #ffc40055}.iv-entry-lead{max-width:540px;margin:16px 0 22px;color:#dff8ff;font-size:15px;font-weight:650}.iv-player-orb{display:grid;place-items:center;flex:0 0 72px;width:72px;height:72px;border:4px solid #ffe680;border-radius:50%;background:linear-gradient(145deg,#ff8d5c,#ed3f74);box-shadow:0 8px 0 #762954,0 12px 28px #001c3a88}.iv-player-orb b{margin-top:9px;font-size:27px;line-height:1}.iv-player-orb span{align-self:start;font-size:8px;font-weight:950;letter-spacing:1px}
.iv-adventure-map{display:grid;grid-template-columns:1fr 1fr;gap:14px}.iv-world-card{position:relative;display:grid!important;grid-template-columns:40% 1fr;min-height:180px!important;padding:0!important;overflow:hidden;border:2px solid #ffffff66!important;border-radius:24px!important;text-align:left!important;box-shadow:0 12px 0 #061c2f66,0 20px 30px #00142555;transition:transform .18s,filter .18s!important}.iv-world-card:hover{transform:translateY(-5px) rotate(-.4deg);filter:saturate(1.2)}.iv-world-card:active{transform:translateY(5px);box-shadow:0 5px 0 #061c2f66}.iv-world-card.sky-lab{background:linear-gradient(135deg,#448de7,#7356dc)!important}.iv-world-card.robot-bay{background:linear-gradient(135deg,#f06367,#f29d38)!important}.iv-world-art{position:relative;display:grid;place-items:center;background:radial-gradient(circle,#ffffff30,transparent 65%)}.iv-world-art b{z-index:2;font-size:67px;filter:drop-shadow(0 12px 8px #12204955);animation:ivFloat 2.4s ease-in-out infinite}@keyframes ivFloat{50%{transform:translateY(-8px) rotate(3deg)}}.iv-world-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:20px 18px 20px 4px}.iv-world-copy small{color:#fff7a4!important;font-size:10px!important;font-weight:950;letter-spacing:1.4px}.iv-world-copy strong{margin:4px 0 7px;color:#fff;font-size:21px;line-height:1.05}.iv-world-copy em{color:#f5fbff;font-size:11px;font-style:normal;line-height:1.35}.iv-world-copy>span{margin-top:15px;padding:8px 11px;border-radius:10px;background:#fff;color:#17304b;font-size:10px;font-weight:950;box-shadow:0 4px 0 #11284055}.iv-new-tag{position:absolute;z-index:3;right:10px;top:10px;padding:5px 8px;border-radius:999px;background:#d7ff85;color:#244229;font-size:8px;font-weight:950;letter-spacing:1px;box-shadow:0 3px 0 #355c36}.iv-cloud{position:absolute;width:72px;height:24px;border-radius:99px;background:#e7fbff99}.iv-cloud:before,.iv-cloud:after{content:"";position:absolute;border-radius:50%;background:inherit}.iv-cloud:before{width:30px;height:30px;left:13px;top:-13px}.iv-cloud:after{width:41px;height:41px;right:8px;top:-21px}.iv-cloud.c1{left:0;bottom:25px}.iv-cloud.c2{right:-20px;top:32px;transform:scale(.55)}.iv-energy{position:absolute;color:#ffe96e;font-style:normal;font-size:20px;filter:drop-shadow(0 0 8px #fff26f)}.iv-energy.e1{left:16%;top:20%}.iv-energy.e2{right:7%;bottom:20%;animation-delay:.8s}.iv-entry-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:22px}.iv-entry-meta span{padding:7px 11px;border:1px solid #ffffff2b;border-radius:999px;background:#081b3355;color:#e6fcff;font-size:10px;font-weight:800;backdrop-filter:blur(8px)}
@media(max-width:700px){.inventor-entry{padding:20px 14px;border-radius:24px}.iv-player-orb{width:58px;height:58px;flex-basis:58px}.iv-player-orb b{font-size:21px}.iv-adventure-map{grid-template-columns:1fr}.iv-world-card{min-height:145px!important;grid-template-columns:35% 1fr}.iv-world-art b{font-size:53px}.iv-world-copy strong{font-size:19px}.iv-entry-meta{justify-content:flex-start}}

/* Thumb-first arcade controls and an expressive in-world guide. */
#spark-inventor .iv-scene{background:radial-gradient(circle at 70% 15%,#eaffb6 0 4%,transparent 28%),linear-gradient(#72cbea 0 56%,#51a87b 57% 100%);box-shadow:inset 0 0 70px #17465c38,0 18px 45px #00111f55}
#spark-inventor .iv-guide{position:absolute;z-index:6;right:12px;top:38px;display:flex;align-items:center;gap:7px;pointer-events:none;filter:drop-shadow(0 8px 12px #10243c55)}
#spark-inventor .iv-guide img{width:84px;height:84px;object-fit:contain;object-position:center}
#spark-inventor .iv-guide span{position:relative;max-width:128px;padding:9px 11px;border:2px solid #fff;border-radius:14px;background:#fff;color:#17304b;box-shadow:0 5px 0 #15496355}
#spark-inventor .iv-guide span:after{content:"";position:absolute;left:-9px;top:25px;width:14px;height:14px;background:#fff;transform:rotate(45deg)}
#spark-inventor .iv-guide b,#spark-inventor .iv-guide em{position:relative;z-index:1;display:block}#spark-inventor .iv-guide b{color:#ef6a47;font-size:9px;letter-spacing:1px}#spark-inventor .iv-guide em{font-size:11px;font-style:normal;font-weight:850;line-height:1.15}
#spark-inventor .iv-drive-zone{grid-template-columns:180px 1fr;min-height:196px;padding:10px 12px;background:radial-gradient(circle at 23% 45%,#315f77,#11283b 67%);border:2px solid #52819b;box-shadow:inset 0 2px #ffffff16,0 9px 24px #00131e66}
#spark-inventor .iv-joystick{position:relative;display:grid;grid-template:repeat(3,52px)/repeat(3,52px);place-content:center;width:174px;height:174px;border:3px solid #638aa0;border-radius:50%;background:radial-gradient(circle,#385d73 0 25%,#173448 27% 52%,#0c2233 54%);box-shadow:inset 0 0 0 8px #0a1b2966,0 9px 0 #071a27,0 15px 24px #0006;touch-action:manipulation;user-select:none}
#spark-inventor .iv-joystick:after{content:"";position:absolute;inset:27px;border:1px solid #ffffff16;border-radius:50%}
#spark-inventor .iv-joystick button{position:relative;z-index:2;min-height:48px!important;padding:0!important;border:0!important;background:transparent!important;color:#d7f6ff!important;font-size:20px!important;text-shadow:0 2px 4px #0008;box-shadow:none!important}
#spark-inventor .iv-joystick button:active{transform:scale(.8);color:#c8ff86!important}
#spark-inventor .iv-joystick [data-drive=forward]{grid-area:1/2}#spark-inventor .iv-joystick [data-drive=left]{grid-area:2/1}#spark-inventor .iv-joystick [data-drive=right]{grid-area:2/3}#spark-inventor .iv-joystick [data-drive=back]{grid-area:3/2}
#spark-inventor .iv-joystick i{z-index:3;grid-area:2/2;align-self:center;justify-self:center;width:54px;height:54px;border:5px solid #a9ffd6;border-radius:50%;background:linear-gradient(145deg,#73e7d2,#347f9d);box-shadow:0 5px 0 #173e55,0 7px 15px #0008,inset 0 3px #dffff5}
#spark-inventor .iv-drive-actions{grid-template-columns:1fr 1fr;align-content:center;gap:9px}#spark-inventor .iv-drive-actions button{display:flex;min-height:72px;align-items:center;justify-content:center;gap:7px;text-align:center!important;border-width:2px!important;border-radius:18px!important;box-shadow:0 6px 0 #071824,0 9px 15px #0005}#spark-inventor .iv-drive-actions button:active{transform:translateY(4px);box-shadow:0 2px 0 #071824}#spark-inventor .iv-drive-actions button b{font-size:23px}#spark-inventor .iv-drive-actions button span{font-size:9px;line-height:1.2;font-weight:950;letter-spacing:.6px}#spark-inventor .iv-drive-actions .iv-action-energy{background:linear-gradient(145deg,#ffd760,#e69637);color:#39290b;border-color:#ffeca0!important}#spark-inventor .iv-drive-actions .iv-action-power{background:linear-gradient(145deg,#78dcff,#4d79e7);color:#fff;border-color:#a9ebff!important}#spark-inventor .iv-drive-actions .iv-reset{grid-column:1/-1;min-height:38px;font-size:10px;color:#b5cbd8;background:#19364a}
.iv-bot-art img{z-index:2;width:112%;height:166px;object-fit:contain;filter:drop-shadow(0 12px 8px #12204966);animation:ivFloat 2.4s ease-in-out infinite}
@media(max-width:760px){
 #spark-inventor .iv-layout{display:flex;flex-direction:column;padding:8px;gap:8px}
 #spark-inventor .iv-layout>div{display:contents}
 #spark-inventor .iv-scene{order:1;height:43dvh;min-height:270px;border-radius:20px}
 #spark-inventor .iv-panel{order:2;padding:12px 4px}
 #spark-inventor .iv-bottom{order:3;margin:3px 4px 8px}
 #spark-inventor .iv-notes{order:4;margin:0 4px}
 #spark-inventor .iv-journal{order:5;margin:8px 4px}
 #spark-inventor .iv-panel h1{margin:7px 0;font-size:25px}#spark-inventor .iv-panel>p{margin:7px 0;font-size:12px}
 #spark-inventor .iv-levels{margin:10px 0}#spark-inventor .iv-play-modes{margin:9px 0}#spark-inventor .iv-quest{margin:8px 0 10px}
 #spark-inventor .iv-guide{top:32px;right:5px}#spark-inventor .iv-guide img{width:86px;height:86px}#spark-inventor .iv-guide span{display:none}
 #spark-inventor .iv-drive-zone{grid-template-columns:155px 1fr;gap:5px}
 #spark-inventor .iv-joystick{width:148px;height:148px;grid-template:repeat(3,44px)/repeat(3,44px)}#spark-inventor .iv-joystick i{width:46px;height:46px}
 #spark-inventor .iv-drive-actions button{min-height:62px;padding:5px!important}.iv-bot-art img{height:135px}
}

/* Main doorway into the free-roaming adventure world. */
.iv-enter-world{position:relative;display:flex!important;align-items:flex-end;justify-content:space-between;width:100%;min-height:210px!important;margin:0 0 18px;padding:24px!important;overflow:hidden;border:2px solid #d8ffb5!important;border-radius:25px!important;background:linear-gradient(90deg,#082641d9,#12385866 70%),url('assets/inventor-island-world-v2.png') center 52%/cover!important;color:#fff!important;text-align:left;box-shadow:0 10px 0 #072039,0 18px 35px #00162e77!important}.iv-enter-world:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 28%,#061a36d9)}.iv-enter-world>*{position:relative;z-index:1}.iv-enter-world span{display:grid;gap:4px}.iv-enter-world small{color:#d7ff8c!important;font-size:9px!important;letter-spacing:1.8px}.iv-enter-world strong{font-size:clamp(25px,4vw,40px);line-height:1}.iv-enter-world em{font-size:11px;font-style:normal;color:#e1f5ff}.iv-enter-world>b{padding:13px 17px;border-radius:13px;background:#d2ff86;color:#173421;box-shadow:0 5px 0 #477630;font-size:12px;white-space:nowrap}.iv-enter-world:hover{transform:translateY(-4px);filter:saturate(1.12)}.iv-enter-world:active{transform:translateY(5px);box-shadow:0 4px 0 #072039!important}
@media(max-width:700px){.iv-enter-world{min-height:180px!important;padding:17px!important;align-items:flex-end}.iv-enter-world strong{font-size:25px}.iv-enter-world em{max-width:190px}.iv-enter-world>b{padding:11px}}
