*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0f0f1a;--surface:#1a1a2e;--surface2:#222240;--surface3:#2a2a4a;--primary:#6c5ce7;--primary-hover:#7f71eb;--accent:#00cec9;--danger:#e94560;--text:#e8e8f0;--text2:#a0a0b8;--border:#335;--radius:8px}html,body,#root{width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}input,select,textarea,button{font-family:inherit;font-size:inherit;color:var(--text)}input[type=text],input[type=number],input[type=datetime-local],input[type=password],textarea,select{background:var(--surface2);border:1px solid var(--border);border-radius:4px;outline:none;width:100%;padding:6px 8px;transition:border-color .2s}input[type=text]:focus,input[type=number]:focus,input[type=datetime-local]:focus,input[type=password]:focus,textarea:focus,select:focus{border-color:var(--primary)}input[type=datetime-local]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-width:0}input[type=datetime-local]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert();opacity:.8}input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=color]{background:var(--surface2);border:1px solid var(--border);cursor:pointer;border-radius:4px;width:36px;height:30px;padding:2px}button{cursor:pointer;border-radius:var(--radius);border:none;padding:8px 16px;font-weight:500;transition:all .15s}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.resolution-picker{justify-content:center;align-items:center;height:100%;padding:20px;display:flex}.resolution-card{background:var(--surface);text-align:center;border-radius:16px;width:100%;max-width:680px;padding:40px;box-shadow:0 8px 40px #0006}.resolution-card h1{background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:28px}.resolution-card>p{color:var(--text2);margin-bottom:24px}.resolution-tabs{border-radius:var(--radius);border:1px solid var(--border);gap:0;margin-bottom:20px;display:flex;overflow:hidden}.resolution-tabs .tab{background:var(--surface2);color:var(--text2);flex:1;padding:10px;font-size:14px}.resolution-tabs .tab.active{background:var(--primary);color:#fff}.preset-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.preset-btn{background:var(--surface2);border:1px solid var(--border);text-align:left;flex-direction:column;gap:2px;padding:14px 12px;transition:all .15s;display:flex}.preset-btn:hover{background:var(--surface3);border-color:var(--primary)}.preset-label{font-size:14px;font-weight:500}.preset-dims{color:var(--text2);font-size:12px}.custom-resolution{flex-direction:column;align-items:center;gap:16px;display:flex}.custom-fields{align-items:flex-end;gap:12px;display:flex}.custom-fields .field{flex-direction:column;gap:4px;display:flex}.custom-fields .field label{color:var(--text2);font-size:12px}.custom-fields .field input{width:120px}.x-separator{color:var(--text2);padding-bottom:8px;font-size:20px}.lock-btn{background:var(--surface2);border:1px solid var(--border);cursor:pointer;border-radius:4px;align-self:flex-end;margin-bottom:6px;padding:4px 8px;font-size:16px;line-height:1;transition:all .15s}.lock-btn.active{border-color:var(--primary);background:#6c5ce726}.glitch-dial{color:var(--text2);white-space:nowrap;align-items:center;gap:3px;font-size:9px;display:flex}.glitch-dial input[type=range]{width:50px;height:14px;accent-color:var(--primary)}.glitch-dial-val{text-align:center;min-width:12px;color:var(--accent);font-size:10px;font-weight:600}.start-btn{background:var(--primary);color:#fff;padding:12px 32px;font-size:16px}.start-btn:hover{background:var(--primary-hover)}.editor-view{flex-direction:column;height:100%;display:flex}.editor-header{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:6px 16px;display:flex}.editor-header h1{color:var(--text);letter-spacing:0;white-space:nowrap;font-size:14px;font-weight:700}.header-project-name{color:var(--text2);cursor:default;white-space:nowrap;text-overflow:ellipsis;border:1px solid #0000;border-radius:4px;max-width:200px;padding:2px 8px;font-size:13px;transition:all .15s;overflow:hidden}.header-project-name:hover{border-color:var(--border);background:var(--surface2)}.header-name-input{background:var(--bg);border:1px solid var(--primary);color:var(--text);border-radius:4px;outline:none;width:200px;padding:2px 8px;font-size:13px}.header-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.soundboard-shell{position:relative}.soundboard-toggle.active{border-color:var(--accent);color:var(--text)}.soundboard-popover{background:var(--surface);border:1px solid var(--border);z-index:10000;border-radius:8px;width:300px;max-width:min(300px,100vw - 24px);padding:10px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 34px #0000006b}.soundboard-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.soundboard-head strong{font-size:13px;line-height:1.2}.soundboard-head span{color:var(--text2);white-space:nowrap;font-size:11px}.soundboard-head span.ready{color:var(--accent)}.soundboard-head span.live{color:var(--danger);font-weight:800}.soundboard-volume{background:var(--surface2);border:1px solid var(--border);color:var(--text2);border-radius:6px;grid-template-columns:auto 1fr 34px;align-items:center;gap:8px;margin-bottom:10px;padding:7px 8px;font-size:11px;display:grid}.soundboard-volume input[type=range]{width:100%;accent-color:var(--accent)}.soundboard-volume span:last-child{text-align:right;color:var(--text)}.soundboard-custom-form{grid-template-columns:1fr;gap:6px;margin-bottom:10px;display:grid}.soundboard-custom-form input{min-width:0;padding:6px 7px;font-size:11px}.soundboard-custom-form button{background:var(--surface2);border:1px solid var(--border);min-width:0;color:var(--text);white-space:nowrap;border-radius:6px;padding:6px 8px;font-size:11px;font-weight:700}.soundboard-custom-form button:hover{border-color:var(--accent);background:var(--surface3)}.soundboard-mic{background:#00cec90f;border:1px solid #00cec938;border-radius:6px;margin-bottom:10px;padding:8px;transition:border-color .12s,background .12s,box-shadow .12s}.soundboard-mic.enabled{background:#00cec91a;border-color:#00cec96b}.soundboard-mic.talking{background:#e9456021;border-color:#e94560c7;box-shadow:0 0 0 2px #e945602e}.soundboard-mic-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.soundboard-mic-head strong{font-size:12px;line-height:1.2}.soundboard-mic-head span{color:var(--text2);white-space:nowrap;font-size:10px}.soundboard-mic-head span.live{color:var(--danger);font-weight:800}.soundboard-mic-head span.ready{color:var(--accent)}.soundboard-mic-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:6px;display:grid}.soundboard-mic-btn,.soundboard-record-btn,.soundboard-abort-btn{background:var(--surface2);border:1px solid var(--border);min-width:0;min-height:34px;color:var(--text);border-radius:6px;padding:7px 8px;font-size:12px;font-weight:700;line-height:1.1;transition:transform .12s,border-color .12s,background .12s,box-shadow .12s,color .12s}.soundboard-mic-btn:hover:not(:disabled),.soundboard-record-btn:hover:not(:disabled),.soundboard-abort-btn:hover:not(:disabled){border-color:var(--accent);background:var(--surface3)}.soundboard-mic-btn.enabled{color:#fff;background:#e945602e;border-color:#e9456094}.soundboard-mic-btn.enabled:hover:not(:disabled){border-color:var(--danger);background:#e9456052}.soundboard-record-btn.ready{border-color:#00cec96b}.soundboard-record-btn.active{color:#fff;background:linear-gradient(#e94560,#b8263f);border-color:#ffffffb8;transform:translateY(1px);box-shadow:0 0 0 2px #e945603d,0 0 18px #e945606b}.soundboard-mic-btn:disabled,.soundboard-record-btn:disabled,.soundboard-abort-btn:disabled{color:var(--text2);opacity:.55;cursor:not-allowed}.soundboard-abort-btn:hover:not(:disabled){color:var(--danger);border-color:var(--danger)}.soundboard-group+.soundboard-group{margin-top:8px}.soundboard-group-label{color:var(--text2);text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.soundboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.soundboard-pad{background:var(--surface2);border:1px solid var(--border);min-width:0;min-height:34px;color:var(--text);text-align:center;overflow-wrap:anywhere;border-radius:6px;padding:7px 8px;font-size:12px;line-height:1.1}.soundboard-pad:hover:not(:disabled){background:var(--surface3);border-color:var(--accent)}.soundboard-pad:disabled{color:var(--text2);opacity:.55}.soundboard-pad-wrap{gap:4px;min-width:0;display:grid}.soundboard-pad-wrap .soundboard-pad{width:100%}.soundboard-remove-btn{border:1px solid var(--border);min-width:0;color:var(--text2);background:0 0;border-radius:5px;padding:3px 6px;font-size:10px;line-height:1.1}.soundboard-remove-btn:hover{color:var(--danger);border-color:var(--danger)}.director-mic-popover{width:320px}.header-btn.mic-live{color:#fff;border-color:var(--danger);background:#e945604d}.alerts-popover{width:360px;max-width:min(360px,100vw - 24px)}.send-audio-popover{width:320px}.guest-links-popover{width:430px;max-width:min(430px,100vw - 24px)}.alerts-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:10px;display:grid}.alerts-preset-btn{background:var(--surface2);border:1px solid var(--border);min-width:0;min-height:32px;color:var(--text2);overflow-wrap:anywhere;border-radius:6px;padding:6px 7px;font-size:11px;line-height:1.1}.alerts-preset-btn:hover,.alerts-preset-btn.active{color:var(--text);border-color:var(--accent);background:var(--surface3)}.alerts-preview-card{border:1px solid var(--border);background:var(--surface2);border-radius:7px;margin-bottom:10px;padding:11px;overflow:hidden}.alerts-preview-card span{color:var(--text2);text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:800;display:block}.alerts-preview-card strong{color:var(--text);overflow-wrap:anywhere;font-size:17px;line-height:1.12;display:block}.alerts-preview-card p{color:var(--text2);overflow-wrap:anywhere;margin:5px 0 0;font-size:12px;line-height:1.3}.alerts-preview-card.tone-cyan{border-color:#00cec98c}.alerts-preview-card.tone-violet{border-color:#6c5ce799}.alerts-preview-card.tone-gold{border-color:#fdcb6ea6}.alerts-preview-card.tone-red{border-color:#e94560a6}.alerts-preview-card.tone-green{border-color:#55efc494}.alerts-preview-card.tone-blue{border-color:#74b9ff99}.alerts-fields{gap:7px;margin-bottom:8px;display:grid}.alerts-field{gap:4px;min-width:0;display:grid}.alerts-field span{color:var(--text2);text-transform:uppercase;font-size:10px;font-weight:700}.alerts-field input,.alerts-field select{width:100%;min-width:0;padding:6px 7px;font-size:12px}.alerts-row{grid-template-columns:minmax(0,1fr) 82px;gap:8px;margin-bottom:10px;display:grid}.alerts-field.compact input{text-align:right}.alerts-send-btn{color:#fff;background:var(--primary);border:1px solid var(--primary);border-radius:6px;width:100%;min-height:34px;font-size:12px;font-weight:800}.alerts-send-btn:hover{background:var(--primary-hover)}.overlay-alert-layer{z-index:2147483646;pointer-events:none;justify-content:center;align-items:center;padding:48px;display:flex;position:absolute;inset:0}.overlay-alert-card{text-align:center;background:#0c0e18eb;border:3px solid #ffffffc7;border-radius:8px;width:min(780px,100%);min-height:190px;padding:28px 34px 30px;animation:.52s cubic-bezier(.16,1,.3,1) overlayAlertPop,5.2s linear overlayAlertHold;overflow:hidden;box-shadow:0 24px 70px #0000007a}.overlay-alert-title{color:#ffffffb8;text-transform:uppercase;overflow-wrap:anywhere;margin-bottom:10px;font-size:22px;font-weight:900;line-height:1.1;display:block}.overlay-alert-headline{color:#fff;overflow-wrap:anywhere;font-size:56px;font-weight:900;line-height:1;display:block}.overlay-alert-body{color:#ffffffdb;overflow-wrap:anywhere;margin:16px 0 0;font-size:24px;line-height:1.22}.overlay-alert-card.tone-cyan{border-color:#00cec9;box-shadow:0 24px 70px #0000007a,0 0 36px #00cec959}.overlay-alert-card.tone-violet{border-color:#a29bfe;box-shadow:0 24px 70px #0000007a,0 0 36px #a29bfe52}.overlay-alert-card.tone-gold{border-color:#fdcb6e;box-shadow:0 24px 70px #0000007a,0 0 36px #fdcb6e59}.overlay-alert-card.tone-red{border-color:#e94560;box-shadow:0 24px 70px #0000007a,0 0 36px #e9456061}.overlay-alert-card.tone-green{border-color:#55efc4;box-shadow:0 24px 70px #0000007a,0 0 36px #55efc452}.overlay-alert-card.tone-blue{border-color:#74b9ff;box-shadow:0 24px 70px #0000007a,0 0 36px #74b9ff54}.collaborator-strip{border:1px solid var(--border);background:var(--surface2);border-radius:999px;align-items:center;padding:2px 4px;display:flex}.collaborator-strip.live{border-color:#00cec973;box-shadow:inset 0 0 0 1px #00cec914}.collaborator-avatar,.collaborator-overflow{color:#fff;border:2px solid var(--surface2);border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;margin-left:-5px;font-size:9px;font-weight:800;line-height:1;display:inline-flex}.collaborator-avatar:first-child,.collaborator-overflow:first-child{margin-left:0}.collaborator-avatar.self{box-shadow:0 0 0 1px var(--accent)}.collaborator-overflow{background:var(--surface3);color:var(--text)}.header-separator{background:var(--border);flex-shrink:0;width:1px;height:20px}.header-toolbar{align-items:center;gap:4px;display:flex}.header-btn.icon-btn{justify-content:center;align-items:center;padding:4px 6px;line-height:1;display:flex}.header-btn.icon-btn svg{display:block}.header-btn.icon-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.grid-size-input{background:var(--surface2);border:1px solid var(--border);width:52px;color:var(--text);text-align:center;border-radius:4px;outline:none;padding:2px 4px;font-size:11px}.grid-size-input:focus{border-color:var(--primary)}.header-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text2);white-space:nowrap;border-radius:4px;padding:4px 12px;font-size:12px}.header-btn:hover{border-color:var(--primary);color:var(--text)}.header-btn.has-changes,.header-btn.overlay-reload-btn.sent{color:var(--accent);border-color:var(--accent)}.header-btn.overlay-reload-btn.error{color:#fff;border-color:var(--danger);background:#e945604d}.header-btn.abort-audio-btn{color:#fff;border-color:var(--danger);background:var(--danger);font-weight:700}.header-btn.abort-audio-btn:hover:not(:disabled){filter:brightness(1.08);color:#fff}.header-btn.abort-audio-btn:disabled{opacity:.72;cursor:wait}.editor-body{flex:1;display:flex;overflow:hidden}.editor-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.canvas-wrapper{background:radial-gradient(circle at 1px 1px,#ffffff08 1px,#0000 0) 0 0/20px 20px;flex:1;position:relative;overflow:hidden}.canvas-positioner{position:absolute;top:0;left:0}.canvas{box-shadow:0 0 0 1px var(--border), 0 4px 24px #00000080;cursor:default;background:repeating-conic-gradient(#1a1a2e 0% 25%,#161630 0% 50%) 0 0/20px 20px;position:relative}.canvas.dragging-active iframe{pointer-events:none!important}.canvas-empty{color:var(--text2);pointer-events:none;opacity:.5;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;inset:0}.canvas-info{color:var(--text2);background:var(--surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:8px;padding:3px 10px;font-size:11px;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.canvas-info-tag{background:var(--surface2);color:var(--accent);border-radius:4px;padding:1px 6px;font-size:10px}.grid-line{pointer-events:none;z-index:0;position:absolute}.grid-v{background:#ffffff0f;width:1px;top:0}.grid-h{background:#ffffff0f;height:1px;left:0}.snap-guide{pointer-events:none;z-index:9999;position:absolute}.snap-v{opacity:.7;background:#ff4081;width:1px;top:0}.snap-h{opacity:.7;background:#ff4081;height:1px;left:0}.canvas-element{-webkit-user-select:none;user-select:none;transition:box-shadow .15s}.canvas-element:hover{box-shadow:0 0 0 1px #6c5ce766}.canvas-element.selected{box-shadow:0 0 0 2px var(--primary)}.canvas-element.locked-element.selected{box-shadow:0 0 0 2px #f39c12}.canvas-element.hidden-element{opacity:.35!important}.chat-placeholder{width:100%;height:100%;color:var(--text2);background:var(--surface2);border-radius:4px;justify-content:center;align-items:center;font-size:12px;display:flex}.hidden-overlay{pointer-events:none;background:repeating-linear-gradient(45deg,#0000,#0000 5px,#6c5ce71a 5px 10px);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.hidden-overlay span{background:var(--primary);color:#fff;border-radius:3px;padding:2px 10px;font-size:11px}.element-type-badge{background:var(--primary);color:#fff;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;border-radius:3px 3px 0 0;max-width:200px;padding:1px 6px;font-size:10px;position:absolute;top:-20px;left:0;overflow:hidden}.overlay-audio-runtime{pointer-events:none;background:0 0;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.overlay-audio-bank{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.overlay-audio-player{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.resize-handle{background:var(--primary);z-index:10;border:1px solid #fff;border-radius:2px;width:10px;height:10px;position:absolute}.resize-nw{cursor:nw-resize;top:-5px;left:-5px}.resize-ne{cursor:ne-resize;top:-5px;right:-5px}.resize-sw{cursor:sw-resize;bottom:-5px;left:-5px}.resize-se{cursor:se-resize;bottom:-5px;right:-5px}.rotate-handle{border:2px solid var(--primary);background:var(--surface);z-index:11;cursor:grab;border-radius:50%;width:16px;height:16px;position:absolute;top:-34px;left:50%;transform:translate(-50%)}.rotate-handle:before{content:"";background:var(--primary);width:1px;height:16px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.rotate-handle:active{cursor:grabbing}.element-bar{background:var(--surface);border-top:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:6px 12px;display:flex}.element-bar-left{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.bar-label{color:var(--text2);margin-right:2px;font-size:11px}.element-chip{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap;color:var(--text);align-items:center;gap:4px;padding:4px 10px;font-size:12px;transition:all .15s;display:flex}.element-chip:hover{background:var(--surface3);border-color:var(--primary)}.element-chip:active{cursor:grabbing}.chip-icon{font-size:14px}.bar-separator{background:var(--border);flex-shrink:0;width:1px;height:24px;margin:0 4px}.bar-action-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text2);white-space:nowrap;border-radius:4px;padding:4px 10px;font-size:11px}.bar-action-btn:hover{border-color:var(--primary);color:var(--text)}.generate-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);white-space:nowrap;padding:6px 14px;font-size:12px;font-weight:500}.generate-btn:hover{background:var(--surface3);border-color:#6c5ce7a6}.generate-overlay-btn{background:var(--primary);color:#fff;border-color:#7f71ebb3}.generate-overlay-btn:hover{background:var(--primary-hover);border-color:#7f71ebe6}.share-editor-btn{color:var(--text2)}.share-editor-btn:hover{color:var(--text)}.element-bar-right{align-items:center;gap:8px;margin-left:auto;display:flex}.bar-error{max-width:320px;color:var(--danger);font-size:11px;line-height:1.3}.layers-panel{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:220px;display:flex}.scenes-section{border-bottom:1px solid var(--border);flex-shrink:0}.scenes-header{justify-content:space-between;align-items:center;gap:8px;padding:8px 10px 6px;display:flex}.scenes-header h3{color:var(--accent);font-size:13px}.scene-add-btn{background:var(--surface2);border:1px solid var(--border);width:24px;height:24px;color:var(--text);border-radius:4px;padding:0;line-height:1}.scene-add-btn:hover{border-color:var(--primary)}.scenes-list{max-height:150px;padding:0 4px 6px;overflow-y:auto}.scene-item{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:4px;align-items:center;gap:4px;padding:4px 6px;display:flex}.scene-item:hover{background:var(--surface2)}.scene-item.active{background:#00cec91f;border-color:#00cec973}.scene-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}.scene-name-input{background:var(--bg);border:1px solid var(--primary);min-width:0;color:var(--text);border-radius:3px;outline:none;flex:1;padding:1px 4px;font-size:11px}.scene-count{text-align:center;min-width:20px;color:var(--text2);border:1px solid var(--border);border-radius:999px;padding:1px 5px;font-size:10px}.scene-controls{gap:2px;display:flex}.scene-ctrl{opacity:.55;background:0 0;border:none;border-radius:3px;padding:2px 4px;font-size:11px;line-height:1}.scene-ctrl:hover:not(:disabled){opacity:1;background:var(--surface3);color:var(--accent)}.scene-delete:hover:not(:disabled){color:var(--danger)}.scene-ctrl:disabled{opacity:.25}.layers-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.layers-header h3{color:var(--accent);font-size:13px}.layers-actions{gap:4px;display:flex}.layer-action-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text2);border-radius:4px;padding:3px 8px;font-size:10px}.layer-action-btn:hover:not(:disabled){border-color:var(--primary);color:var(--text)}.layer-action-btn:disabled{opacity:.4;cursor:not-allowed}.layers-list{flex:1;padding:4px;overflow-y:auto}.layers-list::-webkit-scrollbar{width:5px}.layers-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.layers-empty{text-align:center;color:var(--text2);opacity:.6;padding:20px 10px;font-size:12px}.layer-group-header{color:var(--text2);background:var(--surface2);border-radius:4px;align-items:center;gap:6px;margin-bottom:1px;padding:4px 8px;font-size:11px;display:flex}.group-folder-icon{font-size:12px}.group-label{font-weight:500}.layer-item{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:4px;align-items:center;gap:4px;margin-bottom:1px;padding:4px 6px;transition:background .1s;display:flex}.layer-item:hover{background:var(--surface2)}.layer-item.selected{border-color:var(--primary);background:#6c5ce733}.layer-item.in-group{padding-left:24px}.layer-item.layer-hidden{opacity:.5}.layer-item.dragging{opacity:.3}.layer-item.drop-target{border-top:2px solid var(--primary)}.layer-drag-handle{color:var(--text2);cursor:grab;flex-shrink:0;padding:0 2px;font-size:10px;line-height:1}.layer-drag-handle:active{cursor:grabbing}.layer-type-icon{text-align:center;width:16px;color:var(--text2);flex-shrink:0;font-size:11px;font-weight:600}.layer-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;overflow:hidden}.layer-name-input{background:var(--bg);border:1px solid var(--primary);color:var(--text);border-radius:3px;outline:none;flex:1;min-width:0;padding:1px 4px;font-size:11px}.layer-controls{flex-shrink:0;gap:2px;display:flex}.layer-ctrl{opacity:.5;background:0 0;border:none;border-radius:3px;padding:2px 4px;font-size:11px;line-height:1;transition:opacity .15s}.layer-ctrl:hover{opacity:1;background:var(--surface3)}.layer-ctrl.inactive{opacity:.3}.layer-ctrl.active{opacity:1}.layer-ctrl-duplicate:hover{color:var(--accent)}.layer-ctrl-delete:hover{color:var(--danger)}.property-panel{background:var(--surface);border-left:1px solid var(--border);flex-shrink:0;width:270px;padding:10px;overflow-y:auto}.property-panel.pp-empty{color:var(--text2);text-align:center;opacity:.6;justify-content:center;align-items:center;padding:20px;font-size:12px;display:flex}.property-panel::-webkit-scrollbar{width:6px}.property-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.pp-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.pp-header h3{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.pp-close{color:var(--text2);background:0 0;padding:4px 8px;font-size:14px}.pp-close:hover{color:var(--text);background:var(--surface2)}.pp-section{margin-bottom:8px}.pp-label{color:var(--text2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px;font-size:10px;display:block}.pp-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.pp-field{flex-direction:column;gap:2px;display:flex}.pp-field span{color:var(--text2);font-size:9px}.pp-field input,.pp-field select{padding:3px 5px;font-size:11px}input[type=range]{width:100%;accent-color:var(--primary)}.pp-range-val{color:var(--text2);text-align:right;font-size:10px}.pp-rotation-row{grid-template-columns:1fr 52px auto;align-items:center;gap:6px;display:grid}.pp-rotation-input{width:52px}.pp-reset-btn{width:100%;margin-top:6px}.pp-buttons-row{flex-wrap:wrap;gap:3px;display:flex}.pp-buttons-row button{background:var(--surface2);border:1px solid var(--border);padding:3px 7px;font-size:10px}.pp-buttons-row button:hover{background:var(--surface3);border-color:var(--primary)}.pp-buttons-row .btn-danger{border-color:var(--danger);color:var(--danger)}.pp-buttons-row .btn-danger:hover{background:var(--danger);color:#fff}.pp-toggle-row{flex-wrap:wrap;gap:3px;display:flex}.toggle-btn{background:var(--surface2);border:1px solid var(--border);border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600}.toggle-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.toggle-btn:hover{border-color:var(--primary)}.pp-variable-token{color:var(--accent);background:var(--surface2);border:1px solid var(--border);border-radius:4px;align-self:center;padding:3px 7px;font-family:monospace;font-size:10px}.pp-variable-toolbar{flex-wrap:wrap;gap:4px;margin-bottom:5px;display:flex}.pp-variable-btn{color:var(--text2);background:var(--surface2);border:1px solid var(--border);border-radius:4px;padding:3px 7px;font-size:10px;font-weight:600}.pp-variable-btn:hover,.pp-variable-btn.active{color:var(--text);border-color:var(--primary)}.pp-variable-btn.active{background:#6c5ce72e}.pp-countdown-panel{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:7px}.pp-countdown-presets{margin-top:6px}.pp-animation-panel{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:7px}.pp-animation-title-row,.pp-animation-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.pp-animation-title-row{margin-bottom:6px}.pp-animation-title-row .pp-label{margin-bottom:0}.pp-animation-title-row .toggle-btn{padding:3px 8px}.pp-animation-card{background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:6px}.pp-animation-card+.pp-animation-card{margin-top:6px}.pp-animation-card-header{margin-bottom:5px}.pp-animation-card-header span{color:var(--text2);font-size:10px;font-weight:700}.pp-animation-actions{gap:3px;display:flex}.property-panel hr{border:none;border-top:1px solid var(--border);margin:8px 0}.property-panel textarea{resize:vertical;min-height:50px;font-size:11px}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:90%;max-width:600px;padding:24px;box-shadow:0 16px 40px #0000006b}.modal-card h2{color:var(--text);margin-bottom:14px;font-size:20px}.modal-card>p{color:var(--text2);margin-bottom:12px;font-size:13px}.modal-url-box{gap:8px;margin-bottom:10px;display:flex}.modal-url-box input{background:var(--bg);flex:1;padding:8px;font-size:11px}.copy-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);white-space:nowrap;padding:8px 16px;font-size:12px}.copy-btn:hover{background:var(--surface3);border-color:#6c5ce7a6}.copy-btn.danger{color:var(--danger)}.copy-btn.danger:hover{border-color:var(--danger)}.copy-btn:disabled{opacity:.45}.modal-hint{color:var(--text2)!important;font-size:11px!important}.share-section,.live-link-section{border:1px solid var(--border);border-radius:var(--radius);background:#00000024;padding:14px}.share-section{margin-bottom:12px}.share-section p{color:var(--text2);margin-bottom:10px;font-size:12px}.share-section .modal-url-box{margin-bottom:0}.live-link-section{margin:14px 0 10px}.share-section-heading,.live-link-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.share-section-heading h3,.live-link-heading h3{font-size:14px;font-weight:600}.share-section-heading span{border:1px solid var(--border);color:var(--text2);background:var(--surface2);white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:11px}.live-status{border:1px solid var(--border);color:var(--text2);background:var(--surface2);border-radius:999px;padding:3px 8px;font-size:11px}.live-status.ready{color:var(--accent);background:#00cec91a;border-color:#00cec973}.live-disabled,.live-error{color:var(--danger);margin:8px 0;font-size:12px;line-height:1.4}.live-note{color:var(--text2);margin:8px 0;font-size:12px;line-height:1.4}.live-url-box{margin-top:10px}.live-key-box{margin:10px 0}.workspace-password-box{border:1px solid var(--border);background:var(--surface2);border-radius:6px;margin:10px 0;padding:10px}.workspace-password-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.editor-link-box{background:#6c5ce714;border:1px solid #6c5ce759;border-radius:6px;margin-bottom:12px;padding:12px}.editor-link-box .modal-url-box,.compact-url-box{margin-bottom:0}.live-sync-toggle{color:var(--text);align-items:center;gap:8px;margin:4px 0 10px;font-size:12px;display:flex}.live-sync-toggle input{width:auto;accent-color:var(--accent)}.guest-links-box{background:#00cec90f;border:1px solid #00cec94d;border-radius:6px;margin-top:12px;padding:12px}.guest-link-form{grid-template-columns:minmax(0,1.2fr) minmax(0,1.2fr) 72px auto;gap:8px;margin:10px 0;display:grid}.guest-link-form.compact{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 64px auto}.guest-link-form input{min-width:0;font-size:11px}.guest-link-form button{background:var(--primary);color:#fff;border:1px solid #7f71ebb3;padding:7px 10px;font-size:12px;font-weight:700}.guest-link-form button:disabled{opacity:.45}.guest-link-list{gap:8px;margin-top:10px;display:grid}.guest-link-list.compact{max-height:280px;overflow:auto}.guest-link-item{border:1px solid var(--border);background:#00000024;border-radius:6px;padding:9px}.guest-link-main{justify-content:space-between;gap:10px;margin-bottom:7px;display:flex}.guest-link-main strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.guest-link-main span{color:var(--text2);white-space:nowrap;font-size:11px}.guest-link-url{grid-template-columns:minmax(0,1fr) auto auto;display:grid}.live-note.error{color:var(--danger)}.live-publish-btn{background:var(--primary);color:#fff;border:1px solid #7f71ebb3;padding:8px 14px;font-size:12px;font-weight:600}.live-publish-btn:hover:not(:disabled){background:var(--primary-hover)}.live-publish-btn:disabled{cursor:not-allowed;opacity:.45}.live-updated{color:var(--text2);margin-top:8px;font-size:11px}body.guest-commentator-body{overflow:hidden}.guest-commentator-page{background:radial-gradient(circle at 50% 20%, #00cec929, transparent 34%), var(--bg);justify-content:center;align-items:center;width:100vw;min-height:100vh;padding:clamp(18px,4vw,48px);display:flex}.guest-commentator-card{gap:22px;width:min(900px,100%);display:grid}.guest-commentator-card.compact{border:1px solid var(--border);background:var(--surface);border-radius:8px;max-width:420px;padding:26px;box-shadow:0 18px 48px #00000059}.guest-commentator-card.compact h1{margin:6px 0 18px;font-size:34px;line-height:1}.guest-commentator-card.compact form{gap:12px;display:grid}.guest-commentator-kicker{color:var(--accent);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800}.guest-commentator-remember{color:var(--text2);align-items:center;gap:8px;font-size:13px;display:flex}.guest-commentator-remember input{width:auto;accent-color:var(--accent)}.guest-commentator-login-btn{background:var(--primary);color:#fff;border:1px solid #7f71ebb3;min-height:46px;font-weight:800}.guest-commentator-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.guest-commentator-head strong{text-align:center;overflow-wrap:anywhere;flex:1;min-width:0;font-size:clamp(26px,5vw,58px);line-height:1}.guest-commentator-head>span:last-child{color:var(--text2);white-space:nowrap;font-size:14px}.guest-commentator-actions{grid-template-columns:minmax(0,1.35fr) minmax(0,1.05fr) minmax(0,.85fr);gap:clamp(12px,3vw,28px);display:grid}.guest-commentator-live,.guest-commentator-record,.guest-commentator-abort{text-transform:uppercase;overflow-wrap:anywhere;border-radius:8px;min-height:clamp(220px,52vh,520px);font-size:clamp(34px,7vw,86px);font-weight:900;line-height:.95}.guest-commentator-live{color:#061415;background:var(--accent);border:1px solid #00cec9cc}.guest-commentator-live.live{color:#fff;background:var(--danger);border-color:var(--danger)}.guest-commentator-record{color:#061415;background:#00cec9ad;border:1px solid #00cec98c}.guest-commentator-record.recording{color:#fff;background:var(--danger);border-color:var(--danger)}.guest-commentator-abort{color:#fff;background:#e945602e;border:1px solid #e945608c}.guest-commentator-live:disabled,.guest-commentator-record:disabled,.guest-commentator-abort:disabled{opacity:.42}.guest-commentator-file-input{display:none}.guest-commentator-upload-btn{background:var(--surface2);border:1px solid var(--border);width:100%;min-height:56px;color:var(--text);text-transform:uppercase;border-radius:8px;margin-top:clamp(12px,3vw,24px);font-size:clamp(15px,2.6vw,22px);font-weight:800}.guest-commentator-upload-btn:disabled{opacity:.42}.guest-commentator-status{color:var(--accent);text-align:center;font-size:clamp(18px,3vw,28px);line-height:1.25}.guest-commentator-status.error{color:var(--danger)}.modal-actions{justify-content:flex-end;margin-top:12px;display:flex}.modal-close-btn{background:var(--surface2);border:1px solid var(--border);padding:6px 16px;font-size:12px}.modal-close-btn:hover{background:var(--surface3);border-color:var(--border)}.project-manager-card{flex-direction:column;max-width:560px;max-height:80vh;display:flex}.pm-actions-top{gap:8px;margin-bottom:12px;display:flex}.pm-key-form{margin-bottom:12px}.pm-key-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.pm-new-btn{background:var(--primary);color:#fff;padding:6px 14px;font-size:12px}.pm-new-btn:hover{background:var(--primary-hover)}.pm-import-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text2);padding:6px 14px;font-size:12px}.pm-import-btn:hover{border-color:var(--primary);color:var(--text)}.pm-list{flex:1;min-height:100px;max-height:50vh;overflow-y:auto}.pm-list::-webkit-scrollbar{width:6px}.pm-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.pm-loading,.pm-empty{text-align:center;color:var(--text2);opacity:.6;padding:24px;font-size:13px}.pm-error{color:var(--danger);margin-bottom:10px;font-size:12px;line-height:1.4}.pm-item{background:var(--surface2);border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:8px 10px;transition:background .15s;display:flex}.pm-item:hover{background:var(--surface3)}.pm-item-info{cursor:pointer;flex:1;min-width:0;padding-right:8px}.pm-item-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;display:block;overflow:hidden}.pm-item-meta{color:var(--text2);margin-top:2px;font-size:10px;display:block}.pm-item-actions{flex-shrink:0;gap:4px;display:flex}.pm-item-btn{background:var(--surface);border:1px solid var(--border);color:var(--text2);border-radius:4px;padding:3px 8px;font-size:10px}.pm-item-btn:hover{border-color:var(--primary);color:var(--text)}.pm-item-delete:hover{border-color:var(--danger);color:var(--danger)}.resolution-presets-grid{grid-template-columns:repeat(2,1fr);gap:6px;max-height:240px;margin-top:10px;display:grid;overflow-y:auto}.res-preset-btn{background:var(--surface2);border:1px solid var(--border);text-align:left;color:var(--text2);border-radius:6px;padding:8px 10px;font-size:12px;transition:all .15s}.res-preset-btn:hover{background:var(--surface3);border-color:var(--primary);color:var(--text)}.res-preset-btn.active{border-color:var(--primary);color:var(--text);background:#6c5ce733}.res-custom-row{align-items:flex-end;gap:8px;display:flex}.res-scale-toggle{cursor:pointer;color:var(--text2);align-items:center;gap:8px;font-size:12px;display:flex}.res-scale-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.res-apply-btn{background:var(--primary);color:#fff;border-radius:6px;padding:6px 20px;font-size:13px}.res-apply-btn:hover{background:var(--primary-hover)}.error-screen{height:100%;color:var(--danger);justify-content:center;align-items:center;font-size:18px;display:flex}.workspace-lock{justify-content:center;align-items:center;height:100%;padding:20px;display:flex}.workspace-lock-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(420px,100%);padding:24px;box-shadow:0 16px 40px #0000006b}.workspace-lock-card h1{margin-bottom:16px;font-size:20px}.workspace-lock-error{color:var(--danger);margin-top:10px;font-size:12px;line-height:1.4}.workspace-lock-btn{background:var(--primary);color:#fff;width:100%;margin-top:14px;font-size:13px}.workspace-lock-btn:hover:not(:disabled){background:var(--primary-hover)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}@media (max-width:900px){html,body{overflow:auto}.editor-view{height:auto;min-height:100vh}.editor-header{flex-wrap:wrap;gap:8px}.header-toolbar{flex-wrap:wrap;order:3;width:100%}.header-actions{margin-left:0}.editor-body{flex-direction:column;min-height:calc(100vh - 140px)}.layers-panel,.property-panel{border-left:none;border-right:none;flex-shrink:0;width:100%;height:180px}.layers-panel{border-bottom:1px solid var(--border)}.property-panel{border-top:1px solid var(--border)}.editor-main{min-height:55vh}.element-bar{flex-wrap:wrap;align-items:flex-start}.element-bar-right{justify-content:flex-end;width:100%;margin-left:0}.modal-card{max-height:90vh;overflow-y:auto}.workspace-password-row,.guest-link-form,.guest-link-url,.pm-key-grid{grid-template-columns:1fr}.guest-commentator-page{align-items:stretch;min-height:100svh}.guest-commentator-card{align-content:center}.guest-commentator-head{text-align:center;display:grid}.guest-commentator-actions{grid-template-columns:1fr}.guest-commentator-live,.guest-commentator-record,.guest-commentator-abort{min-height:180px}}@keyframes anim-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes overlayAlertPop{0%{opacity:0;filter:blur(8px);transform:translateY(28px)scale(.86)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes overlayAlertHold{0%,84%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-18px)scale(.96)}}@keyframes anim-fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-fadeInDown{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-fadeInLeft{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes anim-fadeInRight{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes anim-slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes anim-slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes anim-slideLeft{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes anim-slideRight{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes anim-slideDiagUp{0%{opacity:0;transform:translate(70%,70%)}to{opacity:1;transform:translate(0)}}@keyframes anim-slideDiagDown{0%{opacity:0;transform:translate(-70%,-70%)}to{opacity:1;transform:translate(0)}}@keyframes anim-scaleIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes anim-zoomIn{0%{opacity:0;filter:blur(4px);transform:scale(1.75)}to{opacity:1;filter:blur();transform:scale(1)}}@keyframes anim-popIn{0%{opacity:0;transform:scale(.4)}65%{opacity:1;transform:scale(1.16)}to{transform:scale(1)}}@keyframes anim-bounceIn{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.1)}80%{transform:scale(.95)}to{transform:scale(1)}}@keyframes anim-bounceUp{0%{opacity:0;transform:translateY(90px)}60%{opacity:1;transform:translateY(-18px)}80%{transform:translateY(8px)}to{transform:translateY(0)}}@keyframes anim-bounceDown{0%{opacity:0;transform:translateY(-90px)}60%{opacity:1;transform:translateY(18px)}80%{transform:translateY(-8px)}to{transform:translateY(0)}}@keyframes anim-bounceLeft{0%{opacity:0;transform:translate(90px)}60%{opacity:1;transform:translate(-18px)}80%{transform:translate(8px)}to{transform:translate(0)}}@keyframes anim-bounceRight{0%{opacity:0;transform:translate(-90px)}60%{opacity:1;transform:translate(18px)}80%{transform:translate(-8px)}to{transform:translate(0)}}@keyframes anim-elasticIn{0%{opacity:0;transform:scale(0)}45%{opacity:1;transform:scale(1.28)}60%{transform:scale(.82)}75%{transform:scale(1.08)}90%{transform:scale(.98)}to{transform:scale(1)}}@keyframes anim-dropIn{0%{opacity:0;transform:translateY(-140px)scaleY(1.2)}70%{opacity:1;transform:translateY(12px)scaleY(.92)}to{transform:translateY(0)scaleY(1)}}@keyframes anim-softLand{0%{opacity:0;filter:blur(3px);transform:translateY(-70px)scale(1.04)}80%{opacity:1;filter:blur();transform:translateY(4px)scale(.99)}to{transform:translateY(0)scale(1)}}@keyframes anim-stampIn{0%{opacity:0;transform:scale(2.4)rotate(-8deg)}58%{opacity:1;transform:scale(.86)rotate(2deg)}to{transform:scale(1)rotate(0)}}@keyframes anim-unfoldIn{0%{opacity:0;transform:scaleY(0)perspective(500px)rotateX(-55deg)}to{opacity:1;transform:scaleY(1)perspective(500px)rotateX(0)}}@keyframes anim-rollIn{0%{opacity:0;transform:translate(-100%)rotate(-120deg)}to{opacity:1;transform:translate(0)rotate(0)}}@keyframes anim-spinIn{0%{opacity:0;transform:rotate(-540deg)scale(.25)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes anim-typewriter{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0% 0 0)}}@keyframes anim-flipIn{0%{opacity:0;transform:perspective(400px)rotateX(90deg)}to{opacity:1;transform:perspective(400px)rotateX(0)}}@keyframes anim-rotateIn{0%{opacity:0;transform:rotate(-200deg)scale(0)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes anim-rotateZoomIn{0%{opacity:0;filter:blur(6px);transform:rotate(-35deg)scale(1.6)}to{opacity:1;filter:blur();transform:rotate(0)scale(1)}}@keyframes anim-flipYIn{0%{opacity:0;transform:perspective(500px)rotateY(90deg)}to{opacity:1;transform:perspective(500px)rotateY(0)}}@keyframes anim-skewIn{0%{opacity:0;transform:skew(-24deg)translate(-40px)}to{opacity:1;transform:skew(0)translate(0)}}@keyframes anim-lightSpeedIn{0%{opacity:0;transform:translate(100%)skew(-24deg)}60%{opacity:1;transform:translate(-12px)skew(8deg)}to{transform:translate(0)skew(0)}}@keyframes anim-blurIn{0%{filter:blur(12px);opacity:0}to{filter:blur();opacity:1}}@keyframes anim-blurUp{0%{filter:blur(14px);opacity:0;transform:translateY(30px)}to{filter:blur();opacity:1;transform:translateY(0)}}@keyframes anim-revealUp{0%{clip-path:inset(100% 0 0);opacity:0}to{clip-path:inset(0);opacity:1}}@keyframes anim-revealDown{0%{clip-path:inset(0 0 100%);opacity:0}to{clip-path:inset(0);opacity:1}}@keyframes anim-revealLeft{0%{clip-path:inset(0 0 0 100%);opacity:0}to{clip-path:inset(0);opacity:1}}@keyframes anim-revealRight{0%{clip-path:inset(0 100% 0 0);opacity:0}to{clip-path:inset(0);opacity:1}}@keyframes anim-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes anim-softPulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.035)}}@keyframes anim-heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.15)}28%{transform:scale(1)}42%{transform:scale(1.15)}70%{transform:scale(1)}}@keyframes anim-breath{0%,to{opacity:.86;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes anim-glow{0%,to{filter:drop-shadow(0 0 4px)brightness()}50%{filter:drop-shadow(0 0 18px)brightness(1.3)}}@keyframes anim-breathingGlow{0%,to{filter:drop-shadow(0 0 2px)brightness(.95)}50%{filter:drop-shadow(0 0 24px)brightness(1.45)}}@keyframes anim-neon{0%,19%,21%,23%,80%,to{filter:drop-shadow(0 0 10px)brightness(1.4);opacity:1}20%,22%,81%{filter:drop-shadow(0 0 2px)brightness(.75);opacity:.72}}@keyframes anim-rainbow{0%{filter:hue-rotate()}to{filter:hue-rotate(360deg)}}@keyframes anim-colorPulse{0%,to{filter:hue-rotate()saturate()}50%{filter:hue-rotate(70deg)saturate(1.8)brightness(1.2)}}@keyframes anim-shimmer{0%,to{filter:brightness(.9)contrast()}45%{filter:brightness(1.8)contrast(1.2)drop-shadow(0 0 10px)}}@keyframes anim-shadowDance{0%,to{filter:drop-shadow(-5px 0 #ff005aa6)drop-shadow(5px 0 #00c8ff8c)}50%{filter:drop-shadow(5px 0 #ff005aa6)drop-shadow(-5px 0 #00c8ff8c)}}@keyframes anim-shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes anim-rumble{0%,to{transform:translate(0)rotate(0)}15%{transform:translate(-2px,1px)rotate(-.5deg)}30%{transform:translate(2px,-1px)rotate(.5deg)}45%{transform:translate(-1px,-2px)rotate(.4deg)}60%{transform:translate(1px,2px)rotate(-.4deg)}75%{transform:translate(-2px,-1px)rotate(.3deg)}}@keyframes anim-glitchText{0%,to{filter:none;transform:translate(0)}12%{filter:drop-shadow(3px 0 #ff0050cc);transform:translate(-3px,1px)skew(-8deg)}13%{filter:drop-shadow(-3px 0 #00dcffcc);transform:translate(3px,-1px)skew(8deg)}14%,52%{filter:none;transform:translate(0)}53%{filter:hue-rotate(80deg);transform:translate(2px)skew(5deg)}54%{filter:hue-rotate(-80deg);transform:translate(-2px)skew(-5deg)}55%{filter:none;transform:translate(0)}}@keyframes anim-wave{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes anim-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes anim-bob{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-16px)scale(1.02)}}@keyframes anim-drift{0%,to{transform:translate(0)}25%{transform:translate(8px,-8px)}50%{transform:translateY(-14px)}75%{transform:translate(-8px,-8px)}}@keyframes anim-floatSide{0%,to{transform:translate(0)}50%{transform:translate(14px)}}@keyframes anim-sway{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(8px)rotate(2deg)}}@keyframes anim-jello{0%,to{transform:skew(0)skewY(0)}30%{transform:skew(-12deg)skewY(-12deg)}40%{transform:skew(10deg)skewY(10deg)}50%{transform:skew(-6deg)skewY(-6deg)}60%{transform:skew(4deg)skewY(4deg)}70%{transform:skew(-2deg)skewY(-2deg)}}@keyframes anim-swing{20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}to{transform:rotate(0)}}@keyframes anim-pendulum{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes anim-wobble{0%,to{transform:translate(0)}15%{transform:translate(-16px)rotate(-5deg)}30%{transform:translate(12px)rotate(4deg)}45%{transform:translate(-8px)rotate(-3deg)}60%{transform:translate(5px)rotate(2deg)}75%{transform:translate(-2px)rotate(-1deg)}}@keyframes anim-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(3deg)}75%{transform:rotate(-3deg)}}@keyframes anim-rubberBand{0%,to{transform:scale(1)}30%{transform:scaleX(1.24)scaleY(.76)}40%{transform:scaleX(.82)scaleY(1.18)}55%{transform:scaleX(1.12)scaleY(.88)}70%{transform:scaleX(.96)scaleY(1.04)}}@keyframes anim-tada{0%,to{transform:scale(1)rotate(0)}10%,20%{transform:scale(.95)rotate(-3deg)}30%,50%,70%,90%{transform:scale(1.05)rotate(3deg)}40%,60%,80%{transform:scale(1.05)rotate(-3deg)}}@keyframes anim-bounce{0%,to{transform:translateY(0)}45%{transform:translateY(-18px)}65%{transform:translateY(4px)}82%{transform:translateY(-6px)}}@keyframes anim-yoyo{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-18px)scale(.95)}}@keyframes anim-spin{to{transform:rotate(360deg)}}@keyframes anim-slowSpin{to{transform:rotate(360deg)}}@keyframes anim-counterSpin{to{transform:rotate(-360deg)}}@keyframes anim-tilt{0%,to{transform:rotate(0)}25%{transform:rotate(4deg)}75%{transform:rotate(-4deg)}}@keyframes anim-flipLoop{0%,to{transform:perspective(500px)rotateY(0)}50%{transform:perspective(500px)rotateY(180deg)}}@keyframes anim-flipXLoop{0%,to{transform:perspective(500px)rotateX(0)}50%{transform:perspective(500px)rotateX(180deg)}}@keyframes anim-flipZLoop{0%,to{transform:perspective(500px)rotateY(0)rotate(0)}50%{transform:perspective(500px)rotateY(180deg)rotate(8deg)}}@keyframes anim-squeeze{0%,to{transform:scaleX(1)scaleY(1)}50%{transform:scaleX(.86)scaleY(1.16)}}@keyframes anim-stretch{0%,to{transform:scaleX(1)scaleY(1)}50%{transform:scaleX(1.12)scaleY(.9)}}@keyframes anim-blurPulse{0%,to{filter:blur()}50%{filter:blur(3px)}}@keyframes anim-blink{0%,45%,to{opacity:1}46%,75%{opacity:.18}}
