@layer components{.chat-main{padding:var(--space-4) var(--space-4) calc(4rem + env(safe-area-inset-bottom));container-type:inline-size}.chat-main>.page-heading{margin-bottom:var(--space-4)}.chat-workspace{border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);min-width:0;overflow:hidden}.chat-rooms{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.chat-room-list{flex:1;min-height:0}.chat-room-list:empty{flex:0}.chat-rooms>.empty-state{flex:1}.chat-rooms>.page-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);gap:var(--space-2);flex-shrink:0;margin-top:auto}.chat-rooms>.notice,.chat-rooms>.loading-state{padding:var(--space-3) var(--space-4)}.chat-rooms>.notice[data-tone]:not(:last-child){border-bottom:1px solid var(--border);margin-bottom:0}.chat-room-toolbar{padding:var(--space-4);gap:var(--space-3);display:grid}.chat-room-toolbar h2{font-size:var(--type-body)}.chat-room-toolbar .search-field{width:100%;min-width:0}.chat-rooms .room-row{padding:var(--space-4);gap:var(--space-3)}.chat-rooms .room-row[aria-current]{background:var(--surface-muted);box-shadow:inset 2px 0 0 var(--primary)}.chat-unselected{color:var(--muted-foreground);display:none}.chat-panel{flex-direction:column;min-width:0;min-height:0;display:flex}.chat-heading{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.chat-heading>div{flex:1;min-width:0}.chat-heading h2{font-size:var(--type-body);overflow-wrap:anywhere;line-height:1.5}.chat-connection{display:flex}.chat-connection>.status-label{white-space:normal;overflow-wrap:anywhere}.chat-connection-notice{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--type-meta);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.chat-history{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.chat-history-toolbar{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2);flex-wrap:wrap;display:flex}.chat-history-toolbar>.meta{margin-left:auto}.chat-history-note{padding:var(--space-2) var(--space-4);color:var(--muted-foreground);font-size:var(--type-meta)}.chat-scroll{overscroll-behavior:contain;overflow-anchor:none;flex:1;min-height:0;overflow:hidden auto}.chat-virtual-list{width:100%;position:relative}.chat-virtual-row{width:100%;padding:0 var(--space-4) var(--space-2);position:absolute;top:0;left:0}.chat-date{text-align:center;color:var(--muted-foreground);font-size:var(--type-meta);margin:var(--space-2) 0 var(--space-4)}.chat-message{align-items:flex-start;gap:var(--space-2);display:flex}.chat-avatar{background:var(--surface-muted);border-radius:var(--radius-control);width:2rem;height:2rem;color:var(--muted-foreground);flex:0 0 2rem;place-items:center;display:grid}.chat-message-content{min-width:0;max-width:min(85%,36rem)}.chat-sender{font-size:var(--type-label);margin-bottom:var(--space-1);overflow-wrap:anywhere;display:block}.chat-bubble{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--background)}.chat-bubble .message-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--type-body);margin:0}.chat-message.is-mine{justify-content:flex-end}.chat-message.is-mine .chat-sender{text-align:right}.chat-message.is-mine .chat-bubble{background:var(--surface-muted)}.chat-message-meta{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--type-meta);color:var(--muted-foreground);flex-wrap:wrap;line-height:1.125rem;display:flex}.chat-message-meta time{padding-block:var(--space-2)}.chat-message-meta details{min-width:0;max-width:100%}.chat-message-meta .identifier{overflow-wrap:anywhere;display:block}.chat-message-meta summary{cursor:pointer;min-width:2.75rem;min-height:2.75rem;margin-top:calc(-1 * var(--space-2));place-items:center;list-style:none;display:grid}.chat-message-meta summary::-webkit-details-marker{display:none}.chat-message-meta summary svg{width:.875rem;height:.875rem}.chat-jump{z-index:var(--z-sticky);bottom:var(--space-3);white-space:nowrap;width:max-content;box-shadow:var(--shadow-dialog);margin-inline:auto;position:absolute;inset-inline:0}.chat-panel>.control-scope{flex-shrink:0}.chat-composer{border-top:1px solid var(--border);padding:var(--space-3);background:var(--surface);padding-bottom:max(var(--space-3), env(safe-area-inset-bottom))}.chat-composer textarea{resize:none;background:var(--surface);width:100%;min-height:2.75rem;max-height:min(8rem,25dvh);color:var(--foreground);border:1px solid var(--input-border);border-radius:var(--radius-control);font:inherit;padding:var(--space-2) var(--space-3);display:block}.chat-compose-options{align-items:center;gap:var(--space-2);color:var(--muted-foreground);font-size:var(--type-meta);flex-wrap:wrap;justify-content:space-between;display:flex}.chat-format{align-items:center;gap:var(--space-2);display:inline-flex}.chat-format select{border:1px solid var(--input-border);background:var(--surface);max-width:9rem;min-height:2.75rem;color:var(--foreground);border-radius:var(--radius-control);padding:var(--space-2)}.chat-compose-input{align-items:end;gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.chat-compose-input .button{padding-inline:var(--space-3)}.chat-key-hint{color:var(--muted-foreground);font-size:var(--type-meta);line-height:1.125rem;display:none}.chat-send-status{align-items:center;gap:var(--space-2) var(--space-3);font-size:var(--type-meta);padding-top:var(--space-2);flex-wrap:wrap;display:flex}.chat-send-status a{align-items:center;min-height:2.75rem;text-decoration:underline;display:inline-flex}.chat-workspace.has-room .chat-rooms,.chat-send-status:empty{display:none}.chat-send-status:not(:empty){max-height:min(10rem,30dvh);overflow-y:auto}.is-chat{inset-inline:0;top:var(--viewport-top,0px);height:var(--viewport-height,100dvh);position:fixed}.is-chat .workspace-main,.is-chat .chat-main{flex-direction:column;height:100%;min-height:0;display:flex}.is-chat .chat-main{width:100%;padding:0}.is-chat .chat-workspace{border:0;border-radius:0;flex:1;min-height:0}.is-chat .chat-panel{height:100%}@media (width<64rem){.is-chat .topbar,.is-chat .bottom-nav{display:none}.is-chat .page-heading{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}@media (width>=64rem){.chat-main{padding:var(--space-8) var(--space-8) var(--space-4)}.is-chat .topbar{flex-shrink:0}.is-chat .chat-main{padding:var(--space-8) var(--space-8) var(--space-4)}.is-chat .chat-panel{border:1px solid var(--border);border-radius:var(--radius-panel)}.is-chat .sidebar{height:100%}@container (width>=48rem){.chat-room-list{overscroll-behavior:contain;overflow-y:auto}.chat-workspace{gap:var(--space-4);background:0 0;border:0;border-radius:0;flex:1 1 0;grid-template-columns:minmax(14rem,18rem) minmax(0,1fr);min-height:0;display:grid;overflow:visible}.chat-rooms,.chat-panel,.chat-unselected{border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface);overflow:hidden}.chat-workspace.has-room .chat-rooms{display:flex}.chat-unselected{justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.chat-panel{height:100%;min-height:0}@media (hover:hover) and (pointer:fine){.chat-key-hint{display:inline}}}}.chat-reading-link{left:var(--space-4);top:var(--space-2);z-index:var(--z-sticky);padding:var(--space-2);background:var(--surface);position:absolute}.chat-reading-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;padding:0;overflow:hidden}.chat-ssr-list .chat-virtual-row{position:relative}}
