:root{color:#eef4ff;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#070a12;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font-family:inherit}button{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#263247;border:2px solid #070a12;border-radius:999px}::selection{color:#061018;background:#2ad2a8}.boot-screen,.auth-shell,.app-shell{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070a12;--bg-soft:#0b1220;--panel:#0d1321d1;--panel-strong:#080c16f0;--panel-muted:#ffffff0e;--panel-hover:#ffffff14;--input-bg:#090e19db;--border:#ffffff1a;--border-soft:#ffffff14;--border-strong:#5b8cff57;--text:#eef4ff;--heading:#fff;--muted:#8ea0c3;--faint:#7f8aa3;--accent:#2ad2a8;--accent-rgb:42, 210, 168;--accent-2:#5b8cff;--accent-2-rgb:91, 140, 255;--danger:#ff9d9d;--bubble-user:#1d4ed8;--shadow:0 24px 70px #0000003d;--shadow-soft:0 16px 46px #0000002e;--scrollbar:#8ea0c359;--checker:#ffffff0d;--modal-backdrop:#02060dc7}.auth-shell[data-theme=light],.app-shell[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f7fb;--bg-soft:#edf2f8;--panel:#ffffffe0;--panel-strong:#fffffff5;--panel-muted:#0f172a0b;--panel-hover:#0f172a11;--input-bg:#fffffff0;--border:#0f172a1a;--border-soft:#0f172a14;--border-strong:#2563eb47;--text:#172033;--heading:#0f172a;--muted:#5b687c;--faint:#718096;--accent:#0f9f7a;--accent-rgb:15, 159, 122;--accent-2:#3b82f6;--accent-2-rgb:59, 130, 246;--danger:#c24141;--bubble-user:#2563eb;--shadow:0 18px 44px #0f172a1a;--shadow-soft:0 10px 30px #0f172a14;--scrollbar:#64748b59;--checker:#0f172a0f;--modal-backdrop:#0f172a61}.boot-screen,.auth-shell,.app-shell{min-height:100vh}.boot-screen{color:var(--text);background:var(--bg);place-items:center;display:grid}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-shell{background:radial-gradient(circle at 20% 24%, #5b8cff33, transparent 32%), radial-gradient(circle at 52% 78%, #2ad2a81f, transparent 30%), linear-gradient(135deg, #ffffff09, transparent 38%), var(--bg);color:var(--text);grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);display:grid;position:relative;overflow:hidden}.auth-shell[data-theme=light]{--bg:#eef4ff;--bg-soft:#e5edf8;--panel:#ffffffbd;--panel-strong:#ffffffd6;--panel-muted:#2563eb11;--panel-hover:#2563eb1a;--input-bg:#ffffffdb;--border:#3e4e7029;--border-soft:#3e4e701c;--border-strong:#4f46e552;--text:#172033;--heading:#0b1020;--muted:#526176;--faint:#738095;--accent:#0f9f7a;--accent-rgb:15, 159, 122;--accent-2:#4f46e5;--accent-2-rgb:79, 70, 229;--shadow:0 24px 60px #39486929;--shadow-soft:0 14px 34px #3948691f;background:radial-gradient(circle at 16% 18%,#4f46e533,#0000 32%),radial-gradient(circle at 72% 74%,#14b8a633,#0000 30%),radial-gradient(circle at 46% 34%,#ec48991f,#0000 28%),linear-gradient(135deg,#f8fbff 0%,#edf4ff 46%,#f7efff 100%)}.auth-theme-toggle{z-index:1;width:fit-content;min-height:38px;color:var(--heading);border:1px solid rgba(var(--accent-2-rgb), .22);background:linear-gradient(135deg, rgba(var(--accent-rgb), .12), rgba(var(--accent-2-rgb), .1)), color-mix(in srgb, var(--panel-strong) 76%, transparent);box-shadow:0 14px 34px rgba(var(--accent-2-rgb), .12), inset 0 1px 0 #ffffff14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:4px 10px 4px 5px;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s;display:inline-flex;position:relative}.auth-theme-toggle:after{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(120deg, rgba(var(--accent-rgb), .34), transparent 30%, rgba(var(--accent-2-rgb), .34));opacity:0;transition:opacity .2s;position:absolute;inset:-1px}.auth-theme-toggle:hover{border-color:rgba(var(--accent-2-rgb), .42);box-shadow:0 18px 38px rgba(var(--accent-2-rgb), .18), 0 0 24px rgba(var(--accent-rgb), .12);transform:translateY(-1px)}.auth-theme-toggle:hover:after{opacity:.26}.auth-theme-track{z-index:1;border:1px solid rgba(var(--accent-2-rgb), .2);background:linear-gradient(135deg,#ffffff14,#0000),#ffffff0f;border-radius:999px;grid-template-columns:1fr 1fr;width:58px;height:28px;padding:3px;display:grid;position:relative;box-shadow:inset 0 1px 6px #0003}.auth-theme-option{color:var(--muted);opacity:.6;place-items:center;display:grid}.auth-theme-thumb{color:#061018;background:linear-gradient(135deg, var(--accent), var(--accent-2));width:22px;height:22px;box-shadow:0 8px 18px rgba(var(--accent-2-rgb), .26), inset 0 1px 0 #ffffff61;border-radius:50%;place-items:center;transition:transform .28s cubic-bezier(.2,.9,.2,1),background .28s,color .28s;display:grid;position:absolute;top:3px;left:3px}.auth-theme-toggle[data-mode=light] .auth-theme-thumb{color:#fff;background:linear-gradient(135deg,#4f46e5,#0f9f7a);transform:translate(30px)}.auth-theme-toggle[data-mode=dark] .auth-theme-option.dark,.auth-theme-toggle[data-mode=light] .auth-theme-option.light{color:var(--heading);opacity:1}.auth-theme-copy{z-index:1;line-height:1;display:block;position:relative}.auth-theme-copy strong{white-space:nowrap;font-size:12px}.auth-shell[data-theme=light] .auth-theme-toggle{background:linear-gradient(135deg, rgba(var(--accent-rgb), .11), rgba(var(--accent-2-rgb), .09)), #ffffffa8;box-shadow:0 14px 30px #3948691f,inset 0 1px #ffffffc7}.auth-shell[data-theme=light] .auth-theme-track{background:linear-gradient(135deg,#ffffffb3,#ffffff3d),#ffffff8a;box-shadow:inset 0 1px 5px #3948691f}.auth-visual{z-index:1;border-right:1px solid var(--border);cursor:default;place-items:center;padding:64px;display:grid;position:relative;overflow:hidden}.auth-visual:before{content:"";border:1px solid rgba(var(--accent-2-rgb), .24);background:linear-gradient(120deg, transparent, #ffffff14, transparent), radial-gradient(circle at 48% 44%, rgba(var(--accent-rgb), .18), transparent 34%);filter:blur(.2px);opacity:.72;transform-origin:48% 44%;border-radius:34px;transition:transform .72s cubic-bezier(.16,1,.3,1),opacity .48s,box-shadow .48s;position:absolute;inset:11%;transform:perspective(900px)rotateX(0)rotateY(0)rotate(-4deg)}.auth-visual:hover:before{opacity:.82;box-shadow:0 24px 76px rgba(var(--accent-2-rgb), .16), inset 0 0 38px rgba(var(--accent-rgb), .04);transform:perspective(900px)translateY(3px)scale(.995)rotateX(.8deg)rotateY(-.7deg)rotate(-4deg)}.auth-visual:after{content:"";pointer-events:none;opacity:.45;background-color:#0000;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:48px 48px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(110deg,#0000 5%,#000 46%,#0000 95%);mask-image:linear-gradient(110deg,#0000 5%,#000 46%,#0000 95%)}.auth-title-wrap{z-index:4;will-change:transform;max-width:860px;transition:transform .72s cubic-bezier(.16,1,.3,1),filter .48s;position:relative;transform:translate(0,0)}.auth-title-wrap:after{content:"";background:linear-gradient(90deg, transparent, var(--accent), var(--accent-2), transparent);width:220px;height:2px;box-shadow:0 0 24px rgba(var(--accent-2-rgb), .55);transition:width .72s cubic-bezier(.16,1,.3,1),opacity .48s,transform .72s cubic-bezier(.16,1,.3,1);animation:4.8s ease-in-out infinite scan-line;position:absolute;bottom:-38px;right:6%}.auth-title-wrap:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(circle at 54% 46%, rgba(var(--accent-2-rgb), .16), transparent 34%), linear-gradient(135deg, #ffffff0b, transparent 62%);opacity:0;filter:blur(2px);border-radius:28px;transition:opacity .48s,transform .72s cubic-bezier(.16,1,.3,1);position:absolute;inset:-18px -28px;transform:scale(.985)}.auth-visual:hover .auth-title-wrap{filter:drop-shadow(0 18px 36px rgba(var(--accent-2-rgb), .1));transform:translate(6px,3px)rotate(.08deg)}.auth-visual:hover .auth-title-wrap:before{opacity:1;transform:scale(1)}.auth-visual:hover .auth-title-wrap:after{opacity:.86;width:260px}.brand-mark{border:1px solid var(--border);width:48px;height:48px;color:var(--accent);background:var(--panel-muted);box-shadow:var(--shadow-soft);border-radius:8px;place-items:center;display:grid}.brand-mark.small{width:38px;height:38px}.eyebrow{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:700}.panel-heading .eyebrow,.invite-hero .eyebrow{display:none}.auth-visual h1{letter-spacing:0;text-wrap:balance;max-width:790px;margin:0 0 8px;font-size:clamp(52px,7vw,96px);line-height:1.04}.auth-visual h1 span{color:#0000;width:fit-content;filter:drop-shadow(0 0 22px rgba(var(--accent-2-rgb), .22));background:linear-gradient(115deg,#fff 0%,#8fe9ff 22%,#b7fff0 45%,#fff 58%,#8aa8ff 78%,#fff 100%) 0 0/220%;-webkit-background-clip:text;background-clip:text;transition:filter .48s,transform .72s cubic-bezier(.16,1,.3,1);animation:6.5s ease-in-out infinite title-sheen;display:block}.auth-visual:hover h1 span:first-child{transform:translate(-2px)}.auth-visual:hover h1 span:nth-child(2){transform:translate(4px)}.auth-shell[data-theme=light] .auth-visual h1 span{filter:drop-shadow(0 12px 28px #2563eb1f);background:linear-gradient(115deg,#0f172a 0%,#2563eb 22%,#0f9f7a 44%,#172033 58%,#7c3aed 78%,#0f172a 100%) 0 0/220%;-webkit-background-clip:text;background-clip:text}.auth-visual h1 span:nth-child(2){animation-delay:-2.4s}@keyframes title-sheen{0%,to{background-position:0%}50%{background-position:100%}}@keyframes scan-line{0%,to{opacity:.26;transform:translate(-24px)scaleX(.72)}50%{opacity:.95;transform:translate(28px)scaleX(1.08)}}.auth-copy{max-width:700px;color:var(--muted);gap:10px;margin-top:28px;padding:4px 0 4px 22px;line-height:1.8;display:grid;position:relative}.auth-copy:before{content:"";background:linear-gradient(180deg, var(--accent), var(--accent-2), transparent);width:3px;box-shadow:0 0 22px rgba(var(--accent-2-rgb), .58);border-radius:999px;position:absolute;top:8px;bottom:8px;left:0}.auth-copy span{width:fit-content;color:var(--accent);border:1px solid rgba(var(--accent-rgb), .22);background:rgba(var(--accent-rgb), .08);border-radius:999px;padding:4px 10px;font-size:13px;font-weight:800}.auth-copy strong{color:var(--heading);font-size:clamp(19px,2vw,25px);line-height:1.35}.auth-copy p{max-width:610px;color:var(--muted);margin:0;font-size:16px;line-height:1.9}.auth-panel{z-index:1;border-left:1px solid rgba(var(--accent-2-rgb), .16);background:linear-gradient(180deg, #ffffff12, #ffffff05), color-mix(in srgb, var(--panel-strong) 78%, transparent);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);grid-template-rows:auto minmax(0,1fr);gap:24px;padding:36px 52px 52px;display:grid;position:relative}.auth-panel-top{z-index:4;align-items:center;min-height:38px;display:flex;position:relative}.auth-panel-body{z-index:4;align-self:center;width:100%;display:grid;position:relative}.auth-shell[data-theme=light] .auth-panel{background:radial-gradient(circle at 12% 0,#4f46e51a,#0000 30%),linear-gradient(#ffffffc7,#f8fbffa8),#ffffffb8;border-left-color:#3e4e7029;box-shadow:inset 1px 0 #ffffffb8,-24px 0 80px #4f46e514}.auth-shell[data-theme=light] .auth-visual{border-right-color:#3e4e7024}.auth-shell[data-theme=light] .auth-visual:before{opacity:.92;background:linear-gradient(120deg,#ffffff94,#fff3,#ffffff75),radial-gradient(circle at 35% 36%,#0f9f7a29,#0000 36%),radial-gradient(circle at 72% 65%,#4f46e521,#0000 32%);box-shadow:0 28px 90px #39486924}.auth-shell[data-theme=light] .auth-visual:after{opacity:.48;background:linear-gradient(#2563eb14 1px,#0000 1px),linear-gradient(90deg,#0f9f7a11 1px,#0000 1px)}.auth-shell[data-theme=light] .auth-visual:before,.auth-shell[data-theme=light] .auth-panel:before{border-color:#4f46e52e}.auth-shell[data-theme=light] .auth-copy span{background:rgba(var(--accent-rgb), .09)}.auth-shell[data-theme=light] .segmented{background:#ffffff94;box-shadow:inset 0 1px #ffffffc2,0 10px 24px #3948690f}.auth-shell[data-theme=light] .auth-form label input{background:#ffffffbd;box-shadow:inset 0 1px #ffffffd1}.auth-shell[data-theme=light] .primary-button{color:#fff}.auth-panel:before{content:"";pointer-events:none;border:1px solid rgba(var(--accent-2-rgb), .18);background:linear-gradient(135deg, rgba(var(--accent-rgb), .06), rgba(var(--accent-2-rgb), .07), transparent 52%);opacity:.9;border-radius:14px;position:absolute;inset:18px}.auth-panel>*{z-index:4;position:relative}.auth-panel-title{margin-bottom:20px;transition:opacity .22s,transform .22s}.auth-panel-title h2{color:var(--heading);margin:0;font-size:30px}.auth-panel-title p{color:var(--muted);margin:8px 0 0;line-height:1.7}.segmented{border:1px solid var(--border);background:#ffffff0e;border-radius:8px;grid-template-columns:1fr 1fr;gap:6px;padding:6px;display:grid;box-shadow:inset 0 1px #ffffff0f}.segmented button,button{font:inherit}.segmented button{height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px}.segmented button.active{color:var(--heading);background:linear-gradient(135deg, rgba(var(--accent-rgb), .22), rgba(var(--accent-2-rgb), .24)), var(--panel-hover);box-shadow:inset 0 0 0 1px rgba(var(--accent-2-rgb), .18), 0 10px 26px rgba(var(--accent-2-rgb), .12)}.auth-form,.image-form,.token-form{gap:16px;margin-top:24px;display:grid}.auth-extra-fields{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .34s,opacity .24s,transform .34s;display:grid;transform:translateY(-8px)}.auth-extra-fields.show{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.auth-extra-inner{gap:16px;min-height:0;display:grid;overflow:hidden}.auth-extra-inner>label{min-height:0}.auth-form input{background:linear-gradient(135deg, #ffffff0d, transparent), var(--input-bg)}.auth-form input:hover{border-color:rgba(var(--accent-2-rgb), .28)}.auth-form input:focus{background:linear-gradient(135deg, rgba(var(--accent-rgb), .08), rgba(var(--accent-2-rgb), .08)), var(--input-bg)}.auth-form .primary-button{isolation:isolate;position:relative;overflow:hidden}.auth-form .primary-button:before{content:"";border-radius:inherit;background:radial-gradient(circle at 18% 50%, #fff3, transparent 24%), linear-gradient(110deg, rgba(var(--accent-rgb), .06), rgba(var(--accent-2-rgb), .42), #ec48994d, rgba(var(--accent-rgb), .36), rgba(var(--accent-2-rgb), .14));opacity:0;pointer-events:none;background-size:260% 180%;transition:opacity .24s;animation:2.8s ease-in-out infinite paused button-flow;position:absolute;inset:-1px}.auth-form .primary-button:hover:before{opacity:.88;animation-play-state:running}.auth-form .primary-button:hover{box-shadow:0 16px 34px rgba(var(--accent-2-rgb), .24), 0 0 26px rgba(var(--accent-rgb), .18)}.auth-form .primary-button>svg{z-index:1;position:relative}@keyframes button-flow{0%,to{filter:saturate(1.08);background-position:0%}50%{filter:saturate(1.34);background-position:100%}}.code-field{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.code-field .ghost-button{white-space:nowrap;min-width:116px;height:44px}label{color:var(--text);gap:8px;font-size:13px;font-weight:700;display:grid}.field-block{gap:10px;display:grid}.field-label{color:var(--text);font-size:13px;font-weight:700}input,textarea,select{box-sizing:border-box;width:100%;color:var(--text);border:1px solid var(--border);background:var(--input-bg);font:inherit;border-radius:8px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s,color .2s}input,select{height:44px;padding:0 13px}textarea{resize:vertical;min-height:136px;padding:13px}input:focus,textarea:focus,select:focus{border-color:rgba(var(--accent-2-rgb), .82);box-shadow:0 0 0 3px rgba(var(--accent-2-rgb), .14)}.primary-button,.ghost-button,.icon-button{cursor:pointer;justify-content:center;align-items:center;gap:8px;transition:transform .2s,border-color .2s,background .2s,color .2s,box-shadow .2s;display:inline-flex}.primary-button{color:#061018;background:linear-gradient(135deg, var(--accent), var(--accent-2));min-height:44px;box-shadow:0 12px 26px rgba(var(--accent-2-rgb), .18);border:0;border-radius:8px;padding:0 18px;font-weight:800}.primary-button.compact{min-height:38px}.ghost-button.compact{min-height:34px;padding:0 10px}.ghost-button.danger,.icon-button.danger{color:var(--danger)}.ghost-button{min-height:36px;color:var(--text);border:1px solid var(--border);background:var(--panel-muted);border-radius:8px;padding:0 12px}.icon-button{width:38px;height:38px;color:var(--text);border:1px solid var(--border);background:var(--panel-muted);border-radius:8px}.primary-button:hover,.ghost-button:hover,.icon-button:hover{border-color:rgba(var(--accent-2-rgb), .55);box-shadow:0 12px 28px rgba(var(--accent-2-rgb), .16);transform:translateY(-1px)}.primary-button:disabled{cursor:not-allowed;opacity:.58;transform:none}.form-error{color:var(--danger);margin:0;font-size:13px}.success-note{color:var(--accent);margin:0 0 12px;font-size:13px}.hint{color:var(--faint);margin:0;font-size:12px}.app-shell{background:radial-gradient(circle at 26% 0%, rgba(var(--accent-2-rgb), .16), transparent 30%), radial-gradient(circle at 88% 12%, rgba(var(--accent-rgb), .12), transparent 28%), linear-gradient(180deg, rgba(var(--accent-2-rgb), .08), transparent 360px), var(--bg);color:var(--text);grid-template-columns:280px minmax(0,1fr);transition:background .24s,color .24s;display:grid}.app-shell *{scrollbar-color:var(--scrollbar) transparent;scrollbar-width:thin}.app-shell ::-webkit-scrollbar{width:10px;height:10px}.app-shell ::-webkit-scrollbar-thumb{background:var(--scrollbar);background-clip:padding-box;border:3px solid #0000;border-radius:999px}.app-shell ::-webkit-scrollbar-track{background:0 0}.sidebar{border-right:1px solid var(--border);background:color-mix(in srgb, var(--panel-strong) 94%, transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);flex-direction:column;justify-content:space-between;height:100vh;padding:22px;display:flex;position:sticky;top:0}.brand-row,.account-box{align-items:center;gap:12px;display:flex}.brand-row strong,.account-box strong{color:var(--heading);display:block}.brand-row span,.account-box span{color:var(--faint);margin-top:2px;font-size:12px;display:block}.credit-pill{width:fit-content;color:var(--accent);border:1px solid rgba(var(--accent-rgb), .24);background:rgba(var(--accent-rgb), .09);border-radius:999px;margin-top:8px;padding:4px 8px;display:inline-flex}nav{gap:8px;margin-top:32px;display:grid}nav button{height:42px;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:0 12px;display:flex}nav button.active,nav button:hover{color:var(--heading);border-color:var(--border);background:var(--panel-hover)}.account-box{border-top:1px solid var(--border);justify-content:space-between;padding-top:18px}.sidebar-tools{gap:10px;margin-top:auto;padding:18px 0;display:grid}.theme-toggle{justify-content:flex-start;width:100%;min-height:40px}.account-actions{flex:none;gap:8px;display:flex}.workspace{min-width:0;padding:28px}.work-grid{gap:18px;display:grid}.chat-grid{grid-template-columns:minmax(260px,.34fr) minmax(0,1fr)}.invite-grid,.admin-grid{grid-template-columns:minmax(340px,.46fr) minmax(0,1fr)}.image-grid{grid-template-columns:minmax(320px, var(--workspace-ratio,46%)) 12px minmax(0, 1fr);align-items:start;position:relative}.image-left-stack{gap:18px;min-width:0;display:grid}.admin-stack{gap:18px;display:grid}.panel,.metric-card{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:8px}.panel{min-width:0;padding:20px}.panel-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.panel-heading h2,.invite-hero h2{color:var(--heading);margin:0;font-size:22px;line-height:1.15}.cost-chip{color:var(--text);border:1px solid var(--border);background:var(--panel-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:8px 10px;font-size:12px;display:inline-flex}.session-panel{height:calc(100vh - 56px);overflow:hidden}.session-list,.channel-list,.table-list{gap:10px;display:grid}.session-list{max-height:calc(100vh - 160px);overflow:auto}.session-list button{width:100%;color:var(--text);border:1px solid var(--border-soft);background:var(--panel-muted);cursor:pointer;text-align:left;border-radius:8px;gap:4px;padding:13px;display:grid}.session-list button.active{border-color:rgba(var(--accent-rgb), .42);background:rgba(var(--accent-rgb), .09)}.session-list span,.table-list span,.channel-card span,.channel-card small,.image-card span{color:var(--faint);font-size:12px}.chat-panel{grid-template-rows:auto minmax(0,1fr) auto auto;height:calc(100vh - 56px);display:grid}.message-stream{min-height:0;padding:8px 4px 16px;overflow:auto}.empty-state{min-height:360px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:10px;display:grid}.empty-state h3{color:var(--heading);margin:0}.empty-state p{max-width:420px;margin:0}.bubble{border-radius:8px;width:min(760px,88%);margin:0 0 14px;padding:14px 16px}.bubble span{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:800;display:block}.bubble p{white-space:pre-wrap;margin:0}.bubble.user{color:#fff;background:var(--bubble-user);box-shadow:0 10px 28px rgba(var(--accent-2-rgb), .18);margin-left:auto}.bubble.assistant{background:var(--panel-muted);border:1px solid var(--border-soft)}.typing{color:var(--muted)}.composer{grid-template-columns:minmax(0,1fr) 118px;gap:12px;display:grid}.composer textarea{min-height:58px;max-height:180px}.generate-panel textarea{min-height:170px}.generate-panel{align-self:start}.image-workspace{gap:18px;display:grid}.gallery-panel{height:var(--gallery-height,calc(100vh - 56px));grid-template-rows:auto minmax(0,1fr);align-self:start;min-height:360px;padding:0;display:grid;position:relative;overflow:hidden}.gallery-panel.has-batch-toolbar{grid-template-rows:auto auto minmax(0,1fr)}.gallery-panel .panel-heading{border-bottom:1px solid var(--border-soft);background:linear-gradient(180deg, color-mix(in srgb, var(--panel-muted) 72%, transparent), transparent);margin:0;padding:18px 18px 14px}.gallery-heading-actions{align-items:center;gap:10px;display:inline-flex}.gallery-heading-actions span{color:var(--faint);white-space:nowrap;font-size:12px}.batch-toolbar{border-bottom:1px solid var(--border-soft);background:color-mix(in srgb, var(--panel-strong) 66%, transparent);align-items:center;gap:8px;padding:10px 18px;display:flex}.batch-toolbar span{color:var(--muted);margin-right:auto;font-size:12px}.resize-handle{touch-action:none}.resize-handle-x{cursor:col-resize;align-self:stretch;width:12px;min-height:220px}.resize-handle-x:before{background:var(--border);content:"";border-radius:999px;width:2px;height:100%;margin:0 auto;transition:background .18s,width .18s;display:block}.resize-handle-x:hover:before{background:rgba(var(--accent-rgb), .48);width:4px}.resize-handle-y{cursor:row-resize;height:12px;position:absolute;bottom:8px;left:18px;right:18px}.resize-handle-y:before{background:var(--border);content:"";border-radius:999px;width:72px;height:3px;margin:4px auto 0;transition:background .18s,width .18s;display:block}.resize-handle-y:hover:before{background:rgba(var(--accent-rgb), .5);width:96px}.direction-grid,.preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:none}.direction-grid button,.preset-grid button{min-height:72px;color:var(--text);border:1px solid var(--border);background:var(--panel-muted);cursor:pointer;text-align:left;border-radius:8px;gap:4px;padding:12px;display:grid}.direction-grid button.active,.preset-grid button.active{border-color:rgba(var(--accent-rgb), .36);background:rgba(var(--accent-rgb), .1)}.direction-grid span,.preset-grid span,.template-note{color:var(--faint);font-size:12px}.preset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.preset-grid button{min-height:96px}.template-note{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;margin:-4px 0 0;padding:10px 12px;display:none}.prompt-actions,.channel-stats{flex-wrap:wrap;gap:8px;display:flex}.prompt-actions{align-items:center;margin-top:-4px}.prompt-actions span{color:var(--faint);font-size:12px}.size-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.size-options button{min-width:0;color:var(--text);border:1px solid var(--border);background:var(--panel-muted);cursor:pointer;text-align:left;border-radius:8px;align-items:center;gap:10px;padding:12px;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;display:flex}.size-options button:hover{border-color:rgba(var(--accent-2-rgb), .42);background:var(--panel-hover);transform:translateY(-1px)}.size-options button.active{border-color:rgba(var(--accent-rgb), .42);background:rgba(var(--accent-rgb), .1);box-shadow:0 10px 24px rgba(var(--accent-rgb), .1)}.size-options strong,.size-options small{display:block}.size-options strong{color:var(--heading);font-size:13px;line-height:1.2}.size-options small{color:var(--faint);margin-top:3px;font-size:11px;line-height:1.2}.size-shape{color:var(--accent);background:rgba(var(--accent-rgb), .1);border:2px solid;border-radius:5px;flex:none;display:block}.size-shape.square{width:22px;height:22px}.size-shape.portrait{width:18px;height:26px}.size-shape.landscape{width:28px;height:18px}.queue-panel{min-width:0;max-height:min(420px,45vh);transition:opacity .24s,transform .24s;overflow:hidden}.queue-panel.is-idle{opacity:.82}.queue-list{overscroll-behavior:contain;gap:10px;max-height:320px;padding-right:4px;display:grid;overflow:auto}.queue-item{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;gap:8px;min-width:0;padding:12px;transition:border-color .2s,background .2s,transform .2s,opacity .2s;animation:.22s both soft-enter;display:grid}.queue-item.active{border-color:rgba(var(--accent-rgb), .28);background:rgba(var(--accent-rgb), .08)}.queue-item div{min-width:0}.queue-item strong,.queue-item span,.queue-item small{display:block}.queue-item strong{color:var(--heading)}.queue-item span,.queue-item small{color:var(--muted);font-size:12px}.queue-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.queue-empty{color:var(--faint);border:1px dashed var(--border);background:color-mix(in srgb, var(--panel-muted) 70%, transparent);border-radius:8px;padding:12px;font-size:13px;animation:.22s both soft-enter}@keyframes soft-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes gallery-settle{0%{opacity:.9;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes image-card-arrive{0%{opacity:0;border-color:rgba(var(--accent-rgb), .52);box-shadow:0 0 0 rgba(var(--accent-rgb), 0);transform:translateY(16px)scale(.97)}48%{opacity:1;border-color:rgba(var(--accent-rgb), .62);box-shadow:0 18px 38px rgba(var(--accent-rgb), .16);transform:translateY(-2px)scale(1.01)}to{opacity:1;border-color:var(--border-soft);box-shadow:none;transform:translateY(0)scale(1)}}.ghost-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.58;transform:none}.chart-builder{gap:14px;display:grid}.chart-builder textarea{min-height:120px}.chart-preview{border:1px solid var(--border);background:var(--bg-soft);border-radius:8px;overflow:hidden}.chart-preview svg{width:100%;height:auto;display:block}.reference-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.reference-tile,.reference-add{border:1px dashed color-mix(in srgb, var(--border) 72%, var(--accent-2));background:color-mix(in srgb, var(--input-bg) 78%, transparent);border-radius:8px;min-height:126px;display:grid;position:relative;overflow:hidden}.reference-grid.has-image .reference-tile{border-style:solid;border-color:rgba(var(--accent-rgb), .28)}.reference-tile img{object-fit:cover;background:var(--bg-soft);width:100%;height:100%;min-height:126px}.reference-add{color:var(--muted);cursor:pointer;text-align:center;align-content:center;place-items:center;gap:8px}.reference-add input{cursor:pointer;opacity:0;height:100%;position:absolute;inset:0}.reference-add span{font-size:12px}.reference-actions{z-index:2;gap:6px;display:flex;position:absolute;top:8px;right:8px}.reference-actions .icon-button{background:color-mix(in srgb, var(--panel-strong) 86%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:30px;height:30px}.gallery{overscroll-behavior:contain;scroll-behavior:smooth;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-auto-rows:286px;align-content:start;gap:16px;min-height:0;max-height:100%;padding:18px 18px 24px;display:grid;overflow:auto}.gallery.has-new-item{animation:.34s both gallery-settle}.image-card{border:1px solid var(--border-soft);background:color-mix(in srgb, var(--panel-strong) 42%, var(--panel-muted));border-radius:8px;grid-template-rows:172px 58px 56px;height:286px;transition:border-color .2s,background .2s,transform .2s,opacity .2s,box-shadow .2s;animation:.26s both soft-enter;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 28px #00000014}.image-card.selected{border-color:rgba(var(--accent-rgb), .66);background:color-mix(in srgb, rgba(var(--accent-rgb), .18) 38%, var(--panel-muted));box-shadow:0 18px 36px rgba(var(--accent-2-rgb), .16)}.select-badge{z-index:2;color:#061018;border:1px solid rgba(var(--accent-rgb), .55);background:color-mix(in srgb, var(--panel-strong) 82%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:10px;left:10px}.image-card.selected .select-badge{background:var(--accent)}.image-card.is-new{animation:.62s cubic-bezier(.2,.8,.2,1) both image-card-arrive}.image-card:hover{border-color:rgba(var(--accent-2-rgb), .32);transform:translateY(-1px);box-shadow:0 18px 34px #0000001f}.queue-item:hover{transform:translateY(-1px)}.image-preview-button,.image-card img,.image-placeholder{object-fit:cover;background:var(--bg-soft);width:100%;height:172px}.image-preview-button{background:var(--bg-soft);cursor:zoom-in;border:0;padding:0;display:block;overflow:hidden}.image-preview-button img{transition:transform .24s,filter .24s}.image-card:hover .image-preview-button img{filter:saturate(1.04)contrast(1.02);transform:scale(1.025)}.image-preview-button:disabled{cursor:default}.image-placeholder{color:var(--faint);place-items:center;display:grid}.image-card-body{align-items:center;min-width:0;padding:8px 10px;display:grid}.image-card p{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;height:38px;min-height:0;margin:0;line-height:19px;display:-webkit-box;overflow:hidden}.image-card-footer{border-top:1px solid var(--border-soft);background:color-mix(in srgb, var(--panel-muted) 78%, transparent);justify-content:flex-end;align-items:center;gap:8px;min-height:0;padding:10px;display:flex}.image-card-footer span{margin:0;display:block}.image-card-footer .icon-button{flex:none;width:34px;height:34px;text-decoration:none}.image-actions{flex:none;gap:6px;display:inline-flex}.gallery .empty-text{border:1px dashed var(--border);background:var(--panel-muted);border-radius:8px;padding:18px}.image-modal{z-index:50;background:var(--modal-backdrop);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);place-items:center;padding:28px;display:grid;position:fixed;inset:0}.image-modal-content{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;gap:14px;width:min(1180px,96vw);max-height:92vh;padding:16px;display:grid;overflow:auto;box-shadow:0 30px 90px #00000047}.image-modal-toolbar{justify-content:space-between;align-items:center;gap:14px;display:flex}.image-modal-toolbar strong,.image-modal-toolbar span{display:block}.image-modal-toolbar span{color:var(--faint);margin-top:3px;font-size:12px}.image-modal-content>img{object-fit:contain;background:var(--bg-soft);border-radius:8px;width:100%;max-height:72vh}.image-modal-content>p{color:var(--text);margin:0}.failure-modal-content{width:min(920px,96vw)}.security-modal-content{width:min(520px,94vw)}.security-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.security-summary article{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;gap:6px;padding:13px;display:grid}.security-summary span,.security-hint{color:var(--faint);font-size:12px}.security-summary strong{color:var(--heading)}.security-form{gap:14px;display:grid}.security-form .button-row{justify-content:flex-end}.security-hint{margin:-2px 0 0;line-height:1.6}.failure-list{gap:12px;max-height:68vh;padding-right:4px;display:grid;overflow:auto}.failure-card{border:1px solid var(--border-soft);background:linear-gradient(90deg, #ff7d7d1c, transparent 44%), var(--panel-muted);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-width:0;padding:14px;transition:border-color .2s,background .2s,transform .2s;display:grid}.failure-card:hover{border-color:#ff7d7d47;transform:translateY(-1px)}.failure-card-main{gap:7px;min-width:0;display:grid}.failure-card-top{align-items:center;gap:8px;display:flex}.failure-card-top span{color:var(--danger);background:#ff7d7d1a;border:1px solid #ff7d7d3d;border-radius:999px;padding:4px 8px;font-size:12px;line-height:1}.failure-card-top small{color:var(--faint)}.failure-card strong{color:var(--heading);font-size:14px;line-height:1.35}.failure-card p{color:var(--faint);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.failure-card-actions{align-items:center;gap:8px;display:inline-flex}.editor-content{width:min(1100px,96vw)}.ghost-button.active{color:#061018;background:var(--accent);border-color:#0000}.editor-tools,.editor-footer{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.editor-tools{flex-wrap:wrap;justify-content:flex-start}.editor-tools label{align-items:center;gap:10px;min-width:150px;display:flex}.editor-tools input[type=color]{width:46px;height:34px;padding:3px}.editor-tools input[type=range]{width:180px}.canvas-wrap{background:linear-gradient(45deg, var(--checker) 25%, transparent 25%), linear-gradient(-45deg, var(--checker) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--checker) 75%), linear-gradient(-45deg, transparent 75%, var(--checker) 75%), var(--bg-soft);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;border-radius:8px;place-items:center;max-height:64vh;display:grid;position:relative;overflow:auto}.canvas-wrap canvas{touch-action:none;max-width:100%;max-height:64vh;display:block}.crop-overlay{border:2px solid var(--accent);background:rgba(var(--accent-rgb), .12);pointer-events:none;position:absolute;box-shadow:0 0 0 9999px #0000005c}.invite-hero{align-content:space-between;min-height:360px;display:grid}.invite-hero p{max-width:460px;color:var(--muted)}.invite-card{border:1px solid rgba(var(--accent-rgb), .24);background:rgba(var(--accent-rgb), .08);border-radius:8px;gap:12px;padding:18px;display:grid}.invite-card span{color:var(--muted);font-size:12px}.invite-card strong{color:var(--heading);font-size:28px}.inline-controls,.button-row,.split-row{gap:10px;display:flex}.inline-controls input{width:92px;height:38px}.table-list article{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:13px;display:flex}.table-list strong,.channel-card strong{color:var(--heading);display:block}.metric-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.metric-card{gap:8px;padding:16px;display:grid}.metric-card svg{width:20px;height:20px;color:var(--accent)}.metric-card span{color:var(--muted);font-size:12px}.metric-card strong{color:var(--heading);font-size:26px;line-height:1}.metric-card small{color:var(--faint)}.chart-wrap{min-width:0}.token-form{margin-top:0}.api-modal-content{width:min(920px,96vw)}.api-panel,.storage-panel{min-width:0}.storage-panel .button-row{flex-wrap:wrap;justify-content:flex-end}.storage-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.storage-summary-grid article{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;gap:8px;min-width:0;padding:14px;display:grid}.storage-summary-grid span{color:var(--faint);font-size:12px}.storage-summary-grid strong{min-width:0;color:var(--heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.storage-hint{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;margin:-2px 0 12px;padding:10px 12px}.toggle-line{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.toggle-line span,.toggle-line strong,.toggle-line small{display:block}.toggle-line strong{color:var(--heading)}.toggle-line small{color:var(--faint);margin-top:4px;line-height:1.45}.toggle-line input{width:20px;height:20px;accent-color:var(--accent)}.api-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.api-card{aspect-ratio:1;min-height:220px;color:var(--text);border:1px solid var(--border-soft);background:var(--panel-muted);text-align:left;border-radius:8px;align-content:space-between;gap:12px;padding:16px;display:grid}.api-card.active{border-color:rgba(var(--accent-rgb), .28)}.api-card.unhealthy{border-color:#ff7d7d57}.api-card.paused{opacity:.72}.api-card-top,.api-card-actions,.api-card-stats{align-items:center;gap:8px;display:flex}.api-card-top{justify-content:space-between}.api-card strong,.api-card span,.api-card small{display:block}.api-card strong{color:var(--heading)}.api-card-top span,.api-card-body span,.api-card small{color:var(--faint);font-size:12px}.api-card-body{gap:6px;min-width:0;display:grid}.api-card-body small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.api-card-stats{flex-wrap:wrap}.api-card-stats span{color:var(--muted);border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:999px;padding:5px 8px;font-size:12px}.api-card-actions{flex-wrap:wrap}.api-card-actions .ghost-button{min-height:32px;padding:0 10px}.api-card-actions .icon-button{width:34px;height:34px}.add-api-card{color:var(--muted);cursor:pointer;border-style:dashed;align-content:center;place-items:center}.add-api-card:hover{color:var(--heading);border-color:rgba(var(--accent-rgb), .36);background:rgba(var(--accent-rgb), .08)}.status-dot{background:var(--faint);width:10px;height:10px;box-shadow:0 0 0 4px var(--panel-muted);border-radius:999px}.status-dot.active{background:var(--accent)}.status-dot.unhealthy{background:var(--danger)}.status-dot.paused{background:var(--faint)}.api-detail{gap:16px;display:grid}.api-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.detail-list{gap:10px;display:grid}.detail-list article{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:12px;display:flex}.detail-list span{color:var(--faint);font-size:12px}.detail-list strong{min-width:0;color:var(--heading);overflow-wrap:anywhere;text-align:right}.split-row>*{flex:1 1 0}.channel-list{max-height:650px;overflow:auto}.channel-card{border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:8px;gap:12px;padding:14px;display:grid}.channel-card.active{border-color:rgba(var(--accent-rgb), .24)}.channel-card.unhealthy{border-color:#ff7d7d57}.channel-card.paused{opacity:.72}.channel-card p{color:var(--danger);margin:0;font-size:12px}.channel-meta{flex-wrap:wrap;gap:8px;display:flex}.channel-meta span{background:var(--panel-hover);border-radius:999px;padding:4px 8px}.channel-stats span{color:var(--muted);border:1px solid var(--border-soft);background:var(--panel-muted);border-radius:999px;padding:4px 8px;font-size:12px}.empty-text{color:var(--faint);margin:0}.app-shell[data-theme=light] .chart-preview svg text{fill:var(--heading)}.app-shell[data-theme=light] .chart-preview svg line,.app-shell[data-theme=light] .chart-preview svg polyline{stroke:#0f172a2e}.app-shell[data-theme=light] .image-modal{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.app-shell[data-theme=light] .primary-button,.app-shell[data-theme=light] .ghost-button.active{color:#fff}@media (width<=1180px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chat-grid,.image-grid,.invite-grid,.admin-grid{grid-template-columns:1fr}.resize-handle{display:none}.session-panel,.chat-panel{height:auto}.session-list{max-height:260px}.gallery-panel{height:auto}.gallery{grid-auto-rows:286px}.queue-panel{max-height:320px}}@media (width<=840px){.auth-shell,.app-shell{grid-template-columns:1fr}.auth-visual,.auth-panel{padding:28px}.auth-panel{gap:18px}.auth-theme-toggle{min-height:34px}.auth-visual{min-height:440px}.auth-visual:before{border-radius:20px;inset:8%}.auth-visual h1{font-size:clamp(42px,13vw,64px)}.auth-copy{padding-left:16px}.auth-copy strong{font-size:17px}.auth-copy p{font-size:14px}.auth-panel:before{inset:12px}.code-field{grid-template-columns:1fr}.code-field .ghost-button{width:100%}.metric-grid,.api-detail-grid,.storage-summary-grid,.direction-grid,.preset-grid,.size-options,.reference-grid{grid-template-columns:1fr}.sidebar{height:auto;position:static}nav{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace{padding:16px}.composer,.split-row,.image-modal-toolbar{flex-direction:column;grid-template-columns:1fr}.image-modal{padding:12px}.image-modal-content{width:100%}.gallery-panel,.queue-panel{height:auto}.gallery{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));padding:14px}.gallery-panel .panel-heading{padding:16px 14px 12px}.gallery-heading-actions span{display:none}.queue-list{max-height:220px}.editor-tools,.editor-footer{flex-direction:column;align-items:stretch}.editor-tools label,.editor-tools input[type=range]{width:100%}}
