/* Fullscreen illustrated game skin. Shared across menus, play and authoring. */
:root{--cream:#fff0d2;--gold:#f0c581;--muted:#bad0b4;--serif:Georgia,'Times New Roman',serif;--shade:#102d29;--panel:linear-gradient(145deg,#20483fed,#102b28f7);--edge:#d6c18b50}
body{font-family:'Trebuchet MS','Segoe UI',sans-serif;letter-spacing:.12px;background:#102e2b}
.game::after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;box-shadow:inset 0 0 110px #041e2450,inset 0 0 0 1px #f5dfa016}
.vignette{background:linear-gradient(90deg,#07241ded 0%,#0c3025ba 24%,#113e2c35 53%,transparent 75%),linear-gradient(0deg,#092e2a77,transparent 36%)}
.film-grain{opacity:.22;background:radial-gradient(ellipse at 70% 25%,#fff0b60a,transparent 55%);box-shadow:inset 0 0 180px #061f2455}
.game-bar{top:27px;left:39px;right:34px}.corner-brand{font-family:'Trebuchet MS',sans-serif;font-weight:900;letter-spacing:-2px;color:#e9d4a2b0;font-size:22px}.corner-brand>span{margin-left:5px}
.game-bar nav{gap:12px}.connection{border:1px solid #d7dcc82c;border-radius:20px;padding:8px 13px;background:#123c2c66;font-size:10px;backdrop-filter:blur(9px)}.connection i{width:6px;height:6px;box-shadow:0 0 9px #c9df8580;background:#c9df85}.icon-button{width:34px;height:34px;border-color:#dddfbd4d;background:#12372c87;box-shadow:inset 0 1px 0 #f6eed014,0 3px 12px #061d2020;transition:background .16s,transform .16s}.icon-button:hover{transform:translateY(-2px);background:#60836766;border-color:#f1cf8b}.icon-button:active{transform:translateY(0)}
.welcome{top:clamp(65px,13vh,145px);left:7.3%;width:430px;max-width:45%}.game-title{font-family:'Trebuchet MS','Arial Rounded MT Bold',sans-serif;font-weight:900;font-size:clamp(76px,8vw,122px);line-height:.86;letter-spacing:-7px;text-shadow:0 2px 0 #fff9e057,0 6px 0 #344b36,0 9px 1px #092d26,0 13px 28px #001d2990;transform:rotate(-4deg)}.game-title>span{font-family:inherit;font-weight:900;font-style:normal;line-height:.91;letter-spacing:-7px;color:#f1c47a;margin-left:35px;transform:rotate(2deg);text-shadow:0 2px 0 #ffefba88,0 6px 0 #8d7045,0 9px 1px #294832,0 13px 28px #001d2960}
.title-star{left:78%;top:-12px;color:#f9d68b;font-size:27px;text-shadow:0 0 22px #f9d68b66}.title-caption{font-size:8px;letter-spacing:3.1px;color:#e8e4bb;margin:26px 0 24px;padding-left:4px}.welcome-actions{gap:5px;margin-left:-7px}.home-action{min-width:280px;font-size:19px;letter-spacing:.1px;font-weight:500;padding:6px 15px 7px 22px;line-height:1.25;color:#d7e1c6;border-radius:5px;transition:color .16s,transform .16s,background .16s}.home-action>i{font-size:27px;left:4px;top:1px}.home-action:hover,.home-action:focus-visible,.home-action.selected{color:#ffdb9a;background:linear-gradient(90deg,#b5b97a15,transparent);transform:translateX(5px)}
#playBtn{min-width:216px;width:216px;font-size:27px;font-weight:900;color:#274836;background:linear-gradient(#f6d497,#e3af67);border:1px solid #ffdfa5;border-bottom:3px solid #a87945;box-shadow:inset 0 1px 0 #fff0c4,0 5px 0 #0e3028a8,0 9px 25px #051e2466;text-shadow:0 1px 0 #fff0be88;border-radius:8px;padding:10px 23px 12px 27px;margin:1px 0 13px;transform:rotate(-1deg)}#playBtn>i{right:16px;left:auto;top:9px;opacity:1;font-size:32px;color:#48653e}#playBtn:hover,#playBtn:focus-visible{background:linear-gradient(#ffe6b3,#f3c980);transform:translateY(-2px) rotate(-1deg);outline:2px solid #ffe6a777;outline-offset:4px}#playBtn:active{transform:translateY(2px);box-shadow:inset 0 1px 0 #fff0c4,0 2px 0 #0e3028a8}
.home-action.minor{font-size:13px;color:#9eb69e;margin-top:3px}.home-action.minor>i{font-size:20px}.home-input-hint{margin:20px 0 0 6px;font-size:8px;letter-spacing:.15px;color:#bdcdb3}.home-caption{bottom:39px;right:5%;padding-right:17px;border-right:2px solid #efd39d66;text-shadow:0 2px 10px #0c2a23}.home-caption>span{font-size:9px;letter-spacing:2.1px;line-height:1.7}.home-caption>small{font-size:11px;color:#e5d9b5;margin-top:7px}.version-mark{font-size:7px;color:#b7c6ab82;left:39px;bottom:24px}
.playing .vignette{background:linear-gradient(180deg,#092b2b66,transparent 23%,transparent 76%,#0a292c99)}.playing .world-heading{top:20px;left:24px;padding:13px 18px 14px;max-width:42%;border-left:2px solid #e6c78b77;background:linear-gradient(90deg,#12382cc9,#12382c44,transparent);border-radius:0 8px 8px 0}.world-heading h1{font-size:24px;color:#fff0d4;margin:6px 0 4px;text-shadow:0 2px 12px #062d29}.world-heading p{color:#d2dec1b8;font-size:10px;max-width:410px;line-height:1.6}.chapter{font-size:7px;color:#c7d7bca8;letter-spacing:1.8px}.chapter>span{color:#eacf99;font-size:8px}.playing .game-bar{right:26px;top:24px}.playing .game-top-right{right:29px;top:65px;gap:10px;padding:6px 0}.run-clock{font-size:14px;color:#ffe6b4;text-shadow:0 2px 8px #16362a}.controller-state{font-size:6px;color:#d7e3c8a1;letter-spacing:1.5px}
.surface-readout{left:44px;top:134px;padding:5px 0;font-size:10px}.surface-readout>i{border-radius:3px;box-shadow:0 0 0 1px #edf1ce66,0 2px 6px #052d2b55}.surface-readout>span{font-size:9px;color:#e0e7cebd}.playing .game-bottom{left:25px;right:25px;bottom:22px}.hand-status{background:linear-gradient(145deg,#204a3dd9,#0e2e2adf);border:1px solid #bdcba04a;border-radius:11px;box-shadow:inset 0 1px 0 #e4edcb14,0 7px 25px #062a2859;padding:12px 16px;gap:20px}.hand-status p{font-size:7px;color:#b7cab0;letter-spacing:1.2px}.hand-status strong{font-size:11px;font-weight:650;color:#fff1cb}.hand-status kbd{background:#102f27b3;border-color:#d2d8ad4d;color:#ebd6a1;border-radius:5px}.hand-icon{font-size:0;opacity:1;position:relative;display:block;width:20px;height:24px;color:#e9aa8c}.hand-icon.left{color:#8ed1bd}.hand-icon::before{content:'';display:block;width:20px;height:24px;background:currentColor;mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M6 13V6a2 2 0 0 1 4 0v5-8a2 2 0 0 1 4 0v8-6a2 2 0 0 1 4 0v8-4a2 2 0 0 1 4 0v10c0 6-4 9-10 9-4 0-5-2-7-5l-4-7a2 2 0 0 1 3-3l4 4'/%3E%3C/svg%3E") center/contain no-repeat}.hand-status meter{opacity:.6;height:3px!important}.exit-hint{padding-right:5px;text-shadow:0 2px 10px #082b25}.exit-hint>span{font-size:7px;color:#dce4c3ac}.exit-hint strong{font-size:12px;color:#ffedc2}.nameplate{font-size:7px;color:#fff2d0;text-shadow:0 1px 4px #082b29,0 0 8px #082b29}.nameplate::before{box-shadow:0 0 10px #ffd79280;background:#ffe1a4;width:5px;height:5px}
.panel-dialog,.gadget-bench,.editor-panel{background:var(--panel);border-color:var(--edge);box-shadow:inset 0 1px 0 #f3e9bb19,0 22px 70px #061e2859;border-radius:13px}.panel-dialog{padding:32px 35px;border-top:2px solid #dfc89188}.dialog-heading h2{color:#fff0d0;font-size:34px}.eyebrow{color:#d1c295;letter-spacing:2px}.room-intro,.panel-note{line-height:1.8}.menu-action{background:linear-gradient(#f1dda70d,#d7d6a406);border-color:#d7d4a73b;border-radius:7px;font-size:15px}.menu-action:hover,.menu-action:focus-visible{border-color:#e7c783;background:linear-gradient(90deg,#d8bc7530,#d8bc7510)}.button.primary{background:linear-gradient(#f6d59a,#e6b26d);color:#294332;border:1px solid #ffe0aa;border-bottom:2px solid #a88250;box-shadow:inset 0 1px 0 #fff0c999,0 5px 14px #062b2929;border-radius:7px}.button.primary:hover{background:linear-gradient(#ffe7b8,#f4c785)}.button.secondary{border-radius:7px;border-color:#cbcfab55}.close-dialog{background:#0d30285c;border-color:#c9d5ad55;font-size:23px}.code-row input{background:#092a23a3;border-color:#b7c69c44;border-radius:7px;color:#ffebbf;box-shadow:inset 0 2px 5px #031d2626}.host-code-row{background:#213e315c;border-color:#d3c18a48;border-radius:9px}.host-code-row output{color:#ffe3a7;font-weight:900;font-size:29px;letter-spacing:6px}.host-code-row .text-button{color:#e2d2a3}#roomStatus{color:#ecd49f;line-height:1.7}.option-row{border-color:#c4c89c26}.option-row select,select{background:#173c32;border-color:#aabe9455;color:#f0e3bb;border-radius:6px}kbd{box-shadow:inset 0 1px 0 #ecedce0a}
.overlay{background:#082522a8;backdrop-filter:blur(10px)}.overlay-card{background:var(--panel);border:1px solid var(--edge);border-top:2px solid #d9ba7a99;border-radius:15px;box-shadow:0 25px 100px #031d2659;padding:33px 35px}.overlay-card h2{font-size:43px;color:#ffedca}.toast{background:linear-gradient(#284c3cf2,#12372bf5);border-color:#d6c69770;color:#fff0c9;border-radius:9px;box-shadow:0 10px 35px #06272755;font-size:11px}.level-transition{background:radial-gradient(ellipse at center,#2c5441,#112e29 70%)}.level-transition>span{font-family:'Trebuchet MS',sans-serif;font-style:normal;font-weight:900;color:#f3d29a}.level-transition h2{color:#fff1d3}
.gadget-bench{width:430px;padding:17px 19px;border-top:2px solid #d5bf84a3}.bench-label{margin-bottom:13px}.bench-label>strong{font-size:22px;color:#ffecc4}.bench-label>span{font-size:8px;color:#b9c8a5}.gadget-picker button,.station-picker button,.editor-tools button,.editor-materials button{border-radius:7px;box-shadow:inset 0 1px 0 #f5edc108;transition:background .15s,border-color .15s,transform .15s}.gadget-picker button.selected,.station-picker button.selected,.editor-tools button.selected,.editor-materials button.selected{background:linear-gradient(135deg,#e6bd7030,#e6bd7014);border-color:#efd194;color:#ffe4ad}.gadget-picker button:hover,.station-picker button:hover,.editor-tools button:hover,.editor-materials button:hover{transform:translateY(-1px)}.gadget-picker button{font-size:10px;gap:4px}.gadget-bench>p{font-size:11px;color:#d3dfc2;line-height:1.75}.gadget-bench>small{font-size:9px;color:#adc3a2}.gadget-gesture{font-size:12px;color:#ffe0a0}.bench-bottom>span{font-size:9px;color:#c5d5b6}.bench-bottom>button{border-radius:6px;background:#213f326b}.editor-panel{width:320px;padding:19px 18px;border-top:2px solid #d3c18f88}.editor-panel .bench-label strong{font-size:24px}.editor-tools{gap:7px}.editor-tools button{min-height:37px;font-size:11px}.editor-materials button{min-height:35px;font-size:10px}.editor-history button,.editor-files button{border-radius:6px}.editor-panel #editorTest{font-size:13px;min-height:44px;margin-top:13px}.editor-label{font-size:8px;color:#c9c59e;letter-spacing:1.5px}.editor-tools-toggle{background:#143c31e8;border-color:#c8cc9b66;border-radius:6px;color:#eee3bc;font-size:9px;padding:8px 11px}.editor-panel p{font-size:9px;color:#b6c9ac}.editor-radius{font-size:10px}.editor-radius input{accent-color:#e5c281}
.level-dialog::backdrop{background:linear-gradient(90deg,#09271ff5,#0b2c25bd 30%,#14382d29 64%,transparent),linear-gradient(0deg,#0c2927fa,#0b2b24d9 17%,transparent 47%)}.catalog-header h2{font-size:29px;color:#ffedc8}.catalog-header .eyebrow{color:#c8c49b}.catalog-filters button{font-size:11px}.level-card{border-radius:9px 9px 4px 4px;padding:5px 5px 9px;background:#113a2526}.level-card.selected{background:linear-gradient(0deg,#e9c48017,transparent);box-shadow:0 5px 22px #061f2626}.level-thumbnail{border-radius:7px;opacity:.74;border-color:#d1d6b23b;box-shadow:0 5px 16px #092b2633}.level-card.selected .level-thumbnail{border:2px solid #efd399}.level-card-copy>strong{font-weight:650;font-size:11px;color:#dce5c4}.level-card.selected .level-card-copy>strong{color:#ffe0a4}.level-number{border-color:#e1ce9955;background:#183a2ba3;font-size:8px;font-weight:700}.detail-content h3{font-weight:400;text-shadow:0 3px 16px #0b312744}.detail-content>p:not(.detail-tip):not(.launch-context){color:#d4dfc0}.detail-facts{color:#e0cda1}.detail-record{color:#c2d1ac}.catalog-footer{color:#bacbad}.animal-picker button{background:linear-gradient(#315a4359,#153c3077);border-radius:11px;border-color:#bfd1a247;box-shadow:inset 0 1px 0 #eef4cf14,0 6px 17px #052b2822}.animal-picker button.selected{background:linear-gradient(#e4c4782e,#adbe7920);border-color:#f1d18f;box-shadow:0 0 20px #f2cb7020}.animal-picker button>span{font-size:9px}.animal-medallion{width:44px;height:46px;filter:drop-shadow(0 2px 2px #142f2840)}.character-copy h3{color:#fff0d0}.character-copy>p{color:#d9e1c5}.character-dialog::backdrop{background:linear-gradient(90deg,#11362de8,#11362d70 40%,transparent 67%),linear-gradient(0deg,#11332ee8,transparent 40%)}
body[data-biome=sunset]{--panel:linear-gradient(145deg,#353e53ed,#242d41f7);--shade:#292e45;--edge:#d9bba65c}body[data-biome=sunset].playing .world-heading{background:linear-gradient(90deg,#252e4ac9,transparent)}body[data-biome=sunset].playing .vignette{background:linear-gradient(180deg,#28315244,transparent 25%,transparent 74%,#232d4a77)}body[data-biome=sunset] .hand-status{background:linear-gradient(145deg,#394051df,#252d40e6)}
@media(min-width:1500px) and (min-height:850px){.welcome{top:14%;left:8%}.game-title{font-size:132px}.title-caption{margin-top:29px;margin-bottom:30px}.home-action{font-size:22px;padding-top:8px;padding-bottom:8px}.welcome-actions{gap:7px}#playBtn{width:245px;font-size:30px;min-height:61px;margin-bottom:16px}.home-input-hint{margin-top:26px}}
@media(max-height:740px) and (min-width:701px){.welcome{top:65px}.game-title{font-size:85px}.title-caption{font-size:7px;margin:21px 0 19px}.home-action{font-size:17px;padding-top:5px;padding-bottom:5px}.welcome-actions{gap:3px}#playBtn{font-size:24px;min-height:46px;width:200px;min-width:200px;padding-top:8px;padding-bottom:9px;margin-bottom:10px}#playBtn>i{top:6px}.home-input-hint{margin-top:16px}.home-action.minor{font-size:12px}.home-caption{bottom:29px}.gadget-bench{width:410px}.editor-panel{width:310px}}
@media(max-width:900px){.welcome{max-width:53%;left:7%}.game-title{font-size:86px}.home-action{font-size:17px}.gadget-bench{max-width:calc(100% - 32px)}.playing .world-heading{max-width:49%;left:17px;padding-left:13px}.world-heading h1{font-size:21px}.surface-readout{left:31px;top:128px}.animal-medallion{width:39px;height:42px}.home-caption>span{max-width:230px;font-size:7px}.game-bar{right:22px;left:25px}}
@media(max-width:700px){.welcome{left:7%;top:14%;max-width:79%;width:325px}.game-title{font-size:78px;letter-spacing:-5px}.game-title>span{letter-spacing:-5px;margin-left:24px}.title-caption{font-size:6px;letter-spacing:2.3px;margin:21px 0 20px}.home-action{font-size:17px;min-width:250px;padding:5px 14px 6px 22px}.welcome-actions{gap:5px}#playBtn{font-size:25px;min-width:200px;width:200px;min-height:48px;margin-bottom:12px;padding:8px 20px 10px 26px}#playBtn>i{top:6px}.home-action.minor{font-size:12px}.home-input-hint{margin-top:18px;font-size:7px}.title-star{left:76%;font-size:20px}.home-caption{right:6%;bottom:28px;max-width:50%}.home-caption>span{font-size:6px}.home-caption>small{font-size:9px}.version-mark{left:22px;bottom:21px;font-size:6px}.game-bar{top:19px;left:22px;right:18px}.game-bar nav{gap:8px}.connection{font-size:8px;padding:6px 9px}.icon-button{width:29px;height:29px;font-size:16px}.playing .game-bar{top:17px;right:17px}.playing .world-heading{top:14px;left:15px;max-width:52%;padding:9px 11px}.world-heading h1{font-size:18px;margin:5px 0}.chapter{font-size:5px;letter-spacing:1.2px}.chapter>span{font-size:6px}.playing .game-top-right{right:18px;top:53px}.surface-readout{left:27px;top:93px;padding:3px 0;font-size:9px}.surface-readout>span{font-size:8px}.playing .game-bottom{left:15px;right:15px;bottom:16px}.hand-status{padding:10px 12px;gap:12px;border-radius:9px}.hand-status p{font-size:6px}.hand-status strong{font-size:10px}.hand-icon{display:none}.hand-status kbd{font-size:8px}.editor-panel{width:300px;padding:14px}.editor-tools-toggle{right:15px;top:78px}.gadget-bench{width:calc(100% - 28px);padding:12px 14px}.gadget-bench .bench-label>strong{font-size:19px}.gadget-bench>p{font-size:10px}.gadget-picker button{font-size:10px}.panel-dialog{padding:26px 24px;border-radius:12px}.animal-medallion{width:34px;height:38px}.animal-picker button{height:71px}.level-card{width:140px;min-width:140px}.level-card-copy>strong{font-size:10px}.level-detail h3{font-size:35px}.overlay-card{padding:27px}.playing.workshop .world-heading h1{font-size:18px}}
@media(max-height:650px) and (max-width:700px){.welcome{top:52px}.game-title{font-size:59px;letter-spacing:-4px}.game-title>span{letter-spacing:-4px;margin-left:20px}.title-caption{font-size:5px;margin:15px 0 13px;letter-spacing:2px}.welcome-actions{gap:3px}.home-action{font-size:15px;line-height:1.15;padding-top:4px;padding-bottom:4px}.home-action>i{font-size:23px}.home-action.minor{font-size:11px;margin-top:2px}#playBtn{font-size:22px;min-height:42px;min-width:180px;width:180px;margin-bottom:8px;padding:7px 22px 8px}#playBtn>i{font-size:26px;top:5px}.home-input-hint{font-size:6px;margin-top:13px}.home-input-hint kbd{font-size:7px}.home-caption{bottom:20px}.title-star{font-size:16px}.version-mark{bottom:16px}.editor-panel{top:109px}.gadget-bench{padding:10px 12px}.gadget-picker button{font-size:9px}.bench-label{margin-bottom:8px}}
@media(max-height:520px) and (min-width:701px){.welcome{top:47px}.game-title{font-size:60px}.title-caption{margin:14px 0 12px;font-size:6px}.home-action{font-size:15px;padding:3px 15px 4px 22px}.welcome-actions{gap:2px}#playBtn{font-size:21px;min-height:39px;margin-bottom:7px}.home-input-hint{margin-top:9px;font-size:7px}.home-caption{display:none}.home-action.minor{font-size:11px}.game-bar{top:15px}.editor-panel{top:104px}}
.tool-emblem{width:16px;height:19px;vertical-align:middle;margin-right:4px;flex:none}.gadget-picker button>span{display:inline-flex;align-items:center;justify-content:center}.hand-icon[data-gadget=grapples]::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M11 2h3v13c0 6 8 6 8 0h-3c0 2-3 2-3 0V5h3L13 0 7 5h4zM2 18h3v10H2z'/%3E%3C/svg%3E")}.hand-icon[data-gadget=legs]::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M8 0h8v4H8zm0 6 9 4-9 4 9 4-9 4v3h14v3H2v-6l9-4-9-4 9-4-9-4z'/%3E%3C/svg%3E")}.hand-icon[data-gadget=thrusters]::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M9 1h6l4 16H5zM4 18h16v3H4zm3 5 2 5 3-4 3 4 2-5z'/%3E%3C/svg%3E")}
@media(prefers-reduced-motion:reduce){button{transition:none!important}}
