#loginGate { background: radial-gradient(ellipse at 20% 15%, #f8e9cd 0, transparent 50%),radial-gradient(ellipse at 90% 90%, #e6e7fb 0, transparent 55%),var(--bg-main); }
.login-card { position:relative; padding:44px; width:min(460px,100%); box-shadow:0 30px 100px #11182714; border:1px solid #ffffffaa; }
.login-card:before { content:'TB'; display:grid; place-items:center; width:52px; height:52px; background:linear-gradient(135deg,#ffd87b,#f59e0b); border-radius:17px; color:#302009; font-weight:800; margin-bottom:28px;box-shadow:0 6px 18px #f59e0b26; }
.login-card h1 { font-size:30px;letter-spacing:-1px; }
.login-card input { padding:14px 16px; background:var(--bg-main); transition:box-shadow .2s; }
.login-card input:focus { outline:none;box-shadow:0 0 0 3px #f59e0b25;border-color:#f59e0b; }
.login-divider { height:1px;background:var(--border-color);margin:24px 0; }
.password-toggle { display:block;font-size:12px;color:var(--text-secondary);margin:-10px 0 18px auto; }
.login-card > p:last-child { text-align:center;line-height:1.6;margin-top:24px; }
#loginError { color:#c2410c; }
body.empty-home #chatScrollContainer { display:flex;align-items:center;justify-content:center;padding-bottom:20px; }
body.empty-home #chatScrollContainer > div { width:100%;margin-top:-150px; }
body.empty-home #welcomeScreen { padding-bottom:10px; }
body.empty-home #composer { bottom:auto;top:calc(50% + 45px);background:none;padding-top:0; }
body.has-pins #welcomeScreen { padding-top:42px; }
#pinnedChatList { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.pinned-tile { position:relative;padding:20px;border-radius:18px;transition:transform .2s,border-color .2s;min-height:130px; }
.pinned-tile:hover { transform:translateY(-2px);border-color:#f59e0b60; }
.pinned-tile > button:first-child { width:100%;text-align:left;padding-right:20px; }
.pinned-tile strong { display:block;font-size:14px;margin:10px 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.pinned-tile p { font-size:12px;color:var(--text-secondary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis; }
.tile-more { position:absolute;right:12px;top:14px;padding:4px 9px;border-radius:8px; }
.chat-row { display:flex;align-items:center;border-radius:11px;padding:8px 10px;gap:6px;font-size:12px; }
.chat-row:hover,.chat-row.active { background:var(--bg-pill); }
.chat-open { flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.chat-more { padding:2px 7px;font-size:17px;border-radius:6px; }
.product-menu { position:fixed;z-index:75;width:205px;padding:7px;border-radius:16px;background:var(--bg-glass);backdrop-filter:blur(28px);box-shadow:0 14px 50px #0002;border:1px solid var(--border-color); }
.product-menu button { display:block;width:100%;text-align:left;padding:10px 12px;border-radius:9px;font-size:13px; }
.product-menu button:hover { background:var(--bg-pill); }
.product-menu hr { border:0;border-top:1px solid var(--border-color);margin:6px; }
.product-menu .danger { color:#e24a4a; }
.product-overlay { position:fixed;inset:0;z-index:70;background:#05091466;backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px; }
.product-dialog { width:min(700px,100%);max-height:85dvh;overflow:auto;padding:28px;border-radius:24px;background:var(--bg-main);box-shadow:0 30px 100px #0003; }
.product-dialog h2 { font-size:22px;font-weight:700;letter-spacing:-.5px; }
.dialog-top { display:flex;justify-content:space-between;align-items:center;margin-bottom:24px; }
.product-dialog label { display:block;font-size:12px;color:var(--text-secondary);margin:18px 0 7px; }
.product-dialog input,.product-dialog select,.product-dialog textarea { padding:12px;border-radius:11px;border:1px solid var(--border-color);background:var(--bg-pill);width:100%; }
.product-primary { background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#171208;padding:11px 18px;border-radius:11px;font-size:13px;font-weight:600; }
.product-secondary { padding:10px 15px;border:1px solid var(--border-color);border-radius:11px;font-size:13px; }
.dialog-actions { display:flex;justify-content:flex-end;gap:9px;margin-top:24px; }
.product-tabs { display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px; }
.product-tabs button { padding:8px 14px;border-radius:30px;font-size:12px; }
.product-tabs button.selected { background:var(--bg-pill);color:#d58a06; }
#libraryView { padding:30px 0; }
.library-top { display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px; }
.library-top h1 { font-size:27px;font-weight:700; }
.library-search { padding:10px 14px;border-radius:25px;border:1px solid var(--border-color);background:var(--bg-glass);min-width:0;max-width:240px; }
.library-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.library-card { padding:18px;border-radius:18px;overflow:hidden; }
.library-card img { width:100%;height:130px;object-fit:cover;border-radius:10px;margin-bottom:12px; }
.library-card h3 { font-size:13px;font-weight:600;margin:8px 0;overflow-wrap:anywhere; }
.library-card p,.library-empty { color:var(--text-secondary);font-size:12px;line-height:1.8; }
.library-actions { display:flex;gap:14px;margin-top:16px;font-size:12px;color:#c8830c; }
.thinking { display:flex;align-items:center;gap:12px; }
.thinking:after { content:'';width:6px;height:6px;border-radius:50%;background:#f59e0b;box-shadow:10px 0 #f59e0b80,20px 0 #f59e0b40;animation:thought 1s infinite; }
.typing:after { content:'▍';color:#f59e0b;animation:thought .8s infinite; }
@keyframes thought { 50% { opacity:.3; } }
@media(prefers-reduced-motion:reduce) { *,*:before,*:after { animation:none!important;transition:none!important; } }
@media(max-width:640px) { .login-card {padding:28px;} #pinnedChatList,.library-grid {grid-template-columns:1fr;} body.empty-home #chatScrollContainer > div { margin-top:-135px; } body.empty-home #composer {top:calc(50% + 35px);} .library-top {flex-wrap:wrap;} .product-dialog {padding:20px;} }
#chatScrollContainer > div { width:100%;min-width:0; }
.pinned-tile { min-width:0;overflow:hidden; }
.pinned-tile > button:first-child { min-width:0;display:block; }
#pinnedChatList { width:100%;min-width:0; }
.login-card button[type=submit] { min-height:48px;width:100%;border-radius:14px;font-weight:600; }
@media(max-width:640px) { body.empty-home #composer { top:calc(50% + 65px); } }
@media(max-height:650px) { body.empty-home #chatScrollContainer > div {margin-top:-165px;} body.empty-home #composer {top:calc(50% + 30px);} .login-card {padding-top:22px;padding-bottom:22px;} .login-card:before {margin-bottom:12px;} }
.ui-icon { width:18px;height:18px;display:inline-block;flex-shrink:0;vertical-align:middle; }
.product-menu { background:var(--bg-main);backdrop-filter:none;padding:9px;width:232px;border-radius:18px;box-shadow:0 12px 50px #1018271a; }
.product-menu button { display:flex;align-items:center;gap:12px;padding:11px 12px;line-height:1.3; }
.product-menu button:first-child { font-weight:500; }
.product-menu .ui-icon { width:17px;height:17px; }
#pinnedChatList { gap:14px; }
#pinnedChatList > * { margin-top:0; }
.pinned-tile { padding:22px;min-height:180px;border:1px solid var(--border-color);box-shadow:0 8px 26px #11182705; }
.pinned-tile strong { font-size:15px;line-height:1.5;margin:17px 0 8px;letter-spacing:-.25px; }
.pinned-meta { display:flex;align-items:center;gap:8px;color:#9d6d14;font-size:11px;font-weight:600; }
.pinned-meta .ui-icon { width:17px;height:17px; }
.pinned-meta span { padding:4px 8px;border-radius:7px;background:#eaaa2012; }
.pinned-tile[data-category=Images] .pinned-meta { color:#9470d6; }
.pinned-tile[data-category=Research] .pinned-meta { color:#3296a1; }
.pinned-tile[data-category=Development] .pinned-meta { color:#5b7ac8; }
.pinned-tile[data-category=Documents] .pinned-meta { color:#b38a27; }
.pinned-tile[data-category=Writing] .pinned-meta { color:#36947b; }
.pinned-footer { display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--text-secondary);margin-top:20px; }
.pinned-footer .ui-icon {width:15px;height:15px;}
.tile-more { color:var(--text-secondary);top:20px;right:16px; }
.tile-more:hover,.chat-more:hover { background:var(--bg-pill); }
.native-select { position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;padding:0!important;overflow:hidden; }
.select-shell { position:relative;display:inline-flex;min-width:0;max-width:100%; }
.select-trigger { display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;border:1px solid var(--border-color);border-radius:11px;background:var(--bg-pill);padding:8px 12px;font-size:12px;text-align:left; }
.select-trigger > span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.select-trigger .ui-icon {width:14px;height:14px;color:var(--text-secondary);}
.select-panel { position:fixed;z-index:90;overflow-y:auto;padding:7px;background:var(--bg-main);border:1px solid var(--border-color);box-shadow:0 14px 45px #10182720;border-radius:14px; }
.select-panel button {display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;text-align:left;border-radius:8px;font-size:13px;gap:16px;}
.select-panel button:hover,.select-panel button:focus-visible {background:var(--bg-pill);outline:none;}
.select-panel button[aria-selected=true] {color:#bf810c;background:#f59e0b0c;}
.product-dialog .select-shell {display:flex;width:100%;}
.product-dialog .select-trigger {padding:12px;font-size:13px;}
header .select-trigger {min-width:140px;padding:6px 10px;}
header .select-shell:has(#modelSelector) {width:200px;}
header .select-shell:has(#langSelector) .select-trigger {border:0;background:transparent;padding:2px 0;}
#docQuickSelect + .select-trigger {border-radius:24px;padding:5px 12px;font-size:12px;}
#chipGenImage,.glass-pill:has(input[type=file]) {gap:7px;}
@media(max-width:640px){header .select-shell:has(#modelSelector){width:175px;}header .select-shell:has(#langSelector) .select-trigger{min-width:110px;}.pinned-tile{min-height:175px;} .select-panel{max-width:calc(100vw - 24px);} }
.control-icon {display:inline-flex;align-items:center;vertical-align:middle;margin-right:4px;}
.control-icon .ui-icon {width:15px;height:15px;}
#creditPlanTitle {font-size:9px;letter-spacing:.03em;}
#creditCountLabel {font-size:9px;white-space:nowrap;}

@font-face { font-family:'Inter';src:url('fonts/InterVariable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:block; }
html,body,body *,button,input,textarea,select {font-family:'Inter' !important;}
#sidebar .mode-nav-btn {border:1px solid transparent !important;background:transparent !important;color:var(--text-primary) !important;opacity:.78 !important;transition:background .15s,border-color .15s,color .15s;}
#sidebar .mode-nav-btn:hover {background:var(--bg-pill) !important;opacity:1 !important;}
#sidebar .mode-nav-btn[data-active=true] {background:rgb(245 158 11 / .10) !important;border-color:rgb(245 158 11 / .30) !important;color:#d78d08 !important;opacity:1 !important;}
#sidebar .mode-nav-btn[data-active=true] svg {color:currentColor;}
.checkout-billing-detail { font-size:12px;color:var(--text-secondary);margin-top:6px;line-height:1.5; }
#checkoutStepView { padding:22px;border:1px solid rgb(245 158 11 / .4);border-radius:19px;background:var(--bg-pill); }
#checkoutStepView [id^=payBtn-] { min-height:46px;padding:11px 12px;gap:10px; }
.payment-provider {font-size:10px;white-space:nowrap;letter-spacing:.02em;opacity:.75;}
#checkoutStepView input { border-radius:12px;padding:10px 12px;box-shadow:none; }
#checkoutStepView label {font-size:10px;letter-spacing:.06em;}
#creditCountLabel {font-size:8px;}
.chat-row {padding:2px 10px;min-height:0px;border:1px solid transparent;line-height:1.35;}
#historyTodayList > :not([hidden]) ~ :not([hidden]),#historyWeekList > :not([hidden]) ~ :not([hidden]) {margin-top:3px;}
.chat-row:hover {background:var(--bg-pill);}
.chat-row.active {background:rgb(245 158 11 / .10);border-color:rgb(245 158 11 / .30);color:#d78d08;}
.chat-more {padding:1px 4px;line-height:1;}
#brandHeader {padding:3px 5px 5px;}
#brandTagline {margin-top:5px;font-size:10px;line-height:1.2;letter-spacing:.02em;}
#sidebarBrandTier {font-size:9px;padding:2px 5px;line-height:1.3;}
#creditPlanTitle {font-size:11px;font-weight:600;letter-spacing:0;text-transform:none;}
#creditCountLabel {font-size:10px;font-weight:500;}
#sidebar .glass-pill:has(#creditPlanTitle) > div:first-child {flex-wrap:wrap;gap:5px;}
[data-locked=true]:not(option) {opacity:.6!important;}
.select-panel button:has(span:last-child) {line-height:1.4;}
.pdf-watermark {color:#a88636;font-size:10pt;border-bottom:1px solid #ddd;padding-bottom:8px;margin-bottom:15px;}
@media screen { #printableDocArea {display:none!important;} }
/* Shared visual scale and accessible reading defaults. */
:root {--ux-muted:#596579;--ux-accent:#9b6500;--ux-radius:14px;}
html.dark {--ux-muted:#a9b4c7;--ux-accent:#f5c35e;}
body {font-size:14px;line-height:1.5;}
button,input,select,textarea {font-size:14px;}
.text-\[8px\],.text-\[9px\],.text-\[10px\],.text-\[11px\] {font-size:12px!important;line-height:1.4;}
#sidebar .mode-nav-btn,.chat-row {font-size:13px;min-height:38px;}
#sidebar .mode-nav-btn:hover,.chat-row:hover {background:var(--bg-pill)!important;}
#sidebar .mode-nav-btn[data-active=true],.chat-row.active {color:var(--ux-accent)!important;}
#brandTagline {font-size:11px!important;opacity:1;color:var(--ux-muted);}
#sidebarBrandTier {font-size:10px!important;}
#sidebar .glass-pill:has(#creditPlanTitle) > div:first-child {display:block;}
#creditPlanTitle {font-size:12px!important;}
#creditCountLabel {display:block;font-size:13px!important;line-height:1.5;margin-top:3px;}
#creditCountLabel[data-warning=true] {color:var(--ux-accent);}
#quotaReset {font-size:12px;color:var(--ux-muted);margin-top:5px;}
#pdfQuotaLabel {font-size:11px!important;color:var(--ux-muted);opacity:1;}
#sidebar .glass-pill:has(#creditPlanTitle) > div:last-child {gap:8px;}
.history-search {width:100%;padding:9px 11px;border-radius:10px;background:var(--bg-pill);border:1px solid var(--border-color);font-size:12px;margin:5px 0 14px;}
.history-group {margin-bottom:14px;}
.history-group summary {font-size:11px;font-weight:600;color:var(--ux-muted);padding:5px 8px;cursor:pointer;list-style-position:inside;}
#historyEmpty {font-size:12px;color:var(--ux-muted);padding:8px;}
.chat-more,.tile-more {min-width:32px;min-height:32px;}
#composer textarea {font-size:15px;min-width:0;line-height:1.6;}
#promptContextChips {gap:7px;}
#promptContextChips .select-trigger,#chipGenImage,label:has(input[type=file]) {font-size:12px;min-height:34px;}
#composer form {border-radius:22px;box-shadow:0 5px 24px #11182706;}
#composer form:focus-within {box-shadow:0 5px 24px #11182706;border-color:var(--border-color)!important;}
#composer > div > p {color:var(--ux-muted);font-size:11px!important;opacity:1;}
#chatScrollContainer {scroll-padding-bottom:220px;}
.ai-text-body {font-size:15px!important;line-height:1.75!important;white-space:normal;max-width:68ch;color:var(--text-primary);overflow-wrap:anywhere;}
.ai-text-body p {margin:0 0 14px;}
.ai-text-body p:last-child {margin-bottom:0;}
.ai-text-body h3 {font-size:15px;font-weight:650;margin:20px 0 9px;letter-spacing:-.15px;}
.ai-text-body h3:first-child {margin-top:0;}
.ai-text-body ol,.ai-text-body ul {padding-left:22px;margin:10px 0 18px;list-style-position:outside;}
.ai-text-body ol {list-style-type:decimal;}.ai-text-body ul {list-style-type:disc;}
.ai-text-body li {padding-left:3px;margin:6px 0;}
.ai-text-body pre {white-space:pre-wrap;background:var(--bg-pill);border:1px solid var(--border-color);border-radius:12px;padding:16px;line-height:1.6;font-size:13px;margin:14px 0;}
.pinned-tile {box-shadow:0 5px 20px #11182704;border-radius:16px;min-height:188px;}
.pinned-tile strong {white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;padding-right:5px;min-height:44px;}
.pinned-meta {flex-wrap:wrap;padding-right:24px;}
.pinned-date {font-size:11px!important;font-weight:400;background:none!important;padding:0!important;color:var(--ux-muted);}
.pinned-tile p,.pinned-footer {color:var(--ux-muted);font-size:12px;}
.select-panel small {display:block;font-size:11px;color:var(--ux-muted);font-weight:400;margin-top:3px;}
.select-panel button {min-height:42px;}
.select-panel button[aria-selected=true] {color:var(--ux-accent);}
[data-locked=true]:not(option) {opacity:.85!important;}
#chipGenImage[data-locked=true]:after,#navMode-image[data-locked=true]:after {content:'Pro';font-size:10px;padding:1px 6px;border-radius:5px;background:rgb(245 158 11 / .12);color:var(--ux-accent);margin-left:auto;}
.ux-description {font-size:14px;color:var(--ux-muted);line-height:1.8;}
.product-dialog {padding:30px;border-radius:22px;}
.product-dialog label {font-size:13px;font-weight:500;margin-top:20px;}
.product-dialog input,.product-dialog textarea,.product-dialog .select-trigger {font-size:14px;padding:12px 14px;}
.product-tabs {border-bottom:1px solid var(--border-color);padding-bottom:12px;}
.product-tabs button {font-size:13px;min-height:36px;}
.product-tabs button.selected {color:var(--ux-accent);}
.product-primary,.product-secondary {min-height:40px;font-size:13px;}
.library-top {flex-wrap:wrap;}
.library-top .select-shell {max-width:170px;}
.library-search {flex:1;min-width:150px;font-size:13px;}
.library-card {position:relative;border-radius:16px;box-shadow:0 5px 20px #11182704;}
.library-card h3 {font-size:14px;line-height:1.5;padding-right:20px;}
.library-card p,.library-empty {font-size:13px;color:var(--ux-muted);}
.library-file-icon {height:84px;display:grid;place-items:center;border-radius:10px;background:var(--bg-pill);color:var(--ux-accent);margin-bottom:15px;}
.library-file-icon .ui-icon {width:30px;height:30px;}
.library-more {position:absolute;right:12px;bottom:12px;min-height:36px;min-width:36px;display:grid;place-items:center;border-radius:9px;}
.library-more:hover {background:var(--bg-pill);}
.library-actions[hidden] {display:none!important;}
.plan-billing-note {font-size:12px;color:var(--ux-muted);margin-top:5px;}
.current-plan {outline:2px solid rgb(245 158 11 / .55);outline-offset:2px;}
#pricingTiersView button:disabled {background:var(--bg-pill);color:var(--ux-muted);border:1px solid var(--border-color);box-shadow:none;cursor:default;}
#pricingTiersView li {font-size:13px;line-height:1.55;align-items:flex-start;}
#pricingTiersView > div {border-radius:18px;}
#checkoutDue {font-size:24px;font-weight:700;letter-spacing:-.5px;margin:7px 0;}
#checkoutPlanSummary {font-size:15px;font-weight:500;}
#checkoutRenewal {font-size:12px;color:var(--ux-muted);margin-top:7px;}
#checkoutStepView .payment-provider {font-size:11px;}
:focus-visible {outline:2px solid var(--ux-accent)!important;outline-offset:3px;}
#toast {max-width:calc(100vw - 24px);pointer-events:none;}
html.dark .login-card,html.dark .product-menu,html.dark .select-panel {border-color:var(--border-color);}
html.dark #loginGate {background:radial-gradient(ellipse at 15% 10%,#37280d 0,transparent 55%),var(--bg-main);}
html.dark .pinned-tile,html.dark .library-card {box-shadow:0 6px 22px #0002;}
@media(max-width:640px){
  header {gap:7px!important;padding:10px!important;}
  header .select-shell:has(#modelSelector) {width:170px;}
  #welcomeHeadline {font-size:27px!important;line-height:1.25;}
  #welcomeSubtext {font-size:14px!important;line-height:1.6;}
  #welcomeBadge {font-size:10px!important;}
  #composer {padding-left:12px;padding-right:12px;padding-bottom:max(12px,env(safe-area-inset-bottom));}
  #composer textarea {font-size:16px;}
  #chipGenImage,label:has(input[type=file]),#docQuickSelect + .select-trigger {min-height:40px;}
  #promptContextChips {row-gap:6px;}
  .chat-row {min-height:44px;}.chat-more,.tile-more {min-height:40px;min-width:40px;}
  .product-menu button,.select-panel button {min-height:44px;}
  .pinned-tile {padding:18px;}
  .pinned-date {display:block;width:100%;}
  .product-dialog {padding:22px;max-height:88dvh;}
  .library-top .select-shell {max-width:150px;}
  body.empty-home #chatScrollContainer > div {margin-top:-160px;}
  body.empty-home #composer {top:calc(50% + 55px);}
  body.keyboard-open.empty-home #chatScrollContainer > div {margin-top:-180px;}
  body.keyboard-open #welcomeScreen {padding-top:4px!important;}
  body.keyboard-open #welcomeBadge,body.keyboard-open #welcomeSubtext {display:none;}
  body.keyboard-open.empty-home #composer {top:auto;bottom:0;}
}
#promptInput:focus-visible {outline:none!important;}
#composer form:focus-within {outline:none;}
.library-open {text-align:left;font-weight:600;line-height:1.5;}
.library-open:hover {text-decoration:underline;text-underline-offset:3px;}
.retry-response {margin-top:14px;}
@media(max-width:640px){#chipGenImage,label:has(input[type=file]),#docQuickSelect + .select-trigger,.tile-more,.chat-more {min-height:44px;} .tile-more,.chat-more {min-width:44px;} }
@media(max-width:640px){body.keyboard-open #welcomeScreen .text-center > div:has(#welcomeBadge){display:none;}}
/* Calm surfaces; quota card deliberately excluded from these refinements. */
.ambient-glow {opacity:.035;filter:blur(160px);}
#composer form {box-shadow:none;border-radius:18px;}
#composer form:focus-within {box-shadow:none;outline:none;border-color:var(--border-color)!important;}
#sidebar > div:first-child .gold-shimmer {box-shadow:none;background:#f6b832;}
#sidebar > div:last-child > .glass-pill:last-child {background:transparent;border-color:transparent;box-shadow:none;padding-left:8px;padding-right:8px;border-radius:12px;}
#sidebar > div:last-child > .glass-pill:last-child:hover {background:var(--bg-pill);}
.product-dialog,.login-card {border-radius:20px;}
.product-menu,.select-panel {border-radius:14px;box-shadow:0 8px 30px #11182712;}
.product-secondary,.product-primary,.login-card input {border-radius:11px;}
#chipGenImage,#docQuickSelect + .select-trigger,label:has(input[type=file]) {color:var(--text-primary);background:var(--bg-glass);}
.pinned-tile {min-height:140px;padding:18px;box-shadow:none;border-radius:15px;}
.pinned-tile:hover {transform:none;box-shadow:none;background:var(--bg-pill);border-color:var(--border-color);}
.pinned-tile strong {font-size:16px;margin:15px 0 9px;min-height:0;line-height:1.4;}
.pinned-tile p {margin-bottom:0;}
.pinned-meta {gap:7px;}
.pinned-meta > span:not(.pinned-date) {background:var(--bg-pill);color:var(--ux-muted);}
.pinned-meta .ui-icon {color:var(--ux-muted);}
.pinned-date {font-size:11px!important;}
.assistant-row {gap:14px;padding:12px 0;}
.assistant-row > .glass-panel {background:transparent;border:0;box-shadow:none;backdrop-filter:none;padding:4px 0;}
.assistant-mark {width:28px;flex-shrink:0;margin-top:4px;}
.assistant-mark img {display:block;}
.assistant-row > .glass-panel > div:first-child {margin-bottom:10px;}
.assistant-row > .glass-panel > div:first-child > span:first-child {color:var(--text-secondary);font-size:12px!important;}
.user-message {background:var(--bg-pill);color:var(--text-primary);border-radius:18px 18px 5px 18px;box-shadow:none;font-weight:400;padding:12px 17px;font-size:15px;line-height:1.65;}
#conversationThread {padding-top:10px;}
#conversationThread > * + * {margin-top:20px;}
.document-preview {display:flex;align-items:center;gap:18px;padding:18px;border:1px solid var(--border-color);border-radius:15px;background:var(--bg-glass);margin-top:18px;max-width:600px;}
.document-thumb {width:70px;height:94px;flex-shrink:0;background:#fff;color:#2d3545;border:1px solid #dce0e7;border-radius:5px;padding:12px 9px;box-shadow:0 3px 9px #00000006;}
.document-thumb span {font-size:11px;font-weight:700;display:block;margin-bottom:10px;}
.document-thumb i {display:block;height:2px;background:#d9dee7;margin:6px 0;}
.document-thumb i:last-child {width:65%;}
.document-info {min-width:0;}
.document-type {font-size:10px;color:var(--ux-muted);letter-spacing:.03em;}
.document-info h4 {font-size:15px;font-weight:600;line-height:1.4;margin:4px 0 7px;overflow-wrap:anywhere;}
.document-info p {font-size:12px;color:var(--ux-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.6;}
.document-open {font-size:12px;font-weight:600;margin-top:10px;min-height:30px;text-decoration:underline;text-underline-offset:4px;color:var(--text-primary);}
.brand-mark {width:34px;height:34px;flex-shrink:0;}
.brand-mark img {display:block;}
.login-card:before {content:'';background:url('client-brand.png') center/contain no-repeat;box-shadow:none;border-radius:0;}
.attachment-toggle {display:none;}
.product-menu,.select-panel,.product-overlay .product-dialog {animation:surface-in .14s ease-out;}
@keyframes surface-in {from {opacity:0;}to {opacity:1;}}
#loginGate {background:radial-gradient(ellipse at 20% 10%,#f8f1e4 0,transparent 60%),var(--bg-main);}
html.dark #loginGate {background:radial-gradient(ellipse at 20% 10%,#17140e 0,transparent 60%),var(--bg-main);}
@media(max-width:640px){
 header .header-language,header .header-appearance {display:none!important;}
 header {min-height:60px!important;flex-wrap:nowrap!important;}
 header > div {gap:7px!important;min-width:0;}
 #headerAuthBtn {padding:7px 9px;}
 #headerAuthLabel {max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
 header .select-shell:has(#modelSelector) {width:155px;}
 #promptContextChips {display:none;position:absolute;left:12px;right:12px;bottom:calc(100% - 8px);padding:12px;background:var(--bg-main);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 8px 30px #11182710;z-index:5;}
 #promptContextChips[data-expanded=true] {display:flex;}
 .attachment-toggle {display:grid;place-items:center;flex-shrink:0;width:36px;height:40px;border-radius:10px;font-size:27px;line-height:1;color:var(--text-secondary);}
 .attachment-toggle:hover,.attachment-toggle[aria-expanded=true] {background:var(--bg-pill);}
 #composer form {padding-left:7px;align-items:center;}
 #composer textarea {padding:10px 4px;}
 body.empty-home #composer {top:calc(50% + 40px);}
 .pinned-tile {min-height:135px;padding:17px;}
 .pinned-meta {flex-wrap:nowrap;padding-right:24px;}
 .pinned-date {display:inline;width:auto;white-space:nowrap;font-size:10px!important;}
 .document-preview {gap:12px;padding:13px;}
 .document-thumb {width:52px;height:74px;padding:8px;}
 .document-info h4 {font-size:14px;}
 .document-type {font-size:9px;}
 .assistant-row {gap:10px;}
 .assistant-mark {width:24px;}.assistant-mark img {width:24px;height:24px;}
 .document-open {min-height:40px;}
}
#welcomeScreen .text-center > div:has(#welcomeBadge) {display:none;}
#welcomeHeadline {text-wrap:balance;}
@media(max-width:640px){body.empty-home #composer {top:calc(50% + 64px);}header .select-shell:has(#modelSelector){width:clamp(118px,calc(100vw - 220px),155px);}body.keyboard-open.empty-home #composer{top:auto;bottom:0;}}
/* One focus treatment per field, without stacked browser outlines or glow. */
input:focus,input:focus-visible,textarea:focus,textarea:focus-visible,select:focus,select:focus-visible {outline:none!important;outline-offset:0!important;box-shadow:none!important;border-color:var(--ux-accent)!important;}
#promptInput:focus,#promptInput:focus-visible {border-color:transparent!important;}
.user-message {background:#dfe7f0;border:1px solid #ced9e6;color:#192536;}
html.dark .user-message {background:#29364a;border-color:#3b4b63;color:#f3f6fc;}
.assistant-row > .glass-panel > div:first-child > span {background:#e1e8f1;color:#344257!important;border-radius:6px;padding:3px 8px;line-height:1.5;opacity:1!important;}
.assistant-row > .glass-panel > div:first-child > span:last-child {background:#e7ecf3;color:#4d5b70!important;}
html.dark .assistant-row > .glass-panel > div:first-child > span {background:#273347;color:#dce5f3!important;}
html.dark .assistant-row > .glass-panel > div:first-child > span:last-child {background:#222d3e;color:#bfcce0!important;}
.brand-mark img,.assistant-mark img {object-fit:contain;}
/* Editorial split-screen sign-in. */
body #loginGate {display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:30px 48px 34px;overflow-y:auto;background:#fcfcfa;color:#202733;}
.login-wordmark {display:flex;align-items:center;gap:10px;width:100%;max-width:1320px;text-decoration:none;flex-shrink:0;}
.login-wordmark span {font-size:24px;font-weight:650;letter-spacing:-1px;}.login-wordmark b {font-weight:650;color:#bd7c0b;}
.login-layout {display:grid;grid-template-columns:1fr 1fr;gap:7%;width:100%;max-width:1320px;flex:1;min-height:0;margin-top:26px;align-items:center;}
.login-left {display:flex;flex-direction:column;align-items:center;padding:18px 0;}
.login-intro {text-align:center;margin-bottom:25px;}
.login-intro h1 {font-size:clamp(32px,3.5vw,52px);font-weight:600;line-height:1.12;letter-spacing:-1.9px;margin-bottom:15px;text-wrap:balance;}
.login-intro > p {font-size:14px;line-height:1.65;color:#677181;max-width:340px;margin:auto;}
#loginForm.login-card {width:100%;max-width:415px;border:1px solid #e7e7e1;border-radius:23px;background:#fff;padding:25px 28px 21px;box-shadow:0 10px 35px #272c3406;}
#loginForm.login-card:before {display:none;}
#loginForm .social-login {width:100%;min-height:43px;background:#f4f4f1;border:1px solid transparent;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-weight:500;margin-bottom:10px;color:#252b35;}
#loginForm .social-login:hover {background:#ecece7;border-color:#e2e2db;}
.social-login svg {width:18px;height:18px;flex-shrink:0;}
.login-or {display:flex;align-items:center;gap:12px;margin:18px 0;color:#7d8490;font-size:11px;}
.login-or:before,.login-or:after {content:'';height:1px;background:#ecece8;flex:1;}
#loginForm label {font-size:12px;font-weight:500;color:#414b5a;display:block;margin:0 0 6px;}
#loginForm input {height:44px;border:1px solid #e0e3e8;border-radius:10px;background:#fff;color:#202733;padding:10px 12px;margin:0 0 15px;font-size:13px;}
#loginForm input::placeholder {color:#939aa5;}
.login-password {position:relative;}
#loginForm .login-password input {padding-right:58px;margin-bottom:0;}
#loginForm .password-toggle {position:absolute;right:12px;top:0;height:44px;margin:0;font-size:11px;background:none;color:#657082;}
#loginError {font-size:12px;line-height:1.5;margin:10px 0;color:#b43d24;}
#loginError:empty {margin:8px 0;}
#loginForm .login-submit {width:100%;min-height:45px;border:0;background:#f6b832;color:#30250f;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-weight:600;}
#loginForm .login-submit:hover {background:#edae22;}
#loginForm .login-footnote {font-size:11px!important;line-height:1.5;color:#7b828d;text-align:center;margin:15px 0 0;}
.login-visual {position:relative;height:min(760px,calc(100dvh - 116px));min-height:530px;margin:0;border-radius:20px;overflow:hidden;background:#d9c6ac;}
.login-visual > img {width:100%;height:100%;object-fit:cover;object-position:50% 54%;display:block;}
.login-visual:after {content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#22190d88);pointer-events:none;}
.login-visual figcaption {position:absolute;bottom:30px;left:30px;right:25px;z-index:1;color:#fff;}
.login-visual figcaption span {font-size:22px;font-weight:500;letter-spacing:-.5px;}
.login-visual figcaption p {font-size:12px;margin-top:7px;color:#f3e7d8;}
html.dark body #loginGate {background:#101216;color:#eef0f4;}
html.dark #loginForm {background:#181b21;border-color:#2a2e37;}
html.dark #loginForm .social-login {background:#242830;color:#eef0f4;}
html.dark #loginForm input {background:#14171c;color:#eef0f4;border-color:#363c48;}
html.dark #loginForm label {color:#b9c1ce;}
html.dark .login-or:before,html.dark .login-or:after {background:#303641;}
html.dark .login-intro > p {color:#abb3bf;}
@media(max-width:950px){body #loginGate{padding:24px;}.login-layout{gap:5%;}.login-intro h1{font-size:35px;letter-spacing:-1.2px;}.login-visual{min-height:600px;}#loginForm.login-card{padding:23px;}}
@media(max-width:700px){body #loginGate{padding:22px 20px 28px;}.login-layout{display:block;margin-top:26px;flex:none;}.login-left{padding:10px 0 0;}.login-visual{display:none;}.login-intro h1{font-size:34px;}.login-intro{margin-bottom:22px;}.login-wordmark span{font-size:22px;}.login-wordmark img{width:32px;height:32px;}#loginForm.login-card{max-width:410px;padding:23px;}.login-intro > p{font-size:13px;max-width:290px;}}
@media(max-height:740px) and (min-width:701px){body #loginGate{padding-top:20px;padding-bottom:20px;}.login-layout{margin-top:16px;}.login-intro{margin-bottom:15px;}.login-intro h1{font-size:36px;}.login-intro > p{font-size:13px;}.login-visual{min-height:565px;height:565px;}#loginForm.login-card{padding-top:20px;padding-bottom:16px;}}

/* Centered login identity and shared workspace text palette. */
.login-intro .login-wordmark {width:fit-content;justify-content:center;margin:0 auto 24px;}
body #loginGate .login-layout {margin-top:0;}
body #loginGate {color:var(--text-primary)!important;}
#loginGate .login-intro h1,#loginGate .login-wordmark span,#loginGate #loginForm input,#loginGate #loginForm .social-login {color:var(--text-primary)!important;}
#loginGate .login-wordmark b {color:#f59e0b;}
#loginGate .login-intro > p,#loginGate #loginForm label {color:var(--text-secondary)!important;}
#loginGate .login-or,#loginGate #loginForm .password-toggle,#loginGate #loginForm .login-footnote {color:var(--ux-muted)!important;}
@media(max-width:700px){.login-intro .login-wordmark{margin-bottom:24px;}body #loginGate .login-layout{margin-top:12px;}}
