.settings-scrim{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;animation:settings-scrim-in .2s ease-out both}.settings-scrim.settings-scrim--closing{animation:settings-scrim-out .16s ease-in both;pointer-events:none}@keyframes settings-scrim-in{0%{background-color:rgba(0,0,0,0)}to{background-color:rgba(0,0,0,.55)}}@keyframes settings-scrim-out{0%{background-color:rgba(0,0,0,.55)}to{background-color:rgba(0,0,0,0)}}.settings-panel.settings-panel--closing{animation:settings-panel-out .16s ease-in both}@keyframes settings-panel-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)}}.settings-panel{width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;background:var(--bg-control);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.5);padding:16px 20px 20px;color:#fff;box-sizing:border-box}.settings-panel--tabbed{width:min(515px,calc(100vw - 32px));padding-top:0}.settings-group:after{content:"";display:block;height:14px}.settings-header{display:flex;align-items:center;justify-content:space-between;font-size:18px;font-weight:700;margin-bottom:4px}.settings-sticky{position:sticky;top:0;z-index:2;margin:0 -20px;padding:14px 20px 10px;background:var(--bg-panel)}.settings-search{position:relative;display:flex;align-items:center;margin-top:8px}.settings-search-input{flex:1 1;min-width:0;padding:7px 26px 7px 28px;font-family:var(--font-content),monospace;font-size:13px;color:#fff;background:var(--bg-control-light);border:1px solid var(--border-subtle);border-radius:6px;outline:none}.settings-search-input::placeholder{color:hsl(var(--hsl-f1))}.settings-search-input:focus{border-color:var(--user-colour,#00a0f0)}.settings-search-input--accepted{animation:settings-search-accepted 2.4s ease-out}.settings-search-input--accepted::placeholder{color:var(--user-colour,#00a0f0)}@keyframes settings-search-accepted{0%{box-shadow:0 0 0 3px color-mix(in srgb,var(--user-colour,#00a0f0) 45%,transparent)}to{box-shadow:0 0 0 3px transparent}}.settings-search-icon{position:absolute;left:8px;width:13px;height:13px;color:hsl(var(--hsl-f1));pointer-events:none}.settings-search-clear{position:absolute;right:4px;padding:2px 5px;font-size:11px;color:hsl(var(--hsl-f1));background:none;border:none;border-radius:4px;cursor:pointer}.settings-search-clear:hover{color:#fff}.settings-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.settings-tab{--press-squash:var(--tab-press);position:relative;display:inline-flex;align-items:center;justify-content:center;padding:3px 9px;font-family:var(--font-content),monospace;font-size:12px;color:hsl(var(--hsl-f1));background:var(--bg-control-light);border:none;border-radius:999px;cursor:pointer;transition:transform var(--spring-ms) var(--spring)}.settings-tab:hover{color:#fff}@media (hover:none){.settings-tab:hover{color:hsl(var(--hsl-f1))}}.settings-tab:active{transform:scale(var(--press-squash));filter:brightness(var(--press-brightness));transition:transform var(--press-ms) ease-out}:root{--tab-glide-ms:60ms;--tab-press:0.9;--tab-pass:0.95;--tab-pass-ms:350ms}.settings-tab__light{position:absolute;inset:0;box-sizing:border-box;display:inherit;align-items:inherit;justify-content:inherit;padding:inherit;border-radius:inherit;font:inherit;color:hsl(var(--hsl-b6));background:var(--control-accent);pointer-events:none;visibility:hidden}.settings-empty{padding:28px 0;text-align:center;font-size:13px;color:hsl(var(--hsl-f1))}.settings-close{background:none;border:none;color:hsl(var(--hsl-f1));font-size:16px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background-color .12s,color .12s}.settings-close:hover{background:var(--bg-control-light);color:#fff}.settings-section{margin:14px 0 6px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--hsl-f1))}.settings-section--pinned{position:sticky;top:var(--settings-sticky-h,148px);z-index:1;margin:0 -20px;padding:8px 20px;color:#fff;background:var(--bg-panel)}.settings-section--pinned+*{margin-top:8px}.settings-row{display:flex;align-items:center;gap:10px;padding:4px 0;font-size:14px}.flash-to{border-radius:6px;animation:flash-to 2.2s ease-out}@keyframes flash-to{0%,40%{box-shadow:inset 0 0 0 100vmax rgba(61,168,219,.22),0 0 0 6px rgba(61,168,219,.22)}to{box-shadow:inset 0 0 0 100vmax transparent,0 0 0 6px transparent}}@keyframes flash-to-still{0%,99%{box-shadow:inset 0 0 0 100vmax rgba(61,168,219,.18),0 0 0 6px rgba(61,168,219,.18)}to{box-shadow:inset 0 0 0 100vmax transparent,0 0 0 6px transparent}}@media (prefers-reduced-motion:reduce){.flash-to{animation:flash-to-still 2.2s step-end}}.settings-row--top{align-items:flex-start}.settings-label{width:175px;flex-shrink:0}.settings-label-tail{white-space:nowrap}.settings-note{opacity:.6}.settings-explain{position:relative;display:inline-flex;margin-left:5px;padding:0;color:hsl(var(--hsl-f1));background:none;border:none;opacity:.35;cursor:help;touch-action:manipulation;transition:opacity .12s,color .12s}.settings-explain:after{content:"";position:absolute;inset:-7px}.settings-explain--on,.settings-label:hover .settings-explain{opacity:1;color:#fff}.settings-relock{margin-left:3px;font-size:11px;cursor:pointer}.settings-value{box-sizing:border-box;width:62px;flex-shrink:0;padding:1px 4px;font:inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;color:hsl(var(--hsl-f1));background:none;border:1px solid transparent;border-radius:4px;outline:none}.settings-value:hover{border-color:var(--border-subtle)}.settings-checkbox{width:16px;height:16px;cursor:pointer}.settings-curve{flex:1 1;width:auto;min-width:0;text-align:left;font-family:ui-monospace,monospace;font-size:12px}.settings-value:focus{color:#fff;background:var(--bg-control-light);border-color:var(--user-colour,#00a0f0)}@media (max-width:540px){.settings-row:has(>.settings-choices,>.settings-stack,>.slider--stretch,>.settings-auto-slider){flex-wrap:wrap;row-gap:6px}.settings-row:has(>.settings-choices,>.settings-stack,>.slider--stretch,>.settings-auto-slider)>.settings-label{width:100%}.settings-row>.slider--stretch{padding-inline:28px}}.settings-auto-slider{display:flex;flex:1 1;align-items:center;gap:10px;min-width:0}.settings-auto-slider--auto{opacity:.45}.settings-auto-toggle{flex:0 0 auto;padding-inline:12px}.settings-stack{display:flex;flex:1 1;flex-direction:column;gap:6px}.settings-subrow{display:flex;align-items:center;gap:10px}.settings-test-toggle{flex:0 0 auto;padding:7px 18px}.settings-skin{display:flex;flex:1 1;min-width:0;align-items:stretch;gap:6px}.settings-skin--buttons .settings-skin-btn{flex:1 1}.settings-snaps{display:flex;flex:1 1;flex-wrap:wrap;gap:4px 10px}.settings-snap{display:flex;align-items:center;gap:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;cursor:pointer}.settings-keyrow{display:flex;align-items:center;gap:10px}.settings-keyrow-label{flex:0 0 auto;min-width:80px;color:hsl(var(--hsl-f1))}.settings-keycap{min-width:30px;height:26px;padding:0 9px;font:inherit;font-family:var(--font-default);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#fff;background:var(--off-tile);border:1px solid transparent;border-radius:5px;cursor:pointer}.settings-keycap--listening{font-weight:400;color:hsl(var(--hsl-f1));border-color:var(--control-accent)}.settings-toolkey-group{margin-top:6px}.settings-toolkey-rows{margin-left:18px}.settings-toolkey{width:100%;min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 6px;font:inherit;color:#fff;text-align:left;background:none;border:none;border-radius:6px;cursor:pointer}.settings-toolkey:focus-visible,.settings-toolkey:hover{background:var(--bg-control-light)}.settings-toolkey-name{display:inline-flex;align-items:center;gap:7px;min-width:0}.settings-toolkey-group>.settings-toolkey>.settings-toolkey-name,.settings-toolkey-head{font-weight:700}.settings-toolkey-head{min-height:30px;display:flex;align-items:center;padding:2px 6px}.settings-toolkey-caps{flex:0 0 auto;display:inline-flex;gap:4px}.settings-toolkey-caps>.settings-keycap{display:inline-flex;align-items:center;justify-content:center;height:22px;min-width:24px;padding:0 7px;font-size:12px;box-sizing:border-box}.settings-disclosure,.settings-toolkey-none{color:hsl(var(--hsl-f1))}.settings-disclosure{display:flex;align-items:center;gap:7px;padding:6px 11px;font-family:var(--font-content),monospace;font-size:13px;background:var(--bg-control-light);border:none;border-radius:6px;cursor:pointer;transition:color .12s}.settings-disclosure:hover{color:#fff}.settings-caret{width:0;height:0;border-left:5px solid;border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform .12s}.settings-caret--open{transform:rotate(90deg)}.settings-tool-group{align-items:flex-start}.settings-tool-group>.settings-label{font-weight:700}.settings-hint{margin-top:6px;font-size:12px;color:hsl(var(--hsl-f1));user-select:text;-webkit-user-select:text}.settings-action{margin-top:4px}.settings-action-second{margin-left:12px}.settings-action-note{margin-left:8px;font-size:12px;color:var(--text-secondary,#8a8496)}.settings-action-error{margin-left:8px;font-size:12px;color:var(--don-color)}.settings-link-btn:disabled{cursor:default;opacity:.6;text-decoration:none}.settings-hint--inline{margin-top:0;flex:1 1}.settings-tip{position:fixed;top:0;left:0;z-index:210;max-width:300px;padding:8px 10px;font-size:12px;line-height:1.45;color:hsl(var(--hsl-f1));background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:0 6px 20px rgba(0,0,0,.45);visibility:hidden;pointer-events:none}.settings-tip--pinned{pointer-events:auto;user-select:text;-webkit-user-select:text}.settings-footer{display:flex;flex-direction:column;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border-subtle)}.settings-footer-row{display:flex;align-items:center;gap:10px}.settings-footer-btn,.settings-reset-btn,.settings-skin-btn{flex-shrink:0;padding:7px 12px;font-size:13px;font-weight:700;font-family:var(--font-content),monospace;color:#fff;background:var(--bg-control-light);border:2px solid transparent;border-radius:6px;cursor:pointer;transition:background-color .12s,border-color .12s}.settings-footer-btn:hover:not(:disabled),.settings-skin-btn:hover:not(:disabled){border-color:var(--user-colour,#00a0f0)}.settings-footer-btn:disabled,.settings-skin-btn:disabled{opacity:.45;cursor:default}.settings-share-box{width:100%;min-height:76px;resize:vertical;padding:8px 10px;font-size:11px;font-family:monospace;line-height:1.45;color:hsl(var(--hsl-f1));background:var(--bg-control-light);border:2px solid transparent;border-radius:6px;outline:none;overflow-wrap:anywhere}.settings-share-box:focus{border-color:var(--user-colour,#00a0f0)}.settings-footer>.settings-hint{margin-top:0}.settings-hint--error{color:var(--don-color)}.settings-reset-btn:hover{background:var(--don-color);border-color:var(--don-color)}.settings-link-btn{background:none;border:none;padding:0;font-size:12px;color:var(--user-colour,#00a0f0);cursor:pointer;text-decoration:underline}.settings-select{position:relative}.settings-select-trigger{display:flex;align-items:center;gap:8px;background:var(--bg-control);border:1px solid var(--border-subtle);border-radius:8px;color:#fff;font-size:13px;padding:6px 10px;cursor:pointer;transition:background-color .12s}.settings-select-trigger:hover:not(:disabled){background:var(--bg-control-light)}.language-flag{width:21px;height:16px;border-radius:2px;display:block;object-fit:cover}.language-flag--globe,.language-select-auto{color:hsl(var(--hsl-f1))}.language-select-auto{font-size:12px}.settings-select-caret{font-size:10px;opacity:.7;margin-left:2px}.settings-select-trigger:disabled{opacity:.45;cursor:default}.settings-select-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-select--fill{display:flex;flex:1 1;min-width:0}.settings-select--fill .settings-select-trigger{flex:1 1;min-width:0}.settings-select--fill .settings-select-caret{margin-left:auto}.settings-select--fill .presence-dropdown{min-width:100%;max-width:300px}.settings-text-input--masked{-webkit-text-security:disc}@supports not (-webkit-text-security:disc){.settings-text-input--masked{color:transparent;text-shadow:0 0 8px rgba(255,255,255,.85)}}.settings-text-row{display:flex;align-items:stretch;gap:6px;width:200px}.settings-text-row .settings-text-input{flex:1 1;min-width:0;width:auto}.settings-reveal-btn{display:flex;flex-shrink:0;align-items:center;justify-content:center;padding:0 8px;color:#fff;background:var(--bg-control);border:1px solid var(--border-subtle);border-radius:6px;cursor:pointer}.settings-reveal-btn:hover{border-color:var(--user-colour,#00a0f0)}.settings-text-input{width:170px;padding:4px 8px;font-size:12px;color:#fff;background:var(--bg-control);border:1px solid var(--border-subtle);border-radius:6px}.btn{padding:8px 18px;cursor:pointer;border:none;border-radius:9999px;color:white;transition:background-color .12s}.btn-primary{background:var(--accent);font-weight:700}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-control-light)}.btn-secondary:hover{background:hsl(var(--hsl-b2))}.btn-dark{background:var(--bg-control)}.btn-dark:hover{background:var(--bg-control-light)}.btn-sm{padding:6px 14px;font-size:13px}.btn-undo-redo{padding:6px 16px;cursor:pointer;background:var(--bg-control);color:white;border:none;border-radius:6px;font-weight:700;font-size:13px;transition:background-color .12s,opacity .2s ease,visibility .2s;display:inline-flex;align-items:center;justify-content:center;gap:4px}.btn-undo-redo:hover{background:hsl(var(--hsl-b2))}.btn-undo-redo--hidden{visibility:hidden;opacity:0}.select{padding:6px 14px;cursor:pointer;background:var(--bg-control);color:#fff;border:1px solid var(--border-subtle);border-radius:6px;font-size:13px;transition:background-color .12s}.select:hover{background:var(--bg-control-light)}.url-field{position:relative}.input-url{width:210px;height:40px;box-sizing:border-box;padding:0 16px;font-size:13px;background:var(--bg-control);color:white;border:none;border-radius:9999px;transition:width .25s ease,padding .25s ease,background-color .12s}.input-url.input-url--closed{width:40px;padding:0;cursor:pointer}.input-url:focus,.input-url:hover{background:var(--bg-control-light)}.input-url:focus{outline:none;box-shadow:inset 0 0 0 1px var(--user-colour)}.input-url--invalid,.input-url--invalid:focus{box-shadow:inset 0 0 0 1px #f04848}.url-field-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;color:hsl(var(--hsl-f1));transition:opacity .2s ease}.url-field--open .url-field-icon{opacity:0}.url-field--menu{transition:margin-left .25s ease}.url-field--menu:not(.url-field--open){margin-left:-8px}.url-field--menu .input-url--closed{width:0}.url-field--menu .url-field-icon{display:none}.url-go{width:0;margin-left:-8px;opacity:0;overflow:hidden;flex-shrink:0;transition:width .25s ease,margin-left .25s ease,opacity .2s ease}.url-go--open{width:40px;margin-left:0;opacity:1}.top-bar{padding:calc(10px + var(--safe-top, 0px)) 20px 10px;width:100%;box-sizing:border-box;background:var(--bg-panel);border-bottom:2px solid hsl(var(--hsl-h2));position:relative;z-index:50}.top-bar-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.top-bar-user{grid-column:3;justify-self:end}.top-bar-actions,.top-bar-user{display:flex;align-items:center;gap:8px}.top-bar-actions{grid-column:1;justify-self:start;flex-wrap:nowrap}.bubble{width:40px;height:40px;border-radius:50%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex-shrink:0}.bubble--avatar{border:2px solid;object-fit:cover;background:var(--bg-control);color:#fff;font-weight:700;cursor:pointer}.bubble-button{display:block;padding:0;border:none;border-radius:50%;background:none;cursor:pointer}.bubble--self{width:44px;height:44px;border-color:var(--user-colour)}.bubble--placeholder{font-size:32px;color:hsl(var(--hsl-f1))}.action-bubble{border:none;background:var(--bg-control);color:hsl(var(--hsl-f1));font-size:16px;line-height:1;cursor:pointer;transition:background-color .12s,color .12s}.action-bubble--open,.action-bubble:hover{background:var(--bg-control-light);color:#fff}.action-bubble:disabled{opacity:.5;pointer-events:none}.bubble--pending{opacity:.65;filter:grayscale(.6);cursor:default}.title{margin:0;text-align:center;grid-column:2;letter-spacing:.14em;transition:opacity .2s ease;user-select:none;-webkit-user-select:none}.presence-menu{position:relative}.spectate-badge{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1;background:var(--bg-control);border:1px solid var(--border-subtle);border-radius:50%;flex-shrink:0}.spectator-pile{position:absolute;right:-4px;bottom:-4px;display:flex;align-items:center;pointer-events:none;z-index:1}.spectator-pile-avatar,.spectator-pile-more{width:18px;height:18px;box-sizing:border-box;border:2px solid var(--border-subtle);border-radius:50%;background:var(--bg-control);object-fit:cover;flex-shrink:0}.spectator-pile>*+*{margin-left:-8px}.spectator-pile-avatar--placeholder{display:flex;align-items:center;justify-content:center;color:hsl(var(--hsl-f1));font-size:11px}.spectator-pile-more{display:flex;align-items:center;justify-content:center;color:#fff;font-size:9px;font-weight:700;line-height:1}.presence-spectator{display:inline-flex;align-items:center;gap:8px;max-width:100%;font-size:14px}.presence-spectator-avatar{box-sizing:border-box;border:2px solid}.presence-spectator-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence-dropdown{position:absolute;right:0;top:100%;padding-top:8px;z-index:100;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.presence-menu:focus-within .presence-dropdown,.presence-menu:hover .presence-dropdown{opacity:1;visibility:visible;transform:none}.presence-dropdown--open,.presence-dropdown--sticky{opacity:1;visibility:visible;transform:none}.presence-dropdown--up{top:auto;bottom:100%;padding-top:0;padding-bottom:8px;transform:translateY(4px)}.presence-dropdown--up.presence-dropdown--open{transform:none}.presence-panel{display:flex;flex-direction:column;min-width:170px;background:var(--bg-control);border:1px solid var(--border-subtle);border-radius:10px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.4)}.presence-item{display:block;padding:10px 16px;color:#fff;font-size:14px;text-align:left;text-decoration:none;background:none;border:none;cursor:pointer;transition:background-color .12s}.presence-item:hover{background:var(--bg-control-light)}.difficulty-dropdown .presence-item,.hud-select .presence-item,.settings-select .presence-item{display:flex;align-items:center;gap:6px}.presence-item--active{font-weight:700}.presence-item-check{display:inline-block;width:22px;flex:0 0 22px;text-align:center;color:var(--select-accent);font-size:12px;font-weight:700}.presence-name{font-weight:700;color:var(--user-colour);border-bottom:1px solid var(--border-subtle)}.presence-name--neutral{color:#fff}.presence-diff{color:#aaa;font-size:12px;cursor:default;padding-top:4px;padding-bottom:4px}.presence-diff:hover{background:none}.presence-panel--scroll{max-height:300px;overflow-y:auto}.presence-item--accept{color:hsl(140,60%,62%);font-weight:700}.presence-item--reject{color:hsl(0,65%,66%)}.presence-hint{color:hsl(var(--hsl-f1));font-size:13px;cursor:default}a.presence-hint{cursor:pointer}.presence-friend{display:flex;align-items:center;gap:8px;width:100%}.presence-friend:disabled{opacity:.6;cursor:default}.presence-friend-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0}.presence-friend-avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--bg-control);color:hsl(var(--hsl-f1));font-size:16px}.presence-friend-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.presence-friend-status{flex-shrink:0;width:14px;text-align:right;color:hsl(var(--hsl-f1))}.login-link{padding:8px 18px;cursor:pointer;background:var(--accent);color:white;text-decoration:none;border:none;border-radius:9999px;font-weight:700;transition:background-color .12s}.login-link:hover{background:var(--accent-hover)}.progress-bar{width:400px;margin:10px auto 0;background:var(--bg-control);border-radius:4px;overflow:hidden;height:6px}.progress-bar-fill{width:40%;background:linear-gradient(90deg,var(--accent),var(--accent-hover),var(--accent));background-size:200% 100%;height:100%;border-radius:4px;animation:progress-slide 1.5s ease-in-out infinite}.progress-bar--determinate .progress-bar-fill{animation:none}@keyframes progress-slide{0%{transform:translateX(-100%);background-position:0 0}50%{background-position:100% 0}to{transform:translateX(350%);background-position:0 0}}.below-canvas{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--toolbar-edge);width:100%;box-sizing:border-box}.button-group,.button-group-wrap{display:flex;gap:6px}.button-group-wrap{flex-wrap:wrap}.subtool-rows{align-self:stretch;position:relative;transition:height calc(var(--t-layout) * .2s) ease,margin-top calc(var(--t-layout) * .2s) ease}.subtool-line{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--toolbar-gap)}.subtool-line+.subtool-line{margin-top:var(--toolbar-gap)}.subtool-tools{display:contents}.tool-row{position:relative;gap:var(--toolbar-gap)}.subtool-layer{display:flex;box-sizing:border-box;position:absolute;top:0;left:0;visibility:hidden;opacity:0;transform:scale(.92);transition:opacity .13s ease,transform .13s ease,visibility .13s}.subtool-layer--open{position:relative;visibility:visible;opacity:1;transform:none;transition:opacity .2s ease .05s,transform .2s ease .05s,visibility 0s}.tool-column{display:flex;flex-direction:column;align-items:flex-start}.tool-btn{height:30px;box-sizing:border-box;padding:0 calc(var(--toolbar-gap) * 2);font-size:13px;cursor:pointer;color:#fff;border:2px solid transparent;border-radius:6px;font-weight:700;background:var(--toolbar-tile);transition:background-color .12s,padding calc(var(--t-layout) * .2s) ease,gap calc(var(--t-layout) * .2s) ease}.tool-btn:hover{background:var(--toolbar-tile-hover)}.sub-tool-btn--pressed,.tool-btn--pressed{filter:brightness(var(--press-brightness))}.tool-panel-slot{position:absolute;left:0;right:0;bottom:calc(var(--tool-panel-row) - var(--tool-panel-push));z-index:1;box-sizing:border-box;padding:0 var(--toolbar-edge) var(--toolbar-edge);overflow:hidden;overflow:clip;transition:bottom calc(var(--t-layout) * .4s) ease}.tool-panel-inner{height:calc(var(--tool-panel-h) - var(--tool-panel-lift));overflow:hidden;transform:translateY(-100%);transition:transform calc(var(--t-layout) * .4s) ease,height calc(var(--t-layout) * .4s) ease}.tool-panel-slot--open .tool-panel-inner{height:var(--tool-panel-h);transform:none}.tool-panel-push{width:100%;transition:transform calc(var(--t-layout) * .4s) ease,margin-top calc(var(--t-layout) * .4s) ease,opacity .4s ease}.tool-panel-push--open{transform:translateY(var(--tool-panel-push));margin-top:var(--tool-panel-lift);opacity:.4}.tool-btn-gameplay-active{background:#a000f0;border-color:#c060ff}.sub-tool-btn{height:30px;box-sizing:border-box;padding:0 calc(var(--toolbar-gap) * 2);font-size:12px;cursor:pointer;color:#fff;border:2px solid transparent;border-radius:6px;font-weight:700;background:var(--toolbar-subtile);transition:background-color .12s,padding calc(var(--t-layout) * .2s) ease,gap calc(var(--t-layout) * .2s) ease}.sub-tool-btn,.tool-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px}.btn-undo-redo>svg,.sub-tool-btn>svg,.tool-btn>svg{flex:none}.sub-tool-btn,.tool-btn{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.sub-tool-btn:not(.sub-tool-btn-active):hover{background-color:var(--toolbar-subtile-hover)}.sub-tool-btn,.tool-btn{position:relative}:root[data-off-state=hollow] :is(.tool-btn,.sub-tool-btn){background-color:transparent;border-color:var(--hollow-edge)}@media (hover:hover){:root[data-off-state=hollow] :is(.tool-btn,.sub-tool-btn):hover{background-color:var(--bg-control)}}.sub-tool-btn.sub-tool-btn--hold{background-image:linear-gradient(to right,var(--pick-fill),var(--pick-fill));background-repeat:no-repeat;background-size:0 100%;background-origin:border-box}.sub-tool-btn.sub-tool-btn--holding{background-size:100% 100%;transition:background-size var(--hold-ms,.5s) ease-in}.canvas-hud{position:absolute;z-index:10;display:flex;gap:var(--hud-gap);align-items:center;pointer-events:auto}.canvas-hud--top-left{top:var(--hud-edge);left:var(--hud-edge)}.canvas-hud--top-right{top:var(--hud-edge);right:var(--hud-edge)}.canvas-hud--bottom-right{position:relative;flex:0 0 auto}.canvas-hud .btn-undo-redo,.canvas-hud .hud-icon-btn,.canvas-hud .hud-select__arrow,.canvas-hud .select{background:var(--hud-bg);border:1px solid var(--hud-border);height:var(--hud-control);box-sizing:border-box}.canvas-hud .btn-undo-redo:hover,.canvas-hud .hud-icon-btn:hover,.canvas-hud .hud-select__arrow:hover,.canvas-hud .select:hover{background:var(--hud-bg-hover)}:root[data-hud-style] .canvas-hud :is(.select,.btn-undo-redo,.hud-icon-btn,.hud-select__arrow,.btn-play,.btn-pause){--press-squash:var(--choice-press);transition:transform var(--spring-ms) var(--spring)}:root[data-hud-style] .canvas-hud :is(.select,.btn-undo-redo,.hud-icon-btn,.hud-select__arrow,.btn-play,.btn-pause):active{transform:scale(var(--press-squash));filter:brightness(var(--press-brightness));transition:transform var(--press-ms) ease-out}@media (hover:none){:root[data-hud-style] .canvas-hud :is(.select,.btn-undo-redo,.hud-icon-btn,.hud-select__arrow):hover{background:var(--hud-bg)}:root[data-hud-style] .canvas-hud :is(.btn-play,.btn-pause):hover{filter:none}}.hud-select{position:relative}.hud-select__trigger{display:flex;align-items:center;gap:8px;white-space:nowrap}.hud-select__trigger--editing{cursor:text}.hud-select__typed{white-space:nowrap}.hud-select__label{display:grid}.hud-select__label>*{grid-area:1/1}.hud-select__option{display:inline-flex;align-items:center;gap:6px}.hud-select__ghost{height:0;overflow:hidden;visibility:hidden}.hud-select__caret{font-size:10px;line-height:1;opacity:.7}.hud-select--stepper{display:flex;align-items:stretch}.hud-select__arrow{width:var(--hud-control);padding:0;cursor:pointer;color:#fff;line-height:1;display:flex;align-items:center;justify-content:center;transition:background-color .12s}.hud-select__arrow--left{border-radius:6px 0 0 6px}.hud-select__arrow--right{border-radius:0 6px 6px 0;margin-left:-1px}.hud-select--stepper .hud-select__trigger{border-radius:0;margin-left:-1px;padding:6px 10px}.hud-select .presence-panel{max-height:calc(100vh - 120px);overflow-y:auto}.hud-icon-btn{width:var(--hud-control);padding:0;cursor:pointer;border-radius:6px;color:#fff;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background-color .12s}.canvas-stage:fullscreen{display:flex;align-items:center;justify-content:center;background:#000}.btn-pause,.btn-play{width:var(--hud-control);height:var(--hud-control);padding:0;cursor:pointer;border:none;border-radius:6px;color:#111;display:flex;align-items:center;justify-content:center;transition:filter .12s}.btn-play{background:#48f080}.btn-pause{background:#f04848}.btn-pause:hover,.btn-play:hover{filter:brightness(1.15)}.customize-removed,.tool-scroll,.tool-seat{display:contents}.below-canvas--customizing .tool-scroll{align-self:stretch;flex:0 1 auto;min-height:0;display:flex;flex-direction:column;align-items:flex-start;overflow-y:auto;overscroll-behavior:contain;padding:0 8px 6px 0;margin-bottom:-6px}.below-canvas--customizing{position:relative;z-index:151}.tool-column--customizing{--customize-gap:9px}.below-canvas--customizing>.tool-column{position:absolute;left:0;right:0;bottom:0;box-sizing:border-box;padding:0 var(--toolbar-edge) var(--toolbar-edge);border-top:1px solid transparent;border-radius:12px 12px 0 0;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.below-canvas--customizing>.tool-column--customizing{background:var(--bg-page);border-color:var(--border-subtle);box-shadow:0 -8px 28px rgba(0,0,0,.5)}.customize-scrim{position:fixed;inset:0;z-index:150;background:rgba(0,0,0,.5);animation:customize-scrim-in .2s ease-out both}@keyframes customize-scrim-in{0%{background-color:rgba(0,0,0,0)}}.tool-column--customizing :is(.tool-row,.subtool-line){gap:var(--customize-gap)}.tool-column--customizing .tool-row{align-self:stretch}.tool-column--customizing .fit-wrap{flex-wrap:wrap}.tool-column--customizing .subtool-line+.subtool-line{margin-top:var(--customize-gap)}.tool-column--customizing .subtool-layer--open{flex:0 0 auto}.tool-column--customizing .subtool-layer--open>.tool-seat{position:relative;display:flex;flex:1 1 auto;min-width:0}.customize-ghost :is(.tool-btn,.sub-tool-btn),.tool-column--customizing :is(.tool-btn,.sub-tool-btn){flex:0 0 auto;cursor:grab}.customize-ghost :is(.tool-btn,.sub-tool-btn,.btn-text){transition:none}@media (max-width:768px){.customize-ghost :is(.tool-btn,.sub-tool-btn),.tool-column--customizing :is(.tool-btn,.sub-tool-btn){padding-left:var(--toolbar-gap);padding-right:var(--toolbar-gap);transition:background-color .12s}}.customize-collapsed>.tool-seat>:is(.tool-btn,.sub-tool-btn){opacity:.55;border:2px dashed hsla(var(--hsl-f1),.6)}.customize-selected>.tool-seat>.tool-btn{border-color:var(--control-accent)}.customize-gap>.tool-seat>*{visibility:hidden}.customize-gap:after{content:"";position:absolute;inset:0;border:2px dashed var(--control-accent);border-radius:6px;opacity:.7}.customize-badge{position:absolute;top:-7px;right:-7px;z-index:1;width:18px;height:18px;box-sizing:border-box;padding:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;border:1px solid rgba(0,0,0,.35);border-radius:50%;cursor:pointer;touch-action:none}.customize-badge>svg{stroke-width:3}.customize-badge--remove{background:var(--don-color)}.customize-badge--add{background:hsl(140,60%,36%)}.customize-badge:after{content:"";position:absolute;inset:-7px -7px 0 -4px}@media (hover:hover){.customize-badge:hover{filter:brightness(1.25)}}.customize-zones{display:flex;justify-content:space-between;padding:6px 0 8px}.customize-zone{font-size:11px;font-weight:700;line-height:14px;white-space:nowrap;color:hsl(var(--hsl-f1));user-select:none;-webkit-user-select:none}.customize-zone--collapsed{position:absolute;left:0;bottom:calc(100% + 8px)}.customize-more{position:relative;height:30px;box-sizing:border-box;display:inline-flex;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:700;color:hsl(var(--hsl-f1));border-width:0;border-left:2px dashed hsla(var(--hsl-f1),.6);border-bottom:0 dashed hsla(var(--hsl-f1),.6);border-right:2px dashed hsla(var(--hsl-f1),.6);border-top:0 dashed hsla(var(--hsl-f1),.6);user-select:none;-webkit-user-select:none}.fit-compact .customize-more{gap:0}.customize-ease{align-self:stretch;display:grid;grid-template-rows:0fr;transition:grid-template-rows calc(var(--t-layout) * .2s) ease}.customize-ease--open{grid-template-rows:1fr}.customize-ease-clip{min-height:0;overflow:hidden;overflow:clip}.customize-head{flex:none}.customize-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 0 8px}.customize-title{font-size:14px;font-weight:700;color:#fff}.customize-hint{flex:1 1 220px;font-size:13px;color:hsl(var(--hsl-f1))}.tool-column--customizing .customize-removed{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--customize-gap);box-sizing:border-box;min-width:46px;min-height:38px;margin:-4px 0 -4px auto;padding:2px 8px;background:rgba(0,0,0,.28);border:2px dashed transparent;border-radius:8px;transition:border-color .12s,background-color .12s,opacity .12s;animation:customize-removed-in .2s ease-out both}@keyframes customize-removed-in{0%{opacity:0}}.tool-column--customizing .customize-removed.customize-removed--empty{opacity:0}.tool-column--customizing .customize-removed.customize-removed--armed{opacity:1;border-color:hsla(var(--hsl-f1),.5)}.tool-column--customizing .customize-removed.customize-removed--target{border-color:var(--don-color);background:color-mix(in srgb,var(--don-color) 14%,transparent)}.customize-removed-empty{display:none}.tool-column--customizing .customize-removed-empty{display:flex;margin:0 auto;font-size:14px;color:var(--don-color)}.customize-removed-empty>svg{stroke-width:3}.customize-ghost{position:fixed;left:0;top:0;z-index:260;display:flex;pointer-events:none;scale:1.06;filter:drop-shadow(0 6px 10px rgba(0,0,0,.55))}.customize-ghost>:is(.tool-btn,.sub-tool-btn){flex:1 1 auto;cursor:grabbing}.btn-compact{display:none}.btn-text{display:grid;grid-template-columns:1fr;transition:grid-template-columns .2s ease}.btn-text>span{overflow:hidden;white-space:nowrap}@media (pointer:coarse){.btn-hotkey{display:none}}.fit-tight .sub-tool-btn,.fit-tight .tool-btn{padding-left:var(--toolbar-gap);padding-right:var(--toolbar-gap)}.fit-compact .btn-text{grid-template-columns:0fr}.fit-compact .sub-tool-btn,.fit-compact .tool-btn{gap:0}.fit-compact .btn-compact{display:inline}.fit-row{flex-wrap:nowrap}.fit-probing .fit-row{width:max-content}.fit-measuring .btn-text,.fit-measuring .sub-tool-btn,.fit-measuring .tool-btn{transition:none}@media (prefers-reduced-motion:reduce){.sub-tool-btn,.tool-btn{transition:background-color .12s}.btn-text,.customize-ease,.tool-panel-inner,.tool-panel-push,.tool-panel-slot{transition:none}}@media (max-width:768px){.btn-text{display:none}.btn-compact{display:inline}.below-canvas{justify-content:center}.tool-column{width:100%}.below-canvas--customizing .tool-scroll,.tool-column{align-items:stretch}.subtool-tools--break{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--toolbar-gap);flex:1 1 100%}.subtool-layer--open{flex:1 1;min-width:0}.input-url{width:140px}.title--url-open{opacity:0;pointer-events:none}.top-bar-header.url-open{grid-template-columns:auto 0 1fr}.top-bar-header.url-open .top-bar-actions{flex-wrap:nowrap}.sub-tool-btn,.tool-btn{flex:1 1;min-width:0;padding-left:4px;padding-right:4px}}@media (max-width:560px){.top-bar-header.has-actions{grid-template-columns:auto 0 1fr}.top-bar-header.has-actions .title{opacity:0;pointer-events:none}}