:root{color-scheme:light;--bg: #f8f9fa;--panel: #ffffff;--panel-strong: #f1f5f9;--line: #e2e8f0;--text: #0f172a;--muted: #475569;--muted-2: #64748b;--accent: #3b82f6;--accent-ink: #ffffff;--primary: #3b82f6;--primary-hover: #2563eb;--primary-pressed: #1d4ed8;--primary-soft: #dbeafe;--primary-border: #93c5fd;--danger: #ef4444;--danger-rgb: 239 68 68;--shadow-rgb: 15 23 42;--shadow: 0 18px 48px rgb(15 23 42 / .1);--radius-sm: 6px;--radius-md: 8px;--radius: 8px;--surface-base: #ffffff;--surface-raised: #f8fafc;--surface-panel: #ffffff;--surface-input: #f8fafc;--input-focus-bg: #ffffff;--input-focus-text: #0f172a;--surface-deep: #f1f5f9;--surface-floor: #f1f5f9;--surface-dialog: #ffffff;--surface-control: #f8fafc;--surface-hover: #f1f5f9;--surface-subtle: #f8fafc;--surface-glint: rgba(255, 255, 255, .9);--border-subtle: #e2e8f0;--border-muted: #cbd5e1;--border-strong: #94a3b8;--accent-rgb: 59 130 246;--accent-soft: rgb(var(--accent-rgb) / .1);--accent-wash: rgb(var(--accent-rgb) / .06);--accent-panel: rgb(var(--accent-rgb) / .12);--accent-muted: rgb(var(--accent-rgb) / .14);--accent-border: rgb(var(--accent-rgb) / .3);--accent-border-strong: rgb(var(--accent-rgb) / .44);--scrollbar-track: rgba(15, 23, 42, .06);--scrollbar-thumb: rgb(var(--accent-rgb) / .24);--scrollbar-thumb-hover: rgb(var(--accent-rgb) / .42);--focus-ring: 0 0 0 3px rgb(var(--accent-rgb) / .22);--danger-soft: rgb(239 68 68 / .1);--danger-border: rgb(239 68 68 / .28);--success: #10b981;--success-rgb: 16 185 129;--success-soft: rgb(16 185 129 / .1);--success-border: rgb(16 185 129 / .28);--warning: #f59e0b;--warning-rgb: 245 158 11;--warning-soft: #fef3c7;--warning-border: #fcd34d;--info: #3b82f6;--info-rgb: 59 130 246;--info-soft: #dbeafe;--info-border: #93c5fd;--text-strong: #0f172a;--text-inverse: #ffffff;--text-inverse-muted: rgba(255, 255, 255, .72);--text-on-primary: #ffffff;--text-disabled: #94a3b8;--glass-bg: rgba(255, 255, 255, .88);--overlay-scrim: rgb(15 23 42 / .45);--overlay-media: rgb(15 23 42 / .65);--overlay-control: rgb(15 23 42 / .72);--chat-panel-bg: #ffffff;--chat-user-bg: #dbeafe;--chat-user-border: #93c5fd;--chat-assistant-bg: #f8fafc;--composer-bg: #ffffff;--composer-border: #e2e8f0;--gallery-tile-bg: #f8fafc;--gallery-hover: #f1f5f9;--code-bg: #f1f5f9;--code-border: #cbd5e1;--code-text: #0f172a;--code-comment: #64748b;--code-string: #059669;--code-number: #d97706;--code-keyword: #2563eb;--code-function: #7c3aed;--code-tag: #dc2626;--code-color: #3b82f6;--code-operator: #8b5cf6;--shadow-sm: 0 1px 2px rgb(var(--shadow-rgb) / .06);--shadow-md: 0 4px 12px rgb(var(--shadow-rgb) / .08);--shadow-lg: 0 10px 24px rgb(var(--shadow-rgb) / .1);--motion-fast: .16s ease;--motion-base: .18s ease;--touch-target: 44px}:root[data-theme=dark],body[data-theme=dark]{color-scheme:dark;--bg: #0f172a;--panel: #1e293b;--panel-strong: #334155;--line: #475569;--text: #f8fafc;--muted: #94a3b8;--muted-2: #64748b;--accent: #3b82f6;--accent-ink: #ffffff;--primary: #3b82f6;--primary-hover: #60a5fa;--primary-pressed: #2563eb;--primary-soft: #1e3a8a;--primary-border: #3b82f6;--danger: #f87171;--danger-rgb: 248 113 113;--shadow-rgb: 15 23 42;--surface-base: #1e293b;--surface-raised: #334155;--surface-panel: #1e293b;--surface-input: #334155;--input-focus-bg: #1e293b;--input-focus-text: #f8fafc;--surface-deep: #0f172a;--surface-floor: #1e293b;--surface-dialog: #1e293b;--surface-control: rgba(30, 41, 59, .85);--surface-hover: #475569;--surface-subtle: rgba(255, 255, 255, .04);--surface-glint: rgba(30, 41, 59, .9);--border-subtle: rgba(255, 255, 255, .08);--border-muted: rgba(255, 255, 255, .12);--border-strong: rgba(255, 255, 255, .18);--accent-rgb: 59 130 246;--accent-soft: rgb(var(--accent-rgb) / .14);--accent-wash: rgb(var(--accent-rgb) / .08);--accent-panel: rgb(var(--accent-rgb) / .18);--accent-muted: rgb(var(--accent-rgb) / .2);--accent-border: rgb(var(--accent-rgb) / .36);--accent-border-strong: rgb(var(--accent-rgb) / .52);--scrollbar-track: rgba(255, 255, 255, .04);--scrollbar-thumb: rgba(255, 255, 255, .22);--scrollbar-thumb-hover: rgba(255, 255, 255, .36);--focus-ring: 0 0 0 3px rgb(var(--accent-rgb) / .2);--danger-soft: rgb(248 113 113 / .14);--danger-border: rgb(248 113 113 / .32);--success: #34d399;--success-rgb: 52 211 153;--success-soft: rgb(52 211 153 / .14);--success-border: rgb(52 211 153 / .32);--warning: #fbbf24;--warning-rgb: 251 191 36;--warning-soft: #451a03;--warning-border: #d97706;--info: #3b82f6;--info-rgb: 59 130 246;--info-soft: #1e3a8a;--info-border: #3b82f6;--text-strong: #f8fafc;--text-inverse: #ffffff;--text-inverse-muted: rgba(255, 255, 255, .72);--text-on-primary: #ffffff;--text-disabled: #64748b;--glass-bg: rgba(30, 41, 59, .88);--overlay-scrim: rgb(15 23 42 / .55);--overlay-media: rgb(15 23 42 / .75);--overlay-control: rgb(15 23 42 / .78);--chat-panel-bg: #1e293b;--chat-user-bg: #1e3a8a;--chat-user-border: #3b82f6;--chat-assistant-bg: #334155;--composer-bg: #1e293b;--composer-border: #475569;--gallery-tile-bg: #334155;--gallery-hover: #475569;--code-bg: #1e293b;--code-border: rgba(255, 255, 255, .1);--code-text: #e2e8f0;--code-comment: #94a3b8;--code-string: #34d399;--code-number: #fbbf24;--code-keyword: #60a5fa;--code-function: #a78bfa;--code-tag: #f87171;--code-color: #7dd3fc;--code-operator: #c4b5fd;--shadow-sm: 0 1px 2px rgb(var(--shadow-rgb) / .2);--shadow-md: 0 8px 24px rgb(var(--shadow-rgb) / .24);--shadow-lg: 0 18px 48px rgb(var(--shadow-rgb) / .3);--shadow: 0 18px 48px rgb(var(--shadow-rgb) / .36)}:root{color:var(--text);background:var(--bg);font-family:Segoe UI,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;min-height:100%;margin:0;background:var(--bg)}*{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:auto}*::-webkit-scrollbar{width:20px;height:20px}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-thumb{border:2px solid var(--surface-deep);border-radius:var(--radius-md);background:var(--scrollbar-thumb)}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}body{overflow:hidden;background:var(--bg)}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border:0}.ui-action-button,.ui-icon-button,.ui-list-item-surface,.ui-media-tile,.ui-pagination-button{touch-action:manipulation}.ui-list-item-surface,.ui-media-tile{outline:0}.ui-list-item-surface:focus-visible,.ui-media-tile:focus-visible,.ui-action-button:focus-visible,.ui-icon-button:focus-visible,.ui-pagination-button:focus-visible{outline:0;box-shadow:var(--focus-ring)}a{color:inherit;text-decoration:none}.account-points-voucher-field a{border:1px solid var(--accent);text-decoration:none;height:42px;line-height:42px;border-radius:8px;padding:0 6px;background-color:var(--chat-user-bg);color:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{display:grid;width:100%;height:100dvh;min-height:100dvh;overflow:hidden;background:var(--bg)}.top-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 22px;border-bottom:1px solid var(--border-subtle);background:var(--glass-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand-mark{display:inline-flex;align-items:center;min-width:0;gap:12px}.topbar-menu.frontend-sidebar-toggle{display:inline-flex;width:42px;height:42px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--surface-control);color:var(--muted);cursor:pointer;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base)}.topbar-menu.frontend-sidebar-toggle:hover,.topbar-menu.frontend-sidebar-toggle:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--text);outline:0}.brand-mark h1{min-width:0;margin:0;overflow:hidden;color:var(--text);font-size:clamp(18px,2vw,24px);font-weight:760;letter-spacing:0;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.logo-fallback,.logo-svg{display:inline-flex;width:36px;height:36px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--primary-border);border-radius:var(--radius-md);background:linear-gradient(145deg,var(--accent),var(--primary-hover));color:var(--accent-ink);box-shadow:inset 0 -10px 22px rgb(var(--shadow-rgb) / .08)}.logo-image{display:block;width:36px;height:36px;flex:0 0 auto;background:var(--surface-dialog);object-fit:contain}.logo-svg svg{width:22px;height:22px}.topbar-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.topbar-custom-menu-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;max-width:min(260px,32vw);min-height:38px;padding:0 13px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-control);color:var(--text);font-size:13px;font-weight:720;line-height:1;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base),transform var(--motion-base)}.topbar-custom-menu-link span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-custom-menu-link:hover,.topbar-custom-menu-link:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--text);outline:0;transform:translateY(-1px)}.workspace-actions{position:absolute;top:18px;right:22px;z-index:24;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.workspace-action-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;max-width:min(260px,46vw);min-height:var(--touch-target);padding:0 13px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface-base);color:var(--text);font-size:13px;font-weight:720;line-height:1;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base)}.workspace-action-link span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-action-link:hover,.workspace-action-link:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--accent);outline:0}.mobile-sidebar-toggle{position:fixed;top:12px;left:12px;z-index:88;display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--surface-base);box-shadow:var(--shadow-md);color:var(--text);cursor:pointer}.mobile-sidebar-toggle:hover,.mobile-sidebar-toggle:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--accent);outline:0}.mobile-sidebar-toggle.is-hidden{display:none}.user-avatar-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;outline:0;background:var(--surface-control);color:var(--text);cursor:pointer;flex:0 0 auto;transition:border-color .18s ease,box-shadow .18s ease,color .18s ease,background .18s ease,transform .18s ease}.user-avatar-button:hover,.user-avatar-button:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--text);box-shadow:var(--focus-ring)}.user-avatar-button:hover{transform:translateY(-1px)}.avatar-status{position:absolute;right:3px;bottom:3px;width:10px;height:10px;border:2px solid var(--surface-dialog);border-radius:50%;background:var(--muted-2)}.avatar-status.is-online{background:var(--success)}.topbar-theme-toggle{display:inline-flex;width:42px;height:42px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--surface-control);color:var(--muted);cursor:pointer;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base),transform var(--motion-base)}.topbar-theme-toggle:hover,.topbar-theme-toggle:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--accent);outline:0;transform:translateY(-1px)}.auth-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;width:100vw;min-height:100dvh;padding:20px;overflow:auto;overscroll-behavior:contain;background:rgb(var(--shadow-rgb) / .64);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth-dialog{position:relative;width:min(100%,430px);max-height:calc(100dvh - 40px);overflow:auto;border:1px solid rgb(var(--accent-rgb) / .18);border-radius:8px;background:linear-gradient(180deg,var(--accent-soft),rgb(var(--accent-rgb) / 0)),var(--surface-dialog);color:var(--text);box-shadow:var(--shadow);padding:22px}.auth-close{position:absolute;top:14px;right:14px;display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--surface-base);color:var(--muted);cursor:pointer;transition:border-color .18s ease,color .18s ease,background .18s ease}.auth-close:hover,.auth-close:focus-visible{border-color:rgb(var(--accent-rgb) / .55);background:var(--surface-hover);color:var(--text);outline:0}.auth-heading{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding-right:42px}.auth-mark{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid rgb(var(--accent-rgb) / .38);border-radius:8px;background:var(--accent);color:var(--accent-ink)}.auth-heading h2{margin:0;font-size:22px;letter-spacing:0;line-height:1.2}.auth-heading p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.auth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:20px 0;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--surface-control)}.auth-tabs button,.auth-tabs a{display:inline-flex;min-height:38px;align-items:center;justify-content:center;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:13px;font-weight:720;transition:background .18s ease,color .18s ease}.auth-tabs button:hover,.auth-tabs button:focus-visible,.auth-tabs button.is-active,.auth-tabs a:hover,.auth-tabs a:focus-visible,.auth-tabs a.is-active{background:var(--surface-hover);color:var(--text);outline:0}.auth-form{display:grid;gap:14px}.auth-form label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:700}.auth-form input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;outline:0;background:var(--surface-input);color:var(--text);padding:0 12px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.auth-form input:focus{border-color:var(--accent-border-strong);background:var(--input-focus-bg);color:var(--input-focus-text);box-shadow:0 0 0 3px var(--accent-wash)}.auth-form input:disabled{cursor:not-allowed;opacity:.46}.auth-submit{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;border-radius:8px;background:var(--accent);color:var(--accent-ink);cursor:pointer;font-size:14px;font-weight:780;text-decoration:none;transition:filter .18s ease,opacity .18s ease,transform .18s ease}.auth-secondary{background:transparent;color:var(--text);border:1px solid var(--line)}.credit-badge{border:1px solid rgb(var(--accent-rgb) / .2);background:var(--accent-soft);color:var(--text);border-radius:8px;padding:10px 12px;font-size:13px}.credit-badge{display:flex;align-items:center;justify-content:space-between;gap:12px}.credit-badge strong{color:var(--accent)}.auth-submit:hover:not(:disabled),.auth-submit:focus-visible:not(:disabled){filter:brightness(1.06);outline:0;transform:translateY(-1px)}.auth-submit:disabled{cursor:not-allowed;opacity:.46}.auth-error{border:1px solid rgb(var(--danger-rgb) / .28);border-radius:8px;background:var(--danger-soft);color:var(--danger);padding:10px 12px;font-size:13px;line-height:1.5}.redeem-dialog{width:min(100%,460px)}.redeem-form{margin-top:20px}.redeem-credit-badge{background:linear-gradient(135deg,var(--accent-panel),rgb(var(--accent-rgb) / .04)),var(--surface-control)}.auth-success{border:1px solid var(--success-border);border-radius:8px;background:var(--success-soft);color:var(--success);padding:10px 12px;font-size:13px;line-height:1.5}.redeem-note{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.announcement-dialog{width:min(100%,560px)}.announcement-dialog-content{margin-top:20px}.announcement-dialog-list{display:grid;max-height:min(420px,calc(100dvh - 330px));gap:10px;overflow:auto;padding-right:2px}.announcement-dialog-item{display:grid;gap:10px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-control);padding:12px}.announcement-dialog-item-head{display:grid;min-width:0;grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:10px}.announcement-dialog-item-head>div{display:grid;min-width:0;gap:4px}.announcement-dialog-item-head strong{overflow:hidden;color:var(--text-strong);font-size:15px;font-weight:820;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.announcement-dialog-item-head span:not(.account-notification-icon):not(.account-notification-type-pill){color:var(--muted);font-size:12px;line-height:1.4}.announcement-dialog-item p{margin:0;color:var(--text);font-size:13px;line-height:1.65;white-space:pre-wrap}.announcement-dialog-item time{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.announcement-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.account-center-dialog{width:min(1180px,calc(100vw - 40px));max-height:min(820px,calc(100dvh - 40px));overflow:hidden;border-color:rgb(var(--accent-rgb) / .28);background:var(--surface-dialog);padding:0;box-shadow:var(--shadow-lg)}.account-center-close{top:18px;right:18px;z-index:5;background:var(--surface-control)}.account-center{display:grid;min-height:min(720px,calc(100dvh - 84px));max-height:inherit;grid-template-columns:250px minmax(0,1fr);gap:22px;overflow:hidden;padding:22px}.account-center-sidebar{display:flex;min-width:0;min-height:0;flex-direction:column;gap:18px}.account-center-title{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;padding:8px 0}.account-center-title-icon{display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;border-radius:8px;background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 -12px 24px rgb(var(--shadow-rgb) / .18)}.account-center-title h2{margin:0;color:var(--text-strong);font-size:22px;font-weight:820;letter-spacing:0;line-height:1.15}.account-center-title p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.account-center-nav{display:grid;align-content:start;gap:8px;min-height:0;flex:1 1 auto;overflow:auto;padding:2px 0}.account-center-nav-item{display:grid;width:100%;min-height:52px;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:12px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;padding:0 14px;text-align:left;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base)}.account-center-nav-item svg{color:currentColor;stroke-width:2.2}.account-center-nav-item span{overflow:hidden;font-size:15px;font-weight:760;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.account-center-nav-item.is-active{border-color:rgb(var(--accent-rgb) / .18);background:linear-gradient(90deg,rgb(var(--accent-rgb) / .16),rgb(var(--accent-rgb) / .05)),rgb(var(--accent-rgb) / .04);color:var(--accent)}.account-center-nav-item:focus-visible,.account-center-logout:focus-visible{outline:0;box-shadow:var(--focus-ring)}.account-center-logout{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;font-size:14px;font-weight:760;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base),transform var(--motion-base)}.account-center-logout:hover:not(:disabled){border-color:var(--accent-border);background:var(--surface-hover);color:var(--accent);transform:translateY(-1px)}.account-center-logout:disabled{cursor:not-allowed;opacity:.5}.account-center-content{display:grid;min-width:0;min-height:0;align-content:start;gap:16px;overflow:auto;overscroll-behavior:contain;padding:48px 2px 18px 0}.account-center-error{margin-right:54px}.account-profile-panel{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) minmax(240px,300px);align-items:center;gap:20px;border:1px solid var(--border-muted);border-radius:8px;background:linear-gradient(135deg,#ffffff09,#ffffff03),var(--surface-panel);padding:24px}.account-profile-identity{display:flex;min-width:0;align-items:center;gap:20px}.account-profile-avatar{display:inline-flex;width:78px;height:78px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:50%;background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 -16px 28px rgb(var(--shadow-rgb) / .14)}.account-profile-copy{min-width:0}.account-profile-name-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.account-profile-name-row strong{color:var(--text-strong);font-size:20px;font-weight:820;line-height:1.2}.account-profile-role{display:inline-flex;min-height:24px;align-items:center;gap:4px;border:1px solid rgb(var(--accent-rgb) / .28);border-radius:6px;background:rgb(var(--accent-rgb) / .14);color:var(--accent);padding:2px 8px;font-size:12px;font-weight:780;line-height:1}.account-profile-meta{display:grid;gap:8px;margin:0;color:var(--muted);font-size:13px;line-height:1.45}.account-profile-meta div{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:4px}.account-profile-meta dt,.account-profile-meta dd{margin:0}.account-profile-meta dd{display:inline-flex;min-width:0;align-items:center;gap:8px;color:var(--text)}.account-profile-copy-icon{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border:1px solid rgb(var(--accent-rgb) / .18);border-radius:6px;color:var(--accent)}.account-balance-panel{display:grid;min-width:0;justify-items:end;gap:12px;color:var(--muted);text-align:right}.account-balance-panel>span{font-size:13px;font-weight:700}.account-balance-panel strong{color:var(--accent);font-size:28px;font-weight:880;letter-spacing:0;line-height:1.1}.account-balance-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.account-invite-cta{display:inline-flex;min-height:38px;align-items:center;justify-content:center;border-radius:8px;background:var(--accent);color:var(--accent-ink);padding:0 24px;font-size:13px;font-weight:820;line-height:1;white-space:nowrap}.account-balance-link{display:inline-flex;min-height:38px;align-items:center;gap:7px;color:var(--text);font-size:13px;font-weight:720;white-space:nowrap}.account-balance-admin-link{display:inline-flex;min-height:38px;align-items:center;gap:7px;border:1px solid rgb(var(--accent-rgb) / .28);border-radius:8px;background:rgb(var(--accent-rgb) / .08);color:var(--accent);padding:0 14px;font-size:13px;font-weight:780;white-space:nowrap;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base)}.account-balance-admin-link:hover,.account-balance-admin-link:focus-visible{border-color:var(--accent-border);background:rgb(var(--accent-rgb) / .14);color:var(--accent);outline:0}.account-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.account-stat-card{display:grid;min-width:0;min-height:134px;align-content:space-between;gap:12px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-dialog);padding:18px}.account-stat-label{display:inline-flex;min-width:0;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:740}.account-stat-icon{display:inline-flex;width:28px;height:28px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-control)}.account-stat-card strong{overflow-wrap:anywhere;font-size:24px;font-weight:880;line-height:1.1}.account-stat-card small{margin-left:4px;font-size:13px;font-weight:740}.account-stat-action{display:inline-flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:13px;font-weight:700}.account-stat-card-gold strong,.account-stat-card-gold .account-stat-icon{color:var(--accent)}.account-stat-card-violet strong,.account-stat-card-violet .account-stat-icon{color:var(--code-function)}.account-stat-card-green strong,.account-stat-card-green .account-stat-icon{color:var(--success)}.account-stat-card-blue strong,.account-stat-card-blue .account-stat-icon{color:var(--info)}.account-quick-panel{display:grid;gap:14px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);padding:18px}.account-quick-panel h3{margin:0;color:var(--text-strong);font-size:15px;font-weight:820;letter-spacing:0}.account-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px}.account-quick-item{appearance:none;display:grid;min-width:0;min-height:68px;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-dialog);padding:12px;color:var(--text);font:inherit;text-align:left}.account-quick-item.is-interactive{cursor:pointer;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base),transform var(--motion-base)}.account-quick-item.is-interactive:hover,.account-quick-item.is-interactive:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--accent);outline:0;transform:translateY(-1px)}.account-quick-item.is-interactive:focus-visible{box-shadow:var(--focus-ring)}.account-quick-icon{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:8px;color:var(--accent)}.account-quick-text{display:grid;min-width:0;gap:4px}.account-quick-text strong{overflow:hidden;color:var(--text-strong);font-size:13px;font-weight:820;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.account-quick-text small{overflow:hidden;color:var(--muted);font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.account-invite-banner{position:relative;display:flex;min-height:92px;align-items:center;justify-content:space-between;gap:22px;overflow:hidden;border:1px solid var(--primary-border);border-radius:8px;background:linear-gradient(90deg,var(--primary-soft),var(--surface-dialog) 58%,var(--primary-soft));padding:18px 26px}.account-invite-banner:after{position:absolute;right:176px;bottom:-26px;width:188px;height:118px;background-image:url(/assets/img/gifbox.png);background-repeat:no-repeat;background-position:center bottom;background-size:contain;content:"";opacity:.82;pointer-events:none}.account-invite-banner>div,.account-invite-cta{position:relative;z-index:1}.account-invite-banner>div{display:grid;min-width:0;gap:8px}.account-invite-banner strong{color:var(--text-strong);font-size:18px;font-weight:860;line-height:1.25}.account-invite-banner span{color:var(--text);font-size:13px;line-height:1.45}.account-invite-banner b{color:var(--accent);font-weight:860}.account-points-board{gap:14px}.account-points-head{min-height:0}.account-points-banner{display:grid;min-height:86px;grid-template-columns:minmax(210px,250px) minmax(0,1fr);align-items:center;gap:16px;padding:10px 18px}.account-points-banner:after{right:18px;bottom:-18px;width:142px;height:104px;background-image:url(/assets/img/points.png);background-position:right bottom;background-size:contain;opacity:.34}.account-points-banner>.account-points-banner-main{display:grid;min-width:0;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px}.account-points-banner-media{display:flex;min-width:0;align-items:center;justify-content:center}.account-points-banner-icon{display:inline-flex;width:54px;height:54px;align-items:center;justify-content:center;border:1px solid rgb(var(--accent-rgb) / .24);border-radius:50%;background:#ffffff6b;color:var(--accent);box-shadow:inset 0 -10px 18px rgb(var(--shadow-rgb) / .08)}.account-points-banner .account-points-banner-icon,.account-points-banner .account-points-banner-icon svg{color:var(--accent);stroke:currentColor}.account-points-banner-copy{display:grid;min-width:0;align-content:center;gap:3px}.account-points-banner-copy>span{color:var(--muted);font-size:12px;font-weight:760}.account-points-banner-copy strong{display:inline-flex;min-width:0;align-items:baseline;gap:6px;color:var(--accent);font-size:32px;font-weight:880;letter-spacing:0;line-height:1;white-space:nowrap}.account-points-banner-copy small{color:var(--text);font-size:13px;font-weight:760;line-height:1;white-space:nowrap}.account-points-banner>.account-points-banner-stats{position:relative;z-index:1;display:grid;flex:1 1 auto;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:0}.account-points-banner-stat{display:grid;min-width:0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:0 12px}.account-points-banner-stat+.account-points-banner-stat{border-left:1px solid rgb(var(--accent-rgb) / .18)}.account-points-banner-stat-icon{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:8px}.account-points-banner .account-points-banner-stat-icon svg{color:currentColor;stroke:currentColor}.account-points-banner .account-points-banner-stat-icon.account-notification-tone-blue{background:rgb(var(--info-rgb) / .12);color:var(--info)}.account-points-banner .account-points-banner-stat-icon.account-notification-tone-blue svg{color:var(--info)}.account-points-banner .account-points-banner-stat-icon.account-notification-tone-green{background:rgb(var(--success-rgb) / .12);color:var(--success)}.account-points-banner .account-points-banner-stat-icon.account-notification-tone-green svg{color:var(--success)}.account-points-banner .account-points-banner-stat-icon.account-notification-tone-amber{background:rgb(var(--warning-rgb) / .14);color:var(--warning)}.account-points-banner .account-points-banner-stat-icon.account-notification-tone-amber svg{color:var(--warning)}.account-points-banner-stat div{display:grid;min-width:0;gap:4px}.account-points-banner-stat strong{color:var(--text-strong);font-size:13px;font-weight:820;line-height:1.2}.account-points-banner-stat span:last-child{color:var(--muted);font-size:12px;line-height:1.35}.account-points-recharge,.account-points-detail{display:grid;min-width:0;gap:12px}.account-points-section-head{align-items:flex-start;gap:12px}.account-points-section-head h4{margin:0;color:var(--text-strong);font-size:15px;font-weight:820;letter-spacing:0;line-height:1.25}.account-points-section-head p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.4}.account-points-pack-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.account-points-pack{position:relative;display:grid;min-width:0;min-height:60px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-dialog);color:var(--text);cursor:pointer;padding:10px 12px;text-align:left;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base),transform var(--motion-base)}.account-points-pack:hover,.account-points-pack:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);outline:0}.account-points-pack:focus-visible{box-shadow:var(--focus-ring)}.account-points-pack.is-active{border-color:var(--accent-border-strong);background:linear-gradient(135deg,rgb(var(--accent-rgb) / .12),rgb(var(--accent-rgb) / .03)),var(--surface-dialog);color:var(--text-strong)}.account-points-pack-icon{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:50%}.account-points-pack-copy{display:grid;min-width:0;gap:4px}.account-points-pack-copy strong{overflow:hidden;color:var(--text-strong);font-size:13px;font-weight:820;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.account-points-pack-copy span{overflow:hidden;color:var(--muted);font-size:12px;font-weight:720;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.account-points-pack-check{position:absolute;top:8px;right:8px;color:var(--accent)}.account-points-form{display:grid;min-width:0;gap:10px}.account-points-payment-row{display:flex;min-width:0;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:10px}.account-points-payment-group{display:flex;min-width:0;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:8px}.account-points-payment-method{position:relative;display:inline-flex;min-height:42px;align-items:center;gap:8px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;padding:0 12px;font-size:13px;font-weight:760;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base)}.account-points-payment-method input{position:absolute;width:1px;height:1px;opacity:0}.account-points-payment-method.is-active{border-color:var(--accent-border-strong);background:rgb(var(--accent-rgb) / .08);color:var(--text-strong)}.account-points-payment-method:focus-within{box-shadow:var(--focus-ring)}.account-points-payment-icon{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border-radius:6px}.account-points-payment-radio{width:16px;height:16px;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface-dialog)}.account-points-payment-method.is-active .account-points-payment-radio{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 4px var(--surface-dialog)}.account-points-voucher-row{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.account-points-custom-field{display:grid;min-width:0;gap:6px;grid-template-columns:auto minmax(120px,150px);align-items:center}.account-points-voucher-field{display:flex;min-width:0;align-items:center;gap:8px}.account-points-custom-field span,.account-points-voucher-field>span{color:var(--muted);font-size:12px;font-weight:760;white-space:nowrap}.account-points-custom-field input,.account-points-voucher-input input{min-width:0;border:0;background:transparent;color:var(--text);font:inherit;outline:0}.account-points-custom-field input{min-height:42px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);padding:0 12px}.account-points-custom-field input:focus-visible{border-color:var(--accent-border);box-shadow:var(--focus-ring)}.account-points-voucher-input{display:grid;flex:1 1 auto;min-height:42px;min-width:0;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);color:var(--accent);padding:0 12px}.account-points-voucher-input:focus-within{border-color:var(--accent-border);box-shadow:var(--focus-ring)}.account-points-form-actions{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.account-points-submit{display:inline-flex;flex:0 0 auto;min-height:42px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;background:var(--accent);color:var(--accent-ink);cursor:pointer;padding:0 18px;font-size:13px;font-weight:820;white-space:nowrap;transition:filter var(--motion-base),opacity var(--motion-base),transform var(--motion-base)}.account-points-submit:hover:not(:disabled),.account-points-submit:focus-visible:not(:disabled){filter:brightness(1.06);outline:0;transform:translateY(-1px)}.account-points-submit:focus-visible{box-shadow:var(--focus-ring)}.account-points-submit:disabled{cursor:not-allowed;opacity:.5}.account-points-toolbar{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.account-points-detail-heading{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:12px}.account-points-tabs{display:flex;flex-wrap:wrap;gap:6px}.account-points-tab{display:inline-flex;min-height:36px;align-items:center;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);cursor:pointer;padding:0 10px;font-size:13px;font-weight:760}.account-points-tab:hover,.account-points-tab:focus-visible{color:var(--text);outline:0}.account-points-tab.is-active{border-bottom-color:var(--accent);color:var(--accent)}.account-points-tab:focus-visible{border-radius:8px;box-shadow:var(--focus-ring)}.account-points-type{position:relative;display:inline-flex;align-items:center}.account-points-type select{min-width:132px;min-height:38px;appearance:none;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;padding:0 34px 0 12px;font:inherit;font-size:13px}.account-points-type select:focus-visible{border-color:var(--accent-border);outline:0;box-shadow:var(--focus-ring)}.account-points-type svg{position:absolute;right:10px;color:var(--muted);pointer-events:none}.account-points-table{min-width:0;overflow:hidden;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-dialog)}.account-points-table-head,.account-points-row{display:grid;min-width:0;grid-template-columns:156px 112px minmax(0,1fr) 94px 82px;align-items:center;gap:10px}.account-points-table-head{min-height:38px;background:var(--surface-control);color:var(--muted);padding:0 12px;font-size:12px;font-weight:780}.account-points-table-head span:nth-child(4),.account-points-table-head span:nth-child(5){text-align:right}.account-points-table-body{max-height:210px;overflow:auto;scrollbar-width:thin}.account-points-row{min-height:42px;border-top:1px solid var(--border-subtle);padding:6px 12px;color:var(--text);font-size:13px}.account-points-row:first-child{border-top:0}.account-points-row-time,.account-points-row-balance,.account-points-row-change{font-variant-numeric:tabular-nums}.account-points-row-time,.account-points-row-balance{color:var(--muted)}.account-points-row-type{display:inline-flex;min-width:0;align-items:center;gap:8px}.account-points-row-type span:last-child,.account-points-row-desc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-points-row-icon{display:inline-flex;width:26px;height:26px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:7px}.account-points-row-change,.account-points-row-balance{text-align:right}.account-points-row-change{font-weight:600}.account-points-row-change.is-income{color:var(--success)}.account-points-row-change.is-expense{color:var(--danger)}.account-points-empty{min-height:180px}.account-points-foot{gap:10px}.account-workbench{display:grid;min-width:0;gap:16px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-dialog);padding:20px}.account-workbench-head{display:flex;min-width:0;align-items:flex-end;justify-content:space-between;gap:16px}.account-workbench-head h3{margin:0;color:var(--text-strong);font-size:22px;font-weight:820;letter-spacing:0;line-height:1.15}.account-workbench-head p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.account-workbench-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.account-workbench-action{display:inline-flex;min-height:40px;align-items:center;gap:8px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;padding:0 14px;font-size:13px;font-weight:760;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base),opacity var(--motion-base)}.account-workbench-action:hover:not(:disabled),.account-workbench-action:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--accent);outline:0}.account-workbench-action.is-danger{border-color:#ef44443d;color:var(--danger)}.account-workbench-action.is-danger:hover:not(:disabled),.account-workbench-action.is-danger:focus-visible{border-color:#ef44446b;background:#ef444414;color:var(--danger)}.account-workbench-action:disabled{cursor:not-allowed;opacity:.5}.account-notification-board{min-height:0}.account-notification-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border-subtle);padding-top:4px}.account-notification-tabs{display:flex;flex-wrap:wrap;gap:6px}.account-notification-tab{display:inline-flex;min-height:38px;align-items:center;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);cursor:pointer;padding:0 12px;font-size:14px;font-weight:760}.account-notification-tab:hover,.account-notification-tab:focus-visible{color:var(--text);outline:0}.account-notification-tab.is-active{border-bottom-color:var(--accent);color:var(--accent)}.account-notification-tab:focus-visible{border-radius:8px;box-shadow:var(--focus-ring)}.account-notification-type{position:relative;display:inline-flex;align-items:center}.account-notification-type select{min-width:160px;appearance:none;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;padding:0 34px 0 14px;min-height:40px;font:inherit}.account-notification-type select:focus-visible{border-color:var(--accent-border);outline:0;box-shadow:var(--focus-ring)}.account-notification-type svg{position:absolute;right:12px;color:var(--muted);pointer-events:none}.account-notification-list{display:grid;min-height:0;max-height:min(430px,calc(100dvh - 360px));overflow:auto;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-dialog);scrollbar-width:thin}.account-notification-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:10px;border-bottom:1px solid var(--border-subtle);padding:11px 14px}.account-notification-item:last-child{border-bottom:0}.account-notification-item.is-expanded{background:linear-gradient(90deg,rgb(var(--accent-rgb) / .05),transparent 70%)}.account-notification-check{display:inline-flex;width:24px;align-items:flex-start;justify-content:center;padding-top:4px}.account-notification-check input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.account-notification-main{display:grid;min-width:0;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;text-align:left}.account-notification-main:focus-visible{border-radius:8px;box-shadow:var(--focus-ring);outline:0}.account-notification-icon{display:inline-flex;width:36px;height:36px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-control);color:var(--accent)}.account-notification-tone-blue{background:#3b82f61f;color:var(--info)}.account-notification-tone-green{background:#10b9811f;color:var(--success)}.account-notification-tone-violet{background:#8b5cf61f;color:var(--code-function)}.account-notification-tone-gold{background:#f59e0b24;color:var(--warning)}.account-notification-tone-orange,.account-notification-tone-amber{background:#f973161f;color:#f97316}.account-notification-copy{display:grid;min-width:0;gap:4px;padding-top:0}.account-notification-headline{display:inline-flex;min-width:0;align-items:center;gap:6px;max-width:100%}.account-notification-headline strong{overflow:hidden;color:var(--text-strong);min-width:0;font-size:15px;font-weight:820;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.account-notification-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--accent)}.account-notification-summary{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.account-notification-expand{opacity:0;transform:translateY(-1px);transition:opacity var(--motion-base),color var(--motion-base),transform var(--motion-base);color:var(--accent);font-size:11px;font-weight:760;white-space:nowrap}.account-notification-main:hover .account-notification-expand,.account-notification-main:focus-visible .account-notification-expand{opacity:1;transform:translateY(0)}.account-notification-meta{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:10px;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;text-align:right}.account-notification-type-pill{display:inline-flex;min-height:22px;align-items:center;border:1px solid transparent;border-radius:var(--radius);background:rgb(var(--accent-rgb) / .08);color:var(--accent);padding:0 8px;font-size:11px;font-weight:760;white-space:nowrap}.account-notification-type-system{border-color:#3b82f61f;background:#3b82f61f;color:var(--info)}.account-notification-type-activity{border-color:#10b9811f;background:#10b9811f;color:var(--success)}.account-notification-type-announcement{border-color:#8b5cf61f;background:#8b5cf61f;color:var(--code-function)}.account-notification-type-points{border-color:#f973161f;background:#f973161f;color:#f97316}.account-notification-delete{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.account-notification-delete:hover,.account-notification-delete:focus-visible{border-color:#ef444447;background:#ef444414;color:var(--danger);outline:0}.account-notification-delete:focus-visible{box-shadow:var(--focus-ring)}.account-notification-detail{grid-column:2 / -1;margin-left:52px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-control);padding:10px 12px}.account-notification-detail p{margin:0;color:var(--text);font-size:12px;line-height:1.45}.account-empty-state{display:flex;align-items:center;gap:12px;padding:16px;color:var(--muted)}.account-empty-icon{display:inline-flex;width:40px;height:40px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-control);color:var(--accent)}.account-empty-state strong{display:block;color:var(--text-strong);font-size:14px;font-weight:820;line-height:1.25}.account-empty-state p{margin:4px 0 0;font-size:12px;line-height:1.45}.account-workbench-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.account-settings-board{gap:18px}.account-settings-head{align-items:flex-start}.account-settings-security-card{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;align-items:center;gap:12px}.account-settings-security-icon{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:50%;background:#10b9811f;color:var(--success)}.account-settings-security-card strong{display:block;color:var(--text-strong);font-size:15px;font-weight:820;line-height:1.3}.account-settings-security-card strong span{color:var(--success)}.account-settings-security-card p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.account-settings-group{display:grid;gap:12px}.account-settings-group h4{margin:0;color:var(--text-strong);font-size:15px;font-weight:820;letter-spacing:0}.account-settings-list{display:grid;overflow:hidden;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-dialog)}.account-settings-item{display:grid;min-width:0;grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:10px;border-bottom:1px solid var(--border-subtle);padding:11px 14px}.account-settings-item.is-expanded{align-items:start;background:var(--surface-control)}.account-settings-item:last-child{border-bottom:0}.account-settings-item.is-danger{grid-template-columns:36px minmax(0,1fr) auto}.account-settings-item-icon{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-control);color:var(--accent)}.account-settings-item-icon.is-blue{background:#3b82f61f;color:var(--info)}.account-settings-item-icon.is-violet{background:#8b5cf61f;color:var(--code-function)}.account-settings-item-icon.is-green{background:#10b9811f;color:var(--success)}.account-settings-item-icon.is-orange,.account-settings-item-icon.is-danger{background:#ef44441f;color:var(--danger)}.account-settings-item-copy{display:grid;min-width:0;gap:4px}.account-settings-item-copy strong{color:var(--text-strong);font-size:14px;font-weight:820;line-height:1.3}.account-settings-item-copy p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:12px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.account-settings-item-meta{display:inline-flex;align-items:center;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.account-settings-bindings{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.account-settings-binding-dot{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-control);color:var(--accent)}.account-settings-item-action,.account-settings-item-danger,.account-settings-help-action{display:inline-flex;min-height:30px;align-items:center;justify-content:center;gap:4px;border:0;background:transparent;color:var(--accent);cursor:pointer;font-size:13px;font-weight:760;white-space:nowrap}.account-settings-item-action svg{transition:transform var(--motion-base)}.account-settings-item-action.is-open svg{transform:rotate(90deg)}.account-settings-item-action:hover,.account-settings-item-action:focus-visible,.account-settings-help-action:hover,.account-settings-help-action:focus-visible{color:var(--text);outline:0}.account-settings-item-action:focus-visible,.account-settings-item-danger:focus-visible,.account-settings-help-action:focus-visible{box-shadow:var(--focus-ring);border-radius:8px}.account-settings-item-action:disabled{cursor:not-allowed;opacity:.46}.account-settings-item-body{display:grid;grid-column:2 / -1;gap:10px;margin-left:0;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-control);padding:12px}.account-settings-inline-form{gap:12px}.account-settings-inline-grid{display:grid;min-width:0;gap:12px}.account-settings-inline-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.account-settings-inline-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.account-settings-inline-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.account-settings-inline-actions .auth-submit{min-height:40px;padding:0 14px}.account-settings-item-danger{color:var(--danger)}.account-settings-item-danger:hover,.account-settings-item-danger:focus-visible{color:var(--danger);opacity:.82;outline:0}.account-settings-help{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgb(var(--accent-rgb) / .18);border-radius:8px;background:linear-gradient(90deg,rgb(var(--accent-rgb) / .08),var(--surface-dialog));padding:12px 14px}.account-settings-help>div{display:flex;min-width:0;align-items:flex-start;gap:12px}.account-settings-help-icon{display:inline-flex;width:32px;height:32px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:50%;background:rgb(var(--accent-rgb) / .12);color:var(--accent)}.account-settings-help strong{display:block;color:var(--text-strong);font-size:14px;font-weight:820;line-height:1.3}.account-settings-help p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.account-settings-help-action{min-height:40px;gap:8px;border:1px solid var(--accent-border);border-radius:8px;background:var(--surface-control);padding:0 14px}.user-login-body{position:relative;min-height:100dvh;overflow:auto;isolation:isolate;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg);color:var(--text-strong)}.user-login-background{position:fixed;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.user-login-body:before{position:fixed;inset:0;z-index:1;background:radial-gradient(circle at 15% 20%,rgb(var(--accent-rgb) / .12),transparent 32%),radial-gradient(circle at 85% 15%,var(--border-muted),transparent 28%),linear-gradient(160deg,var(--overlay-media),var(--surface-control) 52%,var(--surface-panel));content:"";pointer-events:none}.user-login-body.has-login-background:before{background:radial-gradient(circle at 15% 20%,rgb(var(--accent-rgb) / .16),transparent 34%),radial-gradient(circle at 85% 15%,rgba(255,255,255,.1),transparent 30%),linear-gradient(160deg,var(--overlay-scrim),var(--overlay-scrim) 52%,var(--surface-control))}.user-login-page .backdrop{position:relative;z-index:2;display:grid;width:min(100%,1120px);min-height:78vh;grid-template-columns:1.1fr .9fr;overflow:hidden;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-glint);box-shadow:0 40px 120px rgb(var(--shadow-rgb) / .45);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px)}.user-login-page .stage{position:relative;overflow:hidden;padding:56px}.user-login-page .stage:before{position:absolute;right:-60px;bottom:-80px;width:220px;height:220px;background:radial-gradient(circle,rgb(var(--accent-rgb) / .18),transparent 70%);content:"";filter:blur(6px);pointer-events:none}.user-login-page .hero{display:flex;flex-direction:column;justify-content:space-between;gap:32px;border-right:1px solid var(--border-subtle)}.user-login-page .login-brand-mark{display:inline-flex;width:fit-content;max-width:100%;align-items:center;gap:12px;margin-bottom:34px;color:var(--text-strong);font-size:16px;font-weight:760}.user-login-page .login-brand-icon{display:inline-grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--primary-hover));color:var(--text-on-primary);font-size:12px;font-weight:860}.user-login-page .eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;letter-spacing:.18em;text-transform:uppercase}.user-login-page .eyebrow-dot{width:8px;height:8px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--primary-hover));box-shadow:0 0 18px rgb(var(--accent-rgb) / .5)}.user-login-page h1{margin:18px 0 14px;color:var(--text-strong);font-size:clamp(36px,4vw,56px);letter-spacing:0;line-height:1.05}.user-login-page .lead{max-width:34rem;color:var(--muted);font-size:16px;line-height:1.8}.user-login-page .feature-list{display:grid;gap:14px;margin-top:28px}.user-login-page .feature{display:grid;grid-template-columns:42px 1fr;align-items:start;gap:14px;padding:14px 16px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-glint)}.user-login-page .feature-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:var(--border-subtle);font-size:18px}.user-login-page .feature strong{display:block;margin-bottom:4px;font-size:14px}.user-login-page .feature span{color:var(--muted);font-size:13px;line-height:1.6}.user-login-page .login-panel{display:flex;align-items:center;justify-content:center}.user-login-page .login-card{width:min(100%,420px);padding:32px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-dialog);box-shadow:var(--shadow-md)}.user-login-page .login-card h2{margin:0 0 8px;color:var(--text-strong);font-size:28px;letter-spacing:0}.user-login-page .login-card p{margin:0 0 22px;color:var(--muted);font-size:14px;line-height:1.7}.user-login-page .login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px;padding:4px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-glint)}.user-login-page .login-tabs a{display:grid;min-height:38px;place-items:center;border-radius:6px;color:var(--muted);font-size:13px;font-weight:700}.user-login-page .login-tabs a.is-active{background:var(--accent-soft);color:var(--accent)}.user-login-page .login-form-panel{display:none}.user-login-page .login-form-panel.is-active{display:block}.user-login-page label{display:block;margin:0 0 8px;color:var(--muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.user-login-page .field{margin-bottom:18px}.user-login-page input{width:100%;padding:14px 15px;border:1px solid var(--border-muted);border-radius:8px;outline:0;background:var(--surface-input);color:var(--text);font-size:15px}.user-login-page input:focus{border-color:rgb(var(--accent-rgb) / .75);background:var(--input-focus-bg);color:var(--input-focus-text);box-shadow:0 0 0 4px rgb(var(--accent-rgb) / .12)}.user-login-page button{width:100%;padding:14px 18px;border:0;border-radius:8px;background:linear-gradient(135deg,var(--primary-soft),var(--accent));color:var(--text-on-primary);box-shadow:0 18px 38px rgb(var(--accent-rgb) / .25);cursor:pointer;font-size:15px;font-weight:700}.user-login-page .error-box{margin-bottom:16px;padding:12px 14px;border:1px solid var(--danger-border);border-radius:8px;background:var(--danger-soft);color:var(--danger);font-size:13px;line-height:1.6}.user-login-page .footer-note{margin-top:16px;color:var(--muted-2);font-size:12px;line-height:1.6}.auth-form-disabled{opacity:.72}.app-body{position:relative;display:grid;grid-template-columns:312px minmax(0,1fr);height:100%;min-height:0;overflow:hidden;background:var(--bg);transition:grid-template-columns .22s ease}.app-shell.sidebar-collapsed .app-body{grid-template-columns:72px minmax(0,1fr)}.frontend-toast-stack{position:fixed;z-index:90;display:grid;width:min(360px,calc(100vw - 32px));gap:10px;pointer-events:none}.frontend-toast-stack[data-position=top-right]{top:78px;right:18px}.frontend-toast-stack[data-position=center]{top:50%;left:50%;transform:translate(-50%,-50%)}.frontend-toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;overflow:hidden;border:1px solid rgb(var(--accent-rgb) / .32);border-radius:8px;background:var(--surface-dialog);box-shadow:var(--shadow-md);color:var(--text);padding:12px;pointer-events:auto}.frontend-toast[data-type=success]{border-color:rgb(var(--success-rgb) / .42);background:var(--success-soft)}.frontend-toast[data-type=error]{border-color:rgb(var(--danger-rgb) / .42);background:var(--danger-soft)}.frontend-toast[data-type=warning]{border-color:rgb(var(--accent-rgb) / .38);background:var(--warning-soft)}.frontend-toast[data-type=info]{border-color:rgb(var(--info-rgb) / .38);background:var(--info-soft)}.frontend-toast-icon{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-control);color:var(--accent)}.frontend-toast[data-type=success] .frontend-toast-icon{color:var(--success)}.frontend-toast[data-type=error] .frontend-toast-icon{color:var(--danger)}.frontend-toast[data-type=info] .frontend-toast-icon{color:var(--info)}.frontend-toast-body{display:grid;min-width:0;gap:3px}.frontend-toast-body strong{overflow:hidden;color:var(--text-strong);font-size:13px;font-weight:780;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.frontend-toast-body span{color:var(--muted);font-size:12px;line-height:1.45}.frontend-toast button{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.frontend-toast button:hover,.frontend-toast button:focus-visible{background:var(--surface-control);color:var(--text)}.frontend-sidebar{display:flex;min-width:0;min-height:0;height:100dvh;flex-direction:column;gap:16px;margin:0;overflow:hidden;border-right:1px solid var(--line);background:var(--surface-base);box-shadow:none;padding:16px 14px}.sidebar-brand{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--border-subtle)}.sidebar-brand-main{display:inline-flex;min-width:0;align-items:center;gap:10px}.sidebar-brand-logo-toggle{position:relative;width:44px;height:44px;justify-content:center;border:0;border-radius:8px;background:transparent;cursor:pointer;padding:0}.sidebar-brand-logo-toggle:focus-visible{outline:0;box-shadow:var(--focus-ring)}.sidebar-brand-hover-icon{position:absolute;inset:4px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-control);color:var(--accent);opacity:0;transition:opacity var(--motion-fast)}.sidebar-brand-logo-toggle:hover .sidebar-brand-hover-icon,.sidebar-brand-logo-toggle:focus-visible .sidebar-brand-hover-icon{opacity:1}.sidebar-brand-title{min-width:0;overflow:hidden;color:var(--text);font-size:17px;font-weight:820;letter-spacing:0;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.sidebar-collapse-button,.sidebar-theme-toggle{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast)}.sidebar-collapse-button:hover,.sidebar-collapse-button:focus-visible,.sidebar-theme-toggle:hover,.sidebar-theme-toggle:focus-visible{background:var(--surface-hover);color:var(--accent);outline:0}.sidebar-collapse-button:focus-visible,.sidebar-theme-toggle:focus-visible{box-shadow:var(--focus-ring)}.sidebar-search-button{display:inline-flex;width:44px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--surface-control);color:var(--muted);cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease}.sidebar-search-button:hover,.sidebar-search-button:focus-visible{border-color:var(--accent-border);background:var(--panel-strong);color:var(--text);outline:0}.sidebar-nav-panel{display:grid;min-height:236px;align-content:start;gap:10px}.sidebar-nav{min-width:0}.sidebar-nav-list{display:grid;min-height:0;gap:9px;margin:0;padding:0;list-style:none}.sidebar-nav-item-shell{min-width:0}.frontend-sidebar.is-anonymous .sidebar-nav-panel{min-height:auto}.sidebar-new-button,.sidebar-nav-item,.sidebar-recent-item{display:inline-flex;width:100%;min-width:0;min-height:50px;align-items:center;gap:12px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;padding:0 16px;text-align:left;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.sidebar-new-button{justify-content:center;border-color:var(--border-subtle);background:var(--surface-control);color:var(--text);font-size:16px;font-weight:740}.sidebar-nav-item{font-size:15px;font-weight:700}.sidebar-nav-item-shell{display:block}.sidebar-new-button:hover,.sidebar-new-button:focus-visible,.sidebar-nav-item:hover,.sidebar-nav-item:focus-visible,.sidebar-nav-item.active{border-color:var(--accent-border);background:linear-gradient(90deg,rgb(var(--accent-rgb) / .16),rgb(var(--accent-rgb) / .03)),var(--surface-control);color:var(--accent);outline:0;box-shadow:inset 0 0 0 1px var(--accent-soft)}.sidebar-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-recent{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;gap:12px;padding-top:10px;border-top:1px solid var(--border-subtle)}.sidebar-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px;font-weight:720}.sidebar-recent-list{display:grid;gap:8px;min-height:0;overflow-y:auto;padding-right:2px}.sidebar-recent-item{display:grid;grid-template-columns:18px minmax(0,1fr) auto 18px;min-height:50px;background:var(--surface-subtle);cursor:default;padding:0 10px}.sidebar-recent-primary{display:grid;width:100%;min-width:0;min-height:48px;grid-column:1 / 4;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:12px;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;text-align:left}.sidebar-recent-primary:focus-visible{outline:0}.sidebar-recent-primary>span{min-width:0;overflow:hidden;color:inherit;text-overflow:ellipsis;white-space:nowrap}.sidebar-recent-item time{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.sidebar-recent-item:hover,.sidebar-recent-item:focus-visible,.sidebar-recent-item:focus-within,.sidebar-recent-item.active,.sidebar-recent-item[data-state=active]{border-color:var(--accent-border);background:var(--accent-soft);color:var(--text);outline:0}.sidebar-recent-item.active{color:var(--text)}.sidebar-recent-actions{position:relative;display:inline-flex;width:30px;height:30px;min-width:30px;align-items:center;justify-content:center;justify-self:center;overflow:visible}.sidebar-recent-menu,.sidebar-recent-delete{position:absolute;inset:0;width:30px;height:30px;border:0;background:transparent;color:inherit;opacity:.68;transition:color var(--motion-fast),opacity var(--motion-fast),transform var(--motion-fast)}.sidebar-recent-menu:hover,.sidebar-recent-menu:focus-visible{color:var(--text);opacity:1}.sidebar-recent-delete{color:var(--danger);opacity:0;pointer-events:none;transform:scale(.92)}.sidebar-recent-item[data-actions=open] .sidebar-recent-menu{opacity:0;pointer-events:none;transform:scale(.92)}.sidebar-recent-item[data-actions=open] .sidebar-recent-delete{opacity:1;pointer-events:auto;transform:scale(1)}.sidebar-recent-delete:hover,.sidebar-recent-delete:focus-visible{color:var(--danger);opacity:1}.sidebar-account-dock{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--border-subtle)}.sidebar-account-button{display:grid;min-width:0;min-height:48px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;padding:4px;text-align:left;transition:border-color var(--motion-base),background var(--motion-base),color var(--motion-base)}.sidebar-account-button:hover,.sidebar-account-button:focus-visible{border-color:var(--accent-border);background:var(--surface-hover);color:var(--text);outline:0}.sidebar-account-avatar{position:relative;display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:50%;background:var(--accent);color:var(--accent-ink)}.sidebar-account-copy{display:grid;min-width:0;gap:2px}.sidebar-account-copy strong,.sidebar-account-copy span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account-copy strong{color:var(--text);font-size:14px;font-weight:780;line-height:1.2}.sidebar-account-copy span{color:var(--muted);font-size:12px;font-weight:650;line-height:1.2}.app-shell.sidebar-collapsed .frontend-sidebar{align-items:center;padding:14px 10px}.app-shell.sidebar-collapsed .sidebar-brand{width:100%;grid-template-columns:1fr;justify-items:center;gap:8px;padding-bottom:12px}.app-shell.sidebar-collapsed .sidebar-brand-main{justify-content:center}.app-shell.sidebar-collapsed .sidebar-brand-title{display:none}.app-shell.sidebar-collapsed .sidebar-nav-panel{width:100%;justify-items:center}.app-shell.sidebar-collapsed .sidebar-new-button,.app-shell.sidebar-collapsed .sidebar-nav-item{position:relative;width:48px;height:48px;min-height:48px;justify-content:center;overflow:hidden;border-color:transparent;background:transparent;color:var(--muted);padding:0;box-shadow:none;transition:color var(--motion-fast)}.app-shell.sidebar-collapsed .sidebar-new-button:before,.app-shell.sidebar-collapsed .sidebar-nav-item:before,.app-shell.sidebar-collapsed .sidebar-account-button:before{position:absolute;inset:4px;z-index:0;border-radius:8px;background:var(--surface-control);content:"";opacity:0;transition:opacity var(--motion-fast)}.app-shell.sidebar-collapsed .sidebar-new-button>svg,.app-shell.sidebar-collapsed .sidebar-nav-item>svg,.app-shell.sidebar-collapsed .sidebar-account-avatar{position:relative;z-index:1}.app-shell.sidebar-collapsed .sidebar-new-button:hover,.app-shell.sidebar-collapsed .sidebar-new-button:focus-visible,.app-shell.sidebar-collapsed .sidebar-nav-item:hover,.app-shell.sidebar-collapsed .sidebar-nav-item:focus-visible,.app-shell.sidebar-collapsed .sidebar-nav-item.active,.app-shell.sidebar-collapsed .sidebar-account-button:hover,.app-shell.sidebar-collapsed .sidebar-account-button:focus-visible{border-color:transparent;background:transparent;color:var(--accent);outline:0;box-shadow:none}.app-shell.sidebar-collapsed .sidebar-new-button:hover:before,.app-shell.sidebar-collapsed .sidebar-new-button:focus-visible:before,.app-shell.sidebar-collapsed .sidebar-nav-item:hover:before,.app-shell.sidebar-collapsed .sidebar-nav-item:focus-visible:before,.app-shell.sidebar-collapsed .sidebar-nav-item.active:before,.app-shell.sidebar-collapsed .sidebar-account-button:hover:before,.app-shell.sidebar-collapsed .sidebar-account-button:focus-visible:before{opacity:1}.app-shell.sidebar-collapsed .sidebar-new-button:focus-visible,.app-shell.sidebar-collapsed .sidebar-nav-item:focus-visible,.app-shell.sidebar-collapsed .sidebar-account-button:focus-visible{box-shadow:var(--focus-ring)}.app-shell.sidebar-collapsed .sidebar-nav-item-shell{display:flex;justify-content:center}.app-shell.sidebar-collapsed .sidebar-label,.app-shell.sidebar-collapsed .sidebar-recent,.app-shell.sidebar-collapsed .sidebar-account-copy{display:none}.app-shell.sidebar-collapsed .sidebar-account-dock{width:100%;grid-template-columns:1fr;justify-items:center;gap:8px}.app-shell.sidebar-collapsed .sidebar-account-button{position:relative;display:inline-flex;width:48px;height:48px;justify-content:center;overflow:hidden;border-color:transparent;background:transparent;color:var(--muted);padding:0;box-shadow:none;transition:color var(--motion-fast)}.workspace{position:relative;display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);min-height:0;overflow:hidden;background:var(--bg);gap:16px;padding:18px 22px}.composer-panel,.preview-panel{min-height:0;border:1px solid var(--line);border-radius:8px;background:var(--surface-dialog);box-shadow:var(--shadow)}.composer-panel{display:flex;flex-direction:column;gap:8px;padding:10px;overflow-y:auto}.chat-workspace{display:grid;grid-column:1 / -1;min-width:0;min-height:0}.chat-panel{position:relative;display:grid;min-width:0;min-height:0;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none}.chat-scrollport{display:grid;min-width:0;min-height:0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.chat-scrollport::-webkit-scrollbar{display:none;width:0;height:0}.chat-floating-controls{position:absolute;top:10px;left:12px;z-index:20;display:flex;max-width:min(240px,calc(100% - 24px));align-items:center;justify-content:flex-start;pointer-events:none}.chat-scroll-bottom-button{position:absolute;left:50%;bottom:calc(var(--chat-composer-offset, 116px) + 14px);z-index:21;display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);background:var(--surface-base);box-shadow:0 12px 32px rgb(var(--shadow-rgb) / .34);color:var(--text);cursor:pointer;opacity:0;pointer-events:none;transform:translate(-50%) translateY(8px);transition:opacity var(--motion-fast),transform var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast)}.chat-scroll-bottom-button.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.chat-scroll-bottom-button:hover,.chat-scroll-bottom-button:focus-visible{border-color:var(--accent-border);color:var(--accent);outline:0}.chat-composer-area{display:grid;min-width:0}.chat-model-picker{display:inline-flex;min-width:0;align-items:center;gap:8px;pointer-events:auto}.chat-model-trigger{display:inline-flex;width:40px;height:40px;min-width:40px;align-items:center;justify-content:center;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;font:inherit;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none;touch-action:manipulation;transition:border-color var(--motion-fast),background var(--motion-fast),color var(--motion-fast)}.chat-model-trigger:hover:not(:disabled),.chat-model-picker.is-open .chat-model-trigger{border-color:var(--accent-border);background:var(--surface-hover);outline:0}.chat-model-trigger:focus-visible:not(:disabled){border-color:var(--accent-border);outline:0;box-shadow:var(--focus-ring)}.chat-model-trigger:disabled{cursor:not-allowed;opacity:.52}.chat-model-trigger-label{min-width:0;max-width:0;overflow:hidden;color:var(--muted);font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap;opacity:0;transform:translate(-4px);transition:max-width var(--motion-fast),opacity var(--motion-fast),transform var(--motion-fast)}.chat-model-picker:hover .chat-model-trigger-label,.chat-model-picker:focus-within .chat-model-trigger-label,.chat-model-picker.is-open .chat-model-trigger-label{max-width:180px;opacity:1;transform:translate(0)}.chat-model-menu{position:fixed;z-index:3000;display:grid;gap:6px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface-dialog);padding:6px;box-shadow:0 18px 48px rgb(var(--shadow-rgb) / .34);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.chat-model-options{display:grid;max-height:inherit;gap:4px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.chat-model-options::-webkit-scrollbar{display:none;width:0;height:0}.chat-model-option{display:grid;min-height:42px;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;font:inherit;padding:0 8px;text-align:left;touch-action:manipulation}.chat-model-option span{min-width:0;overflow:hidden;font-size:13px;font-weight:720;text-overflow:ellipsis;white-space:nowrap}.chat-model-option:hover,.chat-model-option:focus-visible,.chat-model-option.active{border-color:rgb(var(--accent-rgb) / .22);background:rgb(var(--accent-rgb) / .08);outline:0}.chat-model-option.active{color:var(--accent)}.chat-model-option svg:last-child{justify-self:end}.chat-model-menu,.chat-image-dialog{pointer-events:auto}.chat-message-list{display:flex;min-height:100%;width:min(980px,calc(100% - 48px));flex-direction:column;gap:16px;margin:0 auto;padding:10px 0 calc(12px + var(--chat-anchor-reserve, 0px))}.chat-message-list.is-empty{width:min(960px,calc(100% - 48px));align-items:stretch;justify-content:center}.chat-turn{display:flex;width:100%;align-items:flex-start;gap:10px}.chat-turn.is-user{justify-content:flex-end}.chat-avatar{display:inline-flex;width:34px;height:34px;flex:0 0 34px;align-items:center;justify-content:center;border:1px solid var(--border-muted);border-radius:50%;background:var(--surface-control);color:var(--text)}.chat-turn.is-assistant .chat-message{width:100%;max-width:none;border-color:transparent;background:transparent;padding:0;box-shadow:none}.chat-message{position:relative;display:grid;width:fit-content;max-width:min(720px,72%);gap:8px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-dialog);min-width:0;overflow-wrap:anywhere;word-break:break-word;padding:10px 12px}.chat-turn.is-user .chat-message{width:fit-content;max-width:100%;border-color:rgb(var(--accent-rgb) / .22);background:var(--accent-wash)}.chat-message-stack{display:flex;min-width:0;max-width:min(720px,calc(100% - 44px));flex:0 1 auto;flex-direction:column;gap:6px;align-items:flex-start}.chat-turn.is-user .chat-message-stack{max-width:min(720px,calc(100% - 44px));align-items:flex-end}.chat-message-stack>.chat-message{max-width:100%}.chat-message p{margin:0;color:var(--text);font-size:16px;line-height:1.55;white-space:pre-wrap}.chat-message-error{width:fit-content;max-width:min(720px,100%);white-space:normal;overflow-wrap:anywhere}.chat-reasoning,.msg-reasoning{display:grid;width:min(100%,760px);gap:10px;padding:2px 0 4px;background:transparent;color:var(--muted);font-size:12px;line-height:1.5}.chat-reasoning summary,.msg-reasoning-toggle{display:inline-flex;width:max-content;max-width:100%;min-width:0;height:24px;align-items:center;gap:4px;border:0;border-radius:6px;background:transparent;box-shadow:none;color:var(--muted);cursor:pointer;font-size:12px;font-weight:560;letter-spacing:0;line-height:1;list-style:none;white-space:nowrap}.chat-reasoning summary::-webkit-details-marker{display:none}.chat-reasoning summary svg,.msg-reasoning-toggle svg{width:12px;height:12px;flex:0 0 auto;color:var(--muted-2);opacity:.72;transition:transform var(--motion-fast),color var(--motion-fast)}.chat-reasoning:not([open]) summary svg,.msg-reasoning.is-collapsed .msg-reasoning-toggle svg{transform:rotate(-90deg)}.chat-reasoning summary:hover,.chat-reasoning summary:focus-visible,.msg-reasoning-toggle:hover,.msg-reasoning-toggle:focus-visible{color:var(--text);outline:none}.msg-reasoning-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.msg-reasoning-toggle time{color:var(--muted-2);font-variant-numeric:tabular-nums}.chat-reasoning-body,.msg-reasoning-body{margin-left:10px;border-left:1.5px solid var(--border-muted);padding-left:14px;color:var(--muted);font-size:12px;line-height:1.8;white-space:pre-wrap}.msg-reasoning.is-collapsed .msg-reasoning-body{display:none}.chat-retry-notice{margin:0;color:var(--muted-2);font-size:12px;line-height:1.45}.chat-message-actions{position:absolute;bottom:-32px;left:0;display:inline-flex;gap:4px;z-index:2;opacity:0;pointer-events:none;transition:opacity var(--motion-fast),transform var(--motion-fast);transform:translateY(2px)}.chat-turn.is-user .chat-message-actions{right:0;left:auto}.chat-message:hover .chat-message-actions,.chat-message:focus-within .chat-message-actions{opacity:1;pointer-events:auto;transform:translateY(0)}.chat-message-actions button{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-panel);color:var(--muted);cursor:pointer;padding:0;touch-action:manipulation}.chat-message-actions button:hover:not(:disabled),.chat-message-actions button:focus-visible:not(:disabled){border-color:var(--accent-border);color:var(--accent);outline:0}.chat-message-actions button:disabled{cursor:not-allowed;opacity:.44}.chat-content{display:grid;min-width:0;gap:10px}.chat-markdown{min-width:0;overflow-wrap:anywhere;word-break:break-word}.chat-markdown h3,.chat-markdown h4,.chat-markdown h5{margin:2px 0 0;color:var(--text-strong);font-size:16px;line-height:1.35}.chat-markdown ul,.chat-markdown ol{display:grid;gap:6px;margin:0;padding-left:22px}.chat-markdown li{color:var(--text);font-size:15px;line-height:1.55}.chat-markdown blockquote{margin:0;border-left:3px solid rgb(var(--accent-rgb) / .48);color:var(--muted);padding:2px 0 2px 12px}.chat-inline-link{color:var(--accent);overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px;word-break:break-word}.chat-citation-link{display:inline-flex;min-width:24px;min-height:22px;align-items:center;justify-content:center;gap:3px;border:1px solid rgb(var(--accent-rgb) / .22);border-radius:var(--radius-md);background:rgb(var(--accent-rgb) / .08);color:var(--accent);font-size:12px;font-weight:820;line-height:1;max-width:100%;padding:0 6px;text-decoration:none;vertical-align:.08em;overflow-wrap:anywhere;word-break:break-word}.chat-citation-link:hover,.chat-citation-link:focus-visible,.chat-inline-link:hover,.chat-inline-link:focus-visible{outline:0;filter:brightness(1.12)}.chat-markdown p code,.chat-markdown li code{border:1px solid var(--border-muted);border-radius:6px;background:var(--surface-control);color:var(--accent);overflow-wrap:anywhere;padding:1px 5px;font-family:Consolas,SFMono-Regular,monospace;font-size:.92em;word-break:break-word}.chat-table-scroll{max-width:100%;overflow-x:auto;scrollbar-width:thin}.chat-markdown table{width:100%;min-width:420px;border-collapse:collapse;overflow:hidden;border:1px solid var(--border-muted);border-radius:8px}.chat-markdown th,.chat-markdown td{border-bottom:1px solid var(--border-subtle);color:var(--text);padding:8px 10px;font-size:13px;line-height:1.45;text-align:left;vertical-align:top}.chat-markdown th{background:var(--surface-control);color:var(--text-strong);font-weight:760}.chat-code-block{display:grid;max-width:100%;overflow:hidden;margin:0;border:1px solid var(--border-muted);border-radius:8px;background:var(--code-bg)}.chat-code-block figcaption{display:flex;min-height:36px;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border-subtle);color:var(--muted);padding:0 10px;font-size:12px;font-weight:720}.chat-code-block button{display:inline-flex;min-height:28px;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border-muted);border-radius:7px;background:var(--surface-control);color:var(--text);cursor:pointer;padding:0 8px;font-size:12px;font-weight:720}.chat-code-block button:hover,.chat-code-block button:focus-visible{border-color:var(--accent-border);color:var(--accent);outline:0}.chat-code-block pre{max-width:100%;overflow-x:auto;margin:0;padding:12px}.chat-code-block code{color:var(--code-text);font-family:Consolas,SFMono-Regular,monospace;font-size:13px;line-height:1.6;white-space:pre}.chat-code-token.comment{color:var(--code-comment);font-style:italic}.chat-code-token.string{color:var(--code-string)}.chat-code-token.number,.chat-code-token.boolean{color:var(--code-number)}.chat-code-token.color{color:var(--code-color)}.chat-code-token.keyword{color:var(--code-keyword);font-weight:720}.chat-code-token.function{color:var(--code-function)}.chat-code-token.tag,.chat-code-token.attr{color:var(--code-tag)}.chat-code-token.operator{color:var(--code-operator)}.chat-media-frame,.chat-media-video{display:grid;width:min(100%,480px);max-height:480px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);overflow:hidden}.chat-media-frame{position:relative}.chat-media-preview{appearance:none;border:0;border-radius:inherit;background:transparent;color:inherit;cursor:zoom-in;display:grid;font:inherit;overflow:hidden;padding:0;touch-action:manipulation;width:100%}.chat-media-frame:hover,.chat-media-frame:focus-within{border-color:var(--accent-border);outline:0}.chat-media-preview img,.chat-media-video{width:100%;max-height:480px;object-fit:contain}.chat-media-download{position:absolute;right:8px;bottom:8px;display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);background:var(--overlay-control);color:var(--text-inverse);cursor:pointer;opacity:0;text-decoration:none;touch-action:manipulation;transition:opacity var(--motion-fast),transform var(--motion-fast);z-index:1}.chat-media-frame:hover .chat-media-download,.chat-media-frame:focus-within .chat-media-download{opacity:1;transform:translateY(-1px)}.chat-media-download:hover,.chat-media-download:focus-visible{outline:0;box-shadow:var(--focus-ring)}.chat-artifact-strip{display:grid;width:min(100%,520px);min-width:0;gap:8px}.chat-artifact-tile{display:grid;grid-template-columns:48px minmax(0,1fr) 34px;min-height:64px;align-items:center;gap:10px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-panel);padding:7px}.chat-artifact-preview,.chat-artifact-file,.chat-artifact-download{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;padding:0;text-decoration:none;touch-action:manipulation}.chat-artifact-preview,.chat-artifact-file{width:48px;height:48px;overflow:hidden}.chat-artifact-preview img{display:block;width:100%;height:100%;object-fit:contain}.chat-artifact-file{flex-direction:column;gap:2px;color:var(--muted);font-size:10px;font-weight:780}.chat-artifact-copy{display:grid;min-width:0;gap:3px}.chat-artifact-name,.chat-artifact-meta{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-artifact-name{color:var(--text-strong);font-size:13px;font-weight:760}.chat-artifact-meta{color:var(--muted-2);font-size:12px}.chat-artifact-download{width:34px;height:34px;color:var(--muted)}.chat-artifact-tile:hover,.chat-artifact-tile:focus-within{border-color:var(--accent-border)}.chat-artifact-preview:focus-visible,.chat-artifact-file:focus-visible,.chat-artifact-download:focus-visible{outline:0;box-shadow:var(--focus-ring)}.chat-artifact-download:hover,.chat-artifact-download:focus-visible{color:var(--accent)}.chat-attachment-strip{display:flex;min-width:0;flex-wrap:wrap;gap:8px}.chat-composer-attachments{width:min(980px,calc(100% - 32px));justify-self:center;margin:0 0 6px}.chat-message-attachments{max-width:100%;justify-content:flex-end}.chat-attachment-tile{position:relative;display:grid;width:60px;height:60px;overflow:hidden;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-panel)}.chat-attachment-tile.is-uploading{opacity:.72}.chat-attachment-tile.is-error{border-color:rgb(var(--danger-rgb) / .42)}.chat-attachment-thumb,.chat-attachment-file{display:grid;width:100%;height:100%;place-items:center;border:0;background:transparent;color:var(--text);cursor:pointer;padding:0;text-decoration:none}.chat-attachment-thumb img{width:100%;height:100%;object-fit:cover}.chat-attachment-file{gap:2px;color:var(--muted);font-size:10px;font-weight:780}.chat-attachment-file:not(a){cursor:default}.chat-attachment-name,.chat-attachment-state{position:absolute;right:3px;left:3px;overflow:hidden;border-radius:5px;background:rgb(var(--shadow-rgb) / .62);color:var(--text-inverse);font-size:9px;line-height:16px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.chat-attachment-name{bottom:3px}.chat-attachment-state{top:3px}.chat-attachment-remove{position:absolute;top:2px;right:2px;display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border:1px solid var(--border-muted);border-radius:var(--radius-md);background:rgb(var(--shadow-rgb) / .68);color:var(--text-inverse);cursor:pointer;padding:0}.chat-attachment-thumb:focus-visible,.chat-attachment-file:focus-visible,.chat-attachment-remove:focus-visible{outline:0;box-shadow:var(--focus-ring)}.chat-image-dialog{position:fixed;inset:0;z-index:4200;display:grid;place-items:center;background:rgb(var(--shadow-rgb) / .76)}.chat-image-dialog-panel{position:relative;display:grid;max-width:min(1440px,calc(100vw - 32px));max-height:min(960px,calc(100dvh - 32px));overflow:hidden;border-radius:var(--radius-md);background:var(--surface-deep);box-shadow:0 28px 90px rgb(var(--shadow-rgb) / .62)}.chat-image-dialog-panel img{display:block;max-width:100%;max-height:min(960px,calc(100dvh - 32px));object-fit:contain}.chat-image-dialog-close{position:absolute;top:10px;right:10px;display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:var(--radius-md);background:rgb(var(--shadow-rgb) / .64);color:var(--text-inverse);cursor:pointer;font:inherit;touch-action:manipulation;z-index:1}.chat-image-dialog-close:hover,.chat-image-dialog-close:focus-visible{outline:0;box-shadow:var(--focus-ring)}.chat-stopped{color:var(--muted-2);font-size:12px}.chat-user-fold{display:grid;min-width:0}.chat-user-fold summary{display:grid;gap:8px;cursor:pointer;min-width:0;list-style:none}.chat-user-fold summary::-webkit-details-marker{display:none}.chat-user-preview{display:-webkit-box;min-width:0;max-height:132px;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:6;color:var(--text);font-size:14px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.chat-user-expand{justify-self:end;color:var(--accent);font-size:12px;font-weight:760}.chat-user-fold[open] .chat-user-preview{display:none}.chat-user-fold[open]>.chat-content{margin-top:10px}.chat-user-fold[open] .chat-user-expand{justify-self:start}.chat-welcome{position:relative;isolation:isolate;display:grid;width:100%;min-height:330px;align-items:center;overflow:visible;padding:16px 0 24px;text-align:left}.chat-welcome-copy{position:relative;z-index:2;display:grid;width:min(540px,58%);min-width:0;gap:18px}.chat-welcome h2{display:flex;min-width:0;flex-wrap:wrap;align-items:baseline;gap:.28em;margin:0;color:var(--text);font-size:52px;font-weight:840;letter-spacing:0;line-height:1.12;text-shadow:none}.chat-welcome h2 strong{color:var(--accent);font:inherit;text-shadow:none}.chat-welcome-wave{display:inline-block;flex:0 0 auto;color:var(--accent);filter:none;transform:translateY(.06em) rotate(-10deg)}.chat-welcome-subtitle{color:var(--muted);font-size:22px;font-weight:700;line-height:1.45}.chat-welcome p{max-width:31rem;margin:0;color:var(--muted);font-size:18px;line-height:1.9}.chat-welcome-visual{position:absolute;top:50%;right:8px;z-index:1;width:min(420px,44%);min-width:0;height:460px;opacity:.94;pointer-events:none;transform:translateY(-50%)}.chat-welcome-panel{position:absolute;right:16px;bottom:38px;width:min(340px,100%);height:178px;border:1px solid var(--border-muted);border-radius:8px;background:linear-gradient(180deg,var(--surface-raised),var(--surface-control)),var(--surface-control);box-shadow:var(--shadow-md)}.chat-welcome-panel:before{position:absolute;inset:44px 42px 62px 30px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-input);box-shadow:var(--shadow-sm);content:""}.chat-welcome-bubble{position:absolute;top:4px;left:44px;display:flex;width:98px;height:52px;align-items:center;gap:10px;border-radius:8px;background:var(--surface-raised);padding:0 26px;box-shadow:var(--shadow-sm)}.chat-welcome-bubble:after{position:absolute;left:0;bottom:-12px;width:18px;height:18px;background:linear-gradient(135deg,var(--surface-raised) 50%,transparent 50%);content:""}.chat-welcome-bubble span{width:8px;height:8px;border-radius:50%;background:var(--accent-border-strong)}.chat-welcome-profile{position:absolute;top:122px;right:14px;display:grid;width:min(258px,calc(100% - 48px));min-height:96px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:18px;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-raised);padding:20px 22px;box-shadow:var(--shadow-md)}.chat-welcome-avatar{position:relative;display:inline-grid;width:54px;height:54px;place-items:center;border-radius:50%;background:var(--accent-panel)}.chat-welcome-avatar:before,.chat-welcome-avatar:after,.chat-welcome-avatar span{position:absolute;border-radius:var(--radius-md);background:var(--accent);content:""}.chat-welcome-avatar:before{top:14px;width:16px;height:16px}.chat-welcome-avatar:after{right:13px;bottom:12px;left:13px;height:18px}.chat-welcome-avatar span{display:none}.chat-welcome-lines{display:grid;min-width:0;gap:10px}.chat-welcome-lines i{display:block;height:7px;border-radius:var(--radius-md);background:rgb(var(--accent-rgb) / .52)}.chat-welcome-lines i:nth-child(2){width:78%;background:var(--accent-muted)}.chat-welcome-lines i:nth-child(3){width:56%;background:var(--border-muted)}.chat-welcome-input{position:absolute;right:0;bottom:0;display:grid;width:min(378px,100%);height:72px;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:18px;border:1px solid var(--border-muted);border-radius:var(--radius-md);background:var(--surface-raised);padding:0 26px;box-shadow:var(--shadow-md)}.chat-welcome-input span{height:30px;border-radius:var(--radius-md);background:var(--border-muted)}.chat-welcome-input i{position:relative;display:block;width:34px;height:34px;border-radius:50%;background:rgb(var(--accent-rgb) / .56)}.chat-welcome-input i:before,.chat-welcome-input i:after{position:absolute;background:var(--accent-ink);content:""}.chat-welcome-input i:before{top:8px;left:16px;width:2px;height:17px;border-radius:var(--radius-md)}.chat-welcome-input i:after{top:9px;left:11px;width:10px;height:10px;border-top:2px solid var(--accent-ink);border-left:2px solid var(--accent-ink);background:transparent;transform:rotate(45deg)}.chat-welcome-spark{position:absolute;width:18px;height:18px}.chat-welcome-spark:before,.chat-welcome-spark:after{position:absolute;inset:0;margin:auto;background:rgb(var(--accent-rgb) / .74);content:""}.chat-welcome-spark:before{width:3px;height:18px}.chat-welcome-spark:after{width:18px;height:3px}.chat-welcome-spark-one{top:82px;right:28px}.chat-welcome-spark-two{top:126px;left:12px;opacity:.64;transform:scale(.72)}.chat-welcome-spark-three{top:172px;right:138px;opacity:.48;transform:scale(.58)}.chat-composer{display:grid;width:min(980px,calc(100% - 32px));justify-self:center;gap:4px;margin:0 0 10px;border:1px solid var(--composer-border);border-radius:8px;background:var(--composer-bg);padding:6px;box-shadow:var(--shadow-sm);transition:border-color var(--motion-fast),box-shadow var(--motion-fast),background var(--motion-fast)}.chat-composer:focus-within{border-color:var(--accent-border-strong)}.chat-error{border:1px solid rgb(var(--danger-rgb) / .28);border-radius:8px;background:rgb(var(--danger-rgb) / .1);color:var(--danger);padding:8px 10px;font-size:13px;line-height:1.45}.chat-composer textarea{width:100%;min-height:68px;max-height:180px;resize:none;border:0;border-radius:8px;outline:0;background:var(--surface-input);color:var(--text);overflow-y:hidden;padding:10px 4px 8px;font-size:14px;line-height:1.5}.chat-composer textarea:focus{background:var(--surface-input)}.prompt-textarea{min-height:176px;max-height:min(320px,38dvh);overflow-y:hidden;resize:none}.negative-prompt-textarea{min-height:76px;max-height:160px;resize:none}.negative-prompt-textarea:disabled{cursor:not-allowed;opacity:.55}.chat-composer textarea::placeholder{color:var(--muted)}.chat-composer-footer{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.chat-tool-row{display:flex;min-width:0;flex-wrap:nowrap;gap:6px}.chat-tool-chip{display:inline-flex;min-height:36px;align-items:center;gap:7px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-control);color:var(--muted);cursor:pointer;font:inherit;padding:0 10px;font-size:13px;font-weight:680;touch-action:manipulation}.chat-tool-chip:hover:not(:disabled),.chat-tool-chip:focus-visible:not(:disabled){border-color:var(--accent-border);color:var(--accent);outline:0}.chat-tool-chip:disabled{cursor:not-allowed;opacity:.48}.chat-send-area{display:inline-flex;align-items:center;gap:8px}.chat-count{color:var(--muted-2);font-size:12px;font-variant-numeric:tabular-nums}.chat-send-button{display:inline-flex;width:38px;min-width:38px;min-height:38px;align-items:center;justify-content:center;border:0;border-radius:8px;background:var(--accent);color:var(--accent-ink);cursor:pointer;font-weight:780;padding:0;transition:filter var(--motion-fast),opacity var(--motion-fast),box-shadow var(--motion-fast)}.chat-send-button:hover:not(:disabled),.chat-send-button:focus-visible:not(:disabled){outline:0;box-shadow:var(--focus-ring);filter:brightness(1.06)}.chat-send-button:disabled{cursor:not-allowed;opacity:.44}.chat-send-button.is-stopping{background:var(--danger);color:var(--text-inverse);opacity:1}.gallery-page{display:grid;grid-column:1 / -1;min-width:0;min-height:0;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;overflow:hidden;padding:16px 18px 18px;border:1px solid var(--line);border-radius:8px;background:radial-gradient(circle at 32% 18%,var(--accent-soft),transparent 42%),var(--surface-panel);box-shadow:var(--shadow)}.gallery-page.is-empty{grid-template-rows:auto minmax(320px,1fr)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text);font-size:14px;font-weight:720}.gallery-page-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.gallery-title-block{display:grid;min-width:0;gap:4px}.gallery-title-block h2{margin:0;color:var(--text);font-size:20px;font-weight:780;letter-spacing:0;line-height:1.2}.gallery-title-block span{color:var(--muted);font-size:12px;font-weight:650}.gallery-pagination{display:flex;align-items:center}.gallery-search{display:inline-flex;align-items:center;flex:1 1 260px;max-width:420px;min-width:min(100%,240px);min-height:44px;gap:8px;padding:0 10px 0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-control);color:var(--muted);transition:border-color .18s ease,background .18s ease,color .18s ease}.gallery-search:focus-within{border-color:rgb(var(--accent-rgb) / .54);background:var(--accent-wash);color:var(--accent);outline:0}.gallery-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:13px}.gallery-search input::placeholder{color:var(--muted-2)}.gallery-search-trigger,.gallery-search-clear,.gallery-page-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--surface-control);color:var(--muted);cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.gallery-search-trigger,.gallery-search-clear{width:28px;height:28px;flex:0 0 auto;border-color:transparent;background:transparent}.gallery-search-trigger{color:currentColor}.gallery-search-trigger:hover,.gallery-search-trigger:focus-visible,.gallery-search-clear:hover,.gallery-search-clear:focus-visible,.gallery-page-button:hover:not(:disabled),.gallery-page-button:focus-visible:not(:disabled),.gallery-page-button.active{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent);outline:0}.gallery-page-button.active,.gallery-page-button[data-state=active]{background:var(--accent);color:var(--accent-ink)}.gallery-grid{display:grid;max-width:100%;min-height:0;grid-template-columns:repeat(8,minmax(0,1fr));gap:16px;align-content:start;overflow-y:auto;margin:0;padding:0 2px 2px 0;list-style:none}.gallery-grid-item{min-width:0;content-visibility:auto;contain-intrinsic-size:160px 120px}.gallery-tile{position:relative;display:block;width:100%;min-width:0;overflow:hidden;padding:0;border:1px solid var(--border-subtle);border-radius:8px;background:linear-gradient(180deg,var(--surface-glint),transparent 34%),var(--surface-base);cursor:pointer;aspect-ratio:4 / 3;box-shadow:inset 0 1px #ffffff0d,0 12px 30px rgb(var(--shadow-rgb) / .24);touch-action:manipulation;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.gallery-tile:after{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 62%,rgb(var(--shadow-rgb) / .28));content:"";opacity:.72;pointer-events:none;transition:opacity .18s ease}.gallery-tile:hover,.gallery-tile:focus-visible{border-color:var(--accent-border);outline:0;box-shadow:inset 0 1px 0 var(--border-muted),0 18px 42px rgb(var(--shadow-rgb) / .34);transform:translateY(-2px)}.gallery-tile:hover:after,.gallery-tile:focus-visible:after{opacity:.36}.gallery-tile img{display:block;width:100%;height:100%;object-fit:cover;background:var(--surface-deep);transition:transform .22s ease}.gallery-tile:hover img,.gallery-tile:focus-visible img{transform:scale(1.035)}.gallery-empty{width:100%;height:auto;max-width:420px;min-height:260px;align-self:center;justify-self:center;padding:24px}.gallery-pagination{justify-content:center;gap:8px;max-width:100%;min-height:40px;overflow-x:auto;padding-bottom:2px}.gallery-page-button{width:40px;height:40px;flex:0 0 auto;font-size:12px;font-weight:780;line-height:1}.gallery-page-button:disabled{cursor:not-allowed;opacity:.4}.gallery-page-ellipsis{display:inline-flex;width:40px;height:40px;flex:0 0 auto;align-items:center;justify-content:center;color:var(--muted);font-size:12px;font-weight:780}.icon-button{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--panel-strong);color:var(--muted);cursor:pointer;transition:color .18s ease,border-color .18s ease}.icon-button:hover{border-color:var(--accent);color:var(--text)}.field-label,.select-field>span,.aspect-field>span{display:block;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:0}textarea{min-height:168px;resize:vertical;border:1px solid var(--line);border-radius:8px;outline:0;background:var(--surface-input);color:var(--text);padding:12px;line-height:1.55;transition:border-color .18s ease,background .18s ease}textarea:focus{border-color:var(--accent-border-strong);background:var(--input-focus-bg);color:var(--input-focus-text)}textarea::placeholder{color:var(--muted-2)}.upload-card{display:flex;flex-direction:column;gap:10px}.reference-strip{display:block}.reference-strip.has-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:76px;gap:8px}.upload-zone{display:flex;width:100%;min-height:76px;align-items:center;justify-content:center;gap:10px;border:1px dashed var(--border-strong);border-radius:8px;background:var(--surface-input);color:var(--muted);cursor:pointer;transition:border-color .18s ease,color .18s ease,background .18s ease}.upload-zone.compact{height:76px;min-height:0;flex-direction:column;gap:6px;padding:8px;font-size:12px;line-height:1.2;text-align:center}.upload-zone:hover,.upload-zone:focus-visible{border-color:var(--accent-border-strong);background:var(--surface-hover);color:var(--text)}.thumb{position:relative;overflow:hidden;height:76px;border:1px solid var(--line);border-radius:8px;background:var(--surface-deep)}.thumb img{width:100%;height:100%;object-fit:cover}.thumb button{position:absolute;top:5px;right:5px;display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:6px;background:rgb(var(--shadow-rgb) / .72);color:var(--text-inverse);cursor:pointer}.thumb button:hover,.thumb button:focus-visible{background:rgb(var(--shadow-rgb) / .9)}.subthumb-del{display:inline-block;position:absolute;top:6px;right:6px;text-align:center;line-height:20px;background:var(--muted-2);width:18px;height:18px;border-radius:4px}.control-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,112px);gap:10px}.advanced-settings{display:grid}.advanced-settings-summary{display:flex;min-height:22px;align-items:center;justify-content:space-between;gap:10px;border-radius:6px;color:var(--muted);cursor:pointer;list-style:none}.advanced-settings-summary::-webkit-details-marker{display:none}.advanced-settings-summary::marker{content:""}.advanced-settings-summary:focus-visible{outline:2px solid var(--accent-border-strong);outline-offset:4px}.advanced-settings-summary-icon{flex:0 0 auto;transition:transform .18s ease}.advanced-settings[open] .advanced-settings-summary-icon{transform:rotate(180deg)}.advanced-settings-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.advanced-negative-prompt{display:grid;grid-column:1 / -1;gap:7px}.advanced-negative-heading{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px}.advanced-help{position:relative;display:inline-flex;width:24px;height:24px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:50%;color:var(--muted);cursor:help}.advanced-help:hover,.advanced-help:focus-visible{color:var(--accent);outline:0;box-shadow:var(--focus-ring)}.advanced-help-tooltip{position:absolute;right:0;bottom:calc(100% + 10px);z-index:32;display:grid;width:min(360px,calc(100vw - 36px));gap:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-dialog);color:var(--text);padding:12px;box-shadow:0 18px 50px rgb(var(--shadow-rgb) / .38);line-height:1.5;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .16s ease,transform .16s ease}.advanced-help:hover .advanced-help-tooltip,.advanced-help:focus-visible .advanced-help-tooltip,.advanced-help:focus-within .advanced-help-tooltip{opacity:1;transform:translateY(0)}.advanced-help-row{display:grid;grid-template-columns:minmax(96px,auto) minmax(0,1fr);gap:6px;color:var(--muted);font-size:12px}.advanced-help-row strong{color:var(--text);font-weight:760;white-space:nowrap}.select-field{display:grid;gap:7px;min-width:0}.aspect-field{position:relative;display:grid;gap:7px;min-width:0}.select-field select{width:100%;height:42px;min-width:0;border:1px solid var(--line);border-radius:8px;outline:0;background:var(--surface-input);color:var(--text);padding:0 10px;cursor:pointer}.select-field select:focus{border-color:var(--accent-border-strong)}.aspect-select{position:relative}.aspect-trigger{display:grid;width:100%;height:42px;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-input);color:var(--text);padding:0 10px;cursor:pointer}.aspect-trigger[aria-expanded=true]{border-color:var(--accent-border-strong)}.aspect-field.is-disabled>span{opacity:.52}.aspect-trigger:disabled{cursor:not-allowed;opacity:.46}.aspect-trigger-text,.aspect-option-copy>span{display:block;min-width:0;overflow:hidden;color:var(--text);font-size:13px;font-weight:720;line-height:1.15;text-align:left;text-overflow:ellipsis;white-space:nowrap}.aspect-trigger-copy,.aspect-option-copy{display:grid;gap:2px;min-width:0}.aspect-trigger-meta,.aspect-option-copy em{display:block;min-width:0;overflow:hidden;color:var(--muted);font-size:11px;font-style:normal;font-weight:650;line-height:1.15;text-align:left;text-overflow:ellipsis;white-space:nowrap}.aspect-menu{position:fixed;z-index:30;display:grid;gap:4px;border:1px solid var(--line);border-radius:8px;background:var(--surface-dialog);padding:6px;box-shadow:0 18px 50px rgb(var(--shadow-rgb) / .38);box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none}.aspect-menu::-webkit-scrollbar{display:none;width:0;height:0}.aspect-option{display:grid;min-height:42px;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:8px;border-radius:7px;background:transparent;color:var(--muted);padding:6px 8px;cursor:pointer}.aspect-option:hover,.aspect-option:focus-visible,.aspect-option.active{background:var(--panel-strong);color:var(--text);outline:0}.error-box{border:1px solid var(--danger-border);border-radius:8px;background:var(--danger-soft);color:var(--danger);padding:10px 12px;font-size:13px;line-height:1.5}.generate-button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:10px;border-radius:8px;background:var(--accent);color:var(--accent-ink);font-size:15px;font-weight:760;cursor:pointer;transition:opacity .18s ease,transform .18s ease,filter .18s ease}.generate-button:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.generate-button:disabled{cursor:not-allowed;opacity:.44}.preview-panel{display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}.preview-stage{position:relative;display:flex;min-height:0;align-items:center;justify-content:center;overflow:hidden;padding:0;background:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-position:center center;background-size:16px 16px}.preview-stage:before{position:absolute;inset:0;content:"";opacity:.2;pointer-events:none}.empty-state{display:flex;max-width:360px;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted);text-align:center;z-index:1}.empty-icon{display:none;width:64px;height:64px;align-items:center;justify-content:center;border-radius:8px;background:rgb(var(--accent-rgb) / .9);color:var(--accent-ink);transform:rotate(3deg)}.empty-state h2{margin:0;color:var(--text);font-size:18px;font-weight:650;letter-spacing:0}.empty-state p{margin:0;color:var(--muted-2);font-size:14px;line-height:1.6}.empty-state p span{white-space:nowrap}.result-preview{position:relative;width:100%;height:100%;min-width:0;overflow:hidden}.preview-backdrop{position:absolute;inset:0;scale:1.1;background-position:center;background-size:cover;filter:blur(40px) saturate(1.5);opacity:.5}.result-image-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.result-image-wrap img{display:block;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 24px 70px rgb(var(--shadow-rgb) / .45)}.result-preview-text{background:linear-gradient(135deg,var(--surface-panel),var(--surface-deep)),var(--surface-panel)}.result-text-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;min-width:0;padding:32px 32px 112px;overflow:hidden}.result-text-panel{width:min(680px,100%);max-height:100%;overflow:auto;border:1px solid var(--danger-border);border-radius:8px;background:var(--danger-soft);color:var(--text);box-shadow:0 22px 60px rgb(var(--shadow-rgb) / .16);padding:22px 24px}.result-text-label{display:flex;align-items:center;gap:8px;color:var(--danger);font-size:14px;font-weight:650}.result-text-panel p{margin:14px 0 0;color:var(--text);font-size:16px;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap}.preview-arrow{position:absolute;z-index:5;display:inline-flex;width:56px;height:56px;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;opacity:0;transition:opacity .16s ease,transform .16s ease,background .16s ease}.preview-arrow:hover{background:var(--overlay-control)}.preview-arrow:disabled{pointer-events:none;opacity:0}.preview-arrow-left{top:50%;left:16px;transform:translate(-16px,-50%)}.preview-arrow-right{top:50%;right:16px;transform:translate(16px,-50%)}.preview-stage:hover .preview-arrow,.preview-stage:focus-within .preview-arrow{opacity:1;transform:translateY(-50%)}.preview-info{position:absolute;right:0;bottom:0;left:0;z-index:6;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:24px;background:linear-gradient(to top,rgb(var(--shadow-rgb) / .9),rgb(var(--shadow-rgb) / .6),transparent);opacity:0;transform:translateY(100%);transition:opacity .16s ease,transform .16s ease;pointer-events:none}.preview-stage:hover .preview-info,.preview-stage:focus-within .preview-info{opacity:1;transform:translateY(0);pointer-events:auto}.preview-meta{min-width:0;max-width:70%;pointer-events:auto}.preview-meta p{margin:0;overflow:hidden;color:var(--text-inverse);font-size:18px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.preview-meta div{display:flex;align-items:center;gap:10px;margin-top:3px;color:var(--muted);font-size:14px}.preview-actions{display:flex;flex:0 0 auto;gap:8px;pointer-events:auto}.preview-action{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer}.preview-action:hover{background:var(--surface-hover)}.preview-action.danger{color:var(--danger)}.preview-action:disabled{cursor:not-allowed;opacity:.45}.gallery-lightbox{display:block;place-items:initial;padding:72px 72px 32px;overflow:auto;background:rgb(var(--shadow-rgb) / .84)}.gallery-lightbox-close{position:fixed;top:22px;right:22px;z-index:1}.gallery-lightbox-arrow{position:fixed;top:50%;z-index:1;display:inline-flex;width:56px;height:56px;align-items:center;justify-content:center;border:1px solid var(--border-muted);border-radius:8px;background:var(--surface-control);color:var(--text);cursor:pointer;transform:translateY(-50%);transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.gallery-lightbox-arrow:hover,.gallery-lightbox-arrow:focus-visible{border-color:rgb(var(--accent-rgb) / .58);background:var(--surface-panel);color:var(--accent);outline:0}.gallery-lightbox-prev{left:24px}.gallery-lightbox-next{right:24px}.gallery-lightbox-stage{display:flex;width:max-content;min-width:min-content;min-height:calc(100dvh - 104px);align-items:center;justify-content:center;margin:0 auto}.gallery-lightbox-image{display:block;width:auto;height:auto;max-width:none;max-height:none;object-fit:initial;border-radius:8px;background:var(--surface-deep);box-shadow:0 28px 86px rgb(var(--shadow-rgb) / .62)}.loading-state{z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);text-align:center}.loading-state p{margin:-8px 0 0;color:var(--muted);font-family:Consolas,Courier New,monospace;font-size:16px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.black-mirror-loading{--dur: 1.5;position:relative;width:100px;height:100px;filter:blur(1px)}.black-mirror-loading>.part{--position-offset: 0px;position:absolute;top:50%;left:50%;width:8px;height:16px;margin:-8px 0 0 -4px;opacity:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23555' viewBox='0 0 10.347 21.936'%3E %3Cpath d='M8.325 0 .013 3.443A21.5464 21.5464 0 0 1 0 18.501l8.292 3.435A30.5245 30.5245 0 0 0 8.326 0z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;animation:calc(var(--dur) * 1s) linear infinite circle-loading}.black-mirror-loading>.part:first-child{transform:rotate(0) translate(calc(20px + var(--position-offset)));animation-delay:calc(var(--dur) / 8 * 1s)}.black-mirror-loading>.part:nth-child(2){transform:rotate(45deg) translate(calc(20px + var(--position-offset)));animation-delay:calc(var(--dur) / 8 * 2s)}.black-mirror-loading>.part:nth-child(3){transform:rotate(90deg) translate(calc(20px + var(--position-offset)));animation-delay:calc(var(--dur) / 8 * 3s)}.black-mirror-loading>.part:nth-child(4){transform:rotate(135deg) translate(calc(20px + var(--position-offset)));animation-delay:calc(var(--dur) / 8 * 4s)}.black-mirror-loading>.part:nth-child(5){transform:rotate(180deg) translate(calc(20px + var(--position-offset)));animation-delay:calc(var(--dur) / 8 * 5s)}.black-mirror-loading>.part:nth-child(6){transform:rotate(225deg) translate(calc(20px + var(--position-offset)));animation-delay:calc(var(--dur) / 8 * 6s)}.black-mirror-loading>.part:nth-child(7){transform:rotate(270deg) translate(calc(20px + var(--position-offset)));animation-delay:calc(var(--dur) / 8 * 7s)}.black-mirror-loading>.part:nth-child(8){transform:rotate(315deg) translate(calc(20px + var(--position-offset)));animation-delay:calc(var(--dur) / 8 * 8s)}@keyframes circle-loading{0%{--position-offset: 1px;opacity:1;filter:drop-shadow(0 0 6px rgb(var(--shadow-rgb) / .58))}20%{--position-offset: 0px}to{--position-offset: 0px;opacity:.2}}@keyframes pulse{50%{opacity:.5}}.spin{animation:spin .8s linear infinite}.history-strip{display:grid;grid-auto-flow:column;grid-auto-columns:148px;gap:10px;overflow-x:auto;padding:12px;border-top:1px solid var(--line);background:var(--surface-floor)}.history-card{position:relative;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--surface-base);color:var(--muted)}.history-card.active,.history-card[data-state=active]{border-color:var(--accent);color:var(--text)}.history-main{display:grid;width:100%;grid-template-rows:82px 30px;gap:6px;border-radius:8px;background:transparent;color:inherit;padding:6px;text-align:left;cursor:pointer}.history-main img{width:100%;height:82px;object-fit:cover;border-radius:6px;background:var(--surface-deep)}.history-thumb-wrap{position:relative;display:block;min-width:0;height:82px}.history-text-thumb{display:flex;width:100%;height:82px;align-items:center;justify-content:center;border:1px solid var(--danger-border);border-radius:6px;background:var(--danger-soft);color:var(--danger)}.history-main .history-text-thumb span{display:inline-flex;align-items:center;justify-content:center;min-width:0;max-width:calc(100% - 14px);height:24px;overflow:hidden;font-size:12px;font-weight:650;line-height:24px;text-overflow:ellipsis;white-space:nowrap}.history-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:30px}.remove-history{position:absolute;top:10px;right:10px;display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border-radius:6px;background:rgb(var(--shadow-rgb) / .7);color:var(--text-inverse);opacity:0;cursor:pointer;transition:opacity .16s ease}.history-card:hover .remove-history,.history-card:focus-within .remove-history{opacity:1}.sponsor-bar{position:fixed;right:18px;bottom:18px;display:inline-grid;max-width:min(420px,calc(100vw - 36px));grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid rgb(var(--accent-rgb) / .45);border-radius:8px;background:var(--surface-panel);color:var(--text);padding:10px 12px;box-shadow:var(--shadow)}.sponsor-bar span{border-radius:6px;background:var(--accent);color:var(--accent-ink);padding:3px 6px;font-size:11px;font-weight:780}.sponsor-bar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.sponsor-bar em{color:var(--accent);font-size:12px;font-style:normal;font-weight:720}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1180px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr))}}@media(max-width:820px){body{overflow-y:auto}.frontend-toast-stack[data-position=top-right]{top:64px;right:12px;left:12px;width:auto}.app-shell{height:auto;min-height:100dvh;overflow-x:hidden;overflow-y:auto;background:var(--bg)}.app-body,.app-shell.sidebar-collapsed .app-body{grid-template-columns:minmax(0,1fr);height:auto;min-height:100dvh;overflow:visible;background:var(--bg)}.mobile-sidebar-toggle{display:inline-flex}.frontend-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:90;width:min(292px,calc(100vw - 28px));height:100dvh;padding:14px;border-right:1px solid var(--line);box-shadow:18px 0 60px rgb(var(--shadow-rgb) / .18)}.app-shell.sidebar-collapsed .frontend-sidebar{display:none}.app-shell:not(.sidebar-collapsed) .frontend-sidebar{display:flex}.workspace{grid-template-columns:1fr;min-height:100dvh;overflow:visible;background:var(--bg);padding:64px 12px 12px}.workspace-actions{top:12px;right:12px;max-width:calc(100vw - 76px)}.workspace-action-link{max-width:min(220px,calc(100vw - 88px));min-height:44px}.chat-workspace{min-height:min(640px,calc(100dvh - 100px))}.chat-floating-controls{top:8px;left:8px;max-width:44px}.chat-model-trigger{width:44px;height:44px;min-width:44px;padding:0}.chat-scroll-bottom-button{width:34px;height:34px;bottom:calc(var(--chat-composer-offset, 104px) + 12px)}.chat-model-trigger-label{display:none}.composer-panel,.preview-panel{min-height:auto}.preview-panel{grid-template-rows:minmax(420px,54vh) auto}.gallery-page{min-height:auto;overflow:visible;padding:12px}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:10px;overflow:visible}.gallery-lightbox{overflow-x:hidden;overflow-y:auto;padding:64px 12px 18px}.gallery-lightbox-stage{width:100%;min-width:0;min-height:calc(100dvh - 82px)}.gallery-lightbox-image{max-width:100%;max-height:calc(100dvh - 82px);object-fit:contain}.gallery-lightbox-close{top:12px;right:12px}.gallery-lightbox-arrow{width:48px;height:48px}.gallery-lightbox-prev{left:12px}.gallery-lightbox-next{right:12px}.result-preview{max-height:none}.result-text-wrap{padding:20px 16px 96px}.result-text-panel{padding:18px}.result-text-panel p{font-size:14px}.user-login-page .backdrop{grid-template-columns:1fr;min-height:auto}.user-login-page .hero{display:none}.user-login-page .stage{padding:24px}.user-login-page .login-card{width:min(100%,430px)}}@media(prefers-reduced-motion:reduce){.app-body,.frontend-sidebar,.sidebar-new-button,.sidebar-nav-item,.sidebar-recent-item,.topbar-menu.frontend-sidebar-toggle,.sidebar-search-button,.gallery-search,.gallery-search-trigger,.gallery-search-clear,.gallery-page-button,.gallery-tile,.gallery-tile:after,.gallery-tile img,.gallery-lightbox-arrow,.chat-model-trigger,.chat-media-download{transition:none}.gallery-tile:hover,.gallery-tile:focus-visible,.gallery-tile:hover img,.gallery-tile:focus-visible img,.chat-media-frame:hover .chat-media-download,.chat-media-frame:focus-within .chat-media-download{transform:none}}@media(max-width:520px){.brand-mark h1{font-size:17px}.user-avatar-button{width:42px;height:42px}.topbar-custom-menu-link{width:42px;padding:0}.topbar-custom-menu-link span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.workspace-action-link{width:44px;padding:0}.workspace-action-link span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-dialog{max-height:calc(100dvh - 28px);padding:18px}.control-grid,.advanced-settings-panel{grid-template-columns:1fr}.history-strip{grid-auto-columns:124px}.gallery-page{gap:12px;padding:10px}.gallery-page-head{align-items:center;flex-direction:row;gap:10px}.gallery-title-block{flex:1 1 auto}.gallery-search{width:44px;max-width:44px;min-width:44px;flex:0 0 44px;justify-content:center;gap:0;padding:0;overflow:hidden}.gallery-search.is-open,.gallery-search:focus-within{width:100%;max-width:none;min-width:0;flex:1 0 100%;justify-content:flex-start;gap:8px;padding:0 10px 0 8px}.gallery-search input,.gallery-search-clear{display:none}.gallery-search.is-open input,.gallery-search:focus-within input,.gallery-search.is-open .gallery-search-clear,.gallery-search:focus-within .gallery-search-clear{display:inline-flex}.gallery-search.is-open input,.gallery-search:focus-within input{display:block}.gallery-search-trigger{width:42px;height:42px}.gallery-search.is-open .gallery-search-trigger,.gallery-search:focus-within .gallery-search-trigger{width:30px;height:30px}.chat-message{max-width:calc(100% - 50px)}.chat-turn.is-user .chat-message,.chat-turn.is-assistant .chat-message{max-width:100%}.chat-turn.is-user .chat-message-stack{max-width:calc(100% - 44px)}.chat-composer{width:calc(100% - 16px);margin-bottom:8px}.chat-composer-attachments{width:calc(100% - 16px)}.chat-floating-controls{top:8px;left:8px;max-width:44px}.chat-model-trigger{width:44px;height:44px;max-width:44px;padding:0}.chat-model-trigger-label{display:none}.chat-welcome{width:min(100%,calc(100% - 24px));min-height:220px;justify-items:center;padding:22px 0}.chat-welcome-copy{width:min(460px,100%);text-align:center}.chat-welcome-visual{display:none}.chat-welcome h2{font-size:32px;justify-content:center}.chat-welcome p{font-size:14px}.chat-media-frame,.chat-media-video{width:100%;max-height:360px}.chat-media-preview img,.chat-media-video{max-height:360px}.chat-image-dialog{padding:12px}.chat-image-dialog-panel,.chat-image-dialog-panel img{max-height:calc(100dvh - 24px)}.chat-send-area{justify-content:space-between}.chat-send-button{width:38px;min-width:38px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-tile{aspect-ratio:1 / 1}.gallery-pagination{gap:6px}.gallery-page-button,.gallery-page-ellipsis{width:38px;height:38px}.user-login-body{padding:14px}.user-login-page .stage,.user-login-page .login-card{padding:18px}}@media(max-width:1080px){.account-center{grid-template-columns:220px minmax(0,1fr);gap:16px}.account-profile-panel{grid-template-columns:1fr}.account-balance-panel{justify-items:start;text-align:left}.account-balance-actions{justify-content:flex-start}.account-stats-grid,.account-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-points-pack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.account-workbench{padding:18px}.account-settings-security-card{min-width:0}.account-notification-list{max-height:min(480px,calc(100dvh - 300px))}}@media(max-width:820px){.account-center-dialog{width:min(100%,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:0}.account-center{min-height:0;grid-template-columns:1fr;overflow:visible;padding:18px}.account-center-sidebar{min-height:auto}.account-center-title{padding-right:48px}.account-center-nav{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.account-center-nav-item{min-height:48px}.account-center-content{overflow:visible;padding:0}.account-workbench-head,.account-notification-toolbar,.account-settings-head,.account-settings-help{flex-direction:column;align-items:stretch}.account-workbench-actions{justify-content:flex-start}.account-settings-security-card{min-width:0;width:100%}.account-settings-item-body{grid-column:1 / -1;margin-left:0}.account-settings-inline-grid-2,.account-settings-inline-grid-3{grid-template-columns:1fr}.account-notification-list{max-height:min(440px,calc(100dvh - 320px))}.account-center-error{margin-right:0}.account-points-banner{grid-template-columns:1fr;align-items:stretch}.account-points-banner>.account-points-banner-main{min-width:0}.account-points-banner>.account-points-banner-stats{grid-template-columns:1fr}.account-points-banner-stat{padding:10px 0 0}.account-points-banner-stat+.account-points-banner-stat{border-left:0;border-top:1px solid rgb(var(--accent-rgb) / .18)}.account-points-pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-points-payment-row{align-items:center;justify-content:flex-start}.account-points-form-actions,.account-points-toolbar{align-items:stretch;justify-content:flex-start}.account-points-payment-group{width:auto}.account-points-payment-method{flex:1 1 auto;justify-content:center}.account-points-custom-field{grid-template-columns:1fr}.account-points-custom-field input,.account-points-type select{width:100%}.account-points-table-head{display:none}.account-points-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"time change" "type balance" "desc desc";align-items:start;min-height:0}.account-points-row-time{grid-area:time}.account-points-row-type{grid-area:type}.account-points-row-desc{grid-area:desc;white-space:normal}.account-points-row-change{grid-area:change}.account-points-row-balance{grid-area:balance}.account-points-table-body{max-height:210px}.account-invite-banner:after{right:96px;opacity:.42}}@media(max-width:560px){.account-center-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:0}.account-center{padding:14px}.account-center-title{grid-template-columns:44px minmax(0,1fr);gap:10px}.account-center-title-icon{width:44px;height:44px}.account-center-title h2{font-size:19px}.account-center-title p{font-size:12px}.account-workbench{padding:14px}.account-center-nav,.account-stats-grid,.account-quick-grid{grid-template-columns:1fr}.account-profile-panel,.account-quick-panel,.account-stat-card,.account-invite-banner,.account-points-banner{padding:14px}.account-profile-identity{align-items:flex-start;gap:14px}.account-profile-avatar{width:58px;height:58px}.account-balance-actions,.account-invite-banner{align-items:flex-start;flex-direction:column}.account-notification-toolbar{gap:10px}.account-notification-tabs{width:100%}.account-notification-tab{flex:1 1 auto;justify-content:center;min-width:0}.account-notification-type,.account-notification-type select{width:100%}.account-points-pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-points-banner{grid-template-columns:1fr}.account-points-banner>.account-points-banner-main{grid-template-columns:46px minmax(0,1fr);gap:10px}.account-points-banner-icon{width:46px;height:46px}.account-points-banner-copy strong{font-size:28px}.account-points-form-actions{align-items:flex-start}.account-points-submit{width:auto}.account-points-table-body{max-height:210px}.account-notification-list{max-height:min(380px,calc(100dvh - 280px))}.account-notification-item{grid-template-columns:24px minmax(0,1fr);padding:12px}.account-notification-expand,.account-notification-type-pill{display:none}.account-notification-meta{grid-column:2 / -1;grid-auto-flow:column;grid-auto-columns:max-content;justify-items:start;text-align:left}.account-notification-detail{margin-left:0}.account-settings-security-card{grid-template-columns:40px minmax(0,1fr) 18px}.account-settings-list{gap:0}.account-settings-item,.account-settings-item.is-danger{grid-template-columns:36px minmax(0,1fr);align-items:start}.account-settings-item-meta{justify-self:start;white-space:normal}.account-settings-bindings{justify-content:flex-start;justify-self:start}.account-settings-item-action,.account-settings-item-danger{justify-self:start}.account-settings-help{align-items:flex-start}.account-settings-help-action,.account-settings-inline-actions .auth-submit,.announcement-dialog-actions .auth-submit{width:100%}.announcement-dialog-item-head{grid-template-columns:36px minmax(0,1fr)}.announcement-dialog-item-head .account-notification-type-pill{grid-column:2 / -1;justify-self:start}.account-invite-banner:after{right:-10px;bottom:-34px;opacity:.28}.account-points-banner-stat{grid-template-columns:30px minmax(0,1fr)}}
