:root{color-scheme:dark;font-family:Inter,Microsoft YaHei,PingFang SC,system-ui,sans-serif;color:#f6f9ff;background:#101b31;font-synthesis:none;--night: #101b31;--night-2: #162746;--panel: rgba(18, 34, 61, .94);--panel-solid: #172a4b;--blue: #6f9ff1;--blue-bright: #91b8ff;--ice: #dbe9ff;--muted: #9fb2d2;--line: rgba(163, 190, 233, .18);--pink: #f2a7bb;--danger: #ff9ca5;--button-glow: rgba(113, 164, 246, .36);--motion-standard: cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;background:var(--night)}button,input,textarea,select{font:inherit;letter-spacing:0}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--blue-bright);outline-offset:2px}button{color:inherit}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 18px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#6e98df;color:#0b1830;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:0 8px 24px #4174c438;transition:background .18s,transform .18s}.primary-button:hover{background:#8bb3f5;transform:translateY(-1px)}.primary-button:disabled{opacity:.5;cursor:wait;transform:none}.icon-button{width:38px;height:38px;padding:0;border:1px solid var(--line);border-radius:7px;background:#ffffff09;display:inline-grid;place-items:center;color:var(--ice);cursor:pointer;text-decoration:none}.icon-button:hover{background:#8fb4f01f;border-color:#8fb4f061}.text-button{border:0;background:transparent;color:var(--blue-bright);cursor:pointer;padding:7px}button,.icon-button,.image-result a{transition:background-color .2s var(--motion-standard),border-color .2s var(--motion-standard),box-shadow .2s var(--motion-standard),transform .16s var(--motion-standard),opacity .18s var(--motion-standard)}button:not(:disabled):not(.drawer-scrim):hover,.icon-button:not(:disabled):hover,.image-result a:hover{background-image:linear-gradient(#71a4f61f,#71a4f61f);border-color:#97c0ff94;box-shadow:inset 0 0 0 1px #b5d3ff1f,0 0 18px var(--button-glow)}button:not(:disabled):not(.drawer-scrim):active,.icon-button:not(:disabled):active,.image-result a:active{transform:translateY(2px) scale(.98)}button:disabled{background-image:none;box-shadow:none;transform:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);background:#0d172b}.auth-visual{position:relative;isolation:isolate;min-height:100vh;overflow:hidden;background:#0b172c}.auth-character-scene,.auth-character-base,.auth-character-blink{position:absolute;inset:0}.auth-character-scene{z-index:0;overflow:hidden;pointer-events:none}.auth-character-base,.auth-character-blink{background:url(/assets/konata-snow.jpg) center 42% / cover no-repeat;transform-origin:53% 68%}.auth-character-base{animation:auth-hair-breeze 5.8s ease-in-out infinite;will-change:transform}.auth-character-blink{opacity:0;background-image:url(/assets/konata-snow-blink.png);animation:auth-character-blink 8.4s linear 2.4s infinite,auth-hair-breeze 5.8s ease-in-out infinite;will-change:opacity,transform}.auth-visual:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#08101f1f,#08101f3d 58%,#0d172b),linear-gradient(0deg,rgba(7,15,29,.7),transparent 50%)}.auth-visual .snowfall{position:absolute;z-index:2}.auth-brand{position:absolute;z-index:3;top:34px;left:42px;display:flex;align-items:center;gap:10px;font-size:18px}.brand-star{color:var(--pink)}.auth-copy{position:absolute;z-index:3;left:7%;bottom:9%;max-width:560px;text-shadow:0 3px 20px rgba(0,0,0,.65)}.auth-copy h2{margin:0 0 16px;font-size:clamp(42px,5.5vw,78px);line-height:1.08;font-weight:800}.auth-copy p{margin:0;color:#dbe7fb;font-size:18px}.split-text{display:block}.split-text-line{display:block;overflow:hidden}.split-text-char{display:inline-block;opacity:0;transform:translate3d(0,1em,0) rotateX(42deg);transform-origin:50% 100%;filter:blur(8px);animation:split-text-reveal .74s var(--motion-standard) both;animation-delay:var(--split-delay);will-change:transform,opacity,filter}.auth-copy p .split-text-char{animation-duration:.58s}.auth-panel{position:relative;display:grid;place-content:center;padding:48px clamp(32px,6vw,92px);background:#0d172b}.auth-back-link{position:absolute;top:26px;right:30px;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 13px;border:1px solid rgba(151,192,255,.24);border-radius:7px;background:#ffffff0b;color:var(--ice);font-size:13px;font-weight:750;text-decoration:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background-color .2s var(--motion-standard),border-color .2s var(--motion-standard),box-shadow .2s var(--motion-standard),transform .16s var(--motion-standard)}.auth-back-link:hover{background:#71a4f621;border-color:#97c0ff94;box-shadow:inset 0 0 0 1px #b5d3ff1a,0 0 18px var(--button-glow)}.auth-back-link:active{transform:translateY(2px) scale(.98)}.auth-form{width:min(390px,100%);display:grid;gap:18px}.auth-heading{margin-bottom:8px}.auth-heading h1{margin:0;font-size:34px}.auth-heading p{margin:8px 0 0;color:var(--muted)}.auth-form label{display:grid;gap:8px;color:var(--ice);font-size:14px;font-weight:700}.auth-form input,.image-form textarea,.image-form select{width:100%;border:1px solid var(--line);border-radius:7px;background:#ffffff0b;color:#fff}.auth-form input{min-height:48px;padding:0 14px}.auth-form input::placeholder,textarea::placeholder{color:#7387a8}.auth-form input:focus,.image-form textarea:focus,.image-form select:focus{border-color:#91b8ffb3}.auth-submit{margin-top:4px}.turnstile-widget{min-height:65px;overflow:hidden}.auth-legal{width:min(390px,100%);margin:28px 0 0;color:#7183a1;font-size:12px;line-height:1.6}.notice{width:min(390px,100%);margin-bottom:18px;padding:12px 14px;border:1px solid;border-radius:7px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.notice.error{border-color:#ff9ca559;color:#ffc5ca;background:#aa2d371f}.notice.success{border-color:#7ddaba4d;color:#bdf1df;background:#368f701f}.resend-verification{width:min(390px,100%);display:grid;justify-items:start;gap:7px;margin:-8px 0 14px;overflow-wrap:anywhere}.resend-verification .text-button{max-width:100%;padding:5px 7px;white-space:normal;line-height:1.45;min-height:36px;text-align:left;overflow-wrap:anywhere}.resend-verification .text-button:disabled{opacity:.7;cursor:not-allowed;color:#b1c2de}.resend-verification .notice{width:100%;margin:0;padding:9px 11px;font-size:12px}.workspace-page{position:relative;height:100dvh;display:grid;grid-template-columns:264px minmax(420px,1fr) minmax(300px,350px);overflow:hidden;background:#0e1b32 url(/assets/konata-snow.jpg) center / cover fixed;isolation:isolate}.workspace-page:before{content:"";position:absolute;inset:0;z-index:-1;background:#071122c2;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.snowfall{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.snowflake{position:absolute;top:-12px;left:var(--flake-left);width:var(--flake-size);height:var(--flake-size);border-radius:50%;background:rgba(255,255,255,var(--flake-opacity));box-shadow:0 0 5px #c9e0ff59;animation:snowfall var(--flake-duration) linear var(--flake-delay) infinite;will-change:transform}@keyframes snowfall{to{transform:translate3d(var(--flake-drift),110vh,0) rotate(180deg)}}.conversation-sidebar,.image-studio{height:100dvh;background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.conversation-sidebar{display:flex;flex-direction:column;border-right:1px solid var(--line);background:#0d1d35ad;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.sidebar-brand{min-height:78px;padding:14px 15px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line)}.sidebar-brand img{width:43px;height:43px;border-radius:50%;object-fit:cover;border:2px solid rgba(145,184,255,.55)}.sidebar-brand div{min-width:0;display:grid;gap:3px}.sidebar-brand strong{font-size:14px;white-space:nowrap}.sidebar-brand span{color:var(--muted);font-size:10px;text-transform:uppercase}.new-chat-button{margin:16px 14px 10px;min-height:42px;border:1px solid rgba(145,184,255,.38);border-radius:7px;background:#6f9ff121;display:flex;align-items:center;justify-content:center;gap:9px;color:#dfeaff;font-weight:750;cursor:pointer}.new-chat-button:hover{background:#6f9ff138}.conversation-list{flex:1;overflow-y:auto;padding:4px 10px}.conversation-row{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;min-height:44px;margin:2px 0;border-radius:6px;transition:background-color .22s var(--motion-standard),box-shadow .22s var(--motion-standard),transform .18s var(--motion-standard)}.conversation-row:before{content:"";position:absolute;z-index:0;inset:7px auto 7px 0;width:2px;border-radius:2px;background:var(--blue-bright);opacity:0;transform:scaleY(.45);transition:opacity .2s var(--motion-standard),transform .2s var(--motion-standard)}.conversation-row:after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,rgba(133,179,248,.16),transparent 78%);opacity:0;transform:translate(-35%);transition:opacity .22s var(--motion-standard),transform .3s var(--motion-standard)}.conversation-row:hover{transform:translate(2px);background:#6f9ff117;box-shadow:inset 0 0 0 1px #97c0ff29,0 0 14px #5c94eb1f}.conversation-row:hover:before,.conversation-row.selected:before{opacity:1;transform:scaleY(1)}.conversation-row:hover:after{opacity:1;transform:none}.conversation-row.selected{background:#6f9ff129}.conversation-row>button{position:relative;z-index:1}.conversation-row>button:first-child{min-width:0;min-height:42px;padding:0 9px;border:0;background:transparent;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;cursor:pointer}.conversation-row>button:first-child:hover{border-color:transparent;background:transparent;background-image:none;box-shadow:none;transform:none}.delete-chat{width:30px;height:30px;border:0;background:transparent;color:transparent;cursor:pointer}.conversation-row:hover .delete-chat,.delete-chat:focus-visible{color:var(--muted)}.delete-chat:hover{color:var(--danger)}.sidebar-empty{padding:14px;color:var(--muted);font-size:12px;line-height:1.6}.sidebar-character{position:relative;flex:none;height:128px;overflow:hidden;border-top:1px solid var(--line);outline:0;cursor:default}.sidebar-character:focus-visible{box-shadow:inset 0 0 0 2px var(--blue-bright)}.sidebar-character img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 34%;-webkit-user-select:none;user-select:none;transition:opacity .28s var(--motion-standard),transform .32s var(--motion-standard),filter .28s var(--motion-standard)}.character-sleep{opacity:.68}.character-awake{opacity:0}.wake-mark{position:absolute;top:12px;right:18px;color:var(--pink);font-size:25px;font-weight:900;opacity:0;transform:translateY(6px) scale(.8);text-shadow:0 0 14px rgba(242,167,187,.62);transition:opacity .2s var(--motion-standard),transform .28s var(--motion-standard)}.sidebar-character[data-awake=true] .character-sleep{opacity:0;transform:translateY(-6px) scale(1.025)}.sidebar-character[data-awake=true] .character-awake{opacity:1;transform:translateY(-6px) scale(1.025);filter:brightness(1.08)}.sidebar-character[data-awake=true] .wake-mark{opacity:1;transform:none}.chat-workspace{min-width:0;height:100dvh;display:grid;grid-template-rows:70px minmax(0,1fr) auto auto;background:#0a162a9e}.workspace-header{padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#0d1c34b8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.chat-title{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1 auto;overflow:hidden}.online-dot{width:8px;height:8px;border-radius:50%;background:#74d7b0;box-shadow:0 0 0 4px #74d7b01a}.chat-title div{display:grid;min-width:0;flex:1 1 auto;overflow:hidden;gap:3px}.chat-title strong{max-width:42vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.chat-title span{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:11px}.header-actions{display:flex;flex:0 0 auto;gap:8px}.message-list{overflow-y:auto;padding:26px clamp(20px,5vw,72px);scroll-behavior:smooth}.message,.welcome-state{animation:message-enter .36s var(--motion-standard) both}.welcome-state{min-height:100%;display:grid;place-content:center;justify-items:center;text-align:center;padding:28px}.welcome-state img{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid rgba(145,184,255,.48);box-shadow:0 18px 45px #040c1a66}.welcome-state h1{margin:20px 0 8px;font-size:clamp(25px,3vw,36px)}.welcome-state p{max-width:520px;margin:0;color:var(--muted);line-height:1.65}.prompt-suggestions{margin-top:24px;display:flex;justify-content:center;flex-wrap:wrap;gap:9px}.prompt-suggestions button{min-height:36px;padding:0 13px;border:1px solid var(--line);border-radius:6px;background:#ffffff0a;display:inline-flex;align-items:center;gap:6px;color:var(--ice);cursor:pointer}.prompt-suggestions button:hover{border-color:#91b8ff73;background:#6f9ff11a}.message{max-width:840px;margin:0 auto 26px;display:flex;gap:12px}.message-user{justify-content:flex-end}.message-avatar{flex:none;width:32px;height:32px;border-radius:50%;object-fit:cover;margin-top:3px}.message-body{position:relative;min-width:0;max-width:min(720px,88%)}.message-user .message-body{padding:11px 15px;border:1px solid rgba(149,184,240,.28);border-radius:8px 3px 8px 8px;background:#5782ca2e}.message-meta{margin-bottom:7px;color:var(--blue-bright);font-size:11px;font-weight:750}.message-user .message-meta{display:none}.markdown{color:#edf4ff;font-size:14px;line-height:1.78;overflow-wrap:anywhere}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown code{padding:2px 5px;border-radius:4px;background:#040c198c;color:#c7dafe;font-family:Cascadia Code,Consolas,monospace;font-size:.9em}.markdown pre{overflow-x:auto;padding:14px;border:1px solid var(--line);border-radius:6px;background:#0a162a}.markdown pre code{padding:0;background:transparent}.markdown blockquote{margin-left:0;padding-left:14px;border-left:3px solid var(--blue);color:var(--muted)}.copy-button{position:absolute;top:-4px;right:-42px;width:30px;height:30px;opacity:0}.message-body:hover .copy-button,.copy-button:focus-visible{opacity:1}.message-user .copy-button{right:auto;left:-42px}.typing{max-width:840px;margin:0 auto;display:flex;gap:7px;align-items:center;color:var(--blue-bright)}.typing i{width:5px;height:5px;border-radius:50%;background:currentColor;animation:pulse 1s infinite alternate}.typing i:nth-child(3){animation-delay:.2s}.typing i:nth-child(4){animation-delay:.4s}@keyframes pulse{to{opacity:.25;transform:translateY(-3px)}}.workspace-error{margin:0 clamp(20px,5vw,72px) 10px;padding:9px 12px;border:1px solid rgba(255,156,165,.3);border-radius:6px;color:#ffc4ca;background:#94283529;font-size:13px;animation:notice-enter .24s var(--motion-standard) both}.chat-composer{position:relative;z-index:4;margin:0 clamp(20px,5vw,72px) 22px;min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:end;gap:8px;padding:8px;border:1px solid rgba(158,188,235,.27);border-radius:8px;background:#0a182ee0;box-shadow:0 16px 40px #01081433}.composer-main{min-width:0;display:grid;gap:4px}.model-menu{position:relative;z-index:8;width:fit-content;max-width:100%;display:flex;align-items:center;gap:7px;padding-left:10px}.model-menu-label{color:var(--muted);font-size:11px}.model-menu-trigger{min-width:148px;max-width:min(260px,60vw);height:30px;padding:0 9px 0 11px;display:flex;align-items:center;justify-content:space-between;gap:9px;border:1px solid rgba(158,194,248,.28);border-radius:6px;background:#ffffff0e;color:var(--ice);cursor:pointer}.model-menu-trigger span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.model-menu.is-open .model-menu-trigger{border-color:#97c0ff94;box-shadow:0 0 18px var(--button-glow)}.model-menu-trigger svg{flex:none;transition:transform .2s var(--motion-standard)}.model-menu.is-open .model-menu-trigger svg{transform:rotate(180deg)}.model-menu-popover{position:absolute;left:42px;bottom:calc(100% + 8px);width:min(250px,calc(100vw - 48px));max-height:220px;overflow-y:auto;padding:5px;border:1px solid rgba(162,197,248,.26);border-radius:7px;background:#0d1d35c7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 16px 34px #020a1861,inset 0 1px #ffffff0d;animation:menu-enter .18s var(--motion-standard) both}.model-menu-popover [role=option]{width:100%;min-height:34px;padding:0 9px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;border-radius:5px;background:transparent;color:var(--ice);text-align:left;cursor:pointer}.model-menu-popover button[role=option]:hover,.model-menu-popover button[role=option]:focus-visible{border-color:transparent;background:#7eaaf029;background-image:none;box-shadow:none;transform:none}.model-menu-popover [aria-selected=true]{background:#6f9ff133;color:#fff}.chat-composer textarea{width:100%;min-height:40px;max-height:140px;resize:vertical;padding:9px 10px;border:0;outline:0;background:transparent;color:#fff;line-height:1.5}.send-button{width:42px;height:42px;border:0;border-radius:6px;display:grid;place-items:center;background:#79a5ee;color:#0c1930;cursor:pointer}.send-button:disabled{opacity:.35;cursor:default}.image-studio{border-left:1px solid var(--line);display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto}.studio-header{position:sticky;z-index:10;top:0;flex:none;min-height:78px;padding:17px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#0d1d35e6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.studio-header h2{margin:0 0 3px;font-size:16px}.studio-header p{margin:0;color:var(--muted);font-size:11px}.image-form{padding:16px 18px 18px;display:grid;gap:14px;border-bottom:1px solid var(--line)}.image-form label{display:grid;gap:7px;color:var(--ice);font-size:12px;font-weight:700}.image-form textarea{min-height:98px;padding:11px;resize:vertical;line-height:1.55}.reference-image-field{min-width:0;display:grid;gap:7px}.reference-image-label{color:var(--ice);font-size:12px;font-weight:700}.reference-image-label small{margin-left:4px;color:var(--muted);font-size:10px;font-weight:500}.reference-image-upload{min-height:62px;padding:10px 12px;display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:center;column-gap:9px!important;row-gap:2px!important;border:1px dashed rgba(154,190,242,.36);border-radius:7px;background:#ffffff09;color:var(--ice);cursor:pointer;transition:border-color .18s var(--motion-standard),background .18s var(--motion-standard),box-shadow .18s var(--motion-standard),transform .12s ease}.reference-image-upload>svg{grid-row:1 / 3;color:#ffd0dc}.reference-image-upload>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px}.reference-image-upload>small{color:var(--muted);font-size:10px;font-weight:500}.reference-image-upload:hover{border-color:#91b8ffad;background:#71a4f61a;box-shadow:0 0 18px #71a4f61f}.reference-image-upload:active{transform:translateY(2px) scale(.99)}.reference-image-upload.is-disabled{cursor:wait;opacity:.55;box-shadow:none;transform:none}.reference-image-grid{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.reference-image-card{min-width:0;padding:6px;display:grid;grid-template-columns:minmax(0,1fr);gap:3px;border:1px solid rgba(154,190,242,.28);border-radius:7px;background:#08152a6b;transition:border-color .18s var(--motion-standard),background .18s var(--motion-standard),box-shadow .18s var(--motion-standard)}.reference-image-card:hover{border-color:#91b8ff7a;background:#1126468a;box-shadow:0 0 16px #71a4f61a}.reference-image-thumbnail{position:relative;min-width:0;aspect-ratio:4 / 3;overflow:hidden;border-radius:5px;background:#0d1a30}.reference-image-thumbnail img{width:100%;height:100%;display:block;object-fit:cover}.reference-image-thumbnail span{position:absolute;top:5px;left:5px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:5px;background:#050e1dc2;color:#fff;font-size:10px;font-weight:800}.reference-image-card>strong{min-width:0;overflow:hidden;color:var(--ice);font-size:10px;white-space:nowrap;text-overflow:ellipsis}.reference-image-card>small{color:var(--muted);font-size:9px}.reference-image-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.image-form .reference-image-toolbar button,.image-form .reference-image-card-action{width:100%;height:25px;padding:0;display:grid;place-items:center;gap:0;border:1px solid rgba(157,190,238,.22);border-radius:5px;background:#ffffff0b;color:#bcd4fa;cursor:pointer}.image-form .reference-image-card-action{font:inherit}.image-form .reference-image-toolbar button:last-child{color:#ffc1cc}.image-form .reference-image-toolbar button:hover,.image-form .reference-image-toolbar button:focus-visible,.image-form .reference-image-card-action:hover,.image-form .reference-image-card-action:focus-visible{border-color:#91b8ff94;background:#71a4f624;background-image:none;box-shadow:0 0 12px #71a4f61f;outline:none;transform:none}.image-form .reference-image-toolbar button:active,.image-form .reference-image-card-action:active{transform:translateY(1px) scale(.95)}.image-form .reference-image-toolbar button:disabled,.image-form .reference-image-card-action.is-disabled{cursor:default;opacity:.34;box-shadow:none;transform:none;pointer-events:none}.reference-image-add{min-height:36px;padding:0 10px;display:flex!important;grid-template-columns:none;flex-direction:row;align-items:center;justify-content:center;gap:7px!important;border:1px dashed rgba(154,190,242,.32);border-radius:7px;background:#ffffff08;color:var(--ice);cursor:pointer;transition:border-color .18s var(--motion-standard),background .18s var(--motion-standard),box-shadow .18s var(--motion-standard),transform .12s ease}.reference-image-add:hover{border-color:#91b8ff9e;background:#71a4f61a;box-shadow:0 0 14px #71a4f61a}.reference-image-add:active{transform:translateY(1px) scale(.99)}.reference-image-add.is-disabled{cursor:default;opacity:.46;box-shadow:none;pointer-events:none}.reference-image-error{color:#ffc5ca;font-size:11px;font-weight:500;line-height:1.45}.size-selector{position:relative;z-index:8;display:grid;gap:7px}.size-selector-label{color:var(--ice);font-size:12px;font-weight:700}.size-menu-trigger{width:100%;min-height:42px;padding:0 11px;display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:9px;border:1px solid rgba(163,190,233,.3);border-radius:7px;background:#ffffff0e;color:#f7f9ff;text-align:left;cursor:pointer}.size-menu-trigger span,.size-menu-trigger small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.size-menu-trigger small{color:#aebfdb;font-size:11px;font-weight:500}.size-selector.is-open .size-menu-trigger{border-color:#91b8ffb8;box-shadow:0 0 0 3px #6f9ff129,0 0 20px #71a4f62e}.size-menu-trigger svg{flex:none;transition:transform .2s var(--motion-standard)}.size-selector.is-open .size-menu-trigger svg{transform:rotate(180deg)}.size-menu-trigger:disabled{cursor:wait;opacity:.56}.size-menu-popover{position:absolute;z-index:8;top:calc(100% + 8px);left:0;width:100%;max-width:calc(100vw - 32px);max-height:220px;overflow-y:auto;padding:6px;border:1px solid rgba(164,196,244,.34);border-radius:8px;background:#122544e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 42px #0108167a,inset 0 1px #ffffff12;animation:menu-enter .18s var(--motion-standard) both}.size-menu-option{width:100%;min-height:52px;padding:8px 9px;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ice);text-align:left;cursor:pointer}.size-menu-option>span{min-width:0;display:grid;gap:3px}.size-menu-option strong{font-size:13px;letter-spacing:0}.size-menu-option small{color:#aebfdb;font-size:11px;line-height:1.35}.size-menu-option svg{color:#ffd0dc}.size-menu-option:hover,.size-menu-option:focus-visible{border-color:#91b8ff57;background:#709ee824;background-image:none;box-shadow:inset 0 0 0 1px #ffffff09,0 0 16px #71a4f61f;outline:none;transform:none}.size-menu-option:focus-visible{box-shadow:inset 0 0 0 1px #ffffff0d,0 0 0 2px #91b8ff6b}.size-menu-option[aria-selected=true]{background:#6692dc33;border-color:#f2a7bb61;color:#fff}.image-login-gate{min-height:320px;margin:auto 18px;padding:28px 20px;display:grid;place-content:center;justify-items:center;gap:16px;border:1px solid rgba(159,190,237,.24);border-radius:8px;background:#0814276b;text-align:center}.image-login-gate>svg{color:var(--pink);filter:drop-shadow(0 0 12px rgba(242,167,187,.22))}.image-login-gate h3{margin:0 0 7px;font-size:16px}.image-login-gate p{max-width:240px;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.image-login-gate .primary-button{margin-top:4px}.gallery-header{padding:15px 18px 10px;display:flex;align-items:center;justify-content:space-between}.gallery-header h3{margin:0;font-size:13px}.gallery-header span{color:var(--muted);font-size:11px}.image-gallery{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:9px;padding:0 18px 18px}.gallery-empty{grid-column:1 / -1;min-height:150px;display:grid;place-content:center;justify-items:center;color:#7187aa;text-align:center}.gallery-empty p{margin:8px 0;font-size:12px}.image-result{position:relative;aspect-ratio:1;margin:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#0d1a30}.image-result img{width:100%;height:100%;object-fit:cover;display:block}.image-result a{position:absolute;right:7px;bottom:7px;width:30px;height:30px;display:grid;place-items:center;border-radius:6px;background:#07101fd1;color:#fff;opacity:0;transition:opacity .18s}.image-result:hover a,.image-result a:focus-visible{opacity:1}.center-page,.app-loading{min-height:100vh;display:grid;place-items:center;background:#0f1d35 url(/assets/konata-snow.jpg) center/cover}.center-page:before{content:"";position:fixed;inset:0;background:#07101fc2}.verify-box{position:relative;width:min(430px,calc(100% - 32px));padding:42px;display:grid;justify-items:center;text-align:center;border:1px solid var(--line);border-radius:8px;background:#11223df0}.verify-box h1{font-size:25px}.verify-box p{color:var(--muted);line-height:1.6}.verify-box .primary-button{margin-top:12px}.app-loading{align-content:center;gap:13px;color:var(--muted)}.app-loading img{width:68px;height:68px;object-fit:cover;border-radius:50%}.admin-page{min-height:100vh;padding:32px clamp(20px,6vw,86px);background:#101c32}.admin-page>header{display:flex;align-items:center;gap:14px;margin-bottom:30px}.admin-page h1{margin:0;font-size:27px}.admin-page header p{margin:5px 0 0;color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px}.stats-grid article{min-height:126px;padding:19px;border:1px solid var(--line);border-radius:7px;background:#172944;display:grid;grid-template-columns:30px 1fr;align-items:start}.stats-grid article span{color:var(--muted);font-size:13px}.stats-grid article strong{grid-column:1/-1;font-size:31px}.stats-grid small{font-size:13px;color:var(--muted)}.user-table{padding:20px;border-top:1px solid var(--line)}.user-table-heading{min-height:50px;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:14px}.user-table-heading h2{margin:0 0 4px;font-size:17px}.user-table-heading p{margin:0;color:var(--muted);font-size:11px}.admin-feedback{max-width:420px;padding:8px 10px;border:1px solid;border-radius:6px;font-size:12px;line-height:1.4}.admin-feedback.success{border-color:#66daaa4d;background:#2d896929;color:#b9f5d9}.admin-feedback.error{border-color:#ff9ca552;background:#97283629;color:#ffc5ca}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:13px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{color:var(--muted);font-size:11px;text-transform:uppercase}.user-account-cell{min-width:190px;display:grid;gap:4px}.user-account-cell strong{color:var(--ice);overflow-wrap:anywhere}.user-account-cell span{color:var(--muted);font-size:11px}.usage-cell{min-width:136px;display:flex;gap:8px}.usage-cell>span{min-width:62px;display:grid;gap:3px;color:var(--muted);font-size:10px}.usage-cell strong{color:var(--ice);font-size:12px;white-space:nowrap}.limit-controls{min-width:232px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.limit-controls label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;color:var(--muted);font-size:11px}.limit-controls input{width:82px;min-width:0;height:34px;padding:0 8px;border:1px solid rgba(163,190,233,.28);border-radius:6px;background:#ffffff0e;color:var(--ice)}.limit-controls input:focus-visible{outline:none;border-color:#91b8ffb3;box-shadow:0 0 0 2px #6f9ff124}.limit-save-button{width:36px;height:36px}.limit-save-button:disabled{cursor:wait;opacity:.58}.mobile-only,.drawer-scrim{display:none}.assistant-settings-scrim{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:20px;overflow-y:auto;background:#030914b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:settings-scrim-enter .2s var(--motion-standard) both}.assistant-settings{width:min(480px,100%);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;padding:22px;border:1px solid rgba(166,196,239,.3);border-radius:8px;background:#0e1d35eb;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 22px 60px #0107128c,inset 0 1px #ffffff0f;animation:settings-dialog-enter .24s var(--motion-standard) both;overscroll-behavior:contain}.assistant-settings h2{font-size:18px;margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid rgba(242,167,187,.38);line-height:1.3}.assistant-settings form{display:grid;gap:15px}.assistant-settings label{display:grid;gap:7px;color:var(--ice);font-size:13px;font-weight:700;overflow-wrap:anywhere}.assistant-settings :is(input,select,textarea){width:100%;min-width:0;border:1px solid rgba(163,190,233,.27);border-radius:7px;background:#ffffff0e;color:#f7f9ff}.assistant-settings input,.assistant-settings select{min-height:42px;padding:0 11px}.assistant-settings textarea{min-height:112px;max-height:240px;padding:10px 11px;resize:vertical;line-height:1.55}.assistant-settings select option{color:#eef4ff;background:#172a4b}.assistant-settings :is(input,select,textarea):focus-visible{border-color:var(--blue-bright);box-shadow:0 0 0 3px #6f9ff133;outline:none}.style-selector{position:relative;min-width:0;display:grid;gap:7px;color:var(--ice)}.style-selector-label{font-size:13px;font-weight:700}.style-menu-trigger{width:100%;min-height:42px;padding:0 11px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(163,190,233,.3);border-radius:7px;background:#ffffff0e;color:#f7f9ff;cursor:pointer}.style-menu-trigger svg{flex:none;transition:transform .2s var(--motion-standard)}.style-selector.is-open .style-menu-trigger{border-color:#91b8ffb8;box-shadow:0 0 0 3px #6f9ff129,0 0 20px #71a4f62e}.style-selector.is-open .style-menu-trigger svg{transform:rotate(180deg)}.style-menu-trigger:disabled{cursor:wait;opacity:.56}.style-menu-popover{position:absolute;z-index:8;top:calc(100% + 8px);left:0;width:100%;max-width:calc(100vw - 32px);max-height:220px;overflow-y:auto;padding:6px;border:1px solid rgba(164,196,244,.34);border-radius:8px;background:#122544e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 42px #0108167a,inset 0 1px #ffffff12;animation:menu-enter .18s var(--motion-standard) both}.style-menu-option{width:100%;min-height:56px;padding:8px 9px;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ice);text-align:left;cursor:pointer}.style-menu-option>span{min-width:0;display:grid;gap:3px}.style-menu-option strong{font-size:13px;letter-spacing:0}.style-menu-option small{color:#aebfdb;font-size:11px;line-height:1.35;overflow-wrap:anywhere}.style-menu-option svg{color:#ffd0dc}.style-menu-option:hover,.style-menu-option:focus-visible{border-color:#91b8ff57;background:#709ee824;background-image:none;box-shadow:inset 0 0 0 1px #ffffff09,0 0 16px #71a4f61f;outline:none;transform:none}.style-menu-option:focus-visible{box-shadow:inset 0 0 0 1px #ffffff0d,0 0 0 2px #91b8ff6b}.style-menu-option[aria-selected=true]{background:#6692dc33;border-color:#f2a7bb61;color:#fff}.style-menu-option:active{transform:none}.assistant-avatar-setting{min-width:0;padding:11px;display:grid;grid-template-columns:60px minmax(0,1fr) 38px 38px;align-items:center;gap:9px;border:1px solid rgba(163,190,233,.22);border-radius:7px;background:#ffffff09}.assistant-avatar-preview{width:60px;aspect-ratio:1;display:block;border:2px solid rgba(145,184,255,.48);border-radius:50%;overflow:hidden;object-fit:cover;background:#0d1a30;box-shadow:0 0 18px #71a4f629}.assistant-avatar-setting>div{min-width:0;display:grid;gap:4px}.assistant-avatar-setting strong{font-size:13px}.assistant-avatar-setting span{color:var(--muted);font-size:11px;line-height:1.4;overflow-wrap:anywhere}.assistant-avatar-setting .icon-button:disabled{cursor:not-allowed}.assistant-settings [role=alert]{margin:-3px 0 0;padding:9px 11px;border:1px solid rgba(255,156,165,.32);border-radius:6px;background:#97283629;color:#ffc5ca;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.assistant-settings-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:3px}.assistant-settings-actions button{min-height:40px;flex:0 1 132px;padding:0 15px;border:1px solid rgba(163,190,233,.26);border-radius:7px;cursor:pointer}.assistant-settings-actions button[type=button]{background:#ffffff0b;color:var(--ice)}.assistant-settings-actions button[type=submit]{background:#79a5ee;color:#0b1830;font-weight:800}.assistant-settings-actions button:disabled{cursor:wait;opacity:.56}.avatar-crop-scrim{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px;overflow-y:auto;background:#020711cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:settings-scrim-enter .2s var(--motion-standard) both}.avatar-crop-dialog{width:min(440px,100%);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);padding:18px;overflow-y:auto;border:1px solid rgba(166,196,239,.34);border-radius:8px;background:#0c1b33f0;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:0 24px 68px #0106109e,inset 0 1px #ffffff0f;animation:settings-dialog-enter .24s var(--motion-standard) both;overscroll-behavior:contain}.avatar-crop-dialog header{min-height:38px;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.avatar-crop-dialog h3{margin:0;font-size:16px}.avatar-crop-stage{position:relative;width:100%;aspect-ratio:1;overflow:hidden;border:1px solid rgba(163,190,233,.26);border-radius:7px;background:#09162a}.avatar-zoom-control{margin-top:14px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;color:var(--ice);font-size:12px;font-weight:700}.avatar-zoom-control input{min-width:0;accent-color:var(--blue-bright);cursor:pointer}.avatar-crop-dialog [role=alert]{margin:12px 0 0;color:#ffc5ca;font-size:12px;overflow-wrap:anywhere}.avatar-crop-actions{margin-top:16px;display:flex;justify-content:flex-end;gap:9px}.avatar-crop-actions button{min-height:40px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(163,190,233,.26);border-radius:7px;background:#ffffff0b;cursor:pointer}.avatar-crop-actions button:last-child{background:#79a5ee;color:#0b1830;font-weight:800}.avatar-crop-actions button:disabled{cursor:wait;opacity:.56}@media(max-width:1060px){.workspace-page{grid-template-columns:240px minmax(380px,1fr)}.image-studio{position:fixed;z-index:20;top:0;right:0;width:min(360px,92vw);transform:translate(102%);transition:transform .42s var(--motion-standard),box-shadow .42s var(--motion-standard);box-shadow:0 0 #0000}.image-studio.drawer-open{transform:none;box-shadow:-18px 0 45px #0000004d}.mobile-only{display:inline-grid}.drawer-scrim{display:block;position:fixed;z-index:15;inset:0;border:0;background:#03091294;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:drawer-scrim-in .24s var(--motion-standard) both}}@keyframes drawer-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes auth-hair-breeze{0%,to{transform:translate3d(-1px,1px,0) rotate(-.08deg) scale(1.003)}50%{transform:translate3d(2px,-2px,0) rotate(.12deg) scale(1.008)}}@keyframes auth-character-blink{0%,44%,48%,to{opacity:0}45%,47%{opacity:1}}@keyframes split-text-reveal{to{opacity:1;transform:translateZ(0) rotateX(0);filter:blur(0)}}@keyframes message-enter{0%{opacity:0;transform:translateY(7px)}}@keyframes menu-enter{0%{opacity:0;transform:translateY(6px) scale(.98)}}@keyframes notice-enter{0%{opacity:0;transform:translateY(4px)}}@keyframes settings-scrim-enter{0%{opacity:0}to{opacity:1}}@keyframes settings-dialog-enter{0%{opacity:0;transform:translateY(8px) scale(.985)}}@media(max-width:760px){.snowflake:nth-child(n+19){display:none}.auth-page{grid-template-columns:1fr}.auth-visual{position:absolute;inset:0;min-height:100%}.auth-visual:before{background:#060e1cba}.auth-brand{top:24px;left:24px}.auth-copy{display:none}.auth-panel{position:relative;min-height:100vh;padding:88px 24px 34px;background:linear-gradient(0deg,#0d172b 10%,#0d172bb3)}.auth-back-link{top:18px;right:18px}.resend-verification{width:100%}.workspace-page{grid-template-columns:1fr}.conversation-sidebar{position:fixed;z-index:20;top:0;left:0;width:min(290px,88vw);transform:translate(-102%);transition:transform .42s var(--motion-standard),box-shadow .42s var(--motion-standard);box-shadow:0 0 #0000}.conversation-sidebar.drawer-open{transform:none;box-shadow:18px 0 45px #0000004d}.chat-workspace{width:100vw}.workspace-header{padding:0 12px;gap:8px}.workspace-header .icon-button{width:34px;height:34px}.header-actions{gap:4px}.chat-title{gap:7px;flex:1 1 0}.chat-title strong{max-width:38vw}.message-list{padding:20px 15px}.message-body{max-width:88%}.copy-button{display:none}.chat-composer{margin:0 12px 12px}.workspace-error{margin:0 12px 8px}.prompt-suggestions{display:grid;width:100%;max-width:270px}.prompt-suggestions button{justify-content:center}.stats-grid{grid-template-columns:1fr}.user-table-heading{align-items:flex-start;flex-direction:column}}@media(max-width:400px){.assistant-settings-scrim{padding:10px;align-items:start}.assistant-settings{max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);padding:16px}.assistant-avatar-setting{grid-template-columns:52px minmax(0,1fr) 34px 34px;gap:7px;padding:9px}.assistant-avatar-preview{width:52px}.assistant-avatar-setting .icon-button{width:34px;height:34px}.assistant-settings-actions button{flex-basis:100%}.avatar-crop-scrim{padding:10px;align-items:start}.avatar-crop-dialog{max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);padding:14px}.auth-panel{padding-right:18px;padding-left:18px}.auth-back-link{right:14px}}@media(max-height:600px){.assistant-settings-scrim,.avatar-crop-scrim{align-items:start;overflow-y:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.snowflake{animation:none!important;display:none}.sidebar-character img,.wake-mark{transform:none!important}.message,.model-menu-popover,.workspace-error,.welcome-state{animation:none!important}.style-menu-popover,.size-menu-popover,.assistant-settings-scrim,.assistant-settings,.avatar-crop-scrim,.avatar-crop-dialog{animation:none!important;transform:none!important}.split-text-char{opacity:1!important;transform:none!important;filter:none!important}.auth-character-scene,.auth-character-scene *{animation:none!important;transform:none!important}}
