/* One bounded shell on every route. Content scrolls; header, input and navigation never overlap. */
body{height:var(--app-height,100dvh);overflow:hidden}
.app-shell{height:100%;min-height:0}
.workspace{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.topbar,.mobile-toolbar,.context-strip,.mobile-nav{flex-shrink:0}
.content-layout{flex:1;min-height:0;width:100%;margin:0 auto;padding-top:16px;padding-bottom:0;align-items:stretch;overflow:hidden}
.assistant-column{min-width:0;display:flex;flex-direction:column;min-height:0;overflow:hidden}
#main{flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:none;padding:0 6px 20px 2px;scroll-padding-bottom:20px}
#assistant-dock[hidden]{display:none}
#assistant-dock{flex:0 0 auto;position:relative;z-index:5;background:var(--bg,#f8fbf6);padding:12px 2px 10px;border-top:1px solid #e1e9df}
body.assistant-mode .composer-wrap{margin:0}
body.assistant-mode .chat-thread{max-height:none;overflow:visible;margin:18px 0 8px;scroll-behavior:auto}
body.assistant-mode .chat-title{position:sticky;top:0;z-index:2;background:var(--bg,#f8fbf6);padding:12px 0;border-bottom:1px solid #e5ede3}
.right-panel{min-height:0;overflow-y:auto;align-content:start;scrollbar-width:none;padding-bottom:20px}
.app-footer{display:none}
#assistant-dock .model-status{padding:0 2px;margin:0 0 8px;border:0;background:none;gap:5px 12px;font-size:1rem;line-height:1.5}
#assistant-dock .model-status .subtle-link{font-size:1rem;flex-shrink:0}
#assistant-dock .suggestions{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-bottom:9px}
#assistant-dock .suggestions button{flex-shrink:0;white-space:nowrap}
#assistant-dock .composer textarea{min-height:38px;height:38px;max-height:100px}
#assistant-dock .composer-note{margin-top:7px;font-size:1rem}
.agent-cards{display:grid;gap:12px;margin-top:15px}
.agent-card{border:1px solid #dce8d9;background:#fbfdf8;border-radius:16px;padding:18px;min-width:0}
.agent-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.agent-card-type{font-size:1rem;color:#5d8253;letter-spacing:.5px}
.agent-card-scope{font-size:1rem;color:#8b9c81}
.agent-card h3{font-size:1.2143rem;line-height:1.6;font-weight:500;margin-bottom:6px}
.agent-card>p{font-size:1rem;line-height:1.9;color:#849579;margin:0 0 12px}
.agent-card dl{margin:0 0 15px}
.agent-card dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid #e8eee3;font-size:1rem;line-height:1.8}
.agent-card dt{color:#8b9b81;flex-shrink:0}.agent-card dd{margin:0;text-align:right;overflow-wrap:anywhere}
.agent-card .primary-btn{width:100%;min-height:43px}
.chat-message:has(.agent-cards)>.chat-bubble{width:min(100%,510px);max-width:calc(100% - 40px)}
.chat-message .agent-card-scope{white-space:normal}
@media(max-width:1050px){body.assistant-mode .right-panel{display:none}body.assistant-mode .content-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:720px){
  body.assistant-mode .content-layout{padding:0 12px;gap:0}
  body.assistant-mode #main{padding:0 5px 16px}
  body.assistant-mode #assistant-dock{padding:9px 3px 8px}
  #assistant-dock .composer{padding:11px 13px 9px}
  #assistant-dock .composer textarea{font-size:1.1429rem;line-height:1.6}
  #assistant-dock .composer-tools{margin-top:5px}
  #assistant-dock .composer-note{font-size:1rem;line-height:1.4}
  #assistant-dock .model-status span{flex:1;min-width:150px}
  .agent-card{padding:14px;border-radius:13px}.agent-card h3{font-size:1.1429rem}.agent-card dl>div{font-size:1rem;gap:8px}
  body.assistant-mode.keyboard-open #assistant-dock .suggestions{display:none}
}
