:root{--bg: #02030a;--panel: rgba(12, 16, 30, .85);--panel-border: rgba(120, 160, 255, .18);--text: #e8eeff;--muted: #8a97b8;--accent: #4cc9f0;--accent2: #ffd166;--danger: #ef476f;--right-rail: calc(80px * var(--ui-scale, 1) + 20px);--gizmo-box: 124px;--chrome-top: calc(16px + var(--ribbon-h, 0px) + var(--toolbar-h, 54px))}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,-apple-system,sans-serif;overflow:hidden}.app{position:fixed;top:0;right:0;bottom:0;left:0}.app canvas{display:block;touch-action:none}button{font-family:inherit;cursor:pointer}.toolbar-stack{position:absolute;top:calc(16px + var(--ribbon-h, 0px));left:16px;z-index:5;display:flex;flex-direction:column;gap:6px;max-width:calc(100% - 270px)}.toolbar.riga-a,.toolbar.riga-b{align-self:flex-start}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:calc(100% - 270px)}.toolbar-stack>.toolbar{max-width:100%}.icon-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--panel);border:1px solid var(--panel-border);color:var(--text);border-radius:9px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.icon-btn:not(.big):not(.sm){width:34px;height:34px;font-size:16px}.icon-btn.big{width:38px;height:38px;font-size:18px}.icon-btn.sm{width:22px;height:22px;font-size:11px;border-radius:6px;color:var(--muted)}.icon-btn.sm:hover{color:var(--danger);border-color:var(--danger)}.icon-btn.active,.tool-btn.active{background:var(--accent);color:#02030a;border-color:var(--accent)}.icon-btn.danger{color:var(--danger);border-color:#ef476f66}.icon-btn.danger:hover{background:#ef476f26;border-color:var(--danger)}.tool-btn{height:38px;padding:0 14px;font-size:12px;font-weight:600;background:var(--panel);border:1px solid var(--panel-border);color:var(--text);border-radius:9px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.model-toggle{display:flex;height:38px;border-radius:9px;overflow:hidden;border:1px solid var(--panel-border);background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.model-toggle button{padding:0 13px;font-size:12px;font-weight:600;background:transparent;border:none;color:var(--muted)}.model-toggle button.on{background:linear-gradient(135deg,#4cc9f0,#4361ee);color:#fff}.tool-btn.star.active,.icon-btn.big.star.active{background:#ffd1662e;border-color:var(--accent2);color:var(--accent2)}.tool-slider{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 11px;font-size:11px;font-weight:600;color:var(--text);background:var(--panel);border:1px solid var(--panel-border);border-radius:9px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.tool-slider input[type=range]{width:74px;accent-color:var(--accent);cursor:pointer}.tool-slider{gap:6px}.tool-slider .slider-step{width:20px;height:20px;font-size:13px}.tool-slider .val{color:var(--accent2);min-width:34px;text-align:right;font-variant-numeric:tabular-nums}.tool-select{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 11px;font-size:11px;font-weight:600;color:var(--text);background:var(--panel);border:1px solid var(--panel-border);border-radius:9px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.tool-select select{max-width:150px;height:26px;padding:0 6px;border-radius:6px;background:#ffffff0f;color:var(--text);border:1px solid var(--panel-border);font-size:11.5px;cursor:pointer}button.wide.accentbtn{color:var(--accent2);border-color:#ffd16666}button.wide.accentbtn:hover{background:#ffd16624}.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 40px #00000080}.left-panel{position:absolute;top:calc(var(--chrome-top) + 10px);left:16px;width:300px;z-index:6;max-height:calc(100% - var(--chrome-top) - 100px);overflow-y:auto;padding:6px 18px 18px}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:12px 0 6px;position:sticky;top:0;background:var(--panel)}.panel-title{font-size:15px;font-weight:700}.panel section{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.06)}.panel section:last-child{border-bottom:none;margin-bottom:0}.panel h2{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--accent);margin:6px 0 10px;display:flex;align-items:center;gap:8px}.swatch{display:inline-block;width:13px;height:13px;border-radius:50%;border:1px solid rgba(255,255,255,.4);flex:none}.slider{display:block;margin:10px 0}.slider-head{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px}.slider-head .val{color:var(--accent2);font-variant-numeric:tabular-nums}.slider-row{display:flex;align-items:center;gap:6px}.slider-row input[type=range]{flex:1;min-width:0}.slider-step{flex:none;width:22px;height:22px;padding:0;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;border-radius:6px;color:var(--muted);background:#ffffff0f;border:1px solid var(--panel-border)}.slider-step:hover:not(:disabled){color:var(--text);background:#ffffff21;border-color:var(--accent)}.slider-step:disabled{opacity:.3;cursor:default}input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer}.field-row{display:flex;gap:10px;margin:10px 0}.field-row>.field{flex:1;margin:0}.field{display:block;margin:10px 0}.field>span{display:block;font-size:13px;margin-bottom:5px}.field select{width:100%;padding:8px 10px;border-radius:8px;font-size:13px;cursor:pointer;background:#ffffff0f;border:1px solid var(--panel-border);color:var(--text)}.field select:focus{outline:none;border-color:var(--accent)}.readout{margin:10px 0;padding:8px 10px;border-radius:9px;background:#ffffff0d}.readout>div{display:flex;justify-content:space-between;font-size:13px;padding:2px 0}.ro-label{color:var(--muted)}.ro-val{color:var(--accent2);font-variant-numeric:tabular-nums}.color-row{display:flex;align-items:center;gap:10px}.color-row input[type=color]{width:40px;height:32px;border:1px solid var(--panel-border);border-radius:8px;background:none;cursor:pointer;padding:0}.swatches{display:flex;gap:6px;flex-wrap:wrap}.swatches .sw{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer}.swatches .sw.on{border-color:#fff;box-shadow:0 0 0 2px var(--accent)}.field-label{display:block;font-size:13px;margin:6px 0 5px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}.tool-grid button{padding:8px 6px;font-size:12px;border-radius:8px;border:1px solid var(--panel-border);background:transparent;color:var(--muted)}.tool-grid button.on{background:var(--accent);color:#02030a;border-color:var(--accent);font-weight:600}.curve-list{list-style:none;margin:8px 0 0;padding:0;max-height:180px;overflow-y:auto}.curve-list li{display:flex;align-items:center;gap:8px;padding:5px 4px;border-radius:7px}.curve-list li:hover{background:#ffffff0f}.text-input{width:100%;padding:8px 10px;border-radius:8px;font-size:13px;background:#ffffff0f;border:1px solid var(--panel-border);color:var(--text)}.text-input:focus{outline:none;border-color:var(--accent)}.preset-load{flex:1;text-align:left;background:none;border:none;color:var(--text);font-size:13px;padding:4px 2px}.preset-load:hover{color:var(--accent)}.preset-chips{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:2px 2px 4px}.chip{display:flex;align-items:center;gap:7px;padding:9px 10px;font-size:12px;line-height:1.25;text-align:left;border-radius:10px;border:1px solid var(--panel-border);background:linear-gradient(180deg,#fff1,#ffffff06);color:var(--text);transition:transform .12s ease,border-color .12s ease,background .12s ease}.chip .chip-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--muted);transition:background .12s ease,box-shadow .12s ease}.chip .chip-name{flex:1}.gas-meter{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}.gas-meter .gm-lab{letter-spacing:.02em}.gas-meter .gm-bar{width:56px;height:6px;border-radius:3px;overflow:hidden;background:#ffffff1f}.gas-meter .gm-fill{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#4cc9f0,#b388ff);transition:width .2s linear}.gas-meter .gm-val{min-width:30px;text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}.seg.seg-mini{display:inline-flex;gap:2px}.seg.seg-mini button{padding:3px 7px;font-size:11px;line-height:1.2}.preset-chip{display:flex;align-items:center;gap:8px;flex:none;padding:7px 8px 7px 12px;border-radius:11px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text);font-size:calc(12px * var(--ui-scale));line-height:1.2}.preset-chip .pc-name{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preset-chip .pc-reload{flex:none;width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--panel-border);background:#ffffff0d;color:var(--text);font-size:14px}.preset-chip .pc-reload:hover{border-color:var(--accent);color:var(--accent)}.app.ui-hidden .preset-chip{display:none!important}.preset-search{display:flex;align-items:center;gap:6px;margin:2px 2px 8px}.preset-search .text-input{flex:1}.chip:hover{border-color:var(--accent);background:linear-gradient(180deg,#4cc9f033,#4cc9f012);transform:translateY(-1px)}.chip:hover .chip-dot{background:var(--accent);box-shadow:0 0 7px var(--accent)}.chip:active{transform:translateY(0)}.preset-group{margin-bottom:8px;border-radius:12px;border:1px solid var(--panel-border);background:#ffffff06;overflow:hidden}.preset-group.collapsed{background:transparent;border-color:transparent;margin-bottom:2px}.preset-group-title{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;font-size:11.5px;letter-spacing:.03em;color:var(--text);font-weight:600;text-align:left;background:transparent;border:none;border-radius:0}.preset-group:not(.collapsed) .preset-group-title{border-bottom:1px solid var(--panel-border)}.preset-group.collapsed .preset-group-title{color:var(--muted);border-radius:10px}.preset-group-title:hover{color:var(--text);background:#ffffff0d}.preset-group-title .pg-icon{flex:none;width:20px;height:20px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--accent);background:#4cc9f01f}.preset-group-title .pg-caret{font-size:10px;width:10px;flex:none;color:var(--muted)}.preset-group-title .pg-name{flex:1}.preset-group-title .pg-count{flex:none;padding:1px 7px;border-radius:9px;background:#ffffff12;color:var(--muted);font-size:10px;letter-spacing:0;font-variant-numeric:tabular-nums}.chirp-slow{display:flex;align-items:center;gap:6px;padding:4px 9px 4px 7px;border-radius:14px;font-size:11px;color:var(--muted);white-space:nowrap;border:1px solid var(--panel-border);background:#ffffff0a;cursor:pointer}.chirp-slow.on{color:var(--accent);border-color:#4cc9f073;background:#4cc9f01f}.chirp-slow input{accent-color:var(--accent);margin:0}.legend{position:static;flex:none;width:auto;min-width:172px;max-width:212px;padding:9px 11px;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.legend-title{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin-bottom:5px;white-space:nowrap}.legend-bar{height:9px;border-radius:5px;background:linear-gradient(90deg,#0a1fd9,#1a80ff,#19ebb3,#bfff4d)}.legend-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:3px}.legend-note{font-size:10px;color:var(--muted);margin-top:5px;line-height:1.3}.legend-model{margin-top:7px;padding:4px 8px;border-radius:7px;border:1.5px solid currentColor;background:#ffffff0d;font-size:10.5px;font-weight:700;text-align:center;letter-spacing:.2px}.fatal{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px}.fatal-card{max-width:460px;padding:24px 26px;background:var(--panel);border:1px solid var(--panel-border);border-radius:14px}.fatal-card h2{margin:0 0 12px;font-size:18px;color:var(--accent2)}.fatal-card p{font-size:13px;line-height:1.5;color:#cdd6ee}.fatal-card ul{font-size:13px;color:#cdd6ee;line-height:1.6}.fatal-card .primary{width:auto;padding:9px 18px;margin-top:8px}.fatal-detail{font-size:11px;color:var(--muted);margin-top:14px;word-break:break-word}.split{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;gap:2px;background:var(--panel-border)}.split-pane{position:relative;flex:1 1 0;min-width:0;height:100%;background:var(--bg)}.split-pane canvas{display:block}.pane-label{position:absolute;top:calc(var(--chrome-top) + 10px);left:16px;z-index:3;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 16px;border-radius:20px;font-size:calc(14px * var(--ui-scale, 1));font-weight:700;letter-spacing:.3px;background:#02030ab8;border:1.5px solid var(--panel-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;white-space:nowrap}.pane-deflection{font-style:normal;font-size:calc(11px * var(--ui-scale, 1));font-weight:600;opacity:.75}.split[data-panes="3"] .pane-label{padding:5px 11px;font-size:calc(12px * var(--ui-scale, 1))}.compare-picker{display:inline-flex;align-items:center;gap:5px;height:38px;padding:0 9px;background:var(--panel);border:1px solid var(--panel-border);border-radius:9px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cp-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.cp-btn{min-width:46px;height:26px;padding:0 8px;border-radius:7px;font-size:11px;font-weight:700;background:transparent;border:1.5px solid var(--panel-border);color:var(--muted)}.cp-btn.on{background:#ffffff12}.cp-btn:disabled{cursor:default;opacity:.85}.gl-lost{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#02030aeb;color:var(--text);text-align:center;padding:24px}.gl-lost p{margin:0;font-size:calc(16px * var(--ui-scale, 1))}.gl-lost button{padding:12px 24px;border-radius:10px;font-size:calc(15px * var(--ui-scale, 1));font-weight:700;background:var(--accent);border:none;color:#02030a}.install-btn{position:absolute;bottom:60px;right:16px;z-index:6;padding:9px 14px;border-radius:10px;border:none;background:linear-gradient(135deg,#4cc9f0,#4361ee);color:#fff;font-size:13px;font-weight:600;box-shadow:0 6px 24px #00000073}.bh-badge{margin-top:10px;padding:8px 10px;border-radius:9px;font-weight:700;font-size:13px;display:flex;flex-direction:column;gap:3px}.bh-badge.star{background:#ffd1661f;color:#ffe08a}.bh-badge.bh{background:#b478ff29;color:#d4b3ff}.bh-badge .rs{font-weight:400;font-size:11px;color:var(--muted)}.seg{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.seg button{flex:1;padding:8px 6px;font-size:12px;border-radius:8px;border:1px solid var(--panel-border);background:transparent;color:var(--muted)}.seg button.on{background:var(--accent);color:#02030a;border-color:var(--accent);font-weight:600}button.wide,a.wide{padding:9px;border-radius:9px;border:1px solid var(--panel-border);background:#ffffff0d;color:var(--text);font-size:13px}button.wide:hover,a.wide:hover{background:#ffffff1a}button.wide.full,a.wide.full{width:100%;margin-top:6px}button.wide.danger,a.wide.danger{color:var(--danger);border-color:#ef476f66}button.wide.danger:hover,a.wide.danger:hover{background:#ef476f26}a.wide{display:block;box-sizing:border-box;text-align:center;text-decoration:none}button.link{background:none;border:none;color:var(--accent);font-size:12px;text-decoration:underline;padding:0}.hint{font-size:11.5px;color:var(--muted);margin:8px 0 0;line-height:1.45}.hint.warn{color:#ffd166}.check{display:flex;align-items:center;gap:8px;font-size:13px;margin-top:9px;cursor:pointer}.check input{accent-color:var(--accent)}.bodies-list{position:absolute;top:16px;right:16px;width:220px;z-index:5;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;padding:12px 14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-height:calc(100% - 140px);overflow-y:auto}.bl-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--accent);margin-bottom:8px}.bl-empty{font-size:11.5px;color:var(--muted);margin:4px 0 0}.bodies-list ul{list-style:none;margin:0;padding:0}.bodies-list li{display:flex;align-items:center;gap:8px;padding:6px;border-radius:7px;cursor:pointer}.bodies-list li:hover{background:#ffffff0f}.bodies-list li.sel{background:#4cc9f029}.bl-name{flex:1;font-size:13px}.bl-mass{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.time-bar{position:absolute;bottom:18px;left:50%;transform:translate(-50%);z-index:5;display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--panel-border);border-radius:30px;padding:8px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 40px #00000080}.time-play,.time-reset{width:34px;height:34px;border-radius:50%;border:none;font-size:15px;color:#fff}.time-play{background:linear-gradient(135deg,#4cc9f0,#4361ee)}.time-reset{background:#ffffff14;border:1px solid var(--panel-border)}.time-step{width:30px;height:30px;min-width:30px;border-radius:50%;border:1px solid var(--panel-border);background:#ffffff14;color:var(--text);font-size:18px;line-height:1;font-weight:600;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.time-step:hover:not(:disabled){background:#ffffff29}.time-step:disabled{opacity:.35;cursor:not-allowed}.time-speed{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.time-speed input{width:130px}.time-speed .val{color:var(--accent2);font-variant-numeric:tabular-nums;min-width:38px}.collapse-caret{flex:0 0 auto;width:22px;height:22px;min-width:22px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--muted);font-size:13px;line-height:1;cursor:pointer;padding:0;border-radius:5px}.collapse-caret:hover{color:var(--text);background:#ffffff0f}.toolbar.collapsed{flex-wrap:nowrap;max-width:none;padding:6px 8px;border-radius:10px}.toolbar.collapsed .collapse-caret{width:28px;height:28px;font-size:14px}.time-bar.collapsed{padding:6px 10px}.left-panel.collapsed{width:auto;max-width:200px;padding-bottom:6px}.left-panel.collapsed .panel-head{padding-top:6px}@media (min-width: 821px){.panel-head{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.panel-head:active{cursor:grabbing}}.right-stack{position:absolute;top:16px;right:calc(16px + var(--right-rail));z-index:5;display:flex;flex-direction:column;gap:10px;width:220px;max-height:calc(100% - 140px)}@media (pointer: fine){.right-stack{right:16px}.app:has(.right-rail .body-toolbar) .right-stack{right:calc(16px + var(--right-rail))}}.right-stack>.bodies-list,.right-stack>.drawings-list{position:static;max-height:50vh;overflow-y:auto}.drawings-list{background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;padding:6px 12px 12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 40px #00000080}.bottom-left-bar{position:absolute;bottom:16px;z-index:5;left:16px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.blb-actions{display:flex;align-items:center;gap:8px}.info-btn{position:static;flex:none;padding:8px 12px;border-radius:9px;background:var(--panel);border:1px solid var(--panel-border);color:var(--text);font-size:calc(12px * var(--ui-scale, 1));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.info-card{position:fixed;left:16px;bottom:72px;z-index:6;width:min(330px,calc(100vw - 32px - var(--right-rail)));padding:16px 18px;max-height:calc(100vh - 140px);overflow-y:auto;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 40px #00000080}.info-card h3{margin:0 0 10px;font-size:14px;color:var(--accent)}.info-card ul{margin:0;padding-left:18px}.info-card li{font-size:12.5px;line-height:1.5;margin-bottom:8px;color:#cdd6ee}.lang-btn{position:static;flex:none;display:inline-flex;align-items:center;gap:5px;height:calc(38px * var(--ui-scale, 1));padding:0 10px;background:var(--panel);border:1px solid var(--panel-border);border-radius:9px;color:var(--text);font:inherit;font-size:calc(12px * var(--ui-scale, 1));font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.lang-btn:hover{border-color:var(--accent)}.lang-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lang-flag{display:block;flex:none;width:calc(20px * var(--ui-scale, 1));height:calc(13.3px * var(--ui-scale, 1));border-radius:2px;border:1px solid rgba(255,255,255,.35)}.lang-code{letter-spacing:.5px}.lang-other{font-size:calc(10px * var(--ui-scale, 1));font-weight:700;color:var(--muted);opacity:.55;letter-spacing:.5px}.lang-btn:hover .lang-other{opacity:.9;color:var(--accent)}.app.ui-hidden .lang-btn{display:none!important}.help-btn{position:static;flex:none}.help-card{position:fixed;left:16px;bottom:72px;z-index:8;width:min(330px,calc(100vw - 32px - var(--right-rail)));padding:14px 16px;max-height:calc(100vh - 140px);overflow-y:auto;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 40px #00000080}.help-card h3{margin:0 0 10px;font-size:14px;color:var(--accent)}.help-list{list-style:none;margin:0;padding:0}.help-shortcut{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05)}.help-shortcut:last-child{border-bottom:none}.help-desc{font-size:12.5px;color:#cdd6ee;flex:1}.help-key{font-size:11px;font-weight:600;color:var(--accent2);background:#ffd1661a;border:1px solid rgba(255,209,102,.25);padding:3px 8px;border-radius:6px;white-space:nowrap;flex:none;font-variant-numeric:tabular-nums}.help-note{margin:10px 0 0;font-size:11.5px;color:var(--muted);line-height:1.45}.context-menu{position:fixed;z-index:9;min-width:220px;max-width:280px;display:flex;flex-direction:column;gap:2px;padding:6px;border-radius:12px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 40px #0009}.context-menu>span{display:contents}.ctx-item{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:0 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font-size:13px;text-align:left;cursor:pointer}.ctx-item:hover,.ctx-item:focus-visible{background:#ffffff0f;outline:none}.ctx-item.active{background:#4cc9f029;border-color:var(--accent);color:var(--accent)}.ctx-item.danger{color:var(--danger)}.ctx-item.danger:hover{background:#ef476f1f}@keyframes longpress-fill{to{stroke-dashoffset:0}}.hint-bar{position:absolute;top:70px;left:50%;transform:translate(-50%);z-index:5;padding:10px 18px;background:#4cc9f029;border:1px solid var(--accent);border-radius:30px;font-size:13px;color:#d8f4ff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap}.help-tip{position:absolute;bottom:70px;left:50%;transform:translate(-50%);font-size:11.5px;color:var(--muted);background:#0000004d;padding:5px 12px;border-radius:20px}.debug-overlay{position:fixed;z-index:50;pointer-events:none;background:#000000c7;border:1px solid var(--accent);border-radius:8px;padding:6px 10px;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:12px;color:#cfeaff;line-height:1.5}.debug-overlay span{display:inline-block;width:12px;color:var(--accent2);font-weight:700}.linear-speed-readout{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin-bottom:10px;background:#66ccff14;border:1px solid rgba(102,204,255,.35);border-radius:9px}.linear-speed-readout .ro-label{color:var(--muted);font-size:13px}.linear-speed-readout .ro-val{color:#6cf;font-weight:700;font-size:15px;font-family:ui-monospace,SF Mono,Consolas,monospace}.btn{padding:9px;border-radius:9px;border:1px solid var(--panel-border);background:#ffffff0d;color:var(--text);font-size:13px;cursor:pointer}.btn:hover{background:#ffffff1a}.btn.small{padding:5px 10px;font-size:12px}.primary{width:100%;padding:10px;margin-top:6px;border-radius:9px;border:none;background:linear-gradient(135deg,#4cc9f0,#4361ee);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.primary:hover{filter:brightness(1.08)}.row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0}.row.buttons{justify-content:stretch}.row.buttons>button{flex:1}.muted{color:var(--muted);font-size:12px}.indent{padding-left:14px;margin-left:2px;border-left:2px solid rgba(255,255,255,.08)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.menu-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.popover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:7}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--bottom-bar-h: 0px}@media (max-width: 820px){.app{padding-bottom:var(--bottom-bar-h)}.bottom-bar{position:fixed;bottom:0;left:0;right:0;z-index:7;background:#080c18f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--panel-border);padding:6px 8px calc(8px + var(--safe-bottom));display:flex;flex-direction:column;gap:4px;box-shadow:0 -6px 24px #0006}.bottom-bar .mb-row{display:flex;flex-direction:column;gap:4px}.bottom-bar .mb-row.collapsed{gap:0}.bottom-bar .row-head{display:flex;align-items:center;justify-content:space-between;padding:2px 4px;min-height:22px;background:transparent;border:none;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.bottom-bar .row-head .row-label{font-weight:600}.bottom-bar .row-head .row-caret{font-size:12px;line-height:1}.bottom-bar .row-body{display:flex}.bottom-bar>.mb-row>.row-body>.toolbar,.bottom-bar .toolbar{position:static;top:auto;left:auto;right:auto;max-width:none;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:6px;padding:0;background:transparent;border:none}.bottom-bar .toolbar::-webkit-scrollbar{display:none}.bottom-bar .menu-sheet-btn{position:static;top:auto;left:auto}.bottom-bar>.mb-row>.row-body>.time-bar,.bottom-bar .time-bar{position:static;bottom:auto;left:auto;transform:none;justify-content:center;width:100%;padding:4px 0}.drawings-chip{position:absolute;top:calc(8px + var(--safe-top));left:calc(8px + var(--safe-left));z-index:5;display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 14px;border-radius:22px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text);font-size:13px;font-weight:600}.drawings-chip .count{color:var(--accent)}.drawings-chip.open{border-color:var(--accent)}.drawings-popover{position:absolute;top:calc(54px + var(--safe-top));left:calc(8px + var(--safe-left));z-index:8;width:min(280px,calc(100vw - 16px - var(--right-rail)));max-height:60vh;overflow-y:auto;overscroll-behavior:contain;padding:10px 12px;border-radius:12px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 40px #0009}.toolbar{top:calc(8px + var(--safe-top));left:calc(8px + var(--safe-left));right:calc(8px + var(--safe-right));max-width:none;gap:6px}.menu-sheet-btn{position:fixed;top:calc(58px + var(--safe-top));left:calc(8px + var(--safe-left));z-index:5}.icon-btn.sm{width:32px;height:32px;min-width:32px;font-size:13px}.icon-btn.big{width:44px;height:44px;font-size:20px}.tool-btn{height:44px;padding:0 12px;font-size:13px}.model-toggle{height:44px}.model-toggle button{padding:0 12px;font-size:13px}.left-panel{position:fixed;z-index:7;top:0;bottom:var(--bottom-bar-h);left:0;right:var(--right-rail);width:auto;max-width:none;height:calc(100vh - var(--bottom-bar-h));overflow-y:auto;overscroll-behavior:contain;border-radius:18px 18px 0 0;padding:4px 16px calc(18px + var(--safe-bottom));box-shadow:0 -8px 40px #00000080;will-change:transform}.left-panel .panel-head{padding-top:10px}.sheet-handle{display:flex;justify-content:center;align-items:center;height:22px;padding:6px 0 2px;cursor:grab}.sheet-handle:active{cursor:grabbing}.sheet-handle-bar{display:block;width:42px;height:4px;border-radius:2px;background:#ffffff47}.bodies-list{display:none}.right-stack{position:static;width:auto;max-height:none;display:contents}.right-stack>.drawings-list{display:none}.ui-hide-btn{position:absolute;z-index:40;top:calc(8px + var(--safe-top));left:50%;transform:translate(-50%);width:40px;height:40px}.bodies-chip{position:absolute;top:calc(8px + var(--safe-top));right:calc(8px + var(--safe-right));z-index:5;display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 14px;border-radius:22px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text);font-size:13px;font-weight:600}.bodies-chip .count{color:var(--accent)}.bodies-chip.open{border-color:var(--accent)}.bodies-popover{position:absolute;top:calc(54px + var(--safe-top));right:calc(8px + var(--safe-right));z-index:8;width:min(280px,calc(100vw - 16px - var(--right-rail)));max-height:60vh;overflow-y:auto;overscroll-behavior:contain;padding:10px 12px;border-radius:12px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 40px #0009}.time-bar{bottom:calc(12px + var(--safe-bottom));gap:8px;padding:6px 12px}.time-play,.time-reset{width:44px;height:44px;font-size:16px}.time-speed input{width:90px}.time-speed .val{min-width:32px}.legend,.bh-radii{display:none}.bottom-left-bar{display:contents}.info-btn{position:absolute;right:auto!important;left:calc(8px + var(--safe-left));bottom:calc(var(--bottom-bar-h) + 8px);width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center}.info-btn .info-label{display:none}.info-card{right:auto!important;left:calc(8px + var(--safe-left));width:calc(100% - 16px - var(--right-rail));bottom:calc(var(--bottom-bar-h) + 56px)}.lang-btn{position:absolute;right:auto!important;left:calc(104px + var(--safe-left));bottom:calc(var(--bottom-bar-h) + 8px);height:40px;padding:0 9px;gap:4px}.help-btn{position:absolute;right:auto!important;left:calc(56px + var(--safe-left));bottom:calc(var(--bottom-bar-h) + 8px);width:40px;height:40px;padding:0}.help-card{right:auto!important;left:calc(8px + var(--safe-left));width:calc(100% - 16px - var(--right-rail));bottom:calc(var(--bottom-bar-h) + 56px)}.hint-bar{white-space:normal;width:80%;text-align:center;top:calc(60px + var(--safe-top))}.top-notices{top:calc(108px + var(--safe-top))}.chirp-banner{width:min(340px,calc(100vw - 16px - var(--right-rail)))}.chirp-banner.aperto,.wave-notice{width:calc(100vw - 16px - var(--right-rail))}.help-tip{display:none}.install-btn{right:auto;left:50%;transform:translate(-50%);bottom:calc(var(--bottom-bar-h) + 56px)}.split{flex-direction:column;inset:calc(56px + var(--safe-top)) 0 var(--bottom-bar-h, 0px) 0}.split-pane{flex:1 1 0;width:100%;min-height:0}.pane-label{top:8px;left:8px;padding:4px 10px;font-size:calc(11.5px * var(--ui-scale, 1))}.split[data-panes="3"] .pane-label{font-size:calc(10.5px * var(--ui-scale, 1));padding:3px 8px}.td-btn{width:calc(50px * var(--ui-scale));min-height:calc(50px * var(--ui-scale))}.touch-dock{gap:6px;right:8px}input[type=range]{height:26px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:var(--accent);border:2px solid #fff;margin-top:-9px;cursor:pointer}input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--accent);border:2px solid #fff;cursor:pointer}}@media (max-width: 480px){.field-row{flex-direction:column;gap:0}.panel h2{font-size:11px}}:root{--ui-scale: 1}.toolbar .icon-btn.big:not(.chip-testo),.time-bar .icon-btn.big{width:calc(38px * var(--ui-scale));height:calc(38px * var(--ui-scale));font-size:calc(18px * var(--ui-scale))}.toolbar .tool-btn,.toolbar .model-toggle,.toolbar .compare-picker{height:calc(38px * var(--ui-scale))}.toolbar .model-toggle button{font-size:calc(12px * var(--ui-scale));padding:0 calc(13px * var(--ui-scale))}.toolbar .tool-btn{font-size:calc(12px * var(--ui-scale))}.cp-btn{font-size:calc(11px * var(--ui-scale));height:calc(26px * var(--ui-scale))}.legend,.info-card,.help-card,.hint-bar{font-size:calc(12px * var(--ui-scale))}.legend-title{font-size:calc(11px * var(--ui-scale))}.legend-note,.legend-labels{font-size:calc(10px * var(--ui-scale))}.hint-bar{padding:calc(8px * var(--ui-scale)) calc(16px * var(--ui-scale))}.model-toggle.models-2 button{min-width:calc(62px * var(--ui-scale));letter-spacing:.3px;display:inline-flex;align-items:center;justify-content:center;gap:5px}.model-toggle.models-2 button.on{background:#ffffff1a}.mt-slot{position:relative;display:inline-block}.mt-ghost{visibility:hidden}.mt-real{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.mt-dots{display:inline-flex;gap:3px;align-items:center}.mt-dots i{display:block;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.28}.mt-dots i.on{opacity:1}@media (max-width: 820px){.model-toggle.models-2 button{min-width:calc(50px * var(--ui-scale));letter-spacing:0;gap:4px}.toolbar .model-toggle button{font-size:calc(11px * var(--ui-scale));padding:0 calc(8px * var(--ui-scale))}.mt-dots i{width:3.5px;height:3.5px}}.app.ui-hidden .toolbar,.app.ui-hidden .toolbar-stack,.app.ui-hidden .ribbon,.app.ui-hidden .time-bar,.app.ui-hidden .bottom-bar,.app.ui-hidden .panel,.app.ui-hidden .right-stack>.bodies-list,.app.ui-hidden .right-stack>.drawings-list,.app.ui-hidden .right-stack>.panel-restore,.app.ui-hidden .bodies-chip,.app.ui-hidden .drawings-chip,.app.ui-hidden .legend,.app.ui-hidden .info-btn,.app.ui-hidden .info-card,.app.ui-hidden .help-btn,.app.ui-hidden .help-card,.app.ui-hidden .hint-bar,.app.ui-hidden .help-tip,.app.ui-hidden .install-btn,.app.ui-hidden .touch-dock{display:none!important}.ui-hide-btn{align-self:flex-end;flex:none;z-index:40;width:calc(44px * var(--ui-scale));height:calc(44px * var(--ui-scale));display:inline-flex;align-items:center;justify-content:center;font-size:calc(20px * var(--ui-scale));background:var(--panel);border:1px solid var(--panel-border);color:var(--text);border-radius:11px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ui-hide-btn.is-hidden-mode{background:#02030a73;opacity:.5}.ui-hide-btn.is-hidden-mode:hover{opacity:1}.touch-dock{position:static;flex:none;display:flex;flex-direction:column;gap:8px}.td-btn{width:calc(56px * var(--ui-scale));min-height:calc(56px * var(--ui-scale));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 2px;background:var(--panel);border:1.5px solid var(--panel-border);color:var(--text);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);touch-action:manipulation;-webkit-tap-highlight-color:transparent}.td-btn.on{border-color:var(--accent);color:var(--accent)}.td-btn:active{transform:scale(.94)}.td-ico{display:inline-flex;align-items:center;justify-content:center;line-height:1}.td-ico.big{font-size:calc(20px * var(--ui-scale));font-weight:700}.td-label{font-size:calc(9.5px * var(--ui-scale));font-weight:700;letter-spacing:.2px;color:var(--muted);text-align:center;line-height:1.15}.td-btn.on .td-label{color:inherit}.td-btn:disabled{opacity:.4}.td-view .td-ico.big{letter-spacing:.5px}.td-nav .td-ico{position:relative}.td-badge{position:absolute;right:-9px;bottom:-7px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg);border:1px solid var(--panel-border)}.td-badge svg{width:12px;height:12px}.td-nav.pan{border-color:var(--accent);color:var(--accent)}.td-wipe{color:var(--danger);border-color:#ef476f73}.td-wipe .td-label{color:var(--danger)}.td-wipe.armato{background:var(--danger);border-color:var(--danger);color:#fff}.td-wipe.armato .td-label{color:#ffffffd9}.right-rail:has(.body-toolbar) .td-btn{width:calc(28px * var(--ui-scale));min-height:calc(28px * var(--ui-scale));padding:2px 1px;border-radius:8px;gap:0}.right-rail:has(.body-toolbar) .td-ico.big{font-size:calc(11px * var(--ui-scale))}.right-rail:has(.body-toolbar) .td-label{display:none}.right-rail:has(.body-toolbar) .td-badge{display:none}.right-rail:has(.body-toolbar) .touch-dock{gap:4px}.right-rail:has(.body-toolbar) .td-nav svg{width:14px;height:14px}.top-notices{position:absolute;z-index:30;top:calc(var(--chrome-top) + 6px + var(--safe-top, 0px));left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.top-notices>*{pointer-events:auto}.chirp-banner{position:static;flex:none;width:min(340px,calc(100vw - 32px - var(--right-rail)));padding:8px 10px 7px;background:#0a0e1af0;border:1px solid rgba(76,201,240,.45);border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 40px #0009}.chirp-banner.aperto{width:min(420px,calc(100vw - 32px - var(--right-rail)));padding-bottom:9px}.wave-notice{position:relative;flex:none;width:min(400px,calc(100vw - 32px - var(--right-rail)));padding:9px 34px 9px 11px;background:#260a12f2;border:1px solid var(--danger);border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 40px #0009}.wn-msg{margin:0;font-size:calc(12px * var(--ui-scale, 1));line-height:1.45;color:#ffd9e2}.wn-msg b{color:var(--danger)}.wn-close{position:absolute;top:4px;right:4px;width:26px;height:26px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:#ffd9e299;font:inherit;font-size:13px;cursor:pointer}.wn-close:hover{color:#fff;background:#ffffff1a}.wn-action{display:block;margin-top:8px;padding:7px 12px;font:inherit;font-size:calc(11.5px * var(--ui-scale, 1));font-weight:700;background:#ef476f2e;border:1px solid var(--danger);border-radius:8px;color:#ffd9e2;cursor:pointer}.wn-action:hover{background:var(--danger);color:#fff}.wn-close:focus-visible,.wn-action:focus-visible{outline:2px solid #fff;outline-offset:2px}@media (pointer: coarse){.wn-close{width:34px;height:34px;font-size:15px}.wn-action{padding:10px 14px;font-size:calc(13px * var(--ui-scale, 1))}}.app.ui-hidden .top-notices{display:none!important}.chirp-bar{display:flex;align-items:flex-start;gap:6px}.chirp-lead{flex:1 1 auto;min-width:0;font-size:calc(12px * var(--ui-scale, 1));line-height:1.35;color:var(--accent)}.chirp-msg{margin:7px 0 0;font-size:calc(12px * var(--ui-scale, 1));line-height:1.45;color:var(--text)}.chirp-nota{margin:6px 0 0;font-size:calc(10.5px * var(--ui-scale, 1));line-height:1.4;color:var(--muted)}.chirp-fat{color:var(--accent2);font-variant-numeric:tabular-nums;white-space:nowrap}.chirp-more,.chirp-close{flex:none;width:26px;height:26px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--muted);font:inherit;cursor:pointer}.chirp-more{font-size:17px;line-height:1;border-color:#4cc9f066;color:var(--accent)}.chirp-close{font-size:13px}.chirp-more:hover{background:#4cc9f029}.chirp-close:hover{color:var(--text);background:#ffffff14}.chirp-more:focus-visible,.chirp-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer: coarse){.chirp-more,.chirp-close{width:34px;height:34px}.chirp-more{font-size:20px}.chirp-close{font-size:15px}}.chirp-art{display:block;width:100%;height:calc(40px * var(--ui-scale, 1));margin-top:5px;overflow:visible}.chirp-banner.aperto .chirp-art{height:calc(58px * var(--ui-scale, 1))}.chirp-axis{stroke:#ffffff24;stroke-width:1}.chirp-merge{stroke:var(--accent2);stroke-width:1;stroke-dasharray:3 3;opacity:.75}.chirp-wave{fill:none;stroke:var(--accent);stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.app.ui-hidden .chirp-banner{display:none!important}.energy-readout{display:flex;align-items:baseline;gap:8px;margin-top:6px;font-size:calc(11px * var(--ui-scale));font-variant-numeric:tabular-nums}.energy-readout .er-val{font-weight:700;color:var(--text)}.energy-readout .er-drift{color:var(--muted)}.energy-readout .er-drift.bad{color:var(--danger)}.update-banner{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:11px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:calc(12.5px * var(--ui-scale));box-shadow:0 8px 40px #00000080}.update-banner button{padding:7px 13px;border-radius:8px;font-size:calc(12px * var(--ui-scale));font-weight:700;background:var(--accent);border:none;color:#02030a}.update-banner button.ghost{background:transparent;border:1px solid var(--panel-border);color:var(--muted)}.app.ui-hidden .update-banner{display:none}.bl-head .bl-hide{margin-left:6px}.panel-restore{align-self:flex-end;display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:9px;font-size:calc(11.5px * var(--ui-scale, 1));font-weight:700;letter-spacing:.3px;background:var(--panel);border:1px solid var(--panel-border);color:var(--muted);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel-restore:hover{color:var(--text);border-color:var(--accent)}.panel-restore .count{min-width:20px;padding:1px 6px;border-radius:10px;background:#ffffff17;color:var(--text);font-variant-numeric:tabular-nums}.legend-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.legend-toggle{flex:none;width:20px;height:20px;padding:0;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--panel-border);color:var(--muted);font-size:10px;line-height:1}.legend-toggle:hover{color:var(--text);border-color:var(--accent)}.legend.compact{padding:7px 10px}.legend.compact .legend-top{margin-bottom:4px}.bh-radii{position:static;flex:none;width:auto;min-width:172px;max-width:246px;padding:9px 11px;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bh-radii.compact{padding:7px 10px}.bhr-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.bh-radii.compact .bhr-top{margin-bottom:0}.bhr-title{font-size:calc(11px * var(--ui-scale, 1));color:var(--muted);text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}.bhr-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:3px}.bhr-row{display:flex;align-items:baseline;gap:6px;font-size:calc(10.5px * var(--ui-scale, 1))}.bhr-dash{flex:none;width:12px;height:2px;border-radius:2px;align-self:center}.bhr-tratto{background-image:linear-gradient(90deg,currentColor 55%,transparent 55%);background-size:4px 2px}.bhr-acceso{height:3px;box-shadow:0 0 6px currentColor}.bhr-gruppo{font-size:calc(9.5px * var(--ui-scale, 1));color:var(--muted);text-transform:uppercase;letter-spacing:.5px;opacity:.75;margin-top:7px}.bhr-gruppo:first-of-type{margin-top:6px}.bhr-val{flex:none;color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}.bhr-name{color:var(--muted)}.bhr-note{font-size:calc(10px * var(--ui-scale, 1));color:var(--muted);margin-top:6px;line-height:1.3}.bl-info{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.bl-meta{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.bl-dist{font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.bl-dist b{color:var(--accent);font-weight:700}.bl-clock-wrap{display:flex;flex-direction:column;align-items:center;gap:1px;flex:none}.bl-clock{display:block}.bl-clock-face{position:relative;display:block;width:34px;height:34px;border-radius:50%;background:#101015;border:2px solid rgba(255,255,255,.75)}.bl-clock-hand{position:absolute;left:50%;bottom:50%;width:2.5px;height:12px;margin-left:-1.25px;background:#39ff14;border-radius:1px;transform-origin:50% 100%}.bl-clock-pin{position:absolute;left:50%;top:50%;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:#fff}.bl-rate{font-size:9.5px;color:var(--muted);font-variant-numeric:tabular-nums}.bl-speed{font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.bl-speed b{color:var(--accent2);font-weight:700}.bl-bound{font-size:12px;line-height:1;flex:none;cursor:help}.bl-bound.bound{color:#06d6a0}.bl-bound.free{color:var(--danger)}.bl-bound.fixed{color:var(--muted)}.radial-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none}.radial-hub{position:absolute;width:80px;height:80px;margin:-40px 0 0 -40px;border-radius:50%;background:radial-gradient(circle,#4cc9f02e,#02030a00 70%);border:1px dashed rgba(120,160,255,.35);display:flex;align-items:center;justify-content:center}.radial-hub-dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.hint-bar.scrub{border-color:var(--accent);color:var(--accent)}.radial-root.sticky{pointer-events:auto}.radial-root.picking .radial-hub{border-style:solid;border-color:#ffb70380}.radial-root.picking .radial-item{border-color:#ffb70359}.radial-root.sticky .radial-item{cursor:pointer}.radial-root.sticky .radial-item:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.radial-item{font:inherit;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;width:62px;height:62px;margin:-31px 0 0 -31px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-radius:16px;background:#0c101ef2;border:1.5px solid var(--panel-border);color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 24px #0000008c;transition:transform 90ms ease,border-color 90ms ease,background 90ms ease}.ri-icon{font-size:19px;line-height:1}.ri-label{font-size:9px;font-weight:700;letter-spacing:.2px;color:var(--muted)}.radial-item.on{transform:scale(1.22);background:var(--accent);border-color:var(--accent);color:#02030a}.radial-item.on .ri-label{color:#02030abf}.radial-item.danger{border-color:#ef476f73;color:var(--danger)}.radial-item.danger.on{background:var(--danger);border-color:var(--danger);color:#fff}.radial-item.danger.on .ri-label{color:#fffc}.radial-item.toggled{border-color:var(--accent2);color:var(--accent2)}.app.ui-hidden .radial-root{display:none}.tzone{display:flex;align-items:center;gap:6px}.tzone-sep{width:1px;align-self:stretch;min-height:30px;background:linear-gradient(transparent,var(--panel-border) 25%,var(--panel-border) 75%,transparent);margin:0 4px}.chip-cmd{position:relative}.chip-cmd.chip-testo{width:auto;min-width:0;padding:0 11px;font-size:calc(12px * var(--ui-scale, 1));font-weight:600;letter-spacing:.01em}.toolbar .chip-cmd.chip-testo{width:auto}.press-tip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--panel);border:1px solid var(--panel-border);border-radius:7px;padding:3px 8px;font-size:11px;white-space:nowrap;color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:40;pointer-events:none}.icon-btn.big.armato{background:var(--danger);border-color:var(--danger);color:#fff}.tm-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border-radius:9px;text-align:left;background:transparent;border:none;color:var(--text)}.tm-item:hover{background:#ffffff0f}.tm-ico{flex:none;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:15px;color:var(--muted)}.tm-item.on .tm-ico{color:var(--accent)}.tm-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.tm-label{font-size:12.5px;font-weight:600}.tm-hint{font-size:10.5px;color:var(--muted);line-height:1.25}.tm-state{flex:none;font-size:9.5px;font-weight:800;letter-spacing:.06em;padding:2px 7px;border-radius:9px;background:#ffffff12;color:var(--muted)}.tm-item.on .tm-state{background:var(--accent);color:#02030a}.tm-sub{padding:2px 10px 10px 44px;display:flex;flex-wrap:wrap;gap:8px}.tm-item.danger .tm-label{color:var(--danger)}.tm-item.armato{background:var(--danger)}.tm-item.armato .tm-label,.tm-item.armato .tm-hint,.tm-item.armato .tm-ico{color:#fff}.ribbon{position:absolute;top:16px;left:16px;z-index:7;display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:calc(100% - 270px)}.ribbon-schede{display:flex;align-items:center;flex-wrap:wrap;gap:4px;max-width:100%;padding:4px 6px;border-radius:10px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ribbon-schede.collapsed{flex-wrap:nowrap;padding:6px 8px}.ribbon-schede.collapsed .collapse-caret{width:28px;height:28px;font-size:14px}.ribbon-scheda{flex:none;height:34px;padding:0 12px;border-radius:8px;font-size:12.5px;font-weight:600;white-space:nowrap;color:var(--muted);background:transparent;border:1px solid transparent}.ribbon-scheda:hover{color:var(--text);background:#ffffff0f}.ribbon-scheda.on{color:var(--text);background:#ffffff1a;border-color:var(--accent)}.ribbon-menu{position:absolute;top:100%;left:0;margin-top:6px;z-index:30;display:flex;align-items:flex-start;gap:14px;padding:10px;border-radius:12px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 12px 34px #00000073;max-width:min(96vw,1000px);max-height:70vh;overflow:auto}.rm-col{display:flex;flex-direction:column;gap:2px;min-width:220px;max-width:300px}.rm-col-title{margin:2px 8px 4px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent2)}.ribbon-menu .tm-hint{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ribbon-chip{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border-radius:9px;white-space:nowrap;font-size:12.5px;font-weight:600;color:var(--text);background:#ffffff0a;border:1px solid var(--panel-border)}.ribbon-chip:hover{background:#ffffff17}.ribbon-chip.on{color:var(--accent);border-color:var(--accent)}.ribbon-chip.on .tm-state{background:var(--accent);color:#02030a}.ribbon-chip.danger{color:var(--danger);border-color:#ef476f66}.ribbon-chip.armato{background:var(--danger);border-color:var(--danger);color:#fff}.rc-ico{flex:none;width:20px;display:inline-flex;align-items:center;justify-content:center;font-size:15px}.ribbon-voce{flex:none;display:inline-flex;align-items:center;gap:6px;padding:3px;border-radius:11px;background:#ffffff0a;border:1px solid var(--panel-border)}.ribbon-voce-sub{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}.barra-voce{display:inline-flex;align-items:center;gap:6px;padding:3px;border-radius:11px;background:#ffffff0a;border:1px solid var(--panel-border)}.menu-sheet{position:fixed;inset:auto 0 0 0;z-index:41;max-height:78vh;overflow-y:auto;overscroll-behavior:contain;padding:4px 12px calc(14px + var(--safe-bottom));background:var(--panel);border-top:1px solid var(--panel-border);border-radius:18px 18px 0 0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 -8px 40px #00000080}.menu-sheet .ms-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:10px 2px 8px;background:var(--panel)}.menu-sheet .ms-title{font-size:15px;font-weight:700}.menu-sheet .ms-cat{margin:10px 0 2px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--accent)}.menu-sheet .tm-item{padding:11px 8px}.menu-sheet .tm-label{font-size:13.5px}.panel-sec{margin-bottom:4px;padding-bottom:0;border-bottom:1px solid rgba(255,255,255,.06)}.panel-sec:last-child{border-bottom:none}.panel-sec-head{display:flex;align-items:center;gap:8px;width:100%;padding:10px 4px;background:transparent;border:none;border-radius:7px;color:var(--accent);text-align:left;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.panel-sec-head:hover{background:#ffffff0d}.panel-sec .ps-caret{font-size:10px;width:10px;flex:none;color:var(--muted)}.panel-sec.open .ps-caret{color:var(--accent)}.panel-sec-body{padding:0 2px 12px}@media (max-width: 820px){.bottom-bar .toolbar{overflow-x:auto;touch-action:pan-x;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-padding:0 8px}.bottom-bar .toolbar>.tzone,.bottom-bar .toolbar>.tzone-sep{flex:none}.bottom-bar .toolbar>.tzone{gap:6px}.bottom-bar .mb-row .row-body{position:relative}.bottom-bar .mb-row .row-body:after{content:"";position:absolute;right:0;top:0;bottom:0;width:24px;pointer-events:none;background:linear-gradient(90deg,#080c1800,#080c18f0)}}.fp-hud{position:absolute;left:50%;transform:translate(-50%);top:calc(var(--chrome-top) + 10px);z-index:6;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.fp-exit{pointer-events:auto;padding:6px 14px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.03em;color:#ff6b6b;background:#28060ab8;border:1px solid rgba(255,107,107,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 14px #00000073}.fp-exit:hover{color:#02030a;background:#ff6b6b;border-color:#ff6b6b}@media (pointer: coarse){.fp-exit{padding:9px 18px;font-size:13px}}.fp-compass{position:relative;width:calc(260px * var(--ui-scale, 1));height:26px;border-radius:13px;background:#02030aa8;border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.fp-compass-mark{position:absolute;left:50%;top:2px;transform:translate(-50%);font-size:11px;color:var(--accent)}.fp-compass-needle{position:absolute;top:5px;transform:translate(-50%);font-size:14px;color:var(--accent2);transition:left 90ms linear}.fp-compass-dist{position:absolute;right:9px;top:6px;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.fp-compass-dist b{color:var(--text)}.fp-readouts{display:flex;gap:10px}.fp-acc,.fp-speed{display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 14px;border-radius:11px;background:#02030aa8;border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.fp-acc-label{font-size:calc(9px * var(--ui-scale, 1));text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.fp-acc-val,.fp-speed-val{font-size:calc(20px * var(--ui-scale, 1));font-weight:700;font-variant-numeric:tabular-nums;line-height:1}.fp-speed-val .fp-unit{font-size:calc(12px * var(--ui-scale, 1));font-weight:600;color:var(--muted)}.fp-acc-state{font-size:calc(9.5px * var(--ui-scale, 1));font-weight:700}.fp-acc-state.free{color:#06d6a0}.fp-acc-state.held{color:var(--danger)}.fp-note{font-size:calc(10.5px * var(--ui-scale, 1));color:var(--muted);background:#02030a80;padding:3px 10px;border-radius:9px}.ext-view{position:absolute;right:16px;bottom:16px;z-index:8;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;background:var(--bg);border:1.5px solid var(--panel-border);box-shadow:0 10px 40px #000000a6}.ext-head{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 4px 10px;flex:none;background:var(--panel);border-bottom:1px solid var(--panel-border)}.ext-title{font-size:calc(10.5px * var(--ui-scale, 1));font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.ext-canvas{flex:1;min-height:0;position:relative}.ext-canvas canvas{display:block}.ext-resize{position:absolute;left:0;top:0;width:18px;height:18px;z-index:2;cursor:nwse-resize;background:linear-gradient(135deg,var(--accent) 0 38%,transparent 38%);opacity:.55;border-top-left-radius:12px;touch-action:none}.ext-resize:hover{opacity:1}@media (pointer: coarse){.ext-resize{width:44px;height:44px;background:linear-gradient(135deg,var(--accent) 0 16%,transparent 16%);opacity:.75}}.lensfree-view{bottom:200px}.lightcurve-view{bottom:460px}.lightcurve-view .lc-source,.lensfree-view .lc-source{flex:1;min-width:0;margin:0 8px;font-size:11px;padding:2px 4px;border-radius:6px;background:var(--bg);color:var(--text);border:1px solid var(--panel-border)}.lensfree-view .lc-source{flex:0 1 auto;max-width:96px;margin:0 6px}.lensfree-view.compact .lc-source{display:none}.cameraview{bottom:430px}.app.ui-hidden .fp-hud,.app.ui-hidden .ext-view{display:none}.cabin-view{position:absolute;left:16px;bottom:calc(var(--bottom-bar-h, 0px) + 56px);z-index:8;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;background:var(--bg);border:1.5px solid var(--panel-border);box-shadow:0 10px 40px #000000a6}.cabin-view .ext-resize{cursor:nwse-resize}.cab-tools{display:flex;align-items:center;gap:4px}.cab-tools .icon-btn.on{color:#ffd166;border-color:#ffd16680}.cab-canvas{flex:1;min-height:0;width:100%;display:block;background:#02030a8c;touch-action:none;cursor:grab}.cab-light{font-size:calc(10.5px * var(--ui-scale, 1))}.cab-foot{flex:none;padding:5px 10px 7px;display:flex;flex-direction:column;gap:2px;background:var(--panel);border-top:1px solid var(--panel-border)}.cab-caption{font-size:calc(11px * var(--ui-scale, 1));font-weight:600}.cab-caption.free{color:#06d6a0}.cab-caption.held{color:#ffb703}.cab-note{font-size:calc(9.5px * var(--ui-scale, 1));color:var(--muted)}.app.ui-hidden .cabin-view{display:none}@media (pointer: coarse){.cabin-view{left:auto;bottom:auto;right:calc(8px + var(--right-rail, 56px) + env(safe-area-inset-right,0px));top:72px;max-width:calc(100vw - var(--right-rail, 56px) - 32px);max-height:38vh}}.fp-options{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}.fp-h{margin:0 0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent2)}.ext-head{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.ext-head:active{cursor:grabbing}.bl-name.name-edit{width:100%;min-width:0;padding:1px 5px;border-radius:6px;font:inherit;color:var(--text);background:#ffffff1a;border:1px solid var(--accent)}.bl-name.name-edit:focus{outline:none}.rocket-pad{position:absolute;z-index:6;right:calc(16px + var(--right-rail));bottom:calc(var(--bottom-bar-h, 0px) + 16px + env(safe-area-inset-bottom,0px));width:calc(260px * var(--ui-scale, 1));max-height:calc(100vh - var(--chrome-top) - var(--bottom-bar-h, 0px) - 44px);overflow-y:auto;overscroll-behavior:contain;padding:10px 12px 12px;border-radius:12px;background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 40px #0000008c}.rp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.rp-head:active{cursor:grabbing}.rp-head-btns{display:flex;align-items:center;gap:4px}.rocket-pad.compact .rp-stats{margin-top:6px}.pannello-compatto{height:auto!important;max-height:none!important;overflow:hidden}.cabin-view.compact>.cab-canvas,.cabin-view.compact>.cab-foot,.ext-view.compact>.ext-canvas{display:none}.cabin-view.compact>.ext-resize,.ext-view.compact>.ext-resize{display:none}.rp-title{font-size:calc(11px * var(--ui-scale, 1));font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent2)}.rp-engines{display:flex;align-items:baseline;justify-content:space-between;gap:10px;width:100%;padding:11px 14px;margin-bottom:4px;border-radius:10px;border:1px solid var(--panel-border);background:#ffffff0d;color:var(--text);font:inherit;transition:background .12s ease,border-color .12s ease,color .12s ease}.rp-engines:hover{background:#ffffff1a}.rp-engines.on{color:#ffb703;border-color:#ffb7038c;background:#ffb70329;box-shadow:0 0 18px #ffb70340 inset}.rp-eng-lab{font-size:calc(14px * var(--ui-scale, 1));font-weight:700}.rp-eng-state{font-size:calc(11px * var(--ui-scale, 1));text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.rp-engines.on .rp-eng-state{color:inherit}.rp-seg{flex-wrap:wrap}.rp-seg button{flex:1 1 45%;padding:7px 4px;font-size:11.5px}.rp-manovre{display:flex;gap:6px;margin-bottom:4px}.rp-manovre button{flex:1;padding:9px 6px;font-size:11.5px;border-radius:8px;border:1px solid var(--panel-border);background:#ffffff0d;color:var(--text)}.rp-manovre button:hover{background:#ffffff1a}.rp-manovre button.on{background:var(--accent);color:#02030a;border-color:var(--accent);font-weight:600}.rp-vettori{margin-top:8px;padding-top:8px;border-top:1px solid var(--panel-border);display:flex;flex-direction:column;gap:4px}.rp-vettori .check{font-size:calc(10.5px * var(--ui-scale, 1));gap:6px}.rp-swatch{width:11px;height:11px;border-radius:3px;flex:none;box-shadow:0 0 6px currentColor}.rp-stats{margin-top:10px;padding-top:9px;border-top:1px solid var(--panel-border);display:flex;flex-direction:column;gap:5px}.rp-stat{display:grid;grid-template-columns:1fr auto;align-items:baseline;column-gap:8px}.rp-lab{font-size:calc(10px * var(--ui-scale, 1));color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.rp-val{font-size:calc(15px * var(--ui-scale, 1));font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}.rp-state{grid-column:1 / -1;justify-self:end;font-size:calc(9.5px * var(--ui-scale, 1));font-weight:700}.rp-state.free{color:#06d6a0}.rp-state.held{color:#ffb703}.rp-actions{margin-top:10px;display:flex;flex-direction:column;gap:6px}.rp-actions button{width:100%}@media (pointer: coarse){.rocket-pad{right:auto;left:calc(8px + env(safe-area-inset-left,0px));bottom:calc(var(--bottom-bar-h, 0px) + var(--gizmo-box) + 8px + env(safe-area-inset-bottom,0px));width:clamp(180px,46vw,calc(260px * var(--ui-scale, 1)));max-height:56vh;padding:8px 10px 10px}.rp-seg button{padding:8px 4px}.rocket-pad .rp-engines{padding:8px 12px}.rocket-pad .slider{margin-bottom:4px}.rocket-pad .rp-stats{gap:3px;margin-top:7px;padding-top:6px}.rocket-pad .rp-actions{margin-top:7px;gap:5px}.rocket-pad .rp-actions button{padding:8px 6px}}.right-rail{position:absolute;right:12px;z-index:26;top:calc(var(--chrome-top) + 10px);bottom:calc(var(--bottom-bar-h, 0px) + var(--gizmo-box) + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:flex-end;gap:8px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;pointer-events:none}.right-rail::-webkit-scrollbar{display:none}.right-rail>*{pointer-events:auto}.right-rail>:first-child{margin-top:auto}.body-toolbar{position:static;flex:none;display:flex;flex-direction:column;gap:3px;padding:5px;border-radius:11px;background:#0a0e1aeb;border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 30px #00000080}.body-toolbar .bt-name{font-size:8.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;text-align:center;padding:1px 2px 2px;white-space:nowrap;max-width:54px;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid var(--panel-border);margin-bottom:2px}.bt-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:100%;min-width:45px;min-height:37px;padding:3px 5px;background:transparent;border:1px solid transparent;border-radius:9px;color:var(--text);font:inherit;cursor:pointer;transition:background .12s ease,border-color .12s ease}.bt-btn:hover{background:#ffffff0f}.bt-btn.on{border-color:var(--accent);background:#4cc9f024;color:var(--accent)}.bt-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bt-ico{font-size:14px;line-height:1}.bt-lab{font-size:8.5px;letter-spacing:.2px}.bt-sub{border-top:1px solid var(--panel-border);margin-top:2px;padding-top:5px;display:flex;flex-direction:column;gap:4px;align-items:center}.bt-sub-lab{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.bt-sub-val{min-width:34px;text-align:center;font-size:12px;color:var(--accent);font-variant-numeric:tabular-nums}.bt-step{width:21px;height:21px;min-width:21px;padding:0;display:flex;align-items:center;justify-content:center;background:#ffffff0f;border:1px solid var(--panel-border);border-radius:7px;color:var(--text);font:inherit;font-size:15px;cursor:pointer}.bt-step:active{background:#4cc9f033}.bt-step:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bt-nota{font-size:9px;color:var(--muted);text-align:center;padding:2px 4px}@media (pointer: coarse){.bt-step{width:30px;height:30px;min-width:30px;font-size:16px}.bt-sub-val{min-width:34px;font-size:12px}}.bt-done{color:var(--accent2, #ffb703);border-top:1px solid var(--panel-border);border-radius:0 0 9px 9px}.bt-done .bt-ico{font-size:15px}@media (pointer: coarse){.bt-btn{min-width:51px;min-height:43px}.bt-ico{font-size:16px}.bt-lab{font-size:9px}.body-toolbar .bt-name{max-width:61px}}@media (pointer: coarse){.right-rail{bottom:calc(var(--bottom-bar-h, 0px) + 12px + env(safe-area-inset-bottom,0px))}.bottom-left-bar{left:calc(16px + var(--gizmo-box))}.icon-btn.sm{width:calc(36px * var(--ui-scale, 1));height:calc(36px * var(--ui-scale, 1));min-width:calc(36px * var(--ui-scale, 1));font-size:calc(15px * var(--ui-scale, 1))}.icon-btn:not(.big):not(.sm){width:calc(44px * var(--ui-scale, 1));height:calc(44px * var(--ui-scale, 1));font-size:calc(19px * var(--ui-scale, 1))}.icon-btn.big{width:calc(46px * var(--ui-scale, 1));height:calc(46px * var(--ui-scale, 1));font-size:calc(20px * var(--ui-scale, 1))}.toolbar .icon-btn.big:not(.chip-testo),.time-bar .icon-btn.big{width:calc(46px * var(--ui-scale, 1));height:calc(46px * var(--ui-scale, 1));font-size:calc(20px * var(--ui-scale, 1))}.toolbar .chip-cmd.chip-testo{height:calc(46px * var(--ui-scale, 1));font-size:calc(13px * var(--ui-scale, 1))}.tool-btn,.toolbar .tool-btn{height:calc(44px * var(--ui-scale, 1));min-height:calc(44px * var(--ui-scale, 1))}.model-toggle,.toolbar .model-toggle,.toolbar .compare-picker{height:calc(44px * var(--ui-scale, 1))}.toolbar .model-toggle button{padding:0 calc(16px * var(--ui-scale, 1))}.cp-btn{min-width:calc(52px * var(--ui-scale, 1));height:calc(34px * var(--ui-scale, 1))}.time-play,.time-reset{width:calc(44px * var(--ui-scale, 1));height:calc(44px * var(--ui-scale, 1));font-size:calc(18px * var(--ui-scale, 1))}.time-step{width:calc(40px * var(--ui-scale, 1));height:calc(40px * var(--ui-scale, 1));min-width:calc(40px * var(--ui-scale, 1));font-size:calc(20px * var(--ui-scale, 1))}.slider-step{width:calc(34px * var(--ui-scale, 1));height:calc(34px * var(--ui-scale, 1));font-size:calc(17px * var(--ui-scale, 1))}.tool-slider .slider-step{width:calc(28px * var(--ui-scale, 1));height:calc(28px * var(--ui-scale, 1));font-size:calc(15px * var(--ui-scale, 1))}.collapse-caret{width:calc(32px * var(--ui-scale, 1));height:calc(32px * var(--ui-scale, 1));min-width:calc(32px * var(--ui-scale, 1));font-size:calc(16px * var(--ui-scale, 1))}.toolbar.collapsed .collapse-caret,.ribbon-schede.collapsed .collapse-caret{width:calc(36px * var(--ui-scale, 1));height:calc(36px * var(--ui-scale, 1));font-size:calc(18px * var(--ui-scale, 1))}.ribbon-scheda,.ribbon-chip{min-height:calc(44px * var(--ui-scale, 1))}.toolbar,.toolbar-stack,.tzone,.tool-slider,.ribbon,.ribbon-schede,.ribbon-menu,.bottom-bar .toolbar{gap:10px}.bottom-bar .toolbar>.tzone{gap:10px}input[type=range]{height:30px}.ctx-menu button{min-height:48px}.bl-row,.bodies-list li{min-height:44px}}@media (pointer: coarse) and (max-width: 820px){.toolbar .model-toggle button{padding:0 calc(9px * var(--ui-scale, 1))}}.tut-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;pointer-events:auto}.tut-centrato{background:#02030a9e}.tut-buco{position:fixed;border-radius:12px;box-shadow:0 0 0 9999px #02030a9e;border:2px solid var(--accent);transition:left .18s ease,top .18s ease,width .18s ease,height .18s ease}.tut-bolla{position:fixed;width:min(340px,calc(100vw - 24px));padding:calc(14px * var(--ui-scale)) calc(16px * var(--ui-scale));background:var(--panel);border:1px solid var(--panel-border);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 44px #0009;color:var(--text)}.tut-bolla.centrata,.tut-centrato .tut-bolla{left:50%;top:50%;transform:translate(-50%,-50%)}.tut-bolla h3{margin:0 0 8px;color:var(--accent);font-size:calc(15px * var(--ui-scale));line-height:1.25}.tut-conta{display:block;margin-bottom:4px;font-size:calc(10.5px * var(--ui-scale));font-weight:700;letter-spacing:.6px;color:var(--muted);text-transform:uppercase}.tut-testo{margin:0;font-size:calc(12.5px * var(--ui-scale));line-height:1.5;color:#cdd6ee}.tut-testo b{color:var(--text)}.tut-check{margin-top:calc(10px * var(--ui-scale))}.tut-azioni{display:flex;flex-wrap:wrap;gap:calc(8px * var(--ui-scale));margin-top:calc(12px * var(--ui-scale))}.tut-azioni button{flex:1 1 auto;min-height:calc(44px * var(--ui-scale));padding:0 calc(14px * var(--ui-scale));border-radius:10px;font-size:calc(12.5px * var(--ui-scale));font-weight:600;background:transparent;border:1px solid var(--panel-border);color:var(--text)}.tut-azioni .tut-primario{flex:1 1 100%;background:var(--accent);border-color:var(--accent);color:#02030a;font-weight:700}.tut-azioni .tut-min{color:var(--muted);font-weight:500}.tut-azioni .tut-min:hover{color:var(--text)}.tut-bolla.mobile{left:calc(8px + var(--safe-left, 0px));right:calc(8px + var(--safe-right, 0px));bottom:calc(var(--bottom-bar-h, 0px) + 12px + var(--safe-bottom, 0px));top:auto;width:auto;transform:none;max-height:52vh;overflow-y:auto}.pt-bolla{position:fixed;z-index:62;width:min(300px,calc(100vw - 24px));padding:calc(12px * var(--ui-scale)) calc(14px * var(--ui-scale));background:var(--panel);border:1px solid var(--accent);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000008c;color:var(--text)}.pt-bolla.centrata{left:50%;top:50%;transform:translate(-50%,-50%)}.pt-bolla h4{margin:0 0 6px;padding-right:calc(26px * var(--ui-scale));color:var(--accent);font-size:calc(13px * var(--ui-scale))}.pt-bolla p{margin:0;font-size:calc(12px * var(--ui-scale));line-height:1.45;color:#cdd6ee}.pt-bolla p b{color:var(--text)}.pt-chiudi{position:absolute;top:calc(6px * var(--ui-scale));right:calc(6px * var(--ui-scale));width:calc(30px * var(--ui-scale));height:calc(30px * var(--ui-scale));display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--muted);font-size:calc(13px * var(--ui-scale));border-radius:8px}.pt-chiudi:hover{color:var(--text);background:#ffffff0f}.pt-check{margin-top:calc(10px * var(--ui-scale));font-size:calc(11.5px * var(--ui-scale));color:var(--muted)}.pt-capito{color:var(--text);font-weight:600}@media (pointer: coarse){.pt-bolla{width:min(300px,calc(100vw - 24px));max-height:46vh;overflow-y:auto}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.chip:hover{transform:none}}
