:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark;--ink:#edf2ff;--muted:#9ba9c4;--faint:#71809c;--line:rgba(177,197,231,.13);--panel:rgba(13,22,39,.78);--panel-solid:#111d32;--panel2:rgba(20,32,53,.88);--accent:#e7c76d;--accent-ink:#182031;--field:rgba(10,17,30,.83);--user:rgba(40,64,101,.84);--assistant:rgba(12,21,37,.52);--shadow:0 18px 60px rgba(0,0,0,.3)}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{background:#0d1627;color:var(--ink);font-size:15px;line-height:1.65}button,select,textarea,input{font:inherit}button{color:inherit;cursor:pointer}.scene{position:fixed;inset:0;z-index:-3;background-size:cover;background-position:center 52%;opacity:0;transition:opacity .8s ease;image-rendering:auto}.scene-village{background-image:url('/assets/scenes/village.gif')}.scene-forest{background-image:url('/assets/scenes/forest-waterfall.gif')}.scene-sunset{background-image:url('/assets/scenes/sunset-waterfall.gif')}.scene.active{opacity:.48}.scene-shade{position:fixed;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,15,28,.88),rgba(9,17,31,.78) 40%,rgba(8,15,28,.74)),linear-gradient(0deg,rgba(8,15,28,.78),transparent 60%);transition:background .25s}.app-shell{height:100dvh;min-height:0;display:grid;grid-template-columns:270px minmax(0,1fr);padding:14px;gap:12px}.sidebar,.main-panel{border:1px solid var(--line);background:var(--panel);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:var(--shadow);min-height:0}.sidebar{border-radius:17px;padding:22px 16px 15px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:2px 6px 26px}.brand-mark,.auth-logo{width:42px;height:42px;border:1px solid rgba(234,205,122,.58);border-radius:8px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-family:"Courier New",monospace;font-size:23px;font-weight:700;position:relative;box-shadow:inset -3px -3px 0 rgba(102,77,27,.16)}.brand-mark span,.auth-logo span{font-size:12px;position:absolute;right:3px;top:1px}.brand strong{display:block;font-size:16px;letter-spacing:-.4px}.brand small,.side-label,.dialog-kicker,.eyebrow{display:block;font-family:"Courier New",monospace;font-size:9px;letter-spacing:1.4px;color:var(--muted)}.brand small{margin-top:1px;font-size:8px;letter-spacing:1.8px}.new-chat{width:100%;height:45px;border:1px solid rgba(231,199,109,.45);border-radius:9px;background:rgba(231,199,109,.1);text-align:left;padding:0 14px;font-weight:700;font-size:13px;transition:.2s}.new-chat:hover{background:rgba(231,199,109,.18);transform:translateY(-1px)}.new-chat span{color:var(--accent);font-size:21px;vertical-align:-2px;margin-right:7px}.side-label{margin:25px 7px 10px}.chat-list{overflow-y:auto;min-height:0;flex:1;display:flex;flex-direction:column;gap:4px}.side-empty{padding:10px 8px;color:var(--faint);font-size:12px}.chat-item{display:flex;align-items:center;gap:9px;padding:10px 9px;border:1px solid transparent;border-radius:7px;background:transparent;text-align:left;color:var(--muted);font-size:12px;min-width:0}.chat-item:hover,.chat-item.active{background:var(--panel2);border-color:var(--line);color:var(--ink)}.chat-item>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.chat-item .chat-glyph{color:var(--accent);font-size:14px}.chat-delete{opacity:0;border:0;background:none;color:#efaaa1;padding:1px 4px;font-size:16px}.chat-item:hover .chat-delete{opacity:1}.sidebar-bottom{border-top:1px solid var(--line);padding-top:14px}.account-line{display:flex;align-items:center;gap:9px;padding:0 2px}.avatar{height:34px;width:34px;border-radius:7px;background:rgba(231,199,109,.18);border:1px solid rgba(231,199,109,.35);display:grid;place-items:center;color:var(--accent);font-family:"Courier New",monospace}.account-copy{min-width:0;flex:1}.account-copy b,.account-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-copy b{font-size:11px}.account-copy small{font-size:9px;color:var(--muted)}.text-btn,.side-links button{border:0;background:none;color:var(--accent);font-size:11px}.side-links{display:flex;justify-content:flex-end;gap:8px;height:18px;padding-top:4px}.side-links button{font-size:9px;color:var(--muted)}.main-panel{border-radius:17px;display:grid;grid-template-rows:62px minmax(0,1fr) auto;overflow:hidden;position:relative}.topbar{display:flex;align-items:center;gap:15px;padding:0 18px;border-bottom:1px solid var(--line);background:rgba(9,16,29,.27);min-width:0}.conversation-title{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.top-actions{display:flex;align-items:center;gap:8px}.top-actions select{background:rgba(17,29,50,.85);color:var(--ink);border:1px solid var(--line);border-radius:7px;height:34px;padding:0 10px;font-size:11px;max-width:168px}.top-actions select option{background:#111d32}.select-wrap{position:relative}.provider-dot{position:absolute;z-index:1;left:10px;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:#80c6a2}.select-wrap select{padding-left:23px}.icon-btn,.scene-button{width:35px;height:35px;border:1px solid var(--line);border-radius:7px;background:rgba(17,29,50,.65);display:grid;place-items:center;color:var(--muted)}.theme-button{font-size:20px;color:var(--accent)}.scene-button{color:var(--accent);font-size:18px}.menu-toggle,.mobile-close{display:none}.messages{min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;padding:36px clamp(22px,7vw,100px) 34px}.welcome{max-width:790px;margin:7vh auto 0}.welcome-mark{color:var(--accent);font-size:22px}.eyebrow{margin:8px 0 12px}.welcome h1{font-size:clamp(34px,5vw,59px);line-height:1.1;letter-spacing:-2.5px;margin:0;font-weight:600}.welcome-sub{color:#c1cce0;font-size:15px;margin:15px 0 31px;max-width:490px}.prompt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.prompt-card{min-height:104px;text-align:left;background:rgba(13,23,41,.55);border:1px solid var(--line);border-radius:9px;padding:14px;position:relative;transition:.2s}.prompt-card:hover{border-color:rgba(231,199,109,.55);transform:translateY(-2px);background:rgba(13,23,41,.8)}.prompt-card span{display:block;color:var(--accent);font-family:"Courier New",monospace;font-size:9px;letter-spacing:.7px;margin-bottom:12px}.prompt-card b{display:block;font-size:12px;font-weight:600;max-width:145px}.prompt-card i{position:absolute;right:12px;bottom:10px;color:var(--muted);font-style:normal}.message-row{max-width:850px;margin:0 auto 26px;display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;animation:arrive .3s ease both}@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.message-icon{width:28px;height:28px;border-radius:6px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-size:13px;margin-top:2px}.message-row.user{grid-template-columns:minmax(0,1fr) 30px}.message-row.user .message-icon{grid-column:2;background:rgba(231,199,109,.17);border:1px solid rgba(231,199,109,.25);color:var(--accent);font:12px "Courier New",monospace}.message-row.user .message-body{grid-column:1;grid-row:1;text-align:right}.message-meta{color:var(--muted);font:10px "Courier New",monospace;letter-spacing:.3px;margin-bottom:5px}.message-row.user .message-meta{display:none}.message-content{font-size:15px;line-height:1.8;overflow-wrap:anywhere}.message-row.user .message-content{display:inline-block;text-align:left;background:var(--user);border:1px solid var(--line);border-radius:10px;padding:12px 15px;max-width:min(90%,680px)}.message-content p{margin:0 0 12px}.message-content p:last-child{margin-bottom:0}.message-content h1,.message-content h2,.message-content h3{font-size:19px;line-height:1.35;margin:20px 0 9px}.message-content ul,.message-content ol{padding-left:24px}.message-content code{font:13px "Courier New",monospace;background:rgba(5,10,20,.6);padding:2px 5px;border-radius:4px}.message-content pre{white-space:pre-wrap;overflow-x:auto;padding:13px;background:rgba(5,10,20,.7);border:1px solid var(--line);border-radius:8px}.message-content a{color:#a8d1fd}.source-list{font-size:11px;color:var(--muted);margin-top:14px;border-top:1px solid var(--line);padding-top:9px}.source-list a{display:block;margin-top:5px;overflow-wrap:anywhere}.copy-answer{border:0;background:none;color:var(--faint);font-size:10px;padding:8px 0}.typing{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.typing-dots{display:flex;gap:4px}.typing-dots i{width:5px;height:5px;background:var(--accent);border-radius:50%;animation:pulse 1.2s infinite}.typing-dots i:nth-child(2){animation-delay:.16s}.typing-dots i:nth-child(3){animation-delay:.32s}@keyframes pulse{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.composer-area{padding:8px clamp(15px,5vw,64px) 13px;background:linear-gradient(0deg,rgba(9,16,28,.86),rgba(9,16,28,.12));}.composer{max-width:850px;margin:auto;border:1px solid rgba(231,199,109,.31);border-radius:10px;background:var(--field);box-shadow:0 14px 40px rgba(0,0,0,.2);padding:9px 11px 8px;transition:border-color .2s}.composer:focus-within{border-color:rgba(231,199,109,.75)}.composer-tools{display:flex;align-items:center;gap:8px;min-height:29px}.tool-btn{height:27px;width:29px;border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:5px;color:var(--accent);font-size:18px;line-height:1}.composer-spacer{flex:1}.model-hint{font:9px "Courier New",monospace;color:var(--faint)}.search-toggle{height:26px;background:transparent;border:1px solid var(--line);border-radius:5px;font-size:10px;color:var(--muted);padding:0 8px}.search-toggle span{font-size:15px}.search-toggle i{font:8px "Courier New",monospace;color:var(--faint);margin-left:3px}.search-toggle.on{color:var(--accent);border-color:rgba(231,199,109,.5)}.search-toggle.on i{color:var(--accent)}.attachment-list{display:flex;gap:5px;max-width:50%;overflow:hidden}.attachment-chip{max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:3px 6px;border-radius:4px;background:rgba(231,199,109,.12);color:var(--accent);font-size:9px}.composer textarea{width:100%;resize:none;outline:0;border:0;background:transparent;color:var(--ink);padding:9px 3px 8px;min-height:57px;max-height:180px;font-size:15px;line-height:1.55}.composer textarea::placeholder{color:#8391aa}.composer-footer{display:flex;align-items:center;justify-content:space-between;color:var(--faint);font:9px "Courier New",monospace}.composer-right{display:flex;align-items:center;gap:10px}.composer-right small{font:9px system-ui,sans-serif;color:var(--faint)}.send-button{width:32px;height:32px;border:0;border-radius:7px;background:var(--accent);color:var(--accent-ink);font-size:21px;line-height:1;font-weight:700;transition:.18s}.send-button:hover{filter:brightness(1.08);transform:translateY(-1px)}.send-button:disabled{opacity:.5;cursor:wait}.privacy-note{text-align:center;color:var(--faint);font-size:9px;margin:7px auto 0}.privacy-note button{color:var(--muted);text-decoration:underline;text-underline-offset:2px;border:0;background:none;font-size:inherit;padding:0}.toast{position:fixed;z-index:20;left:50%;bottom:24px;transform:translate(-50%,15px);opacity:0;pointer-events:none;padding:10px 15px;background:var(--panel-solid);border:1px solid var(--line);border-radius:7px;box-shadow:var(--shadow);font-size:12px;transition:.25s;max-width:min(90vw,520px)}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{color:var(--ink);background:var(--panel-solid);border:1px solid var(--line);border-radius:12px;box-shadow:0 25px 100px rgba(0,0,0,.55);padding:27px}dialog::backdrop{background:rgba(3,7,14,.66);backdrop-filter:blur(5px)}.auth-dialog{width:min(440px,calc(100vw - 30px));max-height:calc(100dvh - 28px);overflow-y:auto}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:none;color:var(--muted);font-size:23px}.auth-logo{margin:2px auto 16px;width:45px;height:45px;font-size:25px}.dialog-kicker{text-align:center}.auth-dialog h2,.notice-dialog h2,.confirm-dialog h2{text-align:center;margin:6px 0;font-size:24px;letter-spacing:-.6px}.dialog-desc{text-align:center;color:var(--muted);font-size:12px;margin:0 auto 19px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-bottom:16px}.auth-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:9px 3px;color:var(--muted);font-size:12px}.auth-tabs button.active{border-color:var(--accent);color:var(--ink)}.auth-dialog form label{display:block;color:var(--muted);font-size:11px;margin:11px 0}.auth-dialog form input,.confirm-dialog>input{display:block;width:100%;margin-top:5px;padding:10px 11px;border:1px solid var(--line);border-radius:6px;background:var(--field);color:var(--ink);outline:none;font-size:13px}.auth-dialog form input:focus,.confirm-dialog>input:focus{border-color:var(--accent)}.forgot-btn{float:right;border:0;background:none;color:var(--muted);font-size:10px;margin:-7px 0 8px}.check-row{display:flex!important;align-items:flex-start;gap:8px;font-size:10px!important;line-height:1.5}.check-row input{margin:2px 0 0!important;width:auto!important}.check-row span{color:var(--muted)}.primary-btn,.danger-btn,.secondary-btn{height:42px;padding:0 15px;border:0;border-radius:6px;background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:12px;width:100%;display:flex;align-items:center;justify-content:space-between}.primary-btn span{font-size:18px}.form-error{font-size:11px;color:#ffaaa2;min-height:14px;margin:2px 0 7px}.auth-foot{border-top:1px solid var(--line);margin-top:15px;padding-top:12px;color:var(--faint);font-size:9px;text-align:center;line-height:1.6}.notice-dialog{width:min(540px,calc(100vw - 30px))}.notice-icon{margin:auto auto 12px;width:35px;height:35px;display:grid;place-items:center;border:1px solid rgba(231,199,109,.45);border-radius:50%;color:var(--accent);font:16px "Courier New",monospace}.notice-copy{font-size:12px;color:#c0cbe0;line-height:1.75;margin:18px 0}.notice-copy p{margin:0 0 12px}.notice-copy p:last-child{margin:0}.confirm-dialog{width:min(410px,calc(100vw - 28px))}.confirm-dialog>p:not(.dialog-kicker){font-size:12px;color:var(--muted)}.confirm-dialog .dialog-kicker{text-align:left}.confirm-dialog h2{text-align:left}.confirm-actions{display:flex;gap:8px;margin-top:14px}.confirm-actions button{width:auto;flex:1;justify-content:center}.danger-btn{background:#d76c68;color:white}.secondary-btn{background:rgba(255,255,255,.08);color:var(--ink);border:1px solid var(--line)}
html[data-theme="day"]{color-scheme:light;--ink:#263146;--muted:#59677e;--faint:#78859a;--line:rgba(42,56,78,.14);--panel:rgba(244,244,235,.9);--panel-solid:#f6f5ef;--panel2:rgba(229,231,222,.9);--accent:#edc54d;--accent-ink:#263146;--field:rgba(255,255,250,.92);--user:rgba(230,233,225,.9);--assistant:rgba(250,250,245,.62);--shadow:0 18px 60px rgba(35,44,53,.13)}html[data-theme="day"] .scene.active{opacity:.24}html[data-theme="day"] .scene-shade{background:linear-gradient(90deg,rgba(242,241,230,.82),rgba(247,246,237,.78) 50%,rgba(244,243,233,.72)),linear-gradient(0deg,rgba(241,240,229,.76),transparent 65%)}html[data-theme="day"] .welcome-sub{color:#59677e}html[data-theme="day"] .topbar{background:rgba(247,246,238,.45)}html[data-theme="day"] .top-actions select{background:rgba(255,255,250,.75);color:var(--ink)}html[data-theme="day"] .top-actions select option{background:#f5f4ed}html[data-theme="day"] .composer-area{background:linear-gradient(0deg,rgba(242,241,233,.92),rgba(242,241,233,.1))}html[data-theme="day"] .message-content code,html[data-theme="day"] .message-content pre{background:rgba(220,224,216,.8)}html[data-theme="day"] .scene-button,html[data-theme="day"] .icon-btn{background:rgba(255,255,250,.7)}
@media(max-width:820px){.app-shell{grid-template-columns:1fr;padding:0;gap:0}.sidebar{position:fixed;z-index:12;inset:0 auto 0 0;width:min(310px,86vw);border-radius:0 12px 12px 0;transform:translateX(-105%);transition:transform .25s;box-shadow:10px 0 50px rgba(0,0,0,.35)}.sidebar.open{transform:none}.mobile-close{display:grid;margin-left:auto}.main-panel{border-radius:0;border:0;grid-template-rows:56px minmax(0,1fr) auto}.menu-toggle{display:grid;flex-shrink:0}.topbar{gap:8px;padding:0 10px}.conversation-title{font-size:11px}.top-actions{gap:5px}.top-actions select{height:32px;padding:0 7px;font-size:10px;max-width:125px}.select-wrap select{padding-left:20px}.provider-dot{left:8px}.theme-button{display:none}.messages{padding:25px 17px 20px}.welcome{margin:8vh auto 0}.welcome h1{font-size:40px;letter-spacing:-1.8px}.welcome-sub{font-size:13px}.prompt-grid{grid-template-columns:1fr;gap:7px}.prompt-card{min-height:70px;padding:10px 12px}.prompt-card span{margin-bottom:3px}.prompt-card b{max-width:none}.prompt-card i{bottom:18px}.composer-area{padding:7px 10px calc(8px + env(safe-area-inset-bottom))}.composer{padding:7px 8px}.composer textarea{min-height:44px;font-size:14px}.composer-footer{font-size:8px}.composer-right small{font-size:8px}.privacy-note{font-size:8px}.message-content{font-size:14px}.message-row{gap:8px;grid-template-columns:27px minmax(0,1fr)}.message-icon{width:26px;height:26px}.message-row.user{grid-template-columns:minmax(0,1fr) 27px}.scene.active{opacity:.35}body.menu-open:after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:10}}@media(max-width:420px){.model-hint{display:none}.top-actions select{max-width:104px}.top-actions #modelSelect{max-width:119px}.welcome h1{font-size:35px}.composer-right small{display:none}.prompt-card{min-height:64px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
