@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color-scheme:dark;--bg:#10141c;--side:#0b0e15;--panel:#171c26;--panel-hover:#202733;--border:#2a303c;--text:#f1f3f7;--muted:#969eae;--accent:#c0f5d3;--ink:#163323;--shadow:0 18px 70px #0003}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:16px}button,input,textarea,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button{color:inherit}button,a,textarea,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent)}button{transition:background .18s,transform .18s,border-color .18s}button:hover{background:var(--panel-hover)}button:active{transform:scale(.97)}.app{display:flex;min-height:100dvh}aside{width:268px;background:var(--side);border-right:1px solid var(--border);padding:33px 20px 18px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:20}.brand{display:flex;align-items:center;gap:13px;color:var(--text);text-decoration:none;font-weight:700;font-size:18px;padding:0 8px}.brandmark{background:var(--accent);color:var(--ink);width:39px;height:41px;border-radius:12px;display:grid;place-items:center;font-size:28px;position:relative;font-family:Manrope,sans-serif;font-weight:800}.brandmark span{position:absolute;font-size:15px;right:3px;top:0}.brand-sub{display:block;font-size:10px;letter-spacing:3.4px;color:var(--muted);margin-top:5px}.new-chat{width:100%;display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px;margin-top:38px;font-size:14px;font-weight:500}.new-chat>span{font-size:23px;line-height:1}kbd{margin-left:auto;font:11px inherit;color:var(--muted)}.history-label{font-size:11px;letter-spacing:1.4px;color:var(--muted);margin:32px 12px 16px}.history{flex:1;overflow:auto}.history-empty{font-size:14px;line-height:1.8;color:var(--muted);padding:8px 12px}.history-row{display:flex;align-items:center;margin:3px 0;border-radius:9px}.history-row.active{background:var(--panel)}.history-row>button:first-child{background:none;border:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:12px;flex:1;min-width:0;font-size:14px}.delete-chat{border:0;background:none;opacity:0;color:var(--muted);padding:8px}.history-row:hover .delete-chat,.delete-chat:focus{opacity:1}.sidebar-bottom{padding-top:20px}.local-note{border:1px solid var(--border);padding:16px 12px;display:flex;gap:10px;border-radius:11px;font-size:13px;line-height:1.5}.small-spark{color:var(--accent);font-size:19px}.local-note small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.profile{display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;text-align:left;padding:22px 5px 4px;font-size:14px}.avatar{background:#27332f;color:#d3eadb;display:grid;place-items:center;width:35px;height:35px;border-radius:50%;font-size:12px}.profile small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.gear{margin-left:auto;font-size:19px;color:var(--muted)}main{margin-left:268px;width:calc(100% - 268px);height:100dvh;display:flex;flex-direction:column}header{height:86px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;font-size:13px;color:var(--muted);gap:15px}.header-left,.header-right{display:flex;align-items:center;gap:17px}.header-left{min-width:0}#chatTitle{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}.header-divider{color:#495161}.demo-badge{border:1px solid var(--border);border-radius:20px;padding:6px 10px;font-size:11px;white-space:nowrap}.icon-button{border:0;background:transparent;width:36px;height:36px;border-radius:9px;font-size:23px;color:var(--muted);display:grid;place-items:center;flex-shrink:0}.mobile-menu{display:none}.conversation{overflow-y:auto;flex:1;padding:20px 34px;scroll-behavior:smooth}.welcome{max-width:760px;margin:5vh auto 0}.intro-mark{color:var(--accent);font-size:47px;line-height:1;margin-bottom:27px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;color:var(--muted)}h1{font-family:Manrope,sans-serif;font-size:clamp(36px,4vw,54px);line-height:1.2;letter-spacing:-2px;font-weight:500;margin:18px 0}h1 span{color:var(--accent)}.welcome>p{color:var(--muted);font-size:16px;margin:20px 0 37px}.suggestions{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.suggestions button{position:relative;background:transparent;border:1px solid var(--border);border-radius:13px;text-align:left;padding:19px 20px;min-height:114px}.suggestions button:hover{background:var(--panel);transform:translateY(-3px);border-color:#738d7e}.card-icon{display:block;color:var(--accent);font-size:24px;line-height:24px;margin-bottom:12px}.code-icon{font-size:18px}.suggestions strong{display:block;font-size:14px;font-weight:500;margin-bottom:6px}.suggestions button>span:not(.card-icon){color:var(--muted);font-size:12px}.suggestions b{position:absolute;right:18px;top:20px;color:var(--muted);font-weight:400}.composer-wrap{width:calc(100% - 68px);max-width:760px;margin:25px auto 0;position:relative}#composer{border:1px solid #394251;border-radius:17px;background:var(--panel);padding:16px 17px 12px;box-shadow:var(--shadow);transition:border-color .2s}#composer:focus-within{border-color:#82998d}textarea{width:100%;resize:none;color:var(--text);background:transparent;border:0;outline:none!important;line-height:1.6;font-size:15px;max-height:160px;min-height:53px}textarea::placeholder{color:var(--muted)}.composer-tools,.composer-left{display:flex;align-items:center;gap:10px}.composer-tools{justify-content:space-between;margin-top:6px}.tool-divider{height:18px;width:1px;background:var(--border)}.model-control{display:flex;align-items:center;gap:6px;color:var(--accent);font-size:15px}.model-control select{color:var(--muted);border:0;background:var(--panel);font-size:12px;max-width:190px;padding:5px;cursor:pointer}.send{border:0;background:var(--accent);color:var(--ink);width:35px;height:35px;border-radius:10px;font-size:24px}.send:hover{background:#ddffe9;transform:translateY(-2px)}.composer-footer{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:10px;margin:12px 4px}.keyboard-tip{white-space:nowrap}.keyboard-tip span{margin:0 4px}main>footer{text-align:center;font-size:10px;color:var(--muted);padding:17px 10px 21px}main>footer span{color:var(--accent);margin-left:7px}#messages{max-width:760px;margin:auto}.message{padding:24px 0;animation:appear .25s ease}.message-header{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;margin-bottom:13px}.message-header .avatar{width:28px;height:28px;font-size:10px}.assistant-icon{color:var(--accent);font-size:24px;width:28px;text-align:center}.message-body{line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px}.user .message-body{background:var(--panel);border-radius:14px;padding:17px 20px}.message-actions{margin-top:9px}.copy{background:none;border:0;color:var(--muted);font-size:12px;padding:5px}.attachments{display:flex;gap:8px;flex-wrap:wrap}.attachment{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:9px;padding:7px;margin-bottom:10px;max-width:235px;font-size:12px;background:var(--bg)}.attachment img{width:37px;height:37px;object-fit:cover;border-radius:5px}.attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment button{border:0;background:none;color:var(--muted)}.drop-hint{display:none;position:absolute;inset:0;background:var(--panel);border:2px dashed var(--accent);border-radius:17px;z-index:4;place-items:center;color:var(--accent);pointer-events:none}.dragging .drop-hint{display:grid}dialog{width:min(520px,calc(100% - 28px));background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:20px;padding:28px;box-shadow:var(--shadow)}dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between}h2{font-family:Manrope,sans-serif;font-size:24px;font-weight:600;margin:9px 0}.dialog-heading+p{color:var(--muted);line-height:1.6;font-size:14px}dialog label{display:block;font-size:13px;margin-top:18px}dialog input,dialog select{width:100%;margin-top:8px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:9px;padding:11px}.settings-note{font-size:12px;color:var(--muted);line-height:1.6;margin-top:15px}.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:25px}.primary-button{padding:11px 17px;border:0;border-radius:9px;background:var(--accent);color:var(--ink);font-size:14px}.danger-button{border:0;background:transparent;color:#ef9b9b;font-size:12px}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--text);color:var(--bg);padding:13px 20px;border-radius:10px;box-shadow:var(--shadow);z-index:100;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s}#toast.visible{opacity:1}#scrim{display:none}[hidden]{display:none!important}[data-theme=light]{color-scheme:light;--bg:#f8fafb;--side:#eff2f5;--panel:#fff;--panel-hover:#e7edf0;--border:#d8dfe5;--text:#1b2530;--muted:#63707e;--accent:#21784d;--ink:#fff;--shadow:0 12px 45px #273a4510}[data-theme=light] .brandmark,[data-theme=light] .send,[data-theme=light] .primary-button{background:#bcefcf;color:#143e26}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(min-height:950px){.welcome{margin-top:4vh}}@media(max-width:1100px){aside{width:235px;padding-inline:15px}main{margin-left:235px;width:calc(100% - 235px)}header{padding-inline:25px}.workspace-title,.header-divider{display:none}.welcome{margin-top:2vh}.keyboard-tip{display:none}}@media(max-width:720px){aside{transform:translateX(-100%);transition:transform .2s;width:270px}.nav-open aside{transform:none}.nav-open #scrim{display:block;position:fixed;inset:0;border:0;background:#0008;z-index:19}main{margin:0;width:100%}header{height:70px;padding:0 18px}.mobile-menu{display:grid}.header-left,.header-right{gap:8px}#chatTitle{max-width:150px;font-size:12px}.conversation{padding:15px 22px}.welcome{margin-top:20px}.intro-mark{font-size:36px;margin-bottom:25px}h1{font-size:38px;letter-spacing:-1.5px}.eyebrow{font-size:9px;letter-spacing:1.3px}.welcome>p{font-size:14px;margin:18px 0 27px}.suggestions{gap:9px}.suggestions button{padding:16px 13px;min-height:120px}.suggestions button>span:not(.card-icon){font-size:11px;line-height:1.5;display:block}.suggestions strong{font-size:13px}.suggestions b{right:12px;top:13px}.composer-wrap{width:calc(100% - 32px);margin-top:15px}.composer-footer{font-size:9px;justify-content:center}main>footer{padding:9px 10px 14px}.delete-chat{opacity:1}textarea{font-size:16px}.dialog-actions{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.brand-logo{width:43px;height:43px}.intro-logo{width:58px;height:58px;margin-bottom:26px;box-shadow:0 8px 40px #bdf4d111;border-radius:18px}.message-logo{width:29px;height:29px;border-radius:8px}.header-control{background:none;border:1px solid var(--border);border-radius:9px;padding:8px 11px;font-size:13px;white-space:nowrap}.header-control[aria-pressed=true]{border-color:#b8a5f7;color:#c8b7ff;background:#9377dd18}.incognito .intro-logo{filter:grayscale(1)}.incognito #privacyNote{color:#c8b7ff}.model-control{color:var(--text);font-size:13px;gap:8px}.model-control img{border-radius:6px}.auth-brand{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.auth-tabs{display:flex;gap:5px;background:var(--bg);padding:5px;border-radius:10px;margin-bottom:28px}.auth-tabs button,.library-filters button{border:0;background:transparent;border-radius:7px;padding:9px 17px;color:var(--muted);font-size:14px}.auth-tabs button{flex:1}.auth-tabs .selected,.library-filters .selected{background:var(--panel-hover);color:var(--text)}#authSubtitle{color:var(--muted);font-size:14px;line-height:1.6}.auth-submit{width:100%;margin:15px 0 4px;min-height:43px;font-weight:600}.text-button{background:none;border:0;color:var(--accent);font-size:13px;text-decoration:none;padding:10px 0;cursor:pointer;display:inline-block}#authCode{font-size:26px;letter-spacing:8px;text-align:center}#authError,#lockError{color:#ef9b9b;font-size:14px;line-height:1.5;min-height:8px}.auth-submit:disabled,.send:disabled{opacity:.5;cursor:wait}.library-filters{display:flex;gap:6px;flex-wrap:wrap;margin:24px 0}#libraryDialog{width:min(850px,calc(100% - 28px));max-height:85dvh}#libraryGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:15px}.library-empty{grid-column:1/-1;text-align:center;color:var(--muted);padding:60px 20px;font-size:15px;line-height:1.6}.library-card{border:1px solid var(--border);border-radius:13px;padding:12px;min-width:0}.library-card img,.library-file-icon{width:100%;height:135px;object-fit:cover;border-radius:8px;background:var(--bg)}.library-file-icon{display:grid;place-items:center;font-size:45px;color:var(--accent)}.library-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;margin-top:12px}.library-card small{display:block;color:var(--muted);font-size:12px;margin-top:7px}.attachment a{color:var(--accent);text-decoration:none;padding:4px}.response-error{color:var(--muted);border-left:2px solid var(--border);padding-left:15px}.thinking{color:var(--muted);font-size:14px;padding:20px 0;animation:appear .3s}.header-right{gap:8px}.header-left{flex:1}#privacyNote{font-size:12px}.composer-footer{align-items:center}.suggestions strong{font-size:15px}.suggestions button>span:not(.card-icon){font-size:13px}.history-label{font-size:12px}.local-note small,.profile small{font-size:12px}main>footer{font-size:12px}.eyebrow{font-size:12px;letter-spacing:1.4px}#accountDetails{overflow-wrap:anywhere;line-height:1.7}.brand-sub{font-size:11px}.welcome{margin-top:2vh}.history-empty{white-space:pre-line}@media(min-height:950px){.welcome{margin-top:3vh}}@media(max-width:950px){.header-control{font-size:12px;padding:8px}.header-right{gap:5px}.workspace-title,.header-divider{display:none}#chatTitle{max-width:135px}}@media(max-width:720px){header{flex-wrap:wrap;min-height:100px;height:auto;padding-block:12px;gap:5px}.header-left{flex-basis:100%}.header-right{margin-left:43px}.header-control{padding:7px 10px}.welcome{margin-top:8px}.intro-logo{width:43px;height:43px;margin-bottom:20px}.eyebrow{font-size:10px}#privacyNote{font-size:11px}.suggestions strong{font-size:14px}.suggestions button>span:not(.card-icon){font-size:12px}.composer-footer{margin-top:8px}main>footer{font-size:11px}.library-filters button{font-size:12px;padding:8px}dialog{padding:22px}.header-left #chatTitle{max-width:235px}}

