.sim-wrapper{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg);color:var(--text-primary);font-family:var(--font-primary);overflow:hidden;-webkit-user-select:none;user-select:none}.sim-toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap}.sim-toolbar-separator{width:1px;height:24px;background:var(--border);margin:0 4px;flex-shrink:0}.sim-toolbar button{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);padding:7px 13px;border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.sim-toolbar button:hover{background:var(--bg-secondary);border-color:var(--border-strong);color:var(--text-primary)}.sim-toolbar button.sim-active{background:var(--blue-light);border-color:#2563eb66;color:var(--blue)}.sim-toolbar button:disabled{opacity:.4;cursor:not-allowed}.sim-toolbar button:disabled:hover{background:var(--bg);border-color:var(--border);color:var(--text-secondary)}.sim-mode-toggle{display:flex;gap:0}.sim-mode-toggle button{border-radius:0}.sim-mode-toggle button:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.sim-mode-toggle button:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.sim-toggle-group{display:flex;align-items:center;gap:6px;cursor:pointer}.sim-toggle-label{font-size:13px;color:var(--text-muted);font-weight:500;cursor:pointer}.sim-toggle-switch{position:relative;width:36px;height:20px;background:var(--bg-tertiary);border:1px solid var(--border-strong);border-radius:10px;cursor:pointer;transition:background .2s,border-color .2s}.sim-toggle-switch.sim-on{background:var(--blue-muted);border-color:#2563eb66}.sim-toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:var(--bg);border-radius:50%;transition:transform .2s;box-shadow:var(--shadow-xs)}.sim-toggle-switch.sim-on:after{transform:translate(16px);background:var(--blue)}.sim-scale-slider{display:flex;align-items:center;gap:8px}.sim-scale-slider input[type=range]{width:132px;accent-color:var(--blue);cursor:pointer}.sim-scale-readout{min-width:42px;font-family:var(--font-jetbrains-mono),monospace;font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-muted)}.sim-record-btn{position:relative}.sim-record-btn.sim-recording{background:var(--red-light)!important;border-color:#e0313766!important;color:var(--red)!important}.sim-record-btn.sim-stop-btn{background:var(--bg-secondary)!important;border-color:var(--border-strong)!important;color:var(--text)!important}.sim-record-indicator{display:inline-block;width:8px;height:8px;background:var(--red);border-radius:50%;margin-right:6px;animation:sim-pulse 1s ease-in-out infinite;flex-shrink:0}@keyframes sim-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.sim-recording-controls{display:flex;align-items:center;gap:6px}.sim-record-timer{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--red);min-width:42px}.sim-record-status{font-size:13px;font-weight:600;color:var(--text-secondary);padding:0 4px}.sim-segment-bar{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.sim-segment-list{display:flex;align-items:center;gap:6px;flex:1;overflow-x:auto}.sim-segment-chip{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:12px;flex-shrink:0}.sim-segment-num{font-weight:700;color:var(--text);min-width:14px;text-align:center}.sim-segment-dur{color:var(--text-secondary)}.sim-segment-delete{background:none;border:none;color:var(--text-tertiary);font-size:14px;line-height:1;padding:0 2px;cursor:pointer;transition:color .15s}.sim-segment-delete:hover{color:var(--red)}.sim-segment-actions{display:flex;gap:6px;flex-shrink:0}.sim-segment-actions button{font-size:12px;padding:4px 10px}.sim-export-btn{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)!important}.sim-export-btn:hover{opacity:.9}.sim-countdown-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#10182859;display:flex;align-items:center;justify-content:center;z-index:9000;pointer-events:none}.sim-countdown-number{font-size:96px;font-weight:800;color:var(--bg);text-shadow:0 2px 24px rgba(16,24,40,.5);animation:sim-countdown-pop 1s ease-out forwards}@keyframes sim-countdown-pop{0%{opacity:0;transform:scale(1.8)}20%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.6)}}.sim-preview-segment-indicator{text-align:center;font-size:13px;font-weight:600;color:var(--text-secondary)}.sim-recordings-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto}.sim-recordings-bar:empty{display:none}.sim-recordings-notice{font-size:12px;color:var(--text-muted);white-space:nowrap}.sim-save-warning{padding:6px 12px;font-size:12px;color:var(--text-primary);background:var(--bg-warning, #fdf3d8);border-bottom:1px solid var(--border);flex-shrink:0}.sim-recording-thumb{position:relative;width:80px;height:48px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border);cursor:pointer;flex-shrink:0;background:var(--bg-inset);transition:border-color .15s}.sim-recording-thumb:hover{border-color:var(--blue)}.sim-recording-thumb video{width:100%;height:100%;object-fit:cover;pointer-events:none}.sim-recording-thumb-label{position:absolute;bottom:0;left:0;right:0;background:#1d2939b3;font-size:10px;color:#fff;padding:1px 4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sim-canvas-wrap{position:relative;flex:1;min-height:0;display:flex}.sim-canvas{flex:1;position:relative;overflow:hidden;background:var(--bg);cursor:default;isolation:isolate}.sim-playback-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:9500;display:flex;align-items:center;justify-content:center}.sim-playback-video{max-width:50%;max-height:50%;width:auto;height:auto;object-fit:contain;background:#000;display:block;border:2px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:0 10px 40px #0006;pointer-events:none}.sim-playback-actions{position:absolute;top:10px;right:12px;display:flex;gap:6px;z-index:9501}.sim-playback-btn{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);padding:6px 12px;border-radius:var(--radius-md);font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s}.sim-playback-btn:hover{background:var(--bg-secondary);border-color:var(--border-strong)}.sim-playback-btn.sim-danger{background:var(--red-light);border-color:#e031374d;color:var(--red)}.sim-playback-btn.sim-danger:hover{background:#e031371a}.sim-canvas:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,var(--border) .8px,transparent .8px);background-size:24px 24px;pointer-events:none;z-index:0}.sim-canvas.sim-canvas-recording:before{display:none}.sim-canvas.sim-canvas-hide-cursor,.sim-canvas.sim-canvas-hide-cursor *{cursor:none!important}.sim-synthetic-cursor{position:absolute;top:0;left:0;width:24px;height:24px;display:none;pointer-events:none;z-index:9000;background-repeat:no-repeat;background-position:center;background-size:contain;will-change:transform}.sim-synthetic-cursor[data-shape=default]{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><path d='M3 2 L3 19 L7.6 14.7 L10.6 21 L13.5 19.6 L10.5 13.6 L16.5 13.4 Z' fill='%23111' stroke='%23fff' stroke-width='1.3' stroke-linejoin='round'/></svg>")}.sim-synthetic-cursor[data-shape=crosshair]{margin:-12px 0 0 -12px;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><g stroke='%23fff' stroke-width='3'><line x1='12' y1='2' x2='12' y2='22'/><line x1='2' y1='12' x2='22' y2='12'/></g><g stroke='%23111' stroke-width='1.4'><line x1='12' y1='2' x2='12' y2='22'/><line x1='2' y1='12' x2='22' y2='12'/></g></svg>")}.sim-synthetic-cursor[data-shape=grab]{margin:-12px 0 0 -12px;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><g fill='%23111' stroke='%23fff' stroke-width='0.8'><rect x='7.5' y='9' width='9' height='9' rx='3'/><rect x='8' y='4' width='1.9' height='7' rx='0.95'/><rect x='10.3' y='2.5' width='1.9' height='8.5' rx='0.95'/><rect x='12.6' y='3' width='1.9' height='8' rx='0.95'/><rect x='14.9' y='5' width='1.9' height='6' rx='0.95'/></g></svg>")}.sim-synthetic-cursor[data-shape=grabbing]{margin:-12px 0 0 -12px;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><g fill='%23111' stroke='%23fff' stroke-width='0.8'><rect x='7' y='9' width='10' height='9' rx='3.5'/><rect x='8' y='7.5' width='1.9' height='3' rx='0.95'/><rect x='10.3' y='7' width='1.9' height='3.5' rx='0.95'/><rect x='12.6' y='7.2' width='1.9' height='3.3' rx='0.95'/><rect x='14.9' y='8' width='1.9' height='2.5' rx='0.95'/></g></svg>")}.sim-pad{position:absolute;left:12px;bottom:12px;z-index:8000;display:grid;grid-template-columns:auto auto;align-items:end;gap:8px;pointer-events:none}.sim-pad-selector{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:4px}.sim-pad-chip{pointer-events:auto;min-width:34px;height:24px;padding:0 8px;background:var(--bg);border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);font-size:12px;font-weight:700;font-family:inherit;font-variant-numeric:tabular-nums;cursor:pointer;box-shadow:var(--shadow-xs);transition:background .15s,border-color .15s,color .15s}.sim-pad-chip:hover{border-color:var(--border-strong);color:var(--text-primary)}.sim-pad-chip.sim-active{background:var(--blue);border-color:var(--blue);color:#fff}.sim-pad-dpad{display:grid;grid-template-columns:repeat(3,36px);grid-template-rows:repeat(3,36px);gap:4px}.sim-pad-btn[data-cmd=rotateCcw]{grid-area:1 / 1}.sim-pad-btn[data-cmd=forward]{grid-area:1 / 2}.sim-pad-btn[data-cmd=rotateCw]{grid-area:1 / 3}.sim-pad-btn[data-cmd=strafeLeft]{grid-area:2 / 1}.sim-pad-btn[data-cmd=strafeRight]{grid-area:2 / 3}.sim-pad-btn[data-cmd=reverse]{grid-area:3 / 2}.sim-pad-btn{pointer-events:auto;display:grid;place-items:center;width:36px;height:36px;padding:0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;touch-action:none;box-shadow:var(--shadow-sm);transition:background .15s,border-color .15s,color .15s}.sim-pad-btn:hover{background:var(--bg-secondary);border-color:var(--border-strong);color:var(--text-primary)}.sim-pad-btn:active{background:var(--blue-light);border-color:#2563eb66;color:var(--blue)}.sim-pad-btn[data-cmd^=rotate]{border-radius:50%}.sim-pad-glyph{display:block;width:18px;height:18px;pointer-events:none}.sim-pad-btn[data-cmd^=rotate] .sim-pad-glyph{width:21px;height:21px}.sim-pad-actions{display:grid;align-content:end;gap:4px}.sim-pad-action{pointer-events:auto;min-height:26px;padding:0 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:12px;font-weight:700;font-family:inherit;white-space:nowrap;cursor:pointer;box-shadow:var(--shadow-sm);transition:background .15s,border-color .15s,color .15s}.sim-pad-action:not(:disabled){background:var(--blue-light);border-color:#2563eb66;color:var(--blue);box-shadow:0 0 0 3px var(--blue-muted)}.sim-pad-action:not(:disabled):hover{background:var(--blue-muted)}.sim-pad-action:disabled{opacity:.4;cursor:not-allowed}.sim-pad-btn:focus-visible,.sim-pad-action:focus-visible,.sim-pad-chip:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.sim-load-unload-pad{position:absolute;left:12px;bottom:12px;z-index:8000;display:flex;gap:4px;pointer-events:none}.sim-load-unload-pad .sim-pad-action{pointer-events:auto}.sim-canvas .draggable{position:absolute;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:none}.sim-canvas .draggable.dragging{cursor:grabbing;filter:drop-shadow(0 2px 8px rgba(37,99,235,.25))}.sim-canvas .draggable.sim-robot-glow{filter:drop-shadow(0 0 8px rgba(37,99,235,.6)) drop-shadow(0 0 16px rgba(37,99,235,.3))}.tray-stack-badge{position:absolute;background:var(--blue);color:#fff;font-size:12px;font-weight:700;font-family:inherit;padding:1px 6px;border-radius:8px;pointer-events:none;z-index:1000;white-space:nowrap;line-height:1.4}.robot-number-badge{display:none;position:absolute;transform:translate(-50%,-100%);background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);font-size:12px;font-weight:700;font-family:inherit;font-variant-numeric:tabular-nums;padding:1px 6px;border-radius:8px;pointer-events:none;z-index:1000;white-space:nowrap;line-height:1.4;box-shadow:var(--shadow-xs)}.robot-number-badge.sim-selected{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 0 0 3px var(--blue-muted)}.background-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;opacity:.3;pointer-events:none;z-index:1}.drawn-square{position:absolute;border:2px solid var(--red);background:var(--red-glow);box-sizing:border-box;z-index:5}.drawn-square.transportable{border-color:var(--blue);background:var(--blue-muted)}.square-label{position:absolute;color:var(--text-primary);font-size:12px;font-family:var(--font-mono);pointer-events:auto;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:6}.square-label input{background:var(--bg);border:1px solid var(--blue);color:var(--text-primary);font-size:12px;font-family:var(--font-mono);padding:1px 4px;width:50px;outline:none;border-radius:var(--radius-sm);box-shadow:0 0 0 2px var(--blue-muted)}.resize-handle{position:absolute;background:#2563eb4d;z-index:7}.resize-handle:hover{background:#2563eb99}.resize-handle.top,.resize-handle.bottom{left:0;right:0;height:5px;cursor:ns-resize}.resize-handle.top{top:-2px}.resize-handle.bottom{bottom:-2px}.resize-handle.left,.resize-handle.right{top:0;bottom:0;width:5px;cursor:ew-resize}.resize-handle.left{left:-2px}.resize-handle.right{right:-2px}.sim-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center}.sim-dialog{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:24px 28px;min-width:220px;text-align:center;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-xl)}.sim-dialog h3{margin:0 0 4px;font-size:16px;font-weight:700;color:var(--text-primary)}.sim-dialog button{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);padding:8px 16px;border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s}.sim-dialog button:hover{background:var(--bg-secondary);border-color:var(--border-strong);color:var(--text-primary)}.sim-dialog button.sim-danger{background:var(--red-light);border-color:#e031374d;color:var(--red)}.sim-dialog button.sim-danger:hover{background:#e031371a}.sim-preview-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center}.sim-preview-content{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:16px;max-width:80vw;max-height:80vh;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-xl)}.sim-preview-content video{max-width:100%;max-height:60vh;border-radius:var(--radius-lg);background:#000}.sim-preview-actions{display:flex;gap:8px;justify-content:center}.sim-preview-actions button{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);padding:8px 18px;border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s}.sim-preview-actions button:hover{background:var(--bg-secondary);border-color:var(--border-strong)}.sim-preview-actions button.sim-danger{background:var(--red-light);border-color:#e031374d;color:var(--red)}.sim-preview-actions button.sim-danger:hover{background:#e031371a}.help-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;display:flex;align-items:center;justify-content:center}.help-popup{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:24px;max-width:480px;color:var(--text-primary);font-size:14px;line-height:1.6;box-shadow:var(--shadow-xl);animation:sim-modal-enter .25s var(--ease-out-expo)}@keyframes sim-modal-enter{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.help-popup h3{margin:0 0 12px;font-size:17px;font-weight:700;color:var(--blue)}.help-popup ul{margin:0 0 16px;padding-left:18px;color:var(--text-secondary)}.help-popup li{margin-bottom:6px}.help-popup li strong{color:var(--text-primary)}.help-popup button{background:var(--blue);border:none;color:var(--bg);padding:8px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;display:block;margin:0 auto;transition:background .15s}.help-popup button:hover{background:var(--blue-hover)}@container drawer (max-width: 768px){.sim-toolbar{gap:6px;padding:6px 8px}.sim-toolbar button{padding:6px 10px;font-size:13px}.sim-pad,.sim-load-unload-pad{left:8px;bottom:8px;gap:6px}.sim-pad-dpad{grid-template-columns:repeat(3,34px);grid-template-rows:repeat(3,34px)}.sim-pad-btn{width:34px;height:34px}}.op-area-boundary{border:2px dashed var(--green);background:var(--green-light);box-sizing:border-box;pointer-events:auto;border-radius:var(--radius-sm);cursor:move}.op-area-label{position:absolute;color:var(--green);font-size:11px;font-weight:600;white-space:nowrap;background:var(--bg);padding:1px 4px;border-radius:var(--radius-sm);opacity:.85}.square-label[data-op-area]{color:var(--green);font-weight:600;background:var(--bg);padding:1px 4px;opacity:.85}.op-area-dock-notch{background:var(--bg-secondary)}.op-area-dock-line{border-bottom:2px solid var(--amber)}@container drawer (max-width: 480px){.sim-toolbar{flex-wrap:wrap}.sim-toolbar button{min-height:var(--touch-target)}.sim-scale-slider input[type=range]{height:var(--touch-target)}.sim-pad{right:8px;grid-template-columns:auto}.sim-pad-dpad{grid-template-columns:repeat(3,var(--touch-target));grid-template-rows:repeat(3,var(--touch-target))}.sim-pad-btn{width:var(--touch-target);height:var(--touch-target)}.sim-pad-actions{grid-column:1 / -1;grid-auto-flow:column}.sim-pad-action{min-height:var(--touch-target)}}.gd-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20000;display:grid;place-items:center;padding:16px;background:#1018287a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:gd-fade .22s ease-out both}.gd-dialog{width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;display:flex;flex-direction:column;gap:14px;padding:16px 18px 18px;background:var(--bg);color:var(--text-primary);border-radius:22px;box-shadow:0 24px 48px -12px #10182847,0 0 0 1px #1018280f;animation:gd-pop .32s var(--ease-out-expo) both}.gd-dialog:focus{outline:none}.gd-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.gd-head{display:flex;align-items:center;gap:8px}.gd-count{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--text-tertiary)}.gd-mode{padding:3px 9px;border-radius:999px;background:var(--blue-light);color:var(--blue);font-size:12px;font-weight:700}.gd-close{margin-left:auto;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:999px;background:transparent;color:var(--text-secondary);cursor:pointer;touch-action:manipulation}.gd-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.gd-stage{position:relative;overflow:hidden;border-radius:16px;background:linear-gradient(180deg,#f7f8fa,#eef1f5);box-shadow:inset 0 0 0 1px var(--border);aspect-ratio:320 / 190;touch-action:pan-y}.gd-visual{position:absolute;top:0;right:0;bottom:0;left:0}.gd-in-next{animation:gd-slide-next .38s var(--ease-out-expo) both}.gd-in-prev{animation:gd-slide-prev .38s var(--ease-out-expo) both}.gd-svg{display:block;width:100%;height:100%;font-family:var(--font-primary)}.gd-zone{font-size:8px;font-weight:800;letter-spacing:2px;fill:#8a8577}.gd-zone-dark{fill:#eef0f3}.gd-copy{min-height:78px;animation:gd-rise .36s var(--ease-out-expo) both}.gd-title{margin:0 0 4px;font-size:21px;font-weight:800;letter-spacing:-.01em}.gd-caption{margin:0;font-size:15px;line-height:1.45;color:var(--text-secondary)}.gd-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.gd-dots{display:flex;align-items:center;gap:2px}.gd-dot{width:22px;height:32px;padding:0;border:0;background:transparent;cursor:pointer;position:relative;touch-action:manipulation}.gd-dot:after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:999px;background:var(--border-strong);transform:translate(-50%,-50%);transition:width .3s var(--ease-out-expo),background .2s}.gd-dot.is-done:after{background:#2563eb66}.gd-dot.is-on:after{width:20px;background:var(--blue)}.gd-dot:focus-visible{outline:2px solid var(--blue);outline-offset:-4px;border-radius:8px}.gd-nav{display:flex;gap:8px;flex-shrink:0}.gd-btn{min-height:44px;padding:0 18px;border-radius:999px;font:inherit;font-size:15px;font-weight:700;cursor:pointer;touch-action:manipulation;transition:background .15s,transform .1s}.gd-btn:active{transform:scale(.97)}.gd-btn-ghost{border:1px solid var(--border-strong);background:var(--bg);color:var(--text-secondary)}.gd-btn-ghost:hover{background:var(--bg-secondary)}.gd-btn-primary{border:1px solid var(--blue);background:var(--blue);color:#fff;box-shadow:0 6px 16px -6px #2563eb99}.gd-btn-primary:hover{background:var(--blue-hover)}.gd-btn:focus-visible,.gd-close:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media (max-width: 520px){.gd-backdrop{place-items:end stretch;padding:0}.gd-dialog{width:100%;max-height:calc(100dvh - 24px);border-radius:22px 22px 0 0;padding:12px 16px calc(16px + env(safe-area-inset-bottom));animation:gd-sheet .36s var(--ease-out-expo) both}.gd-title{font-size:19px}.gd-caption{font-size:14.5px}.gd-copy{min-height:84px}.gd-dot{width:18px}.gd-btn{padding:0 16px}}@media (max-width: 360px){.gd-foot{flex-direction:column;align-items:stretch}.gd-dots{justify-content:center}.gd-nav>*{flex:1}}@keyframes gd-fade{0%{opacity:0}}@keyframes gd-pop{0%{opacity:0;transform:translateY(10px) scale(.97)}}@keyframes gd-sheet{0%{transform:translateY(100%)}}@keyframes gd-slide-next{0%{opacity:0;transform:translate(28px)}}@keyframes gd-slide-prev{0%{opacity:0;transform:translate(-28px)}}@keyframes gd-rise{0%{opacity:0;transform:translateY(6px)}}.gd-svg [class^=gd-],.gd-svg [class*=" gd-"]{transform-box:fill-box;transform-origin:center;animation-duration:5s;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(.45,0,.25,1);animation-fill-mode:both}.gd-svg .gd-zone{animation:none}.gd-svg circle[class$=-press]{opacity:0}.gd-arrive{animation-name:gd-arrive}@keyframes gd-arrive{0%,10%{transform:translate(112px)}55%,to{transform:translate(0)}}.gd-v-dock .gd-light-open{animation-name:gd-light}@keyframes gd-light{0%,52%{fill:#9ca3af;transform:scale(1)}58%{fill:#22c55e;transform:scale(1.8)}66%,to{fill:#22c55e;transform:scale(1)}}.gd-add-ptr{animation-name:gd-add-ptr}@keyframes gd-add-ptr{0%{transform:translate(120px,90px);opacity:0}8%{opacity:1}28%,42%{transform:translate(0)}62%,86%{transform:translate(112px,72px);opacity:1}to{transform:translate(120px,90px);opacity:0}}.gd-add-press{animation-name:gd-press-at-33}@keyframes gd-press-at-33{0%,30%{opacity:0;transform:scale(.4)}34%{opacity:1;transform:scale(1)}44%,to{opacity:0;transform:scale(1.9)}}.gd-add-chip rect{animation:gd-chip 5s ease infinite both}@keyframes gd-chip{0%,31%{fill:#fff;stroke:#c5ccd6}34%,44%{fill:#eff4ff;stroke:#2563eb}52%,to{fill:#fff;stroke:#c5ccd6}}.gd-add-bot{animation-name:gd-add-bot}@keyframes gd-add-bot{0%,38%{transform:scale(0);opacity:0}48%{transform:scale(1.18);opacity:1}55%,88%{transform:scale(1);opacity:1}96%,to{transform:scale(.6);opacity:0}}.gd-move{animation-name:gd-move}@keyframes gd-move{0%,18%{transform:translate(0)}46%,58%{transform:translate(76px,-64px)}86%,to{transform:translate(0)}}.gd-move-ptr{animation-name:gd-move-ptr}@keyframes gd-move-ptr{0%{transform:translate(30px,28px);opacity:0}8%{opacity:1}15%,18%{transform:translate(0)}46%,58%{transform:translate(76px,-64px)}86%{transform:translate(0);opacity:1}96%,to{transform:translate(30px,28px);opacity:0}}.gd-rot{animation-name:gd-rot}@keyframes gd-rot{0%,14%{transform:rotate(0)}44%,60%{transform:rotate(90deg)}88%,to{transform:rotate(0)}}.gd-svg .gd-wheel{animation:gd-wheel .55s ease-in-out infinite alternate both}@keyframes gd-wheel{0%{transform:translateY(0);opacity:1}to{transform:translateY(4px);opacity:.35}}.gd-rot-arc{animation-name:gd-arc}@keyframes gd-arc{0%,12%{opacity:0}20%,50%{opacity:1}60%,to{opacity:0}}.gd-bl-bot{animation-name:gd-bl-bot}@keyframes gd-bl-bot{0%{transform:translate(0);opacity:0}6%,16%{transform:translate(0);opacity:1}50%,88%{transform:translate(111px);opacity:1}96%,to{transform:translate(111px);opacity:0}}.gd-bl-ptr{animation-name:gd-bl-ptr}@keyframes gd-bl-ptr{0%{transform:translate(26px,26px);opacity:0}8%{opacity:1}14%,16%{transform:translate(0)}50%,56%{transform:translate(111px);opacity:1}70%,to{transform:translate(140px,46px);opacity:0}}.gd-bl-trailer>rect:first-child{animation:gd-bl-outline 5s ease infinite both}@keyframes gd-bl-outline{0%,50%{stroke:#1f2937;stroke-width:1.2}54%,80%{stroke:#2563eb;stroke-width:2.4}90%,to{stroke:#1f2937;stroke-width:1.2}}.gd-bl-check{animation-name:gd-check}@keyframes gd-check{0%,53%{transform:scale(0);opacity:0}59%{transform:scale(1.2);opacity:1}64%,88%{transform:scale(1);opacity:1}96%,to{transform:scale(1);opacity:0}}.gd-cargo{animation-name:gd-cargo}@keyframes gd-cargo{0%,50%{transform:scale(.3);opacity:0}56%{transform:scale(1.12);opacity:1}60%,88%{transform:scale(1);opacity:1}96%,to{transform:scale(1);opacity:0}}.gd-cargo-ptr{animation-name:gd-cargo-ptr}@keyframes gd-cargo-ptr{0%{transform:translate(30px,28px);opacity:0}8%{opacity:1}16%,66%{transform:translate(0);opacity:1}80%,to{transform:translate(30px,28px);opacity:0}}.gd-hold{animation-name:gd-hold}@keyframes gd-hold{0%,18%{stroke-dashoffset:82;opacity:0}20%{opacity:1}50%{stroke-dashoffset:0;opacity:1}58%,to{stroke-dashoffset:0;opacity:0}}.gd-pu-lift{animation-name:gd-pu-lift}@keyframes gd-pu-lift{0%{transform:translate(0);opacity:0}5%,8%{transform:translate(0);opacity:1}30%,56%{transform:translate(62px)}84%,92%{transform:translate(62px,-60px);opacity:1}to{transform:translate(62px,-60px);opacity:0}}.gd-pu-tray{animation-name:gd-pu-tray}@keyframes gd-pu-tray{0%{transform:translate(0) scale(1);opacity:0}5%,54%{transform:translate(0) scale(1);opacity:1}60%{transform:translate(0) scale(1.14)}84%,92%{transform:translateY(-60px) scale(1.14);opacity:1}to{transform:translateY(-60px) scale(1.14);opacity:0}}.gd-pu-tray>g>rect:first-child{animation:gd-pu-shadow 5s ease infinite both}@keyframes gd-pu-shadow{0%,56%{filter:none}62%,to{filter:drop-shadow(0 3px 3px rgba(16,24,40,.35))}}.gd-pu-ptr{animation-name:gd-pu-ptr}@keyframes gd-pu-ptr{0%,26%{transform:translate(28px,26px);opacity:0}34%,56%{transform:translate(0);opacity:1}66%,to{transform:translate(28px,26px);opacity:0}}.gd-pu-hold{animation-name:gd-pu-hold}@keyframes gd-pu-hold{0%,35%{stroke-dashoffset:82;opacity:0}37%{opacity:1}54%{stroke-dashoffset:0;opacity:1}60%,to{stroke-dashoffset:0;opacity:0}}.gd-lu>rect{fill:#fff;stroke:#c5ccd6}.gd-lu>g{stroke:#98a2b3}.gd-lu text{fill:#98a2b3}.gd-ll-lift{animation-name:gd-ll-lift}@keyframes gd-ll-lift{0%{transform:translate(0);opacity:0}4%{opacity:1}20%,40%{transform:translate(34px)}62%{transform:translate(94px)}68%{transform:translate(94px)}86%,92%{transform:translate(30px);opacity:1}to{transform:translate(30px);opacity:0}}.gd-ll-tray{animation-name:gd-ll-tray}@keyframes gd-ll-tray{0%{transform:translate(0) scale(1.1);opacity:0}4%{opacity:1}20%,40%{transform:translate(34px) scale(1.1)}62%{transform:translate(94px) scale(1.1)}66%,92%{transform:translate(94px) scale(1);opacity:1}to{transform:translate(94px) scale(1);opacity:0}}.gd-ll-btn>rect,.gd-ll-btn>g,.gd-ll-btn text,.gd-lu2-btn>rect,.gd-lu2-btn>g,.gd-lu2-btn text{animation-duration:5s;animation-iteration-count:infinite;animation-timing-function:ease;animation-fill-mode:both}.gd-ll-btn>rect{animation-name:gd-ll-rect}.gd-ll-btn>g{animation-name:gd-ll-ink}.gd-ll-btn text{animation-name:gd-ll-text}@keyframes gd-ll-rect{0%,21%{fill:#fff;stroke:#c5ccd6}24%,40%{fill:#2563eb;stroke:#2563eb}46%,to{fill:#fff;stroke:#c5ccd6}}@keyframes gd-ll-ink{0%,21%{stroke:#98a2b3}24%,40%{stroke:#fff}46%,to{stroke:#98a2b3}}@keyframes gd-ll-text{0%,21%{fill:#98a2b3}24%,40%{fill:#fff}46%,to{fill:#98a2b3}}.gd-ll-ptr{animation-name:gd-ll-ptr}@keyframes gd-ll-ptr{0%,22%{transform:translate(64px,-46px);opacity:0}26%{opacity:1}32%,40%{transform:translate(0);opacity:1}52%,to{transform:translate(64px,-46px);opacity:0}}.gd-ll-press{animation-name:gd-press-at-35}@keyframes gd-press-at-35{0%,32%{opacity:0;transform:scale(.4)}35%{opacity:1;transform:scale(1)}44%,to{opacity:0;transform:scale(1.9)}}.gd-lu2-lift{animation-name:gd-lu2-lift}@keyframes gd-lu2-lift{0%{transform:translate(0);opacity:0}4%,28%{transform:translate(0);opacity:1}46%,54%{transform:translate(66px)}80%,92%{transform:translate(-10px);opacity:1}to{transform:translate(-10px);opacity:0}}.gd-lu2-tray{animation-name:gd-lu2-tray}@keyframes gd-lu2-tray{0%{transform:translate(0) scale(1);opacity:0}4%,48%{transform:translate(0) scale(1);opacity:1}54%{transform:translate(0) scale(1.1)}80%,92%{transform:translate(-76px) scale(1.1);opacity:1}to{transform:translate(-76px) scale(1.1);opacity:0}}.gd-lu2-btn>rect{animation-name:gd-lu2-rect}.gd-lu2-btn>g{animation-name:gd-lu2-ink}.gd-lu2-btn text{animation-name:gd-lu2-text}@keyframes gd-lu2-rect{0%,8%{fill:#fff;stroke:#c5ccd6}11%,28%{fill:#2563eb;stroke:#2563eb}34%,to{fill:#fff;stroke:#c5ccd6}}@keyframes gd-lu2-ink{0%,8%{stroke:#98a2b3}11%,28%{stroke:#fff}34%,to{stroke:#98a2b3}}@keyframes gd-lu2-text{0%,8%{fill:#98a2b3}11%,28%{fill:#fff}34%,to{fill:#98a2b3}}.gd-lu2-ptr{animation-name:gd-lu2-ptr}@keyframes gd-lu2-ptr{0%,10%{transform:translate(64px,-46px);opacity:0}14%{opacity:1}19%,27%{transform:translate(0);opacity:1}40%,to{transform:translate(64px,-46px);opacity:0}}.gd-lu2-press{animation-name:gd-press-at-22}@keyframes gd-press-at-22{0%,19%{opacity:0;transform:scale(.4)}22%{opacity:1;transform:scale(1)}31%,to{opacity:0;transform:scale(1.9)}}.gd-del-bot{animation-name:gd-del-bot}@keyframes gd-del-bot{0%{transform:scale(.6);opacity:0}6%,54%{transform:scale(1);opacity:1}62%,to{transform:scale(.2);opacity:0}}.gd-del-menu{animation-name:gd-del-menu}@keyframes gd-del-menu{0%,29%{transform:scale(.6);opacity:0}35%,54%{transform:scale(1);opacity:1}62%,to{transform:scale(.9);opacity:0}}.gd-del-ptr{animation-name:gd-del-ptr}@keyframes gd-del-ptr{0%{transform:translate(30px,28px);opacity:0}8%{opacity:1}14%,38%{transform:translate(0)}46%,56%{transform:translateY(-33px);opacity:1}72%,to{transform:translate(32px,-6px);opacity:0}}.gd-del-press{animation-name:gd-del-press}@keyframes gd-del-press{0%,15%{opacity:0;transform:scale(.4)}17%{opacity:1;transform:scale(1)}21%{opacity:0;transform:scale(1.8)}22%{opacity:0;transform:scale(.4)}24%{opacity:1;transform:scale(1)}28%{opacity:0;transform:scale(1.8)}48%{opacity:0;transform:scale(.4)}51%{opacity:1;transform:scale(1)}58%,to{opacity:0;transform:scale(1.8)}}.gd-rs-bot{animation-name:gd-rs-bot}@keyframes gd-rs-bot{0%,26%{transform:translate(0) rotate(0)}50%,70%{transform:translate(-56px,44px) rotate(-90deg)}76%,to{transform:translate(0) rotate(0)}}.gd-rs-ptr{animation-name:gd-rs-ptr}@keyframes gd-rs-ptr{0%{transform:translate(140px,130px);opacity:0}8%{opacity:1}16%,24%{transform:translate(33px,17px)}40%{transform:translate(150px,120px)}60%,72%{transform:translate(281px,17px);opacity:1}88%,to{transform:translate(230px,110px);opacity:0}}.gd-rs-ptr-only{animation-name:gd-rs-ptr-only}@keyframes gd-rs-ptr-only{0%,44%{transform:translate(230px,110px);opacity:0}50%{opacity:1}60%,72%{transform:translate(281px,17px);opacity:1}88%,to{transform:translate(230px,110px);opacity:0}}.gd-rs-press{animation-name:gd-rs-press}@keyframes gd-rs-press{0%,17%{opacity:0;transform:scale(.4)}20%{opacity:1;transform:scale(1)}28%{opacity:0;transform:scale(1.8)}66%{opacity:0;transform:scale(.4)}69%{opacity:1;transform:scale(1)}78%,to{opacity:0;transform:scale(1.8)}}.gd-rs-rec rect{animation:gd-rs-rec 5s ease infinite both}@keyframes gd-rs-rec{0%,18%{stroke:#c5ccd6;fill:#fff}21%,68%{stroke:#e03137;fill:#fef3f2}72%,to{stroke:#c5ccd6;fill:#fff}}.gd-rs-live{animation-name:gd-rs-live}@keyframes gd-rs-live{0%,20%{opacity:0}24%,30%,38%,46%,54%,62%{opacity:1}27%,34%,42%,50%,58%,66%,to{opacity:.2}70%{opacity:0}}.gd-rs-spin{animation-name:gd-rs-spin}@keyframes gd-rs-spin{0%,68%{transform:rotate(0)}80%,to{transform:rotate(-360deg)}}@media (prefers-reduced-motion: reduce){.gd-backdrop,.gd-dialog,.gd-visual,.gd-copy,.gd-svg *,.gd-svg [class^=gd-],.gd-svg [class*=" gd-"]{animation:none!important}.gd-svg .gd-rs-ptr,.gd-svg .gd-rs-ptr-only{transform:translate(281px,17px)}.gd-svg .gd-bl-bot,.gd-svg .gd-bl-ptr{transform:translate(111px)}.gd-svg .gd-pu-lift{transform:translate(62px)}.gd-svg .gd-pu-tray{transform:scale(1.14)}.gd-svg .gd-ll-lift,.gd-svg .gd-ll-tray{transform:translate(34px)}.gd-svg .gd-ll-btn>rect,.gd-svg .gd-lu2-btn>rect{fill:#2563eb;stroke:#2563eb}.gd-svg .gd-ll-btn>g,.gd-svg .gd-lu2-btn>g{stroke:#fff}.gd-svg .gd-ll-btn text,.gd-svg .gd-lu2-btn text{fill:#fff}.gd-svg .gd-hold,.gd-svg .gd-pu-hold{stroke-dashoffset:0}.gd-svg .gd-del-bot{opacity:.45}.gd-svg .gd-del-ptr{transform:translateY(-33px)}}:root{color-scheme:light;--bg: #ffffff;--bg-secondary: #f7f8fa;--bg-tertiary: #eaecf0;--bg-inset: #f2f4f7;--text-primary: #1d2939;--text-secondary: #475467;--text-tertiary: #667085;--text-muted: #98a2b3;--border: #e4e7ec;--border-strong: #d0d5dd;--blue: #2563eb;--blue-hover: #1d4ed8;--blue-light: #eff4ff;--blue-muted: rgba(37, 99, 235, .12);--red: #e03137;--red-light: #fef3f2;--red-glow: rgba(224, 49, 55, .1);--green: #12b76a;--green-light: #ecfdf3;--amber: #f59e0b;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow-xl: 0 20px 24px -4px rgba(16, 24, 40, .1), 0 8px 8px -4px rgba(16, 24, 40, .04);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--text: var(--text-primary);--shadow-sm: 0 1px 3px rgba(16, 24, 40, .1), 0 1px 2px rgba(16, 24, 40, .06);--bg-warning: #fffaeb;--font-jetbrains-mono: "JetBrains Mono";--touch-target: 44px;--font-primary: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text-primary);font-family:var(--font-primary);overflow:hidden;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}.simapp{display:flex;flex-direction:column;height:100vh;height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.simapp-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 12px;background:var(--bg);border-bottom:1px solid var(--border);flex-shrink:0;position:relative}.simapp-logo{position:absolute;left:14px;border-radius:6px;display:block}.simapp-actions{position:absolute;right:12px;display:flex;gap:8px}.simapp-action{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--bg);color:var(--text-secondary);font:inherit;font-size:13px;font-weight:700;cursor:pointer;touch-action:manipulation;transition:background .15s,color .15s}.simapp-action:hover{color:var(--text-primary);background:var(--bg-secondary)}.simapp-guide-btn{border-color:#2563eb59;background:var(--blue-light);color:var(--blue)}.simapp-guide-btn:hover{background:var(--blue-muted);color:var(--blue-hover)}.simapp-action:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media (max-width: 900px){.simapp-action-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.simapp-action{width:38px;min-height:38px;padding:0;justify-content:center}}.simapp-seg{--idx: 0;position:relative;display:grid;grid-template-columns:1fr 1fr;width:min(280px,calc(100vw - 100px));padding:3px;background:var(--bg-tertiary);border-radius:999px}.simapp-thumb{position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px)/2);background:var(--bg);border-radius:999px;box-shadow:0 1px 3px #1018282e;transform:translate(calc(var(--idx) * 100%));transition:transform .28s var(--ease-out-expo)}.simapp-opt{position:relative;z-index:1;min-height:36px;border:0;background:transparent;color:var(--text-secondary);font:inherit;font-size:14px;font-weight:700;letter-spacing:.01em;border-radius:999px;cursor:pointer;transition:color .2s}.simapp-opt.is-on{color:var(--blue)}.simapp-opt:focus-visible{outline:2px solid var(--blue);outline-offset:1px}@media (max-width: 520px){.simapp-bar{justify-content:space-between;gap:8px;padding:8px 10px}.simapp-logo,.simapp-actions{position:static;flex-shrink:0}.simapp-actions{gap:6px}.simapp-seg{width:auto;flex:1;max-width:260px}.simapp-opt{min-height:40px}}@media (max-width: 520px),(max-height: 500px){.simapp .sim-toolbar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;padding:6px 10px}.simapp .sim-toolbar::-webkit-scrollbar{display:none}.simapp .sim-toolbar button{padding:9px 12px;flex-shrink:0}.simapp .sim-toggle-group{flex-shrink:0}}@media (prefers-reduced-motion: reduce){.simapp-thumb{transition:none}}.simapp .sim-canvas{touch-action:none}.simapp .background-image[src^="data:image/svg+xml"]{opacity:1}.simapp button{touch-action:manipulation}.simapp.no-record .sim-record-btn{display:none}.simapp .sim-lu{left:12px;right:auto;bottom:14px;flex-direction:column;align-items:flex-start;gap:8px;width:max-content;max-width:calc(100% - 24px)}@media (orientation: portrait){.simapp .sim-lu{top:10px;bottom:auto;left:12px;width:calc(100% - 24px);flex-direction:column-reverse;align-items:stretch}.simapp .sim-lu-hint{align-self:center}}.simapp .sim-lu-hint{margin:0;padding:6px 12px;border-radius:999px;background:#111827d1;color:#fff;font-size:13px;font-weight:600;line-height:1.3;text-align:center;box-shadow:0 4px 12px #1018282e;transition:background .2s}.simapp .sim-lu.is-ready .sim-lu-hint{background:var(--blue)}.simapp .sim-lu.is-busy .sim-lu-hint{background:#475467}.simapp .sim-lu-row{display:flex;gap:10px}.simapp .sim-lu-btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;min-width:124px;justify-content:center;padding:0 18px 0 14px;border-radius:14px;border:1.5px solid var(--border-strong);background:#fffffff5;color:var(--text-tertiary);font-size:16px;font-weight:800;box-shadow:0 4px 14px #10182824}.simapp .sim-lu-btn:disabled{opacity:1;color:var(--text-muted);cursor:not-allowed}.simapp .sim-lu-btn:not(:disabled){background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 0 #2563eb8c;animation:simapp-lu-ready 1.6s ease-out infinite}.simapp .sim-lu-btn:not(:disabled):hover{background:var(--blue-hover)}.simapp .sim-lu-btn:not(:disabled):active{transform:scale(.97)}@keyframes simapp-lu-ready{0%{box-shadow:0 0 #2563eb8c}70%{box-shadow:0 0 0 12px #2563eb00}to{box-shadow:0 0 #2563eb00}}@media (max-height: 500px){.simapp .sim-lu-btn{min-height:40px;min-width:104px;font-size:15px}.simapp .sim-lu-hint{font-size:12px;padding:4px 10px}}@media (max-width: 520px){.simapp .sim-lu-btn{min-width:0;flex:1;min-height:44px}.simapp .sim-lu-row{width:100%}.simapp .sim-lu-hint{font-size:12.5px}}.simapp-hold-ring{position:fixed;z-index:30000;width:56px;height:56px;margin:-28px 0 0 -28px;border:3px solid var(--blue);border-radius:999px;pointer-events:none;animation:simapp-hold-ring .6s var(--ease-out-expo) forwards}@keyframes simapp-hold-ring{0%{transform:scale(.4);opacity:1}to{transform:scale(1.3);opacity:0}}@media (prefers-reduced-motion: reduce){.simapp .sim-lu-btn:not(:disabled){animation:none}.simapp-hold-ring{animation-duration:.01s}}
