:root{color-scheme:dark;--bg: #070a12;--bg-soft: #0d1322;--surface: rgba(14, 20, 35, .72);--surface-strong: rgba(17, 24, 40, .94);--border: rgba(255, 255, 255, .1);--text: #f4f7fb;--muted: #a8b2c8;--accent: #91f2cf;--accent-strong: #57c7ab;--accent-glow: rgba(145, 242, 207, .24);--secondary: #8ba8ff;--danger: #ff9d9d;--shadow: 0 30px 80px rgba(0, 0, 0, .35)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-height:100vh;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(139,168,255,.18),transparent 28%),radial-gradient(circle at 80% 20%,rgba(87,199,171,.14),transparent 20%),linear-gradient(180deg,#060911,#0a1020 45%,#070a12);color:var(--text);overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}svg{width:18px;height:18px;display:block;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none;flex:0 0 auto}.page-shell{width:100%;margin:0;padding:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid transparent;background:transparent;color:inherit;font:inherit;font-weight:700;transition:transform .18s ease,border-color .18s ease,background .18s ease,opacity .18s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{background:linear-gradient(135deg,var(--accent),#d9fff2);color:#071018;box-shadow:0 12px 30px #91f2cf33}.button-ghost,.button-secondary{border-color:#ffffff24;background:#ffffff0a;color:var(--text)}.glass-card,.auth-panel{position:relative;border:1px solid rgba(255,255,255,.08);background:#060a13b8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:inset 0 1px #ffffff0a}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-panel{width:min(100%,460px);display:grid;gap:18px;padding:28px;border-radius:20px;box-shadow:var(--shadow)}.auth-brand{display:flex;align-items:center;gap:14px}.auth-brand img{width:52px;height:52px}.app-loading-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.app-loading-panel{width:min(100%,380px);display:grid;justify-items:center;gap:16px;border-radius:20px;padding:28px;text-align:center}.app-loading-logo-wrap{position:relative;width:78px;height:78px;display:grid;place-items:center}.app-loading-logo-wrap img{width:46px;height:46px}.app-loading-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid rgba(145,242,207,.16);border-top-color:var(--accent);border-radius:999px;animation:app-loading-spin .9s linear infinite}.app-loading-panel strong{display:block;margin-bottom:5px;font-size:1.05rem}.app-loading-panel p{margin:0;color:var(--muted)}.app-loading-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}@keyframes app-loading-spin{to{transform:rotate(360deg)}}.auth-panel h1,.chat-start-state h1{margin:0;letter-spacing:0}.auth-panel h1{font-size:2.1rem}.auth-panel p,.muted-copy,.session-card span,.session-card small,.message-meta-row span{color:var(--muted)}.auth-panel p{line-height:1.55}.auth-separator{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.86rem;font-weight:700}.auth-separator:before,.auth-separator:after{content:"";height:1px;flex:1;background:#ffffff1f}.google-auth-row{position:relative;width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#ffffff0a;color:var(--text);font-weight:800}.google-auth-button{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;opacity:.01;overflow:hidden}.google-auth-button>div{width:100%!important;height:100%!important}.google-auth-button iframe{width:100%!important;height:46px!important}.google-auth-g{width:20px;height:20px;flex:0 0 auto}.google-auth-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-shell{min-height:100vh;display:grid;grid-template-rows:auto minmax(0,1fr);gap:18px;padding:24px;overflow:auto}.admin-topbar,.admin-topbar-actions,.admin-panel-header,.admin-row-actions,.admin-feedback-detail header{display:flex;align-items:center;gap:10px}.admin-topbar{justify-content:space-between}.admin-topbar h1,.admin-panel h2,.admin-forbidden h1{margin:0}.admin-topbar-actions{flex-wrap:wrap;justify-content:flex-end}.admin-topbar-actions span{color:var(--muted);font-weight:700}.admin-grid{min-height:0;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:18px}.admin-panel,.admin-forbidden{border-radius:18px;padding:18px;background:#080d18e0}.admin-panel{min-width:0;min-height:0;display:grid;align-content:start;gap:16px}.admin-panel-header{justify-content:space-between}.admin-panel-header p{margin:4px 0 0;color:var(--muted)}.admin-invite-form{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:10px}.admin-checkbox{min-height:40px;display:inline-flex;grid-auto-flow:column;align-items:center;gap:8px;color:var(--text);white-space:nowrap}.admin-checkbox input{width:16px;min-height:16px;accent-color:var(--accent)}.admin-table-wrap{min-width:0;overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{border-bottom:1px solid rgba(255,255,255,.1);padding:10px 8px;text-align:left;vertical-align:top}.admin-table th{color:var(--muted);font-size:.8rem;text-transform:uppercase}.admin-table td small{display:block;max-width:260px;margin-top:4px;color:var(--muted);overflow-wrap:anywhere}.admin-status{display:inline-flex;align-items:center;min-height:24px;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:0 9px;color:var(--text);font-size:.76rem;font-weight:800}.admin-status-accepted,.admin-status-sent,.admin-feedback-useful{border-color:#91f2cf57;background:#57c7ab24}.admin-status-draft{background:#8ba8ff1f}.admin-status-revoked,.admin-feedback-incorrect{border-color:#ff9d9d47;background:#ff6f9126}.admin-feedback-missing_sources{border-color:#ffda8b4d;background:#ffda8b1f}.admin-row-actions{flex-wrap:wrap}.admin-row-actions .button{min-height:32px;padding:0 10px}.admin-feedback-bars{display:grid;gap:12px}.admin-feedback-bar-row{display:grid;grid-template-columns:110px minmax(0,1fr) 52px 34px;align-items:center;gap:10px}.admin-feedback-bar-row span,.admin-feedback-bar-row small{color:var(--muted);font-weight:700}.admin-feedback-bar-row strong,.admin-feedback-bar-row small{text-align:right}.admin-feedback-bar-track{height:12px;overflow:hidden;border-radius:999px;background:#ffffff14}.admin-feedback-bar{height:100%;min-width:2px;border-radius:inherit}.admin-feedback-detail-list{display:grid;gap:10px;max-height:58vh;overflow:auto;padding-right:4px}.admin-feedback-detail{display:grid;gap:8px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#ffffff08;padding:12px}.admin-feedback-detail header{flex-wrap:wrap}.admin-feedback-detail header time{margin-left:auto;color:var(--muted);font-size:.85rem}.admin-feedback-detail p{margin:0;color:var(--muted);line-height:1.45}.admin-feedback-detail p strong{color:var(--text)}.admin-notice{width:min(100%,720px)}.admin-success{border:1px solid rgba(145,242,207,.28);border-radius:14px;background:#91f2cf1a;color:var(--accent);padding:10px 12px}.admin-forbidden{width:min(100%,520px);place-self:center;display:grid;justify-items:start;gap:12px}.admin-forbidden svg{width:42px;height:42px;color:var(--accent)}.eyebrow{display:block;margin-bottom:8px;color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}label{display:grid;gap:8px;color:var(--muted);font-size:.92rem;font-weight:700}input,textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#ffffff0d;color:var(--text);outline:none}input{min-height:48px;padding:0 14px}input:focus,textarea:focus{border-color:#91f2cfb8;box-shadow:0 0 0 4px #91f2cf1f}.chat-shell{width:100%;max-width:none;margin:0;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.chat-shell,.chat-shell *{text-align:left}.chat-page-main{flex:1;display:flex;flex-direction:column;min-height:0;padding:0;overflow:hidden}.chat-product-shell{display:grid;grid-template-columns:320px minmax(0,1fr);gap:0;flex:1;height:100%;min-height:0}.chat-product-shell.sessions-hidden{grid-template-columns:42px minmax(0,1fr)}.chat-sidebar-column{display:flex;flex-direction:column;gap:12px;min-height:0}.chat-session-panel{border-left:0;border-radius:0 20px 20px 0;background:radial-gradient(circle at top,rgba(139,168,255,.16),transparent 40%),#090d18f0;flex:1;min-height:0}.chat-session-panel{display:flex;flex-direction:column;overflow:hidden}.collapsed-sidebar-panel{display:flex;flex-direction:column;align-items:center;justify-content:space-between;width:42px;height:100%;min-height:0;padding:10px 0;border-right:1px solid rgba(255,255,255,.08);background:#060a13f0}.collapsed-sidebar-top-actions{display:grid;gap:12px}.collapsed-rail-button{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--text);padding:0}.collapsed-rail-button:hover,.collapsed-rail-button:focus-visible{background:#ffffff14;outline:none}.collapsed-rail-button svg{width:19px;height:19px}.collapsed-rail-button img{width:28px;height:28px;display:block;object-fit:contain}.logo-rail-button{position:relative;overflow:hidden;margin-bottom:2px}.sidebar-action-row{height:100%;display:flex;flex-direction:column;align-items:center;gap:8px}.collapsed-sidebar-spacer{flex:1}.sidebar-icon-button{width:40px;height:40px;min-height:40px;padding:0;justify-content:center;text-align:center}.sidebar-icon-button svg{width:19px;height:19px}.sidebar-icon-button svg path[fill=currentColor]{color:var(--accent)}.sidebar-expand-logo-button,.logo-rail-button{position:relative;overflow:hidden}.sidebar-expand-logo,.sidebar-expand-icon{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;transition:opacity .16s ease,transform .16s ease}.sidebar-expand-logo img{width:28px;height:28px;display:block;object-fit:contain}.sidebar-expand-icon{opacity:0;transform:scale(.86)}.sidebar-expand-logo-button:hover .sidebar-expand-logo,.sidebar-expand-logo-button:focus-visible .sidebar-expand-logo,.logo-rail-button:hover .sidebar-expand-logo,.logo-rail-button:focus-visible .sidebar-expand-logo{opacity:0;transform:scale(1.08)}.sidebar-expand-logo-button:hover .sidebar-expand-icon,.sidebar-expand-logo-button:focus-visible .sidebar-expand-icon,.logo-rail-button:hover .sidebar-expand-icon,.logo-rail-button:focus-visible .sidebar-expand-icon{opacity:1;transform:scale(1)}.chat-panel{padding:14px}.compact-header{margin-bottom:10px}.session-header-title{display:grid;gap:8px;width:100%}.session-header-title h2{margin:0;font-size:1.1rem}.session-brand-row,.session-header-actions,.message-meta-row,.composer-toolbar,.tool-pill-list,.feedback-row{display:flex;align-items:center;gap:8px}.session-brand-row{justify-content:space-between;width:100%}.sidebar-collapse-button{width:32px;height:32px;min-height:32px;padding:0;border-radius:9px;border-color:transparent;background:transparent;color:var(--muted);box-shadow:none;flex:0 0 auto}.sidebar-collapse-button:hover:not(:disabled){transform:none;border-color:#ffffff1f;background:#ffffff0d;color:var(--text)}.sidebar-collapse-button svg{width:20px;height:20px}.sidebar-collapse-button svg path[fill=currentColor]{color:currentColor}.session-brand-lockup{min-width:0;display:inline-flex;align-items:center;gap:8px}.session-sidebar-logo{width:30px;height:30px;display:block;object-fit:contain;flex:0 0 auto}.session-brand-lockup strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}.session-create-inline{flex:1;margin-bottom:0}.session-list{flex:1;min-height:0;display:grid;gap:8px;align-content:start;overflow-y:auto;overflow-x:hidden}.session-card,.message-empty-state,.chat-notice{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px;background:#ffffff08}.session-card{width:100%;min-width:0;display:grid;gap:4px;position:relative;cursor:pointer;color:inherit}.session-delete-button,.message-delete-button{width:28px;height:28px;display:inline-grid;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--muted);padding:0}.session-delete-button{position:absolute;top:8px;right:8px}.session-delete-button:hover,.message-delete-button:hover{background:#ff6f9124;color:#ffdbe5}.session-delete-button svg,.message-delete-button svg{width:15px;height:15px}.session-rename-input{width:calc(100% - 34px);min-width:0;border:1px solid rgba(145,242,207,.35);border-radius:8px;background:#080d18d1;color:var(--text);padding:4px 6px;font:inherit;font-weight:800}.session-card strong,.session-card span,.session-card small{min-width:0;overflow:hidden;text-overflow:ellipsis}.session-card.is-active{border-color:#91f2cf59;background:#57c7ab14}.account-menu-wrap{position:relative;margin-top:12px}.account-menu-wrap.is-compact{margin-top:0}.account-menu-trigger{width:100%;min-width:0;min-height:46px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#ffffff0a;color:var(--text);padding:7px 9px;text-align:left}.account-menu-wrap.is-compact .account-menu-trigger{width:32px;min-height:32px;display:grid;grid-template-columns:1fr;place-items:center;gap:0;border:0;border-radius:9px;background:transparent;padding:0}.account-menu-wrap.is-compact .account-menu-trigger:hover,.account-menu-wrap.is-compact .account-menu-trigger[aria-expanded=true]{background:#ffffff14}.account-menu-trigger:hover,.account-menu-trigger[aria-expanded=true]{border-color:#91f2cf47;background:#91f2cf14}.account-avatar{width:28px;height:28px;display:inline-grid;place-items:center;border-radius:999px;background:#8f56c9;color:#fff;font-size:.72rem;font-weight:800}.account-menu-copy{min-width:0;display:grid;gap:1px}.account-menu-copy strong,.account-menu-profile strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-copy small,.account-menu-profile span,.account-menu-quota{color:var(--muted)}.account-menu-popover{position:absolute;left:0;right:0;bottom:calc(100% + 10px);z-index:60;display:grid;gap:4px;padding:10px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:#090d18fa;box-shadow:0 24px 70px #00000075}.account-menu-wrap.is-compact .account-menu-popover{left:calc(100% + 10px);right:auto;bottom:0;width:260px}.account-menu-profile{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:6px 8px 9px}.account-menu-profile div{min-width:0;display:grid;gap:1px}.account-menu-quota{display:grid;gap:3px;margin:0 4px 6px;padding:9px 10px;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);font-size:.86rem}.account-menu-popover button{width:100%;min-height:38px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:0;border-radius:10px;background:transparent;color:var(--text);padding:0 8px;text-align:left}.account-menu-popover button:hover{background:#ffffff12}.account-menu-popover button svg{width:17px;height:17px}.chat-main-column{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden;align-items:stretch}.chat-stage{--chat-composer-clearance: 0px;--chat-top-clearance: 58px;--conversation-width: min( calc(100% - 48px) , 840px);flex:1;height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;padding:8px;gap:6px;overflow:hidden;position:relative;border-radius:0;background:#090d18e6}.settings-modal-backdrop,.feedback-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;align-items:start;justify-items:center;padding:20px;background:#03060ca8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.settings-modal{width:min(100%,900px);max-height:min(86vh,820px);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);border-radius:18px;background:#080d18f7;padding:12px}.feedback-modal{width:min(100%,520px);display:grid;gap:16px;border-radius:18px;background:#080d18fa;padding:18px}.feedback-modal-header{display:flex;align-items:start;justify-content:space-between;gap:12px}.feedback-modal-header div{display:grid;gap:4px}.feedback-modal-header span{color:var(--accent);font-size:.78rem;font-weight:800;text-transform:uppercase}.feedback-modal-header strong{font-size:1.1rem}.feedback-reason-list{display:grid;gap:8px;border:0;margin:0;padding:0}.feedback-reason-list legend,.feedback-note-label{color:var(--muted);font-size:.88rem;font-weight:800}.feedback-reason-list legend{margin-bottom:2px}.feedback-reason-option{min-height:42px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#ffffff08;color:var(--text);padding:0 12px}.feedback-reason-option:has(input:checked){border-color:#91f2cf6b;background:#91f2cf1a}.feedback-reason-option input{width:16px;min-height:16px;accent-color:var(--accent)}.feedback-note-label textarea{min-height:112px;margin-top:8px;padding:12px;resize:vertical}.feedback-modal-actions{display:flex;justify-content:flex-end;gap:10px}.settings-modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px}.settings-close-button{min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#ffffff0d;color:var(--text)}.settings-modal-layout{min-height:0;display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px}.settings-section-nav{display:grid;gap:8px;align-content:start}.settings-section-nav button{width:100%;min-height:42px;display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#ffffff08;color:var(--text);padding:0 12px;text-align:left}.settings-section-nav button.is-active{border-color:#91f2cf66;background:#91f2cf1f}.settings-content{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px}.practice-profile-form{min-height:0;display:grid;align-content:start;gap:14px;overflow:auto;padding-right:4px}.practice-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.practice-profile-grid>label:nth-child(4),.practice-profile-grid>label:last-child{grid-column:1 / -1}.practice-area-checklist{grid-column:1 / -1;min-width:0;display:grid;gap:8px;border:0;padding:0;margin:0}.practice-area-checklist legend{margin-bottom:8px;color:var(--muted);font-size:.88rem;font-weight:800}.practice-area-checklist>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.practice-area-checklist label{min-width:0;min-height:42px;display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff09;color:var(--text);padding:0 11px;font-weight:700}.practice-area-checklist label.is-selected{border-color:#91f2cf6b;background:#91f2cf17}.practice-area-checklist input{width:16px;height:16px;accent-color:var(--accent)}.practice-area-checklist span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-profile-grid textarea{min-height:88px;padding:12px 14px;resize:vertical}.settings-save-status{align-self:center;color:var(--muted);font-size:.9rem;font-weight:700}.settings-content-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-content-header span{color:var(--muted);font-size:.9rem}.settings-list{min-height:0;display:grid;gap:10px;align-content:start;overflow:auto;padding-right:4px}.settings-card{min-width:0;display:grid;gap:6px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#ffffff08}.settings-card div{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-card strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-card span,.settings-card p{color:var(--muted)}.settings-card p{margin:0;line-height:1.45}.status-pill,.tool-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:26px;padding:0 10px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#ffffff0a;color:var(--text);font-size:.78rem;font-weight:700}.status-connected,.tool-completed{background:#57c7ab24;border-color:#91f2cf59}.status-connecting,.tool-running,.tool-pending{background:#8ba8ff24}.status-error,.tool-error,.message-error{background:#ff6f9126}.tool-pill svg{width:14px;height:14px}.message-scroll-area{width:100%;height:100%;min-height:0;padding-top:var(--chat-top-clearance);padding-bottom:0;overflow-y:auto;overflow-x:hidden}.message-list{box-sizing:border-box;overflow:visible;height:auto;min-height:0;max-height:none;width:var(--conversation-width);display:grid;grid-template-columns:minmax(0,1fr);align-content:start;justify-items:stretch;gap:12px;margin:0 auto;padding:16px 0 18px}.message-scroll-anchor{display:block;width:100%;height:1px}.message-card{box-sizing:border-box;width:fit-content;min-width:0;max-width:100%;display:grid;gap:8px}.message-meta-row{justify-content:space-between}.message-meta-row span{margin-left:auto}.message-delete-button{flex:0 0 auto}.message-user{justify-self:end;margin-left:auto;margin-right:0;max-width:min(560px,76%);border:1px solid rgba(139,168,255,.22);border-radius:16px;background:#8ba8ff17;padding:10px 12px}.message-assistant{width:100%;justify-self:start;margin-left:0;margin-right:auto;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#91f2cf0f;padding:12px}.message-assistant .message-meta-row{color:var(--muted)}.message-assistant-pending{min-height:86px}.message-thinking{display:inline-flex;align-items:center;gap:8px;width:fit-content;border:1px solid rgba(145,242,207,.18);border-radius:999px;background:#91f2cf14;color:var(--muted);padding:7px 10px;font-size:.9rem;font-weight:700}.message-thinking-dot{width:8px;height:8px;display:inline-block;border-radius:999px;background:var(--accent);box-shadow:0 0 #91f2cf73;animation:thinking-pulse 1s ease-in-out infinite}@keyframes thinking-pulse{0%,to{opacity:.45;transform:scale(.82);box-shadow:0 0 #91f2cf59}50%{opacity:1;transform:scale(1);box-shadow:0 0 0 7px #91f2cf00}}.message-text{min-width:0;max-width:100%;line-height:1.58;overflow-wrap:anywhere;word-break:break-word;overflow-x:visible}.message-text p{margin:0 0 12px;white-space:pre-wrap}.message-text p:last-child{margin-bottom:0}.message-text p+p,.message-text ul,.message-text ol,.message-text pre,.message-text table{margin-top:10px}.message-text ul,.message-text ol{padding-left:20px}.message-text code{border-radius:6px;background:#ffffff14;padding:1px 4px}.message-text pre{overflow-x:auto;border-radius:12px;background:#02060eb8;padding:10px}.message-text pre code{background:transparent;padding:0}.message-text table{width:100%;border-collapse:collapse;font-size:.9rem}.message-text th,.message-text td{border:1px solid rgba(255,255,255,.12);padding:6px 8px;text-align:left}.message-attachment-list{display:flex;flex-wrap:wrap;gap:6px}.message-attachment-pill{max-width:100%;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(145,242,207,.2);border-radius:999px;background:#91f2cf14;color:var(--text);padding:5px 9px;font-size:.82rem}.message-attachment-pill svg{width:14px;height:14px;flex:0 0 auto}.tool-detail-list{display:grid;gap:7px}.tool-detail-card{border:1px solid rgba(145,242,207,.14);border-radius:12px;background:#ffffff08;padding:7px 9px}.tool-detail-card summary{display:flex;align-items:center;gap:7px;cursor:pointer;color:var(--muted);font-size:.82rem;font-weight:800}.tool-detail-card summary span{margin-left:auto;font-weight:700}.tool-detail-card pre{overflow-x:auto;margin:8px 0 0;border-radius:10px;background:#02060eb8;color:var(--text);padding:9px;font-size:.78rem}.feedback-row{flex-wrap:wrap;margin-top:2px}.feedback-row button{color:var(--muted)}.feedback-row button:hover{color:var(--text);border-color:#fff3}.feedback-row button.is-selected{color:var(--text);border-color:#91f2cf8c;box-shadow:inset 0 0 0 1px #91f2cf24}.feedback-error{color:var(--danger);font-size:.78rem;font-weight:700}.chat-start-state{width:min(100%,760px);min-height:40vh;margin:6vh auto 0;display:grid;align-content:center;justify-items:center;gap:12px;text-align:center}.chat-start-state h1{font-size:clamp(2rem,5vw,4.2rem);text-align:center}.chat-start-state .muted-copy{max-width:640px;margin:0;text-align:center;line-height:1.55}.chat-composer{position:relative;width:var(--conversation-width);display:grid;gap:8px;border:1px solid rgba(145,242,207,.22);border-radius:22px;background:#080d18f0;box-shadow:0 24px 70px #00000061;padding:10px;margin:0 auto}.composer-disclaimer{width:var(--conversation-width);max-width:calc(100% - 24px);margin:8px auto 0;color:var(--muted);font-size:.76rem;line-height:1.35;text-align:center}.chat-textarea{min-height:42px;max-height:calc(14.5em + 18px);padding:6px 8px 10px;border:0;background:transparent;line-height:1.45;resize:none;overflow:hidden}.chat-textarea:focus{box-shadow:none}.composer-toolbar{flex-wrap:nowrap;width:100%}.composer-toolbar-spacer{flex:1}.composer-tool-button,.composer-attachment-menu-wrap,.composer-practice-profile-wrap,.composer-send{flex:0 0 auto}.composer-tool-button{width:38px;height:38px;display:inline-grid;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--text)}.composer-tool-button:hover:not(:disabled){background:#ffffff0f}.composer-command-menu{position:absolute;left:14px;right:14px;bottom:calc(100% + 8px);z-index:20;display:grid;gap:6px;max-height:280px;overflow-y:auto;padding:8px;border:1px solid rgba(145,242,207,.18);border-radius:14px;background:#090d18fa;box-shadow:0 24px 60px #0000006b}.composer-command-option{width:100%;min-width:0;display:grid;gap:3px;border:0;border-radius:10px;background:transparent;color:var(--text);padding:8px 10px;text-align:left}.composer-command-option:hover,.composer-command-option:focus-visible{background:#91f2cf17;outline:none}.composer-command-option strong,.composer-command-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-command-option strong{font-weight:800}.composer-command-option span,.composer-command-empty{color:var(--muted);font-size:.86rem}.composer-command-empty{padding:8px 10px}.composer-attachment-menu-wrap{position:relative}.composer-attachment-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:30;width:230px;padding:8px;border:1px solid rgba(145,242,207,.16);border-radius:14px;background:#090d18fa;box-shadow:0 24px 60px #0000006b}.composer-attachment-menu button{width:100%;min-height:38px;display:flex;align-items:center;gap:9px;border:0;border-radius:10px;background:transparent;color:var(--text);padding:0 8px;text-align:left}.composer-attachment-menu button:hover{background:#ffffff0f}.composer-attachment-menu svg{width:18px;height:18px;flex:0 0 auto}.composer-practice-profile-wrap{position:relative;min-width:0}.composer-attachment-list{display:flex;flex-wrap:wrap;gap:6px;padding:0 4px 8px}.composer-attachment-chip{min-width:0;display:inline-flex;align-items:center;gap:6px;max-width:100%;border:1px solid rgba(145,242,207,.18);border-radius:999px;background:#91f2cf14;color:var(--text);padding:5px 7px 5px 9px;font-size:.82rem}.composer-attachment-chip button{width:18px;height:18px;display:inline-grid;place-items:center;border:0;border-radius:999px;background:#ffffff14;color:var(--text);padding:0}.composer-practice-profile-button{max-width:min(320px,58vw);min-height:38px;display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#ffffff0a;color:var(--text);padding:0 10px;font-weight:700}.composer-practice-profile-button:hover:not(:disabled),.composer-practice-profile-button[aria-expanded=true]{border-color:#91f2cf59;background:#91f2cf14}.composer-practice-prefix,.composer-practice-value,.composer-practice-count{min-width:0;white-space:nowrap}.composer-practice-prefix{flex:0 0 auto}.composer-practice-value{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis}.composer-practice-count{flex:0 0 auto;color:var(--accent)}.composer-practice-profile-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:30;width:260px;max-width:calc(100vw - 32px);display:grid;gap:4px;padding:8px;border:1px solid rgba(145,242,207,.16);border-radius:14px;background:#090d18fa;box-shadow:0 24px 60px #0000006b}.composer-practice-profile-menu button{width:100%;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;border-radius:10px;background:transparent;color:var(--text);padding:0 8px;text-align:left}.composer-practice-profile-menu button:hover,.composer-practice-profile-menu button:focus-visible,.composer-practice-profile-menu button.is-selected{background:#91f2cf17;outline:none}.composer-practice-profile-menu span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-send{width:42px;height:42px;min-width:42px;min-height:42px;padding:0;border-radius:999px}.button-stop{min-width:44px;min-height:40px;padding:0 12px;border:1px solid rgba(255,111,145,.5);background:#ff6f912e;color:#ffdbe5}.stop-square{width:10px;height:10px;display:block;border-radius:2px;background:currentColor}.chat-notice{position:absolute;top:56px;left:50%;z-index:14;width:min(520px,calc(100% - 32px));transform:translate(-50%);color:var(--danger)}.error-box{border:1px solid rgba(255,157,157,.35);border-radius:14px;background:#ff9d9d14;color:var(--danger);padding:10px 12px}@media(max-width:1024px){body{overflow:hidden}.chat-shell{width:100%;height:100dvh;min-height:0;overflow:hidden}.chat-page-main{padding-top:0}.chat-product-shell{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);gap:0;position:relative;height:100%;min-height:0}.chat-product-shell.sessions-hidden{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)}.chat-product-shell.sessions-hidden .chat-sidebar-column{display:block;position:fixed;top:8px;left:8px;z-index:24;width:48px;height:48px;pointer-events:none}.chat-product-shell.sessions-hidden .collapsed-sidebar-panel{width:48px;height:48px;min-height:48px;padding:4px;border-radius:14px;pointer-events:auto;align-items:center;justify-content:center}.chat-product-shell.sessions-hidden .collapsed-sidebar-top-actions{height:100%;display:grid;place-items:center;gap:0}.chat-product-shell.sessions-hidden .collapsed-sidebar-top-actions>button:not(.logo-rail-button),.chat-product-shell.sessions-hidden .account-menu-wrap.is-compact{display:none}.chat-product-shell.sessions-hidden .logo-rail-button{width:40px;height:40px;margin:0;border-radius:10px}.chat-product-shell.sessions-open .chat-sidebar-column{display:flex;position:fixed;top:0;right:6px;bottom:6px;left:0;z-index:70;align-self:stretch}.chat-product-shell.sessions-open .chat-session-panel{height:100%;max-height:none}.chat-product-shell.sessions-open .chat-main-column{pointer-events:none;opacity:.38}.chat-sidebar-column{gap:8px}.chat-session-panel{max-height:none;border-radius:14px;padding:10px}.session-list{display:grid;gap:8px;overflow-y:auto;overflow-x:hidden;min-height:0}.session-card{min-width:0;max-width:none;padding:10px 42px 10px 10px}.session-card strong,.session-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-panel-header.compact-header{margin-bottom:8px}.session-header-title{gap:6px}.sidebar-collapse-button{display:none}.chat-product-shell.sessions-open .sidebar-collapse-button{display:inline-flex}.sidebar-settings-button{min-height:36px;margin-top:8px}.chat-main-column{min-height:0;height:100%}.chat-stage{--chat-composer-clearance: 132px;min-height:0;height:100%;border-radius:14px;padding:10px}.settings-modal{max-height:calc(100dvh - 24px)}.settings-modal-layout,.practice-profile-grid{grid-template-columns:1fr}.settings-section-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-section-nav button{justify-content:center}.admin-shell{padding:14px}.admin-topbar{align-items:flex-start;flex-direction:column}.admin-grid,.admin-invite-form{grid-template-columns:1fr}.admin-feedback-bar-row{grid-template-columns:92px minmax(0,1fr) 48px 30px}.chat-start-state{width:100%;min-height:calc(100dvh - 220px);margin:0;padding-bottom:var(--chat-composer-clearance)}.chat-start-state h1{font-size:clamp(1.7rem,8vw,3rem)}.message-scroll-area{padding-top:8px}.message-list{width:100%;padding:10px 8px var(--chat-composer-clearance)}.message-card{max-width:100%}.message-user{max-width:88%}.chat-composer{position:fixed;left:12px;right:12px;bottom:12px;width:auto;max-width:none;z-index:30}.composer-toolbar{flex-wrap:wrap}.message-text pre,.message-text table{max-width:calc(100vw - 44px)}}@media(max-width:640px){.settings-modal-backdrop,.feedback-modal-backdrop{align-items:stretch;padding:0}.settings-modal{width:100%;height:100dvh;max-height:none;border-radius:0}.settings-section-nav{grid-template-columns:1fr}.feedback-modal{align-self:end;width:100%;border-radius:18px 18px 0 0}.practice-area-checklist>div{grid-template-columns:1fr}}
