:root{--primary: #ff7155;--primary-dim: rgba(255, 113, 85, .15);--primary-glow: rgba(255, 113, 85, .3);--bg: #0a0a0f;--bg-elevated: #12121a;--bg-surface: #1a1a26;--bg-hover: #22222f;--bg-active: #2a2a3a;--glass-bg: rgba(10, 10, 12, .8);--dark-glass-bg: rgba(10, 10, 12, .88);--border: rgba(255, 255, 255, .06);--border-focus: rgba(255, 113, 85, .4);--text: #e8e6f0;--text-secondary: #8b8a95;--text-muted: #55545e;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 20px rgba(0,0,0,.4);--shadow-lg: 0 10px 40px rgba(0,0,0,.5);--radius-xs: 3px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--font: "Space Grotesk", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", monospace;--sidebar-width: 280px;--panel-width: 320px;--topbar-height: 52px;--toolbar-height: 44px;--rail-width: 36px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-active);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.range-wrapper{position:relative;width:100%;height:18px;display:flex;align-items:center;padding:0 7px;box-sizing:border-box}.range-wrapper:after{content:"";position:absolute;left:calc(7px + (100% - 14px) * var(--fill-left-frac, 0));top:50%;height:4px;width:calc((100% - 14px) * var(--fill-width-frac, 0));background:var(--primary);border-radius:2px;transform:translateY(-50%);pointer-events:none;z-index:1;opacity:.85}.range-wrapper:before{content:"";position:absolute;left:calc(7px + (100% - 14px) * var(--default-frac, -10));top:50%;width:4px;height:4px;background:var(--primary);border-radius:50%;transform:translate(-50%,-50%);opacity:0;z-index:3;pointer-events:none;transition:opacity .2s ease}.range-wrapper:has(input.modified):before{opacity:.4}.range-wrapper:has(input.modified):hover:before{opacity:.7}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:18px;background:transparent;outline:none;cursor:pointer;margin:0;padding:0;position:relative;z-index:2}input[type=range]::-webkit-slider-runnable-track{height:4px;background:#ffffff14;border-radius:2px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:var(--primary);border-radius:50%;cursor:pointer;box-shadow:0 0 8px var(--primary-glow);margin-top:-5px;position:relative;z-index:3}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}input[type=range]::-webkit-slider-thumb:active{transform:scale(1.3)}select{background:#ffffff0a;color:var(--text);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);padding:6px 10px;font-family:var(--font);font-size:12px;outline:none;cursor:pointer;width:100%}select:focus{border-color:var(--border-focus)}button:focus-visible,select:focus-visible,input[type=range]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(6px) scale(.95);padding:6px 12px;background:#0a0a0ceb;backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);border:1px solid rgba(255,113,85,.15);border-radius:8px;color:#fff;font-size:11px;font-family:var(--font);font-weight:500;letter-spacing:.2px;white-space:nowrap;pointer-events:none;opacity:0;z-index:9999;transition:opacity .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1);transition-delay:0s;max-width:220px;text-align:center;line-height:1.4;box-shadow:0 4px 20px #00000073,0 0 0 .5px #ffffff0f,0 0 12px #ff715514}[data-tip]:hover:after{opacity:1;transform:translate(-50%) translateY(0) scale(1);transition-delay:2s}.app{width:100vw;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;position:relative}.topbar{height:var(--topbar-height);background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:absolute;top:0;left:0;right:0;z-index:100}.topbar-left{display:flex;align-items:center;gap:6px;flex-shrink:0}.topbar-center{flex:1;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden}.topbar-filename{font-size:11px;color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}.topbar-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.topbar-expand-btn{display:flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease;font-family:var(--font);font-size:11px;font-weight:500;white-space:nowrap;flex-shrink:0}.topbar-expand-btn:hover{color:var(--primary);border-color:var(--primary);background:#ff715514}.topbar-expand-label{font-size:11px}.topbar-brand{display:flex;align-items:center;gap:10px}.topbar-logo{height:22px;width:auto;display:block}.topbar-title{font-size:18px;font-weight:600;letter-spacing:-.3px}.topbar-title span{color:var(--primary)}.topbar-actions{display:flex;align-items:center;gap:4px}.topbar-btn{display:flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 12px;background:transparent;color:var(--text-secondary);border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.topbar-btn:hover{background:var(--bg-hover);color:var(--text)}.topbar-btn.primary{background:var(--primary);color:#fff;border-color:transparent;box-shadow:0 0 12px var(--primary-glow),0 2px 6px #0003;position:relative;overflow:hidden}.topbar-btn.primary:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.12) 0%,transparent 50%);opacity:0;transition:opacity .3s ease}.topbar-btn.primary:hover{background:#ff8570;box-shadow:0 0 24px var(--primary-glow),0 4px 12px #0000004d}.topbar-btn.primary:hover:before{opacity:1}.topbar-btn.icon-only{width:34px;padding:0}.topbar-btn:disabled{opacity:.25;cursor:not-allowed;pointer-events:none}.topbar-divider{width:1px;height:20px;background:var(--border);margin:0 4px}.main-content{flex:1;display:flex;overflow:hidden;position:relative}.sidebar{width:var(--sidebar-width);min-width:var(--rail-width);background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;position:absolute;top:var(--topbar-height);bottom:0;left:0;z-index:20;transition:width .25s cubic-bezier(.4,0,.2,1)}.sidebar-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-tab{flex:1;padding:10px 0;background:transparent;color:var(--text-muted);border:none;border-bottom:2px solid transparent;font-family:var(--font);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;gap:6px;position:relative}.sidebar-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.sidebar-tab.active{color:var(--primary);border-bottom-color:var(--primary);background:#ff71550a}.sidebar-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px}.effect-category{margin-bottom:16px}.effect-category-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);padding:4px 8px;margin-bottom:8px;display:flex;align-items:center;gap:6px}.layer-order-wrap{display:inline-flex;align-items:center;gap:3px;margin-left:auto;flex-shrink:0}.layer-order-label{font-size:7px;font-weight:700;letter-spacing:.5px;font-family:var(--font);line-height:1;color:#ffffff40;-webkit-user-select:none;user-select:none}.layer-order-label.active{color:var(--primary)}.layer-order-tag{display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;padding:0;width:14px;height:14px;border-radius:3px;font-size:7px;line-height:1;transition:all .15s ease;flex-shrink:0;background:#ffffff0f;color:#ffffff40}.layer-order-tag.active{background:#ff715526;color:var(--primary)}.layer-order-tag:hover,.layer-order-tag.active:hover{background:#ffffff1a;color:#fff}.effect-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);border:1px solid transparent;background:transparent;width:100%;text-align:left;color:var(--text-secondary);font-family:var(--font);font-size:13px;position:relative}.effect-item:hover{background:#ffffff0a;color:var(--text)}.effect-item.active{background:var(--primary-dim);color:var(--primary);border-color:#ff715533}.effect-item-icon{width:30px;height:30px;border-radius:var(--radius-sm);background:#ffffff0a;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s cubic-bezier(.16,1,.3,1)}.effect-item:hover .effect-item-icon{background:#ffffff14}.effect-item.active .effect-item-icon{background:#ff715533;box-shadow:0 0 8px var(--primary-glow)}.effect-item.secondary{background:#2dd4bf1a;color:#2dd4bf;border-color:#2dd4bf33}.effect-item.secondary .effect-item-icon{background:#2dd4bf26}.effect-secondary-badge{margin-left:auto;width:18px;height:18px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;transition:all .15s ease}.effect-secondary-badge:hover{background:#dc262633;color:#dc2626}.presets-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.preset-actions-row{grid-column:1 / -1;display:flex;gap:6px;margin-bottom:4px}.preset-save-btn{flex:1;padding:8px 10px;background:transparent;border:1px dashed rgba(255,113,85,.35);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font);font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:all .15s ease}.preset-save-btn:hover{border-style:solid;border-color:var(--primary);color:var(--text);background:#ff715514}.preset-save-btn:disabled{opacity:.3;cursor:not-allowed;transform:none;box-shadow:none}.preset-action-btn{flex:1;padding:8px 10px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font);font-size:11px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .15s ease;white-space:nowrap}.preset-action-btn:hover{border-color:#ffffff73;color:var(--text);background:#ffffff0a}.preset-action-btn:disabled{opacity:.3;cursor:not-allowed}.preset-delete-all-btn{padding:2px 6px;font-size:9px;font-weight:500;text-transform:none;letter-spacing:0;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;gap:3px;transition:all .15s ease;font-family:var(--font)}.preset-delete-all-btn:hover{background:#dc26261f;border-color:#dc262666;color:#f87171}.preset-drag-wrapper{border-radius:var(--radius-md);cursor:grab;position:relative;z-index:1;min-width:0;overflow:visible;transition:transform .2s cubic-bezier(.2,0,0,1)}.preset-drag-wrapper:active{cursor:grabbing}.preset-drag-wrapper.dragging{opacity:.25;pointer-events:none}body.preset-dragging{-webkit-user-select:none!important;user-select:none!important;cursor:grabbing!important}body.preset-dragging *{cursor:grabbing!important}.preset-card{position:relative;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md);padding:8px 6px;cursor:pointer;transition:all .2s ease;text-align:center;font-family:var(--font);color:var(--text);display:flex;flex-direction:column;align-items:center;gap:6px;overflow:hidden;width:100%;box-sizing:border-box}.preset-card:hover{background:#ffffff0d;box-shadow:0 0 12px color-mix(in srgb,var(--preset-color, var(--primary)) 10%,transparent)}.preset-card.active{border-color:var(--preset-color, var(--primary));background:color-mix(in srgb,var(--preset-color, var(--primary)) 8%,transparent)}.preset-card-visual{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:linear-gradient(135deg,#ffffff0a,#ffffff03);border:1px solid var(--border);transition:all .2s ease;flex-shrink:0}.preset-card-glyph{font-family:var(--font-mono);font-size:10px;font-weight:600;color:var(--preset-color, var(--primary));transition:all .2s ease;line-height:1}.preset-card:hover .preset-card-visual{border-color:var(--preset-color, var(--primary));background:color-mix(in srgb,var(--preset-color, var(--primary)) 12%,transparent);box-shadow:0 0 10px color-mix(in srgb,var(--preset-color, var(--primary)) 15%,transparent)}.preset-card:hover .preset-card-glyph{text-shadow:0 0 8px var(--preset-color, var(--primary))}.preset-card.active .preset-card-visual{border-color:var(--preset-color, var(--primary));background:color-mix(in srgb,var(--preset-color, var(--primary)) 15%,transparent);box-shadow:0 0 10px color-mix(in srgb,var(--preset-color, var(--primary)) 18%,transparent)}.preset-card-info{min-width:0;width:100%;overflow:hidden}.preset-card-name{font-size:11px;font-weight:600;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.preset-card-effect{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.preset-drag-ghost{position:fixed;z-index:9999;pointer-events:none;opacity:.9;transform:rotate(2deg) scale(1.04);filter:drop-shadow(0 8px 24px rgba(0,0,0,.5)) drop-shadow(0 0 12px rgba(255,113,85,.25));transition:none;will-change:transform}.preset-drag-ghost .preset-card{border-color:var(--primary);background:#ff715514}.presets-divider{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);padding:12px 0 8px;grid-column:1 / -1}.preset-card-wrapper{position:relative;min-width:0;overflow:visible}.preset-card-wrapper .preset-card{width:100%}.preset-list-item-wrapper{display:flex;align-items:center;position:relative}.preset-list-item-wrapper .preset-list-item{flex:1}.preset-more-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;transition:all .15s ease;flex-shrink:0}.preset-card-wrapper:hover .preset-more-btn,.preset-list-item-wrapper:hover .preset-more-btn,.preset-text-item-wrapper:hover .preset-more-btn{opacity:.7}.preset-more-btn:hover{opacity:1!important;background:var(--bg-active);color:var(--text)}.preset-menu-anchor{position:relative;flex-shrink:0}.preset-card-wrapper .preset-menu-anchor{position:absolute;top:4px;right:4px;z-index:10}.preset-context-menu,.palette-context-menu{z-index:9999;background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);padding:4px;min-width:130px;box-shadow:0 8px 24px #00000080;animation:contextMenuIn .12s ease}@keyframes contextMenuIn{0%{opacity:0}to{opacity:1}}.preset-context-menu button,.palette-context-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-secondary);font-family:var(--font);font-size:11px;cursor:pointer;transition:all .12s ease;white-space:nowrap}.preset-context-menu button:hover,.palette-context-menu button:hover{background:#ffffff0f;color:var(--text)}.preset-context-menu button.danger:hover,.palette-context-menu button.danger:hover{background:#dc262626;color:#f87171}.canvas-area{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;background:var(--bg);width:100%}.canvas-container{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;touch-action:none}.canvas-container.zoomable{cursor:grab}.canvas-container.panning{cursor:grabbing}.canvas-wrapper{position:absolute;box-shadow:var(--shadow-lg);border-radius:2px;overflow:visible;will-change:transform;transform-origin:center center}.canvas-wrapper canvas{display:block;max-width:none;image-rendering:auto;image-rendering:high-quality;background-image:linear-gradient(45deg,#1a1a26 25%,transparent 25%),linear-gradient(-45deg,#1a1a26 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1a1a26 75%),linear-gradient(-45deg,transparent 75%,#1a1a26 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0px;background-color:#12121a}.drop-zone{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.drop-zone-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;width:340px;padding:48px 40px;border:1px dashed rgba(255,113,85,.35);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease}.drop-zone-box:hover{border-style:solid;border-color:#ff715559;background:#ff71550a}.drop-zone-icon{width:72px;height:72px;border-radius:50%;background:#ffffff08;border:1px dashed rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:all .3s ease}.drop-zone-box:hover .drop-zone-icon,.drop-zone.dragging .drop-zone-icon{border-color:var(--primary);color:#fff;background:var(--primary-dim);transform:scale(1.05)}.drop-zone-text{font-size:15px;font-weight:500;color:var(--text-secondary)}.drop-zone-hint{font-size:11px;color:var(--text-muted)}.drop-zone.dragging{background:#ff71550d}.drop-zone.dragging .drop-zone-box{border-color:var(--primary);border-style:solid;background:#ff71550f}.drop-zone.dragging:after{content:"";position:absolute;inset:16px;border:2px dashed var(--primary);border-radius:var(--radius-lg);pointer-events:none}.canvas-toolbar{height:var(--toolbar-height);background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;gap:4px;padding:0 12px;padding-left:calc(var(--sidebar-width) + 12px);padding-right:calc(var(--panel-width) + 12px);position:absolute;bottom:0;left:0;right:0;z-index:5;transition:padding .25s cubic-bezier(.4,0,.2,1)}.left-collapsed .canvas-toolbar{padding-left:calc(var(--rail-width) + 12px)}.right-collapsed .canvas-toolbar{padding-right:calc(var(--rail-width) + 12px)}.toolbar-zoom-group{display:flex;align-items:center;gap:4px}.toolbar-divider{width:1px;height:20px;background:var(--border);margin:0 4px}.canvas-toolbar-btn{display:flex;align-items:center;justify-content:center;gap:4px;height:30px;padding:0 10px;background:transparent;color:var(--text-secondary);border:none;border-radius:var(--radius-sm);font-family:var(--font);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.canvas-toolbar-btn:hover{background:#ffffff0f;color:var(--text)}.canvas-toolbar-btn.active{color:var(--primary);background:var(--primary-dim)}.zoom-slider{width:80px;height:3px!important;margin:0 2px}.zoom-input{width:52px;height:28px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-mono);font-size:11px;text-align:center;outline:none;padding:0 4px;transition:all .15s ease}.zoom-input:focus{border-color:var(--primary);color:var(--text);background:#ffffff0f}.zoom-display{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);min-width:40px;text-align:center}.image-info{display:flex;align-items:center;gap:12px;padding:6px 12px;padding-left:calc(var(--sidebar-width) + 12px);padding-right:calc(var(--panel-width) + 12px);background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-bottom:1px solid rgba(255,255,255,.04);font-size:11px;color:var(--text-muted);font-family:var(--font-mono);position:absolute;top:var(--topbar-height);left:0;right:0;z-index:5;min-width:0;overflow:hidden;transition:padding .25s cubic-bezier(.4,0,.2,1)}.left-collapsed .image-info{padding-left:calc(var(--rail-width) + 12px)}.right-collapsed .image-info{padding-right:calc(var(--rail-width) + 12px)}.image-info-item{display:flex;align-items:center;gap:4px;white-space:nowrap;flex-shrink:0}.image-info-item:first-child{flex-shrink:1;min-width:0;overflow:hidden}.image-info-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px;display:inline-block;vertical-align:middle}.settings-panel{width:var(--panel-width);min-width:var(--rail-width);background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-left:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;position:absolute;top:var(--topbar-height);bottom:0;right:0;z-index:20;transition:width .25s cubic-bezier(.4,0,.2,1)}.panel-header{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.panel-title{font-size:13px;font-weight:600}.panel-reset{background:transparent;color:var(--text-muted);border:none;font-family:var(--font);font-size:11px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:all .15s ease}.panel-reset:hover{color:var(--primary);background:var(--primary-dim)}.panel-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:0}.settings-section{border-bottom:1px solid rgba(255,255,255,.04)}.settings-section-header-wrap{display:flex;align-items:center;position:relative}.settings-section-header-wrap .settings-section-header{flex:1}.section-reset-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);opacity:.55;transition:all .15s ease;margin-right:10px;flex-shrink:0}.settings-section-header-wrap:hover .section-reset-btn{opacity:.8}.section-reset-btn:hover{opacity:1;background:var(--bg-active);color:var(--primary)}.settings-section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s ease;background:transparent;width:100%;border:none;color:var(--text);font-family:var(--font)}.settings-section-header:hover{background:#ffffff08}.settings-section-title{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text)}.settings-section-toggle{color:var(--text-muted);transition:transform .2s ease}.settings-section-toggle.open{transform:rotate(180deg)}.settings-section-body{padding:8px 16px 12px;display:flex;flex-direction:column;gap:12px;animation:fadeIn .2s ease}.inline-effect-selector{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.inline-effect-btn{display:flex;align-items:center;gap:4px;padding:5px 10px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font);font-size:11px;cursor:pointer;transition:all .15s ease}.inline-effect-btn:hover{background:#ffffff0f;color:var(--text)}.inline-effect-btn.active{background:#ff71551f;border-color:var(--primary);color:var(--primary)}.inline-effect-settings{padding-top:8px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.control-row{display:flex;flex-direction:column;gap:6px}.control-label{display:flex;align-items:center;justify-content:space-between}.control-label-text{font-size:11px;color:var(--text-secondary);font-weight:500}.control-label-value{font-size:11px;color:var(--text-muted);font-family:var(--font-mono);display:flex;align-items:center;gap:4px}.control-reset-btn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:3px;padding:0;transition:opacity .15s ease,color .15s ease,background .15s ease;opacity:0;pointer-events:none}.control-reset-btn.visible{opacity:1;pointer-events:auto}.control-reset-btn.visible:hover{background:var(--bg-active);color:var(--primary)}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:2px 0}.toggle{width:36px;height:20px;background:#ffffff14;border-radius:10px;border:none;cursor:pointer;position:relative;transition:background .2s ease;flex-shrink:0}.toggle.active{background:var(--primary)}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .2s ease}.toggle.active:after{transform:translate(16px)}.color-picker-row{display:flex;align-items:center;gap:8px}.color-swatch{width:28px;height:28px;border-radius:var(--radius-sm);border:2px solid var(--border);cursor:pointer;flex-shrink:0;position:relative;overflow:hidden}.color-swatch input{position:absolute;inset:-8px;width:44px;height:44px;border:none;cursor:pointer;opacity:0}.color-hex-input{flex:1;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);padding:5px 8px;color:var(--text);font-family:var(--font-mono);font-size:11px;outline:none;width:100%}.color-hex-input:focus{border-color:var(--border-focus)}.palette-control{flex-direction:column!important;align-items:flex-start!important}.palette-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;width:100%;margin-top:6px;max-height:280px;overflow-y:auto}.palette-item{display:flex;align-items:center;gap:6px;width:100%;padding:5px 8px;border-radius:var(--radius-sm);background:#ffffff05;border:1px solid rgba(255,255,255,.05);cursor:pointer;transition:all .15s;color:var(--text);font-size:10px;min-width:0;box-sizing:border-box}.palette-item:hover{border-color:var(--border-focus);background:#ffffff0d}.palette-item.active{border-color:var(--primary);background:#ff71551a}.palette-swatches{display:flex;gap:2px;flex-shrink:0}.palette-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.palette-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;opacity:.8}.palette-action-row{display:flex;gap:6px;margin-top:6px}.palette-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;margin-top:0;padding:6px 10px;border-radius:var(--radius-sm);background:#ffffff08;border:1px dashed rgba(255,255,255,.12);color:var(--text-muted);font-size:11px;cursor:pointer;transition:all .15s}.palette-add-btn:hover{background:#ff715514;border-color:#ff71554d;color:var(--primary)}.palette-editor{width:100%;margin-top:8px;padding:10px;border-radius:var(--radius-md);background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.palette-item-wrapper{position:relative;min-width:0}.palette-item-wrapper:hover .palette-duplicate-btn,.palette-item-wrapper:hover .palette-menu-anchor{opacity:1}.palette-duplicate-btn{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:4px;border:none;background:var(--glass-bg);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;opacity:0;transition:all .15s;z-index:2}.palette-duplicate-btn:hover{background:#ff715540;color:var(--primary)}.palette-menu-anchor{position:absolute;top:2px;right:2px;opacity:0;transition:opacity .15s;z-index:2}.palette-more-btn{width:18px;height:18px;border-radius:4px;border:none;background:var(--glass-bg);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .15s}.palette-more-btn:hover{background:#ffffff1f;color:var(--text)}.palette-item-wrapper.dragging{opacity:.25;pointer-events:none}.palette-drag-ghost{position:fixed;z-index:9999;pointer-events:none;opacity:.95;transform:rotate(2deg) scale(1.04);background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-radius:var(--radius-md);box-shadow:0 8px 32px #00000080,0 0 0 1px #ffffff14;transition:none;will-change:transform}.palette-drag-ghost .palette-item{border-color:var(--primary);background:#ff715514}body.palette-dragging{-webkit-user-select:none!important;user-select:none!important;cursor:grabbing!important}body.palette-dragging *{cursor:grabbing!important}.palette-editor-colors{display:flex;flex-direction:column;gap:6px}.palette-editor-color-row{display:flex;align-items:center;gap:6px}.palette-editor-swatch-box{width:30px;height:30px;min-width:30px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.12);cursor:pointer;position:relative;overflow:hidden;transition:border-color .15s,transform .1s}.palette-editor-swatch-box:hover{border-color:var(--primary);transform:scale(1.05)}.palette-editor-swatch-box input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;padding:0}.palette-hex-input{width:72px;min-width:0;padding:5px 6px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--text);font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:11px;letter-spacing:.02em;transition:all .15s;outline:none}.palette-hex-input:focus{border-color:var(--primary);background:#ffffff0f;box-shadow:0 0 0 2px #ff715526}.palette-hex-input::selection{background:#ff71554d}.palette-editor-drag-handle{display:flex;align-items:center;justify-content:center;width:18px;min-width:18px;height:28px;cursor:grab;color:var(--text-muted);opacity:.4;transition:opacity .15s,color .15s;touch-action:none}.palette-editor-color-row:hover .palette-editor-drag-handle{opacity:.8}.palette-editor-drag-handle:hover{color:var(--text);opacity:1}.palette-editor-drag-handle:active{cursor:grabbing}.palette-editor-color-row.dragging{opacity:.25;pointer-events:none}.color-row-drag-ghost{position:fixed;z-index:9999;pointer-events:none;opacity:1;display:flex;flex-direction:row;align-items:center;gap:6px;transform:scale(1.04) translateY(-1px);box-shadow:0 8px 32px #00000080,0 0 0 1px #ffffff14;transition:none;will-change:transform;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-radius:var(--radius-md);border:none;outline:none;padding:4px 8px}.color-row-drag-ghost,.color-row-drag-ghost *,.color-row-drag-ghost *:before,.color-row-drag-ghost *:after{outline:none!important;border-color:transparent!important;box-shadow:none}.color-row-drag-ghost .palette-editor-drag-handle{opacity:1;color:var(--primary)}.color-row-drag-ghost .palette-editor-swatch-box{border-color:transparent!important;box-shadow:0 0 10px #00000059,inset 0 0 0 1px #ffffff1f!important;border-radius:4px}.color-row-drag-ghost .palette-hex-input{border-color:transparent!important;background:#ffffff0d;box-shadow:none!important}.color-row-drag-ghost .palette-editor-delete-btn{opacity:.2;box-shadow:none!important}body.color-row-dragging{-webkit-user-select:none!important;user-select:none!important;cursor:grabbing!important}body.color-row-dragging *{cursor:grabbing!important}.palette-editor-delete-btn{width:22px;height:22px;border-radius:3px;border:1px solid rgba(255,255,255,.06);background:#ffffff08;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;margin-left:auto;transition:all .12s}.palette-editor-delete-btn:hover:not(:disabled){background:#dc262626;border-color:#dc26264d;color:#f87171}.palette-editor-delete-btn:disabled{opacity:.25;cursor:default}.palette-editor-add{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:6px 0;border-radius:var(--radius-sm);border:1px dashed rgba(255,255,255,.1);background:transparent;color:var(--text-muted);font-size:10px;font-family:var(--font);cursor:pointer;transition:all .15s;margin-top:2px}.palette-editor-add:hover{background:#ff715514;border-color:#ff71554d;color:var(--primary)}.palette-editor-actions{display:flex;align-items:center;gap:6px;margin-top:8px}.palette-action-btn{display:flex;align-items:center;gap:4px;padding:5px 10px;border-radius:var(--radius-sm);background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:var(--text-secondary);font-size:10px;cursor:pointer;transition:all .15s}.palette-action-btn:hover{background:#ffffff14;color:var(--text)}.palette-action-save{background:#ff71551f;border-color:#ff715540;color:var(--primary)}.palette-action-save:hover{background:#ff715533;border-color:var(--primary)}.palette-action-danger{color:var(--text-muted)}.palette-action-danger:hover{background:#dc262626;border-color:#dc26264d;color:#f87171}.export-tabs{display:flex;gap:0;margin-bottom:10px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid rgba(255,255,255,.06)}.export-tab-btn{flex:1;padding:8px 12px;background:#ffffff08;color:var(--text-muted);border:none;font-family:var(--font);font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:all .15s ease}.export-tab-btn:hover{color:var(--text-secondary);background:#ffffff0f}.export-tab-btn.active{background:#ff71551f;color:var(--primary)}.export-formats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.export-format-btn{padding:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);cursor:pointer;text-align:center;font-family:var(--font);color:var(--text);transition:all .2s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.export-format-btn:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--primary);opacity:0;transition:opacity .2s ease}.export-format-btn:hover{border-color:var(--primary);background:#ffffff0f}.export-format-btn:hover:before{opacity:1}.export-format-btn.active{border-color:var(--primary);background:var(--primary-dim);color:var(--primary)}.export-format-btn.active:before{opacity:1}.export-format-name{font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:4px}.export-format-ext{font-size:10px;color:var(--text-muted);margin-top:2px}.export-download-btn{width:100%;padding:10px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-family:var(--font);font-size:13px;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;box-shadow:0 0 16px var(--primary-glow),0 2px 8px #0003;position:relative;overflow:hidden}.export-download-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.15) 0%,transparent 50%);opacity:0;transition:opacity .3s ease}.export-download-btn:hover{background:#ff8570;box-shadow:0 0 28px var(--primary-glow),0 4px 16px #0000004d}.export-download-btn:hover:before{opacity:1}.export-download-btn:disabled{opacity:.4;cursor:not-allowed}.export-divider{width:100%;height:1px;background:var(--border);margin:12px 0}.scale-selector{display:flex;gap:4px;margin-top:4px}.scale-btn{flex:1;padding:6px 4px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-mono);font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease;text-align:center}.scale-btn:hover{border-color:var(--primary);color:var(--text);background:#ffffff0f}.scale-btn.active{background:var(--primary-dim);color:var(--primary);border-color:var(--primary)}.animation-controls{display:flex;gap:6px}.anim-play-btn{flex:1;padding:8px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:6px}.anim-play-btn:hover{border-color:var(--primary);color:var(--text)}.anim-play-btn.playing{background:var(--primary-dim);color:var(--primary);border-color:var(--primary)}.anim-play-btn:disabled{opacity:.4;cursor:not-allowed}.distortion-layers{display:flex;flex-direction:column;gap:6px}.distortion-layers-header{display:flex;align-items:center;justify-content:space-between}.distortion-add-btn{padding:3px 8px;background:#ffffff0a;border:1px dashed rgba(255,255,255,.15);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font);font-size:10px;font-weight:600;cursor:pointer;transition:all .15s ease}.distortion-add-btn:hover{background:#ff71551f;border-color:var(--primary);color:var(--primary)}.distortion-empty{font-size:10px;color:var(--text-muted);text-align:center;padding:6px 0}.distortion-layer-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);padding:8px;display:flex;flex-direction:column;gap:6px}.distortion-layer-header{display:flex;align-items:center;gap:4px}.distortion-mode-select{flex:1;padding:4px 6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);font-size:11px}.distortion-remove-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease;padding:0;flex-shrink:0}.distortion-remove-btn:hover{background:#ff505026;color:#ff5050}.effect-anim-settings{display:flex;flex-direction:column;gap:4px;background:#ff71550a;border:1px solid rgba(255,113,85,.1);border-radius:var(--radius-sm);padding:8px;margin-top:2px}.effect-anim-settings .distortion-layers-header{margin-bottom:2px}.effect-anim-settings .distortion-layers-header .control-label-text{color:var(--primary);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.5px}.effect-anim-settings .control-row{margin:0}.video-export-btn.recording{background:#dc262626!important;border-color:#dc262680!important;color:#f87171!important}.video-export-btn.recording:hover{background:#dc262640!important;border-color:#dc2626b3!important;color:#fff!important;box-shadow:0 0 12px #dc262633!important}.recording-progress{width:100%;height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden;margin-top:6px}.recording-progress-bar{height:100%;background:var(--primary);border-radius:2px;transition:width .1s linear}.recording-badge{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:8px;background:#dc2626bf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;border-radius:var(--radius-md);padding:6px 14px;font-size:12px;font-weight:700;font-family:var(--font-mono);z-index:50;animation:pulse 1.5s ease infinite}.recording-dot{width:8px;height:8px;background:#fff;border-radius:50%;animation:pulse 1s ease infinite}.processing-indicator{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:8px;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid var(--border);border-radius:var(--radius-md);padding:6px 14px;font-size:12px;color:var(--primary);animation:fadeIn .2s ease;z-index:50}.processing-dot{width:6px;height:6px;background:var(--primary);border-radius:50%;animation:pulse 1s ease infinite}.compare-slider{position:absolute;top:0;bottom:0;width:3px;margin-left:-1px;background:var(--primary);cursor:ew-resize;z-index:10;touch-action:none;padding:0 12px;background-clip:content-box}.compare-slider-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:28px;height:28px;background:var(--primary);border-radius:50%;border:2px solid #fff;display:flex;align-items:center;justify-content:center;color:#fff}.compare-slider-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--primary);transform:translate(-50%);box-shadow:0 0 10px var(--primary-glow)}.compare-label{position:absolute;top:8px;padding:3px 8px;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--text-secondary);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--radius-sm);z-index:11;pointer-events:none}.app.fullscreen .topbar,.app.fullscreen .sidebar,.app.fullscreen .settings-panel,.app.fullscreen .canvas-toolbar,.app.fullscreen .mobile-bottom-bar{display:none!important}.app.fullscreen .main-content{height:100vh;padding-bottom:0!important}.app.fullscreen .image-info{top:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;color:#fff6;pointer-events:none;z-index:10;padding:8px 16px}.fullscreen-overlay{position:fixed;top:16px;right:16px;display:flex;align-items:center;gap:2px;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);padding:4px;z-index:1000;animation:fadeIn .3s ease}.fullscreen-overlay button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;color:var(--text-secondary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.fullscreen-overlay button:hover{background:var(--bg-hover);color:var(--text)}.fullscreen-overlay button.active{color:var(--primary);background:var(--primary-dim)}.fullscreen-overlay .zoom-display{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);min-width:40px;text-align:center}.fullscreen-overlay-divider{width:1px;height:20px;background:#ffffff14;margin:0 2px}.export-dropdown-container{position:relative}.export-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:320px;background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);box-shadow:0 12px 48px #00000080,0 0 0 1px #ffffff08;z-index:200;animation:slideInUp .2s cubic-bezier(.16,1,.3,1);overflow:hidden}.export-dropdown-body{padding:12px;display:flex;flex-direction:column;gap:10px;max-height:400px;overflow-y:auto}.crop-overlay{position:absolute;inset:0;z-index:20;pointer-events:none}.crop-mask{position:absolute;background:#0009;pointer-events:none}.crop-selection{position:absolute;border:2px solid var(--primary);cursor:move;z-index:21;pointer-events:auto}.crop-grid{position:absolute;inset:0;pointer-events:none}.crop-grid:before,.crop-grid:after{content:"";position:absolute;background:#fff3}.crop-grid:before{inset:0 33.33%;border-left:1px solid rgba(255,255,255,.2);border-right:1px solid rgba(255,255,255,.2);background:transparent}.crop-grid:after{inset:33.33% 0;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);background:transparent}.crop-handle{position:absolute;width:14px;height:14px;background:var(--primary);border:2px solid #fff;border-radius:2px;z-index:22;pointer-events:auto}.crop-handle-tl{top:-7px;left:-7px;cursor:nw-resize}.crop-handle-tr{top:-7px;right:-7px;cursor:ne-resize}.crop-handle-bl{bottom:-7px;left:-7px;cursor:sw-resize}.crop-handle-br{bottom:-7px;right:-7px;cursor:se-resize}.crop-toolbar{position:fixed;top:86px;left:50%;transform:translate(-50%);z-index:25;display:flex;align-items:center;gap:0;padding:8px 12px;background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 24px #0006;pointer-events:auto}.crop-toolbar-orientation{display:flex;align-items:center;gap:2px}.crop-toolbar-ratios{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}.crop-toolbar-divider{width:1px;height:22px;background:var(--border);margin:0 10px;flex-shrink:0}.crop-toolbar-actions{display:flex;align-items:center;gap:4px}.crop-toolbar button{padding:5px 10px;background:#1a1a2699;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.crop-toolbar button:hover{border-color:var(--primary);color:var(--text)}.crop-toolbar button.active{background:var(--primary-dim);color:var(--primary);border-color:var(--primary)}.crop-orientation-btn{display:flex;align-items:center;justify-content:center;padding:4px 6px!important}.crop-orientation-btn:disabled{opacity:.3;cursor:not-allowed}.crop-apply-btn{background:var(--primary)!important;color:#fff!important;border-color:transparent!important}.crop-cancel-btn{color:var(--text-muted)!important}.crop-reset-btn:hover{color:var(--primary)!important}@media(max-width:640px){.crop-toolbar{flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 20px);padding:8px 10px}.crop-toolbar-divider{width:100%;height:1px;margin:6px 0}.crop-toolbar-ratios{flex-wrap:wrap;justify-content:center}.crop-toolbar-actions{justify-content:center}}.dialog-backdrop{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:500;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.dialog{background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:24px;width:360px;max-width:90vw;box-shadow:0 16px 48px #00000080,0 0 0 1px #ffffff0d,0 0 80px #ff71550d;animation:slideInUp .3s cubic-bezier(.16,1,.3,1)}.dialog-title{font-size:16px;font-weight:600;margin-bottom:16px;color:var(--text)}.dialog-text{font-size:13px;color:var(--text-secondary);margin-bottom:20px;line-height:1.5}.dialog-input{width:100%;padding:10px 14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);font-size:14px;outline:none;margin-bottom:20px;box-sizing:border-box;transition:border-color .15s ease}.dialog-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #ff71551a}.dialog-input::placeholder{color:var(--text-muted)}.dialog-actions{display:flex;gap:8px;justify-content:flex-end}.dialog-btn{padding:8px 18px;border-radius:var(--radius-sm);font-family:var(--font);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.dialog-btn:hover{background:#ffffff14;color:var(--text)}.dialog-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #58a6ff80}.dialog-btn-primary{background:var(--primary);color:#fff;border-color:transparent;box-shadow:0 0 12px var(--primary-glow)}.dialog-btn-primary:hover{background:#ff8570;box-shadow:0 0 24px var(--primary-glow)}.dialog-btn-primary:focus-visible{outline:none;box-shadow:0 0 0 3px #58a6ff80,0 0 12px var(--primary-glow)}.dialog-btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.dialog-btn-danger{background:#dc2626;color:#fff;border-color:transparent}.dialog-btn-danger:hover{background:#ef4444;box-shadow:0 0 16px #dc26264d}.dialog-btn-danger:focus-visible{outline:none;box-shadow:0 0 0 3px #58a6ff80}.dialog-overlay,.save-preset-dialog,.delete-confirm-dialog{display:none}.source-buttons{display:flex;flex-direction:column;gap:6px;padding:12px;border-bottom:1px solid var(--border);flex-shrink:0}.source-buttons-row{display:flex;gap:6px}.source-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.source-btn-primary{color:var(--text-secondary);font-weight:600;border:1px dashed rgba(255,113,85,.35);background:transparent}.source-btn-primary:hover{border-style:solid;border-color:var(--primary);color:var(--text);background:#ff715514}.source-btn-secondary{color:var(--text-secondary);background:transparent;border:1px solid var(--border)}.source-btn-secondary:hover{border-color:#ffffff73;color:var(--text);background:#ffffff0a}.source-format-hint{text-align:center;font-size:9px;color:var(--text-muted);opacity:.6;margin-top:-2px;margin-bottom:2px;letter-spacing:.3px}.source-btn input[type=file]{display:none}.toast-container{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);color:var(--text);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);padding:10px 20px;font-size:13px;font-weight:500;box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff08;animation:slideInUp .35s cubic-bezier(.16,1,.3,1);white-space:nowrap}.toast.success{border-color:#2dd4bf4d;color:#2dd4bf;box-shadow:0 8px 32px #0006,0 0 12px #2dd4bf1a}.mobile-bottom-bar{display:none;height:60px;background:#0a0a0cf2;backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-top:1px solid rgba(255,255,255,.08);flex-shrink:0;z-index:300;position:relative;padding-bottom:env(safe-area-inset-bottom)}.mobile-bar-inner{display:flex;align-items:center;justify-content:space-around;width:100%;height:100%;padding:0 4px;gap:0}.mobile-bar-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 4px;background:transparent;color:var(--text-muted);border:none;border-radius:0;font-family:var(--font);font-size:10px;font-weight:500;text-transform:none;letter-spacing:.3px;min-width:0;flex:1;cursor:pointer;transition:color .15s ease;-webkit-tap-highlight-color:transparent;position:relative}.mobile-bar-btn.active{color:var(--primary)}.mobile-bar-btn.active:after{content:"";position:absolute;top:0;left:20%;right:20%;height:2px;background:var(--primary);border-radius:0 0 2px 2px}.mobile-bar-btn:active{opacity:.7}.mobile-bar-btn.mobile-bar-action{color:var(--text-secondary)}.mobile-bar-btn.mobile-bar-action svg{width:22px;height:22px}.mobile-panel-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:calc(60px + env(safe-area-inset-bottom));background:transparent;z-index:200}.mobile-panel{position:fixed;bottom:calc(60px + env(safe-area-inset-bottom));left:0;right:0;max-height:55vh;background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-radius:16px 16px 0 0;z-index:201;display:flex;flex-direction:column;animation:slideInUp .3s cubic-bezier(.32,.72,0,1);box-shadow:0 -8px 40px #00000080;border-top:1px solid rgba(255,255,255,.08)}.mobile-panel-handle{width:36px;height:4px;background:#fff3;border-radius:2px;margin:8px auto;flex-shrink:0;cursor:grab}.mobile-panel-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px 8px;border-bottom:1px solid var(--border);flex-shrink:0}.mobile-panel-title{font-size:15px;font-weight:600}.mobile-panel-close{width:30px;height:30px;background:#ffffff0f;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.mobile-panel-close:hover{background:var(--bg-hover);color:var(--text)}.mobile-panel-body{flex:1;overflow-y:auto;padding:8px 16px 20px;-webkit-overflow-scrolling:touch}.mobile-panel-compact{max-height:auto}.mobile-source-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mobile-source-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--text);font-family:var(--font);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;-webkit-tap-highlight-color:transparent}.mobile-source-btn:active{background:var(--primary-dim);border-color:#ff71554d}.mobile-source-icon{width:44px;height:44px;border-radius:50%;background:#ff71551a;border:1px solid rgba(255,113,85,.2);display:flex;align-items:center;justify-content:center;color:var(--primary)}.mobile-source-hint{font-size:10px;color:var(--text-muted);font-weight:400}@media(max-width:900px){.sidebar,.settings-panel,.topbar-expand-btn,.topbar-center,.topbar-actions .desktop-only{display:none}.mobile-bottom-bar{display:flex;position:fixed;bottom:0;left:0;right:0}.main-content{padding-bottom:calc(60px + env(safe-area-inset-bottom))}:root{--topbar-height: 48px}.preset-more-btn{opacity:.6}.palette-duplicate-btn,.palette-menu-anchor,.palette-more-btn{opacity:.7}.palette-editor-drag-handle{width:24px;min-width:24px;height:36px;opacity:.7}.palette-editor-delete-btn{min-width:28px;min-height:28px}.palette-hex-input{width:68px;font-size:12px;padding:6px}.topbar{padding:0 8px}.topbar-brand .topbar-logo{height:18px}.topbar-btn{height:32px;padding:0 8px;font-size:11px}.topbar-btn.icon-only{width:32px}.canvas-toolbar{padding-left:6px!important;padding-right:6px!important;gap:1px;height:36px}.image-info{padding-left:10px!important;padding-right:10px!important;font-size:10px;gap:6px;padding-top:4px;padding-bottom:4px}.canvas-toolbar-btn{padding:0 5px;font-size:10px;height:26px;gap:2px}.zoom-slider{width:40px}.zoom-input{width:38px;height:22px;font-size:9px}.zoom-display{font-size:10px;min-width:28px}.toolbar-divider{height:16px;margin:0 2px}.source-buttons-row{flex-direction:column;gap:8px}.source-btn-secondary{width:100%}.video-edit-inline{inset:0!important;z-index:40;border-radius:0}.video-edit-canvas{max-width:100%;max-height:calc(100% - 52px);object-fit:contain}.video-timeline-bar{height:52px;padding:0 12px;gap:8px}.video-play-btn{width:36px;height:36px}.video-time-display{font-size:10px;min-width:36px}.video-edit-badge{top:8px;left:8px;padding:4px 10px;font-size:10px;gap:6px}.video-edit-top-controls{top:8px;right:8px}.video-edit-close-btn,.video-edit-capture-btn{width:38px;height:38px}.live-view-inline{inset:0!important;z-index:40;border-radius:0}.live-view-badge{top:8px;left:8px;padding:4px 10px;font-size:10px;gap:6px}.live-view-top-controls{top:calc(var(--topbar-height) + 4px);right:8px}.live-view-close-btn,.live-view-mirror-btn,.live-view-record-btn,.live-view-capture-btn{width:38px;height:38px}.live-view-zoom-controls{bottom:10px;gap:2px;padding:4px 6px;border-radius:var(--radius-md)}.live-zoom-slider{width:50px}.live-zoom-preset{padding:4px 5px;font-size:9px}.live-zoom-btn{width:24px;height:24px}.export-dropdown{position:fixed;top:auto;bottom:calc(60px + env(safe-area-inset-bottom));left:0;right:0;max-height:50vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.export-dropdown-body{padding:10px;gap:8px}.export-tabs{margin-bottom:6px}.export-tab-btn{padding:6px 10px;font-size:11px}.export-formats{margin-top:6px}.export-format-btn{padding:8px 6px}.export-format-name{font-size:12px}.export-format-ext{font-size:9px;margin-top:1px}.export-download-btn{padding:10px;font-size:12px;margin-top:4px}.export-divider{margin:6px 0}.scale-selector{margin-top:2px}.scale-btn{padding:5px 2px;font-size:10px}.effects-grid{grid-template-columns:repeat(4,1fr);gap:4px}.effect-item-grid{padding:6px 2px;min-height:44px;font-size:8px}.effect-category{margin-bottom:10px}.effect-category-title{font-size:9px;padding:2px 4px;margin-bottom:4px}.effect-item{padding:6px 8px;font-size:12px;gap:8px}.crop-toolbar{left:8px;right:8px;padding:6px 8px}.mobile-panel{z-index:602}.mobile-panel-overlay{z-index:601}.camera-container{z-index:700}.camera-controls{padding:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}}@media(hover:none){.preset-more-btn{opacity:.6}}.sidebar-view-toggle{display:flex;align-items:center;gap:2px;padding:6px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.view-toggle-btn{padding:4px 8px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.view-toggle-btn:hover{color:var(--text-secondary);background:var(--bg-hover)}.view-toggle-btn.active{color:var(--primary);background:var(--primary-dim);border-color:#ff715533}.effects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.effect-item-grid{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);border:1px solid transparent;background:#ffffff05;color:var(--text-secondary);font-family:var(--font);font-size:9px;text-align:center;min-height:52px}.effect-item-grid:hover{background:#ffffff0d;color:var(--text)}.effect-item-grid.active{background:var(--primary-dim);color:var(--primary);border-color:#ff715533;box-shadow:0 0 8px var(--primary-glow)}.effect-item-grid.secondary{border-color:#9382ff4d;background:#9382ff14;color:#9382ff}.effect-grid-name{line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.sidebar.collapsed,.settings-panel.collapsed{width:var(--rail-width)}.sidebar-body{display:flex;flex-direction:column;flex:1;overflow:hidden;opacity:1;transition:opacity .15s ease .1s;min-width:var(--sidebar-width)}.sidebar.collapsed .sidebar-body{opacity:0;pointer-events:none;transition:opacity .1s ease}.settings-body{display:flex;flex-direction:column;flex:1;overflow:hidden;opacity:1;transition:opacity .15s ease .1s;min-width:var(--panel-width)}.settings-panel.collapsed .settings-body{opacity:0;pointer-events:none;transition:opacity .1s ease}.sidebar-panel-header{padding:10px 8px 10px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.sidebar-panel-title{font-size:13px;font-weight:600;color:var(--text)}.panel-toggle-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;padding:0;transition:all .15s ease}.panel-toggle-btn:hover{color:var(--text);background:var(--bg-hover);border-color:var(--border)}.panel-toggle-btn:active{background:var(--bg-active)}.sidebar-rail,.settings-rail{position:absolute;top:0;width:var(--rail-width);height:100%;display:flex;flex-direction:column;align-items:center;padding-top:14px;gap:10px;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:2}.sidebar-rail{left:0}.settings-rail{right:0}.sidebar.collapsed .sidebar-rail,.settings-panel.collapsed .settings-rail{opacity:1;pointer-events:auto;transition:opacity .2s ease .15s}.sidebar-rail:hover,.settings-rail:hover{background:#ffffff0a}.sidebar-rail svg,.settings-rail svg{color:var(--text-muted);flex-shrink:0;transition:color .15s ease}.sidebar-rail:hover svg,.settings-rail:hover svg{color:var(--primary)}.sidebar-rail-label,.settings-rail-label{writing-mode:vertical-rl;text-orientation:mixed;font-size:11px;font-weight:500;color:var(--text-muted);letter-spacing:.5px;-webkit-user-select:none;user-select:none;transition:color .15s ease}.sidebar-rail:hover .sidebar-rail-label,.settings-rail:hover .settings-rail-label{color:var(--text-secondary)}.panel-header-actions{display:flex;align-items:center;gap:6px}select,.control-select,.distortion-mode-select{appearance:none;-webkit-appearance:none;padding:6px 28px 6px 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);font-size:12px;cursor:pointer;outline:none;transition:border-color .15s ease,box-shadow .15s ease;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:12px}select:hover,.control-select:hover,.distortion-mode-select:hover{border-color:var(--text-muted)}select:focus,.control-select:focus,.distortion-mode-select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #ff71551f}select option{background:#1a1a26;color:var(--text);padding:6px}.effect-item-text{display:flex;align-items:center;padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;border:none;background:transparent;width:100%;text-align:left;color:var(--text-secondary);font-family:var(--font);font-size:12px}.effect-item-text:hover{background:var(--bg-hover);color:var(--text)}.effect-item-text.active{color:var(--primary);background:var(--primary-dim)}.effect-item-text.secondary{color:var(--text);background:#64b4ff14}.presets-list{display:flex;flex-direction:column;gap:2px}.preset-list-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;border:1px solid transparent;background:transparent;width:100%;text-align:left;color:var(--text-secondary);font-family:var(--font);font-size:12px}.preset-list-item:hover{background:var(--bg-hover);color:var(--text)}.preset-list-item.active{background:var(--primary-dim);color:var(--primary);border-color:#ff715526}.preset-list-item .preset-list-glyph{width:22px;height:22px;border-radius:4px;background:var(--preset-color, var(--primary));color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}.preset-list-item .preset-list-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preset-list-item .preset-list-effect{font-size:10px;color:var(--text-muted);margin-left:auto;flex-shrink:0}.preset-text-item-wrapper{display:flex;align-items:center;gap:4px}.preset-text-item{display:flex;align-items:center;padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;border:none;background:transparent;flex:1;text-align:left;color:var(--text-secondary);font-family:var(--font);font-size:12px}.preset-text-item:hover{background:var(--bg-hover);color:var(--text)}.preset-text-item.active{color:var(--primary);background:var(--primary-dim)}.presets-section-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);padding:4px 8px;margin-bottom:4px;margin-top:8px;display:flex;align-items:center;justify-content:space-between}.presets-grid .presets-section-label{grid-column:1 / -1}.camera-container{position:fixed;inset:0;z-index:600;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center}.camera-video{max-width:100%;max-height:calc(100% - 80px);object-fit:contain}.camera-controls{display:flex;align-items:center;gap:16px;padding:16px;position:absolute;bottom:0;left:0;right:0;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.camera-capture-btn{width:64px;height:64px;border-radius:50%;border:4px solid #fff;background:transparent;cursor:pointer;position:relative;transition:all .15s ease}.camera-capture-btn:after{content:"";position:absolute;inset:4px;border-radius:50%;background:#fff;transition:all .15s ease}.camera-capture-btn:hover:after{background:var(--primary)}.camera-capture-btn:active{transform:scale(.92)}.camera-close-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:none;background:#ffffff26;color:#fff;cursor:pointer;transition:all .15s ease}.camera-close-btn:hover{background:#ffffff40}.camera-switch-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:none;background:#ffffff26;color:#fff;cursor:pointer;transition:all .15s ease}.camera-switch-btn:hover{background:#ffffff40}.canvas-container.live-view-mode{cursor:default}.live-view-inline{position:absolute;top:0;bottom:0;left:var(--sidebar-width);right:var(--panel-width);display:flex;align-items:center;justify-content:center;background:var(--bg);overflow:hidden;z-index:30;transition:left .25s cubic-bezier(.4,0,.2,1),right .25s cubic-bezier(.4,0,.2,1)}.left-collapsed .live-view-inline{left:var(--rail-width)}.right-collapsed .live-view-inline{right:var(--rail-width)}.live-view-inline.zoomed{overflow:auto}.live-view-canvas{display:block}.live-view-badge{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-radius:var(--radius-md);color:#fff;font-size:12px;font-weight:600;letter-spacing:1px;z-index:31}.live-dot{width:10px;height:10px;border-radius:50%;background:var(--primary);animation:livePulse 1.5s ease-in-out infinite}.live-dot.recording{background:#ff2020;animation:livePulse .8s ease-in-out infinite}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.3}}.live-view-top-controls{position:absolute;top:calc(var(--topbar-height) + 8px);right:12px;display:flex;gap:6px;z-index:31}.live-view-close-btn,.live-view-mirror-btn,.live-view-record-btn,.live-view-capture-btn{width:36px;height:36px;border-radius:var(--radius-md);background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.live-view-capture-btn:hover{background:#ff715533;color:var(--primary);border-color:var(--primary)}.live-view-close-btn:hover{background:#dc262699;color:#fff;border-color:transparent}.live-view-mirror-btn:hover{background:#ffffff26;color:var(--text);border-color:#ffffff40}.live-view-mirror-btn.active{background:#ff715533;color:var(--primary);border-color:var(--primary)}.live-view-record-btn:hover{background:#dc26264d;color:#fff;border-color:#dc262680}.live-view-record-btn.recording{background:#dc2626b3;color:#fff;border-color:#dc2626cc;animation:recPulse 1.2s ease infinite}@keyframes recPulse{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 6px #dc262600}}.live-view-zoom-controls{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:4px 6px;background:#0a0a0cd9;backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);z-index:31}.live-zoom-preset{padding:5px 10px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font);font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.live-zoom-preset:hover{background:var(--bg-hover);color:var(--text)}.live-zoom-preset.active{background:var(--primary-dim);color:var(--primary)}.live-zoom-btn{width:28px;height:28px;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.live-zoom-btn:hover{background:var(--bg-hover);color:var(--text)}.live-zoom-slider{width:100px;height:18px;-webkit-appearance:none;appearance:none;background:transparent;outline:none;cursor:pointer;margin:0;padding:0}.live-zoom-slider::-webkit-slider-runnable-track{height:3px;background:#ffffff1f;border-radius:2px}.live-zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;background:var(--primary);border-radius:50%;cursor:pointer;margin-top:-4.5px;box-shadow:0 0 6px var(--primary-glow)}.live-zoom-value{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--text);min-width:36px;text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none}.live-zoom-divider{width:1px;height:20px;background:#ffffff1a;margin:0 4px;flex-shrink:0}.video-playback-inline{position:absolute;top:0;bottom:0;left:var(--sidebar-width);right:var(--panel-width);display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);overflow:hidden;z-index:30;transition:left .25s cubic-bezier(.4,0,.2,1),right .25s cubic-bezier(.4,0,.2,1)}.left-collapsed .video-playback-inline{left:var(--rail-width)}.right-collapsed .video-playback-inline{right:var(--rail-width)}.video-playback-player{max-width:90%;max-height:calc(100% - 60px);border-radius:var(--radius-md);background:#000}.video-playback-controls{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:6px;padding:6px;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);z-index:31}.video-capture-btn,.video-close-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font);font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease}.video-capture-btn:hover{background:#ff715526;color:var(--primary);border-color:var(--primary)}.video-close-btn:hover{background:#dc262626;color:#f87171;border-color:#dc262666}.video-playback-badge{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:6px;padding:6px 14px;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-radius:var(--radius-md);color:#fff;font-size:12px;font-weight:600;letter-spacing:1px;z-index:31}.video-edit-inline{position:absolute;top:0;bottom:0;left:var(--sidebar-width);right:var(--panel-width);display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);overflow:hidden;z-index:30;transition:left .25s cubic-bezier(.4,0,.2,1),right .25s cubic-bezier(.4,0,.2,1)}.left-collapsed .video-edit-inline{left:var(--rail-width)}.right-collapsed .video-edit-inline{right:var(--rail-width)}.video-edit-canvas{display:block;max-width:100%;max-height:calc(100% - 56px);object-fit:contain}.video-edit-badge{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-radius:var(--radius-md);color:#fff;font-size:12px;font-weight:600;letter-spacing:1px;z-index:31}.video-edit-top-controls{position:absolute;top:12px;right:12px;display:flex;gap:6px;z-index:31}.video-edit-close-btn,.video-edit-capture-btn{width:36px;height:36px;border-radius:var(--radius-md);background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.video-edit-close-btn:hover{background:#dc26264d;color:#f87171;border-color:#dc262666}.video-edit-capture-btn:hover{background:#ff715533;color:var(--primary);border-color:var(--primary)}.video-timeline-bar{position:absolute;bottom:0;left:0;right:0;height:56px;display:flex;align-items:center;gap:10px;padding:0 16px;background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-top:1px solid rgba(255,255,255,.06);z-index:31}.video-play-btn{width:36px;height:36px;border-radius:50%;background:var(--primary);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}.video-play-btn:hover{filter:brightness(1.15);transform:scale(1.05)}.video-time-display{font-family:var(--font);font-size:11px;font-weight:600;color:var(--text-secondary);min-width:40px;text-align:center;flex-shrink:0;font-variant-numeric:tabular-nums}.video-timeline-scrubber{flex:1;height:4px;-webkit-appearance:none;appearance:none;background:#ffffff1a;border-radius:2px;outline:none;cursor:pointer}.video-timeline-scrubber::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary);cursor:pointer;box-shadow:0 0 4px #00000080}.video-timeline-scrubber::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--primary);cursor:pointer;border:none;box-shadow:0 0 4px #00000080}.video-export-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#0a0a0cd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:32}.video-export-progress-text{color:#fff;font-size:14px;font-weight:600;letter-spacing:.5px}.video-export-overlay .recording-progress{width:60%;max-width:400px}.video-export-cancel-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#dc262633;border:1px solid rgba(220,38,38,.4);border-radius:var(--radius-sm);color:#f87171;font-family:var(--font);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.video-export-cancel-btn:hover{background:#dc262659}@media(max-width:600px){.topbar-brand .topbar-logo{height:16px}.topbar{padding:0 6px}.topbar-btn{height:30px;padding:0 6px;gap:4px}.topbar-btn.icon-only{width:30px}.topbar-actions{gap:2px}.mobile-bar-btn{font-size:8px;gap:2px;padding:4px 0}.mobile-bar-btn svg{width:18px;height:18px}.mobile-bar-btn.mobile-bar-action svg{width:20px;height:20px}.live-view-zoom-controls .live-zoom-preset,.live-view-zoom-controls .live-zoom-divider{display:none}.live-zoom-slider{width:80px}.drop-zone-box{width:280px;padding:36px 28px}.drop-zone-icon{width:56px;height:56px}.drop-zone-text{font-size:14px}.drop-zone-hint{font-size:10px}.effects-grid{grid-template-columns:repeat(3,1fr)}.mobile-source-grid{gap:8px}.mobile-source-btn{padding:12px 6px;font-size:11px}.mobile-source-icon{width:38px;height:38px}}@media(max-width:900px)and (max-height:500px)and (orientation:landscape){.topbar{height:36px;min-height:36px;padding:0 6px}:root{--topbar-height: 36px}.topbar-brand .topbar-logo{height:15px}.topbar-btn{height:28px;padding:0 5px}.topbar-btn.icon-only{width:28px}.image-info{display:none!important}.canvas-toolbar{height:28px!important;padding:2px 4px!important;background:#0a0a0cb3!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:10}.canvas-toolbar-btn{height:22px;padding:0 4px;font-size:9px}.zoom-input{height:20px;font-size:8px;width:34px}.toolbar-divider{height:14px}.mobile-bottom-bar{height:44px}.main-content{padding-bottom:calc(44px + env(safe-area-inset-bottom))!important}.mobile-bar-btn{font-size:8px;gap:1px;padding:3px 2px}.mobile-bar-btn svg{width:16px;height:16px}.mobile-bar-btn.mobile-bar-action svg{width:18px;height:18px}.mobile-bar-btn.active:after{left:25%;right:25%}.mobile-panel{max-height:65vh;bottom:calc(44px + env(safe-area-inset-bottom))!important}.mobile-panel-overlay{bottom:calc(44px + env(safe-area-inset-bottom))!important}.mobile-panel-body{max-height:calc(65vh - 60px)}.export-dropdown{bottom:calc(44px + env(safe-area-inset-bottom))}.effects-grid{grid-template-columns:repeat(5,1fr)!important}.effect-item-grid{min-height:38px;font-size:7px;padding:4px 1px}.effect-category-title{font-size:8px}.video-timeline-bar{height:40px;padding:0 8px;gap:6px}.video-play-btn{width:30px;height:30px}.video-time-display{font-size:9px}.video-edit-canvas{max-height:calc(100% - 40px)}}.user-menu-container{position:relative}.user-menu-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:1.5px solid var(--border);background:var(--dark-glass-bg);color:var(--text-secondary);cursor:pointer;overflow:hidden;transition:border-color .15s}.user-menu-btn:hover{border-color:var(--primary)}.user-menu-avatar{width:100%;height:100%;object-fit:cover;border-radius:50%}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid var(--border);border-radius:12px;padding:8px 0;z-index:900;box-shadow:0 8px 32px #0006}.user-menu-info{padding:10px 16px;display:flex;flex-direction:column;gap:2px}.user-menu-name{font-size:13px;font-weight:600;color:var(--text-primary)}.user-menu-email{font-size:11px;color:var(--text-secondary)}.user-menu-divider{height:1px;background:var(--border);margin:4px 0}.user-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 16px;border:none;background:none;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:background .15s,color .15s}.user-menu-item:hover{background:#ffffff0f;color:var(--text-primary)}.user-menu-item.danger:hover{color:#ef4444}.scale-btn.locked,.export-format-btn.locked{opacity:.4;cursor:not-allowed;position:relative}.scale-btn.locked svg,.export-format-btn.locked svg{opacity:.7}.export-watermark-notice{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary);padding:6px 10px;background:#ff715514;border-radius:6px;margin-bottom:8px}.export-upgrade-link{background:none;border:none;color:var(--primary);font-size:11px;cursor:pointer;text-decoration:underline;padding:0}.login-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.login-modal{background:var(--dark-glass-bg);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid var(--border);border-radius:20px;padding:40px;width:100%;max-width:400px;position:relative;box-shadow:0 24px 80px #00000080}.login-close{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:6px;transition:color .15s}.login-close:hover{color:var(--text-primary)}.login-header{text-align:center;margin-bottom:28px}.login-logo{margin-bottom:12px}.login-logo-img{height:36px;width:auto}.login-subtitle{font-size:13px;color:var(--text-secondary);line-height:1.5}.login-providers{display:flex;flex-direction:column;gap:10px}.login-provider-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:10px;background:#ffffff0a;color:var(--text-primary);font-size:14px;cursor:pointer;transition:background .15s,border-color .15s}.login-provider-btn:hover{background:#ffffff14;border-color:#ffffff26}.login-provider-btn:disabled{opacity:.5;cursor:wait}.login-provider-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.login-error{margin-top:12px;padding:10px 14px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:#ef4444;font-size:12px;text-align:center}.login-footer{margin-top:24px;text-align:center}.login-terms{font-size:11px;color:var(--text-secondary);line-height:1.5}.login-skip{margin-top:12px;background:none;border:none;color:var(--text-secondary);font-size:12px;cursor:pointer;text-decoration:underline;opacity:.7;transition:opacity .15s}.login-skip:hover{opacity:1}.login-form{display:flex;flex-direction:column;gap:12px}.login-input{width:100%;padding:12px 16px;background:#ffffff0f;border:1px solid var(--border);border-radius:10px;color:var(--text-primary);font-size:14px;outline:none;transition:border-color .15s,background .15s;box-sizing:border-box}.login-input:focus{border-color:var(--primary);background:#ffffff14}.login-input::placeholder{color:var(--text-secondary);opacity:.6}.login-input:disabled{opacity:.5;cursor:wait}.login-password-wrapper{position:relative}.login-password-wrapper .login-input{padding-right:44px}.login-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .15s}.login-password-toggle:hover{color:var(--text-primary)}.login-input-hint{font-size:11px;color:var(--text-secondary);opacity:.6;margin-top:-4px}.login-submit-btn{width:100%;padding:12px 16px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s}.login-submit-btn:hover{opacity:.9}.login-submit-btn:active{transform:scale(.98)}.login-submit-btn:disabled{opacity:.5;cursor:wait}.login-form-links{display:flex;justify-content:center}.login-form-desc{font-size:13px;color:var(--text-secondary);line-height:1.5;text-align:center;margin:0}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--text-secondary);font-size:12px}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.login-mode-link{background:none;border:none;color:var(--primary);font-size:13px;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:4px;transition:opacity .15s}.login-mode-link:hover{opacity:.8}.login-switch{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.login-success{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:20px 0}.login-success svg{color:#22c55e}.login-success h3{font-size:18px;font-weight:600;margin:0;color:var(--text-primary)}.login-success p{font-size:13px;color:var(--text-secondary);line-height:1.6;margin:0}.login-success strong{color:var(--text-primary)}.password-reset-modal{max-width:380px}.settings-view{min-height:100vh;background:var(--bg);color:var(--text-primary);padding:0 20px 40px}.settings-header{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--border);margin-bottom:24px}.settings-back{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:6px 10px;border-radius:8px;transition:color .15s,background .15s}.settings-back:hover{color:var(--text-primary);background:#ffffff0f}.settings-title{font-size:20px;font-weight:700;margin:0}.settings-layout{display:flex;gap:32px;max-width:900px;margin:0 auto}.settings-nav{display:flex;flex-direction:column;gap:2px;min-width:200px;flex-shrink:0}.settings-nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border:none;background:none;color:var(--text-secondary);font-size:13px;cursor:pointer;border-radius:8px;transition:color .15s,background .15s}.settings-nav-item:hover{color:var(--text-primary);background:#ffffff0f}.settings-nav-item.active{color:var(--text-primary);background:#ffffff14;font-weight:600}.settings-nav-item.danger:hover{color:#ef4444}.settings-nav-divider{height:1px;background:var(--border);margin:8px 0}.settings-content{flex:1;min-width:0}.settings-section h2{font-size:18px;font-weight:700;margin:0 0 20px}.settings-section h3{font-size:14px;font-weight:600;margin:16px 0 8px;color:var(--text-secondary)}.settings-section-desc{font-size:13px;color:var(--text-secondary);margin-bottom:16px}.settings-profile-card{display:flex;align-items:center;gap:16px;padding:16px;background:#ffffff0a;border:1px solid var(--border);border-radius:12px;margin-bottom:20px}.settings-avatar{width:56px;height:56px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#ffffff14;color:var(--text-secondary);flex-shrink:0}.settings-avatar img{width:100%;height:100%;object-fit:cover}.settings-profile-info{display:flex;flex-direction:column;gap:4px}.settings-profile-name{font-size:16px;font-weight:600}.settings-profile-email{font-size:12px;color:var(--text-secondary)}.settings-tier-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:10px;font-size:11px;font-weight:700;color:#fff;width:fit-content;text-transform:uppercase;letter-spacing:.5px}.settings-tier-badge.large{padding:4px 14px;font-size:13px}.settings-field{margin-bottom:16px}.settings-field label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.settings-field input,.settings-field select{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:#ffffff0a;color:var(--text-primary);font-size:14px;outline:none;transition:border-color .15s}.settings-field input:focus{border-color:var(--primary)}.settings-field input:disabled{opacity:.5;cursor:not-allowed}.settings-field-row{display:flex;gap:8px}.settings-field-row input{flex:1}.settings-field-hint{display:block;font-size:11px;color:var(--text-secondary);margin-top:4px}.settings-save-btn{display:flex;align-items:center;gap:4px;padding:10px 16px;border:none;border-radius:8px;background:var(--primary);color:#fff;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .15s}.settings-save-btn:disabled{opacity:.5;cursor:not-allowed}.settings-subscription-card{padding:20px;background:#ffffff0a;border:1px solid var(--border);border-radius:12px}.settings-subscription-tier{display:flex;align-items:center;gap:12px;margin-bottom:16px}.settings-subscription-status{font-size:12px;color:#34d399;font-weight:600}.settings-upgrade-section,.settings-manage-section{margin-top:12px}.settings-upgrade-section p,.settings-manage-section p{font-size:13px;color:var(--text-secondary);margin-bottom:12px}.settings-upgrade-btn,.settings-manage-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;text-decoration:none;transition:opacity .15s}.settings-upgrade-btn{background:var(--primary);color:#fff}.settings-manage-btn{background:#ffffff14;color:var(--text-primary);border:1px solid var(--border)}.settings-upgrade-btn:hover,.settings-manage-btn:hover{opacity:.85}.settings-linked-list{display:flex;flex-direction:column;gap:8px}.settings-linked-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#ffffff0a;border:1px solid var(--border);border-radius:8px}.settings-linked-provider{font-size:13px;font-weight:600;min-width:80px}.settings-linked-email{font-size:12px;color:var(--text-secondary);flex:1}.settings-linked-status{font-size:11px;font-weight:600;text-transform:uppercase}.settings-linked-status.connected{color:#34d399}.settings-empty{font-size:13px;color:var(--text-secondary);font-style:italic}.settings-security-actions{display:flex;flex-direction:column;gap:12px}.settings-action-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--border);border-radius:8px;background:#ffffff0a;color:var(--text-primary);font-size:13px;cursor:pointer;transition:background .15s;width:fit-content}.settings-action-btn:hover{background:#ffffff14}.settings-action-btn.danger{border-color:#ef44444d;color:#ef4444}.settings-action-btn.danger:hover{background:#ef44441a}.settings-danger-zone{margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}.settings-delete-confirm p{font-size:13px;color:#ef4444;margin-bottom:12px}.settings-delete-actions{display:flex;gap:8px}.settings-data-actions{display:flex;flex-direction:column;gap:8px}.settings-password-section{margin-bottom:12px}.settings-password-section h3{font-size:14px;font-weight:600;margin:0 0 10px;color:var(--text-primary)}.settings-password-form{display:flex;flex-direction:column;gap:10px;max-width:320px}.settings-input{width:100%;padding:10px 14px;background:#ffffff0f;border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:13px;outline:none;transition:border-color .15s;box-sizing:border-box}.settings-input:focus{border-color:var(--primary)}.settings-input::placeholder{color:var(--text-secondary);opacity:.6}.settings-password-actions{display:flex;gap:8px;margin-top:4px}.settings-error-msg{font-size:12px;color:#ef4444;margin:0}.settings-success-msg{display:flex;align-items:center;gap:6px;font-size:12px;color:#22c55e;margin:0 0 8px}@media(max-width:700px){.settings-layout{flex-direction:column;gap:16px}.settings-nav{flex-direction:row;overflow-x:auto;min-width:0;gap:4px;padding-bottom:8px}.settings-nav-item{white-space:nowrap;padding:8px 12px;font-size:12px}.settings-nav-divider,.settings-nav-item.danger{display:none}}.landing{min-height:100vh;background:var(--bg);color:var(--text-primary);overflow-x:hidden}.landing-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;max-width:1200px;margin:0 auto}.landing-nav-brand{display:flex;align-items:center}.landing-nav-logo{height:32px;width:auto}.landing-nav-actions{display:flex;align-items:center;gap:10px}.landing-btn-primary{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s}.landing-btn-primary:hover{opacity:.9}.landing-btn-primary:active{transform:scale(.98)}.landing-btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;background:#ffffff14;color:var(--text-primary);border:1px solid var(--border);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.landing-btn-secondary:hover{background:#ffffff1f}.landing-btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;background:none;color:var(--text-secondary);border:1px solid transparent;border-radius:10px;font-size:14px;cursor:pointer;transition:color .15s}.landing-btn-ghost:hover{color:var(--text-primary)}.landing-btn-lg{padding:14px 32px;font-size:16px}.landing-hero{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:60px 32px;max-width:1200px;margin:0 auto;position:relative}.landing-hero-content{max-width:640px;text-align:center}.landing-hero-title{font-size:48px;font-weight:800;line-height:1.15;margin:0 0 20px;letter-spacing:-1px}.landing-hero-accent{background:linear-gradient(135deg,var(--primary),#a78bfa,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero-subtitle{font-size:17px;color:var(--text-secondary);line-height:1.6;margin:0 0 32px}.landing-hero-actions{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.landing-hero-visual{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}.landing-hero-glow{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(255,113,85,.12) 0%,transparent 70%);filter:blur(60px)}.landing-section-title{font-size:32px;font-weight:800;text-align:center;margin:0 0 8px}.landing-section-subtitle{font-size:15px;color:var(--text-secondary);text-align:center;margin:0 0 40px}.landing-features{padding:80px 32px;max-width:1200px;margin:0 auto}.landing-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.landing-feature-card{padding:24px;background:#ffffff0a;border:1px solid var(--border);border-radius:14px;transition:border-color .2s,transform .15s}.landing-feature-card:hover{border-color:#ffffff1f;transform:translateY(-2px)}.landing-feature-icon{width:44px;height:44px;border-radius:10px;background:#ff71551f;color:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:14px}.landing-feature-card h3{font-size:15px;font-weight:700;margin:0 0 6px;display:flex;align-items:center;gap:6px}.landing-feature-card p{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0}.landing-pro-badge{display:inline-flex;padding:2px 6px;border-radius:4px;font-size:9px;font-weight:800;background:var(--primary);color:#fff;letter-spacing:.5px}.landing-gallery{padding:80px 32px;max-width:1200px;margin:0 auto}.landing-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.landing-gallery-item{aspect-ratio:4/3;border-radius:12px;overflow:hidden;border:1px solid var(--border);position:relative;background:#ffffff05;transition:border-color .2s}.landing-gallery-item:hover{border-color:var(--accent, rgba(255,255,255,.15))}.landing-gallery-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--accent, var(--text-secondary));opacity:.3}.landing-gallery-label{position:absolute;bottom:10px;left:12px;font-size:11px;font-weight:700;color:var(--accent, var(--text-secondary));text-transform:uppercase;letter-spacing:.5px}.landing-pricing{padding:80px 32px;max-width:1200px;margin:0 auto;text-align:center}.landing-pricing-cards{display:flex;gap:20px;justify-content:center;margin-top:32px;flex-wrap:wrap}.landing-pricing-card{width:260px;padding:28px 24px;background:#ffffff0a;border:1px solid var(--border);border-radius:16px;text-align:left;display:flex;flex-direction:column}.landing-pricing-card.featured{border-color:var(--primary);background:#ff71550f;position:relative}.landing-pricing-coming-soon{position:absolute;top:12px;right:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--primary);background:#ff71551f;padding:3px 8px;border-radius:4px}.landing-pricing-tier{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.landing-pricing-price{font-size:36px;font-weight:800;margin-bottom:16px}.landing-pricing-price span{font-size:14px;font-weight:400;color:var(--text-secondary)}.landing-pricing-features{list-style:none;padding:0;margin:0 0 24px;flex:1}.landing-pricing-features li{font-size:13px;color:var(--text-secondary);position:relative;padding:5px 0 5px 18px}.landing-pricing-features li:before{content:"✓";position:absolute;left:0;color:#34d399;font-weight:700;font-size:12px}.landing-pricing-card button{width:100%}.landing-footer{padding:40px 32px;text-align:center;border-top:1px solid var(--border);max-width:1200px;margin:0 auto}.landing-footer-logo{height:24px;width:auto;opacity:.5;margin-bottom:8px}.landing-footer-copy{font-size:12px;color:var(--text-secondary);margin:0}@media(max-width:768px){.landing-nav{padding:12px 16px}.landing-hero{padding:40px 16px;min-height:50vh}.landing-hero-title{font-size:32px}.landing-hero-subtitle{font-size:15px}.landing-features{padding:48px 16px}.landing-features-grid{grid-template-columns:1fr}.landing-gallery{padding:48px 16px}.landing-gallery-grid{grid-template-columns:repeat(2,1fr)}.landing-pricing{padding:48px 16px}.landing-pricing-cards{flex-direction:column;align-items:center}}
