:root{color:#243d3c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#243d3c;--muted:#62706a;--teal:#365e56;--teal-dark:#254a43;--brass:#9d783d;--paper:#f3f1e8;--line:#d9ddd2;--game-gutter:clamp(22px, 2.6vw, 44px);--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--control-height:37px;--icon-size:32px;background:#dddcd0;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif}body.touch-controls{--control-height:48px;--icon-size:48px}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}#app{isolation:isolate;height:100dvh;position:relative}button,input{font:inherit}button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button,input,label{touch-action:manipulation}button:focus-visible,input:focus-visible,#game:focus-visible,[tabindex]:focus-visible{outline-offset:4px;outline:3px solid #94662b}[hidden]{display:none!important}#game{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0 auto 0 0}#game:active{cursor:grabbing}#game:focus-visible{outline-offset:-5px}#interface,.game-ui{pointer-events:none;position:absolute;inset:0}#interface{z-index:2}.game-ui p,.game-ui h1,.game-ui h2,.game-ui h3{margin:0}.game-ui button,.game-ui input{pointer-events:auto}.icon-button{width:var(--icon-size);height:var(--icon-size);background:0 0;border:1px solid #d1d8c9;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:hover{background:#e4e8db;border-color:#9dab96}.close-icon{width:12px;height:12px;position:relative}.close-icon:before,.close-icon:after{content:"";background:currentColor;width:12px;height:1px;position:absolute;top:5px;left:0}.close-icon:before{transform:rotate(45deg)}.close-icon:after{transform:rotate(-45deg)}.ui-notice{z-index:5;bottom:164px;left:var(--game-gutter);width:min(430px, calc(100% - 2 * var(--game-gutter)));border:1px solid #adbda5;border-left:3px solid var(--teal);pointer-events:auto;background:#f6f6ed;border-radius:6px;align-items:flex-start;gap:18px;padding:15px 16px;display:flex;position:absolute;box-shadow:0 8px 28px #20322726}.ui-notice>div{flex:1;min-width:0}.notice-heading{color:#4b6651;font-family:var(--mono);letter-spacing:.12em;font-size:8px;line-height:1.5}.game-ui .notice-message{overflow-wrap:anywhere;max-height:27dvh;margin-top:5px;font-size:12px;line-height:1.55;overflow:auto}.ui-notice .icon-button{width:25px;height:25px}.ui-notice[data-kind=error]{color:#743925;background:#fff2e9;border-color:#c79780 #c79780 #c79780 #98533c}.ui-notice[data-kind=error] .notice-heading{color:#87432f}.ui-notice[data-kind=error] .icon-button{border-color:#d2ac96}.ui-notice[data-kind=error] .icon-button:hover{background:#f3dfd0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}#fatal-error{z-index:10;color:#703b27;overflow-wrap:anywhere;background:#fff2e7;border:1px solid #bc876d;border-radius:8px;width:min(480px,100% - 36px);max-height:80dvh;padding:26px;font-size:14px;line-height:1.6;position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 12px 40px #212d2433}@media (width<=680px){:root{--game-gutter:20px}.ui-notice{bottom:153px}}@media (width<=390px){:root{--game-gutter:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}}.game-chrome{width:100%;height:100%;position:absolute;inset:0 auto 0 0}.game-chrome:before{content:"";background:linear-gradient(#f0ede2c2,#f0ede200);height:190px;position:absolute;inset:0 0 auto}.game-header{top:max(30px, env(safe-area-inset-top));right:var(--game-gutter);left:var(--game-gutter);justify-content:space-between;align-items:flex-start;gap:22px;display:flex;position:absolute}.brand{align-items:center;gap:13px;min-width:0;display:flex}.brand>div{min-width:0}.brand-mark{border:1.5px solid var(--ink);border-radius:15px 15px 5px 5px;flex-shrink:0;width:31px;height:37px;display:block;position:relative}.brand-mark:before{border-top:1.5px solid var(--ink);border-left:1.5px solid var(--ink);content:"";width:13px;height:13px;position:absolute;bottom:7px;left:7px;transform:rotate(45deg)}.brand-mark:after{background:var(--brass);content:"";border:2px solid #e7e6da;border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:-4px}.eyebrow{color:#53645e;font-family:var(--mono);letter-spacing:.13em;font-size:9px;font-weight:500;line-height:1.5}.brand h1{letter-spacing:-.035em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin-top:5px;font-size:clamp(21px,1.9vw,28px);font-weight:650;line-height:1.1;overflow:hidden}.game-toolbar{flex-shrink:0;min-width:0}.game-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.button{min-height:var(--control-height);min-width:var(--control-height);white-space:nowrap;background:#f5f4ebe0;border:1px solid #c7cfc1;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:11px;font-weight:600;line-height:1.3;transition:background .14s,border-color .14s,box-shadow .14s;display:inline-flex}.button:hover{background:#fffdf5;border-color:#8b9d8e}.button:active{background:#e0e5d9}.button-primary{border-color:var(--teal);background:var(--teal);color:#fcfaf1;box-shadow:0 2px 3px #1d3a3014}.button-primary:hover{border-color:var(--teal-dark);background:var(--teal-dark)}.button-primary:active{background:#1c3a33}.button.is-active:not(.button-primary){border-color:var(--teal);color:var(--teal-dark);background:#dce6da}.play-button{min-width:71px}.play-button.is-active{box-shadow:0 0 0 3px #365e5629}.play-icon{border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:6px solid;width:0;height:0}.game-ui .input-state{color:#4e6259;justify-content:flex-end;align-items:center;gap:6px;margin-top:10px;font-size:10px;line-height:1.4;display:flex}.state-dot{background:#819080;border-radius:50%;flex:none;width:5px;height:5px}.input-state[data-mode=captured] .state-dot{background:#376d50;box-shadow:0 0 0 3px #376d501f}.input-state[data-mode=paused] .state-dot{background:var(--brass)}.climb-hud{top:121px;left:var(--game-gutter);font-variant-numeric:tabular-nums;align-items:center;gap:22px;display:flex;position:absolute}.height-reading{letter-spacing:-.06em;align-items:baseline;gap:5px;font-size:43px;font-weight:350;line-height:1.3;display:flex}.metric-unit{color:#56665b;font-size:18px;font-weight:400}.secondary-metrics{border-left:1px solid #2e473c36;gap:24px;padding-left:21px;display:flex}.metric-label{color:#56665b;font-family:var(--mono);letter-spacing:.09em;font-size:9px;line-height:1.5}.game-ui .metric-reading{font-family:var(--mono);letter-spacing:-.035em;margin-top:6px;font-size:15px;line-height:1.3}.small-unit{margin-left:3px;font-family:Segoe UI,Arial,sans-serif;font-size:11px}.game-help{right:var(--game-gutter);bottom:max(25px, env(safe-area-inset-bottom));left:var(--game-gutter);color:#e9ece0;text-shadow:0 1px 5px #152c2459;position:absolute}.game-help:before{z-index:-1;right:calc(-1 * var(--game-gutter));bottom:-30px;left:calc(-1 * var(--game-gutter));content:"";background:linear-gradient(#16292300,#162923d4);height:205px;position:absolute}.climbing-guide{align-items:center;gap:14px;display:flex}.game-ui .guide-heading{color:#fbf8e9;margin-bottom:5px;font-family:Georgia,Times New Roman,serif;font-size:20px;line-height:1.25}.climbing-guide p:not(.guide-heading){font-size:11px;line-height:1.6}.mouse-icon{border:1px solid #d6dece;border-radius:12px;flex:none;width:23px;height:34px;position:relative}.mouse-icon:after{content:"";background:#d6dece;width:1px;height:7px;position:absolute;top:6px;left:10px}.key-guide{flex-wrap:wrap;gap:9px 17px;margin-top:15px;display:flex}.key-guide>span{color:#e0e6d8;align-items:center;gap:6px;font-size:10px;display:inline-flex}kbd{font-family:var(--mono);letter-spacing:.035em;border:1px solid #dde7d261;border-radius:3px;padding:3px 5px;font-size:8px;font-weight:400;line-height:1.2;display:inline-block}.game-ui .game-signature{color:#d5dccd;max-width:210px;font-family:var(--mono);text-align:right;letter-spacing:.12em;font-size:8px;line-height:1.7;position:absolute;bottom:0;right:0}.game-signature span{color:#f3e0b2;display:block}body[data-input-mode=touch] .game-help:before{height:110px}body[data-input-mode=touch] .climbing-guide .input-instructions{max-width:340px;font-size:12px;line-height:1.5;display:block}@media (width<=1279px){.brand-mark{display:none}.game-header{gap:12px}.game-signature{display:none}.button{padding-left:10px;padding-right:10px}}@media (width<=680px){.game-header{top:max(22px, env(safe-area-inset-top));flex-direction:column;gap:16px}.brand-mark{width:28px;height:34px;display:block}.brand h1{font-size:24px}.game-toolbar{width:100%}.game-actions{justify-content:flex-start;gap:6px}.game-ui .input-state{justify-content:flex-start;margin-top:9px}.climb-hud{gap:18px;top:170px}.height-reading{font-size:35px}.secondary-metrics{gap:21px;padding-left:18px}.game-help{bottom:max(22px, env(safe-area-inset-bottom))}.game-ui .guide-heading{font-size:19px}.climbing-guide{gap:11px}.climbing-guide p:not(.guide-heading){max-width:270px;font-size:10px}.key-guide{gap:8px 13px;margin-top:13px}.key-guide>span{font-size:9px}.key-guide>span:last-child{display:none}}@media (width<=390px){.game-actions .button{padding-left:8px;padding-right:8px;font-size:10px}.play-button{min-width:58px}}@media (height<=580px) and (width>=681px){.game-header{top:18px}.climb-hud{top:96px}.height-reading{font-size:34px}.game-help{bottom:18px}.game-ui .guide-heading{font-size:17px}.game-ui .game-signature,.climbing-guide p:not(.guide-heading){display:none}.key-guide{margin-top:10px}}@media (forced-colors:active){.button.is-active{outline:2px solid highlight}}.game-ui[data-scene=dark] .brand,.game-ui[data-scene=dark] .climb-hud{--ink:#eef0e6;color:var(--ink);text-shadow:0 1px 4px #00000073}.game-ui[data-scene=dark] .brand .eyebrow,.game-ui[data-scene=dark] .climb-hud .eyebrow,.game-ui[data-scene=dark] .metric-label,.game-ui[data-scene=dark] .metric-unit,.game-ui[data-scene=dark] .input-state{color:#c9d2c8}.game-ui[data-scene=dark] .secondary-metrics{border-left-color:#eef0e647}:root{--workshop-width:354px;--range-height:24px;--thumb-size:12px;--range-columns:minmax(0, 1fr);--step-display:none;--mobile-sheet-height:56dvh;--mobile-panel-width:min(380px, 45vw)}body.touch-controls{--range-height:48px;--thumb-size:22px;--range-columns:48px minmax(0, 1fr) 48px;--step-display:inline-flex}.workshop{pointer-events:auto}.workshop-toggle{margin-left:4px}.workshop-toggle[aria-expanded=true]{background:#e7eadb;border-color:#9aa88e}.sliders-icon{border-top:1px solid;border-bottom:1px solid;width:12px;height:12px;position:relative}.sliders-icon:before,.sliders-icon:after{content:"";background:currentColor;width:3px;height:5px;position:absolute}.sliders-icon:before{top:-3px;left:3px}.sliders-icon:after{bottom:-3px;right:2px}.contact-dot{background:#819080;border-radius:50%;flex:none;width:5px;height:5px}.workshop{z-index:3;width:var(--workshop-width);background:var(--paper);border-left:1px solid #c9d1c1;flex-direction:column;max-width:100%;height:100%;display:flex;position:absolute;inset:0 0 0 auto;box-shadow:-8px 0 35px #1b30270a}.workshop-header{padding:max(14px, env(safe-area-inset-top)) 18px 11px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#f7f5ec,#eceee1);flex:none;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"heading quick close""search search search";align-items:center;gap:10px 8px;display:grid;position:relative}.workshop-heading{grid-area:heading;min-width:0}.workshop-close{grid-area:close}.workshop-header h2{letter-spacing:-.045em;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:400;line-height:1.15}.workshop-quick{grid-area:quick;align-items:center;gap:6px;display:flex}.recenter-icon{border:1.5px solid;border-radius:50%;width:13px;height:13px;position:relative}.recenter-icon:after{content:"";background:currentColor;border-radius:50%;width:3px;height:3px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.workshop-search{grid-area:search;min-width:0}.workshop-search-field{position:relative}.workshop-search input{width:100%;min-height:var(--icon-size);color:var(--ink);background:#fbfaf4 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2362706a' stroke-width='1.6'%3E%3Ccircle cx='6.8' cy='6.8' r='4.6'/%3E%3Cpath d='m10.3 10.3 4 4' stroke-linecap='round'/%3E%3C/svg%3E") 10px/14px 14px no-repeat;border:1px solid #cdd5c6;border-radius:7px;padding:6px 34px 6px 31px;font-size:12px;display:block}.workshop-search input::placeholder{color:#7b877f}.workshop-search input:focus-visible{outline-offset:1px;outline:3px solid #94662b}.touch-controls .workshop-search input{font-size:16px}.workshop-search-key{top:calc(var(--icon-size) / 2 - 9px);color:var(--muted);pointer-events:none;border-color:#c4cdbb;position:absolute;right:10px}.workshop-search input:not(:placeholder-shown)~.workshop-search-key,body[data-input-mode=touch] .workshop-search-key{display:none}.workshop-search-panel{z-index:6;background:var(--paper);overscroll-behavior:contain;border:1px solid #c3ccbd;border-radius:8px;max-height:min(430px,58vh);padding:4px;position:absolute;top:calc(100% - 6px);left:18px;right:18px;overflow:auto;box-shadow:0 14px 32px #1b30272b}.workshop-search-results{margin:0;padding:0;list-style:none}.workshop-search-option{cursor:pointer;border-radius:5px;gap:2px;padding:7px 10px;display:grid}.touch-controls .workshop-search-option{align-content:center;min-height:48px}.workshop-search-option:hover{background:#eaefdf}.workshop-search-option[aria-selected=true]{box-shadow:inset 2px 0 0 var(--teal);background:#dfe7d6}.workshop-search-label{overflow-wrap:anywhere;font-size:12px;font-weight:600;line-height:1.35}.workshop-search-path{color:var(--muted);font-size:10px;line-height:1.35}.workshop-search-option.is-disabled .workshop-search-label{opacity:.62}.game-ui .workshop-search-note{color:var(--muted);padding:8px 10px;font-size:11px;line-height:1.45}.workshop-section{border-top:1px solid var(--line);min-width:0}.workshop-section:last-child{border-bottom:1px solid var(--line)}.workshop-section-summary{min-height:var(--control-height);cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;gap:1px 10px;padding:9px 4px 9px 21px;list-style:none;display:flex;position:relative}.workshop-section-summary::-webkit-details-marker{display:none}.workshop-section-summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;transition:transform .14s;position:absolute;top:50%;left:5px;transform:translateY(-50%)rotate(-45deg)}.workshop-section[open]>.workshop-section-summary:before{transform:translate(1px,-75%)rotate(45deg)}.workshop-section-summary:hover{color:var(--teal-dark);background:#dfe7d673}.workshop-section-summary:focus-visible{outline-offset:-3px;outline:3px solid #94662b}.workshop-section-title{font-size:12px;font-weight:650;line-height:1.4}.workshop-section-hint{color:var(--muted);font-size:10px;line-height:1.4}.workshop-section-body{min-width:0;padding:4px 0 18px}.workshop-section .workshop-section .workshop-section-title{font-size:11px}.workshop-section .workshop-section:last-child{border-bottom:0}.workshop-section-body>.tuning-group,.workshop-section-body>.snapshot-history:first-child{border-top:0;margin:0;padding:0}.workshop-section-body>.tuning-group+.tuning-group{margin-top:18px}.workshop-section-body>.tuning-group>legend.visually-hidden{padding:0}.workshop-section-body>.appearance-label:first-child,.workshop-section-body>.tuning-group:first-child>legend.visually-hidden+.appearance-label{margin-top:4px}.is-found{border-radius:6px;animation:1.6s ease-out workshop-found}@keyframes workshop-found{0%,40%{box-shadow:0 0 0 3px #9d783d99}to{box-shadow:0 0 0 3px #9d783d00}}@media (prefers-reduced-motion:reduce){.workshop-section-summary:before{transition:none}.is-found{animation:none;box-shadow:0 0 0 3px #9d783d99}}.brass-period{color:var(--brass)}.workshop-scroll{overscroll-behavior:contain;scrollbar-color:#bdc8b6 transparent;scrollbar-width:thin;flex:1;min-height:0;padding:16px 18px 20px;overflow:auto}.workshop-tabs{border-bottom:1px solid var(--line);overscroll-behavior-x:contain;flex:none;grid-template-columns:repeat(6,minmax(max-content,1fr));gap:4px;padding:8px 14px;display:grid;overflow-x:auto}.workshop-tabs [role=tab]{border:1px solid var(--line);min-height:var(--control-height);background:0 0;border-radius:5px;padding:9px 4px;font-size:11px}.workshop-tabs [aria-selected=true]{border-color:var(--teal);background:var(--teal);color:var(--paper)}.workshop-pane,.appearance-editor{flex-direction:column;flex:1;min-height:0;display:flex}.appearance-scroll select,.appearance-scroll input[type=file],.snapshot-history input,.snapshot-history select{border:1px solid var(--line);width:100%;color:var(--ink);min-height:var(--control-height);background:#faf9f2;border-radius:5px;padding:10px;font-size:11px}.appearance-scroll select,.snapshot-history select{pointer-events:auto}.snapshot-history{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.snapshot-history label{margin:12px 0 6px;font-size:11px;font-weight:600;display:block}.tuning-profile-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.tuning-profile-row input,.tuning-profile-row select{min-width:0}.touch-controls .snapshot-history input,.touch-controls .snapshot-history select{font-size:16px}.tuning-profile-row .button{padding-inline:9px;font-size:10px}.snapshot-history select:focus-visible{outline-offset:4px;outline:3px solid #94662b}.game-ui .snapshot-history-help,.game-ui .snapshot-history-error{margin-top:10px;font-size:11px;line-height:1.5}.snapshot-history-help{color:var(--muted)}.snapshot-history-error{color:#743925}.game-settings-exchange{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.game-settings-exchange .button{white-space:normal;min-height:48px}.game-ui .cursor-target-help,.game-ui .rig-settings-help{color:var(--muted);margin:8px 0 14px;font-size:11px;line-height:1.5}.appearance-label{margin:20px 0 8px;font-size:11px;font-weight:600;display:block}.bone-map-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:6px 10px;display:grid}.bone-map-grid .appearance-label{margin:0}.bone-map-grid select[aria-invalid=true]{background:#fff1e8;border-color:#cc8f73}.game-ui .bone-map-issue{color:#743925;background:#fff1e8;border:1px solid #cc8f73;border-radius:5px;margin-top:10px;padding:10px;font-size:11px;line-height:1.5}.appearance-part>.appearance-label:first-child{margin-top:0}.game-ui .appearance-intro p,.game-ui .appearance-format,.game-ui .appearance-hint{color:var(--muted);margin-top:10px;font-size:11px;line-height:1.6}.appearance-state{border:1px solid var(--line);background:#e9eedf;border-radius:5px;margin:18px 0 24px;padding:12px}.appearance-state[data-kind=error]{background:#fff1e8;border-color:#cc8f73}.appearance-source{overflow-wrap:anywhere;font-size:12px;font-weight:600}.game-ui .appearance-status,.game-ui .arm-ik-status{margin-top:7px;font-size:11px;line-height:1.5}.workshop-section-body .visual-alignment,.workshop-section-body .arm-ik-controls,.arm-ik-actions{margin-top:12px}.arm-ik-actions .button{padding-inline:9px;font-size:10px}.appearance-footer .button{padding-inline:7px;font-size:10px}.section-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px;display:flex}.section-heading h3{font-size:11px;font-weight:650;line-height:1.4}.section-heading>span{color:var(--muted);font-family:var(--mono);font-size:9px}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.practice-button{min-height:var(--control-height);text-align:left;background:#f8f7ee;border:1px solid #d3dacb;border-radius:5px;padding:10px 11px 10px 24px;font-size:11px;font-weight:500;line-height:1.3;position:relative}.practice-button:before{content:"";background:#9ba995;border-radius:50%;width:4px;height:4px;position:absolute;top:calc(50% - 2px);left:11px}.practice-button:hover{background:#eaefdf;border-color:#9aaa92}.practice-button[aria-pressed=true]{color:#294e37;background:#e0e8d7;border-color:#5a7860;box-shadow:inset 0 0 0 .5px #5a7860}.practice-button[aria-pressed=true]:before{background:#426347}.game-ui .practice-description{min-height:30px;color:var(--muted);margin-top:10px;font-size:10px;line-height:1.6}.telemetry{background:#e9eddf;border:1px solid #d9dfd0;border-radius:7px;margin-top:12px;padding:10px 13px 12px}.telemetry .section-heading{margin-bottom:6px}.telemetry-meters{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.contact-reading{white-space:nowrap;align-items:center;gap:4px;display:flex}.contact-dot{background:#587850}.effort-label{color:#4d6254;justify-content:space-between;font-size:10px;line-height:1.5;display:flex}.effort-label>span{color:var(--ink);font-family:var(--mono);font-variant-numeric:tabular-nums}.telemetry meter{appearance:none;background:#d1d9c8;border:none;border-radius:3px;width:100%;height:6px;margin:5px 0 0;display:block}.telemetry meter::-webkit-meter-bar{height:6px;box-shadow:none;background:#d1d9c8;border:none;border-radius:3px}.telemetry meter::-webkit-meter-optimum-value{background:#658469;border-radius:3px}.telemetry meter::-moz-meter-bar{background:#658469;border-radius:3px}.tuning-heading{margin:20px 0 12px}.tuning-heading h3{letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:19px;font-weight:400;line-height:1.3}.game-ui .tuning-heading p{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.5}.tuning-group{border:none;border-top:1px solid var(--line);min-width:0;margin:0 0 19px;padding:15px 0 0}.tuning-group legend{color:#5b6c5b;font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;padding:0 10px 0 0;font-size:9px;font-weight:500;line-height:1.4}.tuning-field{margin-bottom:12px;position:relative}.tuning-field:last-child{margin-bottom:0}.tuning-label-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.tuning-label-row label{cursor:help;min-width:0;font-size:11px;line-height:1.5}.tuning-label-row output{color:#476346;font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;flex:none;font-size:10px;line-height:1.5}.range-controls{grid-template-columns:var(--range-columns);align-items:center;gap:6px;margin-top:3px;display:grid}.range-step{display:var(--step-display);touch-action:manipulation;padding:0;font-size:20px;line-height:1}.range-step:disabled{cursor:default;opacity:.4}.tuning-field input[type=range]{width:100%;height:var(--range-height);appearance:none;accent-color:var(--teal);cursor:pointer;background:0 0;border:none;border-radius:4px;margin:0;padding:0;display:block}.tuning-field input[type=range]::-webkit-slider-runnable-track{background:#cbd5c2;border-radius:3px;height:3px}.tuning-field input[type=range]::-moz-range-track{background:#cbd5c2;border-radius:3px;height:3px}.tuning-field input[type=range]::-webkit-slider-thumb{box-sizing:border-box;width:var(--thumb-size);height:var(--thumb-size);margin-top:calc((3px - var(--thumb-size)) / 2);border:2px solid var(--paper);appearance:none;background:#567154;border-radius:50%;box-shadow:0 0 0 1px #71866a}.tuning-field input[type=range]::-moz-range-thumb{box-sizing:border-box;width:var(--thumb-size);height:var(--thumb-size);border:2px solid var(--paper);background:#567154;border-radius:50%;box-shadow:0 0 0 1px #71866a}.tuning-field input[type=range]:hover::-webkit-slider-thumb{background:var(--teal-dark);box-shadow:0 0 0 3px #365e5629}.tuning-field input[type=range]:hover::-moz-range-thumb{background:var(--teal-dark);box-shadow:0 0 0 3px #365e5629}.tuning-field.is-inactive .tuning-label-row{opacity:.6}.tuning-field input[type=range]:disabled{opacity:.4;cursor:not-allowed}.inactive-reason{color:#7b683f;font-size:10px;line-height:1.5;display:none}.is-inactive .inactive-reason{display:block}.debug-button{min-height:var(--icon-size);border-radius:calc(var(--icon-size) / 2);background:0 0;border:1px solid #d1d8c9;align-items:center;gap:7px;padding:0 8px 0 11px;font-size:11px;font-weight:600;display:inline-flex}.debug-button:hover{background:#e4e8db;border-color:#9dab96}.debug-button[aria-pressed=true]{border-color:var(--teal)}.toggle-track{background:#dbe1d1;border:1px solid #b6c2ad;border-radius:12px;width:29px;height:16px;position:relative}.toggle-track:after{content:"";background:#6b7b61;border-radius:50%;width:10px;height:10px;transition:transform .14s;position:absolute;top:2px;left:2px}.debug-button[aria-pressed=true] .toggle-track{border-color:var(--teal);background:var(--teal)}.debug-button[aria-pressed=true] .toggle-track:after{background:#f0f3e8;transform:translate(13px)}.workshop-footer{padding:15px 18px max(16px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#f5f4eb;flex:none;box-shadow:0 -8px 18px #2c402c08}.persistence-actions{grid-template-columns:1fr 1fr auto;gap:6px;display:grid}.persistence-actions .button{padding-left:9px;padding-right:9px;font-size:10px}.physics-footer{align-items:center;gap:12px;display:flex}.physics-footer>.defaults-tuning{flex:none}.game-ui .workshop-footer.physics-footer p{text-align:left;margin:0}.game-ui .workshop-footer .appearance-state{text-align:center;background:0 0;border:0;margin:8px 0 0;padding:0}.game-ui .workshop-footer .appearance-state p{margin:0;font-size:10px;line-height:1.45}.workshop-footer .appearance-state[data-kind=draft] p{color:#7a4c18}.workshop-footer .appearance-state[data-kind=error] p{color:#743925}.game-ui .workshop-footer p{color:var(--muted);text-align:center;margin-top:10px;font-size:9px;line-height:1.4}@media (width>=1040px){body.workshop-open #game,body.workshop-open .game-chrome{width:calc(100% - var(--workshop-width))}body.workshop-open .ui-notice{max-width:calc(100% - var(--workshop-width) - 2 * var(--game-gutter))}}@media (width>=1600px){:root{--workshop-width:374px}}@media (width<=1039px){.workshop{width:var(--mobile-panel-width);box-shadow:-8px 0 24px #182f2624}body.workshop-open #game,body.workshop-open .game-chrome{width:calc(100% - var(--mobile-panel-width))}.workshop-header{grid-template-areas:"search quick close";gap:6px;padding:8px 16px}.workshop-heading{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.workshop-search input{padding-right:10px}.workshop-search-panel{top:calc(100% - 4px);left:16px;right:16px}.debug-button{padding:0 12px}.debug-button .toggle-track{display:none}.debug-button[aria-pressed=true]{color:var(--paper);background:var(--teal)}.workshop-tabs{padding:6px 16px}.workshop-scroll{padding:12px 16px}.workshop-footer{padding:8px 12px max(10px, env(safe-area-inset-bottom))}.game-ui .workshop-footer p{margin-top:6px}body.workshop-open .game-header{flex-direction:row;top:8px;left:12px;right:12px}body.workshop-open .game-toolbar{width:100%}body.workshop-open .game-actions{flex-wrap:nowrap;justify-content:space-between}body.workshop-open .workshop-toggle{margin-left:auto}body.workshop-open .brand,body.workshop-open .climb-hud,body.workshop-open .game-help,body.workshop-open [data-action=pause],body.workshop-open [data-action=reset]{display:none}body.workshop-open .ui-notice{right:calc(var(--mobile-panel-width) + 12px);width:auto;max-height:35dvh;bottom:90px;left:12px;overflow:auto}}@media (width<=1039px) and (orientation:portrait){.workshop{width:100%;height:var(--mobile-sheet-height);border-top:1px solid #c9d1c1;border-left:none;border-radius:14px 14px 0 0;inset:auto 0 0;box-shadow:0 -8px 24px #182f2624}body.workshop-open #game,body.workshop-open .game-chrome{width:100%;height:calc(100% - var(--mobile-sheet-height))}body.workshop-open .ui-notice{right:12px;bottom:calc(var(--mobile-sheet-height) + 8px);width:auto;max-height:28dvh;left:12px}.workshop-search-panel{max-height:calc(var(--mobile-sheet-height) - 120px)}}@media (width<=680px){.workshop-toggle{margin-left:auto}}@media (width<=390px){.workshop-toggle{gap:5px}.workshop-header,.workshop-scroll{padding-left:14px;padding-right:14px}.workshop-search-panel{left:14px;right:14px}}@media (forced-colors:active){.tuning-field input[type=range],.telemetry meter{appearance:auto}.practice-button[aria-pressed=true],.workshop-toggle[aria-expanded=true],.debug-button[aria-pressed=true],.workshop-search-option[aria-selected=true]{outline:2px solid highlight}.workshop-search-option[aria-selected=true]{outline-offset:-2px}}.event-presenter,.event-presenter *,.event-presenter :before,.event-presenter :after{box-sizing:border-box}.event-presenter{z-index:30;pointer-events:auto;color:var(--ink,#243d3c);justify-content:center;align-items:center;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;display:flex;position:fixed;inset:0}.event-presenter-backdrop{background:#141e1c94;position:fixed;inset:0}.event-presenter-dialog{z-index:1;width:min(480px, calc(100vw - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)));max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));border:1px solid var(--line,#d9ddd2);background:var(--paper,#f3f1e8);border-radius:10px;position:relative;overflow:auto;box-shadow:0 20px 60px #141e1c59}.event-presenter-title{margin:0 0 12px;font-size:22px;line-height:1.3}.event-presenter-message{white-space:pre-wrap;color:var(--muted,#62706a);margin:0 0 24px;font-size:16px;line-height:1.55}.event-presenter-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.event-presenter-button{border:1px solid var(--line,#d9ddd2);background:var(--paper,#f3f1e8);min-width:48px;min-height:48px;color:var(--ink,#243d3c);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:8px;padding:10px 22px;font-size:16px}.event-presenter-button-primary{border-color:var(--teal-dark,#254a43);background:var(--teal,#365e56);color:#f3f1e8}.event-presenter-button:focus-visible{outline:3px solid var(--brass,#9d783d);outline-offset:3px}.event-presenter--video{background:#000}.event-presenter-video-shell{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.event-presenter-video{background:#000;width:100%;height:100%}.event-presenter-video-controls{z-index:1;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 16px max(16px, env(safe-area-inset-left));background:linear-gradient(#000000a6,#0000);flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex;position:absolute;top:0;left:0;right:0}.event-presenter-video-controls .event-presenter-button{color:#f3f1e8;background:#243d3ccc;border-color:#ffffff40}.event-presenter-play{z-index:1;min-width:200px;padding:14px 32px;font-size:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.event-presenter-status{left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom));z-index:1;text-align:center;color:#f3f1e8;text-shadow:0 1px 4px #0009;margin:0;font-size:16px;line-height:1.4;position:absolute}.event-presenter-status:empty{display:none}.level-editor{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.level-editor [hidden],.level-overlay[hidden],.level-guides [hidden]{display:none!important}.level-editor .button,.level-editor select,.level-editor input:not([type=checkbox]),.level-editor textarea,.level-checkbox{min-height:48px}.level-editor input:not([type=checkbox]),.level-editor select,.level-editor textarea{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#faf9f2;border-radius:5px;padding:8px;font-family:inherit;font-size:16px}.level-editor .button{white-space:normal;justify-content:center;min-width:48px;padding:8px 10px;font-size:12px;line-height:1.25}.level-editor .button[aria-pressed=true]{border-color:var(--teal);color:var(--paper);background:var(--teal)}.level-editor :disabled{cursor:not-allowed;opacity:.55}.level-top{border-bottom:1px solid var(--line);background:var(--paper);flex:none;padding:10px 16px}.level-editor .level-save-status{margin:8px 0 0;font-size:11px;line-height:1.4}.level-save-status[data-dirty=true]{color:#7a4c18}.level-scroll{overflow-x:hidden}.level-action-row,.level-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.level-editor .tuning-group{min-width:0}.level-editor .level-tools{border-top:0;margin:0 0 16px;padding:0}.level-palette,.level-entity-palette,.level-enemy-palette{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px;display:grid}.level-enemy-palette{margin-top:6px}.level-editor .level-palette-label{margin:14px 0 6px}.level-drawing-controls{margin-top:8px}.level-drawing-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.level-editor .level-preset{flex-direction:column;align-items:center;gap:3px;min-height:60px;padding:6px 4px;font-size:11px;display:flex}.level-preset svg{fill:currentColor;flex:none;width:24px;height:24px}.level-set-piece-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px;display:grid}.level-editor .level-set-piece{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;min-height:84px;padding:6px 4px;display:flex}.level-set-piece-thumb{flex:none;width:100%;height:44px}.level-set-piece-terrain{stroke:#173f3573;stroke-width:1px;stroke-linejoin:round}.level-set-piece-illusion{fill-opacity:.45;stroke-dasharray:2 2}.level-set-piece-label{fill:#f8f3e4d9;stroke:#173f35;stroke-width:1px}.level-set-piece-undo{width:100%;margin-top:12px}.level-camera-controls{grid-template-columns:48px 48px repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.level-editor .level-help{color:var(--muted);margin:10px 0;font-size:11px;line-height:1.5}.level-editor .level-selection-name{overflow-wrap:anywhere;margin:0 0 12px;font-size:11px;line-height:1.5}.level-field-grid{margin:12px 0}.level-field{flex-direction:column;gap:6px;min-width:0;font-size:11px;font-weight:600;display:flex}.level-checkbox{cursor:pointer;align-items:center;gap:12px;margin-top:8px;font-size:14px;display:flex}.level-checkbox input{width:24px;height:24px;accent-color:var(--teal);margin:0}.level-delete,.level-clear-labels{width:100%;margin-top:12px}.level-editor .tuning-profile-row{grid-template-columns:minmax(0,1fr)}.level-save-dock{margin-top:8px}.level-save-dock .tuning-profile-row{grid-template-columns:minmax(0,1fr) auto}.level-save-dock label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.level-editor .snapshot-history select:focus-visible,.level-editor select:focus-visible{outline-offset:2px;outline:3px solid #94662b}.level-overlay{z-index:1;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;overscroll-behavior:contain;background-image:linear-gradient(90deg,#365e5621 1px,#0000 1px),linear-gradient(#365e5621 1px,#0000 1px);position:fixed;overflow:hidden}.level-overlay:focus-visible{outline:2px solid var(--brass);outline-offset:-2px}.level-overlay[data-tool=pan]{cursor:grab}.level-overlay[data-tool=pan]:active{cursor:grabbing}.level-guides{pointer-events:none;width:100%;height:100%;display:block}.level-selection,.level-ghost{stroke-width:2px;stroke-linejoin:round}.level-selection{fill:#1a73671a;stroke:#075a50}.level-ghost{fill:#bc853533;stroke:#9a5c08;stroke-dasharray:6 4}.level-illusion-outline{stroke-dasharray:3 4}.level-drawing-line,.level-drawing-links,.level-drawing-nodes,.level-drawing-first{fill:none;stroke:#9a5c08;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.level-drawing-links{stroke-dasharray:5 4;opacity:.65}.level-drawing-first{fill:#bc85351f;stroke-width:1.5px}.level-drawing-first.level-drawing-close{fill:#1a736740;stroke:#075a50}.level-gizmo-layer,.level-gizmo-selection-layer,.level-gizmo-ghost-layer{pointer-events:none}.level-gizmo circle,.level-gizmo line,.level-gizmo rect,.level-gizmo path{vector-effect:non-scaling-stroke}.level-gizmo-start{fill:#f8f3e4;stroke:#12594d;stroke-width:2px}.level-gizmo-trigger .level-gizmo-region{fill:#94662b1f;stroke:#94662b;stroke-width:1.5px;stroke-dasharray:5 4}.level-gizmo-trigger circle:last-of-type{fill:#94662b}.level-gizmo-direction{stroke:#12594d;stroke-width:2px}.level-gizmo-flag path{fill:#b23b2e}.level-gizmo-flag line{stroke:#4a3a1e;stroke-width:2px}.level-gizmo-updraft{fill:none;stroke:#125f66;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.level-enemy-glyph-body{fill:currentColor;stroke:none}.level-enemy-glyph-detail{fill:none;stroke:#f8f3e4;stroke-width:1.5px;stroke-linecap:round}.level-gizmo-enemy{color:#7a4534}.level-gizmo-enemy .level-gizmo-region{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-dasharray:3 3}.level-gizmo-patrol{stroke:currentColor;stroke-width:1.5px;stroke-dasharray:4 4}.level-gizmo-selected.level-gizmo-enemy{color:#075a50}.level-gizmo-ghost.level-gizmo-enemy{color:#9a5c08}.level-gizmo-selected{filter:drop-shadow(0 0 #0000)}.level-gizmo-selected .level-gizmo-region,.level-gizmo-selected.level-gizmo-start{stroke:#075a50;stroke-width:3px}.level-gizmo-ghost{opacity:.6}.level-gizmo-ghost .level-gizmo-region,.level-gizmo-ghost.level-gizmo-start{stroke-dasharray:6 4}.level-guides text{fill:#173f35;stroke:#f8f3e4;stroke-width:3px;paint-order:stroke;font:700 11px Segoe UI,sans-serif}.level-set-piece-ghost .level-set-piece-terrain{fill-opacity:.5;stroke:#9a5c08;stroke-width:2px;stroke-dasharray:6 4}.level-set-piece-ghost .level-set-piece-label{fill:#f8f3e499;stroke:#9a5c08;stroke-dasharray:4 3}.level-guides .level-set-piece-ghost text{fill:#173f35;stroke:none;font:600 16px ui-monospace,monospace}.level-set-piece-base{stroke:#9a5c08;stroke-width:2px;stroke-dasharray:6 4}.level-set-piece-snapped .level-set-piece-base{stroke:#075a50;stroke-width:3px;stroke-dasharray:none}.level-event-list{flex-direction:column;gap:10px;margin:10px 0;padding:0;list-style:none;display:flex}.level-event-row{border:1px solid var(--line);background:#faf9f2;border-radius:6px;flex-direction:column;gap:8px;padding:10px;display:flex}.level-event-row-head{align-items:center;gap:6px}.level-event-row-label{flex:1;min-width:0;font-size:12px;font-weight:600}.level-event-row-head .button{min-width:44px;padding:6px}.level-event-add{align-items:end}.level-event-new-type-label{flex:1}.level-event-status{margin:8px 0 0}@media (width<=600px){.level-top{padding:8px 12px}.level-editor .button{padding-inline:6px}}@media (width<=1039px) and (orientation:landscape){.level-set-piece-grid,.level-action-row,.level-field-grid,.level-camera-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}.skeleton-editor{min-width:0}.skeleton-editor select,.skeleton-editor input[type=text],.skeleton-editor input[type=number]{width:100%;min-height:var(--control-height);border:1px solid var(--line);color:var(--ink);background:#faf9f2;border-radius:5px;padding:10px;font-family:inherit;font-size:11px}.skeleton-editor select[multiple]{min-height:116px;padding:6px}.touch-controls .skeleton-editor select,.touch-controls .skeleton-editor input[type=text],.touch-controls .skeleton-editor input[type=number]{font-size:16px}.skeleton-intro{margin-bottom:12px}.skeleton-state{margin:0 0 14px}.game-ui .skeleton-status{font-size:11px;line-height:1.5}.skeleton-action-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.skeleton-action-row-tight{grid-template-columns:repeat(2,minmax(0,1fr))}.skeleton-diagram-panel{margin-top:14px}.skeleton-diagram-shell{border:1px solid var(--line);background:#fcfbf6;border-radius:8px;overflow:hidden}.skeleton-diagram{width:100%;height:auto;display:block}.skeleton-diagram [data-bone-id]{cursor:pointer}.skeleton-diagram-hint,.skeleton-layer-label,.skeleton-selection-note,.skeleton-hair-summary{color:var(--muted);margin-top:10px;font-size:11px;line-height:1.6}.skeleton-meta-row{justify-content:space-between;align-items:center;gap:8px;margin-top:14px;display:flex}.skeleton-token-label{color:var(--muted);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:9px}.skeleton-token{overflow-wrap:anywhere;color:#34534d;font-family:var(--mono);font-size:10px}.skeleton-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;display:grid}.skeleton-inline-grid{gap:0 10px;display:grid}.skeleton-inline-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.skeleton-inline-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.skeleton-toggle-row{grid-template-columns:minmax(0,1fr) minmax(0,132px) auto;align-items:center;gap:8px;margin-top:12px;display:grid}.skeleton-toggle{min-height:var(--control-height);color:var(--ink);align-items:center;gap:8px;font-size:11px;display:flex}.skeleton-toggle input[type=checkbox],.skeleton-direction-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--teal);margin:0}.skeleton-subsection{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.skeleton-subsection h4{font-size:11px;font-weight:650}.skeleton-direction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:10px;display:grid}.skeleton-direction-toggle{min-height:var(--control-height);border:1px solid var(--line);background:#faf9f2;border-radius:5px;align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}.skeleton-weight-rows{gap:8px;margin-top:12px;display:grid}.skeleton-weight-row{grid-template-columns:minmax(0,1fr) 110px;gap:8px;display:grid}.skeleton-weights-subsection.is-disabled{opacity:.65}.touch-controls .skeleton-direction-toggle,.touch-controls .skeleton-toggle,.touch-controls .skeleton-action-row .button,.touch-controls .skeleton-token{font-size:16px}@media (width<=700px){.skeleton-form-grid,.skeleton-inline-grid-2,.skeleton-inline-grid-3,.skeleton-action-row,.skeleton-action-row-tight,.skeleton-direction-grid,.skeleton-weight-row,.skeleton-toggle-row{grid-template-columns:1fr}}.directional-editor{min-width:0}.directional-editor [hidden],.directional-viewport-guides[hidden]{display:none!important}.directional-check{align-items:start;gap:8px;margin:10px 0;font-size:12px;line-height:1.5;display:flex}.directional-check input{flex:none;margin-top:3px}.directional-error{color:#862d22;background:#fff0e8;border:1px solid #9b3b2c;padding:10px;font-size:12px;line-height:1.5}.directional-diagram{width:100%;max-width:360px;height:auto;margin:10px auto;display:block;overflow:visible}.directional-circle{fill:#faf9f2;stroke:#879a99}.directional-sector{fill:#c0dfdf;stroke:#346b75}.directional-hold{fill:none;stroke:#357d48;stroke-width:5px;stroke-dasharray:5 3}.directional-limits{fill:none;stroke:#a65124;stroke-width:7px;stroke-linecap:round}.directional-limit-end{fill:#a65124}.directional-neutral,.directional-boundary-line{stroke:#819393;stroke-width:1px}.directional-neutral{stroke-dasharray:2 3}.directional-target,.directional-displayed{stroke:#833b81;stroke-width:2px}.directional-target{stroke-dasharray:4 3}.directional-displayed{stroke-width:3px}.directional-aim-line{stroke:#224456;stroke-width:1.5px}.directional-boundary-handle,.directional-aim-handle{fill:#fffdf5;stroke:#224456;stroke-width:2px;cursor:grab;touch-action:none}.directional-aim-handle{fill:#224456}.directional-boundary-handle[aria-disabled=true],.directional-aim-handle[aria-disabled=true]{opacity:.45;cursor:default}.directional-boundary-handle:focus-visible,.directional-aim-handle:focus-visible{outline-offset:3px;outline:3px solid #a65124}.directional-cardinal{fill:#405b60;text-anchor:middle;dominant-baseline:middle;pointer-events:none;font:10px sans-serif}.directional-legend{gap:5px;margin:10px 0;padding:0;font-size:11px;list-style:none;display:grid}.directional-legend li:before{vertical-align:middle;content:"";border-top:4px solid;width:18px;margin-right:7px;display:inline-block}.directional-selection-key{color:#346b75}.directional-hold-key{color:#357d48}.directional-rotation-key{color:#a65124}.directional-target-key{color:#833b81}.directional-legend .directional-hold-key:before{border-top-style:dashed}.directional-readouts{border:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;font-size:11px;display:grid}.directional-readouts dt{color:var(--muted)}.directional-readouts dd{font-variant-numeric:tabular-nums;margin:5px 0 0}.directional-aim-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:8px;margin-top:12px;font-size:12px;display:grid}.directional-editor input[type=number]{width:100%;min-width:0;min-height:var(--control-height);border:1px solid var(--line);color:var(--ink);background:#faf9f2;border-radius:5px;padding:8px;font-family:inherit;font-size:12px}.directional-editor input[aria-invalid=true]{border-color:#9b3b2c}.directional-editor input:disabled{opacity:.55}.directional-settings{min-width:0;margin-top:18px;font-size:12px}.directional-settings>label:not(.directional-check){margin:12px 0 7px;display:block}.directional-pivot-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.directional-pivot-fields input{margin-top:7px;display:block}.directional-references{border:1px solid var(--line);min-width:0;margin:15px 0 0;padding:8px 10px}.directional-references>div{overflow-wrap:anywhere;max-height:210px;overflow-y:auto}.directional-table-scroll{overscroll-behavior-x:contain;max-width:100%;margin-top:16px;overflow-x:auto}.directional-table{border-collapse:collapse;width:100%;font-size:11px}.directional-table caption{text-align:left;padding:0 0 9px;line-height:1.5}.directional-table th,.directional-table td{border:1px solid var(--line);text-align:left;min-width:94px;padding:5px}.directional-table th:first-child{z-index:1;background:#f3f1e8;min-width:90px;position:sticky;left:0}.directional-table .is-selected>th,.directional-table .is-selected>td{background:#d8e9e5}.directional-table input[type=number]{min-width:86px}.directional-reset{width:100%;margin-top:12px}.directional-viewport-guides{z-index:1;pointer-events:none;position:fixed;overflow:hidden}.directional-viewport-guides svg{width:100%;height:100%;display:block}.directional-viewport-guides path,.directional-viewport-guides circle{fill:none;stroke-width:2px}.directional-pivot-guide{stroke:#ffd56a}.directional-socket-guide{stroke:#b5f1f2}.directional-viewport-guides text{fill:#fffdf5;stroke:#1b3135;stroke-width:3px;paint-order:stroke;font:12px sans-serif}.touch-controls .directional-editor input[type=number],.touch-controls .directional-editor .button{font-size:16px}.touch-controls .directional-check{min-height:32px;font-size:14px}.character-editor{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.character-editor select{width:100%;min-width:0;min-height:var(--control-height);border:1px solid var(--line);color:var(--ink);background:#faf9f2;border-radius:5px;padding:10px;font-family:inherit;font-size:11px}.character-primary{margin-bottom:16px}.character-primary>.appearance-label:first-child{margin-top:0}.character-quick-start{margin-top:12px}.game-ui .character-intro p,.game-ui .character-rig-counts,.game-ui .character-status,.game-ui .character-example-error{margin-top:10px;font-size:11px;line-height:1.6}.character-intro p{color:var(--muted)}.character-action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.character-files .character-action-row{margin-top:10px}.character-editor .button{white-space:normal;min-width:0;padding-inline:8px;font-size:11px}.character-load-example,.character-use-avatar{width:100%}.character-arm-forward-reset{margin-top:10px}.character-example-error{color:#743925;background:#fff1e8;border:1px solid #cc8f73;border-radius:5px;padding:10px}.game-ui .character-external-warning{color:#7a4c18}.touch-controls .character-editor select,.touch-controls .character-editor .button{font-size:16px}.character-model input[type=file],.character-hammer input[type=file],.character-pot input[type=file]{width:100%;min-width:0;margin-top:6px;font-size:11px}.character-unmapped{margin-top:10px;font-size:11px;line-height:1.5}.character-unmapped ul{max-height:160px;margin:6px 0 0;padding-left:18px;overflow:auto}.character-model .character-action-row,.character-hammer-remove,.character-pot-remove{margin-top:12px}.character-hammer-remove,.character-pot-remove{width:100%}.character-shading-modes,.character-grip-modes{gap:18px;margin-bottom:10px;font-size:12px;display:flex}.character-shading-modes label,.character-grip-modes label,.character-outline-toggle{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.character-outline-toggle{margin-top:10px;font-size:12px}.character-shading input[type=color]{width:64px;height:var(--control-height);border:1px solid var(--line);background:#faf9f2;border-radius:5px;padding:2px;display:block}.sprite-editor{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.sprite-editor select,.sprite-editor input[type=file],.sprite-editor input[type=text]{width:100%;min-height:var(--control-height);border:1px solid var(--line);color:var(--ink);background:#faf9f2;border-radius:5px;padding:10px;font-family:inherit;font-size:11px}.touch-controls .sprite-editor select,.touch-controls .sprite-editor input[type=file],.touch-controls .sprite-editor input[type=text]{font-size:16px}.game-ui .sprite-intro p,.game-ui .sprite-editor .appearance-format{color:var(--muted);margin-top:10px;font-size:11px;line-height:1.6}.sprite-layers{margin:16px 0}.sprite-layers .appearance-label{margin-top:0}.sprite-mode-banner{border:1px solid var(--line);background:#e9eedf;border-radius:5px;margin-top:16px;padding:12px}.game-ui .sprite-mode-status{font-size:11px;line-height:1.6}.sprite-preview-2d{width:100%;margin-top:10px}.sprite-external-warning{color:#7a4c18}.sprite-layer-fields,.sprite-layer-transform,.sprite-flipbook,.sprite-files{margin-top:20px}.sprite-flipbook input[type=number]{width:100%;min-height:var(--control-height);border:1px solid var(--line);color:var(--ink);background:#faf9f2;border-radius:5px;padding:10px;font-family:inherit;font-size:11px}.touch-controls .sprite-flipbook input[type=number]{font-size:16px}.sprite-flipbook-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.sprite-flipbook-frame{margin-top:10px;font-size:11px;line-height:1.6;display:block}.sprite-flipbook-single{width:100%;margin-top:10px}.sprite-delete-layer{width:100%;margin:6px 0 4px}.sprite-action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.sprite-footer .button{padding-inline:7px;font-size:10px}.touch-controls .sprite-footer .button,.touch-controls .sprite-action-row .button,.touch-controls .sprite-preview-2d,.touch-controls .sprite-flipbook-single,.touch-controls .sprite-delete-layer{font-size:16px}.project-editor{flex-direction:column;flex:1;min-height:0;display:flex}.project-scroll input[type=text],.project-scroll input[type=password],.project-scroll input[type=file],.project-scroll select,.project-scroll textarea{border:1px solid var(--line);width:100%;color:var(--ink);min-height:var(--control-height);background:#faf9f2;border-radius:5px;padding:10px;font-size:11px}.project-scroll textarea{resize:vertical;font-family:var(--mono);line-height:1.35}.project-summary>.appearance-label:first-child{margin-top:0}.project-status{border:1px solid var(--line);overflow-wrap:anywhere;background:#e9eedf;border-radius:5px;margin:10px 0 0;padding:8px 10px;font-size:11px;line-height:1.5}.project-status[data-dirty=true]{background:#fbf3de;border-color:#d4b46b}.project-server-tools>.button,.project-signin>.button{width:100%;margin-top:10px}.project-fields{gap:4px;margin-bottom:12px;display:grid}.project-field{min-height:var(--control-height);justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.project-field label{flex:1}.project-field-color input{border:1px solid var(--line);background:0 0;border-radius:4px;width:48px;height:28px;padding:0}.project-field-text input{max-width:55%}.project-field-boolean{justify-content:flex-start}.project-clip{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;margin-top:6px;padding-top:10px;display:grid}.project-clip>.appearance-label,.project-clip>.tuning-field{grid-column:1/-1;margin:0}.project-clip>select:only-of-type:last-of-type{grid-column:1/-1}.project-enemy{margin-top:12px}.project-media-list{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.project-media-list li{border:1px solid var(--line);border-radius:5px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 8px;padding:8px;font-size:11px;display:grid}.project-media-path{overflow-wrap:anywhere;font-weight:600}.project-media-detail{color:var(--muted);grid-column:1}.project-media-list .button{grid-area:1/2/span 2}.project-media-empty{color:var(--muted)}.project-library-part+.project-library-part,.project-library-bones{margin-top:12px}.project-library-list li{grid-template-columns:minmax(0,1fr)}.project-library-list .button{grid-area:auto}.project-library-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.project-publish-status a{color:var(--teal-dark);font-weight:600}
