@font-face{font-family:StudioText;src:url('assets/ui-fonts/Inter.ttf');font-weight:100 900}@font-face{font-family:StudioHeading;src:url('assets/ui-fonts/Manrope.ttf');font-weight:200 800}
.studio-shell{--bg:#101b35;--surface:#182642;--line:#344463;--text:#f1f5ff;--muted:#afbed8;--lime:#baff38;--cyan:#95caff;--pink:#ff8acb;font:14px/1.55 StudioText,sans-serif;color-scheme:dark}.studio-shell button,.studio-shell .button{font:650 12px/1.4 StudioText,sans-serif;border-radius:8px;padding:10px 12px;letter-spacing:0;min-height:42px;background:#253652;border-color:#465a7c}.studio-shell button:hover,.studio-shell .button:hover{background:#324867;border-color:#95caff}.studio-shell .primary,.studio-shell .world-actions>button{background:var(--lime);border-color:var(--lime);color:#14213e;font-weight:800}.studio-shell .primary:hover{background:#d3ff80;color:#14213e}.studio-shell button:disabled{opacity:.45}.studio-shell .topbar{min-height:86px;padding:16px 24px;background:#152350;gap:22px}.studio-shell .brand{display:flex;flex-direction:column;gap:4px}.studio-shell .brand img{width:184px;height:auto;display:block}.studio-shell .brand span{font:700 11px/1.4 StudioText,sans-serif;color:#d0ddf6;letter-spacing:1.3px;margin:0}.studio-shell .top-actions{gap:7px;justify-content:flex-end}.studio-shell .top-actions>a{font:650 12px/1.4 StudioText,sans-serif;margin-left:8px;min-height:42px;display:flex;align-items:center}.studio-shell #openObjectCreator,.studio-shell #openAssetStudio{background:#342b57;border-color:#665387;color:#f0d8ff}.studio-shell #saveCloud{border-color:#7b91b2}.studio-shell .studio-route{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 24px;background:#1e3051;border-bottom:1px solid var(--line);font-size:12px}.studio-route p{margin:0!important;font-size:12px!important}.studio-route b{color:#eff4ff}.studio-route nav{display:flex;gap:18px}.studio-route a{min-height:32px;display:flex;align-items:center;text-decoration:none;font-weight:700}.studio-shell .workspace{grid-template-columns:250px minmax(0,1fr) 280px;min-height:calc(100dvh - 140px)}.studio-shell .library,.studio-shell .inspector{padding:20px;max-height:calc(100dvh - 140px);scrollbar-width:thin;scrollbar-color:#53688b transparent}.studio-shell .library{background:#14213a}.studio-shell .inspector{background:#182642}.studio-shell h1,.studio-shell h2{font:800 15px/1.5 StudioHeading,sans-serif;letter-spacing:0;text-transform:none}.studio-shell h2{color:#f1f5ff;margin-top:24px}.studio-shell h3{font:750 16px/1.45 StudioHeading,sans-serif}.studio-shell p{font:400 13px/1.65 StudioText,sans-serif;color:var(--muted)}.studio-shell label{font:600 12px/1.5 StudioText,sans-serif;margin-top:16px;color:#c3cfe4}.studio-shell input,.studio-shell select,.studio-shell textarea{font:400 14px/1.5 StudioText,sans-serif;border-radius:7px;background:#101b30;border-color:#4b5e7f;color:#f1f5ff;min-height:42px;padding:9px 10px}.studio-shell textarea{resize:vertical}.studio-shell input[type=checkbox]{min-height:18px}.studio-shell input[type=color]{padding:5px}.studio-shell input[type=range]{padding:0}.studio-shell .panel-heading{flex-direction:row;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.studio-shell .panel-heading h1{font-size:16px}.studio-shell #objectCount{font-size:11px;border:1px solid var(--line);border-radius:6px;padding:3px 6px;white-space:nowrap}.studio-shell .categories{gap:5px;margin:15px 0}.studio-shell .categories button{font:600 11px/1.4 StudioText,sans-serif;padding:6px 9px;min-height:32px;background:transparent;border:1px solid #344463}.studio-shell .categories button[aria-pressed=true]{background:#baff3820;border-color:#baff3860;color:#d1ff8a}.studio-shell .asset-list{gap:9px}.studio-shell .asset{min-height:105px;padding:12px 6px;background:#1c2e4a;font:550 12px/1.4 StudioText,sans-serif;border-color:#344867;border-radius:10px;gap:8px}.studio-shell .asset:hover{border-color:var(--lime);background:#273d57}.studio-shell .asset svg{height:36px;width:40px}.studio-shell .view-toolbar{height:64px;padding:12px 18px;background:#15233b}.studio-shell #modeLabel{font:750 11px/1.4 StudioText,sans-serif;color:#c9ffa0;background:#baff3814;border:1px solid #baff383a;padding:6px 9px;border-radius:6px}.studio-shell .dimensions{font:400 12px/1.4 StudioText,sans-serif}.studio-shell #viewport{height:calc(100dvh - 300px);min-height:360px}.studio-shell .commandbar{background:#17253e;gap:10px;padding:10px 14px;min-height:57px}.studio-shell .commandbar button{font-size:11px;min-height:36px;padding:8px 12px}.studio-shell .commandbar label{font:550 12px/1.5 StudioText,sans-serif}.studio-shell .commandbar>span{font:400 11px/1.5 StudioText,sans-serif}.studio-shell .statusbar{background:#101a2d;font:400 12px/1.6 StudioText,sans-serif;padding:10px 15px;min-height:40px}.studio-shell .statusbar a{font-size:12px;font-weight:700}.studio-shell .tabs{margin:0 0 22px;padding:4px;border:1px solid var(--line);background:#101c32;border-radius:10px;gap:3px}.studio-shell .tabs button{font:650 12px/1.3 StudioText,sans-serif;padding:9px 6px;min-height:36px;border:0;background:transparent}.studio-shell .tabs button[aria-selected=true]{background:#324968;color:#fff}.studio-shell .unverified{font:600 11px/1.6 StudioText,sans-serif;color:#ffe39a;padding:8px 10px;background:#ffe3690b;border-left:2px solid #e5c875}.studio-shell .file-actions>*{font-size:11px}.studio-shell #imageInfo{font-size:12px}.studio-shell #playHint{font:600 12px/1.5 StudioText,sans-serif;border:1px solid #526482;border-radius:8px}.studio-shell #touchWalk #touchDance{font-size:11px}.studio-shell dialog{border:1px solid #637797;border-radius:16px;padding:24px;box-shadow:0 24px 90px #0008}.studio-shell .dialog-heading h2{font-size:22px}.studio-shell #draftList button{font:600 14px/1.5 StudioText,sans-serif;padding:15px}.studio-shell .world-choice{padding:0;background:#1d2d48;border-color:#465875;border-left:4px solid var(--world);border-radius:10px}.studio-shell .world-choice span{font:700 13px/1.4 StudioText,sans-serif;padding:12px}.studio-shell .world-choice[aria-pressed=true]{outline-color:var(--lime)}.studio-shell .world-actions>label{font-size:12px}.studio-shell .world-actions>p{font-size:12px}.studio-shell #publicDetails h1{font-size:22px}.studio-shell.public .studio-route{display:none}.studio-shell.public #viewport{height:calc(100dvh - 245px)}
.studio-shell .asset-studio,.studio-shell .object-creator{background:#14213a;border-color:#637797}.studio-shell .asset-studio h2,.studio-shell .object-creator h2{font:800 23px/1.3 StudioHeading,sans-serif;margin:8px 0}.studio-shell .asset-studio small,.studio-shell .object-creator small{font:600 12px/1.5 StudioText,sans-serif;color:#b8cdeb}.studio-shell .asset-studio p,.studio-shell .object-creator p{font:400 13px/1.6 StudioText,sans-serif}.studio-shell .asset-studio .as-lead{font:750 26px/1.25 StudioHeading,sans-serif;color:#f1f5ff}.studio-shell .asset-studio label,.studio-shell .object-creator label{font:600 12px/1.5 StudioText,sans-serif}.studio-shell .asset-studio input:not([type=checkbox]),.studio-shell .asset-studio select,.studio-shell .asset-studio textarea,.studio-shell .object-creator input:not([type=checkbox]),.studio-shell .object-creator select,.studio-shell .object-creator textarea{font:400 14px/1.5 StudioText,sans-serif;border-radius:7px;padding:10px;min-height:42px}.studio-shell .asset-studio input[type=file],.studio-shell .object-creator input[type=file]{font-size:12px}.studio-shell .asset-studio h3,.studio-shell .object-creator h3{font:750 15px/1.45 StudioHeading,sans-serif}.studio-shell .as-card span,.studio-shell .oc-saved button{font:600 13px/1.4 StudioText,sans-serif}.studio-shell .as-card small{font:400 11px/1.4 StudioText,sans-serif}.studio-shell .as-preview,.studio-shell .oc-preview{border-radius:12px;border:1px solid #536a90;outline:0}.studio-shell .oc-starters button,.studio-shell .oc-angles button{font:600 11px/1.4 StudioText,sans-serif}.studio-shell .oc-elements summary{font:700 13px/1.5 StudioText,sans-serif;min-height:44px}.studio-shell .oc-viewbar{font-size:12px}.studio-shell .oc-inspector{border-radius:12px}.studio-shell .as-layout{gap:25px}.studio-shell .oc-check,.studio-shell .as-check{line-height:1.6}
@media(min-width:1600px){.studio-shell .workspace{grid-template-columns:275px minmax(0,1fr) 300px}}@media(max-width:1100px){.studio-shell .topbar{align-items:flex-start}.studio-shell .top-actions{max-width:650px}.studio-shell .workspace{grid-template-columns:210px minmax(0,1fr) 250px}.studio-shell .library,.studio-shell .inspector{padding:14px}.studio-shell .top-actions button{font-size:11px}.studio-shell .brand img{width:160px}.studio-shell .studio-route p{max-width:55%}.studio-shell .view-toolbar{padding:10px}.studio-shell .dimensions{display:none}}
@media(max-width:760px){.studio-shell .topbar{padding:16px;gap:16px}.studio-shell .brand{flex-direction:row;align-items:center;gap:14px}.studio-shell .brand span{font-size:10px;letter-spacing:1px}.studio-shell .top-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;gap:7px}.studio-shell .top-actions button{font-size:11px;padding:9px 7px;min-height:44px}.studio-shell .top-actions>a{margin:0;justify-content:center;font-size:12px}.studio-shell .studio-route{padding:8px 16px;display:block}.studio-shell .studio-route p{display:none}.studio-shell .studio-route nav{justify-content:space-between;gap:12px}.studio-shell .studio-route a{min-height:40px}.studio-shell .workspace{grid-template-columns:1fr;min-height:0}.studio-shell .library,.studio-shell .inspector{max-height:none;padding:20px}.studio-shell .viewport-wrap{grid-row:1}.studio-shell #viewport{height:46dvh;min-height:300px;flex:none}.studio-shell .view-toolbar{height:60px;padding:10px 16px}.studio-shell .commandbar{padding:10px 16px;gap:8px}.studio-shell .commandbar button{min-height:44px}.studio-shell .commandbar label{font-size:12px}.studio-shell .tabs button{min-height:44px;font-size:13px}.studio-shell .categories button{min-height:44px;font-size:12px}.studio-shell .asset{font-size:12px;min-height:110px}.studio-shell .world-choice span{font-size:12px}.studio-shell dialog{padding:18px;border-radius:12px}.studio-shell .dialog-heading h2{font-size:19px}.studio-shell .world-actions>button,.studio-shell .world-actions>select{width:100%;margin-left:0}.studio-shell.playing #viewport{height:65dvh}.studio-shell.public .top-actions{display:flex;flex-wrap:wrap}.studio-shell.public #viewport{height:65dvh}.studio-shell .asset-studio h2,.studio-shell .object-creator h2{font-size:19px}.studio-shell .object-creator header,.studio-shell .asset-studio header{gap:12px}.studio-shell .oc-workbench{gap:16px}.studio-shell .as-layout{gap:18px}.studio-shell .oc-angles button{min-height:44px}.studio-shell .as-preview{min-height:230px}.studio-shell .oc-actions button{min-height:44px}.studio-shell #library-panel,.studio-shell #inspector-panel,.studio-shell #viewport{scroll-margin-top:12px}}

.studio-shell .tabs{flex-wrap:wrap}.studio-shell #openAccess{border-color:#8caaf0;color:#dce8ff}.studio-shell #panel-access .plaza-gate-settings{margin-top:20px}.studio-shell #panel-access h3{font-size:17px}
.studio-shell .listing-preview{position:relative;overflow:hidden;border:1px solid #58769a;border-radius:12px;background:#233958;margin:16px 0}
.studio-shell .listing-preview .listing-cover{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.studio-shell #listingCoverEmpty{display:grid;place-items:center;aspect-ratio:16/9;font-size:13px;color:#b7cbea;background:#101b30}
.studio-shell .listing-preview .listing-logo{width:52px;height:52px;object-fit:contain;margin:-22px 12px 8px;position:relative;border:3px solid #233958;border-radius:12px;background:#14213a}
.studio-shell .listing-preview strong,.studio-shell .listing-preview small{display:block;padding:0 12px 12px;overflow-wrap:anywhere}
.studio-shell .listing-preview small{color:#b7cbea;font-size:11px}
.studio-shell .listing-upload{position:relative;overflow:hidden;width:100%;font-size:12px}
.studio-shell .listing-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.studio-shell #captureListing{width:100%;font-size:12px}
.studio-shell #listingStatus{color:#c9dfaa;padding:10px;border-left:2px solid #baff38;background:#101b30}
.studio-shell button.listing-cover-target{position:relative;display:block;width:100%;padding:0;margin:0;border:0;border-radius:0;background:#101b30;text-align:center;overflow:hidden;cursor:pointer}
.studio-shell .listing-cover-target #listingCoverEmpty{margin:0;padding:28px 16px;align-content:center;gap:8px}
.studio-shell .listing-cover-target .cover-hint{font-size:11px;color:#aabedb}
.studio-shell .cover-add{position:absolute;top:10px;right:10px;width:32px;height:32px;display:grid;place-items:center;background:#28486f;color:#e8f2ff;border:1px solid #8caaf0;border-radius:9px;pointer-events:none}
.studio-shell .cover-add svg{width:20px;height:20px}
.studio-shell button.listing-cover-target:hover{box-shadow:inset 0 0 0 2px #8caaf0}
.studio-shell button.listing-cover-target:focus-visible{outline:3px solid #8caaf0;outline-offset:-3px}
.studio-shell .listing-preview .listing-logo{pointer-events:none}
.studio-shell .publish-required{outline:2px solid #ffcb69!important;outline-offset:3px;box-shadow:0 0 0 5px #ffcb6920!important;border-color:#ffcb69!important}
.studio-shell button.listing-cover-target.publish-required{outline-offset:-3px;box-shadow:inset 0 0 0 3px #ffcb69!important}
.studio-shell .listing-cover-target.publish-required .cover-add{background:#ffcb69;color:#14213a;border-color:#ffcb69}
.studio-shell .missing-label{font-size:10px;font-weight:800;color:#ffdc98;margin-left:auto}
@media(prefers-reduced-motion:no-preference){.studio-shell .publish-required{animation:requirement-reveal .65s ease-out 1}@keyframes requirement-reveal{from{filter:brightness(1.6)}to{filter:brightness(1)}}}

/* World Studio: the workspace, publication and player shell have separate layouts. */
.studio-shell:not(.public){--studio-slate:#14213a;--studio-ink:#101b30;--studio-blue:#8caaf0;--studio-paper:#f1f5ff;--studio-lime:#baff38}
.studio-shell:not(.public) .topbar{padding:12px 20px;min-height:76px;gap:16px}
.studio-shell .studio-route p{display:flex;flex-direction:column;min-width:0;max-width:48%}
.studio-shell #workspaceName{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio-shell #workspaceState{font-size:11px;line-height:1.5;color:#becce4}
.studio-shell #workspaceState[data-error=true]{color:#ffb3b3}
.studio-shell .studio-route nav{gap:4px;flex-wrap:wrap}
.studio-shell .studio-route button{border:0;background:transparent;font-size:12px;padding:8px 12px;min-height:38px}
.studio-shell .studio-route button[aria-pressed=true]{background:#395578;color:#fff;box-shadow:inset 0 -2px #8caaf0}
.studio-shell .creation-tools{display:grid;gap:6px;margin:0 0 20px}
.studio-shell .creation-tools button{justify-content:flex-start;color:#e4d6ff;background:#302b4b;border-color:#655778;font-size:12px}
.studio-shell[data-workspace=library] .workspace{grid-template-columns:330px minmax(0,1fr)}
.studio-shell[data-workspace=library] .inspector,.studio-shell[data-workspace=canvas] .library,.studio-shell[data-workspace=canvas] .inspector,.studio-shell[data-workspace=properties] .library{display:none}
.studio-shell[data-workspace=canvas] .workspace{grid-template-columns:minmax(0,1fr)}
.studio-shell[data-workspace=properties] .workspace{grid-template-columns:minmax(0,1fr) 360px}
.studio-shell #changeTemplate{width:100%;font-size:12px;text-align:left;margin-bottom:8px}
.studio-shell #panel-access .plaza-gate-settings{border:0;margin:0;padding:0}
.studio-shell .gate-summary{background:#233958;border-left:3px solid #8caaf0;padding:12px;color:#eef4ff;font-weight:700}
.studio-shell .gate-help{font-size:12px;color:#bbcbea;margin:14px 0}
.studio-shell .gate-help summary{cursor:pointer;padding:8px 0}
.studio-shell .gate-message{padding:10px 12px;background:#101b30;border-radius:6px;color:#bcd2ff;min-height:40px}
.studio-shell .gate-message[data-error=true]{color:#ffc1bf;border-left:3px solid #ff8888}
.studio-shell .gate-save{width:100%;background:#baff38;color:#15233b;font-weight:800;position:sticky;bottom:0;box-shadow:0 -8px 20px #182642}
.studio-shell .gate-count{font-size:12px;color:#bcd2ff}
.studio-shell .publish-bar{display:flex;align-items:center;gap:18px;background:#254c42;padding:10px 24px;font-size:13px}
.studio-shell .publish-bar a{margin-left:auto;font-weight:800;color:#e7ffc7}
.studio-shell .publish-bar button{min-height:34px;font-size:12px}
.studio-shell .template-actions,.studio-shell .publish-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.studio-shell .template-actions button{flex:1;font-size:12px}
.studio-shell .world-actions>select{width:100%}
.studio-shell #publishedUrl{font-size:12px}
.studio-shell #publishDialog{width:min(580px,calc(100% - 24px))}
.studio-shell #publishDialog h2{font-size:26px}
.studio-shell.public{height:100dvh;overflow:hidden}
.studio-shell.public .workspace,.studio-shell.public .viewport-wrap{position:fixed;inset:0;min-height:0;display:block}
.studio-shell.public #viewport{position:absolute;inset:0;width:100%;height:100%;min-height:0}
.studio-shell.public #viewport>canvas{width:100%!important;height:100%!important}
.studio-shell.public .topbar{position:fixed;z-index:30;top:12px;left:12px;right:12px;background:#152350e8;border:1px solid #526b96;border-radius:16px;min-height:64px;padding:10px 16px;pointer-events:none}
.studio-shell.public .topbar a,.studio-shell.public .topbar button{pointer-events:auto}
.studio-shell.public .topbar .brand span,.studio-shell.public .top-actions>a[href="developers.html"],.studio-shell.public .view-toolbar,.studio-shell.public .statusbar,.studio-shell.public .commandbar{display:none}
.studio-shell.public #publicDetails{position:fixed;left:20px;top:94px;padding:10px 14px;max-width:min(340px,calc(100vw - 40px));background:#152350dc;border-radius:12px;pointer-events:none}
.studio-shell.public #publicDetails a{pointer-events:auto}
.studio-shell.public #publicDetails h1{font-family:Launch,Nunito,sans-serif;font-size:22px;margin:0}
.studio-shell.public #publicDetails .unverified{font-size:9px;padding:0;background:none;border:0}
.studio-shell.public #communityLinks{margin-top:6px;gap:10px;font-size:11px}
.studio-shell.public #playHint{top:auto;bottom:20px;left:50%;transform:translateX(-50%);white-space:nowrap}
.studio-shell.public #touchWalk{z-index:5;bottom:24px}
.studio-shell.public .topbar select{pointer-events:auto}
.studio-shell.public .chat-toggle{background:#86e7fa;color:#14213a;border:2px solid #507393;font-weight:800}
@media(min-width:761px){
 .studio-shell:not(.public){display:flex;flex-direction:column;height:100dvh;overflow:hidden}
 .studio-shell:not(.public)>.topbar,.studio-shell:not(.public)>.studio-route,.studio-shell:not(.public)>.publish-bar{flex-shrink:0}
 .studio-shell:not(.public) .workspace{flex:1;min-height:0;height:0}
 .studio-shell:not(.public) .library,.studio-shell:not(.public) .inspector{max-height:100%;min-height:0}
 .studio-shell:not(.public) .viewport-wrap{min-height:0}
 .studio-shell:not(.public) #viewport{flex:1;height:auto;min-height:0}
 .studio-shell:not(.public) .view-toolbar,.studio-shell:not(.public) .commandbar,.studio-shell:not(.public) .statusbar{flex-shrink:0}
}
@media(max-width:760px){
 .studio-shell .studio-route{position:sticky;top:0;z-index:20;padding:8px 12px}
 .studio-shell .studio-route p{display:flex;max-width:100%;margin-bottom:8px!important}
 .studio-shell .studio-route nav{gap:0;justify-content:space-between}
 .studio-shell .studio-route button{font-size:11px;padding:8px;min-height:44px}
 .studio-shell[data-workspace] .workspace{grid-template-columns:1fr}
 .studio-shell[data-workspace=library] .viewport-wrap,.studio-shell[data-workspace=properties] .viewport-wrap{display:none}
 .studio-shell .publish-bar{gap:8px;flex-wrap:wrap;padding:10px 16px}
 .studio-shell .publish-bar strong{flex-basis:100%}.studio-shell .publish-bar a{margin-left:0}
 .studio-shell .template-actions{display:grid;grid-template-columns:1fr}.studio-shell .template-actions button{min-height:40px}
 .studio-shell.public .topbar{top:8px;left:8px;right:8px;flex-wrap:nowrap;align-items:center;gap:8px;padding:8px;min-height:58px}
 .studio-shell.public .brand img{width:110px}.studio-shell.public .top-actions{width:auto;gap:6px;justify-content:flex-end}
 .studio-shell.public .top-actions a,.studio-shell.public .top-actions button{font-size:10px;min-height:38px;padding:6px}
 .studio-shell.public #publicDetails{top:82px;left:12px;padding:8px 12px;max-width:calc(100vw - 24px)}
 .studio-shell.public #publicDetails h1{font-size:18px}.studio-shell.public #playHint{display:none}
 .studio-shell.public .top-actions .world-clock{position:fixed;right:12px;top:78px;display:flex;gap:6px;background:#152350e8;padding:4px 8px;border-radius:8px;pointer-events:auto}
 .studio-shell.public .world-clock time{font-size:10px}.studio-shell.public .world-clock select{width:88px;min-height:30px;font:11px Nunito,sans-serif;padding:3px}
 .studio-shell.public #publicDetails{top:124px;padding:6px 10px}
 .studio-shell.public #publicDetails .unverified{font-size:8px}
}

#shareCardPreview{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;border-radius:14px;border:1px solid #526586;margin:16px 0}#shareCardPreview[hidden]{display:none}.publish-social{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.publish-social a{flex:1;text-align:center;white-space:nowrap}#shareStatus{font-size:13px;line-height:1.5}#publishedUrl{width:100%;box-sizing:border-box}
