:root{font-family: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}}.toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:linear-gradient(180deg,#fff,#f8f9fa);border-bottom:1px solid var(--border);box-shadow:0 2px 8px var(--shadow);z-index:100;height:56px;flex-shrink:0}.toolbar-section{display:flex;align-items:center;gap:4px;position:relative}.toolbar-spacer{flex:1}.mode-selector{gap:2px;background:#f3f4f6;padding:3px;border-radius:10px}.mode-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:none;background:transparent;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;color:#6b7280;transition:all .2s ease}.mode-btn:hover{background:#6366f11a;color:var(--primary)}.mode-btn.active{background:#fff;color:var(--primary);box-shadow:0 2px 4px var(--shadow)}.mode-icon{font-size:16px}.mode-label{font-size:12px}.tool-toggle{display:flex;align-items:center;justify-content:center;gap:4px;width:44px;height:44px;border:2px solid #e5e7eb;background:#f9fafb;border-radius:10px;cursor:pointer;transition:all .15s ease}.tool-toggle:hover{border-color:var(--primary);background:#6366f10d}.tool-toggle:active{transform:scale(.95)}.brush-toggle{flex-direction:column;font-size:18px}.brush-size-indicator{font-size:9px;font-weight:700;color:#6b7280}.color-toggle{border-radius:50%;border:3px solid white;box-shadow:0 0 0 2px #e5e7eb}.color-toggle:hover{box-shadow:0 0 0 2px var(--primary)}.color-swatch{width:100%;height:100%;border-radius:50%}.tool-panel{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000026;padding:16px;min-width:200px;z-index:200;animation:panelSlideIn .2s ease}@keyframes panelSlideIn{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.panel-header{font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.brush-panel{min-width:240px}.brush-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.brush-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 8px;border:2px solid transparent;background:#f9fafb;border-radius:12px;cursor:pointer;transition:all .15s ease}.brush-btn:hover{background:#f3f4f6;transform:scale(1.02)}.brush-btn.active{border-color:var(--primary);background:#6366f11a}.brush-icon{font-size:22px}.brush-name{font-size:10px;font-weight:600;color:#6b7280}.slider-group{margin-bottom:12px}.slider-group:last-child{margin-bottom:0}.slider-label{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:600;color:#6b7280;margin-bottom:6px}.slider-value{color:var(--primary);font-weight:700}.slider{width:100%;height:8px;-webkit-appearance:none;appearance:none;background:#e5e7eb;border-radius:4px;outline:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;background:var(--primary);border-radius:50%;cursor:pointer;box-shadow:0 2px 6px var(--shadow);transition:transform .1s ease}.slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.color-panel{min-width:200px}.color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.color-btn{width:36px;height:36px;border:3px solid white;border-radius:8px;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 4px #0000001a}.color-btn:hover{transform:scale(1.1);box-shadow:0 4px 12px #00000026}.color-btn.active{border-color:#1f2937;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--primary);transform:scale(1.05)}.color-picker-btn{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ff6b6b,#feca57,#48dbfb,#ff9ff3,#54a0ff);border:3px dashed #e5e7eb}.plus-icon{font-size:20px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.hidden-color-input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.custom-color-preview{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb;font-size:12px;color:#6b7280}.preview-swatch{width:24px;height:24px;border-radius:6px;border:2px solid white;box-shadow:0 2px 4px #0000001a}.color-hex{font-family:monospace;font-weight:600;color:#374151}.actions{gap:4px}.action-btn{width:40px;height:40px;border:none;background:#f3f4f6;border-radius:10px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.action-btn:hover:not(:disabled){background:#e5e7eb;transform:scale(1.05)}.action-btn:disabled{opacity:.4;cursor:not-allowed}.action-btn:active:not(:disabled){transform:scale(.95)}.save-btn{background:linear-gradient(135deg,var(--primary),var(--secondary))}.save-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-light),var(--secondary))}@media(max-width:768px){.toolbar{height:52px;padding:6px 8px;gap:6px}.mode-label{display:none}.mode-btn{padding:8px 10px}.tool-toggle{width:40px;height:40px}.tool-panel{position:fixed;top:60px;left:8px;right:8px;transform:none;max-width:calc(100vw - 16px)}.brush-grid{grid-template-columns:repeat(3,1fr)}.color-grid{grid-template-columns:repeat(6,1fr)}.action-btn{width:36px;height:36px;font-size:16px}}@media(max-width:480px){.toolbar{height:48px;padding:4px 6px}.mode-btn{padding:6px 8px}.mode-icon{font-size:14px}.tool-toggle{width:36px;height:36px}.brush-toggle{font-size:16px}.brush-size-indicator{font-size:8px}.action-btn{width:32px;height:32px;font-size:14px;border-radius:8px}.color-grid{grid-template-columns:repeat(4,1fr)}}@media(pointer:coarse){.tool-toggle,.brush-btn,.color-btn,.action-btn,.mode-btn{min-width:44px;min-height:44px}.slider::-webkit-slider-thumb{width:28px;height:28px}}.animator-container{display:flex;flex-direction:column;width:100%;height:100%;background:#f5f5f5}.animator-canvas-wrapper{flex:1;position:relative;display:flex;align-items:center;justify-content:center;background:repeating-conic-gradient(#e0e0e0 0% 25%,#f0f0f0 0% 50%) 50% / 20px 20px;overflow:hidden;padding:16px}.animator-canvas-frame{position:relative;background:#fff;box-shadow:0 4px 20px #00000026;border-radius:8px;overflow:hidden}.animator-canvas{display:block;width:100%;height:100%;touch-action:none}.onion-skin-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:multiply}.animator-timeline{display:flex;flex-direction:column;background:linear-gradient(180deg,#2d2d2d,#1a1a1a);border-top:2px solid #444;padding:12px;gap:10px}.timeline-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.play-btn{width:48px;height:48px;border:none;background:linear-gradient(135deg,var(--primary),var(--secondary));border-radius:50%;cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 4px 12px #6366f166}.play-btn:hover{transform:scale(1.1);box-shadow:0 6px 16px #6366f180}.play-btn.playing{background:linear-gradient(135deg,#ef4444,#f97316);box-shadow:0 4px 12px #ef444466}.fps-control{display:flex;align-items:center;gap:8px;color:#aaa;font-size:13px}.fps-control input{width:50px;padding:6px 8px;border:1px solid #444;background:#333;color:#fff;border-radius:6px;font-size:13px;text-align:center}.onion-control{display:flex;align-items:center;gap:8px;color:#aaa;font-size:13px}.onion-control label{display:flex;align-items:center;gap:6px;cursor:pointer}.onion-control input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary)}.onion-control input[type=range]{width:80px;height:4px;-webkit-appearance:none;background:#444;border-radius:2px}.onion-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:var(--primary);border-radius:50%;cursor:pointer}.frames-strip{display:flex;gap:8px;overflow-x:auto;padding:8px 0;scrollbar-width:thin;scrollbar-color:#555 #2d2d2d}.frames-strip::-webkit-scrollbar{height:6px}.frames-strip::-webkit-scrollbar-track{background:#2d2d2d;border-radius:3px}.frames-strip::-webkit-scrollbar-thumb{background:#555;border-radius:3px}.frame-thumb{position:relative;width:70px;height:55px;background:#333;border:2px solid #444;border-radius:6px;cursor:pointer;overflow:hidden;transition:all .15s ease;flex-shrink:0}.frame-thumb:hover{border-color:#666;transform:translateY(-2px)}.frame-thumb.active{border-color:var(--primary);box-shadow:0 0 0 2px #6366f14d}.frame-number{position:absolute;top:2px;left:4px;font-size:10px;font-weight:600;color:#fff;background:#0009;padding:1px 4px;border-radius:3px;z-index:1}.frame-preview{width:100%;height:100%;object-fit:cover}.add-frame-btn{width:70px;height:55px;background:transparent;border:2px dashed #555;border-radius:6px;cursor:pointer;color:#888;font-size:24px;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.add-frame-btn:hover{border-color:var(--primary);color:var(--primary);background:#6366f11a}.frame-actions{display:flex;align-items:center;gap:8px}.frame-actions button{width:32px;height:32px;border:none;background:#333;border-radius:6px;cursor:pointer;font-size:14px;color:#fff;transition:all .15s ease}.frame-actions button:hover:not(:disabled){background:#444}.frame-actions button:disabled{opacity:.4;cursor:not-allowed}.frame-counter{color:#888;font-size:12px;margin-left:auto}@media(max-width:768px){.animator-timeline,.animator-canvas-wrapper{padding:8px}.timeline-controls{gap:10px}.fps-control input{width:40px}.frame-thumb{width:55px;height:42px}.add-frame-btn{width:55px;height:42px;font-size:20px}.play-btn{width:40px;height:40px;font-size:16px}}.bubble-palette{position:fixed;left:16px;top:80px;width:200px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;overflow:hidden;z-index:100;animation:slideDown .3s ease}.bubble-palette-header{padding:14px 16px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff}.bubble-palette-header h3{font-size:14px;font-weight:600;margin-bottom:4px}.bubble-palette-header p{font-size:11px;opacity:.8}.bubble-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:12px}.bubble-option{display:flex;flex-direction:column;align-items:center;padding:10px;border:2px solid #e5e7eb;background:#fafafa;border-radius:10px;cursor:pointer;transition:all .2s ease}.bubble-option:hover{border-color:var(--primary);background:#6366f10d;transform:translateY(-2px)}.bubble-preview{width:60px;height:45px;display:flex;align-items:center;justify-content:center}.bubble-preview img{width:100%;height:100%;object-fit:contain}.bubble-label{display:flex;align-items:center;gap:4px;margin-top:6px;font-size:11px;font-weight:500;color:#374151}.bubble-icon{font-size:12px}.bubble-editor-layer{position:absolute;inset:0;pointer-events:none;z-index:50}.bubble-item{position:absolute;pointer-events:all;cursor:move;user-select:none}.bubble-item.selected{z-index:51}.bubble-item.selected:before{content:"";position:absolute;inset:-4px;border:2px dashed var(--primary);border-radius:8px;pointer-events:none}.bubble-bg{width:100%;height:100%;object-fit:fill;pointer-events:none}.bubble-text-container{position:absolute;inset:15%;display:flex;align-items:center;justify-content:center;text-align:center;pointer-events:none}.bubble-text{font-family:Comic Sans MS,Comic Neue,cursive,sans-serif;font-size:14px;line-height:1.3;color:#333;word-wrap:break-word;overflow-wrap:break-word}.bubble-textarea{width:100%;height:100%;border:none;background:transparent;font-family:Comic Sans MS,Comic Neue,cursive,sans-serif;font-size:14px;line-height:1.3;color:#333;text-align:center;resize:none;outline:none;pointer-events:all}.bubble-textarea::placeholder{color:#999;font-style:italic}.bubble-handle{position:absolute;width:14px;height:14px;background:var(--primary);border:2px solid white;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0003;transition:transform .15s ease}.bubble-handle:hover{transform:scale(1.2)}.resize-handle{bottom:-7px;right:-7px;cursor:se-resize}.rotate-handle{top:-20px;left:50%;transform:translate(-50%);cursor:grab;background:var(--accent)}.rotate-handle:active{cursor:grabbing}.bubble-delete-btn{position:absolute;top:-10px;right:-10px;width:24px;height:24px;border:none;background:var(--danger);color:#fff;border-radius:50%;cursor:pointer;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #ef444466;transition:transform .15s ease}.bubble-delete-btn:hover{transform:scale(1.1)}@media(max-width:768px){.bubble-palette{inset:auto 8px 80px;width:auto}.bubble-grid{grid-template-columns:repeat(3,1fr)}.bubble-preview{width:50px;height:38px}}.wiggler-container{position:fixed;inset:0;overflow:hidden;cursor:none;z-index:1000}.wiggler-container.chaos{animation:containerShake .1s infinite}@keyframes containerShake{0%,to{transform:translate(0)}25%{transform:translate(-2px,2px)}50%{transform:translate(2px,-2px)}75%{transform:translate(-2px,-2px)}}.wiggler-canvas{position:absolute;inset:0;width:100%;height:100%}.intensity-meter{position:fixed;right:20px;top:50%;transform:translateY(-50%);width:20px;height:200px;background:#0000004d;border:2px solid rgba(255,255,255,.3);border-radius:10px;overflow:hidden;z-index:1001}.intensity-fill{position:absolute;bottom:0;left:0;right:0;transition:height .1s ease-out;border-radius:0 0 8px 8px;box-shadow:0 0 20px currentColor}.intensity-threshold{position:absolute;left:0;right:0;height:2px;background:#ff0;box-shadow:0 0 10px #ff0}.shake-text{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-family:Impact,Arial Black,sans-serif;font-size:clamp(60px,15vw,200px);font-weight:900;color:#fff;text-shadow:0 0 20px #ff00ff,0 0 40px #ff00ff,0 0 60px #00ffff,0 0 80px #00ffff,4px 4px 0 #000,-4px -4px 0 #000;z-index:1002;pointer-events:none;animation:shakeText .05s infinite;letter-spacing:.1em}@keyframes shakeText{0%{transform:translate(-50%,-50%) rotate(-2deg) scale(1)}25%{transform:translate(-48%,-52%) rotate(2deg) scale(1.05)}50%{transform:translate(-52%,-48%) rotate(-1deg) scale(.98)}75%{transform:translate(-50%,-50%) rotate(1deg) scale(1.02)}to{transform:translate(-50%,-50%) rotate(-2deg) scale(1)}}.exit-button{position:fixed;top:20px;right:20px;padding:12px 24px;font-family:"Press Start 2P",monospace,system-ui;font-size:10px;background:#000000b3;color:#fff;border:2px solid #fff;border-radius:8px;cursor:pointer;z-index:1003;transition:all .2s ease;text-transform:uppercase;letter-spacing:.1em}.exit-button:hover{background:#fff;color:#000;box-shadow:0 0 20px #ffffff80}.warning-overlay{position:fixed;inset:0;background:#f5e6d3;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeInWarning .5s ease}@keyframes fadeInWarning{0%{opacity:0}to{opacity:1}}.warning-content{text-align:center;max-width:400px;padding:0;background:transparent}.warning-stripes{display:flex;flex-direction:column;gap:4px;padding:8px 0}.stripe-line{height:3px;background:#1a1a1a;width:100%}.warning-text-box{background:#f5e6d3;padding:25px 40px;border-left:3px solid #1a1a1a;border-right:3px solid #1a1a1a}.warning-english{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-weight:600;letter-spacing:.15em;color:#1a1a1a;text-transform:uppercase;margin-bottom:8px}.warning-kanji{font-family:Hiragino Sans,Microsoft YaHei,sans-serif;font-size:13px;color:#1a1a1a;letter-spacing:.1em}.accept-button{margin-top:40px;padding:12px 30px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:12px;font-weight:600;background:#1a1a1a;color:#f5e6d3;border:none;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.15em}.accept-button:hover{background:#333;transform:scale(1.02)}.accept-button:active{transform:scale(.98)}.wiggler-container.chaos .exit-button{animation:buttonChaos .2s infinite}@keyframes buttonChaos{0%{border-color:#ff0;color:#ff0;text-shadow:0 0 10px #ff0}33%{border-color:#0ff;color:#0ff;text-shadow:0 0 10px #0ff}66%{border-color:#f0f;color:#f0f;text-shadow:0 0 10px #f0f}to{border-color:#ff0;color:#ff0;text-shadow:0 0 10px #ff0}}.wiggler-container.chaos .intensity-meter{border-color:#fff;animation:meterPulse .3s infinite}@keyframes meterPulse{0%,to{box-shadow:0 0 20px #f0fc}50%{box-shadow:0 0 40px #0ffc}}.qstu-logo-container{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease}.qstu-logo-container:hover{transform:scale(1.05)}.qstu-logo-svg{width:100%;height:100%}.qstu-bg{transition:opacity .3s ease}.qstu-grid{opacity:.6}.grid-line{stroke-dasharray:70;stroke-dashoffset:70;animation:drawLine .8s ease forwards}@keyframes drawLine{to{stroke-dashoffset:0}}.qstu-mark{opacity:0;transform:scale(.8);transform-origin:center;transition:all .5s cubic-bezier(.34,1.56,.64,1)}.qstu-mark.visible{opacity:1;transform:scale(1)}.qstu-smiley{opacity:0;transition:opacity .3s ease}.qstu-logo-container:hover .qstu-smiley{opacity:1}.qstu-logo-container:hover .qstu-mark{opacity:0}@keyframes logoPulse{0%,to{filter:drop-shadow(0 0 0 rgba(99,102,241,0))}50%{filter:drop-shadow(0 0 10px rgba(99,102,241,.5))}}.qstu-logo-container.pulse{animation:logoPulse 2s ease-in-out infinite}@keyframes logoSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.qstu-logo-container.spin .qstu-logo-svg{animation:logoSpin .8s ease-in-out}.qstu-watermark{opacity:.7;pointer-events:none}.qstu-watermark .qstu-grid{display:none}.qstu-watermark .qstu-mark{opacity:1;transform:scale(1)}.qstu-watermark .qstu-smiley{display:none}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-dark: #1a1a2e;--bg-light: #fafafa;--primary: #6366f1;--primary-light: #818cf8;--secondary: #8b5cf6;--accent: #f59e0b;--success: #10b981;--danger: #ef4444;--text-dark: #1f2937;--text-light: #f9fafb;--border: #e5e7eb;--shadow: rgba(0, 0, 0, .1);--shadow-lg: rgba(0, 0, 0, .2)}html,body,#root{width:100%;height:100%;overflow:hidden;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg-light);color:var(--text-dark)}.app-container{display:flex;flex-direction:column;width:100%;height:100%;position:relative}.canvas-container{flex:1;position:relative;overflow:hidden;background:#fff}.canvas-container-wrapper{position:absolute;inset:0;overflow:hidden;background:repeating-conic-gradient(#f0f0f0 0% 25%,#e8e8e8 0% 50%) 50% / 20px 20px}.canvas-board{display:block;touch-action:none;user-select:none;-webkit-user-select:none;background:#fff;box-shadow:0 4px 20px #00000026;will-change:transform}.zoom-controls{position:absolute;bottom:16px;right:16px;display:flex;align-items:center;gap:4px;background:#fff;padding:6px 10px;border-radius:24px;box-shadow:0 2px 12px #00000026;z-index:50}.zoom-controls button{width:32px;height:32px;border:none;background:#f3f4f6;border-radius:8px;cursor:pointer;font-size:18px;font-weight:600;color:#374151;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.zoom-controls button:hover{background:#e5e7eb}.zoom-controls button:active{transform:scale(.95)}.zoom-controls .reset-btn{font-size:16px}.zoom-level{font-size:12px;font-weight:600;color:#6b7280;min-width:48px;text-align:center}@media(max-width:768px){.zoom-controls{bottom:12px;right:12px;padding:4px 8px}.zoom-controls button{width:28px;height:28px;font-size:16px}.zoom-level{font-size:10px;min-width:36px}}.animator-container{display:flex;flex-direction:column;width:100%;height:100%}.animator-canvas-wrapper{flex:1;position:relative;overflow:hidden}.animator-canvas,.onion-skin-canvas{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain}.onion-skin-canvas{pointer-events:none;mix-blend-mode:multiply}.app-loading{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,var(--primary),var(--secondary))}.loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hint-indicator{position:fixed;bottom:20px;right:20px;width:30px;height:30px;opacity:0;transition:opacity 2s ease;cursor:pointer;z-index:50}.hint-indicator.visible{opacity:.3;animation:hintPulse 2s ease-in-out infinite}@keyframes hintPulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.1);opacity:.5}}@media(max-width:768px){.toolbar{flex-wrap:wrap;height:auto;padding:8px}.toolbar-section{margin:4px}.animator-timeline{flex-direction:column;height:auto}}@media(pointer:coarse){.brush-btn,.color-btn,.action-btn,.mode-btn{min-width:44px;min-height:44px}}@media(prefers-color-scheme:dark){:root{--bg-light: #1a1a2e;--text-dark: #f9fafb;--border: #374151;--shadow: rgba(0, 0, 0, .3)}.canvas-container{background:#2d2d44}}@media print{.toolbar,.bubble-palette,.animator-timeline{display:none!important}.canvas-board{width:100%;height:auto}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}.slide-up{animation:slideUp .3s ease}.slide-down{animation:slideDown .3s ease}
