:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body{margin:0;padding:0;background-color:#fff;overflow:hidden;height:100vh;width:100vw}.toolbar{position:fixed;bottom:8px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.25rem;background-color:#fff;padding:.25rem;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #00000014,0 1px 4px #0000000a;z-index:1000}.toolbar-group{display:flex;gap:.25rem}.toolbar-separator{width:1px;height:28px;margin:0 6px;background-color:#e5e7eb}.toolbar-popover-container{position:relative}.toolbar-popover{position:absolute;bottom:calc(100% + 8px);right:0;background-color:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 4px 12px #0000001a,0 2px 6px #0000000f;padding:.25rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem;z-index:1001;animation:popoverSlideUp .15s ease-out}@keyframes popoverSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chevron-button{position:relative}.play-control-toolbar{position:fixed;top:8px;left:50%;transform:translate(-50%);display:flex;align-items:center;background-color:#fff;padding:.25rem;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #00000014,0 1px 4px #0000000a;z-index:1000;gap:.5rem}.play-controls-left{display:flex;gap:.25rem}.speed-switch-label{display:block;cursor:pointer;position:relative}.speed-switch-input{display:none}.speed-switch-slider{position:relative;display:block;width:72px;height:40px;background-color:#f3f4f6;border-radius:6px;transition:background-color .2s ease}.speed-switch-slider:before{content:"";position:absolute;top:3px;left:3px;width:34px;height:34px;background-color:#fff;border-radius:4px;transition:transform .2s ease;box-shadow:0 1px 3px #0000001a}.speed-switch-input:checked+.speed-switch-slider:before{transform:translate(32px)}.speed-switch-icon{position:absolute;top:50%;transform:translateY(-50%);color:#6b7280;pointer-events:none;transition:color .2s ease;display:flex;align-items:center;justify-content:center;width:34px;height:34px}.speed-switch-icon svg{width:18px!important;height:18px!important}.fast-icon{left:3px}.slow-icon{right:3px}.speed-switch-input:not(:checked)+.speed-switch-slider .fast-icon{color:#374151}.speed-switch-input:checked+.speed-switch-slider .slow-icon{color:#374151}.tool-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:4px;border:none;outline:none;border-radius:4px;background:none;cursor:pointer;transition:all .2s;color:#4a5568;-webkit-tap-highlight-color:transparent}.tool-button:focus{outline:none;box-shadow:none}.tool-button:focus-visible{outline:none;box-shadow:none}.tool-button:hover{background-color:#f0f0f0;color:#2d3748}.tool-button.selected{background-color:#ffc100;color:#000}.tool-button.selected:hover{background-color:#e6ad00;color:#000}.tool-button.playing{background-color:#ffc100;color:#000;animation:pulse 2s infinite}.tool-button.playing:hover{background-color:#e6ad00;color:#000}.tool-button svg{width:24px;height:24px}.canvas-container,.drawing-canvas-container{width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:hidden;touch-action:none}.drawing-canvas-container,.drawing-canvas-container *{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.drawing-canvas-container input,.drawing-canvas-container textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}svg{width:100%;height:100%}.play-indicator{position:fixed;top:8px;left:50%;transform:translate(-50%);background-color:#0d99ff;color:#fff;padding:.5rem 1rem;border-radius:.375rem;font-weight:500;box-shadow:0 1px 3px #0000001a;z-index:1000;animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.6}to{opacity:1}}.tool-button.disabled{opacity:.5;cursor:not-allowed;background:none;color:#a0aec0}.tool-button.disabled:hover{background-color:transparent}.data-toolbar{position:fixed;top:8px;left:8px;display:flex;align-items:center;gap:.25rem;background-color:#fff;padding:.25rem;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #00000014,0 1px 4px #0000000a;z-index:1000}.view-toolbar{position:fixed;top:8px;right:8px;display:flex;align-items:center;gap:.25rem;background-color:#fff;padding:.25rem;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #00000014,0 1px 4px #0000000a;z-index:1000}.help-button-container{position:relative}.help-popover{position:absolute;top:calc(100% + 12px);left:-4px;background-color:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 4px 16px #0000001f,0 2px 8px #00000014;padding:28px;min-width:230px;z-index:1001;animation:helpPopoverSlideDown .15s ease-out}@keyframes helpPopoverSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.help-logo{display:block;width:200px;height:auto;margin:0 auto 16px}.help-description{font-size:14px;color:#4a5568;margin:0 0 8px;line-height:1.5;text-align:center}.help-link{color:#d4940d;text-decoration:none;font-weight:600}.help-link:hover{text-decoration:underline;color:#b87f0a}.help-video-link{display:block;margin-top:16px;font-size:14px;text-align:center}.help-demo-button{width:100%;margin-top:8px;padding:14px 16px;background-color:#ffc100;color:#000;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:background-color .2s}.help-demo-button:hover{background-color:#e6ad00}.help-demo-button:active{background-color:#cc9a00}.help-confirmation{display:flex;flex-direction:column;gap:12px}.help-confirmation-text{font-size:14px;color:#4a5568;margin:0;text-align:center}.help-confirmation-buttons{display:flex;gap:8px}.help-confirmation-buttons .help-demo-button{flex:1}.help-cancel-button{flex:1;padding:14px 16px;background-color:#f3f4f6;color:#4a5568;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:background-color .2s}.help-cancel-button:hover{background-color:#e5e7eb}.help-cancel-button:active{background-color:#d1d5db}.zoom-toolbar{position:fixed;bottom:8px;right:8px;display:flex;align-items:center;gap:.25rem;padding:.25rem;border-radius:8px;background-color:#fff;border:1px solid #e5e7eb;box-shadow:0 2px 8px #00000014,0 1px 4px #0000000a;z-index:1000}.history-toolbar{position:fixed;bottom:8px;left:8px;display:flex;align-items:center;gap:.25rem;padding:.25rem;border-radius:8px;background-color:#fff;border:1px solid #e5e7eb;box-shadow:0 2px 8px #00000014,0 1px 4px #0000000a;z-index:1000}.zoom-toolbar .tool-button{color:#4a5568}.zoom-indicator{font-size:.8rem;font-weight:600;min-width:48px;height:40px;padding:0 14px}.data-controls{display:flex;gap:8px}.data-button{padding:6px 12px;background-color:#0d99ff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.data-button:hover{background-color:#0b87e6}.data-button:active{background-color:#0a75cc}@keyframes highlightBorder{0%{opacity:0}30%{opacity:1}70%{opacity:1}to{opacity:0}}.shape-highlight-border{animation:highlightBorder .2s ease-in-out;animation-fill-mode:forwards;opacity:0}.shape-name-input::placeholder{color:#999}.tooltip-container{position:relative;display:inline-flex;vertical-align:top}.tooltip{--tooltip-offset-x: 0px;position:absolute;left:50%;transform:translate(calc(-50% + var(--tooltip-offset-x)));display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#1a1a1a;color:#fff;border-radius:6px;font-size:13px;font-weight:500;white-space:nowrap;z-index:2000;pointer-events:none;box-shadow:0 4px 12px #00000040}.tooltip-above{bottom:calc(100% + 10px)}.tooltip-below{top:calc(100% + 10px)}.tooltip-arrow{position:absolute;left:calc(50% - var(--tooltip-offset-x));transform:translate(-50%);width:0;height:0;border-width:6px;border-style:solid}.tooltip-arrow-above{top:100%;border-color:#1a1a1a transparent transparent transparent}.tooltip-arrow-below{bottom:100%;border-color:transparent transparent #1a1a1a transparent}.tooltip-label{color:#fff}.tooltip-hotkey{padding:2px 6px;background-color:#ffffff26;border-radius:4px;font-size:11px;font-weight:600;color:#fffc;font-family:system-ui,-apple-system,sans-serif}.tooltip-above{animation:tooltipFadeInAbove .15s ease-out}@keyframes tooltipFadeInAbove{0%{opacity:0;transform:translate(calc(-50% + var(--tooltip-offset-x))) translateY(4px)}to{opacity:1;transform:translate(calc(-50% + var(--tooltip-offset-x))) translateY(0)}}.tooltip-below{animation:tooltipFadeInBelow .15s ease-out}@keyframes tooltipFadeInBelow{0%{opacity:0;transform:translate(calc(-50% + var(--tooltip-offset-x))) translateY(-4px)}to{opacity:1;transform:translate(calc(-50% + var(--tooltip-offset-x))) translateY(0)}}
