:root{color-scheme: dark;--bg: #0b1020;--bg-elev: rgba(17, 24, 39, 0.78);--bg-panel: rgba(15, 23, 42, 0.84);--bg-panel-strong: rgba(15, 23, 42, 0.96);--border: rgba(255, 255, 255, 0.10);--border-strong: rgba(255, 255, 255, 0.18);--text: #e5ecff;--muted: #95a3c7;--accent: #7c9cff;--accent-2: #4de2c5;--success: #46d39a;--danger: #ff6f91;--shadow: 0 24px 80px rgba(0, 0, 0, 0.35);--canvas-bg: #0b1020;--grid: rgba(255, 255, 255, 0.14);--rail: #f7fafc;--ball-stroke: rgba(255, 255, 255, 0.96);--toolbar-blur: blur(18px);--input-bg: rgba(255, 255, 255, 0.05);--button-bg: rgba(255, 255, 255, 0.06);--button-hover: rgba(255, 255, 255, 0.11);--seg-bg: rgba(255, 255, 255, 0.05);--seg-active: linear-gradient(135deg, rgba(124, 156, 255, 0.95), rgba(77, 226, 197, 0.95));--seg-active-text: #06111f;--stage-glow: radial-gradient(circle at top, rgba(124, 156, 255, 0.16), transparent 46%), radial-gradient(circle at bottom right, rgba(77, 226, 197, 0.12), transparent 42%);}html[data-theme="light"]{color-scheme: light;--bg: #eef3fb;--bg-elev: rgba(255, 255, 255, 0.78);--bg-panel: rgba(255, 255, 255, 0.84);--bg-panel-strong: rgba(255, 255, 255, 0.94);--border: rgba(15, 23, 42, 0.10);--border-strong: rgba(15, 23, 42, 0.18);--text: #11203f;--muted: #5b6d8f;--accent: #3b6cff;--accent-2: #0ea5a0;--success: #0b9968;--danger: #d6426c;--shadow: 0 20px 60px rgba(45, 68, 115, 0.16);--canvas-bg: #f6f9ff;--grid: rgba(17, 24, 39, 0.16);--rail: #0f172a;--ball-stroke: rgba(0, 0, 0, 0.92);--toolbar-blur: blur(18px);--input-bg: rgba(15, 23, 42, 0.04);--button-bg: rgba(15, 23, 42, 0.05);--button-hover: rgba(15, 23, 42, 0.10);--seg-bg: rgba(15, 23, 42, 0.06);--seg-active: linear-gradient(135deg, rgba(59, 108, 255, 0.95), rgba(14, 165, 160, 0.88));--seg-active-text: #f8fbff;--stage-glow: radial-gradient(circle at top, rgba(59, 108, 255, 0.12), transparent 42%), radial-gradient(circle at bottom right, rgba(14, 165, 160, 0.10), transparent 40%);}*{box-sizing: border-box;}html, body{margin: 0;width: 100%;min-height: 100dvh;overflow-x: hidden;overflow-y: auto;overscroll-behavior-x: none;overscroll-behavior-y: auto;background: var(--bg);color: var(--text);font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;-webkit-text-size-adjust: 100%;-webkit-overflow-scrolling: touch;}body::before{content: "";position: fixed;inset: 0;background: var(--stage-glow);pointer-events: none;}.app{position: relative;width: 100%;min-height: 100dvh;display: grid;grid-template-rows: auto 1fr;gap: 14px;padding: max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));}.toolbar{display: grid;grid-template-columns: auto 1fr;gap: 16px;align-items: center;padding: 16px 18px;border: 1px solid var(--border);background: var(--bg-panel);backdrop-filter: var(--toolbar-blur);border-radius: 22px;box-shadow: var(--shadow);min-height: 86px;}.brand{display: flex;flex-direction: column;gap: 0;min-width: 132px;justify-content: center;}.brand-title{font-size: 1.12rem;font-weight: 700;letter-spacing: 0.01em;}.controls{display: grid;grid-template-columns: minmax(180px, 280px) auto minmax(260px, 1.15fr) auto;gap: 14px;align-items: center;}.field{display: flex;flex-direction: column;gap: 6px;min-width: 0;}.field-label{font-size: 0.75rem;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase;color: var(--muted);}.siteswap-row{display: flex;gap: 10px;align-items: center;}input[type="text"]{width: 100%;padding: 14px 16px;border-radius: 16px;border: 1px solid var(--border);background: var(--input-bg);color: var(--text);font-size: 1rem;outline: none;transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;}input[type="text"]:focus{border-color: rgba(124, 156, 255, 0.65);box-shadow: 0 0 0 4px rgba(124, 156, 255, 0.18);}.btn, .seg-btn{border: 1px solid transparent;background: var(--button-bg);color: var(--text);border-radius: 16px;cursor: pointer;transition: transform 140ms ease, background 140ms ease, border-color 140ms ease, color 140ms ease;user-select: none;}.btn:hover, .seg-btn:hover{background: var(--button-hover);}.btn:active, .seg-btn:active{transform: translateY(1px) scale(0.995);}.btn{padding: 13px 16px;font-size: 0.95rem;font-weight: 700;white-space: nowrap;border-color: var(--border);}.icon-btn{width: 48px;height: 48px;padding: 0;display: inline-flex;align-items: center;justify-content: center;border-radius: 15px;}.icon-btn svg{width: 20px;height: 20px;fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round;stroke-linejoin: round;pointer-events: none;}.btn.primary{background: linear-gradient(135deg, rgba(124, 156, 255, 0.95), rgba(77, 226, 197, 0.92));color: #06111f;border-color: transparent;}.segmented{display: grid;grid-template-columns: repeat(3, minmax(92px, 1fr));gap: 6px;padding: 6px;background: var(--seg-bg);border: 1px solid var(--border);border-radius: 18px;min-width: 0;}.seg-btn{padding: 12px 14px;font-size: 0.95rem;font-weight: 700;background: transparent;white-space: nowrap;}.seg-btn.active{background: var(--seg-active);color: var(--seg-active-text);box-shadow: 0 12px 30px rgba(77, 226, 197, 0.18);}.status{min-height: 52px;display: flex;align-items: center;padding: 14px 16px;border-radius: 16px;border: 1px solid var(--border);background: var(--input-bg);color: var(--muted);font-size: 0.95rem;line-height: 1.35;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}.status.valid{color: var(--success);}.status.invalid{color: var(--danger);}.actions{display: flex;gap: 10px;justify-self: stretch;justify-content: flex-start;align-items: center;flex-wrap: wrap;}.actions-field{min-width: 0;}.field-label.placeholder{visibility: hidden;}.checkbox-pill{display: inline-flex;align-items: center;gap: 10px;padding: 0 14px;height: 48px;border-radius: 16px;border: 1px solid var(--border);background: var(--button-bg);color: var(--text);font-size: 0.92rem;font-weight: 700;cursor: pointer;user-select: none;white-space: nowrap;}.checkbox-pill:hover{background: var(--button-hover);}.checkbox-pill input{width: 16px;height: 16px;margin: 0;accent-color: var(--accent);cursor: pointer;}.checkbox-pill.active, .checkbox-pill:has(input:checked){background: var(--seg-active);color: var(--seg-active-text);border-color: transparent;box-shadow: 0 12px 30px rgba(77, 226, 197, 0.16);}.mode-select-shell{position: relative;min-width: 0;}.mode-select{width: 100%;appearance: none;-webkit-appearance: none;-moz-appearance: none;padding: 13px 46px 13px 16px;border-radius: 16px;border: 1px solid var(--border);background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.03));color: var(--text);font-size: 0.95rem;font-weight: 700;outline: none;cursor: pointer;transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;}.mode-select:hover{background: var(--button-hover);}.mode-select option{background: var(--bg-panel-strong);color: var(--text);}html[data-theme="dark"] .mode-select option{background: #111827;color: #e5ecff;}html[data-theme="light"] .mode-select option{background: #ffffff;color: #11203f;}.mode-select:focus{border-color: rgba(124, 156, 255, 0.65);box-shadow: 0 0 0 4px rgba(124, 156, 255, 0.18);}.mode-select-shell::after{content: "";position: absolute;top: 50%;right: 16px;width: 10px;height: 10px;border-right: 2px solid var(--muted);border-bottom: 2px solid var(--muted);transform: translateY(-65%) rotate(45deg);pointer-events: none;}.settings-backdrop{position: fixed;inset: 0;background: rgba(2, 8, 23, 0.24);backdrop-filter: none;opacity: 0;pointer-events: none;transition: opacity 180ms ease;z-index: 30;}.settings-backdrop.open{opacity: 1;pointer-events: auto;}.settings-panel{position: absolute;top: 14px;right: 14px;bottom: 14px;width: min(440px, calc(100vw - 28px));overflow: auto;border-radius: 24px;border: 1px solid var(--border);background: var(--bg-panel-strong);box-shadow: var(--shadow);padding: 20px;transform: translateX(calc(100% + 22px));transition: transform 220ms ease;}.settings-backdrop.open .settings-panel{transform: translateX(0);}.settings-header{display: flex;align-items: center;justify-content: space-between;gap: 16px;margin-bottom: 16px;}.settings-title{font-size: 1.08rem;font-weight: 800;}.settings-grid{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 14px;}.setting-card{border: 1px solid var(--border);background: var(--input-bg);border-radius: 18px;padding: 14px;display: flex;flex-direction: column;gap: 10px;}.setting-card.full{grid-column: 1 / -1;}.setting-title{font-size: 0.88rem;font-weight: 800;}.setting-copy{font-size: 0.82rem;color: var(--muted);line-height: 1.4;}.setting-value{font-size: 0.82rem;color: var(--accent-2);font-weight: 700;}.fps-readout{display: flex;align-items: center;justify-content: space-between;gap: 12px;min-height: 48px;padding: 10px 13px;border: 1px solid var(--border);border-radius: 14px;background: rgba(255, 255, 255, 0.035);}.fps-readout-label{color: var(--muted);font-size: 0.82rem;font-weight: 750;}.fps-readout-value{color: var(--accent-2);font-size: 1.08rem;font-weight: 850;font-variant-numeric: tabular-nums;white-space: nowrap;}.club-profile-canvas{position: relative;inset: auto;display: block;width: 100%;height: 160px;border-radius: 16px;border: 1px solid var(--border);background: rgba(255,255,255,0.04);}.club-profile-json{width: 100%;min-height: 190px;resize: vertical;padding: 12px 14px;border-radius: 16px;border: 1px solid var(--border);background: rgba(0,0,0,0.18);color: var(--text);font: 0.78rem/1.45 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;outline: none;tab-size: 2;}.club-profile-actions{display: flex;flex-wrap: wrap;gap: 10px;align-items: center;}.club-profile-actions .btn{padding: 10px 12px;font-size: 0.82rem;border-radius: 14px;}input[type="range"]{width: 100%;accent-color: var(--accent);}.workspace{min-height: 0;display: grid;grid-template-columns: minmax(300px, 1fr) minmax(0, 1.618fr);gap: 14px;}.pane-shell{position: relative;min-height: 0;border-radius: 28px;overflow: hidden;border: 1px solid var(--border);background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));box-shadow: var(--shadow);}.stage-shell, .animator-shell{min-width: 0;}.stage-stack{position: absolute;inset: 0;display: grid;grid-template-rows: 0fr 1fr;gap: 0;width: 100%;height: 100%;min-height: 0;overflow: hidden;transition: none;}.stage-shell.score-enabled .stage-stack{grid-template-rows: 0.381966fr 0.618034fr;}.score-shell, .stage-canvas-wrap{position: relative;min-height: 0;width: 100%;height: 100%;overflow: hidden;}.score-shell{display: none;border-bottom: 1px solid var(--border);background: var(--canvas-bg);}.stage-shell.score-enabled .score-shell{display: block;}.stage-canvas-wrap canvas{position: absolute;inset: 0;display: block;width: 100%;height: 100%;}.stage-stack{display: block;}.stage-canvas-wrap{position: absolute;inset: 0;width: 100%;height: 100%;z-index: 1;}.score-shell{position: absolute;inset: 0 0 auto 0;height: 0;z-index: 2;}.stage-shell.score-enabled .stage-stack{display: grid;grid-template-rows: 0.381966fr 0.618034fr;}.stage-shell.score-enabled .score-shell, .stage-shell.score-enabled .stage-canvas-wrap{position: relative;inset: auto;height: 100%;}.stage-shell.score-enabled .stage-canvas-wrap canvas, .animator-canvas-wrap canvas{max-width: none;max-height: none;}.checkbox-pill.disabled{opacity: 0.48;cursor: not-allowed;}.checkbox-pill.disabled input, .checkbox-pill.disabled span{cursor: not-allowed;}.stage-shell.score-enabled .stage-stack{display: grid;grid-template-rows: minmax(108px, 0.381966fr) minmax(0, 0.618034fr);gap: 14px;padding: 12px;}.stage-shell.score-enabled .score-shell, .stage-shell.score-enabled .stage-canvas-wrap{border: 1px solid var(--border);border-radius: 18px;background: var(--canvas-bg);overflow: hidden;}.score-vex-viewport{position: absolute;inset: 0;overflow: hidden;background: var(--canvas-bg);touch-action: pan-y;user-select: none;-webkit-user-select: none;}.score-vex-track{position: absolute;inset: 0 auto auto 0;width: 100%;height: 100%;transform: translate3d(0, 0, 0);transform-origin: 0 0;will-change: transform;pointer-events: none;}.score-vex-copy{position: absolute;top: 0;height: 100%;overflow: hidden;color: var(--rail);}.score-vex-copy svg{display: block;overflow: visible;color: var(--rail);}.score-vex-copy svg text{fill: var(--muted) !important;stroke: none !important;font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-weight: 700;}.score-vex-copy svg .score-ottava-line{stroke: currentColor !important;stroke-width: 1.2;vector-effect: non-scaling-stroke;}.score-vex-copy svg text.score-tuplet-number{fill: var(--rail) !important;stroke: var(--canvas-bg) !important;stroke-width: 3.4px !important;paint-order: stroke fill;font-weight: 900;letter-spacing: 0;text-rendering: geometricPrecision;}.score-vex-copy svg text.score-label{paint-order: stroke fill;stroke: var(--canvas-bg) !important;stroke-width: 2.4px !important;text-rendering: geometricPrecision;}.score-vex-cursor{position: absolute;top: 8px;bottom: 8px;width: 0;border-left: max(2px, 0.16vw) dashed var(--grid);transform: translateX(-0.5px);pointer-events: none;z-index: 3;}.score-vex-message{position: absolute;inset: 0;display: none;align-items: center;justify-content: center;color: var(--muted);font-weight: 700;text-align: center;padding: 18px;pointer-events: none;}.score-vex-viewport.message .score-vex-message{display: flex;}.animator-shell{background: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.012));}.pane-header{display: flex;align-items: baseline;justify-content: space-between;gap: 12px;padding: 14px 16px 10px;border-bottom: 1px solid var(--border);background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));backdrop-filter: var(--toolbar-blur);}.pane-title{font-size: 0.92rem;font-weight: 800;letter-spacing: 0.03em;}.pane-copy{font-size: 0.75rem;color: var(--muted);white-space: nowrap;}.animator-canvas-wrap{position: relative;min-height: 0;width: 100%;height: 100%;}canvas{position: absolute;inset: 0;display: block;width: 100%;height: 100%;background: var(--canvas-bg);touch-action: none;image-rendering: auto;-webkit-user-select: none;user-select: none;-webkit-touch-callout: none;-webkit-tap-highlight-color: transparent;}@media (max-width: 1180px){.app{grid-template-rows: auto auto;}.workspace{min-height: auto;grid-template-columns: 1fr;grid-template-rows: auto auto;}.animator-shell, .stage-shell{width: min(100%, 760px);aspect-ratio: 1 / 1;justify-self: center;}.toolbar{grid-template-columns: 1fr;}.controls{grid-template-columns: 1fr;}canvas{touch-action: pan-y;}.actions{justify-self: stretch;}.actions .btn{flex: 0 0 auto;}.status{white-space: normal;}.settings-panel{top: env(safe-area-inset-top, 0px);right: env(safe-area-inset-right, 0px);bottom: env(safe-area-inset-bottom, 0px);width: min(420px, 100vw);border-radius: 22px 0 0 22px;}.settings-grid{grid-template-columns: 1fr;}}@media (max-width: 700px){.app{gap: 10px;padding: max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));}.toolbar{gap: 12px;padding: 14px;border-radius: 20px;min-height: 0;}.pane-shell, .stage-shell, .animator-shell{border-radius: 22px;}input[type="text"], .btn, .seg-btn, .checkbox-pill, .mode-select{min-height: 44px;}.settings-panel{-webkit-overflow-scrolling: touch;}.animator-shell, .stage-shell{width: 100%;}}.status{height: 48px;min-height: 48px;padding-top: 0;padding-bottom: 0;align-items: center;}.animator-plane-controls{position: absolute;top: 12px;right: 12px;z-index: 4;display: inline-flex;gap: calc(5px * var(--sitegen-scale));padding: 5px;border: 1px solid var(--border);border-radius: 16px;background: var(--bg-panel);backdrop-filter: var(--toolbar-blur);box-shadow: 0 10px 26px rgba(0, 0, 0, 0.18);transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;}.animator-dimension-btn{position: absolute;top: 12px;left: 12px;z-index: 5;min-width: 48px;height: 44px;padding: 0 13px;display: inline-flex;align-items: center;justify-content: center;gap: 7px;border-radius: 15px;border: 1px solid var(--border);background: var(--bg-panel);color: var(--text);backdrop-filter: var(--toolbar-blur);box-shadow: 0 10px 26px rgba(0, 0, 0, 0.18);font: 850 0.78rem Inter, ui-sans-serif, system-ui, sans-serif;letter-spacing: 0.04em;cursor: pointer;touch-action: manipulation;}.animator-dimension-btn:hover{background: var(--button-hover);}.animator-dimension-btn.active{background: var(--seg-active);color: var(--seg-active-text);border-color: transparent;}.animator-dimension-icon{width: 18px;height: 18px;display: block;}.animator-dimension-icon path, .animator-dimension-icon line, .animator-dimension-icon polygon{fill: none;stroke: currentColor;stroke-width: 1.7;stroke-linecap: round;stroke-linejoin: round;}.animator-3d-hint{position: absolute;left: 50%;bottom: 12px;z-index: 4;transform: translate(-50%, 6px);padding: 7px 11px;border: 1px solid var(--border);border-radius: 999px;background: var(--bg-panel);color: var(--muted);backdrop-filter: var(--toolbar-blur);font-size: 0.72rem;font-weight: 750;white-space: nowrap;opacity: 0;pointer-events: none;transition: opacity 180ms ease, transform 180ms ease;}.animator-shell.animator-3d .animator-plane-controls{opacity: 0;visibility: hidden;pointer-events: none;transform: translateY(-5px);}.animator-shell.animator-3d .animator-3d-hint{opacity: 0.92;transform: translate(-50%, 0);}.animator-shell.animator-3d.animator-3d-interacted .animator-3d-hint{opacity: 0;transform: translate(-50%, 5px);}.animator-shell.animator-3d canvas{cursor: grab;touch-action: none;overscroll-behavior: contain;}.animator-shell.animator-3d.animator-3d-dragging canvas{cursor: grabbing;}.animator-3d-touch-controls{position: absolute;right: 12px;bottom: 12px;z-index: 7;display: none;grid-template-columns: repeat(3, 40px);grid-template-rows: repeat(3, 40px);gap: 5px;padding: 6px;border: 1px solid var(--border);border-radius: 18px;background: var(--bg-panel);backdrop-filter: var(--toolbar-blur);box-shadow: 0 12px 30px rgba(0, 0, 0, 0.22);opacity: 0.82;transition: opacity 140ms ease, transform 140ms ease;user-select: none;-webkit-user-select: none;}.animator-3d-touch-controls:focus-within, .animator-3d-touch-controls:active{opacity: 1;}.animator-camera-btn{width: 40px;height: 40px;padding: 0;border: 0;border-radius: 12px;background: var(--button-bg);color: var(--text);font: 800 1rem/1 Inter, ui-sans-serif, system-ui, sans-serif;cursor: pointer;touch-action: manipulation;}.animator-camera-btn:hover, .animator-camera-btn:focus-visible{background: var(--button-hover);}.animator-camera-btn:active{transform: translateY(1px) scale(0.97);}.animator-camera-btn.reset{font-size: 0.82rem;letter-spacing: 0.02em;}.animator-camera-btn[data-camera-action="pitch-up"]{grid-column: 2;grid-row: 1;}.animator-camera-btn[data-camera-action="yaw-left"]{grid-column: 1;grid-row: 2;}.animator-camera-btn[data-camera-action="reset"]{grid-column: 2;grid-row: 2;}.animator-camera-btn[data-camera-action="yaw-right"]{grid-column: 3;grid-row: 2;}.animator-camera-btn[data-camera-action="zoom-out"]{grid-column: 1;grid-row: 3;}.animator-camera-btn[data-camera-action="pitch-down"]{grid-column: 2;grid-row: 3;}.animator-camera-btn[data-camera-action="zoom-in"]{grid-column: 3;grid-row: 3;}.animator-3d-mobile-dock{display: none;}.animator-3d-controls-toggle{width: 100%;min-height: 44px;display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 0 14px;border: 0;background: transparent;color: var(--text);font: 800 0.82rem/1 Inter, ui-sans-serif, system-ui, sans-serif;cursor: pointer;}.animator-3d-controls-chevron{color: var(--muted);font-size: 1rem;transition: transform 140ms ease;}@media (max-width: 820px), (pointer: coarse){.animator-shell.animator-3d{display: grid;grid-template-rows: minmax(0, 1fr) auto;aspect-ratio: auto;}.animator-shell.animator-3d .animator-canvas-wrap{height: auto;aspect-ratio: 1 / 1;}.animator-shell.animator-3d .animator-3d-mobile-dock{display: block;min-width: 0;border-top: 1px solid var(--border);background: var(--bg-panel);}.animator-shell.animator-3d .animator-3d-hint{display: none;}.animator-shell.animator-3d .animator-3d-mobile-dock .animator-3d-touch-controls{position: static;right: auto;bottom: auto;width: 100%;display: none;grid-template-columns: repeat(7, minmax(36px, 1fr));grid-template-rows: 40px;gap: 5px;padding: 0 8px 8px;border: 0;border-radius: 0;background: transparent;box-shadow: none;backdrop-filter: none;opacity: 1;}.animator-shell.animator-3d .animator-3d-mobile-dock.open .animator-3d-touch-controls{display: grid;}.animator-3d-mobile-dock.open .animator-3d-controls-chevron{transform: rotate(180deg);}.animator-3d-mobile-dock .animator-camera-btn{width: 100%;height: 40px;min-width: 0;grid-column: auto !important;grid-row: auto !important;}}.plane-btn{width: 32px;height: 32px;border: 0;border-radius: 11px;background: transparent;color: var(--muted);font: 800 0.78rem Inter, ui-sans-serif, system-ui, sans-serif;cursor: pointer;}.plane-btn:hover{background: var(--button-hover);color: var(--text);}.plane-btn.active{background: var(--seg-active);color: var(--seg-active-text);}.settings-panel-main{width: min(720px, calc(100vw - 28px));}.settings-panel-main .settings-grid{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 12px;}.settings-panel-main .setting-card.full{grid-column: 1 / -1;}.toolbar.toolbar-main{display: block;padding: 14px;min-height: 0;}.toolbar-topline{display: grid;grid-template-columns: minmax(132px, 0.55fr) minmax(420px, 2.15fr) auto;gap: 14px;align-items: end;}.brand-subtitle{margin-top: 3px;color: var(--muted);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.04em;white-space: nowrap;}.toolbar-pattern-field, .toolbar-mode-field, .toolbar-status-field{min-width: 0;}.toolbar-action-cluster{display: flex;gap: 8px;align-items: end;justify-content: flex-end;flex-wrap: wrap;min-width: 248px;}.toolbar-action-cluster .btn, .toolbar-action-cluster .checkbox-pill{height: 48px;}.toolbar-action-cluster .compact-pill{padding-inline: 12px;}.settings-panel-main{width: min(560px, calc(100vw - 28px));display: flex;flex-direction: column;gap: 14px;}.settings-subtitle{color: var(--muted);font-size: 0.82rem;margin-top: 3px;}.settings-tabs{display: grid;grid-template-columns: repeat(5, minmax(0, 1fr));gap: 6px;padding: 6px;border: 1px solid var(--border);border-radius: 18px;background: var(--seg-bg);}.settings-tab{border: 0;border-radius: 13px;background: transparent;color: var(--muted);font: inherit;font-size: 0.86rem;font-weight: 800;padding: 10px 9px;cursor: pointer;transition: background 140ms ease, color 140ms ease, transform 140ms ease;}.settings-tab:hover{background: var(--button-hover);color: var(--text);}.settings-tab:active{transform: translateY(1px);}.settings-tab.active{background: var(--seg-active);color: var(--seg-active-text);box-shadow: 0 10px 24px rgba(77, 226, 197, 0.16);}.settings-tab-panels{min-height: 0;}.settings-tab-panel[hidden]{display: none !important;}.setting-toggle-grid{display: flex;flex-wrap: wrap;gap: 10px;align-items: center;}.setting-toggle-grid .checkbox-pill{flex: 0 0 auto;height: 44px;}.settings-panel-main .settings-grid{grid-template-columns: repeat(2, minmax(0, 1fr));}@media (max-width: 1320px){.toolbar-topline{grid-template-columns: 1fr;align-items: stretch;}.toolbar-action-cluster{min-width: 0;justify-content: flex-start;}}@media (max-width: 820px){.toolbar-action-cluster .btn:not(.icon-btn), .toolbar-action-cluster .checkbox-pill{flex: 1 1 auto;justify-content: center;}.settings-tabs{display: flex;overflow-x: auto;-webkit-overflow-scrolling: touch;}.settings-tab{flex: 0 0 auto;min-width: 88px;}.settings-panel-main .settings-grid{grid-template-columns: 1fr;}}@media (max-width: 760px){.sitegen-grid:not(.sitegen-list) .sitegen-tile-top{grid-template-columns: 1fr;align-items: start;}.sitegen-grid:not(.sitegen-list) .sitegen-tags{justify-content: flex-start;}.sitegen-grid:not(.sitegen-list) .sitegen-tile{gap: calc(7px * var(--sitegen-scale));padding: calc(8px * var(--sitegen-scale));}}@media (max-width: 520px){.toolbar-action-cluster .icon-btn{flex: 1 1 44px;}.brand-subtitle{white-space: normal;}}.toolbar.toolbar-main{padding: 14px 16px;}.toolbar-topline{grid-template-columns: minmax(150px, 0.56fr) minmax(360px, 1.38fr) minmax(116px, 0.46fr) minmax(148px, 0.54fr) minmax(260px, 1.10fr) auto;align-items: end;}.brand{align-self: center;justify-content: center;}.brand-subtitle{font-size: 0.79rem;letter-spacing: 0.035em;}.toolbar-pattern-field, .toolbar-prop-field, .toolbar-mode-field, .toolbar-status-field{min-width: 0;}.siteswap-row input, .toolbar-prop-field .mode-select, .toolbar-mode-field .mode-select, .status{height: 48px;min-height: 48px;}.status{padding: 0 14px;align-items: center;}.toolbar-action-cluster{min-width: 268px;display: grid;grid-template-columns: repeat(5, 48px);gap: 7px;align-items: flex-end;justify-content: end;}.toolbar-action-cluster .icon-btn, .toolbar-action-cluster .symbol-toggle{width: 48px;height: 48px;flex: 0 0 48px;}.symbol-toggle{display: inline-flex;align-items: center;justify-content: center;padding: 0;border-radius: 15px;border: 1px solid var(--border);background: var(--button-bg);color: var(--text);cursor: pointer;user-select: none;transition: transform 140ms ease, background 140ms ease, border-color 140ms ease, color 140ms ease;}.symbol-toggle:hover{background: var(--button-hover);}.symbol-toggle:active{transform: translateY(1px) scale(0.995);}.symbol-toggle input{position: absolute;opacity: 0;pointer-events: none;}.symbol-toggle .symbol-toggle-icon{font-size: 1.24rem;line-height: 1;transform: translateY(-1px);}.symbol-toggle.active, .symbol-toggle:has(input:checked){background: var(--seg-active);color: var(--seg-active-text);border-color: transparent;box-shadow: 0 12px 30px rgba(77, 226, 197, 0.18);}.settings-panel-main{width: min(620px, calc(100vw - 28px));}.settings-tabs{grid-template-columns: repeat(3, minmax(0, 1fr));}.setting-grid-compact{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 12px;}.setting-card .mode-select-shell{width: 100%;}@media (max-width: 1320px){.toolbar-topline{grid-template-columns: 1fr 1fr;align-items: stretch;}.brand{grid-column: 1 / -1;}.toolbar-status-field{grid-column: 1 / -1;}.toolbar-action-cluster{grid-column: 1 / -1;min-width: 0;display: grid;grid-template-columns: repeat(5, minmax(44px, 48px));justify-content: flex-start;}.toolbar-action-cluster .icon-btn, .toolbar-action-cluster .symbol-toggle{width: 100%;flex-basis: auto;}}@media (max-width: 760px){.toolbar-topline{grid-template-columns: 1fr;}.brand, .toolbar-status-field, .toolbar-action-cluster{grid-column: auto;}.toolbar-action-cluster{display: grid;grid-template-columns: repeat(5, minmax(44px, 1fr));}.toolbar-action-cluster .icon-btn, .toolbar-action-cluster .symbol-toggle{width: 100%;flex-basis: auto;}.settings-panel-main .settings-grid, .setting-grid-compact{grid-template-columns: 1fr;}}.siteswap-row{display: grid;grid-template-columns: minmax(0, 1fr) auto 48px;gap: 10px;align-items: center;}.siteswap-row .symbol-toggle{width: 48px;height: 48px;}@media (max-width: 700px){.stage-shell.score-enabled{aspect-ratio: 0.92 / 1;}.stage-shell.score-enabled .stage-stack{grid-template-rows: minmax(188px, 0.52fr) minmax(0, 0.48fr);gap: 10px;padding: 10px;}.animator-dimension-btn{top: 10px;left: 10px;height: 42px;min-width: 46px;}.animator-plane-controls{top: 10px;right: 10px;}}@media (max-width: 420px){.stage-shell.score-enabled{aspect-ratio: 0.90 / 1;}.stage-shell.score-enabled .stage-stack{grid-template-rows: minmax(184px, 0.53fr) minmax(0, 0.47fr);gap: 9px;padding: 9px;}.animator-3d-hint{bottom: 9px;font-size: 0.68rem;}}.sitegen-open-btn{height: 48px;padding-inline: 16px;background: var(--seg-active);color: var(--seg-active-text);border-color: transparent;box-shadow: 0 12px 30px rgba(77, 226, 197, 0.18);}.sitegen-open-btn:hover{filter: saturate(1.04) brightness(1.03);}.sitegen-backdrop{position: fixed;inset: 0;z-index: 45;display: flex;align-items: center;justify-content: center;padding: max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));background: rgba(2, 8, 23, 0.45);backdrop-filter: blur(18px) saturate(1.16);opacity: 0;pointer-events: none;transition: opacity 180ms ease;overscroll-behavior: none;touch-action: auto;}html.sitegen-modal-open, body.sitegen-modal-open{width: 100%;overflow: hidden;overscroll-behavior: none;}body.sitegen-modal-open{position: fixed;}.sitegen-backdrop.open{opacity: 1;pointer-events: auto;}.sitegen-window{width: 100%;height: calc(100dvh - 36px);display: grid;grid-template-rows: auto minmax(0, 1fr) auto;gap: 14px;padding: 14px;border: 1px solid var(--border-strong);border-radius: 30px;background: linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)), var(--bg-panel-strong);box-shadow: 0 34px 100px rgba(0, 0, 0, 0.52);transform: translateY(10px) scale(0.985);transition: transform 190ms ease;overflow: hidden;}.sitegen-backdrop.open .sitegen-window{transform: translateY(0) scale(1);}.sitegen-settings-band{display: grid;grid-template-columns: minmax(190px, 0.62fr) minmax(0, 2.4fr) auto;gap: 14px;align-items: end;padding: 14px 16px;border: 1px solid var(--border);border-radius: 22px;background: var(--bg-panel);backdrop-filter: var(--toolbar-blur);box-shadow: 0 16px 46px rgba(0, 0, 0, 0.20);}.sitegen-title-block{min-width: 0;display: flex;flex-direction: column;gap: 4px;align-self: center;}.sitegen-title{font-size: 1.08rem;font-weight: 850;letter-spacing: 0.01em;}.sitegen-subtitle{color: var(--muted);font-size: 0.78rem;font-weight: 700;line-height: 1.28;}.sitegen-controls{display: grid;grid-template-columns: minmax(110px, 145px) minmax(110px, 145px) minmax(0, 1fr);gap: 12px;align-items: end;min-width: 0;}.sitegen-controls input[type="text"]{height: 48px;padding: 0 14px;}.sitegen-input-invalid{border-color: rgba(255, 111, 145, 0.72) !important;box-shadow: 0 0 0 4px rgba(255, 111, 145, 0.13) !important;}.sitegen-checkboxes{display: flex;flex-wrap: wrap;gap: 8px;align-items: center;min-width: 0;}.sitegen-checkboxes .checkbox-pill{height: 48px;padding-inline: 12px;font-size: 0.86rem;}.sitegen-close-slot{align-self: end;display: flex;justify-content: flex-end;gap: 8px;align-items: center;min-width: max-content;}.sitegen-view-toggle.active{background: var(--seg-active);color: var(--seg-active-text);border-color: transparent;box-shadow: 0 12px 30px rgba(77, 226, 197, 0.18);}.sitegen-grid-wrap{position: relative;min-height: 0;border: 1px solid var(--border);border-radius: 24px;overflow: auto;background: linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.008));-webkit-overflow-scrolling: touch;overscroll-behavior: contain;touch-action: pan-y;}.sitegen-grid{--sitegen-cols: 4;--sitegen-scale: 1;min-height: 100%;display: grid;grid-template-columns: repeat(var(--sitegen-cols), minmax(0, 1fr));grid-auto-rows: auto;align-content: start;gap: calc(12px * var(--sitegen-scale));padding: calc(12px * var(--sitegen-scale));}.sitegen-grid.sitegen-list{grid-template-columns: 1fr;grid-auto-rows: auto;align-content: start;}.sitegen-empty{position: absolute;inset: 0;display: none;align-items: center;justify-content: center;padding: 28px;color: var(--muted);text-align: center;font-weight: 750;line-height: 1.4;}.sitegen-empty.visible{display: flex;}.sitegen-tile{min-width: 0;min-height: 0;display: grid;grid-template-rows: auto auto;gap: calc(10px * var(--sitegen-scale));padding: calc(12px * var(--sitegen-scale));border: 1px solid var(--border);border-radius: calc(22px * var(--sitegen-scale));background: rgba(255, 255, 255, 0.045);color: var(--text);box-shadow: 0 14px 34px rgba(0, 0, 0, 0.16);cursor: pointer;text-align: left;overflow: hidden;contain: layout paint;transition: transform 150ms ease, border-color 150ms ease, background 150ms ease, box-shadow 150ms ease;}.sitegen-tile:hover{transform: translateY(-2px);border-color: rgba(124, 156, 255, 0.48);background: rgba(255, 255, 255, 0.070);box-shadow: 0 18px 44px rgba(0, 0, 0, 0.22);}.sitegen-tile:focus-visible{outline: none;border-color: rgba(124, 156, 255, 0.82);box-shadow: 0 0 0 4px rgba(124, 156, 255, 0.20), 0 18px 44px rgba(0, 0, 0, 0.22);}.sitegen-tile-top{min-width: 0;display: grid;grid-template-columns: minmax(0, 1fr) auto;gap: calc(10px * var(--sitegen-scale));align-items: center;}.sitegen-pattern-wrap{min-width: 0;max-width: 100%;overflow: hidden;}.sitegen-pattern{--roll-gap: 1.05em;display: inline-flex;align-items: center;gap: var(--roll-gap);max-width: none;overflow: visible;white-space: nowrap;font: 850 clamp(0.72rem, calc(1.42rem * var(--sitegen-scale)), 1.42rem) ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;letter-spacing: -0.025em;line-height: 1.04;transform: translate3d(0, 0, 0);will-change: auto;}.sitegen-pattern-copy{display: inline-block;white-space: nowrap;}.sitegen-pattern-copy.clone{display: none;}.sitegen-pattern.rolling{--roll-distance: 0px;--roll-duration: 9s;will-change: transform;animation: sitegen-pattern-roll var(--roll-duration) linear infinite;}.sitegen-pattern.rolling .sitegen-pattern-copy.clone{display: inline-block;}@keyframes sitegen-pattern-roll{from{transform: translate3d(0, 0, 0);}to{transform: translate3d(calc(-1 * var(--roll-distance)), 0, 0);}}.sitegen-tags{display: inline-flex;flex-direction: row;flex-wrap: nowrap;justify-content: flex-end;align-items: center;gap: 5px;max-width: none;min-width: max-content;white-space: nowrap;}.sitegen-tag{padding: calc(4px * var(--sitegen-scale)) calc(6px * var(--sitegen-scale));border-radius: 999px;border: 1px solid var(--border);background: rgba(255, 255, 255, 0.055);color: var(--muted);font-size: clamp(0.48rem, calc(0.64rem * var(--sitegen-scale)), 0.64rem);font-weight: 850;letter-spacing: 0.03em;text-transform: uppercase;white-space: nowrap;}.sitegen-tag.excited{color: var(--accent);}.sitegen-diagram{position: relative;width: 100%;aspect-ratio: 1 / 1;min-height: 0;border-radius: calc(17px * var(--sitegen-scale));border: 1px solid var(--border);overflow: hidden;background: var(--canvas-bg);}.sitegen-grid.sitegen-list .sitegen-tile{display: flex;align-items: center;min-height: calc(58px * var(--sitegen-scale));padding: calc(9px * var(--sitegen-scale)) calc(12px * var(--sitegen-scale));gap: 0;}.sitegen-grid.sitegen-list .sitegen-tile-top{width: 100%;grid-template-columns: minmax(0, 1fr) auto;align-items: center;gap: 12px;}.sitegen-grid.sitegen-list .sitegen-tags{align-items: center;justify-content: flex-end;}.sitegen-grid.sitegen-list .sitegen-diagram{display: none;}.sitegen-grid.sitegen-list .sitegen-pattern{display: block;width: 100%;max-width: 100%;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;transform: none !important;animation: none !important;will-change: auto;}.sitegen-grid.sitegen-list .sitegen-pattern-copy{display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}.sitegen-grid.sitegen-list .sitegen-pattern-copy.clone{display: none !important;}.sitegen-diagram canvas{position: absolute;inset: 0;width: 100%;height: 100%;display: block;background: var(--canvas-bg);touch-action: manipulation;transform: translateZ(0);}.sitegen-diagram-message{position: absolute;inset: 0;display: none;align-items: center;justify-content: center;padding: 16px;color: var(--muted);font-size: 0.92rem;font-weight: 800;line-height: 1.35;text-align: center;background: var(--canvas-bg);}.sitegen-diagram.message canvas{display: none;}.sitegen-diagram.message .sitegen-diagram-message{display: flex;}.sitegen-footer{display: flex;align-items: center;justify-content: flex-start;gap: 12px;padding: 0 2px 1px;}.sitegen-status{min-height: 44px;display: flex;align-items: center;padding: 10px 14px;border: 1px solid var(--border);border-radius: 16px;background: var(--input-bg);color: var(--muted);font-size: 0.9rem;font-weight: 700;line-height: 1.35;}.sitegen-status.valid{color: var(--success);}.sitegen-status.invalid{color: var(--danger);}.sitegen-refresh-btn{min-height: 48px;padding-inline: 15px;justify-self: end;}@media (max-width: 1180px){.sitegen-settings-band{grid-template-columns: 1fr;align-items: stretch;}.sitegen-title-block, .sitegen-controls, .sitegen-close-slot{grid-column: 1 / -1;}.sitegen-close-slot{justify-content: flex-start;}.sitegen-title-block{padding-right: 0;}}@media (max-width: 860px){.sitegen-backdrop{padding: 10px;}.sitegen-window{height: calc(100dvh - 20px);border-radius: 24px;}.sitegen-settings-band{padding: 13px;}.sitegen-controls{grid-template-columns: 1fr 1fr;}.sitegen-checkboxes{grid-column: 1 / -1;}.sitegen-checkboxes .checkbox-pill{flex: 1 1 auto;justify-content: center;}.sitegen-grid{grid-auto-rows: auto;}.sitegen-footer{align-items: stretch;flex-direction: column;}.sitegen-status{white-space: normal;overflow-wrap: anywhere;font-size: 0.82rem;}.sitegen-close-slot .sitegen-refresh-btn{flex: 1 1 auto;}}@media (max-width: 760px){.sitegen-grid:not(.sitegen-list) .sitegen-tile-top{grid-template-columns: 1fr;align-items: start;}.sitegen-grid:not(.sitegen-list) .sitegen-tags{justify-content: flex-start;}.sitegen-grid:not(.sitegen-list) .sitegen-tile{gap: calc(7px * var(--sitegen-scale));padding: calc(8px * var(--sitegen-scale));}}@media (max-width: 520px){.siteswap-row{grid-template-columns: 1fr 48px;}.siteswap-row input{grid-column: 1 / -1;}.sitegen-open-btn{width: 100%;}.sitegen-controls{grid-template-columns: 1fr;}.sitegen-title{font-size: 1rem;}.sitegen-subtitle{font-size: 0.74rem;}.sitegen-grid:not(.sitegen-list) .sitegen-tile-top{grid-template-columns: 1fr;align-items: start;}.sitegen-grid:not(.sitegen-list) .sitegen-tags{justify-content: flex-start;}}.sitegen-filters-btn{display: none;align-items: center;justify-content: center;gap: 8px;min-height: 48px;padding-inline: 13px;}.sitegen-filters-btn svg{width: 18px;height: 18px;fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round;stroke-linejoin: round;flex: 0 0 auto;}@media (max-width: 860px){.sitegen-window{height: calc(100dvh - 20px);grid-template-rows: auto minmax(0, 1fr) auto;gap: 9px;padding: 9px;border-radius: 22px;}.sitegen-settings-band, .sitegen-title-block, .sitegen-controls, .sitegen-checkboxes, .sitegen-close-slot, .sitegen-grid-wrap, .sitegen-footer{min-width: 0;max-width: 100%;}.sitegen-settings-band{grid-template-columns: minmax(0, 1fr);gap: 9px;padding: 10px;border-radius: 18px;}.sitegen-title-block{grid-column: 1;gap: 2px;}.sitegen-title{font-size: 1rem;}.sitegen-subtitle{max-width: 100%;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-size: 0.73rem;}.sitegen-close-slot{grid-column: 1;display: grid;grid-template-columns: auto minmax(86px, 1fr) 44px 44px;gap: 7px;width: 100%;min-width: 0;}.sitegen-filters-btn{display: inline-flex;min-height: 44px;height: 44px;border-radius: 14px;font-size: 0.82rem;}.sitegen-filters-btn[aria-expanded="true"]{background: var(--seg-active);color: var(--seg-active-text);border-color: transparent;}.sitegen-refresh-btn, .sitegen-close-slot .icon-btn{min-height: 44px;height: 44px;}.sitegen-refresh-btn{width: 100%;padding-inline: 12px;border-radius: 14px;}.sitegen-close-slot .icon-btn{width: 44px;border-radius: 14px;}.sitegen-controls{display: none;grid-column: 1;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 8px;padding-top: 9px;border-top: 1px solid var(--border);}.sitegen-window.filters-open .sitegen-controls{display: grid;}.sitegen-controls .field{gap: 4px;}.sitegen-controls .field-label{font-size: 0.67rem;}.sitegen-controls input[type="text"]{height: 42px;min-height: 42px;padding: 0 12px;border-radius: 14px;}.sitegen-checkboxes{grid-column: 1 / -1;gap: 6px;}.sitegen-checkboxes .checkbox-pill{flex: 1 1 calc(33.333% - 6px);min-width: 0;height: 38px;min-height: 38px;padding-inline: 9px;gap: 7px;border-radius: 13px;font-size: 0.76rem;}.sitegen-grid-wrap{border-radius: 18px;}.sitegen-grid{gap: calc(8px * var(--sitegen-scale));padding: calc(8px * var(--sitegen-scale));}.sitegen-footer{display: block;min-height: 0;padding: 0;}.sitegen-status{width: 100%;min-height: 34px;padding: 6px 10px;border-radius: 13px;font-size: 0.76rem;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}}@media (max-width: 430px){.sitegen-close-slot{grid-template-columns: auto minmax(72px, 1fr) 42px 42px;gap: 6px;}.sitegen-filters-btn{padding-inline: 10px;}.sitegen-checkboxes .checkbox-pill{flex-basis: calc(50% - 4px);}}@media (prefers-reduced-motion: reduce){.sitegen-pattern.rolling{animation: none;transform: none;}}html.embed-mode .toolbar-main, html.embed-mode .animator-plane-controls, html.embed-mode .settings-backdrop, html.embed-mode .polyrhythm-backdrop, html.embed-mode .poly-backdrop, html.embed-mode .sitegen-backdrop{display: none !important;}html.embed-mode .app{padding: 0;border-radius: 0;background: transparent;}html.embed-mode .workspace{min-height: 100dvh;}html.embed-mode .pane-shell{border-radius: 0;}.toolbar-action-cluster{grid-template-columns: repeat(6, 48px);min-width: 323px;}.poly-toolbar-btn{position: relative;font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;font-weight: 900;letter-spacing: -0.07em;}.poly-toolbar-btn .poly-toolbar-symbol{display: inline-flex;align-items: baseline;justify-content: center;gap: 1px;transform: translateX(-1px);font-size: 0.84rem;line-height: 1;}.poly-toolbar-btn .poly-toolbar-symbol strong{font-size: 1.05rem;font-weight: 950;}.poly-toolbar-btn.active{background: var(--seg-active);color: var(--seg-active-text);border-color: transparent;box-shadow: 0 12px 30px rgba(77, 226, 197, 0.18);}.poly-toolbar-badge{position: absolute;right: -5px;bottom: -5px;min-width: 24px;height: 18px;padding: 0 5px;display: none;align-items: center;justify-content: center;border: 2px solid var(--bg-panel-strong);border-radius: 999px;background: var(--accent-2);color: #06111f;font: 900 0.58rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;letter-spacing: -0.04em;white-space: nowrap;}.poly-toolbar-btn.active .poly-toolbar-badge{display: inline-flex;}html.poly-modal-open, body.poly-modal-open{width: 100%;overflow: hidden;overscroll-behavior: none;}body.poly-modal-open{position: fixed;left: 0;right: 0;}.poly-backdrop{position: fixed;inset: 0;z-index: 60;display: flex;align-items: center;justify-content: center;padding: max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));background: rgba(2, 8, 23, 0.52);backdrop-filter: blur(18px) saturate(1.14);opacity: 0;pointer-events: none;transition: opacity 170ms ease;}.poly-backdrop.open{opacity: 1;pointer-events: auto;}.poly-dialog{width: min(590px, 100%);max-height: min(780px, calc(100dvh - 36px));overflow: auto;-webkit-overflow-scrolling: touch;border: 1px solid var(--border-strong);border-radius: 26px;background: var(--bg-panel-strong);box-shadow: 0 34px 100px rgba(0, 0, 0, 0.52);padding: 20px;transform: translateY(10px) scale(0.985);transition: transform 180ms ease;}.poly-backdrop.open .poly-dialog{transform: translateY(0) scale(1);}.poly-dialog-header{display: flex;align-items: flex-start;justify-content: space-between;gap: 18px;margin-bottom: 16px;}.poly-dialog-header .icon-btn{flex: 0 0 48px;min-width: 48px;}.poly-dialog-title{font-size: 1.12rem;font-weight: 850;letter-spacing: 0.01em;}.poly-dialog-copy{margin-top: 4px;color: var(--muted);font-size: 0.84rem;line-height: 1.45;}.poly-form{display: grid;gap: 14px;}.poly-ratio-card, .poly-preview-card{border: 1px solid var(--border);border-radius: 19px;background: var(--input-bg);padding: 15px;}.poly-ratio-grid{display: grid;grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto;gap: 10px;align-items: end;}.poly-ratio-separator{align-self: center;padding-top: 21px;color: var(--muted);font: 900 1.4rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;}.poly-number-input{width: 100%;height: 48px;padding: 0 14px;border: 1px solid var(--border);border-radius: 15px;background: var(--input-bg);color: var(--text);font: 850 1rem/1 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;outline: none;text-align: center;-moz-appearance: textfield;}.poly-number-input::-webkit-inner-spin-button, .poly-number-input::-webkit-outer-spin-button{opacity: 0.5;}.poly-number-input:focus{border-color: rgba(124, 156, 255, 0.65);box-shadow: 0 0 0 4px rgba(124, 156, 255, 0.18);}.poly-swap-btn{width: 48px;height: 48px;padding: 0;font-size: 1.05rem;}.poly-summary-grid{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 9px;margin-bottom: 12px;}.poly-summary-item{min-width: 0;padding: 10px 11px;border: 1px solid var(--border);border-radius: 14px;background: rgba(255, 255, 255, 0.035);}.poly-summary-label{color: var(--muted);font-size: 0.67rem;font-weight: 800;letter-spacing: 0.075em;text-transform: uppercase;}.poly-summary-value{margin-top: 4px;overflow: hidden;color: var(--accent-2);font: 850 0.92rem/1.2 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;text-overflow: ellipsis;white-space: nowrap;}.poly-preview-label{margin-bottom: 7px;color: var(--muted);font-size: 0.72rem;font-weight: 800;letter-spacing: 0.075em;text-transform: uppercase;}.poly-preview-code{display: block;width: 100%;max-height: 144px;overflow: auto;padding: 12px;border: 1px solid var(--border);border-radius: 14px;background: rgba(0, 0, 0, 0.18);color: var(--text);font: 750 0.79rem/1.55 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;overflow-wrap: anywhere;white-space: pre-wrap;}.poly-preview-code.invalid{color: var(--danger);}.poly-option-row{display: flex;flex-wrap: wrap;gap: 10px;align-items: center;}.poly-help{color: var(--muted);font-size: 0.8rem;line-height: 1.45;}.poly-dialog-actions{display: flex;align-items: center;justify-content: flex-end;flex-wrap: wrap;gap: 10px;margin-top: 2px;}.poly-dialog-actions .poly-disable-btn{margin-right: auto;}.poly-disable-btn[hidden]{display: none !important;}.poly-motion-status{display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 11px 12px;border: 1px solid var(--border);border-radius: 14px;background: rgba(255,255,255,0.035);}.poly-motion-status strong{color: var(--accent-2);}@media (max-width: 1320px){.toolbar-action-cluster{grid-template-columns: repeat(6, minmax(44px, 48px));min-width: 0;}}@media (max-width: 760px){.toolbar-action-cluster{grid-template-columns: repeat(6, minmax(40px, 1fr));}.poly-ratio-grid{grid-template-columns: 1fr auto 1fr;}.poly-swap-btn{grid-column: 1 / -1;width: 100%;}}@media (max-width: 520px){.poly-backdrop{align-items: flex-end;padding: max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));}.poly-dialog{width: 100%;max-height: calc(100dvh - max(20px, env(safe-area-inset-top)));border-radius: 24px;padding: 17px;}.poly-dialog-actions{display: grid;grid-template-columns: minmax(0, 1fr) minmax(0, 1.18fr);align-items: stretch;}.poly-dialog-actions .btn{width: 100%;min-width: 0;}.poly-dialog-actions #polyCancelBtn{grid-column: 1;grid-row: 1;}.poly-dialog-actions #polyApplyBtn{grid-column: 2;grid-row: 1;}.poly-dialog-actions .poly-disable-btn:not([hidden]){grid-column: 1 / -1;grid-row: 2;margin-right: 0;}.toolbar-action-cluster{gap: 6px;}}html.theme-switch-instant, html.theme-switch-instant *, html.theme-switch-instant *::before, html.theme-switch-instant *::after{transition: none !important;animation: none !important;scroll-behavior: auto !important;}@media (max-width: 820px){.settings-tabs{min-height: 58px;align-items: stretch;padding: 7px;gap: 7px;}.settings-tab{min-width: 104px;min-height: 44px;padding: 12px 16px;line-height: 1.2;display: inline-flex;align-items: center;justify-content: center;flex: 1 0 104px;}}@media (max-width: 520px){.settings-panel-main{gap: 12px;padding: 16px;}.settings-tabs{min-height: 60px;border-radius: 16px;}.settings-tab{min-height: 46px;padding-block: 13px;font-size: 0.88rem;}}@media (max-width: 700px){.stage-shell.score-enabled{aspect-ratio: 0.82 / 1;}.stage-shell.score-enabled .stage-stack{grid-template-rows: minmax(218px, 0.56fr) minmax(0, 0.44fr);}}@media (max-width: 420px){.stage-shell.score-enabled{aspect-ratio: 0.80 / 1;}.stage-shell.score-enabled .stage-stack{grid-template-rows: minmax(216px, 0.57fr) minmax(0, 0.43fr);}}.toolbar-action-cluster{grid-template-columns: minmax(92px, auto) repeat(6, 48px);min-width: 430px;}.passing-toolbar-toggle{min-width: 92px;justify-content: center;padding-inline: 12px;}.poly-toolbar-btn .poly-toolbar-symbol{width: 28px;height: 24px;transform: none;}.poly-toolbar-btn .poly-toolbar-symbol svg{display: block;width: 28px;height: 24px;overflow: visible;fill: currentColor;stroke: currentColor;stroke-width: 1.75;stroke-linecap: round;stroke-linejoin: round;}.poly-toolbar-btn .poly-toolbar-symbol svg text{fill: currentColor;stroke: none;font: 900 7px/1 Inter, ui-sans-serif, system-ui, sans-serif;text-anchor: middle;}.settings-tabs{grid-template-columns: repeat(3, minmax(0, 1fr));}.passing-order-grid{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 10px;}.passing-order-option{position: relative;min-height: 112px;border: 1px solid var(--border);border-radius: 17px;background: rgba(255,255,255,0.035);color: var(--text);cursor: pointer;overflow: hidden;transition: border-color 140ms ease, background 140ms ease, transform 140ms ease, box-shadow 140ms ease;}.passing-order-option:hover{background: var(--button-hover);}.passing-order-option:active{transform: translateY(1px);}.passing-order-option.active, .passing-order-option[aria-checked="true"]{border-color: rgba(124,156,255,0.72);background: rgba(124,156,255,0.11);box-shadow: 0 0 0 3px rgba(124,156,255,0.13);}.passing-order-diagram{position: absolute;inset: 10px 12px;}.passing-order-juggler-line{position: absolute;top: 21%;bottom: 21%;width: 2px;border-radius: 999px;background: var(--muted);opacity: 0.72;}.passing-order-juggler-line.left{left: 25%;}.passing-order-juggler-line.right{right: 25%;}.passing-order-hand{position: absolute;width: 22px;height: 22px;display: grid;place-items: center;border: 2px solid var(--ball-stroke);border-radius: 50%;background: var(--accent);color: var(--seg-active-text);font: 900 0.72rem/1 Inter, ui-sans-serif, system-ui, sans-serif;transform: translate(-50%, -50%);box-shadow: 0 4px 12px rgba(0,0,0,0.18);}.passing-order-hand[data-hand="1L"]{left: 25%;top: 19%;}.passing-order-hand[data-hand="1R"]{left: 25%;top: 81%;}.passing-order-hand[data-hand="2R"]{left: 75%;top: 19%;}.passing-order-hand[data-hand="2L"]{left: 75%;top: 81%;}.passing-order-juggler-label{position: absolute;top: 50%;color: var(--muted);font-size: 0.66rem;font-weight: 850;transform: translateY(-50%);}.passing-order-juggler-label.left{left: 2%;}.passing-order-juggler-label.right{right: 2%;}@media (max-width: 1320px){.toolbar-action-cluster{grid-template-columns: minmax(92px, 128px) repeat(6, minmax(44px, 48px));min-width: 0;}}@media (max-width: 760px){.toolbar-action-cluster{grid-template-columns: minmax(92px, 1.55fr) repeat(6, minmax(40px, 1fr));}.passing-toolbar-toggle{min-width: 0;padding-inline: 8px;}.passing-order-grid{grid-template-columns: 1fr;}}@media (max-width: 520px){.toolbar-action-cluster{grid-template-columns: repeat(4, minmax(44px, 1fr));}.passing-toolbar-toggle{grid-column: span 2;}.passing-order-option{min-height: 104px;}}.stage-shell.score-enabled.passing-score .stage-stack{grid-template-rows: minmax(var(--passing-score-min-height, 190px), var(--passing-score-fr, 0.52fr)) minmax(0, var(--passing-stage-fr, 0.48fr));}.score-vex-copy svg text.score-juggler-label{fill: var(--muted) !important;font-weight: 800;letter-spacing: 0.02em;}.poly-toolbar-btn{display: inline-flex;flex-direction: column;align-items: center;justify-content: center;gap: 0;letter-spacing: 0;}.poly-toolbar-btn .poly-toolbar-symbol{width: 28px;height: 21px;flex: 0 0 21px;}.poly-toolbar-btn .poly-toolbar-symbol svg{width: 28px;height: 21px;}.poly-toolbar-name{display: block;margin-top: -1px;font: 850 0.56rem/1 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;letter-spacing: 0.025em;}.toolbar-main, .toolbar-topline{max-width: 100%;min-width: 0;}@media (min-width: 1391px){.toolbar-topline{grid-template-columns: minmax(118px, 0.44fr) minmax(270px, 1.20fr) minmax(96px, 0.38fr) minmax(112px, 0.44fr) minmax(210px, 0.90fr) minmax(416px, auto);gap: 10px;}.toolbar-action-cluster{min-width: 416px;}}@media (min-width: 761px) and (max-width: 1390px){.toolbar-topline{grid-template-columns: 1fr 1fr;align-items: stretch;}.brand{grid-column: 1 / -1;}.toolbar-status-field{grid-column: 1 / -1;}.toolbar-action-cluster{grid-column: 1 / -1;min-width: 0;grid-template-columns: minmax(92px, 128px) repeat(3, minmax(44px, 48px)) minmax(112px, 132px) repeat(2, minmax(44px, 48px));justify-content: flex-start;}}.poly-toolbar-btn{width: auto !important;min-width: 112px;padding: 0 10px !important;flex-direction: row;gap: 7px;font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;}.poly-toolbar-btn .poly-toolbar-name{margin: 0;font-size: 0.68rem;line-height: 1;letter-spacing: 0.01em;white-space: nowrap;}.poly-toolbar-btn .poly-toolbar-symbol, .poly-toolbar-btn .poly-toolbar-symbol svg{width: 25px;height: 21px;flex: 0 0 25px;}.toolbar-action-cluster{grid-template-columns: minmax(92px, auto) repeat(3, 48px) minmax(112px, auto) repeat(2, 48px);min-width: 484px;}@media (min-width: 1391px){.toolbar-topline{grid-template-columns: minmax(118px, 0.44fr) minmax(270px, 1.20fr) minmax(96px, 0.38fr) minmax(112px, 0.44fr) minmax(210px, 0.90fr) minmax(484px, auto);}.toolbar-action-cluster{min-width: 484px;}}@media (max-width: 760px){.toolbar-topline{grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);}.brand, .toolbar-pattern-field, .toolbar-status-field, .toolbar-action-cluster{grid-column: 1 / -1;}.toolbar-prop-field, .toolbar-mode-field{grid-column: auto;}.toolbar-action-cluster{grid-template-columns: repeat(5, minmax(44px, 1fr));min-width: 0;}.passing-toolbar-btn, .poly-toolbar-btn{grid-column: span 3;width: 100% !important;min-width: 0;justify-content: center;}.passing-toolbar-btn{grid-template-columns: 28px auto;}.poly-toolbar-btn .poly-toolbar-name{font-size: 0.66rem;}}.passing-toolbar-btn{position: relative;min-width: 104px;height: 48px;display: inline-grid;grid-template-columns: 28px auto;align-items: center;justify-content: center;column-gap: 7px;padding: 0 12px;border-radius: 15px;}.passing-toolbar-icon{width: 28px;height: 22px;display: block;}.passing-toolbar-icon svg{width: 28px;height: 22px;fill: none;stroke: currentColor;stroke-width: 1.8;stroke-linecap: round;stroke-linejoin: round;}.passing-toolbar-name{font-size: 0.78rem;font-weight: 850;}.passing-toolbar-badge{position: absolute;top: -5px;right: -5px;min-width: 20px;height: 20px;display: none;place-items: center;padding: 0 5px;border: 2px solid var(--bg);border-radius: 999px;background: var(--accent-2);color: #06111f;font-size: 0.66rem;font-weight: 900;}.passing-toolbar-btn.active{background: var(--seg-active);color: var(--seg-active-text);border-color: transparent;box-shadow: 0 12px 30px rgba(77,226,197,0.18);}.passing-toolbar-btn.active .passing-toolbar-badge{display: grid;}html.passing-modal-open, body.passing-modal-open{width: 100%;overflow: hidden;overscroll-behavior: none;}body.passing-modal-open{position: fixed;}.passing-dialog{width: min(860px, calc(100vw - 28px));}.passing-form{display: grid;gap: 14px;}.passing-config-grid{display: grid;grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);gap: 12px;}.passing-config-grid .setting-card{min-height: 116px;justify-content: center;}.passing-order-card{border: 1px solid var(--border);border-radius: 20px;background: var(--input-bg);padding: 14px;}.passing-order-editor{position: relative;width: min(100%, 620px);aspect-ratio: 1;margin: 14px auto 10px;border: 1px solid var(--border);border-radius: 50%;background: radial-gradient(circle, rgba(124,156,255,0.08), transparent 62%);overflow: visible;}.passing-order-editor svg{position: absolute;inset: 0;width: 100%;height: 100%;overflow: visible;}.passing-arena-ring{fill: none;stroke: var(--border-strong);stroke-width: 2;stroke-dasharray: 5 7;}.passing-facing-line{stroke: var(--muted);stroke-width: 2;stroke-linecap: round;opacity: 0.6;}.passing-juggler-dot{fill: var(--bg-panel-strong);stroke: var(--accent);stroke-width: 3;}.passing-hand-dot{fill: var(--accent-2);stroke: var(--canvas-bg);stroke-width: 2;}.passing-juggler-text{fill: var(--muted);font: 800 11px/1 Inter, ui-sans-serif, system-ui, sans-serif;text-anchor: middle;dominant-baseline: central;}.passing-order-inputs{position: absolute;inset: 0;pointer-events: none;}.passing-order-input-shell{position: absolute;width: 46px;height: 46px;transform: translate(-50%, -50%);pointer-events: auto;}.passing-order-input-shell > .passing-order-input{width: 46px !important;height: 46px !important;min-height: 46px !important;padding: 0 !important;border: 2px solid var(--accent);border-radius: 999px !important;background: var(--bg-panel-strong);color: var(--text);text-align: center;font: 900 0.9rem/1 ui-monospace, SFMono-Regular, Menlo, monospace;outline: none;box-shadow: 0 7px 18px rgba(0,0,0,0.18);appearance: none;-webkit-appearance: none;}.passing-order-input:focus{border-color: var(--accent-2);box-shadow: 0 0 0 4px rgba(77,226,197,0.17), 0 7px 18px rgba(0,0,0,0.18);}.passing-order-input.invalid{border-color: var(--danger);color: var(--danger);box-shadow: 0 0 0 4px rgba(255,111,145,0.14);}.passing-order-hand-label{position: absolute;left: 50%;top: calc(100% + 3px);transform: translateX(-50%);color: var(--muted);font-size: 0.68rem;font-weight: 850;white-space: nowrap;pointer-events: none;text-shadow: 0 1px 3px var(--canvas-bg);}.passing-order-message{min-height: 24px;color: var(--success);font-size: 0.82rem;font-weight: 750;text-align: center;}.passing-order-message.invalid{color: var(--danger);}.animator-shell.animator-3d{display: grid;grid-template-rows: minmax(0, 1fr) auto;aspect-ratio: auto;}.animator-shell.animator-3d .animator-canvas-wrap{min-height: 0;}.animator-shell.animator-3d .animator-3d-mobile-dock{display: block;min-width: 0;border-top: 1px solid var(--border);background: var(--bg-panel);}.animator-shell.animator-3d .animator-3d-mobile-dock .animator-3d-touch-controls{position: static;width: 100%;display: grid;grid-template-columns: repeat(8, minmax(40px, 1fr));grid-template-rows: 42px;gap: 6px;padding: 8px;border: 0;border-radius: 0;background: transparent;box-shadow: none;backdrop-filter: none;opacity: 1;}.animator-shell.animator-3d .animator-3d-controls-toggle{display: none;}.animator-3d-mobile-dock .animator-camera-btn{width: 100%;height: 42px;min-width: 0;grid-column: auto !important;grid-row: auto !important;}.animator-camera-btn.rotate{display: inline-flex;align-items: center;justify-content: center;gap: 5px;font-size: 0.78rem;}.animator-camera-btn.rotate span:first-child{font-size: 1.1rem;}.animator-camera-btn.rotate.active{background: var(--seg-active);color: var(--seg-active-text);}@media (max-width: 820px), (pointer: coarse){.passing-dialog{width: min(100%, 760px);}.passing-config-grid{grid-template-columns: 1fr 1fr;}.passing-order-editor{width: min(100%, 560px);}.animator-shell.animator-3d .animator-3d-controls-toggle{display: flex;}.animator-shell.animator-3d .animator-3d-mobile-dock .animator-3d-touch-controls{display: none;grid-template-columns: repeat(4, minmax(40px, 1fr));grid-template-rows: repeat(2, 42px);}.animator-shell.animator-3d .animator-3d-mobile-dock.open .animator-3d-touch-controls{display: grid;}}@media (max-width: 520px){.passing-backdrop{align-items: flex-end;padding: max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));}.passing-dialog{width: 100%;max-height: calc(100dvh - max(20px, env(safe-area-inset-top)));border-radius: 24px;padding: 16px;}.passing-config-grid{grid-template-columns: 1fr;}.passing-config-grid .setting-card{min-height: 0;}.passing-order-editor{width: min(100%, 420px);}.passing-order-input-shell{width: 38px;height: 38px;}.passing-order-input-shell > .passing-order-input{width: 38px !important;height: 38px !important;min-height: 38px !important;font-size: 0.82rem;}.passing-dialog-actions{display: grid;grid-template-columns: 1fr 1.18fr;}.passing-dialog-actions .btn{width: 100%;}.passing-dialog-actions .poly-disable-btn:not([hidden]){grid-column: 1 / -1;}.passing-toolbar-btn{min-width: 0;width: 100%;padding-inline: 7px;grid-template-columns: 25px auto;}.passing-toolbar-icon, .passing-toolbar-icon svg{width: 25px;}.passing-toolbar-name{font-size: 0.7rem;}}@media (max-width: 1180px){.animator-shell.animator-3d{width: min(100%, 760px);height: auto;grid-template-rows: auto auto;aspect-ratio: auto;}.animator-shell.animator-3d .animator-canvas-wrap{position: relative;inset: auto;width: 100%;height: auto;aspect-ratio: 1 / 1;}.stage-shell.score-enabled.passing-score{aspect-ratio: var(--passing-score-aspect, 0.82) / 1;}.stage-shell.score-enabled.passing-score .stage-stack{grid-template-rows: minmax(var(--passing-score-min-height, 190px), var(--passing-score-fr, 0.64fr)) minmax(0, var(--passing-stage-fr, 0.36fr));}}.score-vex-copy svg text.score-tuplet-number{paint-order: stroke fill;stroke: var(--canvas-bg) !important;stroke-width: 3.4px !important;stroke-linejoin: round;font-weight: 900;}.passing-edit-positions-btn{width: 100%;min-height: 46px;}.passing-form.position-editing .passing-config-grid, .passing-form.position-editing .passing-edit-positions-btn, .passing-form.position-editing .passing-order-card, .passing-form.position-editing > .passing-dialog-actions{display: none !important;}.passing-position-card{border: 1px solid var(--border);border-radius: 20px;background: var(--input-bg);padding: 14px;}.passing-position-card[hidden]{display: none !important;}.passing-position-header{display: flex;align-items: flex-start;justify-content: space-between;gap: 12px;}.passing-position-selection{color: var(--accent-2);font-size: 0.8rem;font-weight: 850;white-space: nowrap;}.passing-position-editor{width: min(100%, 520px);aspect-ratio: 1;margin: 12px auto;border: 1px solid var(--border);border-radius: 18px;overflow: hidden;background: var(--canvas-bg);touch-action: none;}.passing-position-editor svg{width: 100%;height: 100%;display: block;touch-action: none;}.passing-position-grid-minor{stroke: var(--border);stroke-width: 0.7;opacity: 0.42;vector-effect: non-scaling-stroke;}.passing-position-grid-major{stroke: var(--border-strong);stroke-width: 1.15;opacity: 0.66;vector-effect: non-scaling-stroke;}.passing-position-axis{stroke: var(--muted);stroke-width: 1.4;opacity: 0.58;vector-effect: non-scaling-stroke;}.passing-position-juggler{cursor: grab;touch-action: none;}.passing-position-juggler.dragging{cursor: grabbing;}.passing-position-juggler .body{fill: var(--bg-panel-strong);stroke: var(--accent);stroke-width: 2.3;vector-effect: non-scaling-stroke;}.passing-position-juggler .shoulder, .passing-position-juggler .arm{stroke: var(--rail);stroke-width: 2.2;stroke-linecap: round;vector-effect: non-scaling-stroke;}.passing-position-juggler .head{fill: var(--muted);stroke: var(--ball-stroke);stroke-width: 1.2;vector-effect: non-scaling-stroke;}.passing-position-juggler .hand{fill: var(--accent-2);stroke: var(--canvas-bg);stroke-width: 1.4;vector-effect: non-scaling-stroke;}.passing-position-juggler .hat{fill: var(--accent);opacity: 0.9;}.passing-position-juggler.selected .body{stroke: var(--accent-2);stroke-width: 3.4;}.passing-position-juggler text{fill: var(--text);font: 850 11px/1 Inter, ui-sans-serif, system-ui, sans-serif;text-anchor: middle;dominant-baseline: central;pointer-events: none;}.passing-position-controls, .passing-position-actions{display: grid;gap: 8px;}.passing-position-controls{grid-template-columns: repeat(3, minmax(0, 1fr));}.passing-position-actions{grid-template-columns: 1fr 1.2fr;margin-top: 8px;}.animator-shell.animator-3d .animator-3d-mobile-dock .animator-3d-touch-controls{grid-template-columns: repeat(6, minmax(40px, 1fr));grid-template-rows: repeat(2, 42px);}@media (max-width: 820px), (pointer: coarse){.animator-shell.animator-3d .animator-3d-mobile-dock .animator-3d-touch-controls{grid-template-columns: repeat(4, minmax(40px, 1fr));grid-template-rows: repeat(3, 42px);}}@media (max-width: 520px){.passing-position-controls{grid-template-columns: 1fr 1fr;}.passing-position-controls #passingPositionResetBtn{grid-column: 1 / -1;}.passing-position-editor{width: min(100%, 360px);}}.score-vex-copy svg text.score-juggler-label{fill: var(--muted) !important;stroke: var(--canvas-bg) !important;stroke-width: 4px !important;paint-order: stroke fill;font-weight: 850;}.stage-shell.score-enabled.passing-score{aspect-ratio: auto;}.stage-shell.score-enabled.passing-score .stage-stack{grid-template-rows: minmax(108px, 0.381966fr) minmax(0, 0.618034fr);}@media (max-width: 1180px){.stage-shell.score-enabled.passing-score{aspect-ratio: 1 / 1;}}@media (max-width: 700px){.stage-shell.score-enabled.passing-score{aspect-ratio: 0.82 / 1;}.stage-shell.score-enabled.passing-score .stage-stack{grid-template-rows: minmax(218px, 0.56fr) minmax(0, 0.44fr);}}@media (max-width: 420px){.stage-shell.score-enabled.passing-score{aspect-ratio: 0.80 / 1;}.stage-shell.score-enabled.passing-score .stage-stack{grid-template-rows: minmax(216px, 0.57fr) minmax(0, 0.43fr);}}.score-passing-label-overlay{position: absolute;inset: 0;z-index: 6;display: none;pointer-events: none;overflow: hidden;}.score-passing-label-overlay.visible{display: block;}.score-passing-label-fixed{position: absolute;left: 8px;transform: translateY(-50%);padding: 3px 7px;border: 1px solid var(--border);border-radius: 8px;background: var(--bg-panel-strong);color: var(--muted);box-shadow: 0 3px 12px rgba(0,0,0,0.22);font-weight: 850;letter-spacing: 0.01em;line-height: 1;white-space: nowrap;}@media (max-width: 760px){.toolbar-action-cluster .passing-toolbar-btn{grid-column: span 2;padding-inline: 5px;grid-template-columns: 22px auto;column-gap: 4px;}.toolbar-action-cluster .poly-toolbar-btn{grid-column: span 3;}.passing-toolbar-icon, .passing-toolbar-icon svg{width: 22px;height: 20px;}.passing-toolbar-name{font-size: 0.66rem;}}.stats-toggle .symbol-toggle-icon{display: grid;place-items: center;}.stats-toggle .symbol-toggle-icon svg{width: 22px;height: 22px;fill: none;stroke: currentColor;stroke-width: 1.8;stroke-linecap: round;stroke-linejoin: round;}.animator-shell.stats-enabled{display: grid;grid-template-rows: minmax(280px, 1fr) minmax(228px, 0.62fr);aspect-ratio: auto;}.animator-shell.stats-enabled.animator-3d{grid-template-rows: minmax(280px, 1fr) auto minmax(228px, 0.62fr);}.stats-shell{display: none;min-width: 0;min-height: 0;overflow: hidden;border-top: 1px solid var(--border);background: var(--canvas-bg);}.animator-shell.stats-enabled .stats-shell{display: grid;grid-template-rows: auto minmax(0, 1fr);}.stats-header{min-width: 0;display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 10px 12px;border-bottom: 1px solid var(--border);background: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.018));}.stats-heading{min-width: 0;display: grid;gap: 2px;}.stats-title{color: var(--text);font-size: 0.88rem;font-weight: 850;letter-spacing: 0.018em;}.stats-subtitle{overflow: hidden;color: var(--muted);font-size: 0.70rem;font-weight: 650;text-overflow: ellipsis;white-space: nowrap;}.stats-scroll{min-width: 0;min-height: 0;overflow-y: auto;overscroll-behavior: contain;scrollbar-gutter: stable;padding: 10px;}.stats-panels{display: grid;gap: 10px;}.stats-panel{min-width: 0;min-height: 164px;display: grid;grid-template-columns: minmax(0, 1fr) 136px;overflow: hidden;border: 1px solid var(--border);border-radius: 16px;background: linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.008));}.stats-plot-wrap{position: relative;min-width: 0;min-height: 162px;overflow: hidden;}.stats-plot-canvas{position: absolute;inset: 0;width: 100%;height: 100%;background: transparent;touch-action: pan-y;}.stats-panel-controls{min-width: 0;display: grid;align-content: center;gap: 7px;padding: 10px;border-left: 1px solid var(--border);background: rgba(255,255,255,0.018);}.stats-panel-controls .mode-select-shell, .stats-panel-controls .mode-select{width: 100%;min-width: 0;}.stats-panel-controls .mode-select{min-height: 34px;height: 34px;padding: 5px 27px 5px 9px;border-radius: 10px;font-size: 0.72rem;}.stats-remove-btn{min-height: 32px;height: 32px;border-radius: 10px;color: var(--muted);font-size: 0.72rem;font-weight: 800;}.stats-remove-btn:hover{color: var(--danger);}.stats-add-row{display: flex;justify-content: center;padding: 2px 0 4px;}.stats-add-btn{width: 40px;height: 40px;min-height: 40px;display: grid;place-items: center;padding: 0;border-radius: 999px;font-size: 1.25rem;line-height: 1;}@media (max-width: 1180px){.animator-shell.stats-enabled{width: min(100%, 760px);min-height: min(920px, max(660px, 88vh));}}@media (max-width: 620px){.animator-shell.stats-enabled{min-height: min(900px, max(640px, 86vh));grid-template-rows: minmax(260px, 0.95fr) minmax(245px, 0.72fr);}.animator-shell.stats-enabled.animator-3d{grid-template-rows: minmax(260px, 0.95fr) auto minmax(245px, 0.72fr);}.stats-header{padding: 9px 10px;}.stats-scroll{padding: 8px;}.stats-panel{grid-template-columns: minmax(0, 1fr) 126px;min-height: 158px;border-radius: 14px;}.stats-plot-wrap{min-height: 156px;}.stats-panel-controls{gap: 6px;padding: 7px;}.stats-panel-controls .mode-select{min-height: 32px;height: 32px;padding-left: 7px;font-size: 0.66rem;}}html.share-modal-open, body.share-modal-open{width: 100%;overflow: hidden;overscroll-behavior: none;}body.share-modal-open{position: fixed;}.share-backdrop{z-index: 170;transition: none !important;}.poly-backdrop.share-backdrop.open{opacity: 1 !important;pointer-events: auto !important;}.poly-backdrop.share-backdrop:not(.open){opacity: 0 !important;pointer-events: none !important;}.share-dialog{width: min(900px, calc(100vw - 28px));max-height: min(880px, calc(100dvh - 28px));}.stats-view-tabs{display: flex;gap: 6px;padding: 5px;border: 1px solid var(--border);border-radius: 16px;background: var(--seg-bg);}.stats-view-tab{min-height: 38px;flex: 1 1 0;border: 0;border-radius: 11px;background: transparent;color: var(--muted);font: 800 0.78rem/1 Inter, ui-sans-serif, system-ui, sans-serif;cursor: pointer;}.stats-view-tab.active{background: var(--seg-active);color: var(--seg-active-text);}.share-code{width: 100%;min-height: 92px;resize: vertical;border: 1px solid var(--border);border-radius: 14px;background: var(--canvas-bg);color: var(--text);padding: 11px;font: 0.72rem/1.5 ui-monospace, SFMono-Regular, Menlo, monospace;}.share-actions{display: flex;flex-wrap: wrap;gap: 8px;align-items: center;}.workspace-preset-grid{display: grid;grid-template-columns: repeat(5, minmax(0, 1fr));gap: 8px;}.workspace-preset{min-height: 72px;display: grid;align-content: center;gap: 4px;padding: 9px;border: 1px solid var(--border);border-radius: 14px;background: var(--button-bg);color: var(--text);cursor: pointer;}.workspace-preset span{color: var(--muted);font-size: 0.68rem;}.workspace-preset.active{border-color: var(--accent);box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 24%, transparent);}.practice-grid{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 10px;align-items: end;}.practice-actions{display: flex;align-items: center;gap: 10px;}.stats-view-tabs{margin-left: auto;flex: 0 0 auto;}.stats-view-tab{min-width: 72px;min-height: 32px;}.stats-events-view{min-height: 100%;}.event-inspector-toolbar{position: sticky;top: 0;z-index: 2;display: flex;align-items: center;justify-content: space-between;gap: 10px;padding: 8px 10px;border-bottom: 1px solid var(--border);background: var(--bg-panel-strong);color: var(--muted);font-size: 0.76rem;}.event-inspector-table-wrap{overflow: auto;}.event-inspector-table{width: 100%;border-collapse: collapse;font-size: 0.72rem;white-space: nowrap;}.event-inspector-table th{position: sticky;top: 50px;z-index: 1;background: var(--bg-panel-strong);color: var(--muted);text-align: left;}.event-inspector-table th, .event-inspector-table td{padding: 8px 9px;border-bottom: 1px solid var(--border);}.event-inspector-table tbody tr{cursor: pointer;}.event-inspector-table tbody tr:hover{background: var(--button-hover);}.event-object-chip{display: inline-flex;align-items: center;gap: 6px;}.event-object-chip::before{content: '';width: 9px;height: 9px;border-radius: 50%;background: var(--event-color, var(--accent));box-shadow: 0 0 0 1px var(--ball-stroke);}.workspace[data-workspace="animate"], .workspace[data-workspace="visualise"], .workspace[data-workspace="analyse"]{grid-template-columns: minmax(0, 1fr);}.workspace[data-workspace="animate"] .stage-shell, .workspace[data-workspace="analyse"] .stage-shell{display: none;}.workspace[data-workspace="visualise"] .animator-shell{display: none;}.workspace[data-workspace="animate"] .animator-shell, .workspace[data-workspace="analyse"] .animator-shell, .workspace[data-workspace="visualise"] .stage-shell{width: min(100%, 1180px);justify-self: center;}html.high-contrast{--border: rgba(255,255,255,0.28);--border-strong: rgba(255,255,255,0.48);--grid: rgba(255,255,255,0.28);--muted: #bdc9eb;}html[data-theme="light"].high-contrast{--border: rgba(0,0,0,0.24);--border-strong: rgba(0,0,0,0.44);--grid: rgba(0,0,0,0.24);--muted: #425174;}html.reduce-motion *, html.reduce-motion *::before, html.reduce-motion *::after{scroll-behavior: auto !important;transition-duration: 0.001ms !important;animation-duration: 0.001ms !important;animation-iteration-count: 1 !important;}.toolbar-action-cluster #shareBtn svg{width: 20px;height: 20px;}.pane-shell, .setting-card, .stats-panel{contain: layout paint;}@media (max-width: 760px){.share-backdrop{align-items: flex-end;padding: max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));}.share-dialog{width: 100%;max-height: calc(100dvh - 16px);border-radius: 24px;padding: 14px;}.practice-grid{grid-template-columns: 1fr;}.workspace-preset-grid{grid-template-columns: repeat(2, minmax(0, 1fr));}.stats-header{flex-wrap: wrap;}.stats-view-tabs{order: 3;width: 100%;}}@media (min-width: 761px) and (max-width: 1390px){.toolbar-action-cluster{grid-template-columns: minmax(92px,128px) repeat(4,48px) minmax(112px,132px) repeat(2,48px) !important;min-width: 0 !important;}}@media (min-width: 1391px){.toolbar-topline{grid-template-columns: minmax(118px,.44fr) minmax(270px,1.20fr) minmax(96px,.38fr) minmax(112px,.44fr) minmax(210px,.90fr) minmax(551px,auto) !important;}.toolbar-action-cluster{grid-template-columns: minmax(104px,auto) repeat(4,48px) minmax(112px,auto) repeat(2,48px) !important;min-width: 551px !important;}}@media (max-width:760px){.toolbar-action-cluster{grid-template-columns: repeat(6,minmax(38px,1fr)) !important;}.toolbar-action-cluster .passing-toolbar-btn{grid-column: span 2 !important;}.toolbar-action-cluster .poly-toolbar-btn{grid-column: span 4 !important;}}.siteswap-row{grid-template-columns: minmax(140px, 1fr) auto 48px 48px;}@media (max-width: 760px){.siteswap-row{grid-template-columns: minmax(0, 1fr) 48px 48px;}.siteswap-row > input[type="text"]{grid-column: 1 / -1;}.siteswap-row > .sitegen-open-btn{grid-column: 1;width: 100%;}.siteswap-row > #scorePill{grid-column: 2;}.siteswap-row > #statsPill{grid-column: 3;}}@media (min-width: 1000px) and (max-width: 1749px){.toolbar-topline{grid-template-columns: minmax(116px, 0.38fr) minmax(330px, 1.75fr) minmax(104px, 0.42fr) minmax(330px, 0.92fr) !important;grid-template-areas: "brand pattern pattern actions" "brand prop view actions" "status status status status";gap: 10px 12px;align-items: end;}.toolbar-topline > .brand{grid-area: brand;align-self: center;}.toolbar-pattern-field{grid-area: pattern;}.toolbar-prop-field{grid-area: prop;}.toolbar-mode-field{grid-area: view;}.toolbar-status-field{grid-area: status;}.toolbar-action-cluster{grid-area: actions;align-self: stretch;min-width: 330px !important;display: grid !important;grid-template-columns: repeat(6, minmax(42px, 1fr)) !important;grid-template-rows: repeat(2, 48px);gap: 7px !important;align-content: center;}.toolbar-action-cluster .passing-toolbar-btn{grid-column: span 2 !important;}.toolbar-action-cluster .poly-toolbar-btn{grid-column: span 4 !important;}}@media (min-width: 761px) and (max-width: 999px){.toolbar-topline{grid-template-columns: minmax(120px, 0.42fr) minmax(0, 1.58fr) !important;grid-template-areas: "brand pattern" "prop view" "status status" "actions actions";gap: 10px 12px;align-items: end;}.toolbar-topline > .brand{grid-area: brand;}.toolbar-pattern-field{grid-area: pattern;}.toolbar-prop-field{grid-area: prop;}.toolbar-mode-field{grid-area: view;}.toolbar-status-field{grid-area: status;}.toolbar-action-cluster{grid-area: actions;min-width: 0 !important;display: grid !important;grid-template-columns: repeat(6, minmax(42px, 1fr)) !important;grid-template-rows: repeat(2, 48px);gap: 7px !important;}.toolbar-action-cluster .passing-toolbar-btn{grid-column: span 2 !important;}.toolbar-action-cluster .poly-toolbar-btn{grid-column: span 4 !important;}}@media (min-width: 1750px){.toolbar-topline{grid-template-columns: minmax(132px,.42fr) minmax(390px,1.45fr) minmax(100px,.34fr) minmax(116px,.40fr) minmax(220px,.76fr) minmax(551px,auto) !important;gap: 12px;}.toolbar-action-cluster{grid-template-columns: minmax(104px,auto) repeat(4,48px) minmax(112px,auto) repeat(2,48px) !important;min-width: 551px !important;}}:root{--vv-width: 100vw;--vv-height: 100dvh;--vv-left: 0px;--vv-top: 0px;}html, body{width: 100%;max-width: 100%;min-width: 0;overflow-x: clip;}body{overscroll-behavior-x: none;}.app, .toolbar, .toolbar-topline, .workspace, .pane-shell, .animator-shell, .stage-shell, .animator-canvas-wrap, .animator-3d-mobile-dock, .stats-shell, .stats-scroll, .stats-plots-view, .stats-events-view, .event-inspector-table-wrap{min-width: 0;max-width: 100%;}.app{width: 100%;}.toolbar-topline > *, .workspace > *, .animator-shell > *, .stats-shell > *{min-width: 0;}.workspace{width: 100%;grid-template-columns: minmax(0, 1fr) minmax(0, 1.618fr);}.animator-shell, .animator-shell.animator-3d, .animator-shell.stats-enabled, .animator-shell.stats-enabled.animator-3d{grid-template-columns: minmax(0, 1fr);}.animator-canvas-wrap{overflow: hidden;}.animator-canvas-wrap canvas, .stage-canvas-wrap canvas{max-width: 100% !important;}.animator-shell.animator-3d .animator-canvas-wrap, .animator-shell.animator-3d .animator-3d-mobile-dock, .animator-shell.stats-enabled .stats-shell{width: 100%;max-width: 100%;}.stats-shell{grid-template-columns: minmax(0, 1fr);contain: layout paint size;}.animator-shell.stats-enabled .stats-shell{grid-template-rows: auto minmax(0, 1fr);}.stats-header{min-height: 58px;flex-wrap: nowrap;}.stats-view-tabs{min-width: 142px;width: auto;margin-left: auto;order: initial;}.stats-view-tab{min-width: 64px;}.stats-scroll{height: 100%;max-height: 100%;overflow: auto;contain: layout paint;}.stats-scroll > [hidden]{display: none !important;}.stats-plots-view, .stats-events-view{height: 100%;min-height: 0;max-height: 100%;}.stats-events-view:not([hidden]){display: grid;grid-template-rows: auto minmax(0, 1fr);overflow: hidden;}.event-inspector-toolbar{position: relative;top: auto;}.event-inspector-table-wrap{height: 100%;max-height: 100%;overflow: auto;overscroll-behavior: contain;-webkit-overflow-scrolling: touch;}.event-inspector-table{width: max-content;min-width: 100%;}.event-inspector-table th{top: 0;}.setting-card, .field{min-width: 0;}.settings-backdrop, .sitegen-backdrop, .poly-backdrop, .share-backdrop{inset: auto;left: var(--vv-left);top: var(--vv-top);width: var(--vv-width);height: var(--vv-height);max-width: 100vw;max-height: 100dvh;}.settings-panel, .sitegen-window, .poly-dialog, .passing-dialog, .share-dialog{max-width: calc(var(--vv-width) - 20px);max-height: calc(var(--vv-height) - 20px);}.sitegen-window{height: calc(var(--vv-height) - 20px);}.share-dialog{width: min(900px, calc(var(--vv-width) - 20px));}@media (max-width: 1180px){.workspace{grid-template-columns: minmax(0, 1fr);}.animator-shell, .stage-shell, .animator-shell.animator-3d{width: 100%;max-width: 100%;}}@media (max-width: 760px){.animator-shell.stats-enabled, .animator-shell.stats-enabled.animator-3d{width: 100%;height: clamp(640px, 86svh, 820px);min-height: 0;}.animator-shell.stats-enabled{grid-template-rows: minmax(260px, 1fr) minmax(230px, 0.82fr);}.animator-shell.stats-enabled.animator-3d{grid-template-rows: minmax(260px, 1fr) auto minmax(230px, 0.82fr);}.stats-header{display: grid;grid-template-columns: minmax(0, 1fr) minmax(132px, auto) 44px;gap: 8px;padding: 7px 8px;}.stats-subtitle{display: none;}.stats-view-tabs{width: auto;min-width: 132px;order: initial;}.stats-view-tab{min-width: 58px;min-height: 36px;}.stats-header .icon-btn{width: 44px;height: 44px;}.stats-scroll{padding: 7px;}.stats-panel{grid-template-columns: minmax(0, 1fr) minmax(116px, 34%);}.settings-panel, .sitegen-window, .poly-dialog, .passing-dialog, .share-dialog{width: calc(var(--vv-width) - 16px);max-width: calc(var(--vv-width) - 16px);max-height: calc(var(--vv-height) - 16px);}.sitegen-window{height: calc(var(--vv-height) - 16px);}}@media (max-width: 430px){.stats-header{grid-template-columns: minmax(0, 1fr) minmax(124px, auto) 40px;}.stats-title{font-size: 0.82rem;}.stats-view-tab{min-width: 54px;font-size: 0.72rem;}.event-inspector-toolbar{align-items: flex-start;flex-direction: column;}}@media (min-width: 1000px) and (max-width: 1749px){.toolbar-action-cluster{align-content: start;padding-top: 21px;}}@media (max-width: 1180px) and (max-height: 520px) and (orientation: landscape){.animator-shell.animator-3d{height: auto;min-height: 0;grid-template-rows: minmax(238px, 72svh) auto;}.animator-shell.animator-3d .animator-canvas-wrap{width: 100%;height: min(72svh, 420px);min-height: 238px;aspect-ratio: auto;}.animator-shell.stats-enabled{height: auto;min-height: 0;grid-template-rows: minmax(238px, 72svh) minmax(205px, 58svh);}.animator-shell.stats-enabled.animator-3d{height: auto;min-height: 0;grid-template-rows: minmax(238px, 72svh) auto minmax(205px, 58svh);}.animator-shell.stats-enabled .stats-shell{min-height: 205px;}}.sitegen-label-short{display: none;}.score-vex-viewport.v28-score-page-mode{overflow: auto;overscroll-behavior: contain;-webkit-overflow-scrolling: touch;background: color-mix(in srgb, var(--canvas-bg) 88%, #ffffff 12%);touch-action: pan-x pan-y;}.v28-score-page-wrap{position: absolute;top: 10px;overflow: hidden;background: #ffffff;border: 1px solid rgba(15, 23, 42, 0.16);border-radius: 4px;box-shadow: 0 16px 38px rgba(0, 0, 0, 0.20);pointer-events: none;}.v28-score-page-wrap svg{display: block;width: 100%;height: 100%;}.score-vex-viewport.v28-score-page-mode .score-vex-cursor{top: 0;bottom: auto;height: 120px;border-left-color: rgba(77, 226, 197, 0.82);z-index: 5;}@media (max-width: 760px){.app{gap: 10px;padding: max(9px, env(safe-area-inset-top)) max(9px, env(safe-area-inset-right)) max(9px, env(safe-area-inset-bottom)) max(9px, env(safe-area-inset-left));}.toolbar.toolbar-main{padding: 9px 10px;border-radius: 18px;}.toolbar-topline{grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;grid-template-areas: "brand brand" "pattern pattern" "prop view" "status status" "actions actions" !important;gap: 7px 8px !important;align-items: end;}.toolbar-topline > .brand{grid-area: brand;min-width: 0;min-height: 24px;flex-direction: row;align-items: baseline;justify-content: flex-start;gap: 8px;}.brand-title{font-size: 0.98rem;}.brand-subtitle{display: none;}.toolbar-pattern-field{grid-area: pattern;}.toolbar-prop-field{grid-area: prop;}.toolbar-mode-field{grid-area: view;}.toolbar-status-field{grid-area: status;}.toolbar-pattern-field > .field-label, .toolbar-status-field > .field-label{display: none;}.toolbar-prop-field > .field-label, .toolbar-mode-field > .field-label{margin: 0 0 -2px 2px;font-size: 0.64rem;letter-spacing: 0.055em;}.siteswap-row{grid-template-columns: minmax(0, 1fr) 86px 42px 42px !important;gap: 6px !important;}.siteswap-row > input[type="text"]{grid-column: auto !important;min-width: 0;height: 44px !important;min-height: 44px !important;padding: 10px 11px;border-radius: 13px;font-size: 0.93rem;}.siteswap-row > .sitegen-open-btn{grid-column: auto !important;width: 86px !important;height: 44px !important;min-height: 44px !important;padding: 0 8px;border-radius: 13px;font-size: 0.76rem;}.sitegen-label-full{display: none;}.sitegen-label-short{display: inline;}.siteswap-row > #scorePill, .siteswap-row > #statsPill{grid-column: auto !important;width: 42px !important;height: 44px !important;min-height: 44px !important;border-radius: 13px;}.toolbar-prop-field .mode-select, .toolbar-mode-field .mode-select{height: 42px !important;min-height: 42px !important;padding: 8px 34px 8px 11px;border-radius: 13px;font-size: 0.80rem;}.toolbar-status-field .status{height: 29px !important;min-height: 29px !important;padding: 0 10px;border-radius: 10px;font-size: 0.70rem;}.toolbar-action-cluster{grid-area: actions;min-width: 0 !important;width: 100%;display: flex !important;flex-wrap: nowrap !important;align-items: center;justify-content: flex-start;gap: 6px !important;overflow-x: auto;overflow-y: hidden;padding: 1px 0 3px;scrollbar-width: none;-webkit-overflow-scrolling: touch;}.toolbar-action-cluster::-webkit-scrollbar{display: none;}.toolbar-action-cluster .btn, .toolbar-action-cluster .icon-btn, .toolbar-action-cluster .symbol-toggle{flex: 0 0 44px !important;width: 44px !important;height: 44px !important;min-height: 44px !important;border-radius: 13px;scroll-snap-align: start;}.toolbar-action-cluster .passing-toolbar-btn{flex-basis: 92px !important;width: 92px !important;grid-column: auto !important;}.toolbar-action-cluster .poly-toolbar-btn{flex-basis: 114px !important;width: 114px !important;grid-column: auto !important;}.animator-shell.stats-enabled, .animator-shell.stats-enabled.animator-3d{width: 100%;height: auto !important;min-height: calc(100svh - 18px) !important;}.animator-shell.stats-enabled{grid-template-rows: minmax(210px, 36svh) minmax(410px, 58svh) !important;}.animator-shell.stats-enabled.animator-3d{grid-template-rows: minmax(210px, 36svh) auto minmax(410px, 58svh) !important;}.animator-shell.stats-enabled .stats-shell{min-height: 410px !important;}.stats-panel{min-height: 150px;}.stats-plot-wrap{min-height: 148px;}}@media (max-width: 350px){.siteswap-row{grid-template-columns: minmax(0, 1fr) 74px 40px 40px !important;gap: 5px !important;}.siteswap-row > .sitegen-open-btn{width: 74px !important;font-size: 0.70rem;}}@media (max-width: 1180px) and (max-height: 520px) and (orientation: landscape){.app{gap: 8px;padding: max(7px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(7px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));}.toolbar.toolbar-main{padding: 8px 9px;border-radius: 16px;}.toolbar-topline{grid-template-columns: 88px minmax(290px, 1.5fr) minmax(92px, 0.52fr) minmax(98px, 0.56fr) minmax(154px, 0.88fr) !important;grid-template-areas: "brand pattern prop view actions" "status status status status status" !important;gap: 6px 7px !important;align-items: end;}.toolbar-topline > .brand{grid-area: brand;min-height: 42px;align-items: flex-start;justify-content: center;}.brand-title{font-size: 0.84rem;}.brand-subtitle{display: none;}.toolbar-pattern-field{grid-area: pattern;}.toolbar-prop-field{grid-area: prop;}.toolbar-mode-field{grid-area: view;}.toolbar-status-field{grid-area: status;}.toolbar-action-cluster{grid-area: actions;}.toolbar-pattern-field > .field-label, .toolbar-status-field > .field-label, .toolbar-prop-field > .field-label, .toolbar-mode-field > .field-label{display: none;}.siteswap-row{grid-template-columns: minmax(0, 1fr) 78px 40px 40px !important;gap: 5px !important;}.siteswap-row > input[type="text"], .siteswap-row > .sitegen-open-btn, .siteswap-row > #scorePill, .siteswap-row > #statsPill, .toolbar-prop-field .mode-select, .toolbar-mode-field .mode-select{height: 40px !important;min-height: 40px !important;border-radius: 12px;}.siteswap-row > .sitegen-open-btn{width: 78px !important;padding-inline: 6px;font-size: 0.70rem;}.sitegen-label-full{display: none;}.sitegen-label-short{display: inline;}.siteswap-row > #scorePill, .siteswap-row > #statsPill{width: 40px !important;}.toolbar-action-cluster{min-width: 0 !important;width: 100%;display: flex !important;flex-wrap: nowrap !important;gap: 5px !important;overflow-x: auto;overflow-y: hidden;padding: 0 0 2px;scrollbar-width: none;}.toolbar-action-cluster::-webkit-scrollbar{display: none;}.toolbar-action-cluster .btn, .toolbar-action-cluster .icon-btn, .toolbar-action-cluster .symbol-toggle{flex: 0 0 40px !important;width: 40px !important;height: 40px !important;min-height: 40px !important;border-radius: 12px;}.toolbar-action-cluster .passing-toolbar-btn{flex-basis: 82px !important;width: 82px !important;}.toolbar-action-cluster .poly-toolbar-btn{flex-basis: 104px !important;width: 104px !important;}.toolbar-status-field .status{height: 24px !important;min-height: 24px !important;padding: 0 9px;border-radius: 9px;font-size: 0.66rem;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}.workspace{grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr) !important;grid-template-rows: minmax(0, 1fr) !important;gap: 8px;align-items: start;}.animator-shell, .stage-shell, .animator-shell.animator-3d{width: 100% !important;max-width: 100% !important;height: min(68svh, 268px) !important;min-height: 220px !important;aspect-ratio: auto !important;}.animator-shell.stats-enabled, .animator-shell.stats-enabled.animator-3d{height: auto !important;min-height: 0 !important;}.animator-shell.stats-enabled{grid-template-rows: minmax(220px, 62svh) minmax(205px, 56svh) !important;}.animator-shell.stats-enabled.animator-3d{grid-template-rows: minmax(220px, 62svh) auto minmax(205px, 56svh) !important;}.animator-shell.stats-enabled .stats-shell{min-height: 205px !important;}}.setting-range-grid{display: grid;grid-template-columns: minmax(0, 1fr) auto;gap: 8px 12px;align-items: end;}.setting-range-grid .field{min-width: 0;}.setting-range-grid .setting-value{min-width: 64px;text-align: right;align-self: center;}.score-vex-viewport.v28-score-page-mode{overflow: hidden;background: var(--canvas-bg);}.score-vex-viewport.v28-score-page-mode .v28-score-page-wrap{display: none !important;}@media (max-width: 760px){.toolbar-action-cluster{display: grid !important;grid-template-columns: repeat(5, minmax(0, 1fr)) !important;grid-auto-rows: 44px;gap: 6px !important;overflow: visible !important;padding: 1px 0 !important;}.toolbar-action-cluster .btn, .toolbar-action-cluster .icon-btn, .toolbar-action-cluster .symbol-toggle{width: 100% !important;height: 44px !important;min-height: 44px !important;min-width: 0 !important;flex: none !important;}.toolbar-action-cluster .passing-toolbar-btn{grid-column: span 2 !important;width: 100% !important;}.toolbar-action-cluster .poly-toolbar-btn{grid-column: span 2 !important;width: 100% !important;}.toolbar-status-field .status{height: 35px !important;min-height: 35px !important;padding: 0 11px !important;font-size: 0.73rem !important;line-height: 1.25 !important;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}.animator-shell.stats-enabled{grid-template-rows: minmax(210px, 35svh) minmax(560px, 72svh) !important;}.animator-shell.stats-enabled.animator-3d{grid-template-rows: minmax(210px, 35svh) auto minmax(560px, 72svh) !important;}.animator-shell.stats-enabled .stats-shell{min-height: 560px !important;}.stats-panel{min-height: 184px !important;}.stats-plot-wrap{min-height: 180px !important;}.setting-range-grid{grid-template-columns: minmax(0, 1fr) 58px;}}@media (max-width: 1180px) and (max-height: 520px) and (orientation: landscape){.toolbar-action-cluster{display: grid !important;grid-template-columns: repeat(5, minmax(36px, 1fr)) !important;grid-auto-rows: 40px;gap: 5px !important;overflow: visible !important;}.toolbar-action-cluster .btn, .toolbar-action-cluster .icon-btn, .toolbar-action-cluster .symbol-toggle{width: 100% !important;min-width: 0 !important;height: 40px !important;min-height: 40px !important;}.toolbar-action-cluster .passing-toolbar-btn, .toolbar-action-cluster .poly-toolbar-btn{grid-column: span 2 !important;width: 100% !important;min-width: 0 !important;}.toolbar-status-field .status{min-height: 29px !important;height: 29px !important;font-size: 0.69rem !important;}}@media (min-width: 760px) and (max-width: 1180px) and (max-height: 520px) and (orientation: landscape){.toolbar-topline{grid-template-columns: 76px minmax(238px, 1.35fr) minmax(82px, 0.48fr) minmax(88px, 0.52fr) minmax(210px, 1fr) !important;}}@media (max-width: 759px) and (max-height: 520px) and (orientation: landscape){.toolbar-topline{grid-template-columns: minmax(210px, 1fr) minmax(78px, 0.36fr) minmax(86px, 0.4fr) !important;grid-template-areas: "pattern prop view" "actions actions actions" "status status status" !important;}.toolbar-topline > .brand{display: none !important;}.toolbar-action-cluster{width: 100% !important;}}.toolbar-action-cluster{min-width: 0 !important;display: grid !important;grid-template-columns: minmax(108px, 1.25fr) repeat(3, 48px) minmax(122px, 1.15fr) repeat(2, 48px) !important;gap: 7px !important;justify-content: stretch !important;}.toolbar-action-cluster .passing-toolbar-btn, .toolbar-action-cluster .poly-toolbar-btn{width: 100% !important;min-width: 0 !important;}@media (min-width: 1000px) and (max-width: 1749px){.toolbar-action-cluster{grid-template-columns: repeat(6, minmax(44px, 1fr)) !important;grid-template-rows: repeat(2, 48px) !important;min-width: 330px !important;}.toolbar-action-cluster .passing-toolbar-btn{grid-column: span 2 !important;}.toolbar-action-cluster .poly-toolbar-btn{grid-column: span 4 !important;}}@media (min-width: 1750px){.toolbar-topline{grid-template-columns: minmax(132px,.42fr) minmax(390px,1.45fr) minmax(100px,.34fr) minmax(116px,.40fr) minmax(220px,.76fr) minmax(520px,auto) !important;}.toolbar-action-cluster{min-width: 520px !important;}}@media (max-width: 760px){.toolbar-action-cluster{display: grid !important;grid-template-columns: repeat(6, minmax(0, 1fr)) !important;grid-template-rows: auto auto !important;overflow: visible !important;gap: 6px !important;}.toolbar-action-cluster .passing-toolbar-btn{grid-column: span 3 !important;width: 100% !important;flex-basis: auto !important;}.toolbar-action-cluster .poly-toolbar-btn{grid-column: span 3 !important;width: 100% !important;flex-basis: auto !important;}.toolbar-action-cluster #pauseBtn, .toolbar-action-cluster #shareBtn, .toolbar-action-cluster #themeBtn, .toolbar-action-cluster #settingsBtn{grid-column: span 1 !important;width: 100% !important;}.toolbar-action-cluster #fullscreenBtn{grid-column: span 2 !important;width: 100% !important;}}@media (max-width: 760px){.toolbar-status-field .status{height: 44px !important;min-height: 44px !important;padding: 0 12px !important;border-radius: 13px !important;font-size: 0.74rem !important;}}@media (max-width: 759px) and (max-height: 520px) and (orientation: landscape){.toolbar-status-field .status{height: 40px !important;min-height: 40px !important;padding: 0 10px !important;border-radius: 12px !important;font-size: 0.68rem !important;}}@media (max-width: 1180px) and (max-height: 520px) and (orientation: landscape){.toolbar-topline{grid-template-columns: minmax(210px, 1fr) minmax(82px, 0.38fr) minmax(90px, 0.42fr) !important;grid-template-areas: "pattern prop view" "actions actions actions" "status status status" !important;gap: 6px 7px !important;align-items: end;}.toolbar-topline > .brand{display: none !important;}.toolbar-pattern-field{grid-area: pattern !important;}.toolbar-prop-field{grid-area: prop !important;}.toolbar-mode-field{grid-area: view !important;}.toolbar-status-field{grid-area: status !important;}.toolbar-action-cluster{grid-area: actions !important;width: 100% !important;min-width: 0 !important;display: grid !important;grid-template-columns: minmax(80px, 1.35fr) repeat(3, minmax(38px, 1fr)) minmax(104px, 1.65fr) repeat(2, minmax(38px, 1fr)) !important;grid-template-rows: 40px !important;gap: 5px !important;padding: 0 !important;overflow: visible !important;}.toolbar-action-cluster .btn, .toolbar-action-cluster .icon-btn, .toolbar-action-cluster .symbol-toggle, .toolbar-action-cluster .passing-toolbar-btn, .toolbar-action-cluster .poly-toolbar-btn{grid-column: auto !important;width: 100% !important;min-width: 0 !important;height: 40px !important;min-height: 40px !important;padding-inline: 6px !important;}.toolbar-status-field .status{height: 40px !important;min-height: 40px !important;padding: 0 10px !important;border-radius: 12px !important;font-size: 0.68rem !important;}}@media (min-width: 1181px){.workspace[data-workspace="analyse"] .animator-shell.stats-enabled, .workspace[data-workspace="analyse"] .animator-shell.stats-enabled.animator-3d{width: 100%;max-width: none;height: 100%;min-height: 0;aspect-ratio: auto;justify-self: stretch;display: grid;grid-template-columns: minmax(0, 1fr) minmax(390px, 0.78fr);grid-template-rows: minmax(0, 1fr);}.workspace[data-workspace="analyse"] .animator-shell.stats-enabled.animator-3d{grid-template-rows: minmax(0, 1fr) auto;}.workspace[data-workspace="analyse"] .animator-shell.stats-enabled .animator-canvas-wrap{grid-column: 1;grid-row: 1;min-height: 0;}.workspace[data-workspace="analyse"] .animator-shell.stats-enabled.animator-3d .animator-3d-mobile-dock{grid-column: 1;grid-row: 2;}.workspace[data-workspace="analyse"] .animator-shell.stats-enabled .stats-shell{grid-column: 2;grid-row: 1;min-height: 0 !important;border-top: 0;border-left: 1px solid var(--border);}.workspace[data-workspace="analyse"] .animator-shell.stats-enabled.animator-3d .stats-shell{grid-row: 1 / span 2;}}button:focus-visible, a:focus-visible, select:focus-visible{outline: 2px solid var(--accent);outline-offset: 3px;}#siteswapInput[aria-invalid=true]{border-color: var(--danger,#e15a68);}.animator-plane-controls .plane-btn{width: auto;min-width: 32px;padding-inline: 9px;}.plane-label-short{display: none;}@media (max-width:560px){.plane-label-full{display: none;}.plane-label-short{display: inline;}.animator-plane-controls .plane-btn{padding-inline: 6px;}}.app{grid-template-rows: auto minmax(0,1fr) auto;}.pattern-entry{position: absolute;inset: auto 8px 8px;z-index: 4;display: block;min-width: 0;max-height: min(28%,5.8em);padding: 5px 8px;border-radius: 8px;background: var(--bg-panel);font-size: .7rem;line-height: 1.45;color: var(--muted);overflow: auto;overflow-wrap: anywhere;overscroll-behavior: contain;scrollbar-width: thin;}.pattern-entry[hidden]{display: none;}.pattern-entry strong{color: var(--text);font-weight: 800;}.pattern-entry code{font: inherit;color: var(--text);font-weight: 700;}.pattern-entry:focus-visible{outline: 2px solid var(--accent-2);outline-offset: -2px;}.pattern-entry:not([hidden])~.animator-3d-hint{top: 64px;bottom: auto;}html.embed-mode .pattern-entry{display: none;}.mobile-workspaces{display: none;}.playback-bar{position: relative;display: grid;grid-template-columns: minmax(260px,1fr) minmax(220px,1.1fr) auto;align-items: center;gap: 8px 18px;padding: 10px 14px;border: 1px solid var(--border);border-radius: 18px;background: var(--bg-panel);z-index: 12;}.playback-actions, .playback-timeline, .playback-tools, .playback-speed, .playback-selection{display: flex;align-items: center;gap: 8px;min-width: 0;}.playback-actions .icon-btn{flex: 0 0 44px;width: 44px;height: 44px;min-height: 44px;font-size: 1.25rem;}.playback-speed{flex: 1;font-size: .75rem;color: var(--muted);}.playback-speed input{flex: 1;min-width: 45px;width: 90px;min-height: 44px;}.playback-speed output{min-width: 36px;font-variant-numeric: tabular-nums;color: var(--text);}.playback-timeline input{flex: 1;min-width: 60px;min-height: 44px;}.playback-timeline output{font-size: .72rem;font-variant-numeric: tabular-nums;white-space: nowrap;color: var(--muted);}.playback-tools{font-size: .75rem;justify-content: flex-end;flex-wrap: wrap;}.mobile-workspaces button:focus-visible{outline: 2px solid var(--accent-2);outline-offset: 2px;}.playback-selection select{max-width: 130px;min-height: 44px;border: 1px solid var(--border);border-radius: 10px;background: var(--bg);color: var(--text);padding: 6px;font: inherit;}.selection-description{flex-basis: 100%;font-size: .7rem;color: var(--muted);text-align: right;}.selection-description:empty{display: none;}.event-inspector-table tr[data-event-time]{cursor: pointer;}.event-inspector-table tr.object-selected{background: var(--button-hover);box-shadow: inset 3px 0 var(--accent-2);}.event-inspector-table tr.object-muted{opacity: .48;}.event-inspector-table button{font: inherit;color: inherit;background: none;border: 0;padding: 10px 0;cursor: pointer;min-height: 44px;}.score-object-hit{cursor: pointer;fill: transparent;pointer-events: all;}.score-object-hit.object-selected{fill: color-mix(in srgb,var(--accent-2) 15%,transparent);stroke: var(--accent-2);stroke-width: 1.5;}html.embed-mode .playback-bar, html.embed-mode .mobile-workspaces{display: none !important;}html.embed-mode .app{grid-template-rows: minmax(0,1fr);}@media (max-width:1100px){.playback-bar{grid-template-columns: 1fr 1fr;}.playback-tools{grid-column: 1/-1;justify-content: flex-start;}.selection-description{flex-basis: auto;text-align: left;}}@media (pointer:coarse){.animator-plane-controls .plane-btn, .animator-camera-btn, .animator-dimension-btn{min-width: 44px;min-height: 44px;height: 44px;}.stats-view-tab, .stats-panel-remove, .symbol-toggle{min-width: 44px;min-height: 44px;}input[type=range]{min-height: 44px;}}@media (max-width:800px){.app{grid-template-rows: auto auto minmax(0,1fr) auto;gap: 8px;}.mobile-workspaces{display: grid;grid-template-columns: repeat(5,minmax(0,1fr));gap: 4px;padding: 4px;border: 1px solid var(--border);border-radius: 14px;background: var(--bg-panel);}.mobile-workspaces button{min-width: 0;min-height: 44px;padding: 5px 2px;border: 0;border-radius: 10px;background: transparent;color: var(--muted);font: 700 .72rem Inter,system-ui,sans-serif;}.mobile-workspaces button[aria-pressed=true]{background: var(--button-hover);color: var(--text);}.workspace[data-mobile-view]{grid-template-columns: minmax(0,1fr);}.workspace[data-mobile-view]:not([data-mobile-view=all]){grid-template-columns: minmax(0,1fr) !important;}.workspace[data-mobile-view=animator] .stage-shell, .workspace[data-mobile-view=analysis] .stage-shell, .workspace[data-mobile-view=diagram] .animator-shell, .workspace[data-mobile-view=score] .animator-shell{display: none;}.workspace[data-mobile-view=score] .stage-canvas-wrap{display: none;}.workspace[data-mobile-view=score] .stage-shell{min-height: 220px;}.workspace[data-mobile-view=score] .stage-stack{height: 100%;min-height: 220px;grid-template-rows: minmax(180px,1fr) !important;}.workspace[data-mobile-view=score] .score-shell{min-height: 180px;height: 100%;max-height: none;}.playback-bar{position: sticky;bottom: max(6px,env(safe-area-inset-bottom));grid-template-columns: minmax(0,1fr);gap: 0;padding: 6px 10px;border-radius: 16px;box-shadow: var(--shadow);}.playback-actions{gap: 6px;}.playback-speed{margin-left: 4px;}.playback-speed input{width: 60px;}.playback-timeline{gap: 8px;}.playback-tools{justify-content: space-between;gap: 0 8px;}.playback-tools .selection-description{display: none;}.animator-plane-controls .plane-btn{min-width: 44px;min-height: 44px;height: 44px;}.animator-plane-controls{gap: 4px;padding: 4px;}.toolbar-pattern-field input{font-size: 16px;}}@media (max-width:800px) and (max-height:520px){.playback-bar{position: relative;bottom: auto;grid-template-columns: 1fr 1fr;}.playback-tools{grid-column: 1/-1;}.mobile-workspaces button{min-height: 44px;}}@media (max-width:360px){.playback-speed{gap: 5px;}.playback-speed output{min-width: 30px;}.playback-speed input{min-width: 44px;}}.animator-shell.stats-enabled .stats-shell{grid-template-rows: auto auto minmax(0,1fr);}.stats-timeline{display: grid;grid-template-columns: auto minmax(48px,1fr) auto;align-items: center;gap: 8px;padding: 2px 12px 4px;border-bottom: 1px solid var(--border);color: var(--muted);font-size: .68rem;font-weight: 650;}.stats-timeline input{width: 100%;min-width: 0;height: 36px;margin: 0;accent-color: var(--accent-2);}.stats-timeline output{min-width: 115px;text-align: right;font-variant-numeric: tabular-nums;white-space: nowrap;}.stats-plot-canvas{touch-action: pan-y;cursor: ew-resize;}@media (max-width:560px){.stats-timeline{gap: 6px;padding-inline: 8px;}.stats-timeline input{height: 44px;}.stats-timeline output{min-width: 108px;font-size: .63rem;}}.pane-divider{display: none;}@media (min-width:1181px){.workspace{position: relative;}.pane-divider:not([hidden]){position: absolute;z-index: 15;display: flex;align-items: center;justify-content: center;padding: 0;border: 0;border-radius: 6px;background: transparent;cursor: row-resize;touch-action: none;user-select: none;outline: none;}.pane-divider::after{content: "";display: block;width: 42px;height: 3px;border-radius: 3px;background: var(--muted);opacity: .45;transition: opacity .12s,background .12s;}.pane-divider.vertical{cursor: col-resize;}.pane-divider.vertical::after{width: 3px;height: 42px;}.pane-divider:hover::after, .pane-divider.active::after, .pane-divider:focus-visible::after{background: var(--accent-2);opacity: 1;}.pane-divider:focus-visible{box-shadow: inset 0 0 0 1px var(--accent-2);background: var(--bg-panel);}.workspace.resized-workspace[data-workspace="balanced"], .workspace.resized-workspace[data-workspace="compose"]{grid-template-columns: minmax(min(320px,40%),var(--split-workspace)) minmax(min(320px,40%),var(--rest-workspace));}.stage-shell.score-enabled .stage-stack.resized-score{grid-template-rows: minmax(min(108px,30%),var(--split-score)) minmax(min(150px,40%),var(--rest-score));}.animator-shell.stats-enabled.resized-stats{grid-template-rows: minmax(min(160px,30%),var(--split-stats)) minmax(min(190px,40%),var(--rest-stats));}.animator-shell.stats-enabled.animator-3d.resized-stats{grid-template-rows: minmax(min(160px,30%),var(--split-stats)) auto minmax(min(190px,40%),var(--rest-stats));}.workspace[data-workspace="analyse"] .animator-shell.stats-enabled.resized-analysis{grid-template-columns: minmax(min(320px,40%),var(--split-analysis)) minmax(min(390px,40%),var(--rest-analysis));}.workspace[data-workspace="analyse"] .animator-shell.stats-enabled.resized-stats{grid-template-rows: minmax(0,1fr);}.workspace[data-workspace="analyse"] .animator-shell.stats-enabled.animator-3d.resized-stats{grid-template-rows: minmax(0,1fr) auto;}}.pane-resizing, .pane-resizing *{cursor: var(--pane-resize-cursor) !important;user-select: none !important;}html.embed-mode .pane-divider{display: none !important;}@media (prefers-reduced-motion:reduce){.pane-divider::after{transition: none;}}.share-dialog{gap: 14px;overflow: auto;}.share-code{min-width: 0;max-height: 40dvh;overflow-wrap: anywhere;white-space: pre-wrap;}.share-actions .btn, #shareCloseBtn{min-height: 44px;}.share-actions{gap: 12px;}#shareFeedback{font-size: .75rem;color: var(--muted);}
