/* Clear conversation context, compact writing, and stable message surfaces. */
.chat-context{max-width:880px;margin:0 auto 28px;padding-bottom:20px;border-bottom:1px solid #dce5d9}
.chat-context-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;color:#748a7b;font-size:12px}
.chat-context-top a{font-size:14px;color:#476f5d;min-height:40px;display:inline-flex;align-items:center}
.chat-context h1{font-family:"Songti SC","STSong",serif;font-size:28px;line-height:1.5;font-weight:600;overflow-wrap:anywhere;margin:0 0 8px}
.chat-context p{font-size:13px;color:#718878;margin:0;line-height:1.75}
.sidebar{display:flex;flex-direction:column;overflow-y:hidden}.sidebar nav,.sidebar .new-chat,.sidebar .brand,.sidebar .nav-label{flex-shrink:0}
.sidebar .brand{padding-bottom:22px}.sidebar .nav-label{margin-top:22px}
.sidebar .recent-list{flex:1 1 120px;max-height:none;min-height:70px;overflow-y:auto}
.sidebar .recent-list button{min-height:43px;font-size:12px;line-height:1.7;padding:10px;border-radius:6px}
.sidebar .recent-list button[aria-current="page"]{background:#ffffff16;color:#d7f2e6;border-left:2px solid #a5dfc3}
.sidebar .sidebar-bottom{flex-shrink:0;margin-top:16px;padding-top:16px}
.composer-bottom{align-items:flex-end;gap:14px}.composer-settings{flex:1;min-width:0}
.composer-settings>summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:12px;line-height:1.6;color:#587969;list-style:none;min-height:38px;flex-wrap:wrap}
.composer-settings>summary::-webkit-details-marker{display:none}
.composer-settings>summary>span:first-child{color:#829687;font-size:11px}
.composer-settings>summary>span:last-child{margin-left:auto}
.composer-settings[open]>summary>span:last-child{transform:rotate(180deg)}
.composer-settings .composer-controls{gap:14px;margin:6px 0;flex-wrap:wrap;align-items:flex-start}
.composer-settings label{font-size:11px;color:#7b8c7d;display:grid;gap:4px}
.composer-settings select{font-size:13px!important;min-height:36px;max-width:none!important}
.composer-hint{display:flex;align-items:flex-start;gap:16px;font-size:12px;line-height:1.8;margin-top:8px}
.composer-hint #input-guide{flex:1;max-width:85%;color:#718573}
.composer-hint .question-count{font-size:11px;display:inline!important;margin-left:auto}
.compact-compose .composer{padding:12px 15px}.compact-compose .composer textarea{min-height:58px;max-height:160px;font-size:15px;line-height:1.8}
.compact-compose .primary-button{font-size:14px;min-height:42px;padding:9px 17px}
.compact-compose .composer-bottom{margin-top:4px}.compact-compose .composer-hint{padding:0 4px;margin:4px 0;font-size:11px}
.compact-compose .composer-settings[open]{background:#f2f6ed;border-radius:8px;padding:4px 10px}
.chat-active .chat-compose{bottom:0;background:#f4f6f1f5;padding:10px 0 5px;border-top:1px solid #dce5d5;box-shadow:0 -9px 22px #35573c06}
.chat-active .user-message.followup-question{border-left:3px solid #cadbc9;padding-left:18px;background:linear-gradient(90deg,#edf3ea75,transparent);border-radius:0}
.chat-active .user-message.opening-question{padding-bottom:9px;border-bottom:1px solid #e2eadf}
.chat-active .question-eyebrow .message-time{font-size:11px;margin:0 0 0 auto;opacity:1}
.long-question{border:1px solid #cfddd0;border-radius:10px;background:#f8faf4;overflow:hidden}
.long-question summary{padding:16px 18px;display:flex;align-items:flex-start;gap:20px;cursor:pointer;list-style:none;transition:background .15s}
.long-question summary:hover{background:#eef4e9}.long-question summary:focus-visible{outline:3px solid #8ebfa7;outline-offset:-3px}
.long-question summary .question-title{font-size:18px;line-height:1.8;flex:1;min-width:0}
.question-disclosure{font-size:12px;color:#426f55;display:flex;align-items:center;gap:7px;padding-top:6px;white-space:nowrap}
.question-chevron{font-size:20px}.when-open{display:none}.long-question[open] .when-open{display:inline}.long-question[open] .when-closed{display:none}.long-question[open] .question-chevron{transform:rotate(180deg)}
.long-question>p{border-top:1px solid #e0e7da;padding:16px 18px;margin:0;font-size:15px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
#thinking-region{max-width:880px;margin:auto}#thinking-region[hidden]{display:none}
.thinking{animation:none!important;border:1px solid #dce6d6;border-radius:10px;background:#f8fbf3;margin-bottom:18px;padding:17px 20px;line-height:1.8}
.thinking strong{font-size:13px;font-weight:500;color:#57765b}.thinking-phases{display:flex;gap:12px;font-size:11px;color:#8a9d7f;margin-top:4px}
.home-active .composer-settings{font-size:12px}.home-active .composer-shortcuts{margin-top:6px}
.workspace-help-button{border:0;background:transparent;color:#607e6b;font-size:12px;min-height:38px;padding:8px;cursor:pointer}
.workspace-help-dialog{width:480px}.workspace-help-dialog>button{float:right}.workspace-help-dialog ol{padding-left:22px;clear:both;margin:22px 0 0;color:#597461;font-size:14px;line-height:1.9}.workspace-help-dialog li+li{margin-top:15px}
@media(max-width:720px){
 .chat-context{margin-bottom:20px;padding-bottom:15px}.chat-context h1{font-size:23px}.chat-context p{font-size:12px}.chat-context-top{font-size:10px;gap:8px}
 .compact-compose .composer textarea{font-size:15px;min-height:52px}.compact-compose .composer{padding:10px 12px}
 .composer-settings>summary{font-size:11px;gap:5px}.composer-settings>summary>span:first-child{font-size:10px;max-width:120px}
 .composer-hint #input-guide{max-width:none;line-height:1.6}.composer-hint{gap:10px;font-size:11px}.composer-hint .question-count{font-size:10px}
 .composer-bottom{gap:9px}.compact-compose .primary-button{font-size:12px;padding:9px 12px}
 .long-question summary{display:block;padding:13px}.long-question summary .question-title{font-size:17px}.question-disclosure{padding-top:9px;justify-content:flex-end}
 .long-question>p{padding:13px}.sidebar .recent-list{min-height:70px}.chat-active .user-message.followup-question{padding-left:12px}
}
@media(prefers-reduced-motion:reduce){.long-question summary{transition:none}}

@media(max-height:570px){.sidebar{overflow-y:auto}.sidebar .recent-list{flex-shrink:0;min-height:100px}}

/* Reserve usable space for recent conversations on laptop-height screens. */
@media(min-width:721px) and (max-height:800px){
 .sidebar{padding-top:22px}.sidebar .brand{padding-bottom:17px}.sidebar .nav-label{margin-top:16px;margin-bottom:8px}
 .sidebar nav{gap:2px}.sidebar nav a{padding-top:9px;padding-bottom:9px;min-height:40px}
 .sidebar .sidebar-bottom{margin-top:10px;padding-top:10px}.sidebar .sidebar-bottom small{display:none}
 .sidebar .recent-list button{min-height:40px;padding:8px 10px}.sidebar .recent-list{gap:3px;align-content:start;scrollbar-width:thin;scrollbar-color:#52746f transparent}
}
