:root{--canvas-primary: #e27b4c;--canvas-primary-hover: #d06a3c;--canvas-primary-rgb: 226 123 76;--canvas-accent: #1b1f2a;--ui-bg: #f5f5f5;--ui-surface: #ffffff;--ui-surface-muted: #f9fafb;--ui-surface-hover: #f3f4f6;--ui-border: #e0e0e0;--ui-border-strong: #d0d0d0;--ui-text: #1e1a16;--ui-text-muted: #6b7280;--ui-text-subtle: #9ca3af;--ui-shadow: 0 6px 20px rgba(0, 0, 0, .08);--ui-shadow-strong: 0 8px 24px rgba(0, 0, 0, .15);--ui-overlay: rgba(15, 23, 42, .55);--ui-overlay-strong: rgba(0, 0, 0, .6);--ui-error-bg: #fef2f2;--ui-error-border: #fecaca;--ui-error-text: #dc2626;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:var(--ui-text);background-color:var(--ui-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=dark]{--ui-bg: #0f172a;--ui-surface: #1f2937;--ui-surface-muted: #111827;--ui-surface-hover: #283548;--ui-border: #374151;--ui-border-strong: #4b5563;--ui-text: #f9fafb;--ui-text-muted: #cbd5f5;--ui-text-subtle: #9ca3af;--ui-shadow: 0 6px 20px rgba(0, 0, 0, .35);--ui-shadow-strong: 0 8px 24px rgba(0, 0, 0, .45);--ui-overlay: rgba(2, 6, 23, .7);--ui-overlay-strong: rgba(2, 6, 23, .8);--ui-error-bg: rgba(220, 38, 38, .12);--ui-error-border: rgba(220, 38, 38, .4);--ui-error-text: #fca5a5;color-scheme:dark}html,body,#root{height:100%;width:100%}a{font-weight:500;color:var(--canvas-primary);text-decoration:inherit}a:hover{color:var(--canvas-primary-hover)}body{margin:0;min-width:320px;color:var(--ui-text);background-color:var(--ui-bg)}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--ui-surface);cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--canvas-primary)}@media(prefers-color-scheme:light){:root:not([data-theme]){color:var(--ui-text);background-color:var(--ui-bg)}a:hover{color:var(--canvas-primary-hover)}button{background-color:var(--ui-surface-muted)}}@media(prefers-color-scheme:dark){:root:not([data-theme]){--ui-bg: #0f172a;--ui-surface: #1f2937;--ui-surface-muted: #111827;--ui-surface-hover: #283548;--ui-border: #374151;--ui-border-strong: #4b5563;--ui-text: #f9fafb;--ui-text-muted: #cbd5f5;--ui-text-subtle: #9ca3af;--ui-shadow: 0 6px 20px rgba(0, 0, 0, .35);--ui-shadow-strong: 0 8px 24px rgba(0, 0, 0, .45);--ui-overlay: rgba(2, 6, 23, .7);--ui-overlay-strong: rgba(2, 6, 23, .8);--ui-error-bg: rgba(220, 38, 38, .12);--ui-error-border: rgba(220, 38, 38, .4);--ui-error-text: #fca5a5;color-scheme:dark}}.canvas-wrapper{width:100%;height:100%;position:relative}.canvas-wrapper .sidebar-trigger.default-sidebar-trigger,.canvas-wrapper button[data-testid=search-menu-button],.canvas-wrapper .App-toolbar__extra-tools-dropdown [data-testid=toolbar-embeddable],.App-toolbar__extra-tools-dropdown [data-testid=toolbar-embeddable]{display:none!important}.canvas-wrapper .App-toolbar__extra-tools-dropdown div[style][style*=font-size][style*=font-weight]:not([class]),.App-toolbar__extra-tools-dropdown div[style][style*=font-size][style*=font-weight]:not([class]){display:none!important}.canvas-wrapper .dropdown-menu button[title*=GitHub],.canvas-wrapper .dropdown-menu button[aria-label*=GitHub],.canvas-wrapper .dropdown-menu a[title*=GitHub],.canvas-wrapper .dropdown-menu a[aria-label*=GitHub],.canvas-wrapper .dropdown-menu button[title*=Github],.canvas-wrapper .dropdown-menu button[aria-label*=Github],.canvas-wrapper .dropdown-menu a[title*=Github],.canvas-wrapper .dropdown-menu a[aria-label*=Github],.canvas-wrapper .dropdown-menu button[title*=Follow],.canvas-wrapper .dropdown-menu button[aria-label*=Follow],.canvas-wrapper .dropdown-menu a[title*=Follow],.canvas-wrapper .dropdown-menu a[aria-label*=Follow],.canvas-wrapper .dropdown-menu button[title*="Follow us"],.canvas-wrapper .dropdown-menu button[aria-label*="Follow us"],.canvas-wrapper .dropdown-menu a[title*="Follow us"],.canvas-wrapper .dropdown-menu a[aria-label*="Follow us"],.canvas-wrapper .dropdown-menu button[title*="Excalidraw links"],.canvas-wrapper .dropdown-menu button[aria-label*="Excalidraw links"],.canvas-wrapper .dropdown-menu a[title*="Excalidraw links"],.canvas-wrapper .dropdown-menu a[aria-label*="Excalidraw links"],.canvas-wrapper .dropdown-menu button[title*=Discord],.canvas-wrapper .dropdown-menu button[aria-label*=Discord],.canvas-wrapper .dropdown-menu a[title*=Discord],.canvas-wrapper .dropdown-menu a[aria-label*=Discord],.canvas-wrapper button[title*=GitHub],.canvas-wrapper button[aria-label*=GitHub],.canvas-wrapper a[title*=GitHub],.canvas-wrapper a[aria-label*=GitHub],.canvas-wrapper button[title*=Github],.canvas-wrapper button[aria-label*=Github],.canvas-wrapper a[title*=Github],.canvas-wrapper a[aria-label*=Github],.canvas-wrapper button[title*=Follow],.canvas-wrapper button[aria-label*=Follow],.canvas-wrapper a[title*=Follow],.canvas-wrapper a[aria-label*=Follow],.canvas-wrapper button[title*="Follow us"],.canvas-wrapper button[aria-label*="Follow us"],.canvas-wrapper a[title*="Follow us"],.canvas-wrapper a[aria-label*="Follow us"],.canvas-wrapper button[title*="Excalidraw links"],.canvas-wrapper button[aria-label*="Excalidraw links"],.canvas-wrapper a[title*="Excalidraw links"],.canvas-wrapper a[aria-label*="Excalidraw links"],.canvas-wrapper button[title*=Discord],.canvas-wrapper button[aria-label*=Discord],.canvas-wrapper a[title*=Discord],.canvas-wrapper a[aria-label*=Discord],.canvas-wrapper .dropdown-menu-group-title,.canvas-wrapper .dropdown-menu a[aria-label=X],.canvas-wrapper .dropdown-menu a[title=X],.canvas-wrapper .dropdown-menu a[href*="x.com/excalidraw"],.canvas-wrapper a[aria-label=X],.canvas-wrapper a[title=X],.canvas-wrapper a[href*="x.com/excalidraw"],.canvas-wrapper button[data-testid=help-menu-item],.canvas-wrapper button.help-icon,.canvas-wrapper .dropdown-menu div[style*="height: 1px"][style*=background-color],.canvas-wrapper .context-menu,.canvas-wrapper .excalidraw .context-menu{display:none!important}.vizboard-context-menu{position:fixed;z-index:10001;min-width:160px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:8px;box-shadow:var(--ui-shadow-strong);padding:6px}.vizboard-context-menu-item{width:100%;text-align:left;padding:8px 10px;border:none;background:transparent;color:var(--ui-text);font-size:.875rem;border-radius:6px;cursor:pointer}.vizboard-context-menu-item:hover{background:var(--ui-surface-hover)}.vizboard-context-menu-label{padding:6px 10px 4px;color:var(--ui-text-muted, #6b7280);font-size:.75rem;font-weight:600}.vizboard-context-menu-subitem{padding-left:18px}.vizboard-matting-toast{position:fixed;right:20px;bottom:20px;z-index:10002;max-width:320px;padding:10px 12px;border-radius:8px;border:1px solid #fca5a5;background:#fef2f2;color:#991b1b;font-size:.875rem;box-shadow:0 8px 20px #0f172a1f}.canvas-wrapper button[title*="View mode"],.canvas-wrapper button[aria-label*="View mode"]{display:none!important}.theme-toggle{position:absolute;top:24px;right:24px;z-index:10;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--login-card);border:1px solid var(--login-border);border-radius:12px;cursor:pointer;transition:all .2s ease;padding:0;color:var(--login-text);box-shadow:0 2px 8px #00000014}.theme-toggle:hover{background:var(--ui-surface-hover, #f3f4f6);border-color:var(--login-accent);transform:translateY(-1px);box-shadow:0 4px 12px #0000001f}.theme-toggle:active{transform:translateY(0)}.theme-toggle svg{flex-shrink:0}@media(max-width:980px){.theme-toggle{top:20px;right:20px;width:40px;height:40px}.theme-toggle svg{width:18px;height:18px}}[data-theme=dark] .theme-toggle{box-shadow:0 2px 8px #0000004d}[data-theme=dark] .theme-toggle:hover{box-shadow:0 4px 12px #0006}.login-page{--login-bg: var(--ui-bg, #ffffff);--login-panel: var(--ui-surface, #ffffff);--login-card: var(--ui-surface, #ffffff);--login-accent: var(--canvas-primary, #e27b4c);--login-text: var(--ui-text, #1e1a16);--login-muted: var(--ui-text-muted, rgba(30, 26, 22, .55));--login-border: var(--ui-border, rgba(30, 26, 22, .08));min-height:100vh;background:var(--login-bg);color:var(--login-text);display:flex;align-items:stretch;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;position:relative}.login-shell{width:100%;display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-panel{position:relative;display:flex;align-items:center;justify-content:center;padding:0}.login-mark{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#f2c94c,#f2994a);color:#1a1a1a;display:grid;place-items:center;font-weight:700}.login-logo{position:absolute;top:32px;left:40px;display:flex;align-items:center;gap:16px;z-index:2}.login-brand-title{margin:0;font-size:24px;font-weight:700}.login-brand-subtitle{margin:4px 0 0;color:var(--login-muted);font-size:14px}.login-card{background:var(--login-card);border:1px solid var(--login-border);padding:32px;border-radius:24px;box-shadow:0 24px 60px #3c2d1c1f;width:min(420px,100%);margin:0 auto}.login-title{margin:0 0 6px;font-size:26px}.login-caption{margin:0 0 24px;color:var(--login-muted);font-size:14px}.login-form{display:grid;gap:16px}.login-field{display:grid;gap:8px;font-size:14px}.login-input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--login-border);background:var(--ui-surface-muted, #fbfaf8);color:var(--login-text);font-size:14px;outline:none}.login-input:focus{border-color:#f2c94c99;box-shadow:0 0 0 2px #f2c94c33}.login-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-link{background:none;border:none;color:var(--login-muted);cursor:pointer;font-size:13px;padding:0;border-radius:0}.login-link:hover{color:var(--login-accent)}.login-button{width:100%;padding:12px 16px;border-radius:12px;border:none;background:var(--login-accent);color:#1a1a1a;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #f2c94c40}.login-secondary{width:100%;padding:12px 16px;border-radius:12px;border:1px solid var(--login-border);background:transparent;color:var(--login-text);font-weight:600;cursor:pointer}.login-helper{margin-top:16px;text-align:center;font-size:13px;color:var(--login-muted)}.login-helper button{color:var(--login-accent);background:none;border:none;font-weight:600;cursor:pointer;padding:0}.login-error{padding:10px 12px;border-radius:12px;background:#f2505026;color:#ff9b9b;font-size:13px}.login-success{padding:10px 12px;border-radius:12px;background:#50c87826;color:#9effc2;font-size:13px}.login-code-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.login-code-button{padding:10px 12px;border-radius:12px;border:1px solid var(--login-border);background:var(--ui-surface-muted, #fbfaf8);color:var(--login-text);font-size:13px;cursor:pointer}.login-visual{display:flex;align-items:center;justify-content:center;padding:0;height:100%}.login-visual-frame{width:100%;height:100%;background:var(--ui-surface-muted, #f8f6f3);border-left:1px solid var(--login-border);position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:48px 64px;overflow:hidden}.login-visual-grid{position:absolute;inset:0;width:100%;height:100%;opacity:.04;color:var(--login-text);pointer-events:none}.login-floating-cards{position:absolute;right:238px;top:88px;z-index:1}.login-float-card{position:absolute;background:#fffc;border:1px solid rgba(30,26,22,.1);border-radius:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 20px 60px #3c2d1c26}.login-float-sketch{left:-128px;top:-32px;width:128px;height:96px;padding:12px;transform:rotate(-6deg)}.login-float-line{height:8px;border-radius:999px;margin-bottom:8px}.login-float-line-1{width:64px;background:#1e1a1633}.login-float-line-2{width:48px;background:#1e1a161a}.login-float-line-3{width:40px;background:#1e1a1626;margin-bottom:8px}.login-float-boxes{display:flex;gap:4px;margin-top:4px}.login-float-box{width:24px;height:24px;border-radius:6px}.login-float-box-accent{background:#f2c94c4d}.login-float-box-muted{background:#1e1a161a}.login-float-box-small{width:100%;height:24px;background:#f2c94c1a;border-radius:6px}.login-float-result{width:192px;height:144px;padding:16px;transform:rotate(3deg);background:linear-gradient(135deg,#fffffff2,#fff9);border-color:#f2c94c4d;box-shadow:0 20px 60px #f2c94c1a}.login-float-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.login-float-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#f2c94c33;border-radius:6px;color:var(--login-accent)}.login-float-label{font-size:12px;font-weight:500;color:#1e1a16cc}.login-float-content{display:flex;flex-direction:column;gap:8px}.login-float-bar{height:12px;border-radius:6px}.login-float-bar-1{width:100%;background:linear-gradient(90deg,rgba(242,201,76,.4),transparent)}.login-float-bar-2{width:80%;background:#1e1a1626}.login-float-bar-3{width:60%;background:#1e1a161a}.login-float-glow{position:absolute;bottom:-4px;right:-4px;width:32px;height:32px;background:#f2c94c33;border-radius:999px;filter:blur(16px)}.login-float-small{right:-16px;top:80px;width:80px;height:64px;padding:8px;transform:rotate(8deg);background:#ffffff80;border-color:#1e1a160d}.login-visual-content{position:relative;z-index:2;max-width:520px;display:flex;flex-direction:column;gap:24px;flex:1;justify-content:center}.login-reward-banner{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:16px;background:linear-gradient(135deg,#f2c94c26,#f2994a1a);border:1.5px solid rgba(242,201,76,.3);box-shadow:0 8px 24px #f2c94c26;position:relative;overflow:hidden;animation:rewardPulse 3s ease-in-out infinite}.login-reward-banner:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(242,201,76,.4),rgba(242,153,74,.3),transparent);animation:rewardShine 3s ease-in-out infinite}.login-reward-icon{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f2c94c4d,#f2994a33);border-radius:10px;color:var(--login-accent);animation:rewardIconBounce 2s ease-in-out infinite}.login-reward-text{flex:1;font-size:15px;font-weight:600;color:var(--login-text);letter-spacing:-.01em}.login-reward-badge{padding:4px 10px;border-radius:8px;background:linear-gradient(135deg,#f2c94c,#f2994a);color:#1a1a1a;font-size:11px;font-weight:700;letter-spacing:.05em;box-shadow:0 2px 8px #f2c94c4d;animation:rewardBadgePulse 2s ease-in-out infinite}@keyframes rewardPulse{0%,to{box-shadow:0 8px 24px #f2c94c26}50%{box-shadow:0 8px 32px #f2c94c40}}@keyframes rewardShine{0%{left:-100%}50%,to{left:100%}}@keyframes rewardIconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes rewardBadgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.login-visual-header{margin-bottom:16px}.login-visual-title{margin:0 0 16px;font-size:36px;line-height:1.2;font-weight:700;letter-spacing:-.02em}.login-visual-accent{color:var(--login-accent)}.login-visual-subtitle{margin:0;color:var(--login-muted);font-size:16px;line-height:1.6}.login-visual-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.login-flow-step{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;background:#fff9;border:1px solid var(--login-border);font-size:13px;color:#1e1a16cc}.login-flow-step-accent{background:#f2c94c1a;border-color:#f2c94c33;font-weight:500;color:#1e1a16e6}.login-flow-icon{flex-shrink:0;color:var(--login-muted)}.login-flow-step-accent .login-flow-icon{color:var(--login-accent)}.login-flow-arrow{color:#1e1a164d;font-size:16px;flex-shrink:0}.login-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.login-feature-card{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:14px;background:#fff6;border:1px solid rgba(30,26,22,.05);transition:all .2s ease}.login-feature-card:hover{background:#fff9;border-color:#1e1a161a;transform:translateY(-2px)}.login-feature-icon{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#1e1a160d;border-radius:8px;color:var(--login-muted);transition:all .2s ease}.login-feature-card:hover .login-feature-icon{color:var(--login-accent);background:#f2c94c1a}.login-feature-text{flex:1}.login-feature-title{margin:0 0 2px;font-size:14px;font-weight:600;color:var(--login-text)}.login-feature-desc{margin:0;font-size:12px;color:var(--login-muted)}.login-price-highlight{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:linear-gradient(90deg,rgba(242,201,76,.1),transparent);border:1px solid rgba(242,201,76,.2)}.login-price-icon{width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#f2c94c33;border-radius:8px;color:var(--login-accent)}.login-price-text{flex:1}.login-price-title{margin:0 0 2px;font-size:14px;font-weight:600;color:var(--login-text)}.login-price-desc{margin:0;font-size:12px;color:var(--login-muted)}.login-visual-footer{position:relative;z-index:2;padding-top:24px;border-top:1px solid rgba(30,26,22,.05)}.login-visual-footer p{margin:0;font-size:12px;color:var(--login-muted)}[data-theme=dark] .login-page{--login-bg: var(--ui-bg, #0f172a);--login-panel: var(--ui-surface, #1f2937);--login-card: var(--ui-surface, #1f2937);--login-text: var(--ui-text, #f9fafb);--login-muted: var(--ui-text-muted, #cbd5f5);--login-border: var(--ui-border, #374151)}[data-theme=dark] .login-visual-frame{background:var(--ui-bg, #0f172a)}[data-theme=dark] .login-visual-grid{opacity:.06}[data-theme=dark] .login-float-card{background:#0f172acc;border-color:#ffffff1a}[data-theme=dark] .login-float-result{background:linear-gradient(135deg,#1f2937f2,#1f293799)}[data-theme=dark] .login-float-line-1,[data-theme=dark] .login-float-line-2,[data-theme=dark] .login-float-line-3{background:#fff3}[data-theme=dark] .login-float-box-muted{background:#ffffff1a}[data-theme=dark] .login-float-label{color:#f9fafbcc}[data-theme=dark] .login-float-bar-2,[data-theme=dark] .login-float-bar-3{background:#ffffff26}[data-theme=dark] .login-flow-step{background:#0f172ab3;border-color:#ffffff1a;color:#f9fafbcc}[data-theme=dark] .login-flow-step-accent{background:#f2c94c1f;border-color:#f2c94c33;color:#f9fafbe6}[data-theme=dark] .login-flow-arrow{color:#ffffff4d}[data-theme=dark] .login-feature-card{background:#0f172a66;border-color:#ffffff0d}[data-theme=dark] .login-feature-card:hover{background:#0f172a99;border-color:#ffffff1a}[data-theme=dark] .login-feature-icon{background:#ffffff0d}[data-theme=dark] .login-feature-card:hover .login-feature-icon{background:#f2c94c1a}[data-theme=dark] .login-price-highlight{background:linear-gradient(90deg,rgba(242,201,76,.12),transparent)}[data-theme=dark] .login-visual-footer{border-top-color:#ffffff0d}[data-theme=dark] .login-reward-banner{background:linear-gradient(135deg,#f2c94c2e,#f2994a1f);border-color:#f2c94c59;box-shadow:0 8px 24px #f2c94c33}[data-theme=dark] .login-reward-banner:before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent)}[data-theme=dark] .login-reward-icon{background:linear-gradient(135deg,#f2c94c59,#f2994a40)}[data-theme=dark] .login-reward-text{color:#f9fafbf2}@media(max-width:980px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-panel{padding:40px 24px}.login-logo{left:24px}}.sidebar{position:fixed;right:0;top:60px;bottom:0;width:320px;background:var(--ui-surface);border-left:1px solid var(--ui-border);box-shadow:-2px 0 8px #00000014;display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease;z-index:1000}.sidebar.collapsed{transform:translate(100%)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--ui-border);min-height:48px;background:var(--ui-surface)}.sidebar-title{margin:0;font-size:.875rem;font-weight:600;color:var(--ui-text);letter-spacing:.02em}.sidebar-toggle{appearance:none;background-color:var(--ui-surface-muted);border:none;border-radius:8px;box-shadow:0 0 0 1px var(--ui-border);width:36px;height:36px;padding:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .5s ease-in-out;color:var(--ui-text);font-weight:500;-webkit-user-select:none;user-select:none}.sidebar-toggle:hover{background-color:var(--ui-surface-hover)}.sidebar-toggle:active{transform:scale(.95)}.sidebar-toggle svg{flex-shrink:0;display:block;color:inherit}.sidebar-toggle svg path{stroke:currentColor}.sidebar-content{flex:1;overflow-y:auto;overflow-x:hidden}.sidebar-expand-fab{position:fixed;right:16px;top:80px;appearance:none;background-color:var(--ui-surface-muted);border:none;border-radius:8px;width:36px;height:36px;padding:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:999;transition:transform .5s ease-in-out;color:var(--ui-text);font-weight:500;-webkit-user-select:none;user-select:none}.app.zen-mode .sidebar,.app.zen-mode .sidebar-expand-fab{transform:translate(100%);opacity:0;pointer-events:none}.sidebar-expand-fab:hover{background-color:var(--ui-surface-hover)}.sidebar-expand-fab:active{transform:scale(.95)}.sidebar-expand-fab svg{flex-shrink:0;display:block;color:inherit}.sidebar-expand-fab svg path{stroke:currentColor}.history-panel{padding:1rem;height:100%;display:flex;flex-direction:column}.history-filters{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.history-type-filters{display:flex;gap:.375rem;align-items:center}.history-type-btn{flex:1;padding:.375rem .5rem;border:1px solid var(--ui-border);border-radius:4px;background:transparent;color:var(--ui-text-muted);font-size:.75rem;cursor:pointer;transition:all .2s;font-weight:400;line-height:1.2}.history-type-btn:hover{background:var(--ui-surface-muted);color:var(--ui-text)}.history-type-btn.active{background:rgb(var(--canvas-primary-rgb, 226 123 76) / .12);color:var(--canvas-primary, #e27b4c);border-color:var(--canvas-primary, #e27b4c);font-weight:500}.history-search-toggle{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ui-border);border-radius:4px;background:var(--ui-surface);color:var(--ui-text-muted);cursor:pointer;transition:all .2s;flex-shrink:0}.history-search-toggle svg{display:block;flex-shrink:0}.history-search-toggle:hover{background:var(--ui-surface-muted);border-color:var(--canvas-primary, #3b82f6);color:var(--canvas-primary, #3b82f6)}.history-search-toggle.active{border-color:var(--canvas-primary, #3b82f6);color:var(--canvas-primary, #3b82f6);background:#3b82f61a}.history-search-input-wrapper{width:100%;position:relative;display:flex;align-items:center;animation:expandSearch .2s ease-out}@keyframes expandSearch{0%{opacity:0;transform:scaleX(.95)}to{opacity:1;transform:scaleX(1)}}.history-search-input-wrapper .search-icon{position:absolute;left:.625rem;color:var(--ui-text-muted);pointer-events:none;z-index:1}.history-search-input-wrapper input.history-search{width:100%;padding:.375rem 1.75rem .375rem 2.125rem;border:1px solid var(--ui-border);border-radius:4px;font-size:.75rem;background:var(--ui-surface);color:var(--ui-text)}.history-search-input-wrapper .clear-btn{position:absolute;right:.375rem;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--ui-text-muted);cursor:pointer;border-radius:3px;transition:all .2s;z-index:1}.history-search-input-wrapper .clear-btn:hover{background:var(--ui-surface-muted);color:var(--ui-text)}.history-search{padding:.5rem;border:1px solid var(--ui-border);border-radius:6px;font-size:.875rem;background:var(--ui-surface);color:var(--ui-text)}.history-search:focus{border-color:var(--canvas-primary, #3b82f6);outline:2px solid rgba(59,130,246,.2);outline-offset:1px}.history-filters select{padding:.5rem;border:1px solid var(--ui-border);border-radius:6px;font-size:.875rem;background:var(--ui-surface);color:var(--ui-text)}.history-filters select:focus{border-color:var(--canvas-primary, #3b82f6);outline:2px solid rgba(59,130,246,.2);outline-offset:1px}.history-list{flex:1;display:flex;flex-direction:column;gap:.75rem}.history-item{padding:.875rem;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);transition:box-shadow .2s;display:flex;flex-direction:column;gap:.75rem}.history-item:hover{box-shadow:0 2px 8px #0000001a}.history-item-main{display:flex;gap:.75rem;align-items:flex-start;transition:opacity .2s}.history-item-main:active{opacity:.7}.history-thumbnail{width:80px;height:80px;border-radius:6px;overflow:hidden;background:var(--ui-surface-muted);flex-shrink:0;display:flex;align-items:center;justify-content:center}.history-thumbnail img{width:100%;height:100%;object-fit:cover}.history-thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--ui-text-subtle);background:var(--ui-surface-muted)}.history-thumbnail-placeholder svg{opacity:.5}.history-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.history-item-header{display:flex;align-items:center}.history-status{font-size:.75rem;font-weight:600;text-transform:uppercase}.history-insert-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--ui-text-muted);border:1px solid var(--ui-border);border-radius:4px;cursor:pointer;transition:all .2s;flex-shrink:0;align-self:flex-start}.history-insert-btn:hover{background:var(--ui-surface-muted);border-color:var(--canvas-primary, #3b82f6);color:var(--canvas-primary, #3b82f6)}.history-insert-btn svg{flex-shrink:0}.history-detail-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--ui-text-muted);border:1px solid var(--ui-border);border-radius:4px;cursor:pointer;transition:all .2s;flex-shrink:0;align-self:flex-start}.history-detail-btn:hover{background:var(--ui-surface-muted);border-color:var(--canvas-primary, #3b82f6);color:var(--canvas-primary, #3b82f6)}.history-detail-btn svg{flex-shrink:0}.history-prompt{font-size:.875rem;color:var(--ui-text);line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis}.history-meta{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--ui-text-muted);padding-top:.5rem;border-top:1px solid var(--ui-border)}.history-empty{text-align:center;color:var(--ui-text-muted);padding:2rem}.history-loading-more,.history-all-loaded{text-align:center;color:var(--ui-text-muted);font-size:.75rem;padding:.5rem 0}.video-play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;display:flex;align-items:center;justify-content:center}.history-thumbnail{position:relative}.history-thumbnail-count{position:absolute;right:6px;bottom:6px;min-width:24px;height:20px;padding:0 6px;border-radius:999px;background:#000000b8;color:#fff;font-size:.6875rem;font-weight:600;display:flex;align-items:center;justify-content:center}.save-template-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10002;padding:20px}.save-template-modal{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003}.save-template-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.save-template-header h2{margin:0;font-size:18px;font-weight:600;color:#111827}.save-template-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.save-template-close:hover{background:#f3f4f6;color:#111827}.save-template-content{flex:1;overflow-y:auto;padding:24px}.save-template-error{padding:12px;background:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:13px;margin-bottom:16px}.save-template-field{margin-bottom:16px}.save-template-field:last-child{margin-bottom:0}.save-template-field label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#374151}.save-template-field input,.save-template-field textarea,.save-template-field select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;outline:none;transition:all .2s;font-family:inherit}.save-template-field input:focus,.save-template-field textarea:focus,.save-template-field select:focus{border-color:var(--canvas-primary);box-shadow:0 0 0 3px #e27b4c1a}.save-template-field input:disabled,.save-template-field textarea:disabled,.save-template-field select:disabled{background:#f3f4f6;cursor:not-allowed}.save-template-prompt-preview{background:#f9fafb;color:#6b7280;resize:none}.save-template-type-badge{display:inline-block;padding:6px 12px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#374151}.save-template-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #e5e7eb}.save-template-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.save-template-btn:disabled{opacity:.5;cursor:not-allowed}.save-template-btn-cancel{background:#f3f4f6;color:#374151}.save-template-btn-cancel:hover:not(:disabled){background:#e5e7eb}.save-template-btn-save{background:var(--canvas-primary);color:#fff}.save-template-btn-save:hover:not(:disabled){background:var(--canvas-primary-hover)}.prompt-optimization-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.prompt-optimization-dialog{background:var(--ui-surface);border-radius:12px;box-shadow:var(--ui-shadow-strong);width:600px;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);display:flex;flex-direction:column;animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.prompt-optimization-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--ui-border)}.prompt-optimization-header h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--ui-text)}.close-button{background:none;border:none;font-size:1.5rem;color:var(--ui-text-subtle);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.close-button:hover{background:var(--ui-hover);color:var(--ui-text)}.prompt-optimization-content{padding:1.5rem;overflow-y:auto;flex:1}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--ui-text)}.model-selector-row{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;margin-top:.75rem}.model-selector-row label{margin-bottom:0;font-size:.875rem;font-weight:500;color:var(--ui-text)}.prompt-input-container:hover{border-color:var(--ui-border-strong)}.prompt-input-container:focus-within{border-color:var(--canvas-primary, #3b82f6);box-shadow:0 0 0 2px #3b82f626}.prompt-textarea{width:100%;padding:8px 0;border:none;background:transparent;color:var(--ui-text);font-size:.875rem;line-height:1.5;resize:none;outline:none;min-height:60px;font-family:inherit}.prompt-textarea::placeholder{color:var(--ui-text-subtle)}.prompt-textarea:disabled{opacity:.5;cursor:not-allowed}.prompt-controls{display:flex;align-items:center;gap:8px}.chat-control-button{height:32px;padding:0 10px;display:flex;align-items:center;gap:6px;border:none;border-radius:8px;background:var(--ui-surface-muted);color:var(--ui-text-muted);font-size:.75rem;font-weight:500;white-space:nowrap;cursor:default}.chat-dropdown-menu{position:absolute;bottom:calc(100% + 8px);left:0;min-width:220px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface);box-shadow:var(--ui-shadow-strong);z-index:1000;overflow:hidden}.chat-dropdown-item:hover{background:var(--ui-surface-muted)}.chat-dropdown-item.active{background:var(--canvas-primary, #3b82f6);color:#fff}.form-group select{width:100%;padding:.625rem 2.5rem .625rem .625rem;border:1px solid var(--ui-border);border-radius:6px;background-color:var(--ui-background);background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;color:var(--ui-text);font-size:.875rem;font-family:inherit;transition:border-color .2s;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}.form-group textarea{width:100%;padding:.625rem;border:1px solid var(--ui-border);border-radius:6px;background:var(--ui-background);color:var(--ui-text);font-size:.875rem;font-family:inherit;transition:border-color .2s;resize:vertical;min-height:60px}.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--canvas-primary, #3b82f6)}.form-group select:disabled,.form-group textarea:disabled{opacity:.6;cursor:not-allowed}.form-group textarea.thinking-process{background:var(--ui-surface-muted);color:var(--ui-text-muted);font-size:.8125rem;font-style:italic;cursor:default;border-color:var(--ui-border)}.optimization-stats{display:flex;gap:1rem;font-size:.875rem;color:var(--ui-text-subtle)}.optimization-stats span{display:flex;align-items:center;gap:.25rem}.error-message{padding:.75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.875rem;margin-top:1rem}.prompt-optimization-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--ui-border);justify-content:space-between;align-items:center}.button-group-right{display:flex;gap:.75rem}.btn-primary,.btn-secondary,.btn-outline-primary{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:var(--canvas-primary, #3b82f6);color:#fff;border:1px solid var(--canvas-primary, #3b82f6)}.btn-primary:hover:not(:disabled){background:var(--canvas-primary-hover, #2563eb);border-color:var(--canvas-primary-hover, #2563eb)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-outline-primary{background:transparent;color:var(--canvas-primary, #3b82f6);border:1px solid var(--canvas-primary, #3b82f6)}.btn-outline-primary:hover:not(:disabled){background:var(--canvas-primary, #3b82f6);color:#fff}.btn-outline-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:var(--ui-text);border:1px solid var(--canvas-primary, #3b82f6)}.btn-secondary:hover:not(:disabled){background:var(--ui-border)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.historical-input-image{border:1px solid var(--ui-border);border-radius:8px;overflow:hidden;max-height:200px;display:flex;align-items:center;justify-content:center;background:var(--ui-background)}.historical-input-image img{max-width:100%;max-height:200px;object-fit:contain;display:block}.image-upload-label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.image-upload-label-row label{margin-bottom:0}.image-upload-toggle{background:none;border:none;font-size:.75rem;color:var(--ui-text-subtle);cursor:pointer;padding:.125rem .375rem;border-radius:4px;transition:color .2s,background .2s;white-space:nowrap}.image-upload-toggle:hover{color:var(--ui-text);background:var(--ui-hover)}.file-upload-area{border:2px dashed var(--ui-border);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;cursor:pointer;transition:border-color .2s,background .2s;background:var(--ui-background);min-height:90px;text-align:center}.file-upload-area:hover,.file-upload-area.drag-over{border-color:var(--canvas-primary, #3b82f6);background:#3b82f60a}.file-upload-icon{font-size:1.75rem;line-height:1}.file-upload-text{font-size:.875rem;color:var(--ui-text);font-weight:500}.file-upload-hint{font-size:.75rem;color:var(--ui-text-subtle)}.file-preview{display:flex;align-items:center;gap:.75rem;padding:.625rem;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-background)}.file-preview img{width:64px;height:64px;object-fit:cover;border-radius:6px;flex-shrink:0}.file-preview-info{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.file-preview-name{font-size:.875rem;color:var(--ui-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-progress{font-size:.75rem;color:var(--canvas-primary, #3b82f6)}.upload-done{font-size:.75rem;color:#22c55e}.file-clear-btn{background:none;border:none;color:var(--ui-text-subtle);cursor:pointer;font-size:1rem;padding:.25rem;border-radius:4px;transition:color .2s,background .2s;flex-shrink:0}.file-clear-btn:hover:not(:disabled){color:var(--ui-text);background:var(--ui-hover)}.file-clear-btn:disabled{opacity:.4;cursor:not-allowed}.btn-analyze{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;background:#8b5cf6;color:#fff;border:1px solid #8b5cf6}.btn-analyze:hover:not(:disabled){background:#7c3aed;border-color:#7c3aed}.btn-analyze:disabled{opacity:.5;cursor:not-allowed}.template-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.template-modal{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003}.template-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.template-modal-header h2{margin:0;font-size:18px;font-weight:600;color:#111827}.template-modal-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.template-modal-close:hover{background:#f3f4f6;color:#111827}.template-modal-content{flex:1;overflow-y:auto;padding:24px}.template-modal-gallery{position:relative;width:100%;aspect-ratio:16 / 9;background:#f3f4f6;border-radius:8px;overflow:hidden;margin-bottom:24px}.template-modal-gallery img{width:100%;height:100%;object-fit:contain}.template-modal-gallery-prev,.template-modal-gallery-next{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.template-modal-gallery-prev:hover,.template-modal-gallery-next:hover{background:#000000b3}.template-modal-gallery-prev{left:12px}.template-modal-gallery-next{right:12px}.template-modal-gallery-indicator{position:absolute;bottom:12px;left:50%;transform:translate(-50%);background:#00000080;color:#fff;padding:4px 12px;border-radius:12px;font-size:12px}.template-modal-section{margin-bottom:20px}.template-modal-section:last-child{margin-bottom:0}.template-modal-section h3{margin:0 0 8px;font-size:14px;font-weight:600;color:#111827}.template-modal-section p{margin:0;font-size:14px;line-height:1.6;color:#6b7280}.template-modal-prompt{background:#f3f4f6;padding:12px;border-radius:6px;font-size:13px;line-height:1.6;color:#111827;white-space:pre-wrap;word-break:break-word}.template-modal-tags{display:flex;gap:8px;flex-wrap:wrap}.template-modal-tag{display:inline-block;padding:4px 12px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:12px;font-size:12px;color:#6b7280}.template-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #e5e7eb}.template-modal-button-secondary,.template-modal-button-primary{padding:8px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.template-modal-button-secondary{background:#f3f4f6;color:#111827}.template-modal-button-secondary:hover{background:#e5e7eb}.template-modal-button-primary{background:var(--canvas-primary);color:#fff}.template-modal-button-primary:hover{background:var(--canvas-primary-hover)}.category-manage-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10001;padding:20px}.category-manage-modal{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003}.category-manage-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.category-manage-header h2{margin:0;font-size:18px;font-weight:600;color:#111827}.category-manage-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.category-manage-close:hover{background:#f3f4f6;color:#111827}.category-manage-content{flex:1;overflow-y:auto;padding:24px}.category-manage-error{padding:12px;background:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:13px;margin-bottom:16px}.category-manage-empty{display:flex;align-items:center;justify-content:center;min-height:100px;color:#6b7280;font-size:14px}.category-manage-list{display:flex;flex-direction:column;gap:12px}.category-manage-item{padding:16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px}.category-manage-info{flex:1}.category-manage-info h3{margin:0 0 4px;font-size:15px;font-weight:600;color:#111827}.category-manage-info p{margin:0;font-size:13px;color:#6b7280}.category-manage-edit-form{flex:1;display:flex;flex-direction:column;gap:8px}.category-manage-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;outline:none;transition:all .2s}.category-manage-input:focus{border-color:var(--canvas-primary);box-shadow:0 0 0 3px #e27b4c1a}.category-manage-actions{display:flex;gap:8px}.category-manage-btn{padding:6px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.category-manage-btn-edit{background:#f3f4f6;color:#374151}.category-manage-btn-edit:hover{background:#e5e7eb}.category-manage-btn-delete{background:#fee;color:#c33}.category-manage-btn-delete:hover{background:#fcc}.category-manage-btn-save{background:var(--canvas-primary);color:#fff}.category-manage-btn-save:hover{background:var(--canvas-primary-hover)}.category-manage-btn-cancel{background:#f3f4f6;color:#374151}.category-manage-btn-cancel:hover{background:#e5e7eb}.category-manage-footer{padding:16px 24px;border-top:1px solid #e5e7eb;margin-top:16px}.category-manage-add-btn{max-width:200px;margin-top:16px;padding:10px;background:var(--canvas-primary);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.category-manage-add-btn:hover{background:var(--canvas-primary-hover)}.edit-template-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10002;padding:20px}.edit-template-modal{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003}.edit-template-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.edit-template-header h2{margin:0;font-size:18px;font-weight:600;color:#111827}.edit-template-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.edit-template-close:hover{background:#f3f4f6;color:#111827}.edit-template-content{flex:1;overflow-y:auto;padding:24px}.edit-template-error{padding:12px;background:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:13px;margin-bottom:16px}.edit-template-field{margin-bottom:16px}.edit-template-field:last-child{margin-bottom:0}.edit-template-field label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#374151}.edit-template-field input,.edit-template-field textarea,.edit-template-field select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;outline:none;transition:all .2s;font-family:inherit;box-sizing:border-box}.edit-template-field input:focus,.edit-template-field textarea:focus,.edit-template-field select:focus{border-color:var(--canvas-primary);box-shadow:0 0 0 3px #e27b4c1a}.edit-template-field input:disabled,.edit-template-field textarea:disabled,.edit-template-field select:disabled{background:#f3f4f6;cursor:not-allowed}.edit-template-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #e5e7eb;flex-shrink:0}.edit-template-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.edit-template-btn:disabled{opacity:.5;cursor:not-allowed}.edit-template-btn-cancel{background:#f3f4f6;color:#374151}.edit-template-btn-cancel:hover:not(:disabled){background:#e5e7eb}.edit-template-btn-delete{margin-right:auto;background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.edit-template-btn-delete:hover:not(:disabled){background:#ffe4e6}.edit-template-btn-delete:not(:disabled):focus-visible{outline:2px solid rgba(190,18,60,.28);outline-offset:2px}.edit-template-btn-save{background:var(--canvas-primary);color:#fff}.edit-template-btn-save:hover:not(:disabled){background:var(--canvas-primary-hover)}.template-gallery-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.template-gallery-modal{background:#fff;border-radius:12px;max-width:1200px;width:100%;height:80vh;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003}.template-gallery-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.template-gallery-header h2{margin:0;font-size:18px;font-weight:600;color:#111827}.template-gallery-header-actions{display:flex;align-items:center;gap:12px}.template-gallery-manage-btn{padding:6px 12px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#374151;cursor:pointer;transition:all .2s}.template-gallery-manage-btn:hover{background:#e5e7eb;border-color:#d1d5db}.template-gallery-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.template-gallery-close:hover{background:#f3f4f6;color:#111827}.template-gallery-categories{display:flex;gap:8px;padding:16px 24px;border-bottom:1px solid #e5e7eb;overflow-x:auto;flex-wrap:wrap;flex-shrink:0}.template-category-btn{padding:6px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:20px;font-size:13px;color:#6b7280;cursor:pointer;transition:all .2s;white-space:nowrap}.template-category-btn:hover{border-color:var(--canvas-primary);color:var(--canvas-primary)}.template-category-btn.active{background:var(--canvas-primary);border-color:var(--canvas-primary);color:#fff}.template-gallery-content{flex:1;overflow-y:auto;padding:24px}.template-gallery-empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:#6b7280;font-size:14px}.template-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}@keyframes templateCardIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.template-card{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;animation:templateCardIn .2s ease both;transition:border-color .2s,box-shadow .2s,transform .2s}.template-card:hover{border-color:var(--canvas-primary);box-shadow:0 4px 12px #e27b4c26;transform:translateY(-2px)}.template-card-image{width:100%;aspect-ratio:16 / 9;background:#f3f4f6;overflow:hidden}.template-card-image img{width:100%;height:100%;object-fit:cover}.template-card-content{padding:16px;flex:1}.template-card-title{margin:0 0 8px;font-size:16px;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-card-description{font-size:13px;line-height:1.5;color:#6b7280;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:40px}.template-card-content{padding:16px 16px 0;flex:1}.template-card-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 16px 16px;gap:8px}.template-card-tags{display:flex;gap:6px;flex-wrap:wrap;flex:1}.template-card-tag{display:inline-block;padding:3px 10px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;font-size:11px;color:#6b7280}.template-card-actions{display:flex;gap:8px;flex-shrink:0}.template-card-use-button{padding:6px 16px;background:var(--canvas-primary);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #e27b4c33}.template-card-use-button:hover{background:var(--canvas-primary-hover);box-shadow:0 4px 8px #e27b4c4d;transform:translateY(-1px)}.template-card-use-button:active{transform:translateY(0)}.template-card-edit-button{padding:6px 12px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.template-card-edit-button:hover{background:#f3f4f6;border-color:#9ca3af;transform:translateY(-1px)}.template-card-edit-button:active{transform:translateY(0)}.chat-dialog-wrapper{position:fixed;z-index:100;transition:all .15s ease}.app.zen-mode .chat-dialog-wrapper{transform:translateY(16px);opacity:0;pointer-events:none}.chat-dialog-wrapper.centered{top:50%;left:50%;transform:translate(-50%,-50%)}.chat-dialog-wrapper.bottom-center{bottom:2rem;left:50%;transform:translate(-50%)}.chat-dialog-wrapper.collapsed{top:auto;bottom:1rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;align-items:center}.chat-templates-capsules{width:700px;max-width:calc(100vw - 2rem);display:flex;align-items:center;gap:8px;padding:0}.templates-capsules-scroll{flex:1;display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.templates-capsules-scroll::-webkit-scrollbar{display:none}.template-capsule,.templates-all-button{flex-shrink:0;padding:4px 12px;border-radius:12px;background:var(--ui-background);border:1px solid var(--ui-border);color:var(--ui-text);font-size:.8125rem;white-space:nowrap;cursor:pointer;transition:all .15s ease;background-color:#fff}.template-capsule:hover{background:var(--ui-error-bg)}.template-capsule:active{transform:translateY(0)}.templates-all-button:hover{color:var(--ui-text);background:var(--ui-error-bg)}.chat-dialog-container{width:800px;max-width:calc(100vw - 4rem)}.chat-collapsed-bar{width:700px;max-width:calc(100vw - 2rem);min-height:45px;height:45px;padding:0 12px;border-radius:12px;background:var(--ui-surface);border:1px solid var(--ui-border);box-shadow:var(--ui-shadow);display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:text}.chat-collapsed-placeholder{color:var(--ui-text-subtle);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.chat-collapsed-send{width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-input-bar{border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);padding:12px;box-shadow:var(--ui-shadow-strong);transition:border-color .2s;position:relative;display:flex;flex-direction:column;gap:10px}.chat-input-bar>*{position:relative;z-index:1}.chat-dialog-wrapper.generating .chat-input-bar:before{content:"";position:absolute;inset:-2px;padding:2px;border-radius:14px;background:conic-gradient(from var(--chat-border-angle),transparent 0deg,var(--canvas-primary, #3b82f6) 90deg,var(--canvas-primary-hover, #2563eb) 140deg,transparent 220deg,transparent 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;animation:chat-border-sweep 1.8s linear infinite;pointer-events:none}@property --chat-border-angle{syntax: "<angle>"; inherits: false; initial-value: 0deg;}@keyframes chat-border-sweep{to{--chat-border-angle: 360deg}}@media(prefers-reduced-motion:reduce){.chat-dialog-wrapper.generating .chat-input-bar:before{animation:none}}.chat-input-bar:hover{border-color:var(--ui-border-strong)}.chat-input-bar:focus-within{border-color:var(--canvas-primary, #3b82f6);box-shadow:0 0 0 2px #e27b4c26}.chat-input-row{width:100%;position:relative}.chat-controls-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.chat-controls-left,.chat-controls-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.chat-dropdown{position:relative}.chat-dropdown>.chat-control-button{position:relative}.chat-dropdown>.chat-control-button:after{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}.chat-control-button{height:32px;padding:0 10px;display:flex;align-items:center;gap:6px;border:none;border-radius:8px;background:var(--ui-surface-muted);color:var(--ui-text-muted);font-size:.75rem;font-weight:500;white-space:nowrap;cursor:pointer}.chat-control-button:hover:not(:disabled){background:var(--ui-surface-hover);color:var(--ui-text)}.chat-control-button.active{background:var(--ui-primary)}.chat-control-button.active:hover:not(:disabled){background:var(--ui-primary-hover)}.chat-control-button:disabled{opacity:.5;cursor:not-allowed}.chat-control-button svg{flex-shrink:0}.chat-dropdown-menu{position:absolute;bottom:calc(100% + 8px);left:0;min-width:220px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface);box-shadow:var(--ui-shadow-strong);z-index:1000;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease,visibility .15s;pointer-events:none}.chat-dropdown:hover .chat-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.chat-controls-left.disabled .chat-dropdown{pointer-events:none}.chat-dropdown-item{width:100%;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;border:none;background:var(--ui-surface);color:var(--ui-text);font-size:.875rem;text-align:left;cursor:default;transition:background .2s}.chat-dropdown-item:hover{background:var(--ui-surface-muted);color:var(--canvas-primary)}.chat-dropdown-item.active,.chat-dropdown-item.active:hover{background:var(--canvas-primary, #3b82f6);color:#fff}.chat-dropdown-cost{font-size:.75rem;opacity:.7}.chat-editable{width:100%;min-height:38px;max-height:120px;overflow-y:auto;font-size:.875rem;line-height:1.5;color:var(--ui-text);font-family:inherit;outline:none;word-break:break-word;white-space:pre-wrap;display:block;vertical-align:baseline}.chat-editable:empty:before{content:attr(data-placeholder);color:var(--ui-text-subtle);pointer-events:none}.chat-editable.disabled{opacity:.5;pointer-events:none}.chat-send-button{padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:var(--canvas-primary, #3b82f6);color:#fff;cursor:pointer;flex-shrink:0;transition:background .2s}.chat-send-button:hover:not(:disabled){background:var(--canvas-primary-hover, #2563eb)}.chat-send-button:disabled{background:var(--ui-border);cursor:not-allowed}.chat-send-button svg{flex-shrink:0}.chat-pin-button{padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface-muted);cursor:pointer;flex-shrink:0}.chat-pin-button:hover{background:var(--ui-surface-hover)}.chat-pin-button.active{border-color:var(--canvas-primary, #3b82f6);background:#e27b4c1f;color:var(--canvas-primary-hover, #2563eb)}.chat-optimize-button{padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface-muted);color:var(--ui-text-muted);cursor:pointer;flex-shrink:0;transition:all .2s}.chat-optimize-button:hover:not(:disabled){background:var(--canvas-primary, #3b82f6);border-color:var(--canvas-primary, #3b82f6);color:#fff}.chat-optimize-button.active{border-color:var(--canvas-primary, #3b82f6);background:#e27b4c1f;color:var(--canvas-primary-hover, #2563eb);animation:optimize-glow 2s ease-in-out infinite}.chat-optimize-button.active:hover:not(:disabled){background:var(--canvas-primary, #3b82f6);border-color:var(--canvas-primary, #3b82f6);color:#fff;animation:none}.chat-optimize-button:disabled{opacity:.5;cursor:not-allowed}.chat-optimize-button svg{flex-shrink:0}.chat-footer{margin-top:8px;display:flex;flex-direction:column;gap:8px;align-items:center}.chat-reference-info{display:flex;align-items:center;gap:6px;height:32px;padding:0 10px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);color:var(--ui-text-muted);font-size:.75rem;font-weight:500;cursor:default;white-space:nowrap}.chat-reference-info svg{flex-shrink:0}.chat-error-message{padding:10px 12px;background:var(--ui-error-bg);border:1px solid var(--ui-error-border);border-radius:8px;color:var(--ui-error-text);font-size:.8125rem}.chat-progress-container{display:flex;align-items:center;gap:12px}.chat-progress-bar{flex:1;height:6px;background:var(--ui-border);border-radius:3px;overflow:hidden}.chat-progress-fill{height:100%;background:linear-gradient(90deg,var(--canvas-primary, #3b82f6),var(--canvas-primary-hover, #2563eb));transition:width .3s ease}.chat-progress-text{font-size:.75rem;color:var(--ui-text-muted);white-space:nowrap}.chat-hint{font-size:.75rem;color:var(--ui-text-subtle);text-align:center}@media(max-width:768px){.chat-dialog-container{width:calc(100vw - 2rem)}.chat-controls-row{flex-direction:column;align-items:stretch}.chat-controls-left{width:100%;justify-content:flex-start}.chat-send-button{width:100%}}.chat-reference-badge{display:inline-flex;align-items:center;margin-left:6px;padding:2px 6px;background:#2eaadc26;border-radius:4px;font-size:11px;font-weight:600;color:#2eaadc}.chat-reference-action{margin-left:8px;padding:2px 8px;border:1px solid var(--canvas-primary);border-radius:4px;background:transparent;color:var(--canvas-primary);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.chat-reference-action:hover{background:var(--canvas-primary);color:#fff}.chat-reference-clear{margin-left:6px;padding:0 6px;border:none;border-radius:4px;background:transparent;color:var(--ui-text-muted);font-size:16px;font-weight:600;line-height:1;cursor:pointer;transition:all .15s ease}.chat-reference-clear:hover{background:#ff3b301a;color:#ff3b30}@keyframes optimize-glow{0%,to{box-shadow:0 0 8px #e27b4c4d}50%{box-shadow:0 0 16px #e27b4c99}}@media(prefers-reduced-motion:reduce){.chat-optimize-button.active{animation:none}}.generation-type-segmented{display:inline-flex;height:28px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:8px;padding:2px;gap:2px}.generation-type-option{display:inline-flex;align-items:center;justify-content:center;width:28px;height:100%;padding:0;border:none;border-radius:6px;background:transparent;color:var(--ui-text-muted);cursor:pointer;transition:all .15s ease}.generation-type-option:hover:not(:disabled):not(.active){background:rgba(var(--canvas-primary-rgb),.1);color:var(--canvas-primary)}.generation-type-option.active{background:var(--canvas-primary);color:#fff;box-shadow:0 1px 3px #0000001a}.generation-type-option:disabled{opacity:.5;cursor:not-allowed}.generation-type-option svg{flex-shrink:0}.chat-inline-badge{display:inline-flex;align-items:center;gap:2px;padding:0 4px 0 7px;background:#6366f11f;border:1px solid rgba(99,102,241,.3);border-radius:10px;font-size:.875rem;color:#6366f1;white-space:nowrap;-webkit-user-select:none;user-select:none;vertical-align:baseline;line-height:inherit;margin-right:2px;cursor:default}.chat-inline-badge-remove{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:#6366f1;padding:0 1px;font-size:13px;line-height:1;opacity:.6;margin-left:1px}.chat-inline-badge-remove:hover{opacity:1}.at-mention-dropdown{position:absolute;bottom:calc(100% + 4px);left:0;right:0;background:var(--ui-surface, #fff);border:1px solid var(--ui-border);border-radius:10px;box-shadow:0 4px 16px #0000001f;max-height:220px;overflow-y:auto;z-index:200;padding:4px}.at-mention-item{display:flex;align-items:center;gap:4px;width:100%;padding:8px 12px;background:none;border:none;border-radius:6px;font-size:.875rem;color:var(--ui-text);cursor:pointer;text-align:left}.at-mention-item:hover,.at-mention-item.active{background:var(--ui-surface-muted, rgba(0,0,0,.06))}.at-mention-item-at{color:var(--accent-color, #6366f1);font-weight:600}.txt2img-confirm-overlay{position:fixed;inset:0;z-index:9999;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}.txt2img-confirm-dialog{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:28px 28px 20px;width:340px;box-shadow:0 20px 60px #00000026;display:flex;flex-direction:column;align-items:center;gap:12px}.txt2img-confirm-icon{color:#f59e0b;opacity:.9}.txt2img-confirm-title{margin:0;font-size:1rem;font-weight:600;color:#111827;text-align:center}.txt2img-confirm-desc{margin:0;font-size:.85rem;color:#6b7280;text-align:center;line-height:1.6}.txt2img-confirm-desc strong{color:#111827}.txt2img-confirm-actions{display:flex;gap:10px;width:100%;margin-top:4px}.txt2img-confirm-btn{flex:1;padding:9px 0;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .15s,transform .1s}.txt2img-confirm-btn:hover{opacity:.85}.txt2img-confirm-btn:active{transform:scale(.97)}.txt2img-confirm-btn.cancel{background:#f3f4f6;color:#374151}.txt2img-confirm-btn.ok{background:var(--canvas-primary);color:#fff}.txt2img-confirm-suppress{display:flex;align-items:center;gap:7px;font-size:.78rem;color:#9ca3af;cursor:pointer;-webkit-user-select:none;user-select:none;margin-top:2px}.txt2img-confirm-suppress input[type=checkbox]{width:14px;height:14px;accent-color:var(--canvas-primary);cursor:pointer}.credits-menu{position:relative;z-index:9999}.credits-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);cursor:pointer;transition:background .2s;font-size:.875rem}.credits-button:hover{background:var(--ui-surface-muted)}.credits-amount{font-weight:600}.credits-caret{font-size:.625rem;color:var(--ui-text-muted)}.credits-dropdown{position:absolute;top:calc(100% + .5rem);right:0;width:220px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:8px;box-shadow:var(--ui-shadow);z-index:1000;overflow:hidden}.credits-info{padding:1rem}.credits-row{display:flex;justify-content:space-between;font-size:.875rem}.credits-divider{height:1px;background:var(--ui-border)}.credits-menu-item{width:100%;padding:.75rem 1rem;border:none;background:var(--ui-surface);text-align:left;font-size:.875rem;cursor:pointer;transition:background .2s;display:flex;align-items:center;gap:.5rem}.credits-menu-item svg{flex-shrink:0;color:var(--canvas-primary, #3b82f6)}.credits-menu-item:hover svg{color:var(--canvas-primary, #3b82f6);opacity:.8}.credits-menu-item:hover{background:var(--ui-surface-muted)}.recharge-overlay{position:fixed;inset:0;background:var(--ui-overlay);display:flex;align-items:center;justify-content:center;z-index:1100}.recharge-modal{width:min(720px,92vw);background:var(--ui-surface);border-radius:16px;box-shadow:0 20px 60px rgb(var(--canvas-primary-rgb) / .25);overflow:hidden}.recharge-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--ui-border)}.recharge-header h3{margin:0;font-size:1.1rem}.recharge-close{width:32px;height:32px;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--canvas-primary);border-radius:8px;background:var(--ui-surface);color:var(--canvas-primary);padding:0;line-height:1;cursor:pointer}.recharge-close svg{display:block}.recharge-close:hover{background:rgb(var(--canvas-primary-rgb) / .12)}.recharge-content{padding:1.5rem}.recharge-packages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.recharge-package{position:relative;border:1px solid var(--ui-border);border-radius:12px;padding:.85rem .75rem .75rem;text-align:center;background:var(--ui-surface-muted);cursor:pointer;transition:border .2s,box-shadow .2s,transform .2s}.recharge-package:disabled{cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.recharge-package.selected{border-color:var(--canvas-primary);box-shadow:0 10px 20px rgb(var(--canvas-primary-rgb) / .25);transform:translateY(-2px);background:rgb(var(--canvas-primary-rgb) / .08)}.recharge-package-credits{color:var(--ui-text-muted);margin-top:.35rem}.recharge-package-price{font-size:1.25rem;font-weight:600}.recharge-package-bonus{position:absolute;top:-.5rem;right:-.5rem;transform:rotate(15deg);padding:.12rem .4rem;border-radius:999px;background:#fef3c7;color:#b45309;font-size:.75rem;font-weight:600;border:1px solid #fde68a;pointer-events:none}.recharge-tip{margin-bottom:.75rem;color:var(--ui-text-muted);font-size:.9rem}.recharge-submit{width:50%;margin:0 auto;padding:.75rem 1rem;border-radius:10px;border:none;background:var(--canvas-primary);color:#fff;font-weight:600;cursor:pointer;display:block}.recharge-submit:hover:not(:disabled){background:var(--canvas-primary-hover)}.recharge-submit:disabled{background:#d1d5db;color:#6b7280;opacity:1;cursor:not-allowed}.recharge-error{margin-top:.5rem;color:var(--ui-error-text);font-size:.9rem}.recharge-session-info{display:grid;gap:.35rem;margin-bottom:1rem;color:var(--ui-text)}.recharge-session{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--ui-border)}.recharge-expire{color:var(--ui-text-muted);font-size:.9rem}.recharge-qr{display:flex;align-items:center;justify-content:center;padding:1rem 0}.recharge-qr img{width:220px;height:220px;border-radius:12px;border:1px solid var(--ui-border);background:var(--ui-surface)}.recharge-qr-placeholder{width:220px;height:220px;border-radius:12px;border:1px dashed var(--ui-border);display:flex;align-items:center;justify-content:center;color:var(--ui-text-muted);font-weight:600}.recharge-status{text-align:center;font-weight:600;margin-bottom:.75rem}.recharge-actions{display:flex;gap:.75rem;justify-content:flex-end}.recharge-cancel,.recharge-secondary{padding:.6rem 1rem;border-radius:8px;border:1px solid var(--canvas-primary);background:var(--ui-surface);color:var(--canvas-primary);cursor:pointer}.recharge-cancel{background:rgb(var(--canvas-primary-rgb) / .08)}.recharge-cancel:hover,.recharge-secondary:hover{background:rgb(var(--canvas-primary-rgb) / .15)}@media(max-width:900px){.recharge-packages{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.recharge-content{padding:1rem}.recharge-packages{grid-template-columns:repeat(2,minmax(0,1fr))}.recharge-actions{flex-direction:column}}.credit-history-overlay{position:fixed;inset:0;background:var(--ui-overlay);display:flex;align-items:center;justify-content:center;z-index:1100}.credit-history-modal{width:min(640px,92vw);background:var(--ui-surface);border-radius:16px;box-shadow:0 20px 60px #0f172a40;overflow:hidden}.credit-history-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--ui-border)}.credit-history-header h3{margin:0;font-size:1.1rem}.credit-history-close{width:32px;height:32px;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--canvas-primary);border-radius:8px;background:var(--ui-surface);color:var(--canvas-primary);padding:0;line-height:1;cursor:pointer}.credit-history-close svg{display:block}.credit-history-close:hover{background:rgb(var(--canvas-primary-rgb) / .12)}.credit-history-content{padding:1.5rem;max-height:60vh;overflow-y:auto}.credit-history-table{display:grid;gap:.5rem}.credit-history-table-head,.credit-history-table-row{display:grid;grid-template-columns:minmax(80px,120px) minmax(180px,1fr) minmax(80px,120px) minmax(80px,120px);align-items:center;column-gap:1rem;padding:.65rem .9rem}.credit-history-table-head{font-weight:600;color:var(--ui-text-muted)}.credit-history-table-row{border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface-muted)}.credit-history-type{font-weight:600}.credit-history-time{font-size:.85rem;color:var(--ui-text-muted)}.credit-history-amount{font-weight:600}.credit-history-cell-amount{text-align:right}.credit-history-amount.positive{color:#16a34a}.credit-history-amount.negative{color:#dc2626}.credit-history-empty{text-align:center;color:var(--ui-text-muted);padding:1.5rem 0}.credit-history-error{margin-top:.75rem;color:var(--ui-error-text);font-size:.9rem}@media(max-width:640px){.credit-history-content{padding:1rem}.credit-history-table-head,.credit-history-table-row{grid-template-columns:1fr;row-gap:.35rem}.credit-history-cell-amount{text-align:left}}.change-password-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a73}.change-password-modal{width:min(100%,420px);background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:16px;box-shadow:var(--ui-shadow-strong);overflow:hidden}.change-password-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--ui-border)}.change-password-header h3{margin:0;font-size:1rem}.change-password-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:10px;background:transparent;color:var(--ui-text-muted);cursor:pointer}.change-password-close:hover{background:var(--ui-surface-muted);color:var(--ui-text)}.change-password-form{display:flex;flex-direction:column;gap:16px;padding:20px}.change-password-field{display:flex;flex-direction:column;gap:8px;font-size:.875rem;color:var(--ui-text)}.change-password-input{width:100%;padding:10px 12px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface);color:var(--ui-text);font-size:.875rem;outline:none}.change-password-input:focus{border-color:var(--canvas-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61f}.change-password-error,.change-password-success{padding:10px 12px;border-radius:10px;font-size:.875rem}.change-password-error{background:#fef2f2;color:#b91c1c}.change-password-success{background:#ecfdf5;color:#047857}.change-password-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:4px}.change-password-secondary,.change-password-submit{min-width:96px;padding:10px 16px;border-radius:10px;font-size:.875rem;cursor:pointer}.change-password-secondary{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text)}.change-password-secondary:hover:not(:disabled){background:var(--ui-surface-muted)}.change-password-submit{border:1px solid transparent;background:var(--canvas-primary, #3b82f6);color:#fff}.change-password-submit:hover:not(:disabled){opacity:.92}.change-password-secondary:disabled,.change-password-submit:disabled,.change-password-close:disabled{opacity:.6;cursor:not-allowed}.daily-reward-button{padding:.5rem 1rem;border:1px solid var(--canvas-primary, #e27b4c);border-radius:6px;background:transparent;color:var(--canvas-primary, #e27b4c);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem;box-shadow:none}.daily-reward-button:hover{background:rgb(var(--canvas-primary-rgb, 226 123 76) / .1);border-color:var(--canvas-primary, #e27b4c)}.daily-reward-button:active{transform:translateY(0)}.daily-reward-button.loading{cursor:wait;opacity:.7}.daily-reward-button:disabled{cursor:not-allowed;opacity:.6}.daily-reward-toast{position:fixed;top:20px;right:20px;padding:12px 20px;border-radius:8px;background:var(--canvas-primary, #e27b4c);color:#fff;box-shadow:0 4px 12px #00000026;z-index:10000;animation:slideIn .3s ease-out;font-size:14px;font-weight:500}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{position:absolute;inset:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;inset:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){animation:marching-ants 1s;background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;animation-play-state:running;animation-timing-function:linear;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media(pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.image-preview-overlay{position:fixed;inset:0;background:var(--ui-overlay-strong);display:flex;align-items:center;justify-content:center;z-index:10000;padding:2rem}.preview-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;animation:fadeIn .2s ease-in}.preview-loading-spinner{color:var(--canvas-primary)}.preview-loading-text{font-size:.875rem;color:var(--ui-text);font-weight:500}.image-preview-container{display:flex;gap:0;max-width:90vw;max-height:90vh;width:auto;height:auto;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.preview-image-wrapper{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;min-height:0;max-height:90vh;overflow:hidden;position:relative}.preview-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border:1px solid rgb(255 255 255 / .25);border-radius:999px;background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.preview-nav-prev{left:16px}.preview-nav-next{right:16px}.preview-nav-btn:hover:not(:disabled){background:#000000b8}.preview-nav-btn:disabled{opacity:.35;cursor:not-allowed}.preview-loading-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:var(--ui-surface);z-index:10;animation:fadeIn .2s ease-in}.preview-image{display:block;max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px 0 0 8px;box-shadow:var(--ui-shadow-strong);transition:opacity .3s ease-in}.preview-sidebar{width:320px;display:flex;flex-direction:column;background:var(--ui-surface);border:1px solid var(--ui-border);border-left:none;border-radius:0 8px 8px 0;padding:1.5rem;gap:1.5rem}.preview-close-btn{align-self:flex-end;width:40px;height:40px;min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;background:var(--ui-surface-hover);border:1px solid var(--ui-border);border-radius:8px;color:var(--ui-text);padding:0;line-height:1;cursor:pointer;transition:all .2s}.preview-close-btn svg{display:block}.preview-close-btn:hover{background:var(--ui-surface-muted);border-color:var(--canvas-primary);color:var(--canvas-primary)}.preview-prompt{flex:1;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;min-height:0}.preview-prompt-label{font-size:.75rem;font-weight:600;color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.05em}.preview-prompt-text{font-size:.875rem;color:var(--ui-text);line-height:1.6;word-break:break-word}.preview-prompt::-webkit-scrollbar{width:6px}.preview-prompt::-webkit-scrollbar-track{background:var(--ui-surface-muted);border-radius:3px}.preview-prompt::-webkit-scrollbar-thumb{background:var(--ui-border-strong);border-radius:3px}.preview-prompt::-webkit-scrollbar-thumb:hover{background:var(--ui-text-subtle)}.preview-actions{display:flex;flex-direction:row;gap:.5rem;margin-top:auto}.preview-download-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:var(--canvas-primary);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.preview-download-btn:hover:not(:disabled){background:var(--canvas-primary-hover)}.preview-download-btn:disabled{opacity:.45;cursor:not-allowed}.preview-download-btn svg{flex-shrink:0}.preview-crop-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.75rem 1rem;background:var(--ui-surface-hover);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.preview-crop-btn:hover{background:var(--ui-surface-muted);border-color:var(--canvas-primary);color:var(--canvas-primary)}.preview-crop-cancel-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:.75rem 1rem;background:transparent;color:var(--ui-text-muted);border:1px solid var(--ui-border);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.preview-crop-cancel-btn:hover{background:var(--ui-surface-hover);color:var(--ui-text)}.crop-controls{display:flex;flex-direction:column;gap:1rem}.crop-section{display:flex;flex-direction:column;gap:.5rem}.crop-section-label{font-size:.75rem;font-weight:600;color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.05em}.crop-preset-buttons{display:flex;flex-wrap:wrap;gap:.375rem}.crop-preset-btn{padding:.25rem .625rem;border:1px solid var(--ui-border);border-radius:6px;font-size:.75rem;background:var(--ui-surface-hover);color:var(--ui-text);cursor:pointer;transition:all .15s}.crop-preset-btn:hover{border-color:var(--canvas-primary);color:var(--canvas-primary)}.crop-preset-btn.active{background:var(--canvas-primary);color:#fff;border-color:var(--canvas-primary)}.crop-size-row{display:flex;align-items:center;gap:.375rem}.crop-size-input{flex:1;min-width:0;padding:.375rem .5rem;border:1px solid var(--ui-border);border-radius:6px;background:var(--ui-surface-hover);color:var(--ui-text);font-size:.8125rem;outline:none;transition:border-color .15s}.crop-size-input:focus{border-color:var(--canvas-primary)}.crop-size-sep{color:var(--ui-text-muted);font-size:.875rem;flex-shrink:0}.crop-error{font-size:.75rem;color:#ef4444;line-height:1.4;padding:.5rem .75rem;background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:6px}.preview-crop-wrapper{max-width:100%;max-height:90vh;line-height:0}.preview-crop-wrapper .ReactCrop__child-wrapper{max-height:90vh}@media(max-width:768px){.image-preview-overlay{padding:0}.image-preview-container{flex-direction:column;max-width:100vw;max-height:100vh;width:100vw;height:100vh}.preview-image-wrapper{flex:1;min-height:0}.preview-image{max-height:100%;border-radius:0}.preview-sidebar{width:100%;border-radius:0;border-left:1px solid var(--ui-border);border-bottom:none;padding:1rem;gap:1rem;max-height:40vh}.preview-prompt{max-height:none}.preview-prompt-text{font-size:.8125rem}.preview-download-btn{padding:.75rem 1.25rem}}.video-expired-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;min-height:400px;min-width:400px;background:var(--ui-surface-muted);border-radius:8px 0 0 8px;color:var(--ui-text-muted)}.video-expired-icon{margin-bottom:1rem;opacity:.5}.video-expired-title{font-size:1.125rem;font-weight:600;color:var(--ui-text);margin-bottom:.5rem}.video-expired-text{font-size:.875rem;color:var(--ui-text-muted)}.video-expiry-warning{display:flex;gap:.75rem;padding:1rem;background:#eab3081a;border:1px solid rgba(234,179,8,.3);border-radius:8px;color:var(--ui-text)}.video-expiry-warning svg{flex-shrink:0;color:#eab308}.expiry-title{font-size:.875rem;font-weight:600;margin-bottom:.25rem}.expiry-text{font-size:.75rem;color:var(--ui-text-muted)}.preview-reference-images{display:flex;flex-direction:column;gap:.75rem}.reference-images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.5rem}.reference-image-item{position:relative;aspect-ratio:1;border-radius:6px;overflow:hidden;border:1px solid var(--ui-border);background:var(--ui-surface-muted)}.preview-gallery-item{padding:0;cursor:pointer}.preview-gallery-item.active{border-color:var(--canvas-primary);box-shadow:0 0 0 1px var(--canvas-primary)}.reference-image-item img{width:100%;height:100%;object-fit:cover}.reference-image-label{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;font-size:.625rem;padding:.25rem;text-align:center;font-weight:500}.preview-dimensions{display:flex;flex-direction:column;gap:.25rem}.preview-dimensions-value{font-size:.875rem;color:var(--ui-text);font-variant-numeric:tabular-nums}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.loading-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--ui-bg)}.loading-spinner{font-size:1.25rem;color:var(--canvas-primary)}.app{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden;background:var(--ui-bg)}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:var(--ui-surface);border-bottom:1px solid var(--ui-border);height:60px;transition:transform .3s ease,opacity .3s ease,height .3s ease,padding .3s ease,border-color .3s ease}.app-header-left{display:flex;align-items:center}.app-logo{display:flex;align-items:center;gap:.75rem}.app-logo-mark{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,#f2c94c,#f2994a);color:#1a1a1a;display:grid;place-items:center;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.95rem}.app-logo-title{margin:0;font-size:1.1rem;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;color:var(--ui-text)}.app-header-right{display:flex;align-items:center;gap:1rem}.logout-button{font-size:14px;padding:.5rem 1rem;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:6px;cursor:pointer;transition:background .2s}.logout-button:hover{background:var(--ui-surface-muted)}.app-content{flex:1;position:relative;overflow:hidden}.app.zen-mode .app-header{transform:translateY(-100%);opacity:0;height:0;padding:0;border-color:transparent;pointer-events:none}.canvas-container{position:absolute;inset:0;overflow:hidden}
