.sim-stage--javalab.svelte-1vi8ed5{background:#fff;position:relative}.sim-stage--player.svelte-1vi8ed5{box-shadow:none;background:0 0;border:none;border-radius:0}.sim-viewport--javalab.svelte-1vi8ed5{min-height:320px}.sim-viewport--player.svelte-1vi8ed5{max-height:none}.sim-loading-panel--player.svelte-1vi8ed5,.sim-error-panel--player.svelte-1vi8ed5{min-height:0}.sim-toolbar.svelte-1vi8ed5{opacity:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;transition:opacity .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1);display:flex;transform:translateY(-6px)}.sim-toolbar--visible.svelte-1vi8ed5{opacity:1;transform:translateY(0)}.sim-toolbar--native.svelte-1vi8ed5{background:linear-gradient(#f8fafcf2 0%,#ffffffe6 100%);border-bottom:1px solid #f1f5f9;padding:.5rem .75rem}.dark .sim-toolbar--native.svelte-1vi8ed5{background:linear-gradient(#171717e6 0%,#0f0f0fd9 100%);border-color:#262626}.sim-toolbar--javalab.svelte-1vi8ed5{z-index:6;-webkit-backdrop-filter:blur(10px)saturate(1.15);backdrop-filter:blur(10px)saturate(1.15);background:#ffffffe6;border:1px solid #a7f3d073;border-radius:.625rem;flex-direction:row;justify-content:flex-end;gap:.1875rem;padding:.3125rem;position:absolute;top:.5rem;right:.5rem;box-shadow:inset 0 1px #ffffffb3,0 4px 16px -6px #0f281e24}.sim-action-btn.svelte-1vi8ed5{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;justify-content:center;align-items:center;gap:.25rem;min-width:2.125rem;min-height:2.125rem;padding:.4375rem;font-size:.6875rem;font-weight:600;transition:background-color .15s,border-color .15s,transform .12s,box-shadow .15s;display:inline-flex}.sim-action-btn.svelte-1vi8ed5:hover{background:#f1f5f9;border-color:#cbd5e1;box-shadow:0 2px 8px -2px #34d39933}.sim-action-btn.svelte-1vi8ed5:active{transform:scale(.94)}.sim-action-btn--wiggle.svelte-1vi8ed5{animation:.5s cubic-bezier(.34,1.56,.64,1) svelte-1vi8ed5-sim-wiggle}.sim-action-btn--pop.svelte-1vi8ed5{animation:.4s cubic-bezier(.34,1.56,.64,1) svelte-1vi8ed5-sim-pop}@keyframes svelte-1vi8ed5-sim-wiggle{0%{transform:rotate(0)}25%{transform:rotate(-12deg)scale(1.1)}50%{transform:rotate(10deg)scale(1.05)}75%{transform:rotate(-6deg)}to{transform:rotate(0)scale(1)}}@keyframes svelte-1vi8ed5-sim-pop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.sim-action-btn--ghost.svelte-1vi8ed5{background:0 0;border-color:#0000;padding:.3125rem}.sim-action-btn--ghost.svelte-1vi8ed5:hover{background:#ecfdf5cc;border-color:#a7f3d080}.sim-action-btn--labeled.svelte-1vi8ed5{padding:.375rem .625rem}.sim-badge.svelte-1vi8ed5{border-radius:9999px;padding:.125rem .625rem;font-size:.6875rem;font-weight:600}.sim-badge--native.svelte-1vi8ed5{color:#056446;background:#ecfdf5}.sim-shortcuts-hint.svelte-1vi8ed5{color:#94a3b8;font-size:.625rem}.sim-shortcuts-hint.svelte-1vi8ed5 kbd:where(.svelte-1vi8ed5){color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:.25rem;padding:0 .25rem;font-family:inherit;font-size:.5625rem;font-weight:600;display:inline-block}.sim-tap-hint.svelte-1vi8ed5{color:#057855;font-size:.6875rem;font-weight:600;display:none}@media (width<=639px),(pointer:coarse){.sim-shortcuts-hint.svelte-1vi8ed5{display:none}.sim-tap-hint.svelte-1vi8ed5{align-items:center;display:inline-flex}}.sim-share-toast.svelte-1vi8ed5{color:#057855;font-size:.6875rem;font-weight:600;animation:.25s svelte-1vi8ed5-toast-in}.sim-share-toast--float.svelte-1vi8ed5{white-space:nowrap;background:#fff;border:1px solid #a7f3d080;border-radius:.375rem;padding:.125rem .5rem;position:absolute;top:-1.75rem;right:0;box-shadow:0 2px 8px -2px #34d39940}@keyframes svelte-1vi8ed5-toast-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.sim-canvas-host.svelte-1vi8ed5{opacity:0;transition:opacity .45s cubic-bezier(.16,1,.3,1)}.sim-canvas-host.svelte-1vi8ed5:not(.sim-canvas-host--ready){pointer-events:none}.sim-canvas-host--ready.svelte-1vi8ed5{opacity:1}.sim-loading-hero.svelte-1vi8ed5{justify-content:center;align-items:center;width:4.5rem;height:4.5rem;display:flex;position:relative}.sim-loading-emoji.svelte-1vi8ed5{font-size:1.5rem;animation:2s ease-in-out infinite svelte-1vi8ed5-sim-emoji-bob;position:absolute}@keyframes svelte-1vi8ed5-sim-emoji-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.sim-loading-title.svelte-1vi8ed5{color:#056446;letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:700}.sim-state-title.svelte-1vi8ed5{color:#0f2d23;margin:0;font-size:1.0625rem;font-weight:700}.sim-state-title--error.svelte-1vi8ed5{color:#b91c1c}.sim-state-body.svelte-1vi8ed5{color:#64748b;max-width:22rem;margin:.375rem 0 0;font-size:.875rem;line-height:1.5}.sim-state-help.svelte-1vi8ed5{color:#94a3b8;max-width:20rem;margin:0;font-size:.8125rem}.sim-error-icon.svelte-1vi8ed5{background:linear-gradient(135deg,#fee2e2,#fef2f2);border:1px solid #fca5a580;border-radius:9999px;justify-content:center;align-items:center;width:3.75rem;height:3.75rem;display:flex}.sim-touch-hint.svelte-1vi8ed5{z-index:7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#057855;cursor:pointer;background:#fffffff0;border:1px solid #a7f3d0a6;border-radius:9999px;align-items:center;gap:.375rem;padding:.4375rem .75rem;font-size:.75rem;font-weight:600;animation:.5s cubic-bezier(.16,1,.3,1) svelte-1vi8ed5-sim-touch-in,2.5s ease-in-out .5s infinite svelte-1vi8ed5-sim-touch-pulse;display:inline-flex;position:absolute;bottom:.75rem;left:50%;transform:translate(-50%);box-shadow:0 4px 20px -6px #34d39959}.sim-touch-hint__icon.svelte-1vi8ed5{flex-shrink:0;width:.875rem;height:.875rem}@keyframes svelte-1vi8ed5-sim-touch-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@keyframes svelte-1vi8ed5-sim-touch-pulse{0%,to{box-shadow:0 4px 20px -6px #34d39959}50%{box-shadow:0 6px 24px -4px #34d39980}}@media (width<=639px),(pointer:coarse){.sim-touch-hint.svelte-1vi8ed5{display:inline-flex}}@media (width>=640px) and (pointer:fine){.sim-touch-hint.svelte-1vi8ed5{display:none}}.sim-loader.svelte-1vi8ed5,.sim-loader--playful.svelte-1vi8ed5{width:3.5rem;height:3.5rem;position:relative}.sim-loading-msg.svelte-1vi8ed5{color:#057855d9;margin:0;font-size:.8125rem;font-weight:600;animation:.4s svelte-1vi8ed5-sim-msg-fade}@keyframes svelte-1vi8ed5-sim-msg-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.sim-loader__ring.svelte-1vi8ed5{border:3px solid #a7f3d066;border-top-color:#34d399;border-radius:9999px;animation:.8s linear infinite svelte-1vi8ed5-sim-spin;position:absolute;inset:0}.sim-progress-track.svelte-1vi8ed5{background:#a7f3d04d;border-radius:9999px;height:.25rem;overflow:hidden}.sim-progress-bar.svelte-1vi8ed5{background:linear-gradient(90deg,#34d399,#10b981);border-radius:9999px;height:100%;transition:width .2s}@keyframes svelte-1vi8ed5-sim-spin{to{transform:rotate(360deg)}}@keyframes svelte-1vi8ed5-pulse-soft{0%,to{opacity:1}50%{opacity:.6}}.sim-pending-panel.svelte-1vi8ed5{border-radius:inherit;background:linear-gradient(160deg,#ecfdf599 0%,#fff 50%,#fefcf6 100%)}.sim-pending-icon.svelte-1vi8ed5{background:#d1fae580;border:1px solid #a7f3d099;border-radius:9999px;justify-content:center;align-items:center;width:4.5rem;height:4.5rem;animation:2.5s ease-in-out infinite svelte-1vi8ed5-pulse-soft;display:flex}.javalab-player #myP5Canvas{touch-action:none;vertical-align:top;display:inline-block}@media (prefers-reduced-motion:reduce){.sim-toolbar.svelte-1vi8ed5,.sim-canvas-host.svelte-1vi8ed5,.sim-progress-bar.svelte-1vi8ed5,.sim-action-btn.svelte-1vi8ed5,.sim-loading-msg.svelte-1vi8ed5{transition:none}.sim-loader__ring.svelte-1vi8ed5,.sim-pending-icon.svelte-1vi8ed5,.sim-action-btn--wiggle.svelte-1vi8ed5,.sim-action-btn--pop.svelte-1vi8ed5,.sim-loading-emoji.svelte-1vi8ed5,.sim-touch-hint.svelte-1vi8ed5{animation:none}.sim-canvas-host.svelte-1vi8ed5{opacity:1}.sim-toolbar.svelte-1vi8ed5{opacity:1;transform:none}}