.rename-chat{background:none;border:0;color:var(--muted);padding:8px;border-radius:6px;flex-shrink:0;font-size:17px}.rename-chat:hover{color:var(--accent)}#renameError{color:#ef9b9b;font-size:14px}

.history-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.history-heading .history-label{padding-right:0}.danger-link{border:0;background:none;color:#df8282;font-size:12px;white-space:nowrap;padding:8px;cursor:pointer;border-radius:7px}.danger-link:hover,.delete-chat:hover{background:#eb737318;color:#eb7373}.danger-outline{border:1px solid #df828255;background:transparent;color:#df8282;padding:10px 14px;border-radius:9px;margin-bottom:20px;cursor:pointer}.danger-outline:hover{background:#eb737318}.file-actions,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-actions{justify-content:flex-end;margin-top:26px}.danger-button,.secondary-button{border:1px solid var(--border);padding:12px 18px;border-radius:10px;cursor:pointer;font-weight:600}.secondary-button{background:var(--panel-hover);color:var(--text)}.danger-button{background:#c64545;color:white;border-color:#c64545}.danger-button:hover{background:#b53333;transform:translateY(-1px)}.danger-button:disabled,.secondary-button:disabled{opacity:.5;cursor:wait;transform:none}.warning-mark{width:44px;height:44px;display:grid;place-items:center;color:#eb8888;background:#eb737318;border:1px solid #eb737344;border-radius:14px;font-size:24px;margin-bottom:20px}#confirmDialog{width:min(460px,calc(100% - 28px));border-radius:20px}#confirmDialog h2{margin:0 0 14px}#confirmError{color:#df8282;font-size:13px}#deleteCategories{border:0;padding:0;margin:20px 0}#deleteCategories legend{font-size:13px;color:var(--muted);margin-bottom:10px}#deleteCategories label{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:10px;padding:12px;margin:7px 0;cursor:pointer}#deleteCategories label:has(input:checked){border-color:#df8282;background:#eb73730c}#deleteCategories input{width:16px;height:16px;margin:0;accent-color:#c64545}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[data-theme=light] .danger-link,[data-theme=light] .danger-outline{color:#a33131}@media(max-width:480px){.dialog-actions button{flex:1;padding-inline:10px}}

.forget-section{border-top:1px solid var(--border);margin-top:24px;padding-top:22px}.forget-section .danger-outline{margin:0}.forget-section .settings-note{margin-bottom:0}
.reference-chat{border:0;background:none;color:var(--muted);padding:8px;border-radius:6px;font-size:16px;flex-shrink:0}.reference-chat:hover{color:var(--accent);background:var(--panel-hover)}.reference-tags{display:flex;flex-wrap:wrap;gap:8px}.reference-tags:not(:empty){margin:8px 0 14px}.reference-tag{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:9px;background:var(--panel-hover);padding:7px 10px;font-size:12px;color:var(--text);max-width:100%;overflow-wrap:anywhere}.reference-tag button{border:0;background:none;color:var(--muted);cursor:pointer;font-size:17px}#composer.reference-drag{border-color:var(--accent);box-shadow:0 0 0 3px #a5efbd22}.message-body.rich-answer{white-space:normal;line-height:1.75;font-size:16px}.math-inline{display:inline-block;font-family:Georgia,serif;font-size:1.1em;margin:0 2px}.math-display{font-family:Georgia,serif;font-size:1.25em;padding:12px 0;text-align:center;overflow:auto}.math-frac{display:inline-flex;vertical-align:middle;flex-direction:column;line-height:1.05;text-align:center;margin:0 3px}.math-frac span:first-child{border-bottom:1px solid currentColor;padding:0 4px 2px}.math-frac span:last-child{padding:2px 4px 0}.math-radicand{border-top:1px solid currentColor;padding-left:3px}
