:root{--bg:#0a0a0c;--panel:#0f1014;--text:#f7f7f9;--muted:#b0b0bc;--accent:#c6b9ff;--accent-2:#f5f5f8;--border:#1b1b24;--glass-bg:rgba(12,12,18,.55);--glass-bg-strong:rgba(18,18,28,.75);--glass-border:hsla(0,0%,100%,.12);--glass-border-strong:hsla(0,0%,100%,.22);--glass-highlight:hsla(0,0%,100%,.36);--glass-shadow:0 24px 60px rgba(4,4,8,.6);--glass-glow:0 0 22px rgba(198,185,255,.22);--content-center-ratio:0.5;--content-width:min(720px,calc(100% - var(--sidebar-width) - (var(--space-5) * 2)));--media-max:calc(var(--content-width) * 0.6667);--space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;--space-5:32px;--sidebar-width:280px}*{box-sizing:border-box}body,html{margin:0;padding:0;font-family:Space Grotesk,system-ui,sans-serif;background:radial-gradient(circle at 18% 10%,rgba(198,185,255,.12),transparent 45%),radial-gradient(circle at 80% 20%,rgba(120,98,190,.12),transparent 40%),radial-gradient(circle at 30% 80%,hsla(0,0%,100%,.06),transparent 45%),linear-gradient(160deg,#08080a,#0b0b10 40%,#101018);color:var(--text);min-height:100%;min-height:100dvh;background-color:#0b0b10}body{padding-bottom:env(safe-area-inset-bottom)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:repeating-linear-gradient(0deg,hsla(0,0%,100%,.03),hsla(0,0%,100%,.03) 1px,transparent 0,transparent 2px),repeating-linear-gradient(90deg,rgba(0,0,0,.04),rgba(0,0,0,.04) 1px,transparent 0,transparent 3px);mix-blend-mode:soft-light;opacity:.18;z-index:0}.glass-panel{position:relative;background:linear-gradient(135deg,hsla(0,0%,100%,.12),var(--glass-bg));border:1px solid var(--glass-border);border-radius:18px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);overflow:hidden;isolation:isolate}.glass-panel:before{inset:1px;border-radius:16px;background:radial-gradient(circle at 20% 10%,hsla(0,0%,100%,.28),transparent 45%);opacity:.6}.glass-panel:after,.glass-panel:before{content:"";position:absolute;pointer-events:none;z-index:0}.glass-panel:after{inset:-40% 0 0 -40%;background:linear-gradient(120deg,transparent 20%,hsla(0,0%,100%,.18),transparent 60%);opacity:.35;transform:rotate(-8deg)}.glass-panel>*{position:relative;z-index:1}.glass-chip{position:relative;background:rgba(11,17,28,.65);border:1px solid hsla(0,0%,100%,.08);border-radius:14px;box-shadow:0 12px 30px rgba(3,7,18,.35);-webkit-backdrop-filter:blur(14px) saturate(130%);backdrop-filter:blur(14px) saturate(130%);overflow:hidden}main.app{flex-direction:column;position:relative;z-index:1}.app-shell,main.app{min-height:100vh;min-height:100dvh;display:flex}.app-main{flex:1 1;min-width:0}.app-main,.sidebar{display:flex;flex-direction:column}.sidebar{width:280px;background:transparent;border-right:none;padding:var(--space-3);gap:var(--space-3);position:-webkit-sticky;position:sticky;top:0;height:100vh;align-self:flex-start}.sidebar-top{display:flex;flex-direction:column;gap:var(--space-3);flex:1 1;min-height:0}.sidebar-bottom{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-2)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.sidebar-title{font-size:14px;text-transform:uppercase;letter-spacing:1px}.sidebar-subtitle{font-size:12px;color:var(--muted);margin-top:4px}.sidebar-auth{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:8px 10px;border:1px solid hsla(0,0%,100%,.08);border-radius:12px}.sidebar-auth-label{font-size:12px;color:var(--muted)}.sidebar-auth-name{display:inline-block;max-width:140px;white-space:nowrap;overflow:hidden;vertical-align:bottom;-webkit-mask-image:linear-gradient(90deg,#000 72%,transparent);mask-image:linear-gradient(90deg,#000 72%,transparent)}.sidebar-list{flex-direction:column;overflow-y:auto;padding-right:4px;flex:1 1;max-height:none}.sidebar-item,.sidebar-list{display:flex;gap:var(--space-2)}.sidebar-item{justify-content:space-between;align-items:center;padding:8px;border-radius:12px;min-height:52px}.sidebar-item.active{border-color:var(--accent);box-shadow:0 0 16px rgba(116,242,255,.25)}.sidebar-item:hover{border-color:hsla(0,0%,100%,.2);box-shadow:0 12px 28px rgba(3,7,18,.4)}.sidebar-button{background:transparent;border:none;color:var(--text);display:flex;flex-direction:column;align-items:flex-start;gap:4px;cursor:pointer;font-size:14px;text-align:left;flex:1 1;min-width:0}.sidebar-title-row{width:100%}.sidebar-title-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.35;max-height:calc(1.35em * 2);word-break:break-word}.sidebar-title-main{color:var(--text)}.sidebar-date-inline{color:hsla(0,0%,100%,.55);font-size:11px;margin-left:4px;white-space:nowrap}.sidebar-meta{font-size:11px;color:var(--muted);line-height:1.2}.sidebar-actions{display:flex;gap:6px;align-items:center;justify-content:center}.icon-button.small{padding:4px 8px;font-size:12px}.sidebar-empty{font-size:12px;color:var(--muted)}.sidebar-rename{display:flex;gap:var(--space-1);align-items:center}.sidebar-rename input{flex:1 1;background:rgba(8,12,20,.6);border:1px solid var(--glass-border);color:var(--text);padding:6px 8px;border-radius:8px;-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%)}.top-bar{position:-webkit-sticky;position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);background:transparent;z-index:10}.brand{font-size:18px;letter-spacing:1px}.actions{display:flex;gap:var(--space-2);align-items:center}.ghost-button,.icon-button{background:linear-gradient(135deg,hsla(0,0%,100%,.16),rgba(20,18,30,.65));border:1px solid var(--glass-border);color:var(--text);padding:8px 12px;border-radius:999px;cursor:pointer;font-size:13px;box-shadow:0 10px 24px rgba(3,7,18,.35);-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.ghost-button:hover,.icon-button:hover{border-color:var(--glass-border-strong);box-shadow:var(--glass-glow);transform:translateY(-1px)}.icon-button{padding:6px 10px;display:inline-flex;align-items:center;justify-content:center}.primary-button{background:linear-gradient(135deg,rgba(245,245,248,.9),rgba(198,185,255,.7));color:#0a0a0c;border:1px solid hsla(0,0%,100%,.35);padding:10px 18px;border-radius:12px;font-weight:600;cursor:pointer;box-shadow:0 12px 30px rgba(5,12,22,.45);transition:transform .2s ease,box-shadow .2s ease}.primary-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 36px rgba(5,12,22,.55)}.primary-button:disabled{opacity:.6;cursor:not-allowed}.settings-panel{position:absolute;right:var(--space-5);top:62px;background:transparent;border:1px solid var(--glass-border);border-radius:14px;padding:var(--space-3);display:grid;grid-gap:var(--space-2);gap:var(--space-2);min-width:200px}.settings-panel label{display:grid;grid-gap:6px;gap:6px;font-size:12px;color:var(--muted)}.settings-panel select{background:rgba(8,12,20,.6);border:1px solid var(--glass-border);color:var(--text);padding:6px 8px;border-radius:8px;-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%)}.checkbox-label{display:flex!important;flex-direction:row!important;align-items:center;gap:var(--space-2);cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.checkbox-label span{font-size:12px;color:var(--text)}.empty-state{flex:1 1;display:flex;align-items:center;justify-content:center;padding:var(--space-5);width:100%}.empty-title{font-size:28px;font-weight:600;letter-spacing:.5px;margin-bottom:var(--space-3);text-align:center}.empty-content{width:100%}.chat-center{align-items:stretch;position:relative;min-height:0;width:var(--content-width);margin:0 auto}.chat-center,.chat-shell{flex:1 1;display:flex;flex-direction:column}.chat-shell{padding:0 0 var(--space-5)}.chat-body{display:flex;gap:var(--space-3);align-items:stretch;min-height:0}.chat-toolbar{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5) 0;pointer-events:auto;gap:var(--space-2)}.chat-toolbar.anon{flex-wrap:wrap}.app.empty .chat-toolbar{position:absolute;top:0;left:var(--sidebar-width);right:0}.chat-toolbar:after{content:"";position:absolute;inset:0 0 -24px 0;background:linear-gradient(180deg,rgba(8,8,12,.78),rgba(8,8,12,.4) 45%,transparent);pointer-events:none;z-index:-1}.engine-menu{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);z-index:60}.toolbar-settings{margin-left:auto}.engine-button{text-transform:uppercase;letter-spacing:1px}.engine-menu.open .engine-button{border-color:var(--glass-border-strong);box-shadow:var(--glass-glow)}.engine-panel{position:absolute;top:calc(100% + 8px);left:0;min-width:240px;padding:var(--space-3);display:grid;grid-gap:var(--space-2);gap:var(--space-2);z-index:100}.toolbar-settings .engine-panel{left:auto;right:0}.engine-section{display:grid;grid-gap:8px;gap:8px;border-top:1px solid var(--glass-border);padding-top:var(--space-2);margin-top:var(--space-2)}.engine-section-title{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.engine-account-name{font-size:12px;color:var(--text)}.engine-account-action{width:100%;justify-content:center}.mobile-only{display:none}.desktop-only{display:inline-flex}.toggle-switch{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);cursor:pointer}.toggle-switch input{position:absolute;opacity:0;pointer-events:none}.toggle-track{position:relative;width:38px;height:20px;border-radius:999px;background:hsla(0,0%,100%,.12);border:1px solid var(--glass-border);transition:background .2s ease,border-color .2s ease;display:inline-flex;align-items:center}.toggle-thumb{width:16px;height:16px;border-radius:50%;background:hsla(0,0%,100%,.7);transform:translateX(2px);transition:transform .2s ease,background .2s ease}.toggle-switch input:checked+.toggle-track{background:rgba(76,130,255,.35);border-color:rgba(76,130,255,.55);box-shadow:0 0 12px rgba(76,130,255,.25)}.toggle-switch input:checked+.toggle-track .toggle-thumb{transform:translateX(20px);background:hsla(0,0%,100%,.95)}.toggle-label{color:var(--text)}.engine-field{display:grid;grid-gap:6px;gap:6px;font-size:12px;color:var(--muted)}.engine-field select{background:rgba(8,12,20,.7);border:1px solid var(--glass-border-strong);color:var(--text);padding:8px 10px;border-radius:10px;font-size:13px;-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%)}.engine-field select:disabled{opacity:.6;cursor:not-allowed}.toolbar-actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.toolbar-user{font-size:12px;color:var(--muted);max-width:160px;overflow:hidden;text-overflow:ellipsis}.toolbar-center,.toolbar-user{white-space:nowrap}.admin-shell{min-height:100vh;padding:var(--space-4);flex-direction:column}.admin-header,.admin-shell{display:flex;gap:var(--space-3)}.admin-header{justify-content:space-between;align-items:center}.admin-title{font-size:22px;font-weight:600}.admin-subtitle{font-size:13px;color:var(--muted)}.admin-user{font-size:12px;color:var(--muted)}.admin-grid{display:grid;grid-template-columns:minmax(220px,260px) minmax(260px,320px) minmax(0,1.4fr) minmax(260px,360px);grid-gap:var(--space-3);gap:var(--space-3);align-items:start}.admin-panel{padding:var(--space-3);display:grid;grid-gap:var(--space-2);gap:var(--space-2);min-height:160px}.admin-login{max-width:520px;margin:auto;text-align:center}.admin-section-title{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2)}.admin-list{display:grid;grid-gap:var(--space-1);gap:var(--space-1);max-height:60vh;overflow:auto}.admin-list-item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);padding:8px 10px;border-radius:12px;border:1px solid hsla(0,0%,100%,.08);background:rgba(10,12,18,.4);color:var(--text);cursor:pointer}.admin-list-item.active{border-color:var(--accent);box-shadow:0 0 16px rgba(116,242,255,.2)}.admin-list-main{display:grid;grid-gap:2px;gap:2px;text-align:left}.admin-list-name{font-size:13px}.admin-list-meta{font-size:11px;color:var(--muted)}.admin-detail{max-height:70vh;overflow:auto}.admin-messages{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.admin-message{border:1px solid hsla(0,0%,100%,.08);border-radius:12px;padding:10px 12px;background:rgba(8,10,16,.5)}.admin-message-meta{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:6px}.admin-message-text{font-size:13px;white-space:pre-wrap}.admin-attachments{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--space-1);gap:var(--space-1);margin-top:var(--space-1)}.admin-attachments img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px}.admin-job{margin-top:var(--space-2)}.admin-job-title{font-size:12px;color:var(--muted);margin-bottom:var(--space-1)}.admin-media{max-height:70vh;overflow:auto}.admin-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-1);gap:var(--space-1)}.admin-media-grid img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px}.admin-muted{font-size:12px;color:var(--muted)}.admin-error{font-size:12px;color:#ff8b8b}@media (max-width:1200px){.admin-grid{grid-template-columns:minmax(220px,1fr) minmax(260px,1fr)}}@media (max-width:900px){.admin-grid{grid-template-columns:1fr}}.login-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.login-gate-card{width:min(520px,100%);padding:var(--space-4);display:grid;grid-gap:var(--space-2);gap:var(--space-2);text-align:center}.login-gate-title{font-size:22px;font-weight:600}.login-gate-subtitle{font-size:13px;color:var(--muted)}.mobile-menu-close,.mobile-menu-toggle{display:none}.message-list{flex:1 1;overflow-y:auto;overflow-x:visible;display:flex;flex-direction:column;gap:var(--space-3);padding-top:88px;padding-bottom:220px;padding-left:var(--space-5);padding-right:var(--space-5);width:100%;margin:0;box-sizing:border-box}@media (hover:hover) and (pointer:fine){*{scrollbar-width:thin;scrollbar-color:#151225 transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-track{background:transparent;border-radius:999px;box-shadow:none}::-webkit-scrollbar-thumb{background:#151225;border-radius:999px;border:2px solid transparent;box-shadow:none}::-webkit-scrollbar-thumb:hover{background:#151225}.sidebar-list{scrollbar-width:thin;scrollbar-color:#151225 transparent}.sidebar-list::-webkit-scrollbar{width:10px}.sidebar-list::-webkit-scrollbar-button{width:0;height:0;display:none}.sidebar-list::-webkit-scrollbar-track{background:transparent;border-radius:999px;box-shadow:none}.sidebar-list::-webkit-scrollbar-thumb{background:#151225;border-radius:999px;border:2px solid transparent;box-shadow:none}.sidebar-list::-webkit-scrollbar-thumb:hover{background:#151225}.media-grid{scrollbar-width:thin;scrollbar-color:#151225 transparent}.media-grid::-webkit-scrollbar{width:10px}.media-grid::-webkit-scrollbar-button{width:0;height:0;display:none}.media-grid::-webkit-scrollbar-track{background:transparent;border-radius:999px;box-shadow:none}.media-grid::-webkit-scrollbar-thumb{background:#151225;border-radius:999px;border:2px solid transparent;box-shadow:none}.media-grid::-webkit-scrollbar-thumb:hover{background:#151225}.message-list{scrollbar-width:thin;scrollbar-color:rgba(198,185,255,.55) rgba(12,12,18,.25)}.message-list::-webkit-scrollbar{width:10px}.message-list::-webkit-scrollbar-track{background:rgba(12,12,18,.25);border-radius:999px;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.08)}.message-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(198,185,255,.75),rgba(120,98,190,.65));border-radius:999px;border:2px solid rgba(12,12,18,.65);box-shadow:0 0 10px rgba(198,185,255,.35)}.message-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(214,208,255,.9),rgba(147,126,214,.75))}}.confirmation-card{margin-top:var(--space-2);padding:var(--space-2);border-radius:14px;border:1px solid var(--glass-border);background:rgba(14,16,22,.7);display:grid;grid-gap:var(--space-2);gap:var(--space-2);transition:gap .7s ease}.confirmation-card.is-editing{gap:8px}.confirmation-intro{font-size:13px;color:var(--text);max-height:64px;overflow:hidden;transform:translateY(0)}.confirmation-edit{opacity:0;max-height:0;margin-top:0;overflow:hidden;transform:translateY(-6px);visibility:hidden;transition:opacity .7s ease,max-height .7s ease,margin .7s ease,transform .7s ease;color:var(--muted);font-size:13px}.confirmation-card .confirmation-actions,.confirmation-card .confirmation-intro,.confirmation-card .confirmation-note,.confirmation-card .confirmation-total{transition:opacity .7s ease,max-height .7s ease,margin .7s ease,transform .7s ease;max-height:200px;overflow:hidden;transform:translateY(0)}.confirmation-card.is-editing .confirmation-actions,.confirmation-card.is-editing .confirmation-intro,.confirmation-card.is-editing .confirmation-note,.confirmation-card.is-editing .confirmation-total{opacity:0;max-height:0;margin:0;transform:translateY(-6px);pointer-events:none}.confirmation-card.is-editing .confirmation-edit{opacity:1;max-height:48px;margin-top:-18px;transform:translateY(0);visibility:visible}.confirmation-summary{display:grid;grid-gap:6px;gap:6px;font-size:12px;color:var(--muted)}.confirmation-row{display:flex;flex-direction:column;gap:2px}.confirmation-tool{font-size:13px;font-weight:600;color:var(--text)}.confirmation-meta{font-size:12px;color:var(--muted)}.confirmation-prompt{font-size:12px;color:var(--text);opacity:.85;line-height:1.4}.confirmation-media,.confirmation-pair{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.confirmation-pair-item{display:grid;grid-gap:4px;gap:4px}.confirmation-pair-label{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.confirmation-pair-thumb{width:72px;height:72px}.confirmation-media-item,.confirmation-pair-thumb{border-radius:10px;object-fit:cover;border:1px solid var(--glass-border);background:rgba(10,12,18,.6)}.confirmation-media-item{width:56px;height:56px}.confirmation-total{font-size:12px;font-weight:600;color:var(--accent-2)}.confirmation-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.confirmation-status{font-size:12px;color:var(--muted);text-transform:capitalize}.confirmation-note{background:transparent;border:none;color:var(--muted);font-size:11px;text-align:left;padding:0;cursor:pointer}.selection-card{margin-top:var(--space-2);padding:var(--space-2);border-radius:14px;border:1px solid var(--glass-border);background:rgba(12,14,20,.7);display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.selection-intro{font-size:12px;color:var(--muted)}.selection-base{display:flex;align-items:center;gap:10px}.selection-base-label{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.selection-base-thumb{width:64px;height:64px;border-radius:10px;object-fit:cover;border:1px solid var(--glass-border);background:rgba(10,12,18,.6)}.selection-grid{display:grid;grid-gap:12px;gap:12px}.selection-section{display:grid;grid-gap:8px;gap:8px}.selection-title{font-size:12px;font-weight:600;color:var(--text)}.selection-models{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));grid-gap:8px;gap:8px}.selection-model{border:1px solid var(--glass-border);background:rgba(10,12,18,.6);border-radius:12px;padding:6px;display:grid;grid-gap:6px;gap:6px;text-align:left;color:var(--text)}.selection-model img{width:100%;height:72px;object-fit:cover;border-radius:8px;border:1px solid var(--glass-border)}.selection-model-initial{width:100%;height:72px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:rgba(30,34,48,.7);font-weight:600;color:var(--text)}.selection-model-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection-empty,.selection-model-name{font-size:11px;color:var(--muted)}.selection-upload{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:12px;border:1px dashed var(--glass-border);background:rgba(10,12,18,.4);color:var(--text);font-size:12px;cursor:pointer}.selection-upload input{display:none}.selection-upload.is-busy{opacity:.7;cursor:default}.selection-actions{display:flex;justify-content:flex-end}@media (min-width:640px){.selection-grid{grid-template-columns:1fr 1fr}}.input-dock{position:fixed;left:calc(var(--sidebar-width) + (100vw - var(--sidebar-width)) / 2);width:var(--content-width);box-sizing:border-box;transition:top .45s ease,bottom .45s ease,transform .45s ease,width .45s ease;z-index:12}.live-preview{margin-bottom:10px;padding:10px 12px;border-radius:14px;border:1px solid var(--glass-border);background:rgba(12,14,20,.7);box-shadow:0 10px 26px rgba(4,8,16,.35);display:grid;grid-gap:6px;gap:6px}.live-preview-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.live-preview-details{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.live-preview-chip{font-size:12px;color:var(--text);background:rgba(16,20,28,.8);border:1px solid var(--glass-border);border-radius:999px;padding:4px 10px}.live-preview-note{font-size:12px;color:var(--muted)}.input-title{font-size:28px;font-weight:600;letter-spacing:.5px;text-align:center;margin-bottom:var(--space-3)}.input-dock.centered{position:fixed;top:50%;transform:translateX(-50%) translateY(-50%)}.input-dock.docked{top:auto;bottom:var(--space-4);transform:translateX(-50%) translateY(0)}.input-row{display:flex;align-items:flex-end;gap:var(--space-2);position:relative;overflow:visible}.input-row .input-shell{flex:1 1;width:100%;position:relative}.media-picker-wrap{position:relative}.media-picker-wrap,.media-plus{display:inline-flex;align-items:center}.media-plus{width:34px;height:34px;border-radius:999px;border:1px solid hsla(0,0%,100%,.4);background:hsla(0,0%,100%,.08);color:#fff;font-size:22px;line-height:1;justify-content:center;cursor:pointer;box-shadow:0 0 16px hsla(0,0%,100%,.2)}.media-plus:hover{box-shadow:0 0 20px hsla(0,0%,100%,.35)}.media-menu{position:absolute;bottom:calc(100% + 10px);left:0;min-width:180px;display:grid;grid-gap:6px;gap:6px;padding:10px;z-index:24}.media-menu button{background:rgba(10,12,18,.6);border:1px solid var(--glass-border);border-radius:10px;color:var(--text);padding:8px 10px;font-size:12px;cursor:pointer;text-align:left}.media-menu button:hover{border-color:var(--glass-border-strong);box-shadow:var(--glass-glow)}.media-panel{margin-top:10px;padding:12px;display:grid;grid-gap:10px;gap:10px}.media-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}.media-grid{display:grid;grid-gap:var(--space-2);gap:var(--space-2);width:100%;max-height:220px;overflow:auto;align-content:start;grid-auto-flow:row;grid-auto-rows:auto}.media-grid.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.media-grid.grid-5{grid-template-columns:repeat(5,minmax(0,1fr));max-height:70vh}.media-tile{width:100%;display:block;position:relative;height:0;padding-bottom:100%;border-radius:10px;overflow:visible;border:1px solid hsla(0,0%,100%,.1);background:rgba(10,12,18,.45);cursor:pointer}.media-tile .media-frame{position:absolute;inset:0;width:100%;height:100%;border-radius:10px;overflow:hidden;transform:translate(0);transform-origin:center center;pointer-events:none;transition:width .2s ease,height .2s ease,transform .2s ease,box-shadow .2s ease;z-index:1}.media-tile:hover .media-frame{width:var(--thumb-hover-w,100%);height:var(--thumb-hover-h,100%);top:50%;left:50%;bottom:auto;right:auto;transform:translate(-50%,-50%);z-index:10;box-shadow:0 16px 40px rgba(3,7,18,.45)}.media-tile .media-frame img,.media-tile .media-frame video{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.media-library-panel{width:min(1280px,100%);padding:var(--space-4);display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.media-library-search{width:100%;background:rgba(10,12,18,.6);border:1px solid var(--glass-border);border-radius:12px;color:var(--text);padding:10px 12px;font-size:12px;outline:none}.media-library-search::placeholder{color:var(--muted)}.media-library-loading{font-size:12px;color:var(--muted)}.scroll-to-bottom{position:absolute;left:50%;right:auto;bottom:calc(var(--space-4) + 72px);width:44px;height:44px;background:rgba(10,12,18,.75);border:1px solid var(--glass-border);color:var(--text);border-radius:999px;font-size:18px;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;z-index:6;transform:translateX(-50%)}.scroll-to-bottom:hover{border-color:var(--glass-border-strong);box-shadow:var(--glass-glow)}.plan-overlay{position:fixed;inset:0;background:rgba(6,8,12,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:80;padding:var(--space-4)}.plan-panel{grid-template-rows:auto 1fr;grid-gap:var(--space-3)}.credits-panel,.plan-panel{width:min(1280px,100%);padding:var(--space-4);display:grid;gap:var(--space-3);max-height:calc(100vh - (var(--space-4) * 2))}.credits-panel{grid-template-rows:auto auto 1fr auto;grid-gap:var(--space-3)}.checkout-panel{width:min(960px,100%);padding:var(--space-4);display:grid;grid-gap:var(--space-3);gap:var(--space-3);min-height:680px;max-height:calc(100vh - (var(--space-4) * 2));overflow-y:auto}.checkout-embed{min-height:560px}.credits-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:var(--space-2);gap:var(--space-2);width:100%;height:100%;margin:0;min-height:0;overflow-y:auto;align-items:stretch}.credits-upsell{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:10px 12px;border:1px solid var(--glass-border);border-radius:12px;background:rgba(14,16,22,.7)}.credits-upsell-text{color:var(--muted);font-size:13px}.credits-upsell-action{white-space:nowrap}.credit-card{background:hsla(0,8%,5%,.7);border:1px solid var(--glass-border);border-radius:14px;padding:calc(var(--space-4) + 6px);padding-bottom:calc(var(--space-4) + 52px);display:grid;grid-gap:var(--space-2);gap:var(--space-2);text-align:left;color:var(--text);cursor:pointer;position:relative;aspect-ratio:1/1;width:100%;box-shadow:0 12px 30px rgba(5,12,22,.35);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.credit-card:hover{box-shadow:var(--glass-glow);transform:translateY(-1px)}.credit-card:hover,.credit-cta:hover{border-color:var(--glass-border-strong)}.credit-cta:hover{box-shadow:0 0 14px rgba(198,185,255,.35)}.credit-amount{display:grid;grid-gap:0;gap:0;align-items:start;margin-top:0}.credit-value{font-size:38px;font-weight:700;letter-spacing:.3px;line-height:.85}.credit-unit{font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;line-height:1;font-weight:700;text-align:left}.credit-unit,.credit-unit-row.has-bonus .credit-unit{margin-top:-48px}.credit-unit-row{display:inline-flex;align-items:baseline;gap:6px}.credit-bonus{font-size:12px;color:hsla(0,0%,100%,.45);margin-top:-22px;letter-spacing:.02em}.credit-bonus.is-empty{visibility:hidden}.credit-price{left:var(--space-4);height:30px;display:flex;align-items:center;font-size:17px;color:var(--muted)}.credit-cta,.credit-price{position:absolute;bottom:var(--space-3)}.credit-cta{right:var(--space-3);border:1px solid hsla(0,0%,100%,.22);border-radius:999px;padding:9px 16px;font-size:15px;color:var(--text);background:rgba(0,0,0,.35)}.credit-cta.primary{background:linear-gradient(135deg,rgba(245,245,248,.9),rgba(198,185,255,.7));color:#0a0a0c;border-color:hsla(0,0%,100%,.35);box-shadow:0 12px 30px rgba(5,12,22,.45)}.credit-badge{position:absolute;right:12px;bottom:calc(var(--space-3) + 52px);background:rgba(198,185,255,.2);color:var(--text);border:1px solid rgba(198,185,255,.4);padding:9px 16px;border-radius:999px;font-size:15px;text-transform:uppercase;letter-spacing:.5px;line-height:1}.plan-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.plan-title{font-size:22px;font-weight:600}.plan-subtitle{color:var(--muted);font-size:13px}.plan-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3);min-height:0;overflow-y:auto}.plan-card{position:relative;border:1px solid var(--glass-border);border-radius:14px;padding:var(--space-3);display:grid;grid-gap:var(--space-2);gap:var(--space-2);background:rgba(10,12,18,.5)}.plan-card.active,.plan-card.recommended{border-color:var(--glass-border-strong);box-shadow:var(--glass-glow)}.plan-name{font-size:20px;font-weight:700}.plan-price{display:flex;align-items:flex-start;gap:6px}.plan-price-dollar{font-size:12px;color:var(--muted);line-height:1.2;margin-top:6px}.plan-price-amount{font-size:28px;font-weight:700;line-height:1}.plan-price-suffix{display:grid;font-size:11px;color:var(--muted);line-height:1.1;margin-top:6px}.plan-cta{border-radius:12px;padding:10px 12px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;border:1px solid hsla(0,0%,100%,.2)}.plan-cta.primary{background:linear-gradient(135deg,rgba(245,245,248,.9),rgba(198,185,255,.7));color:#0a0a0c;border-color:hsla(0,0%,100%,.35);box-shadow:0 12px 30px rgba(5,12,22,.45)}.plan-cta.secondary{background:rgba(18,18,28,.6);color:var(--muted);border-color:hsla(0,0%,100%,.15)}.plan-cta:disabled{cursor:not-allowed;opacity:.7}.plan-features{margin:0;padding-left:16px;color:var(--muted);font-size:12px;display:grid;grid-gap:6px;gap:6px}.plan-bonus,.plan-feature-main{display:block}.plan-bonus{margin-left:18px;margin-top:2px;color:hsla(0,0%,100%,.45);font-size:11px;line-height:1.3}.plan-badge{position:absolute;top:10px;right:10px;background:rgba(198,185,255,.2);color:var(--text);border:1px solid rgba(198,185,255,.4);padding:4px 8px;border-radius:999px;font-size:10px;text-transform:uppercase;letter-spacing:.5px}.credits-body{color:var(--muted);font-size:13px}.message-bubble{max-width:100%;padding:0;border-radius:0;line-height:1.6;background:transparent;border:none;overflow:visible}.message-bubble.user{align-self:flex-end;padding:var(--space-3);border-radius:16px;border:1px solid var(--glass-border-strong);box-shadow:var(--glass-glow);overflow:visible}.message-bubble.assistant{align-self:flex-start}.message-bubble.user.glass-panel{box-shadow:var(--glass-shadow),var(--glass-glow);overflow:hidden}.message-bubble.user.glass-panel:after,.message-bubble.user.glass-panel:before{display:block;-webkit-clip-path:inset(0 round 16px);clip-path:inset(0 round 16px)}.message-bubble.media-message{width:66.6667%;max-width:66.6667%;--media-max:calc(var(--content-width) * 0.6667);container-type:inline-size;--media-max:100cqw;overflow:visible}.message-bubble.media-message.user{margin-left:auto;overflow:visible}.message-bubble.user.media-message{overflow:visible;padding-bottom:var(--space-3)}.message-bubble.media-message .message-images{display:block;width:100%;margin-top:0;max-width:100%;overflow:visible}.message-bubble.media-message .message-images.message-images-user{display:flex}.message-bubble.media-message .message-images.message-images-batch{display:grid}.message-bubble.media-message .message-images img,.message-bubble.media-message .message-images video{width:auto;height:auto;max-width:100%;max-height:var(--media-max);object-fit:contain;border-radius:16px;display:block;margin:0 auto}.message-bubble.media-message .message-images-user .media-frame .thumb-image,.message-bubble.media-message .message-images-user .media-frame video{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;object-position:center;margin:0}.message-bubble p{margin:0 0 var(--space-1) 0;white-space:pre-wrap}.message-markdown>:first-child{margin-top:0}.message-markdown>:last-child{margin-bottom:0}.status-line{font-size:12px;color:var(--muted)}.error-line{font-size:12px;color:#ff8b8b;margin-top:var(--space-1);display:flex;align-items:center;gap:var(--space-1)}.error-action{border:1px solid hsla(0,0%,100%,.2);color:var(--text);background:rgba(18,18,28,.6);border-radius:10px;padding:4px 8px;font-size:12px;cursor:pointer}.error-action:hover{border-color:var(--glass-border-strong);box-shadow:var(--glass-glow)}.info-button{border:1px solid hsla(0,100%,77%,.6);color:#ffb3b3;background:rgba(40,10,20,.35);width:18px;height:18px;border-radius:999px;font-size:12px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.error-detail{margin-top:var(--space-1);font-size:12px;color:var(--muted);background:rgba(16,22,32,.7);border:1px solid hsla(0,0%,100%,.08);border-radius:8px;padding:8px 10px;white-space:pre-wrap}.message-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:var(--space-2);gap:var(--space-2);margin-top:var(--space-3);max-width:100%;position:relative}.retry-nav-btn{position:absolute;top:50%;width:28px;height:28px;margin-top:-14px;border-radius:999px;border:1px solid hsla(0,0%,100%,.3);background:rgba(10,12,18,.75);color:var(--text);font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:4}.retry-nav-btn.left{left:6px}.retry-nav-btn.right{right:6px}.message-images-user .thumb-hit{position:absolute;top:0;left:0;width:var(--thumb-base,72px);height:var(--thumb-base,72px);border:none;padding:0;background:transparent;cursor:pointer;z-index:3}.message-images-user .image-wrapper{width:var(--thumb-base,72px);padding-top:var(--thumb-base,72px);box-sizing:border-box;--thumb-base:72px;--thumb-hover-w:72px;--thumb-hover-h:72px}.message-images-user .media-frame{width:var(--thumb-base,72px);height:var(--thumb-base,72px);border-radius:10px;overflow:hidden;position:absolute;top:0;left:0;transform:translate(0);z-index:1;pointer-events:none;transition:width .2s ease,height .2s ease,transform .2s ease,box-shadow .2s ease}.message-images-user .thumb-hit:hover~.media-frame{width:var(--thumb-hover-w);height:var(--thumb-hover-h);transform:translate(calc((var(--thumb-base) - var(--thumb-hover-w)) / 2),calc((var(--thumb-base) - var(--thumb-hover-h)) / 2));z-index:10;box-shadow:0 16px 40px rgba(3,7,18,.45)}.message-images-user .image-actions{position:relative;z-index:4}.message-images-user .media-frame img.thumb-image,.message-images-user .media-frame video{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;object-position:50% 50%;margin:0;display:block;border-radius:10px}.message-images-user .media-frame .hover-image{position:absolute;top:50%;left:50%;width:160px;height:200px;transform:translate(-50%,-50%) scale(.98);transform-origin:center center;object-fit:contain;object-position:50% 50%;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease,box-shadow .2s ease;border-radius:12px;box-shadow:0 16px 40px rgba(3,7,18,.45);z-index:12}.message-images-user .image-wrapper:hover .hover-image{opacity:1;transform:translate(-50%,-50%) scale(1)}.message-images-batch{display:grid;grid-gap:var(--space-2);gap:var(--space-2);align-items:start;position:relative}.message-images-batch.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.message-images-batch.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.message-images-batch .image-wrapper{width:100%;overflow:visible;position:relative;aspect-ratio:1/1;padding-top:100%;--thumb-base:0px;--thumb-hover-w:0px;--thumb-hover-h:0px}.message-images-batch .thumb-hit{position:absolute;top:0;left:0;width:100%;height:100%;border:none;padding:0;background:transparent;cursor:pointer;z-index:3}.message-images-batch .media-frame{width:var(--thumb-base);height:var(--thumb-base);border-radius:12px;overflow:hidden;position:absolute;top:0;left:0;transform:translate(0);transform-origin:center center;pointer-events:none;transition:width .2s ease,height .2s ease,transform .2s ease,box-shadow .2s ease}.message-images-batch .thumb-hit:hover~.media-frame{width:var(--thumb-hover-w);height:var(--thumb-hover-h);transform:translate(calc((var(--thumb-base) - var(--thumb-hover-w)) / 2),calc((var(--thumb-base) - var(--thumb-hover-h)) / 2));z-index:10;box-shadow:0 16px 40px rgba(3,7,18,.45)}.message-images-batch .image-actions{position:relative;z-index:4}.message-bubble.media-message .message-images.message-images-batch .media-frame img,.message-bubble.media-message .message-images.message-images-batch .media-frame video{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;object-position:center center;margin:0}.input-shell{display:flex;gap:var(--space-2);padding:var(--space-3);background:transparent;border-radius:16px;border:1px solid var(--glass-border);flex-wrap:wrap;width:100%;align-items:center;overflow:visible}.input-shell.glass-panel:after,.input-shell.glass-panel:before{-webkit-clip-path:inset(0 round 16px);clip-path:inset(0 round 16px)}.input-shell.glass-panel:before{inset:1px;border-radius:14px}.input-shell.glass-panel:after{inset:1px;border-radius:14px;transform:none}.file-input{display:none}.input-shell.drag-active{border-color:var(--accent);box-shadow:0 0 0 1px rgba(255,211,105,.4)}.attachment-row{width:100%;display:flex;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap;background:transparent;border:1px solid hsla(0,0%,100%,.08);border-radius:12px;padding:var(--space-2)}.attachment-chip{display:flex;align-items:center;gap:var(--space-2);min-width:180px;background:rgba(10,12,18,.35);border:1px solid hsla(0,0%,100%,.06);border-radius:10px;padding:6px 8px;cursor:-webkit-grab;cursor:grab;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.attachment-chip.dragging{opacity:.7;cursor:-webkit-grabbing;cursor:grabbing;transform:scale(1.03);box-shadow:0 16px 40px rgba(3,7,18,.45);z-index:5}.attachment-chip.drag-over{border-color:hsla(0,0%,100%,.35);box-shadow:var(--glass-glow)}.attachment-row .attachment-thumb{width:72px;height:72px;object-fit:cover;border-radius:10px;border:1px solid hsla(0,0%,100%,.12)}.attachment-meta{display:flex;flex:1 1;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:13px;color:var(--muted)}.upload-status{font-size:12px;color:var(--muted)}.upload-error{font-size:12px;color:#ff8b8b}.input-shell textarea{flex:1 1;border:none;background:transparent;color:var(--text);font-size:16px;outline:none;resize:none;min-height:24px;overflow:hidden;line-height:1.5;padding:0}.input-shell button{background:linear-gradient(135deg,rgba(245,245,248,.9),rgba(198,185,255,.7));color:#0a0a0c;border:1px solid hsla(0,0%,100%,.35);padding:10px 18px;border-radius:12px;font-weight:600;cursor:pointer;box-shadow:0 12px 30px rgba(5,12,22,.45);align-self:flex-end}.input-shell button:disabled{opacity:.6;cursor:not-allowed}.input-shell.sticky{position:-webkit-sticky;position:sticky;bottom:var(--space-4)}.toolbox-shell{display:grid;grid-gap:var(--space-2);gap:var(--space-2);padding:var(--space-3);border:1px solid var(--glass-border);border-radius:16px;background:transparent}.toolbox-header{display:flex;gap:var(--space-2);font-size:14px;color:var(--muted)}.toolbox-controls{display:flex;gap:var(--space-2);align-items:center}.toolbox-controls select{flex:1 1;background:rgba(8,12,20,.6);border:1px solid var(--glass-border);color:var(--text);padding:8px 10px;border-radius:10px;-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%)}.toolbox-form{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.toolbox-meta{display:flex;gap:var(--space-3);font-size:12px;color:var(--muted)}.toolbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-2);gap:var(--space-2)}.toolbox-item{display:flex;align-items:center;justify-content:center;min-height:64px;border:1px solid hsla(0,0%,100%,.06);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.toolbox-item:hover{border-color:hsla(0,0%,100%,.2);box-shadow:0 10px 22px rgba(5,12,22,.35);transform:translateY(-1px)}.toolbox-label{font-size:13px;color:hsla(0,0%,100%,.92);text-align:center}.toolbox-grid label{display:grid;grid-gap:6px;gap:6px;font-size:12px;color:var(--muted)}.toolbox-grid input,.toolbox-grid select{background:rgba(8,12,20,.6);border:1px solid var(--glass-border);color:var(--text);padding:8px 10px;border-radius:10px;-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(116,242,255,.35)}@media (max-width:900px){:root{--sidebar-width:0px}.app-shell{flex-direction:column}.sidebar{width:100%;border-right:none;border-bottom:none;position:fixed;inset:0;height:100vh;transform:translateX(-100%);transition:transform .25s ease;z-index:30;background:rgba(8,10,14,.98)}.chat-shell,.chat-toolbar,.top-bar{padding-left:var(--space-3);padding-right:var(--space-3)}.chat-toolbar{flex-wrap:wrap;row-gap:var(--space-2)}.engine-panel{left:auto;right:0}.toolbar-center{position:absolute;left:50%;top:var(--space-3);transform:translateX(-50%)}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.settings-panel{right:var(--space-3)}.plan-overlay{align-items:flex-start;padding-top:var(--space-3)}.media-library-panel{padding:var(--space-3);max-height:calc(100vh - (var(--space-3) * 2))}.media-library-open .help-widget{display:none}.message-bubble{max-width:100%}.app-shell.mobile-menu-open .sidebar{transform:translateX(0)}.media-picker,.mobile-menu-close,.mobile-menu-toggle{display:inline-flex}.mobile-only{display:grid}.desktop-only{display:none}}@media (max-width:1100px){.chat-body{flex-direction:column}}transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;transform-origin:center center;.model-pickers,.saved-models-section{padding:var(--space-3);border-bottom:1px solid var(--glass-border)}.model-pickers{.media-tile:hover{transform:scale(1.04);box-shadow:0 16px 40px rgba(3,7,18,.45);border-color:hsla(0,0%,100%,.35);z-index:2}display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.model-pickers label{display:grid;grid-gap:6px;gap:6px;font-size:12px;color:var(--muted)}.model-pickers select{background:rgba(8,12,20,.6);border:1px solid var(--glass-border);color:var(--text);padding:8px 10px;border-radius:10px;-webkit-backdrop-filter:blur(8px) saturate(140%);backdrop-filter:blur(8px) saturate(140%)}.model-hint{font-size:11px;color:var(--muted);margin-top:-6px}.saved-models-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:var(--space-2)}.saved-models-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-2);gap:var(--space-2)}.model-slot{position:relative;aspect-ratio:1;transition:all .2s ease;overflow:visible;border:1px solid var(--glass-border);background:rgba(10,12,18,.35)}.model-slot,.model-slot-action{display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.model-slot-action{position:absolute;inset:0;border:none;background:transparent;margin:0;border-radius:12px;overflow:hidden}.model-delete{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:999px;border:none;background:rgba(0,0,0,.85);color:#fff;font-size:14px;line-height:1;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease;cursor:pointer;z-index:2}.model-slot:hover .model-delete{opacity:1}.model-slot img{width:100%;height:100%;object-fit:cover;border-radius:8px}.model-slot:hover{background:var(--glass-bg-strong);border-color:var(--accent);box-shadow:var(--glass-glow);transform:translateY(-1px)}.model-empty-icon,.model-initial,.model-plus{font-size:28px;font-weight:600;color:var(--accent-2)}.model-empty-icon{font-size:20px;opacity:.7}.model-slot-hint{position:absolute;inset:auto 8px 8px 8px;background:rgba(8,10,16,.8);border:1px solid hsla(0,0%,100%,.08);border-radius:8px;padding:6px 8px;font-size:11px;color:var(--muted);opacity:0;transition:opacity .2s ease}.model-slot:hover .model-slot-hint{opacity:1}.saved-models-hint{margin-top:var(--space-2);font-size:11px;color:var(--muted)}.confirm-panel{width:min(420px,100%);padding:var(--space-4);display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.confirm-title{font-size:18px;font-weight:600}.confirm-body{font-size:13px;color:var(--muted)}.confirm-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.danger-button{background:rgba(255,95,95,.9);color:#120606;border:none;padding:10px 14px;border-radius:12px;font-weight:600;cursor:pointer}.danger-button:hover{filter:brightness(1.05)}.sidebar-library,.sidebar-toolbox{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--glass-border)}.expiry-reminder{padding:10px 12px;border:1px solid hsla(0,0%,100%,.08);border-radius:12px;font-size:12px;color:var(--muted);background:rgba(8,10,16,.4)}.expiry-title{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2);margin-bottom:6px}.image-wrapper{position:relative;display:inline-block}.message-images .thumb-hit{position:absolute;inset:0;width:100%;height:100%;border:none;padding:0;background:transparent;cursor:pointer;z-index:3}.media-frame{position:relative;border-radius:16px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;max-width:100%;width:100%}.media-frame:hover{transform:scale(1.02);box-shadow:0 16px 40px rgba(3,7,18,.45)}.media-frame img,.media-frame video{display:block;width:auto;height:auto;max-height:var(--media-max);max-width:100%;object-fit:contain;margin:0 auto}.media-fallback{width:min(100%,420px);padding:12px 14px;border-radius:12px;border:1px solid hsla(0,0%,100%,.12);background:rgba(10,12,18,.5);color:var(--muted);font-size:12px;line-height:1.4;text-align:left}.prompt-overlay{position:absolute;left:0;right:0;bottom:0;padding:12px;background:linear-gradient(180deg,rgba(8,10,16,0),rgba(8,10,16,.92));color:var(--accent-2);opacity:0;transition:opacity .2s ease;pointer-events:none}.image-wrapper:hover .prompt-overlay{opacity:1;pointer-events:auto}.prompt-overlay-content{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}.prompt-text{font-size:12px;line-height:1.4;color:#e5e6ff;max-height:72px;overflow:hidden}.prompt-edit-icon{border:1px solid hsla(0,0%,100%,.2);background:rgba(10,12,20,.7);color:#f5f5ff;width:28px;height:28px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.prompt-edit{display:flex;flex-direction:column;gap:8px}.prompt-edit textarea{width:100%;background:rgba(10,12,20,.85);border:1px solid hsla(0,0%,100%,.2);border-radius:10px;color:var(--text);padding:8px 10px;resize:none;font-size:12px;line-height:1.4}.prompt-edit-actions{display:flex;gap:8px;justify-content:flex-end}.prompt-edit-btn{background:rgba(20,22,34,.9);border:1px solid hsla(0,0%,100%,.2);color:var(--accent-2);font-size:12px;padding:6px 12px;border-radius:8px;cursor:pointer}.prompt-edit-btn.ghost{background:transparent}.image-actions{display:flex;gap:10px;margin-top:8px}.message-images .image-actions{position:relative;z-index:6}.message-bubble.user .image-actions{margin-bottom:4px}.image-actions.below{justify-content:flex-start}.image-action-btn{width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:8px;color:#f7f7f9;font-size:18px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,color .2s ease,transform .2s ease}.image-action-btn.download-btn{font-size:15px}.image-action-btn:hover{border-color:hsla(0,0%,100%,.6);transform:translateY(-1px)}.lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:24px;box-sizing:border-box;--lightbox-max:calc(100vh - 48px)}.lightbox-content{position:relative}.lightbox-content,.lightbox-image-shell{max-width:100%;max-height:var(--lightbox-max);width:100%;display:flex;align-items:center;justify-content:center}.lightbox-image-shell{overflow:hidden;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lightbox-image-frame{position:relative;display:inline-block;max-width:100%;max-height:var(--lightbox-max)}.lightbox-image-shell.zoomed{cursor:-webkit-grab;cursor:grab;width:min(100vw,100%);max-width:calc(100vw - 48px)}.lightbox-image-shell.dragging{cursor:-webkit-grabbing;cursor:grabbing}.lightbox-content img{max-width:100%;max-height:var(--lightbox-max);object-fit:contain;border-radius:var(--radius-md);-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;display:block}.lightbox-prompt{position:absolute;left:16px;right:16px;bottom:16px;padding:12px 14px;border-radius:12px;background:linear-gradient(180deg,rgba(8,10,16,.2),rgba(8,10,16,.92));color:#f1f2ff;font-size:13px;line-height:1.5;max-height:35vh;overflow:hidden;opacity:0;transform:translateY(6px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.lightbox-image-frame:hover .lightbox-prompt{opacity:1;transform:translateY(0)}.lightbox-tags{position:absolute;left:16px;right:16px;top:16px;padding:10px 12px;border-radius:12px;background:linear-gradient(180deg,rgba(8,10,16,.92),rgba(8,10,16,.35));color:#dbe0ff;font-size:12px;line-height:1.4;opacity:0;transform:translateY(-6px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.lightbox-image-frame:hover .lightbox-tags{opacity:1;transform:translateY(0)}.lightbox-actions{position:fixed;top:24px;right:24px;left:auto;display:flex;gap:8px}.lightbox-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:999px;border:1px solid hsla(0,0%,100%,.25);background:rgba(8,8,10,.6);color:#f7f7f9;font-size:20px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,transform .2s ease,background .2s ease}.lightbox-nav-btn.left{left:16px}.lightbox-nav-btn.right{right:16px}.lightbox-nav-btn:hover{border-color:hsla(0,0%,100%,.5);background:rgba(12,12,16,.75)}.lightbox-action-btn{width:32px;height:32px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--text);font-size:18px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.lightbox-action-btn:hover{border-color:hsla(0,0%,100%,.6);transform:translateY(-1px)}.help-widget{position:fixed;right:24px;bottom:24px;z-index:9000;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.help-fab{width:44px;height:44px;border-radius:999px;border:1px solid hsla(0,0%,100%,.25);background:rgba(10,12,20,.8);color:#f4f6ff;font-size:22px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 10px 24px rgba(4,8,20,.35);transition:transform .2s ease,border-color .2s ease,background .2s ease}.help-fab:hover{transform:translateY(-2px);border-color:hsla(0,0%,100%,.45);background:rgba(16,20,32,.9)}.help-panel{width:min(360px,calc(100vw - 48px));padding:16px;border-radius:16px;border:1px solid hsla(0,0%,100%,.14);background:rgba(10,12,18,.92);box-shadow:0 16px 40px rgba(3,7,18,.45)}.help-panel-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2);margin-bottom:10px}.help-panel-body{font-size:13px;color:var(--text);line-height:1.5}@media (max-width:720px){.help-widget{right:16px;bottom:16px}.media-grid.grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2) format("woff2"),url(/_next/static/media/KaTeX_AMS-Regular.1608a09b.woff) format("woff"),url(/_next/static/media/KaTeX_AMS-Regular.4aafdb68.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2) format("woff2"),url(/_next/static/media/KaTeX_Caligraphic-Bold.b6770918.woff) format("woff"),url(/_next/static/media/KaTeX_Caligraphic-Bold.cce5b8ec.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2) format("woff2"),url(/_next/static/media/KaTeX_Caligraphic-Regular.dad44a7f.woff) format("woff"),url(/_next/static/media/KaTeX_Caligraphic-Regular.07ef19e7.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2) format("woff2"),url(/_next/static/media/KaTeX_Fraktur-Bold.9f256b85.woff) format("woff"),url(/_next/static/media/KaTeX_Fraktur-Bold.b18f59e1.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2) format("woff2"),url(/_next/static/media/KaTeX_Fraktur-Regular.7c187121.woff) format("woff"),url(/_next/static/media/KaTeX_Fraktur-Regular.ed38e79f.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2) format("woff2"),url(/_next/static/media/KaTeX_Main-Bold.d181c465.woff) format("woff"),url(/_next/static/media/KaTeX_Main-Bold.b74a1a8b.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/_next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2) format("woff2"),url(/_next/static/media/KaTeX_Main-BoldItalic.e3f82f9d.woff) format("woff"),url(/_next/static/media/KaTeX_Main-BoldItalic.70d8b0a5.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_Main-Italic.8916142b.woff2) format("woff2"),url(/_next/static/media/KaTeX_Main-Italic.9024d815.woff) format("woff"),url(/_next/static/media/KaTeX_Main-Italic.47373d1e.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Main-Regular.0462f03b.woff2) format("woff2"),url(/_next/static/media/KaTeX_Main-Regular.7f51fe03.woff) format("woff"),url(/_next/static/media/KaTeX_Main-Regular.b7f8fe9b.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/_next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2) format("woff2"),url(/_next/static/media/KaTeX_Math-BoldItalic.f1035d8d.woff) format("woff"),url(/_next/static/media/KaTeX_Math-BoldItalic.a879cf83.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_Math-Italic.f28c23ac.woff2) format("woff2"),url(/_next/static/media/KaTeX_Math-Italic.5295ba48.woff) format("woff"),url(/_next/static/media/KaTeX_Math-Italic.939bc644.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2) format("woff2"),url(/_next/static/media/KaTeX_SansSerif-Bold.bf59d231.woff) format("woff"),url(/_next/static/media/KaTeX_SansSerif-Bold.94e1e8dc.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2) format("woff2"),url(/_next/static/media/KaTeX_SansSerif-Italic.7c9bc82b.woff) format("woff"),url(/_next/static/media/KaTeX_SansSerif-Italic.b4c20c84.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2) format("woff2"),url(/_next/static/media/KaTeX_SansSerif-Regular.74048478.woff) format("woff"),url(/_next/static/media/KaTeX_SansSerif-Regular.d4d7ba48.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Script-Regular.03e9641d.woff2) format("woff2"),url(/_next/static/media/KaTeX_Script-Regular.07505710.woff) format("woff"),url(/_next/static/media/KaTeX_Script-Regular.fe9cbbe1.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size1-Regular.eae34984.woff2) format("woff2"),url(/_next/static/media/KaTeX_Size1-Regular.e1e279cb.woff) format("woff"),url(/_next/static/media/KaTeX_Size1-Regular.fabc004a.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size2-Regular.5916a24f.woff2) format("woff2"),url(/_next/static/media/KaTeX_Size2-Regular.57727022.woff) format("woff"),url(/_next/static/media/KaTeX_Size2-Regular.d6b476ec.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2) format("woff2"),url(/_next/static/media/KaTeX_Size3-Regular.9acaf01c.woff) format("woff"),url(/_next/static/media/KaTeX_Size3-Regular.a144ef58.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2) format("woff2"),url(/_next/static/media/KaTeX_Size4-Regular.7a996c9d.woff) format("woff"),url(/_next/static/media/KaTeX_Size4-Regular.fbccdabe.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2) format("woff2"),url(/_next/static/media/KaTeX_Typewriter-Regular.6258592b.woff) format("woff"),url(/_next/static/media/KaTeX_Typewriter-Regular.d97aaf4a.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.10"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.83333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.71428571em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.85714286em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14285714em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571429em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857143em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71428571em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714286em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857143em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96285714em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55428571em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.55555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.66666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.77777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.88888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.41666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.58333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.66666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.83333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.34722222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.41666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.48611111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.55555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.69444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.83333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44027778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.28935185em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.34722222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.40509259em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.46296296em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.52083333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.69444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.83333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023148em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981481em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108004em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.28929605em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.33751205em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.38572806em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.43394407em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216008em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.57859209em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.69431051em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.83317261em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961427em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.20096463em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.24115756em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.28135048em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.32154341em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.36173633em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.40192926em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.48231511em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.57877814em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.69453376em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.83360129em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}