:root{--font:"Space Grotesk", "Archivo", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--bg:#070912;--bg-2:#0c1020;--surface:#111727b8;--surface-2:#182034d1;--surface-3:#24304cc7;--ink:#f8fbff;--text:#eef4ff;--muted:#aebbd0;--muted-2:#718199;--line:#aebfd82e;--line-2:#cbd9ee4d;--primary:#8ab7ff;--primary-2:#c8dcff;--primary-soft:#8ab7ff24;--accent:#d6ad68;--accent-2:#9ee6db;--accent-soft:#d6ad6824;--ok:#8ee0bf;--ok-soft:#8ee0bf21;--warn:#f3c67c;--warn-soft:#f3c67c24;--danger:#ff8e87;--danger-soft:#ff8e8724;--info:#9ec5ff;--info-soft:#9ec5ff24;--shadow-xs:0 1px 0 #ffffff0d inset, 0 1px 2px #0003;--shadow-sm:0 16px 38px #0000003d;--shadow-md:0 26px 80px #00000059;--radius-sm:12px;--radius-md:18px;--radius-lg:24px;--radius-xl:30px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f5f0e7;--bg-2:#ece5d8;--surface:#fffcf5c7;--surface-2:#fffaeee6;--surface-3:#f5ebdaeb;--ink:#101522;--text:#182033;--muted:#5f6d82;--muted-2:#8592a4;--line:#222c4021;--line-2:#222c4038;--primary:#254a7c;--primary-2:#10223b;--primary-soft:#254a7c1c;--accent:#9c6423;--accent-2:#1f746c;--accent-soft:#9c64231f;--ok:#14775f;--ok-soft:#14775f1c;--warn:#9a5b13;--warn-soft:#9a5b131f;--danger:#b42318;--danger-soft:#b423181c;--info:#2f5f98;--info-soft:#2f5f981c;--shadow-xs:0 1px 0 #ffffffe6 inset, 0 1px 3px #191e2814;--shadow-sm:0 16px 40px #4e412a1f;--shadow-md:0 28px 90px #4e412a2e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{background:var(--bg);width:100%;height:100%;min-height:100%}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 12% 18%, #8ab7ff29, transparent 28%), radial-gradient(circle at 82% 8%, #d6ad6821, transparent 28%), radial-gradient(circle at 74% 82%, #9ee6db1f, transparent 30%), linear-gradient(135deg, var(--bg), var(--bg-2));color:var(--text);font-family:var(--font);letter-spacing:-.012em;margin:0;font-size:13px;overflow:hidden}body:before{content:"";z-index:-10;pointer-events:none;background:radial-gradient(circle at 12% 18%, #8ab7ff29, transparent 28%), radial-gradient(circle at 82% 8%, #d6ad6821, transparent 28%), radial-gradient(circle at 74% 82%, #9ee6db1f, transparent 30%), linear-gradient(135deg, var(--bg), var(--bg-2));position:fixed;inset:0}button,input,textarea,select{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.54}a{color:inherit;text-decoration:none}img{max-width:100%}::selection{color:var(--bg);background:var(--primary-2)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes fadeLift{0%{opacity:0;filter:blur(8px);transform:translateY(12px)scale(.985)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-11px)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes counterOrbit{to{transform:rotate(-360deg)}}@keyframes shimmer{0%{transform:translate(-120%)}to{transform:translate(120%)}}@keyframes pulseGlow{0%,to{opacity:.44;transform:scale(.98)}50%{opacity:.86;transform:scale(1.04)}}@keyframes messageIn{0%{opacity:0;filter:blur(8px);transform:translateY(18px)scale(.97)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes sendPop{0%{transform:translateY(0)scale(1)}38%{transform:translateY(-3px)scale(.9)}to{transform:translateY(0)scale(1)}}@keyframes softSpin{to{transform:rotate(360deg)}}@keyframes revealLine{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes inkDrift{0%,to{filter:hue-rotate();transform:scale(1)rotate(0)}50%{filter:hue-rotate(var(--gen-hue,12deg));transform:scale(1.08)rotate(7deg)}}@keyframes scan{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes railIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:no-preference){.layout,.auth-shell,.admin-page,.fatal-card{animation:.42s cubic-bezier(.16,1,.3,1) both fadeLift}.turn{animation:.34s cubic-bezier(.16,1,.3,1) both fadeLift}.turn-local,.turn-submitting{animation:.5s cubic-bezier(.16,1,.3,1) both messageIn}.history-item{animation:.34s cubic-bezier(.16,1,.3,1) both railIn;animation-delay:calc(var(--i,0) * 28ms)}.panel,.admin-stat-card,.status-banner,.welcome-grid span{animation:.38s cubic-bezier(.16,1,.3,1) both fadeLift}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}.brand{z-index:1;align-items:center;gap:10px;min-width:0;display:flex;position:relative}.logo{color:#fff;width:38px;height:38px;box-shadow:var(--shadow-xs);background:#8ab7ff38;border:1px solid #ffffff29;border-radius:15px;flex:0 0 38px;place-items:center;display:grid;position:relative;overflow:hidden}.logo:before{content:"";clip-path:polygon(50% 100%,7% 48%,18% 7%,39% 27%,50% 18%,61% 27%,82% 7%,93% 48%);background:currentColor;width:19px;height:16px;transform:translateY(1px)}.logo:after{content:"";border-radius:inherit;background:conic-gradient(from 90deg,#0000,#ffffff61,#0000 36%);animation:4.4s linear infinite orbit;position:absolute;inset:-42%}.brand h1{letter-spacing:-.035em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:14px;font-weight:850;line-height:1.15;overflow:hidden}.brand p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:11px;line-height:1.35;overflow:hidden}.primary,.ghost{border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 14px;font-weight:800;text-decoration:none;transition:background-color .24s,border-color .24s,color .24s,transform .24s,box-shadow .24s;display:inline-flex;position:relative;overflow:hidden}.primary{background:var(--ink);color:var(--bg);box-shadow:var(--shadow-sm)}.primary:after{content:"";opacity:.5;background:linear-gradient(90deg,#0000,#ffffff73,#0000);position:absolute;inset:0;transform:translate(-120%)}.primary:hover:after{animation:.78s shimmer}.primary.small{border-radius:11px;height:31px;min-height:31px;padding:0 10px;font-size:12px}.ghost{color:var(--text);border-color:var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff0a}.ghost:hover{border-color:var(--line-2);color:var(--primary-2);background:#ffffff14;transform:translateY(-1px)}.empty{text-align:center;color:var(--muted);border:1px dashed var(--line-2);border-radius:var(--radius-lg);background:#ffffff0a;padding:24px;font-size:13px}.empty.small{padding:16px}.hint{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.5}.icon{border:0;place-items:center;display:inline-grid}.spin{animation:.8s linear infinite softSpin}.status-pill,.role-chip{border:1px solid var(--line);min-height:25px;color:var(--muted);white-space:nowrap;background:#ffffff0b;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:800;display:inline-flex}.status-completed{color:var(--ok);background:var(--ok-soft);border-color:#8ee0bf3d}.status-failed{color:var(--danger);background:var(--danger-soft);border-color:#ff8e8742}.status-running,.status-submitting,.status-pending{color:var(--info);background:var(--info-soft);border-color:#9ec5ff3d}.role-chip.admin{color:var(--accent);background:var(--accent-soft);border-color:#d6ad683d}.inline-muted{color:var(--muted-2);margin-top:5px;display:block}.layout{isolation:isolate;grid-template-columns:292px minmax(0,1fr);gap:12px;height:100vh;padding:12px;display:grid;position:relative;overflow:hidden}.ambient-field{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ambient-field span,.auth-ambient i,.admin-ambient i{aspect-ratio:1;filter:blur(56px);opacity:.22;border-radius:999px;width:42vmax;animation:8s ease-in-out infinite floatY;position:absolute}.ambient-field span:first-child,.auth-ambient i:first-child,.admin-ambient i:first-child{background:#5d8cff8f;top:-12vmax;left:-10vmax}.ambient-field span:nth-child(2),.auth-ambient i:nth-child(2),.admin-ambient i:nth-child(2){background:#d6ad6875;animation-delay:-2s;top:6vmax;right:-16vmax}.ambient-field span:nth-child(3),.auth-ambient i:nth-child(3),.admin-ambient i:nth-child(3){background:#5ae1d35c;animation-delay:-4s;bottom:-22vmax;right:12vmax}.sidebar,.main,.auth-intro,.auth-card,.admin-sidebar,.panel,.admin-stat-card,.fatal-card{-webkit-backdrop-filter:blur(24px)saturate(130%)}.sidebar,.main{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);min-height:0;box-shadow:var(--shadow-sm);overflow:hidden}.sidebar{flex-direction:column;gap:13px;padding:15px;display:flex}.main{flex-direction:column;height:calc(100vh - 24px);display:flex;position:relative}.top{z-index:4;flex:0 0 58px;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px 6px;display:flex}.top-copy{gap:2px;min-width:0;display:grid}.top-copy span{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:900}.top-copy strong{color:var(--text);letter-spacing:-.035em;white-space:nowrap;text-overflow:ellipsis;font-size:15px;line-height:1.25;overflow:hidden}.live-chip{border:1px solid var(--line);min-height:30px;color:var(--muted);background:#ffffff0b;border-radius:999px;align-items:center;gap:7px;margin-left:auto;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.live-chip i{background:var(--ok);width:7px;height:7px;box-shadow:0 0 0 5px var(--ok-soft);border-radius:50%;animation:1.6s ease-in-out infinite pulseGlow}.top-actions{align-items:center;gap:7px;display:flex}.top-actions a,.top-actions button{border:1px solid var(--line);width:36px;height:36px;color:var(--muted);background:#ffffff0e;border-radius:14px;place-items:center;padding:0;transition:background-color .2s,border-color .2s,transform .2s,color .2s;display:inline-grid}.top-actions a:hover,.top-actions button:hover{color:var(--primary-2);border-color:var(--line-2);transform:translateY(-2px)rotate(-2deg)}.content{overscroll-behavior:contain;flex:auto;min-height:0;padding:8px 0 0;scroll-padding-bottom:180px;overflow-y:auto}.content::-webkit-scrollbar{width:9px;height:9px}.history-list::-webkit-scrollbar{width:9px;height:9px}.table::-webkit-scrollbar{width:9px;height:9px}.admin-lightbox-grid::-webkit-scrollbar{width:9px;height:9px}.admin-main::-webkit-scrollbar{width:9px;height:9px}.content::-webkit-scrollbar-thumb{background:var(--line-2);background-clip:content-box;border:3px solid #0000;border-radius:999px}.history-list::-webkit-scrollbar-thumb{background:var(--line-2);background-clip:content-box;border:3px solid #0000;border-radius:999px}.table::-webkit-scrollbar-thumb{background:var(--line-2);background-clip:content-box;border:3px solid #0000;border-radius:999px}.admin-lightbox-grid::-webkit-scrollbar-thumb{background:var(--line-2);background-clip:content-box;border:3px solid #0000;border-radius:999px}.admin-main::-webkit-scrollbar-thumb{background:var(--line-2);background-clip:content-box;border:3px solid #0000;border-radius:999px}.composer-wrap{z-index:6;flex:none;align-self:center;width:min(840px,100% - 32px);padding:0 0 12px}.quota-card{border-radius:var(--radius-lg);border:1px solid var(--line);background:linear-gradient(145deg,#ffffff12,#ffffff09);gap:9px;padding:14px;display:grid;position:relative;overflow:hidden}.quota-card:before{content:"";background:radial-gradient(closest-side,#8ab7ff47,#0000);height:110px;animation:6s ease-in-out infinite floatY;position:absolute;inset:auto -20% -55%}.quota-orb{background:conic-gradient(var(--accent-2) var(--quota,0%), #ffffff14 0);opacity:.88;border-radius:50%;width:52px;height:52px;padding:5px;position:absolute;top:12px;right:12px}.quota-orb i{border-radius:inherit;background:var(--surface-2);border:1px solid var(--line);width:100%;height:100%;display:block}.quota-head{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding-right:58px;font-size:11px;display:flex}.quota-head small{text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--line);max-width:112px;color:var(--muted);background:#ffffff0e;border-radius:999px;padding:4px 8px;overflow:hidden}.quota-card b{z-index:1;color:var(--text);letter-spacing:-.07em;font-size:28px;font-weight:900;line-height:1;position:relative}.quota-card>small{z-index:1;color:var(--muted);font-size:11px;position:relative}.quota-meter{z-index:1;background:#ffffff14;border-radius:999px;height:8px;position:relative;overflow:hidden}.quota-meter i{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--accent-2), var(--accent));min-width:4px;height:100%;transition:width .48s cubic-bezier(.16,1,.3,1);display:block}.history-title{justify-content:space-between;align-items:center;gap:8px;padding:0 1px;display:flex}.history-title strong{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.history-actions{align-items:center;gap:6px;display:flex}.history-title button{border:1px solid var(--line);min-height:31px;color:var(--text);background:#ffffff0b;border-radius:12px;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:820;transition:background-color .2s,border-color .2s,transform .2s;display:inline-flex}.history-title button:hover{border-color:var(--line-2);background:#ffffff14;transform:translateY(-2px)}.history-list{flex:auto;align-content:start;gap:8px;min-height:0;padding:1px;display:grid;overflow:hidden auto}.history-item{border:1px solid var(--line);background:#ffffff0a;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:10px 8px 10px 12px;transition:background-color .2s,border-color .2s,transform .2s,box-shadow .2s;display:grid;position:relative}.history-item:after{content:"";border-radius:inherit;opacity:0;background:linear-gradient(120deg,#0000,#ffffff12,#0000);transition:opacity .2s;position:absolute;inset:0}.history-item:hover{border-color:var(--line-2);background:#ffffff12;transform:translate(2px)}.history-item:hover:after{opacity:1}.history-item.active{background:#8ab7ff1f;border-color:#8ab7ff7a;box-shadow:inset 0 0 0 1px #8ab7ff1f}.history-item.active:before{content:"";background:linear-gradient(var(--primary), var(--accent));border-radius:999px;width:3px;position:absolute;top:12px;bottom:12px;left:-1px}.history-main{width:100%;min-width:0;color:inherit;text-align:left;z-index:1;background:0 0;border:0;padding:0 0 0 2px;display:block;position:relative}.history-main b{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;font-weight:820;line-height:1.42;display:-webkit-box;overflow:hidden}.history-main small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:5px;font-size:11px;display:block;overflow:hidden}.history-item .icon.danger{width:30px;height:30px;color:var(--muted-2);z-index:1;background:0 0;border-radius:11px;transition:background-color .2s,color .2s,transform .2s;position:relative}.history-item:hover .icon.danger{color:var(--danger);background:var(--danger-soft);transform:rotate(-5deg)}.chat-shell{width:min(900px,100%);margin:0 auto;padding:0 20px 184px}.welcome-chat{text-align:center;min-height:100%;color:var(--muted);place-content:center;justify-items:center;display:grid}.welcome-stage{place-items:center;width:min(420px,72vw);height:220px;margin-bottom:20px;display:grid;position:relative}.welcome-stage>span{filter:blur(22px);opacity:.58;border-radius:999px;animation:6s ease-in-out infinite floatY;position:absolute}.welcome-stage>span:first-child{background:#8ab7ff52;width:210px;height:120px;top:34px;left:28px}.welcome-stage>span:nth-child(2){background:#d6ad6847;width:160px;height:130px;animation-delay:-2s;bottom:10px;right:18px}.welcome-stage>span:nth-child(3){background:#9ee6db3d;width:120px;height:120px;animation-delay:-4s;bottom:30px;left:130px}.welcome-frame,.art-frame{border:1px solid var(--line-2);width:230px;height:154px;color:var(--primary-2);box-shadow:var(--shadow-sm);background:#fff1;border-radius:32px;place-items:center;display:grid;position:relative;overflow:hidden}.welcome-frame:before,.art-frame:before{content:"";background:conic-gradient(#0000,#ffffff3d,#0000 32%);animation:9s linear infinite orbit;position:absolute;inset:-60%}.welcome-frame svg,.art-frame svg{z-index:1;filter:drop-shadow(0 12px 24px #8ab7ff47);position:relative}.welcome-frame i,.art-frame i{background:var(--accent);width:7px;height:7px;box-shadow:0 0 18px var(--accent);border-radius:999px;animation:1.8s ease-in-out infinite pulseGlow;position:absolute}.welcome-frame i:nth-child(2),.art-frame i:nth-child(2){top:38px;left:34px}.welcome-frame i:nth-child(3),.art-frame i:nth-child(3){background:var(--accent-2);box-shadow:0 0 18px var(--accent-2);animation-delay:-.5s;top:62px;right:46px}.welcome-frame i:nth-child(4),.art-frame i:nth-child(4){background:var(--primary);box-shadow:0 0 18px var(--primary);animation-delay:-1s;bottom:38px;left:92px}.welcome-chat h2{max-width:760px;color:var(--text);letter-spacing:-.08em;text-wrap:balance;margin:0 0 13px;font-size:clamp(42px,6vw,76px);font-weight:900;line-height:.92}.welcome-chat p{max-width:610px;color:var(--muted);margin:0 auto;font-size:15px;line-height:1.75}.welcome-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(720px,100%);margin:28px auto 0;display:grid}.welcome-grid span{border:1px solid var(--line);min-height:104px;color:var(--muted);background:#ffffff0e;border-radius:22px;align-content:center;justify-items:center;gap:5px;padding:15px 10px;font-size:12px;font-weight:760;transition:transform .22s,background-color .22s,border-color .22s;display:grid}.welcome-grid span:hover{border-color:var(--line-2);background:#ffffff14;transform:translateY(-4px)}.welcome-grid svg{color:var(--primary)}.welcome-grid b{color:var(--text);font-size:13px}.welcome-grid small{max-width:160px;color:var(--muted);line-height:1.45}.chat-thread{flex-direction:column;gap:28px;display:flex}.turn{gap:11px;display:grid}.msg{gap:10px;width:100%;display:flex}.user-msg{justify-content:flex-end}.bubble{white-space:pre-wrap;word-break:break-word;max-width:min(680px,82%);line-height:1.62}.user-msg .bubble{color:#07101d;box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#f8fbfff5,#c8dcffe6);border-radius:22px 22px 8px;padding:12px 15px}.assistant-msg{align-items:flex-start}.avatar{background:var(--primary-soft);width:34px;height:34px;color:var(--primary-2);border:1px solid var(--line);box-shadow:var(--shadow-xs);border-radius:14px;flex:none;place-items:center;margin-top:1px;display:grid}.assistant-body{width:100%;min-width:0;max-width:min(760px,100% - 44px)}.message-meta{min-height:25px;color:var(--muted-2);flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 9px;font-size:11px;display:flex}.message-meta>span:not(.status-pill){border:1px solid var(--line);background:#ffffff0b;border-radius:999px;align-items:center;min-height:23px;padding:0 8px;display:inline-flex}.image-grid,.chat-images{align-items:start;gap:11px;width:min(760px,100%);display:grid}.chat-images.image-count-1{grid-template-columns:minmax(0,auto);width:fit-content;max-width:min(460px,100%)}.chat-images.image-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-images.image-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}.chat-images.image-count-4{grid-template-columns:repeat(2,minmax(0,1fr))}.image-tile{border:1px solid var(--line);width:100%;max-width:none;box-shadow:var(--shadow-sm);background:#ffffff0e;border-radius:26px;position:relative;overflow:hidden}.image-tile:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff14}.chat-images.image-count-1 .image-tile{width:fit-content;max-width:min(460px,100%)}.image-tile img{object-fit:contain;width:100%;height:auto;max-height:540px;display:block}.chat-images.image-count-1 .image-tile img{width:auto;max-width:100%}.image-action{color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:.78;background:#05080fa8;border:1px solid #ffffff38;border-radius:14px;justify-content:center;align-items:center;gap:5px;min-width:36px;height:36px;padding:0 10px;transition:opacity .2s,transform .2s,background-color .2s;display:inline-flex;position:absolute}.image-action:hover{opacity:1;background:#05080fd6;transform:translateY(-2px)}.image-action span{font-size:12px;font-weight:800}.download{bottom:12px;right:12px}.image-edit{bottom:12px;left:12px}.image-zoom{top:12px;bottom:auto;right:12px}.chat-images.has-expanded{width:min(940px,100%);grid-template-columns:1fr!important}.chat-images.has-expanded .image-tile:not(.is-expanded){display:none}.chat-images .image-tile.is-expanded{width:100%;max-width:min(940px,100%)}.chat-images .image-tile.is-expanded img,.chat-images.image-count-1 .image-tile.is-expanded img{object-fit:contain;width:100%;max-width:100%;max-height:min(78vh,860px)}.gen-card{gap:12px;display:grid}.task-state-card{border:1px solid var(--line);width:min(570px,100%);box-shadow:var(--shadow-xs);background:#ffffff0e;border-radius:20px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;padding:12px;display:grid;position:relative;overflow:hidden}.task-state-card:before{content:"";background:linear-gradient(90deg,#0000,#ffffff17,#0000);animation:2.2s ease-in-out infinite revealLine;position:absolute;inset:0;transform:translate(-100%)}.task-state-card.error{color:var(--danger);background:var(--danger-soft);border-color:#ff8e873d}.task-state-card.progress{color:var(--info);background:linear-gradient(135deg,#9ec5ff24,#9ee6db14);border-color:#9ec5ff33}.task-state-icon{color:currentColor;z-index:1;background:#ffffff14;border-radius:13px;place-items:center;width:32px;height:32px;display:grid;position:relative}.task-state-card.progress .task-state-icon.loading svg{animation:1.1s linear infinite softSpin}.task-state-copy{z-index:1;gap:4px;min-width:0;display:grid;position:relative}.task-state-copy b{color:currentColor;font-size:13px;line-height:1.25}.task-state-copy p{color:currentColor;opacity:.88;margin:0;line-height:1.45}.task-state-spark{z-index:1;color:var(--accent);margin-top:8px;animation:1.4s ease-in-out infinite pulseGlow;position:relative}.task-progress{background:#ffffff1f;border-radius:999px;height:7px;margin-top:4px;display:block;overflow:hidden}.task-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--accent-2), var(--accent));height:100%;transition:width .42s cubic-bezier(.16,1,.3,1);display:block}.gen-placeholders{align-items:start;gap:11px;width:min(760px,100%);display:grid}.gen-placeholders.gen-count-1{grid-template-columns:1fr;width:min(390px,100%)}.gen-placeholders.gen-count-2{grid-template-columns:repeat(2,minmax(0,1fr));width:min(620px,100%)}.gen-placeholders.gen-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}.gen-placeholders.gen-count-4{grid-template-columns:repeat(2,minmax(0,1fr));width:min(620px,100%)}.gen-dot-panel{aspect-ratio:1;contain:paint;border:1px solid var(--line);width:100%;box-shadow:var(--shadow-sm);background:#ffffff0b;border-radius:28px;position:relative;overflow:hidden}.gen-ink{opacity:.82;background:radial-gradient(circle at var(--gen-a,30% 28%), #8ab7ff8a, transparent 28%), radial-gradient(circle at var(--gen-b,70% 34%), #d6ad6861, transparent 30%), radial-gradient(circle at var(--gen-c,48% 72%), #9ee6db5c, transparent 28%), radial-gradient(circle at var(--gen-d,62% 58%), #ffffff29, transparent 22%);background-size:var(--gen-size,56% 56%), 62% 62%, 70% 70%, 48% 48%;filter:blur(9px)saturate(120%);animation:inkDrift var(--gen-dur,16s) ease-in-out infinite;animation-delay:var(--gen-delay,0s);position:absolute;inset:-10%}.gen-dot-panel:before{content:"";opacity:.62;border:1px solid #ffffff38;border-radius:23px;position:absolute;inset:18px}.gen-dot-panel:after{content:"";opacity:.18;background-image:linear-gradient(#ffffff14 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0}.gen-dot-field,.gen-dot-field.secondary{z-index:2;opacity:.56;position:absolute;inset:0}.gen-dot-field:before,.gen-dot-field.secondary:before{content:"";border:1px dashed #ffffff40;border-radius:20px;position:absolute;inset:28px}.gen-dot-field.secondary:before{opacity:.68;animation:1.8s ease-in-out infinite pulseGlow;inset:52px}.gen-scanline{z-index:3;background:linear-gradient(#0000,#ffffff2e,#0000);height:42%;animation:2.3s ease-in-out infinite alternate scan;position:absolute;top:0;left:0;right:0}.composer-stack{width:100%;display:grid;position:relative}.composer{border:1px solid var(--line-2);width:100%;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(26px)saturate(135%);backdrop-filter:blur(26px)saturate(135%);background:#0c101eb8;border-radius:24px;gap:9px;padding:10px;display:grid;position:relative;overflow:hidden}:root[data-theme=light] .composer{background:#fffcf5db}.composer-glow{pointer-events:none;background:radial-gradient(closest-side,#8ab7ff40,#0000);width:60%;height:120%;animation:6s ease-in-out infinite floatY;position:absolute;inset:-40% auto auto 20%}.prompt-box{z-index:1;background:#ffffff0e;border:1px solid #0000;border-radius:18px;min-width:0;transition:border-color .2s,background-color .2s,box-shadow .2s;position:relative}.prompt-box:focus-within{background:#ffffff16;border-color:#8ab7ff7a;box-shadow:0 0 0 4px #8ab7ff1a}.prompt-box textarea{resize:none;width:100%;height:42px;max-height:178px;color:var(--text);background:0 0;border:0;outline:0;padding:10px 12px;font-size:13px;line-height:22px;display:block;overflow:auto}.prompt-box textarea::placeholder{color:var(--muted-2)}.composer-bottom{z-index:1;justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.composer-left,.upload-group,.action-group{align-items:center;gap:7px;display:flex}.composer-left{flex-wrap:wrap;justify-content:flex-start;min-width:0}.action-group{margin-left:auto}.mode-row{border:1px solid var(--line);background:#ffffff0b;border-radius:15px;align-items:center;gap:3px;padding:4px;display:flex}.mode-row button{height:30px;color:var(--muted);background:0 0;border:0;border-radius:11px;padding:0 12px;font-size:12px;font-weight:850;transition:background-color .2s,color .2s,transform .2s}.mode-row button:hover{color:var(--text);transform:translateY(-1px)}.mode-row button.on{background:var(--ink);color:var(--bg)}.upload-btn,.count-trigger{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);background:#ffffff0d;border-radius:15px;place-items:center;transition:background-color .2s,color .2s,border-color .2s,transform .2s;display:grid;position:relative}.upload-btn:hover,.count-trigger:hover{color:var(--primary-2);border-color:var(--line-2);transform:translateY(-2px)rotate(-2deg)}.upload-btn.has{color:var(--ok);background:var(--ok-soft);border-color:#8ee0bf3d}.upload-btn.ref{color:var(--info);background:var(--info-soft);border-color:#9ec5ff3d}.upload-btn input{opacity:0;cursor:pointer;position:absolute;inset:0}.count-picker{position:relative}.count-trigger{justify-content:center;gap:3px;width:56px;font-weight:850;display:flex}.count-menu{border:1px solid var(--line);background:var(--surface-2);width:58px;box-shadow:var(--shadow-md);z-index:20;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:15px;gap:3px;padding:5px;display:grid;position:absolute;bottom:46px;right:0}.count-menu button{background:0 0;border:0;border-radius:11px;width:100%;height:32px;font-weight:850}.count-menu button.on,.count-menu button:hover{background:var(--primary-soft);color:var(--primary-2)}.primary.send{border-radius:16px;width:42px;min-width:42px;height:42px;min-height:42px;padding:0}.primary.send.is-sending{animation:.55s cubic-bezier(.16,1,.3,1) both sendPop}.preview-row{z-index:1;flex-wrap:wrap;align-items:center;gap:8px;padding:1px 1px 0;display:flex;position:relative}.preview{border:1px solid var(--line);background:#ffffff0f;border-radius:16px;place-items:center;width:52px;height:52px;display:grid;position:relative;overflow:hidden}.preview.reference{border-color:#9ec5ff70;box-shadow:0 0 0 3px #9ec5ff14}.preview img{object-fit:cover;width:100%;height:100%;display:block}.preview b{color:var(--muted);text-transform:uppercase;font-size:10px}.preview button{color:#fff;background:#05080fb8;border:0;border-radius:999px;place-items:center;width:21px;height:21px;display:grid;position:absolute;top:4px;right:4px}.preview-row span{color:var(--ok);background:var(--ok-soft);border-radius:999px;padding:5px 8px;font-size:11px}.compose-status{color:var(--accent);z-index:1;padding-left:4px;font-size:11px;position:relative}.auth-page{isolation:isolate;place-items:center;height:100vh;min-height:100vh;padding:22px;display:grid;position:relative;overflow:hidden}.auth-ambient,.admin-ambient{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.auth-shell{grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);align-items:stretch;gap:14px;width:min(980px,100%);display:grid}.auth-intro,.auth-card{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-md);gap:16px;padding:24px;display:grid}.auth-intro{align-content:space-between;min-height:430px;position:relative;overflow:hidden}.auth-artboard{place-items:center;min-height:180px;display:grid;position:relative}.art-node{filter:blur(18px);opacity:.72;border-radius:999px;animation:7s ease-in-out infinite floatY;position:absolute}.art-node.one{background:#8ab7ff42;width:160px;height:94px;top:22%;left:10%}.art-node.two{background:#d6ad6842;width:130px;height:110px;animation-delay:-2s;bottom:18%;right:12%}.art-node.three{background:#9ee6db38;width:100px;height:100px;animation-delay:-4s;bottom:6%;left:42%}.auth-card{align-content:center;gap:12px;width:100%}.auth-card-head{gap:5px;display:grid}.auth-card-head span{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:900}.auth-card-head h2{letter-spacing:-.06em;margin:0;font-size:28px;line-height:1}.auth-card-head p{color:var(--muted);margin:0;line-height:1.55}.auth-copy{gap:12px;max-width:560px;display:grid}.auth-copy h2{letter-spacing:-.08em;text-wrap:balance;margin:0;font-size:clamp(42px,5.6vw,70px);line-height:.92}.auth-copy p{color:var(--muted);margin:0;font-size:15px;line-height:1.75}.auth-benefits{flex-wrap:wrap;gap:8px;display:flex}.auth-benefits span{border:1px solid var(--line);min-height:36px;color:var(--muted);background:#ffffff0b;border-radius:999px;align-items:center;gap:7px;padding:0 11px;font-size:12px;font-weight:820;display:inline-flex}.seg{border:1px solid var(--line);background:#ffffff0b;border-radius:16px;grid-template-columns:repeat(2,1fr);gap:4px;margin:2px 0;padding:5px;display:grid}.seg button{height:36px;color:var(--muted);background:0 0;border:0;border-radius:12px;font-weight:850}.seg button.on{background:var(--ink);color:var(--bg)}.auth-card label{color:var(--muted);gap:7px;margin:0;font-size:12px;font-weight:820;display:grid}.auth-card input,.mini{border:1px solid var(--line);width:100%;min-width:0;color:var(--text);background:#ffffff0d;border-radius:14px;outline:0;padding:10px 11px;transition:border-color .2s,box-shadow .2s,background-color .2s}.auth-card input:focus,.mini:focus{background:#ffffff13;border-color:#8ab7ff8a;box-shadow:0 0 0 4px #8ab7ff1f}.full{width:100%;margin-top:3px}.fatal-screen{background:var(--bg);place-items:center;min-height:100vh;padding:20px;display:grid}.fatal-card{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);width:min(440px,100%);box-shadow:var(--shadow-md);gap:11px;padding:24px;display:grid}.fatal-card span{color:var(--danger);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:900}.fatal-card h1{letter-spacing:-.05em;margin:0;font-size:26px}.fatal-card p{color:var(--muted);margin:0 0 4px;line-height:1.6}.app-skeleton.art-loading{isolation:isolate;text-align:center;background:radial-gradient(circle at 50% 38%, #8ab7ff33, transparent 28%), radial-gradient(circle at 58% 62%, #d6ad6824, transparent 30%), linear-gradient(135deg, var(--bg), var(--bg-2));place-content:center;justify-items:center;gap:20px;height:100vh;display:grid;position:relative;overflow:hidden}.loader-orbit{border:1px solid var(--line);width:164px;height:164px;box-shadow:var(--shadow-md);background:#ffffff09;border-radius:50%;place-items:center;display:grid;position:relative}.loader-orbit:before,.loader-orbit:after{content:"";border-radius:inherit;border:1px dashed #ffffff38;animation:8s linear infinite orbit;position:absolute;inset:18px}.loader-orbit:after{opacity:.5;border-style:solid;animation:6s linear infinite counterOrbit;inset:42px}.loader-orbit i{background:var(--primary);width:12px;height:12px;box-shadow:0 0 24px var(--primary);transform-origin:0 0;border-radius:50%;position:absolute}.loader-orbit i:first-child{animation:3.8s linear infinite orbit;top:0;left:50%}.loader-orbit i:nth-child(2){background:var(--accent);box-shadow:0 0 24px var(--accent);animation:4.8s linear infinite counterOrbit;top:50%;right:10px}.loader-orbit i:nth-child(3){background:var(--accent-2);box-shadow:0 0 24px var(--accent-2);animation:5.2s linear infinite orbit;bottom:24px;left:20px}.loader-orbit i:nth-child(4){background:#fff;width:8px;height:8px;animation:4.2s linear infinite counterOrbit;bottom:20px;right:32px;box-shadow:0 0 20px #fff}.loader-orbit svg{z-index:1;color:var(--ink);position:relative}.loader-copy{gap:7px;display:grid}.loader-copy b{letter-spacing:-.04em;font-size:22px}.loader-copy span{color:var(--muted)}.loader-ribbon{gap:7px;width:min(360px,72vw);display:grid}.loader-ribbon span{background:#ffffff14;border-radius:999px;height:6px;position:relative;overflow:hidden}.loader-ribbon span:before{content:"";border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--accent-2), var(--accent));width:42%;animation:1.35s ease-in-out infinite shimmer;position:absolute;inset:0}.loader-ribbon span:nth-child(2):before{animation-delay:-.35s}.loader-ribbon span:nth-child(3):before{animation-delay:-.7s}.skeleton-brand,.skeleton-card,.skeleton-list,.skeleton-top,.skeleton-composer,.skeleton-canvas,.skeleton-sidebar,.skeleton-main{display:none}.admin-page{isolation:isolate;background:0 0;grid-template-columns:266px minmax(0,1fr);gap:12px;height:100vh;min-height:100vh;padding:12px;display:grid;position:relative;overflow:hidden}.admin-sidebar{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);min-height:0;box-shadow:var(--shadow-sm);flex-direction:column;gap:13px;padding:15px;display:flex}.admin-quota-card{border-radius:var(--radius-lg);border:1px solid var(--line);background:linear-gradient(145deg,#ffffff12,#ffffff09);gap:8px;padding:14px;display:grid}.admin-quota-card span,.admin-quota-card small,.admin-main-head small{color:var(--muted);font-size:11px}.admin-quota-card b{letter-spacing:-.055em;font-size:23px;font-weight:900;line-height:1}.admin-quota-edit{gap:6px;margin-top:4px;display:grid}.admin-quota-edit label{color:var(--muted);font-size:11px;font-weight:820}.admin-quota-control{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;display:grid}.admin-nav{gap:7px;display:grid}.admin-nav button{min-height:40px;color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;align-items:center;gap:8px;padding:0 11px;font-weight:850;transition:background-color .2s,color .2s,border-color .2s,transform .2s;display:flex}.admin-nav button:hover{color:var(--text);background:#ffffff0e;transform:translate(2px)}.admin-nav button.active{background:var(--ink);color:var(--bg)}.admin-home-link{margin-top:auto;display:inline-flex!important}.admin-main{min-width:0;min-height:0;padding:4px 2px 24px;overflow:auto}.admin-main-head{justify-content:space-between;align-items:center;gap:12px;min-height:58px;margin-bottom:12px;display:flex}.admin-main-head h1{letter-spacing:-.075em;margin:2px 0 0;font-size:clamp(28px,3vw,42px);font-weight:900;line-height:.95}.admin-main-head p{color:var(--muted);margin:6px 0 0}.admin-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:11px;display:grid}.admin-stat-card{border:1px solid var(--line);min-height:86px;box-shadow:var(--shadow-xs);background:#ffffff0e;border-radius:22px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:14px;display:grid}.admin-stat-icon{background:var(--primary-soft);width:38px;height:38px;color:var(--primary-2);border-radius:15px;place-items:center;display:grid}.admin-stat-card span{color:var(--muted);font-size:11px}.admin-stat-card b{letter-spacing:-.055em;margin-top:2px;font-size:24px;font-weight:900;line-height:1;display:block}.admin-stat-card small{color:var(--muted-2);margin-top:5px;display:block}.status-banner{min-height:38px;color:var(--ok);background:var(--ok-soft);border:1px solid #8ee0bf2e;border-radius:16px;align-items:center;gap:8px;margin:0 0 11px;padding:9px 11px;display:flex}.panel{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-xs);margin-bottom:11px;padding:15px;overflow:hidden}.panel-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:11px;margin-bottom:13px;display:flex}.panel-title h2{letter-spacing:-.04em;margin:0;font-size:17px}.panel-title p{color:var(--muted);margin:4px 0 0}.admin-toolbar,.invite-tools{flex-wrap:wrap;align-items:flex-end;gap:9px;display:flex}.field-inline{color:var(--muted);gap:5px;font-size:11px;font-weight:820;display:grid}.field-inline .mini{width:98px}.compact-input{width:88px}.code-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin-top:11px;display:grid}.code{border:1px solid var(--line);color:var(--primary-2);font-family:var(--mono);background:#ffffff0b;border-radius:12px;padding:8px 9px;font-size:12px;display:inline-block}.table{border:1px solid var(--line);background:#ffffff09;border-radius:18px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:780px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:11px 12px;font-size:12px}tr:last-child td{border-bottom:0}th{z-index:1;color:var(--muted);letter-spacing:.04em;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff0f;font-size:11px;font-weight:900;position:sticky;top:0}tbody tr{transition:background-color .18s}.prompt-cell{white-space:normal;max-width:440px;color:var(--muted);line-height:1.48}.link{min-height:34px}.pagination{color:var(--muted);align-items:center;gap:10px;margin-left:auto;font-size:11px;display:flex}.pagination-actions{align-items:center;gap:6px;display:flex}.pagination-actions button{border:1px solid var(--line);height:31px;color:var(--text);background:#ffffff0b;border-radius:11px;align-items:center;gap:3px;padding:0 9px;font-weight:780;display:inline-flex}.admin-conversation-link{max-width:250px;color:var(--primary-2);text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:820;display:inline-flex}.admin-conversation-link code{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-conversation-link:hover code{text-decoration:underline}.admin-conversation-head{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;margin-bottom:11px;display:grid}.admin-conversation-head h2{word-break:break-all;margin:2px 0 0;font-size:14px}.admin-detail-loading{min-height:190px;color:var(--muted);border-radius:var(--radius-lg);background:#ffffff0b;place-content:center;justify-items:center;gap:9px;display:grid}.admin-conversation-view{border-radius:var(--radius-lg);background:#ffffff09;min-height:360px;padding:15px 0 0}.admin-conversation-view .chat-shell{margin:0;padding-bottom:30px}.admin-conversation-view .assistant-body{max-width:min(760px,100% - 44px)}.admin-loading .admin-main{overflow:hidden}.admin-loading .admin-stat-card,.skeleton-card{border:1px solid var(--line);background:#ffffff0b;border-radius:20px}.admin-thumb{object-fit:cover;border:1px solid var(--line);border-radius:14px;width:52px;height:52px;display:block}.thumb-empty{color:var(--muted)}.admin-image-stack{color:var(--muted);background:0 0;border:0;justify-items:start;gap:5px;padding:0;display:grid}.admin-thumb-grid{border:1px solid var(--line);background:#ffffff0b;border-radius:13px;gap:2px;width:70px;height:54px;display:grid;overflow:hidden}.admin-thumb-grid img{object-fit:cover;width:100%;min-width:0;height:100%;min-height:0;display:block}.admin-thumb-grid.image-total-1{grid-template-columns:1fr}.admin-thumb-grid.image-total-2{grid-template-columns:repeat(2,1fr)}.admin-thumb-grid.image-total-3,.admin-thumb-grid.image-total-4{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr)}.admin-image-stack small{font-size:11px}.admin-lightbox{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#05080fc7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-lightbox-card{background:var(--surface-2);width:min(1040px,100%);max-height:min(86vh,920px);color:var(--text);border-radius:var(--radius-xl);border:1px solid var(--line);box-shadow:var(--shadow-md);grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.admin-lightbox-head{border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;padding:14px 16px;display:flex}.admin-lightbox-head p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:760px;margin:4px 0 0;overflow:hidden}.admin-lightbox-head button{width:36px;height:36px;color:var(--text);background:#ffffff0f;border:0;border-radius:999px;place-items:center;display:grid}.admin-lightbox-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;min-height:0;padding:14px;display:grid;overflow:auto}.admin-lightbox-grid figure{gap:7px;margin:0;display:grid}.admin-lightbox-grid img{object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--line);background:#ffffff0b;width:100%;max-height:520px;display:block}.admin-lightbox-grid figcaption{color:var(--muted);font-size:12px}@media (width<=980px){.layout{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;gap:8px;padding:8px}.sidebar{border-radius:var(--radius-lg);max-height:34vh}.main{border-radius:var(--radius-lg);height:calc(66vh - 8px);min-height:540px}.history-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));overflow:auto}.top{flex-basis:54px;padding:10px 12px 6px}.live-chip{display:none}.content{padding-top:6px}.chat-shell{padding-bottom:190px;padding-left:14px;padding-right:14px}.composer-wrap{width:calc(100% - 20px);padding-bottom:8px}.auth-shell{grid-template-columns:1fr;max-width:620px}.auth-intro{min-height:auto}.admin-page{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;overflow:hidden}.admin-sidebar{border-radius:var(--radius-lg);height:auto}.admin-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-nav button{justify-content:center}.admin-home-link{margin-top:0}.admin-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){body{font-size:12px}.layout{gap:6px;padding:6px}.sidebar{gap:9px;max-height:32vh;padding:11px}.sidebar .brand p{display:none}.history-actions button{padding:0 8px}.history-actions button svg+*{display:none}.main{height:calc(68vh - 6px);min-height:520px}.top-copy span{display:none}.top-actions a,.top-actions button{border-radius:12px;width:34px;height:34px}.welcome-stage{height:168px;margin-bottom:10px}.welcome-frame{border-radius:24px;width:190px;height:124px}.welcome-chat h2{font-size:42px}.welcome-grid{grid-template-columns:1fr}.bubble{max-width:90%}.assistant-msg{gap:8px}.avatar{border-radius:12px;width:31px;height:31px}.assistant-body{max-width:calc(100% - 39px)}.chat-images,.chat-images.image-count-2,.chat-images.image-count-3,.chat-images.image-count-4,.gen-placeholders,.gen-placeholders.gen-count-2,.gen-placeholders.gen-count-3,.gen-placeholders.gen-count-4{grid-template-columns:1fr;width:min(430px,100%)}.composer{border-radius:19px;padding:8px}.composer-bottom{align-items:flex-end}.mode-row button{padding:0 9px}.upload-group{gap:5px}.upload-btn,.count-trigger{border-radius:13px;width:36px;height:36px}.count-trigger{width:52px}.primary.send{width:40px;min-width:40px;height:40px;min-height:40px}.auth-page{padding:10px}.auth-intro,.auth-card{border-radius:var(--radius-lg);padding:17px}.auth-artboard{min-height:130px}.art-frame{border-radius:24px;width:190px;height:124px}.auth-copy h2{font-size:42px}.app-skeleton.art-loading{padding:20px}.loader-orbit{width:142px;height:142px}.admin-page{gap:6px;padding:6px}.admin-sidebar,.panel{border-radius:var(--radius-lg)}.admin-nav{grid-template-columns:1fr}.admin-main-head{flex-direction:column;align-items:flex-start}.admin-summary{grid-template-columns:1fr}.pagination{flex-wrap:wrap;justify-content:space-between;width:100%}.admin-conversation-head{grid-template-columns:1fr}.admin-lightbox{padding:8px}.admin-lightbox-grid{grid-template-columns:1fr;padding:8px}}:root,:root[data-theme=light]{--font:"Fredoka", "Nunito", ui-rounded, "SF Pro Rounded", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--bg:#eef2ff;--bg-2:#fff7ed;--surface:#fffaf0;--surface-2:#fff;--surface-3:#e0f7ff;--ink:#1e1b4b;--text:#1e1b4b;--muted:#5f5b8b;--muted-2:#7d78a8;--line:#1e1b4b;--line-2:#312e81;--primary:#4f46e5;--primary-2:#312e81;--primary-soft:#e0e7ff;--accent:#f97316;--accent-2:#14b8a6;--accent-soft:#ffedd5;--ok:#0f9f6e;--ok-soft:#d1fae5;--warn:#f59e0b;--warn-soft:#fef3c7;--danger:#e11d48;--danger-soft:#ffe4e6;--info:#2563eb;--info-soft:#dbeafe;--shadow-xs:inset 2px 2px 0 #ffffffd1, inset -3px -3px 0 #1e1b4b14, 4px 5px 0 #1e1b4b29;--shadow-sm:inset 2px 2px 0 #ffffffd1, inset -4px -4px 0 #1e1b4b14, 10px 12px 0 #1e1b4b29;--shadow-md:inset 3px 3px 0 #ffffffdb, inset -5px -5px 0 #1e1b4b1a, 16px 18px 0 #1e1b4b2e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#1e1b4b;--bg-2:#312e81;--surface:#2d2777;--surface-2:#39308f;--surface-3:#493bb0;--ink:#fff7ed;--text:#fff7ed;--muted:#ddd6fe;--muted-2:#c4b5fd;--line:#fff7ed;--line-2:#fed7aa;--primary:#a5b4fc;--primary-2:#eef2ff;--primary-soft:#a5b4fc33;--accent:#fb923c;--accent-2:#5eead4;--accent-soft:#fb923c33;--shadow-xs:inset 2px 2px 0 #ffffff24, inset -3px -3px 0 #00000029, 4px 5px 0 #0000003d;--shadow-sm:inset 2px 2px 0 #ffffff24, inset -4px -4px 0 #0000002e, 10px 12px 0 #00000042;--shadow-md:inset 3px 3px 0 #ffffff24, inset -5px -5px 0 #0003, 16px 18px 0 #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body,#root{background:var(--bg)}body,body:before{background:radial-gradient(circle at 10% 14%, #ff71ce52, transparent 24%), radial-gradient(circle at 88% 10%, #ffce5c75, transparent 26%), radial-gradient(circle at 80% 88%, #86ccca6b, transparent 28%), radial-gradient(circle at 18% 82%, #818cf857, transparent 26%), linear-gradient(135deg, var(--bg), var(--bg-2))}.sidebar,.main,.auth-intro,.auth-card,.admin-sidebar,.panel,.admin-stat-card,.fatal-card,.quota-card,.task-state-card,.composer,.image-tile,.welcome-grid span{border:3px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:none}.sidebar,.main,.auth-intro,.auth-card,.admin-sidebar,.panel{border-radius:34px}.logo{border:3px solid var(--line);box-shadow:var(--shadow-xs);color:var(--ink);background:#a5b4fc}.logo:after{opacity:.18}.brand h1,.top-copy strong,.auth-copy h2,.welcome-chat h2,.admin-main-head h1{color:var(--text)}.brand p,.top-copy span,.auth-card-head span,.admin-main-head small{color:var(--accent)}.primary{background:var(--accent);color:#fff7ed;border:3px solid var(--line);box-shadow:var(--shadow-xs);text-shadow:0 1px #00000024}.primary:hover{box-shadow:var(--shadow-sm);transform:translateY(-4px)rotate(-1deg)}.primary:active{box-shadow:var(--shadow-xs);transform:translateY(2px)scale(.98)}.ghost,.top-actions a,.top-actions button,.history-title button,.upload-btn,.count-trigger,.pagination-actions button{border:3px solid var(--line);box-shadow:var(--shadow-xs);background:#fff}.ghost:hover,.top-actions a:hover,.top-actions button:hover,.history-title button:hover,.upload-btn:hover,.count-trigger:hover{color:var(--text);background:#fef3c7;transform:translateY(-3px)rotate(1deg)}.live-chip{color:#065f46;border:3px solid var(--line);box-shadow:var(--shadow-xs);background:#d1fae5}.auth-shell{grid-template-columns:minmax(0,1.18fr) minmax(350px,.82fr);width:min(1040px,100%)}.auth-intro{background:#fff8d8}.auth-card{background:#fff}.auth-copy h2{font-size:clamp(42px,5.3vw,68px);line-height:.94}.auth-card-head h2{color:var(--text)}.auth-benefits span,.testimonial-strip,.code,.message-meta>span:not(.status-pill),.status-pill,.role-chip{border:3px solid var(--line);box-shadow:var(--shadow-xs);color:var(--text);background:#fff}.auth-benefits span:first-child{background:#fce7f3}.auth-benefits span:nth-child(2){background:#dbeafe}.auth-benefits span:nth-child(3){background:#dcfce7}.seg,.mode-row{border:3px solid var(--line);background:#ede9fe;box-shadow:inset 2px 2px #ffffffc7}.seg button.on,.mode-row button.on,.admin-nav button.active{background:var(--primary);color:#fff;border:2px solid var(--line);box-shadow:4px 4px #1e1b4b2e}.auth-card input,.mini,.prompt-box{border:3px solid var(--line);background:#fff7ed;box-shadow:inset 3px 3px #1e1b4b12}.auth-card input:focus,.mini:focus,.prompt-box:focus-within{border-color:var(--primary);background:#fff;box-shadow:0 0 0 5px #4f46e529,inset 3px 3px #1e1b4b0d}.course-preview{grid-template-columns:repeat(6,1fr);place-items:center stretch;gap:12px;min-height:210px}.course-preview .art-node{opacity:.42}.course-card,.progress-demo-card,.testimonial-strip{z-index:1;border:3px solid var(--line);box-shadow:var(--shadow-sm);color:var(--text);border-radius:24px;position:relative}.course-card{align-content:center;gap:6px;min-height:118px;padding:16px;display:grid}.course-card svg{color:var(--primary)}.course-card b{font-size:17px}.course-card small,.progress-demo-card small{color:var(--muted)}.course-card.featured{background:#dbeafe;grid-column:1/4;transform:rotate(-3deg)}.course-card.mini{background:#fce7f3;grid-column:4/7;transform:rotate(2deg)}.progress-demo-card{background:#dcfce7;grid-column:2/6;gap:9px;padding:14px;display:grid;transform:rotate(-1deg)}.progress-demo-card div{justify-content:space-between;align-items:center;gap:10px;display:flex}.progress-demo-card span{color:var(--muted);font-weight:800}.progress-demo-card b{font-size:24px}.progress-demo-card i{border:3px solid var(--line);background:#fff;border-radius:999px;height:14px;display:block;overflow:hidden}.progress-demo-card em{border-radius:inherit;background:linear-gradient(90deg,#4f46e5,#14b8a6,#f97316);height:100%;display:block}.testimonial-strip{background:#fff;padding:12px 14px;transform:rotate(.8deg)}.testimonial-strip p{color:var(--text);margin:0 0 5px;font-weight:800}.testimonial-strip b{color:var(--accent);font-size:12px}.quota-card{background:#e0f2fe}.quota-orb{border:3px solid var(--line);background:conic-gradient(#f97316 var(--quota,0%), #fff 0);box-shadow:var(--shadow-xs)}.quota-orb i{border:3px solid var(--line);background:#fff7ed}.quota-head small,.quota-meter,.count-menu{border:3px solid var(--line);box-shadow:var(--shadow-xs);background:#fff}.quota-meter i{background:linear-gradient(90deg,#4f46e5,#14b8a6,#f97316)}.history-title strong{color:var(--primary-2)}.history-item{border:3px solid var(--line);box-shadow:var(--shadow-xs);background:#fff}.history-item:nth-child(3n+1){background:#dbeafe}.history-item:nth-child(3n+2){background:#fce7f3}.history-item:nth-child(3n+3){background:#dcfce7}.history-item:hover{transform:translate(4px)rotate(.6deg)}.history-item.active{border-color:var(--line);background:#fef3c7}.history-item.active:before{background:var(--accent);width:6px}.welcome-stage>span{filter:blur(14px);opacity:.75}.welcome-frame,.art-frame{border:3px solid var(--line);box-shadow:var(--shadow-md);color:var(--primary);background:#fff}.welcome-chat h2{color:var(--text);font-size:clamp(40px,5.8vw,74px)}.welcome-grid span{color:var(--text)}.welcome-grid span:first-child{background:#dbeafe;transform:rotate(-1deg)}.welcome-grid span:nth-child(2){background:#dcfce7;transform:rotate(1deg)}.welcome-grid span:nth-child(3){background:#fce7f3;transform:rotate(-.5deg)}.welcome-grid span:hover{transform:translateY(-6px)rotate(0)scale(1.02)}.user-msg .bubble{color:#fff;border:3px solid var(--line);box-shadow:var(--shadow-xs);background:#4f46e5}.avatar{border:3px solid var(--line);color:var(--text);box-shadow:var(--shadow-xs);background:#fef3c7}.assistant-body{color:var(--text)}.image-tile{background:#fff}.image-action{border:3px solid var(--line);background:#1e1b4b;box-shadow:4px 4px #1e1b4b2e}.task-state-card.progress{color:var(--text);background:#dbeafe}.task-state-card.error{color:var(--text);background:#ffe4e6}.task-state-icon{border:3px solid var(--line);box-shadow:var(--shadow-xs);background:#fff}.task-progress{border:3px solid var(--line);background:#fff;height:14px}.task-progress span{background:linear-gradient(90deg,#4f46e5,#14b8a6,#f97316)}.gen-dot-panel{border:3px solid var(--line);box-shadow:var(--shadow-sm);background:#fff}.gen-ink{opacity:.92;filter:blur(6px)saturate(1.25);background:radial-gradient(circle at var(--gen-a,30% 28%), #4f46e580, transparent 28%), radial-gradient(circle at var(--gen-b,70% 34%), #f973167a, transparent 30%), radial-gradient(circle at var(--gen-c,48% 72%), #14b8a670, transparent 28%), radial-gradient(circle at var(--gen-d,62% 58%), #ffffffd1, transparent 22%)}.composer{border:3px solid var(--line);box-shadow:var(--shadow-md);background:#fff7ed}.composer-glow{background:radial-gradient(closest-side,#f9731640,#0000)}.upload-btn.has{background:#dcfce7}.upload-btn.ref{background:#dbeafe}.preview{border:3px solid var(--line);box-shadow:var(--shadow-xs);background:#fff}.compose-status{color:var(--primary);font-weight:850}.admin-page{background:0 0}.admin-sidebar{background:#e0f2fe}.admin-quota-card{border:3px solid var(--line);box-shadow:var(--shadow-sm);background:#fff7ed}.admin-nav button{border:3px solid #0000}.admin-nav button:hover{border-color:var(--line);background:#fff;transform:translate(4px)rotate(.5deg)}.admin-stat-card:first-child{background:#dbeafe}.admin-stat-card:nth-child(2){background:#fef3c7}.admin-stat-card:nth-child(3){background:#dcfce7}.admin-stat-card:nth-child(4){background:#fce7f3}.admin-stat-icon{border:3px solid var(--line);box-shadow:var(--shadow-xs);color:var(--primary);background:#fff}.status-banner{border:3px solid var(--line);box-shadow:var(--shadow-xs);color:var(--text);background:#dcfce7}.panel{background:#fff}.table{border:3px solid var(--line);box-shadow:var(--shadow-xs);background:#fff7ed;border-radius:24px}th{color:var(--text);background:#e0e7ff}tbody tr:hover{background:#fff}.code{background:#eef2ff}@media (width<=980px){.auth-shell{grid-template-columns:1fr}.course-preview{min-height:240px}}.admin-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.table{isolation:isolate;clip-path:inset(0 round 21px);background-clip:padding-box;position:relative;overflow:auto}.table table{border-collapse:separate;border-spacing:0;overflow:hidden}.table thead th:first-child{border-top-left-radius:19px}.table thead th:last-child{border-top-right-radius:19px}.table tbody tr:last-child td:first-child{border-bottom-left-radius:19px}.table tbody tr:last-child td:last-child{border-bottom-right-radius:19px}.table th:first-child,.table td:first-child{padding-left:15px}.table th:last-child,.table td:last-child{padding-right:15px}.table th,.table td{background-clip:padding-box}:root[data-theme=dark] .admin-quota-card,:root[data-theme=dark] .panel,:root[data-theme=dark] .auth-card,:root[data-theme=dark] .composer,:root[data-theme=dark] .table,:root[data-theme=dark] .fatal-card{color:var(--text);background:#2b216f}:root[data-theme=dark] .admin-stat-card:first-child,:root[data-theme=dark] .history-item:nth-child(3n+1),:root[data-theme=dark] .welcome-grid span:first-child,:root[data-theme=dark] .task-state-card.progress{background:#3730a3}:root[data-theme=dark] .admin-stat-card:nth-child(2),:root[data-theme=dark] .history-item:nth-child(3n+2),:root[data-theme=dark] .welcome-grid span:nth-child(2){background:#7c2d12}:root[data-theme=dark] .admin-stat-card:nth-child(4),:root[data-theme=dark] .testimonial-strip,:root[data-theme=dark] .task-state-card.error{background:#831843}:root[data-theme=dark] .admin-stat-icon,:root[data-theme=dark] .task-state-icon,:root[data-theme=dark] .avatar,:root[data-theme=dark] .ghost,:root[data-theme=dark] .top-actions a,:root[data-theme=dark] .top-actions button,:root[data-theme=dark] .history-title button,:root[data-theme=dark] .upload-btn,:root[data-theme=dark] .count-trigger,:root[data-theme=dark] .pagination-actions button,:root[data-theme=dark] .status-pill,:root[data-theme=dark] .role-chip,:root[data-theme=dark] .auth-benefits span,:root[data-theme=dark] .message-meta>span:not(.status-pill),:root[data-theme=dark] .code{color:var(--text);background:#3b2d8f}:root[data-theme=dark] .admin-nav button:hover,:root[data-theme=dark] tbody tr:hover,:root[data-theme=dark] .ghost:hover,:root[data-theme=dark] .history-title button:hover,:root[data-theme=dark] .top-actions a:hover,:root[data-theme=dark] .top-actions button:hover{color:#fff7ed;background:#4c3bb0}:root[data-theme=dark] .admin-nav button.active,:root[data-theme=dark] .seg button.on,:root[data-theme=dark] .mode-row button.on,:root[data-theme=dark] .primary{color:#1e1b4b;background:#fb923c}:root[data-theme=dark] .status-banner,:root[data-theme=dark] .live-chip{color:#ecfeff;background:#115e59}:root[data-theme=dark] .admin-main-head p,:root[data-theme=dark] .panel-title p,:root[data-theme=dark] .prompt-cell,:root[data-theme=dark] .inline-muted,:root[data-theme=dark] .admin-stat-card small,:root[data-theme=dark] .admin-quota-card small,:root[data-theme=dark] .brand p{color:#ddd6fe}@media (width<=640px){.admin-head-actions{justify-content:flex-start;width:100%}}:root[data-theme=dark]{--bg:#151720;--bg-2:#20222d;--surface:#262936;--surface-2:#2d3040;--surface-3:#343847;--ink:#f2eadc;--text:#f3ecde;--muted:#c8c0cf;--muted-2:#a69eb0;--line:#d6c5ad;--line-2:#e4d1b6;--primary:#9ba7d0;--primary-2:#c7d0ef;--primary-soft:#30364d;--accent:#c98755;--accent-2:#78b4aa;--accent-soft:#432;--ok:#82c4a8;--ok-soft:#213a34;--warn:#d6a65c;--warn-soft:#443722;--danger:#d98b93;--danger-soft:#483036;--info:#9fb7df;--info-soft:#283247;--shadow-xs:inset 2px 2px 0 #ffffff1a, inset -3px -3px 0 #0000002e, 4px 5px 0 #00000038;--shadow-sm:inset 2px 2px 0 #ffffff1a, inset -4px -4px 0 #0003, 9px 11px 0 #0000003d;--shadow-md:inset 3px 3px 0 #ffffff1c, inset -5px -5px 0 #00000038, 14px 16px 0 #00000042}:root[data-theme=dark] body,:root[data-theme=dark] body:before{background:radial-gradient(circle at 10% 14%,#9678a024,#0000 25%),radial-gradient(circle at 88% 10%,#b4845224,#0000 27%),radial-gradient(circle at 80% 88%,#64a0961f,#0000 29%),radial-gradient(circle at 18% 82%,#7884aa24,#0000 27%),linear-gradient(135deg,#151720,#20222d 58%,#171a24)}:root[data-theme=dark] .admin-sidebar,:root[data-theme=dark] .sidebar{background:#223241}:root[data-theme=dark] .main,:root[data-theme=dark] .auth-intro{background:#242837}:root[data-theme=dark] .admin-quota-card,:root[data-theme=dark] .panel,:root[data-theme=dark] .auth-card,:root[data-theme=dark] .composer,:root[data-theme=dark] .table,:root[data-theme=dark] .fatal-card,:root[data-theme=dark] .image-tile,:root[data-theme=dark] .quota-card{color:var(--text);background:#2a2d3b}:root[data-theme=dark] .admin-stat-card:first-child,:root[data-theme=dark] .history-item:nth-child(3n+1),:root[data-theme=dark] .welcome-grid span:first-child,:root[data-theme=dark] .task-state-card.progress,:root[data-theme=dark] .course-card.featured{background:#30364d}:root[data-theme=dark] .admin-stat-card:nth-child(2),:root[data-theme=dark] .history-item:nth-child(3n+2),:root[data-theme=dark] .welcome-grid span:nth-child(2),:root[data-theme=dark] .progress-demo-card{background:#3e3428}:root[data-theme=dark] .admin-stat-card:nth-child(3),:root[data-theme=dark] .history-item:nth-child(3n+3),:root[data-theme=dark] .welcome-grid span:nth-child(3){background:#263d39}:root[data-theme=dark] .admin-stat-card:nth-child(4),:root[data-theme=dark] .testimonial-strip,:root[data-theme=dark] .task-state-card.error,:root[data-theme=dark] .course-card.mini{background:#40303b}:root[data-theme=dark] .admin-stat-icon,:root[data-theme=dark] .task-state-icon,:root[data-theme=dark] .avatar,:root[data-theme=dark] .ghost,:root[data-theme=dark] .top-actions a,:root[data-theme=dark] .top-actions button,:root[data-theme=dark] .history-title button,:root[data-theme=dark] .upload-btn,:root[data-theme=dark] .count-trigger,:root[data-theme=dark] .pagination-actions button,:root[data-theme=dark] .status-pill,:root[data-theme=dark] .role-chip,:root[data-theme=dark] .auth-benefits span,:root[data-theme=dark] .message-meta>span:not(.status-pill),:root[data-theme=dark] .code,:root[data-theme=dark] .welcome-frame,:root[data-theme=dark] .art-frame,:root[data-theme=dark] .logo{color:var(--text);background:#333747}:root[data-theme=dark] .admin-nav button:hover,:root[data-theme=dark] tbody tr:hover,:root[data-theme=dark] .ghost:hover,:root[data-theme=dark] .history-title button:hover,:root[data-theme=dark] .top-actions a:hover,:root[data-theme=dark] .top-actions button:hover,:root[data-theme=dark] .upload-btn:hover,:root[data-theme=dark] .count-trigger:hover{color:var(--text);background:#3b4052}:root[data-theme=dark] .admin-nav button.active,:root[data-theme=dark] .seg button.on,:root[data-theme=dark] .mode-row button.on{color:#171a24;background:#9ba7d0}:root[data-theme=dark] .primary{color:#171a24;background:#c98755}:root[data-theme=dark] .user-msg .bubble{color:#f6efe2;background:#59628a}:root[data-theme=dark] .table th{color:#f3ecde;background:#343a50}:root[data-theme=dark] .table td{color:#f3ecde;background:#2f3445}:root[data-theme=dark] .auth-card input,:root[data-theme=dark] .mini,:root[data-theme=dark] .prompt-box,:root[data-theme=dark] .seg,:root[data-theme=dark] .mode-row,:root[data-theme=dark] .quota-head small,:root[data-theme=dark] .quota-meter,:root[data-theme=dark] .count-menu,:root[data-theme=dark] .task-progress{color:var(--text);background:#202430}:root[data-theme=dark] .status-banner,:root[data-theme=dark] .live-chip,:root[data-theme=dark] .upload-btn.has{color:#e7f5ee;background:#263d39}:root[data-theme=dark] .upload-btn.ref{color:#e8ecff;background:#30364d}:root[data-theme=dark] .quota-meter i,:root[data-theme=dark] .task-progress span,:root[data-theme=dark] .progress-demo-card em{background:linear-gradient(90deg,#8f9cc7,#78b4aa,#c98755)}:root[data-theme=dark] .gen-ink{opacity:.62;filter:blur(8px)saturate(.72);background:radial-gradient(circle at var(--gen-a,30% 28%), #8291be61, transparent 28%), radial-gradient(circle at var(--gen-b,70% 34%), #be84524d, transparent 30%), radial-gradient(circle at var(--gen-c,48% 72%), #5fa0964d, transparent 28%), radial-gradient(circle at var(--gen-d,62% 58%), #f0e6d24d, transparent 22%)}:root[data-theme=dark] .admin-main-head p,:root[data-theme=dark] .panel-title p,:root[data-theme=dark] .prompt-cell,:root[data-theme=dark] .inline-muted,:root[data-theme=dark] .admin-stat-card small,:root[data-theme=dark] .admin-quota-card small,:root[data-theme=dark] .brand p,:root[data-theme=dark] .welcome-chat p,:root[data-theme=dark] .auth-copy p,:root[data-theme=dark] .course-card small,:root[data-theme=dark] .progress-demo-card small{color:#c8c0cf}@media (prefers-reduced-motion:no-preference){.chat-thread .turn{animation:none}.chat-thread .turn.turn-local,.chat-thread .turn.turn-submitting{animation:.42s cubic-bezier(.16,1,.3,1) both messageIn}}.gen-dot-panel{background:linear-gradient(145deg,#ffffffb8,#fff7edc7),radial-gradient(circle at 20% 22%,#4f46e529,#0000 34%),radial-gradient(circle at 80% 72%,#f9731624,#0000 36%)}.gen-lesson-tag{z-index:5;border:3px solid var(--line);min-height:30px;color:var(--text);box-shadow:var(--shadow-xs);background:#ffffffdb;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex;position:absolute;top:14px;left:14px}.gen-dot-field:before{background:linear-gradient(90deg,#ffffff59,#0000 42%,#ffffff38),#fff3;border-style:solid;inset:56px 28px 42px}.gen-dot-field.secondary:before{background:#ffffff61;border-style:solid;border-radius:999px;height:34px;inset:auto 42px 48px}.gen-card-footer{z-index:5;grid-template-columns:1.5fr .85fr .55fr;gap:8px;display:grid;position:absolute;bottom:16px;left:18px;right:18px}.gen-card-footer i{border:3px solid var(--line);background:#ffffffb3;border-radius:999px;height:10px;position:relative;overflow:hidden;box-shadow:inset 2px 2px #ffffffb3}.gen-card-footer i:after{content:"";border-radius:inherit;background:linear-gradient(90deg,#9ba7d0,#78b4aa,#c98755);width:44%;animation:1.8s ease-in-out infinite shimmer;position:absolute;inset:0}.gen-card-footer i:nth-child(2):after{animation-delay:-.35s}.gen-card-footer i:nth-child(3):after{animation-delay:-.7s}.image-viewer{z-index:120;-webkit-backdrop-filter:blur(10px);background:#14162094;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.image-viewer-card{border:3px solid var(--line);background:var(--surface-2);width:min(1120px,100%);max-height:min(92vh,900px);color:var(--text);box-shadow:var(--shadow-md);border-radius:32px;grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.image-viewer-card header,.image-viewer-card footer{background:#ffffff73;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.image-viewer-card header{border-bottom:3px solid var(--line)}.image-viewer-card footer{border-top:3px solid var(--line);flex-wrap:wrap;justify-content:flex-end}.image-viewer-card header div{gap:2px;display:grid}.image-viewer-card header b{font-size:15px}.image-viewer-card header span{color:var(--muted);font-size:12px}.image-viewer-card header button{border:3px solid var(--line);width:40px;height:40px;color:var(--text);box-shadow:var(--shadow-xs);background:#fff;border-radius:16px;place-items:center;display:grid}.image-viewer-stage{background:radial-gradient(circle at 18% 18%,#4f46e51a,#0000 28%),radial-gradient(circle at 82% 78%,#f973161a,#0000 30%),#ffffff47;place-items:center;min-height:0;padding:18px;display:grid}.image-viewer-stage img{object-fit:contain;border:3px solid var(--line);max-width:100%;max-height:calc(92vh - 150px);box-shadow:var(--shadow-sm);background:#fff;border-radius:24px;display:block}:root[data-theme=dark] .gen-dot-panel{background:linear-gradient(145deg,#2c303fe0,#242837e0),radial-gradient(circle at 20% 22%,#9ba7d024,#0000 34%),radial-gradient(circle at 80% 72%,#c987551f,#0000 36%)}:root[data-theme=dark] .gen-lesson-tag,:root[data-theme=dark] .gen-card-footer i,:root[data-theme=dark] .image-viewer-card header button{color:var(--text);background:#333747}:root[data-theme=dark] .gen-dot-field:before,:root[data-theme=dark] .gen-dot-field.secondary:before{background:#ffffff14}:root[data-theme=dark] .image-viewer{background:#0a0c12ad}:root[data-theme=dark] .image-viewer-card{background:#2a2d3b}:root[data-theme=dark] .image-viewer-card header,:root[data-theme=dark] .image-viewer-card footer,:root[data-theme=dark] .image-viewer-stage{background:#252936}:root[data-theme=dark] .image-viewer-stage img{background:#202430}@media (width<=640px){.image-viewer{padding:10px}.image-viewer-card{border-radius:24px}.image-viewer-card header,.image-viewer-card footer{padding:11px}.image-viewer-stage{padding:10px}.image-viewer-stage img{border-radius:18px;max-height:calc(92vh - 170px)}}
