/* Moderate reading size: 10% below the enlarged version, still relative to browser preferences. */
html{font-size:90%}
body{font-size:1.125rem}
.search input,#draft,dialog input,dialog select,#editBody,.ai-input-row textarea{font-size:1.125rem;line-height:1.5}
.chat-name{font-size:1.1875rem;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.snippet{font-size:1.0625rem;line-height:1.5}
.chat-line{align-items:flex-start;gap:8px}
.time{flex-shrink:0;white-space:nowrap;line-height:1.6}
.chat .avatar{font-size:1.375rem}
.tabs button,.mobile-nav button{font-size:1rem;line-height:1.4}
.tabs{gap:8px;flex-wrap:wrap}
.tabs button{padding-inline:13px}
.tabs span{font-size:.875rem}
.side-footer{flex-wrap:wrap;line-height:1.5;padding-block:8px}
.side-footer>span:last-child{font-size:.875rem}
.sidebar{--chat-row-avatar:52px;--chat-row-padding:18px}
.chat{padding-block:var(--chat-row-padding)}
.chat .avatar{width:var(--chat-row-avatar);height:var(--chat-row-avatar)}
.assistant-strip{display:flex;gap:8px;margin-inline:16px;height:104px;min-height:104px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:4px;-webkit-overflow-scrolling:touch}
.assistant-shortcut{flex:0 0 90px;scroll-snap-align:start;font-size:.875rem;line-height:1.5;gap:1px;padding:2px}
.assistant-shortcut .assistant-alien{width:72px;height:72px}
.assistant-alien{border-radius:0}
.topic-plus{width:62px;height:62px;display:grid;place-items:center;font-size:36px;line-height:1;color:var(--accent);border:1px dashed var(--accent);border-radius:50%;margin:5px}
.personal-topic>span:last-child{max-width:86px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topic-dialog #topicDescription{display:block;width:100%;padding:12px;margin:8px 0 16px;border:1px solid var(--line);border-radius:18px;background:var(--field);font-size:1.125rem;min-height:100px;max-height:180px}
.topic-dialog .topic-privacy,.topic-dialog .topic-note{font-size:.9375rem;line-height:1.6}
.topic-dialog .topic-error{color:var(--accent);overflow-wrap:anywhere}
.assistant-unread{min-width:22px;height:22px;line-height:20px}
.identity strong{font-size:1.125rem;white-space:normal;line-height:1.3;overflow-wrap:anywhere}
.identity span{font-size:.875rem;line-height:1.4}
.chat-header{height:auto;min-height:84px;padding-block:12px}
.bubble{font-size:1.125rem;line-height:1.65}
.msg-meta{flex-wrap:wrap;line-height:1.5}
.msg-actions button,.delete-msg{min-height:40px}
.delete-msg{opacity:1}
.composer-hint{flex-wrap:wrap;gap:6px;line-height:1.5}
.pinned small{line-height:1.6}
dialog{line-height:1.5}
dialog p,dialog label{font-size:1rem}
dialog h3{font-size:1.125rem}
.modal-head{gap:12px}
.modal-head h2{min-width:0;overflow-wrap:anywhere}
.contact-card{flex-wrap:wrap}
.contact-card strong{font-size:1.0625rem}
.contact-card small{font-size:.875rem}
.contact-search{flex-wrap:wrap}
.detail-stat{gap:12px;flex-wrap:wrap}
.photo-buttons{flex-wrap:wrap}
.ai-head h2,.gmail-dialog .ai-head h2,.connections-dialog .ai-head h2{font-size:1.5rem;overflow-wrap:anywhere}
.ai-turn p,.gmail-summary p{font-size:1.125rem}
.ai-card>span:nth-child(2){min-width:0;overflow-wrap:anywhere}
.ai-card span span,.ai-intro p,.ai-note p,.ai-welcome p{font-size:1rem}
.ai-consent{font-size:.9375rem}
.ai-head{gap:8px}
.ai-head button{padding:8px;flex-shrink:0}
.connection-card p,.connections-intro,.connection-note p{font-size:1rem}
.connection-card dl{font-size:1rem}
.brand-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:18px}
.sync-status{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:18px;margin-left:auto;flex:none;color:var(--muted);font-size:.875rem;line-height:1.4;white-space:nowrap}
.sync-status .local-dot{width:7px;height:7px;background:#d6a158;border-radius:50%}
.sync-status[data-state=online] .local-dot{background:var(--accent);animation:sync-pulse 2s ease-in-out infinite}
@keyframes sync-pulse{0%,100%{opacity:1}50%{opacity:.3}}
@media(prefers-reduced-motion:reduce){.sync-status[data-state=online] .local-dot{animation:none}}
.assistant-carousel{position:relative;flex:none;margin-inline:16px;padding-bottom:4px;border-bottom:1px solid var(--line)}
.assistant-carousel .assistant-strip{margin-inline:0;height:96px;min-height:96px;border-bottom:0;scroll-snap-type:none}
.assistant-scrollbar{display:block;appearance:none;-webkit-appearance:none;width:100%;height:16px;margin:0;padding:0;border:0;background:transparent;cursor:ew-resize;accent-color:var(--accent)}
.assistant-scrollbar::-webkit-slider-runnable-track{height:4px;border-radius:99px;background:var(--line)}
.assistant-scrollbar::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:var(--thumb-width,60%);height:4px;margin-top:0;border:0;border-radius:99px;background:var(--accent)}
.assistant-scrollbar::-moz-range-track{height:4px;border-radius:99px;background:var(--line)}
.assistant-scrollbar::-moz-range-thumb{width:var(--thumb-width,60%);height:4px;border:0;border-radius:99px;background:var(--accent)}
.assistant-scrollbar:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}
/* Reclaim space above the larger, horizontally scrollable assistants. */
.app .sidebar .search{padding:7px 14px;min-height:44px;margin-bottom:6px}
.sidebar .tabs{padding-bottom:6px;gap:8px}
.sidebar .tabs button{min-height:36px;padding:6px 12px}
@media(max-width:720px){
 .search,.chats{margin-inline:0}
 .search{margin-inline:20px}
 .chats{padding-inline:20px}
 .tabs{padding-inline:20px}
 .mobile-nav{padding-top:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
 .chat-header{padding-top:calc(12px + env(safe-area-inset-top))}
 .bubble{max-width:88%}
 .side-footer{padding-inline:20px}
 .side-footer>span:last-child{display:none}
}
@media(max-width:360px){
 .side-head{padding-inline:16px;gap:8px}
 .side-actions{gap:6px}
 .side-actions .icon{width:42px;height:42px}
 .search{margin-inline:16px}
 .chats,.tabs{padding-inline:16px}
 .assistant-carousel{margin-inline:12px}
 .chat{gap:10px}
 .chat-name{font-size:1.1875rem}
 .photo-tools{gap:6px}
 .photo-tools>div{flex-wrap:wrap;justify-content:center}
}
