:root{font-family:SF Pro Display,Geist Sans,Helvetica Neue,Arial,sans-serif;color:#242424;background:#f7f6f3;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--canvas: #f7f6f3;--surface: #ffffff;--surface-muted: #fbfbfa;--surface-raised: #ffffff;--border: #e7e5df;--border-strong: #c9c4b9;--text: #242424;--muted: #77736b;--muted-strong: #5e594f;--ink: #111111;--user-surface: #111111;--user-text: #ffffff;--assistant-surface: #ffffff;--blue-soft: #e1f3fe;--green-soft: #edf3ec;--yellow-soft: #fbf3db;--red-soft: #fdebec}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}#root{position:fixed;top:0;right:0;bottom:0;left:0}body{margin:0;min-width:320px;min-height:100vh;background:var(--canvas);overflow:hidden;touch-action:manipulation}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{--ui-scale: .8;width:100%;height:var(--app-height, 100dvh);min-height:0;display:grid;grid-template-columns:minmax(calc(280px * var(--ui-scale)),calc(340px * var(--ui-scale))) 1fr;font-size:calc(16px * var(--ui-scale));color:var(--text);background:radial-gradient(circle at 15% 10%,rgba(149,100,0,.06),transparent 28%),linear-gradient(180deg,var(--surface-muted) 0%,var(--canvas) 100%);overflow:hidden}.session-rail{border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface-raised) 78%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:calc((24px * var(--ui-scale)) + env(safe-area-inset-top)) calc(24px * var(--ui-scale)) calc((24px * var(--ui-scale)) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:calc(16px * var(--ui-scale));height:100%;min-height:0;overflow:hidden}.rail-header,.chat-header{display:flex;align-items:center;justify-content:space-between;gap:calc(16px * var(--ui-scale));min-width:0;max-width:100%}.rail-header .eyebrow{font-size:calc(13px * var(--ui-scale));letter-spacing:.1em}h1,h2,h3,p{margin:0}h1{font-size:calc(26px * var(--ui-scale));letter-spacing:-.04em;line-height:1}h2{font-size:clamp(calc(22px * var(--ui-scale)),3vw,calc(34px * var(--ui-scale)));letter-spacing:-.035em;line-height:1.05}h3{font-size:calc(24px * var(--ui-scale));letter-spacing:-.03em}.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:calc(11px * var(--ui-scale));font-weight:700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.icon-button,.send-button,.voice-button{border:1px solid var(--border);background:var(--surface);color:var(--ink);width:calc(38px * var(--ui-scale));height:calc(38px * var(--ui-scale));border-radius:calc(8px * var(--ui-scale));display:grid;place-items:center}.icon-button:hover,.send-button:hover,.voice-button:hover{background:var(--surface-muted)}.voice-button:disabled{opacity:.42;cursor:not-allowed}.voice-button.is-listening{background:var(--blue-soft);border-color:var(--border-strong)}.search-box{display:flex;align-items:center;gap:calc(10px * var(--ui-scale));border:1px solid var(--border);background:var(--surface);border-radius:calc(10px * var(--ui-scale));padding:calc(10px * var(--ui-scale)) calc(12px * var(--ui-scale))}.search-box input{border:0;outline:0;background:transparent;width:100%;color:var(--text)}.search-box input::placeholder,.composer textarea::placeholder{color:var(--muted)}.new-session{border:1px solid var(--ink);background:var(--ink);color:var(--canvas);border-radius:calc(8px * var(--ui-scale));padding:calc(12px * var(--ui-scale)) calc(14px * var(--ui-scale));display:flex;align-items:center;justify-content:center;gap:calc(8px * var(--ui-scale));font-weight:700}.rail-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:calc(10px * var(--ui-scale));padding:calc(3px * var(--ui-scale));background:var(--surface-muted)}.rail-switch button{border:0;background:transparent;color:var(--muted);border-radius:calc(7px * var(--ui-scale));padding:calc(8px * var(--ui-scale)) calc(10px * var(--ui-scale));font-weight:800;font-size:calc(12px * var(--ui-scale))}.rail-switch button.is-active{background:var(--surface);color:var(--text);border:1px solid var(--border)}.category-tabs{display:flex;gap:calc(6px * var(--ui-scale));overflow-x:auto;padding-bottom:calc(2px * var(--ui-scale));scrollbar-width:none}.rail-section-label{display:flex;align-items:center;justify-content:space-between;gap:calc(8px * var(--ui-scale));color:var(--muted);font-size:calc(10px * var(--ui-scale));font-weight:900;letter-spacing:.08em;text-transform:uppercase}.rail-section-label small{color:var(--muted-strong);letter-spacing:0;text-transform:none;font-size:calc(11px * var(--ui-scale))}.category-tabs::-webkit-scrollbar{display:none}.category-tabs button{border:1px solid var(--border);background:var(--surface-muted);color:var(--muted-strong);border-radius:999px;padding:calc(7px * var(--ui-scale)) calc(10px * var(--ui-scale));font-size:calc(11px * var(--ui-scale));font-weight:800;white-space:nowrap}.category-tabs button.is-active{background:var(--ink);color:var(--canvas);border-color:var(--ink)}.session-list,.group-room-list{display:flex;flex-direction:column;gap:calc(10px * var(--ui-scale));overflow:auto;padding-right:calc(2px * var(--ui-scale));min-height:0;flex:1 1 auto}.rail-empty{border:1px dashed var(--border-strong);border-radius:calc(12px * var(--ui-scale));padding:calc(14px * var(--ui-scale));display:grid;gap:calc(6px * var(--ui-scale));color:var(--muted);font-size:calc(12px * var(--ui-scale));line-height:1.4}.rail-empty strong{color:var(--text)}.session-category-section{display:grid;gap:calc(7px * var(--ui-scale));min-width:0}.session-category-wrap{display:flex;align-items:center;justify-content:flex-start;min-width:0}.session-category-items{display:grid;gap:calc(8px * var(--ui-scale));min-width:0}.session-card,.room-card{text-align:left;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 76%,var(--surface-muted));border-radius:calc(12px * var(--ui-scale));padding:calc(14px * var(--ui-scale));display:flex;flex-direction:column;gap:calc(7px * var(--ui-scale));color:var(--text)}.session-card:hover,.room-card:hover{border-color:var(--border-strong)}.session-card.is-active{border-color:var(--ink);background:var(--surface)}.session-title{font-weight:800;letter-spacing:-.02em}.session-category{align-self:flex-start;border:1px solid var(--border);background:var(--surface-muted);color:var(--muted-strong);border-radius:999px;padding:calc(3px * var(--ui-scale)) calc(7px * var(--ui-scale));font-size:calc(10px * var(--ui-scale));font-weight:900;text-transform:uppercase;letter-spacing:.06em}.session-preview{color:var(--muted-strong);font-size:calc(13px * var(--ui-scale));line-height:1.4}.session-meta{color:var(--muted);font-size:calc(11px * var(--ui-scale));font-family:SF Mono,Geist Mono,monospace;align-self:flex-end;text-align:right}.group-header-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-weight:800;font-size:12px}.group-header-row span{display:flex;align-items:center;gap:7px}.group-header-row button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:7px 9px;font-size:12px;font-weight:800}.settings-button{width:100%;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:calc(10px * var(--ui-scale));padding:calc(11px * var(--ui-scale)) calc(12px * var(--ui-scale));display:flex;align-items:center;justify-content:center;gap:calc(8px * var(--ui-scale));font-weight:800;position:relative;z-index:3;flex:0 0 auto}.pairing-button{margin-top:auto}.chat-panel{min-width:0;width:100%;max-width:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;overflow:hidden}.chat-header{position:sticky;top:0;z-index:4;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--canvas) 92%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:calc((14px * var(--ui-scale)) + env(safe-area-inset-top)) calc(28px * var(--ui-scale)) calc(14px * var(--ui-scale))}.session-heading{min-width:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:calc(7px * var(--ui-scale)) calc(14px * var(--ui-scale));flex:1 1 auto}.session-heading h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-context-row{display:flex;flex-wrap:wrap;align-items:center;gap:calc(6px * var(--ui-scale));color:var(--muted);font-size:calc(11px * var(--ui-scale));font-weight:800}.session-context-row span{border:1px solid var(--border);border-radius:999px;padding:calc(3px * var(--ui-scale)) calc(7px * var(--ui-scale));background:color-mix(in srgb,var(--surface) 70%,transparent)}.session-quick-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:calc(8px * var(--ui-scale));min-width:0;justify-self:end}.connection-state-wrap{flex:0 0 auto;display:flex;justify-content:flex-end;align-self:flex-start;min-width:0}.connector-state{border:0;background:transparent;color:var(--text);border-radius:999px;padding:calc(4px * var(--ui-scale)) 0;display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:calc(6px * var(--ui-scale));min-width:0;max-width:100%;text-align:left}.connector-state strong{min-width:0;font-size:calc(12px * var(--ui-scale));line-height:1;white-space:nowrap}.connector-dot{width:calc(8px * var(--ui-scale));height:calc(8px * var(--ui-scale));border-radius:999px;background:var(--muted)}.connector-state-ok .connector-dot{background:#2c9b4c;box-shadow:0 0 0 calc(3px * var(--ui-scale)) color-mix(in srgb,#2c9b4c 18%,transparent)}.connector-state-warn .connector-dot{background:#c7821c;box-shadow:0 0 0 calc(3px * var(--ui-scale)) color-mix(in srgb,#c7821c 20%,transparent)}.connector-state-checking .connector-dot{background:#4d82c8;box-shadow:0 0 0 calc(3px * var(--ui-scale)) color-mix(in srgb,#4d82c8 20%,transparent)}.composer-controls{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:calc(8px * var(--ui-scale));margin-bottom:calc(10px * var(--ui-scale));min-width:0;width:100%}.model-pill,.context-meter,.mini-action{border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--text);border-radius:calc(9px * var(--ui-scale));min-height:calc(32px * var(--ui-scale));font-size:calc(12px * var(--ui-scale));font-weight:800}.context-control{grid-column:1;position:relative;display:inline-grid;grid-template-columns:minmax(0,1fr);align-items:center;min-width:0;max-width:100%}.session-details-popover{position:absolute;left:0;bottom:calc(100% + (8px * var(--ui-scale)));z-index:9;width:min(calc(340px * var(--ui-scale)),82vw);border:1px solid var(--border);border-radius:calc(12px * var(--ui-scale));background:color-mix(in srgb,var(--surface-raised) 97%,transparent);box-shadow:0 calc(18px * var(--ui-scale)) calc(48px * var(--ui-scale)) #00000040;padding:calc(10px * var(--ui-scale));display:grid;gap:calc(7px * var(--ui-scale))}.session-details-popover div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:calc(8px * var(--ui-scale));align-items:center}.session-details-popover span{color:var(--muted);font-size:calc(10px * var(--ui-scale));text-transform:uppercase;letter-spacing:.06em;font-weight:900}.session-details-popover code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-family:SF Mono,Geist Mono,monospace;font-size:calc(11px * var(--ui-scale));text-align:right}.model-picker{grid-column:3;justify-self:end;position:relative;display:grid;min-width:0;max-width:100%}.model-pill{display:inline-grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:calc(7px * var(--ui-scale));min-width:0;max-width:min(100%,calc(320px * var(--ui-scale)));width:max-content;padding:calc(6px * var(--ui-scale)) calc(9px * var(--ui-scale));box-shadow:inset 0 1px color-mix(in srgb,var(--surface-raised) 60%,transparent)}.model-pill span,.context-meter span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:calc(10px * var(--ui-scale))}.model-pill strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:calc(12px * var(--ui-scale));text-align:right}.model-menu{position:absolute;right:0;bottom:calc(100% + (8px * var(--ui-scale)));z-index:8;width:min(calc(330px * var(--ui-scale)),72vw);display:grid;gap:calc(5px * var(--ui-scale));padding:calc(7px * var(--ui-scale));border:1px solid var(--border);border-radius:calc(12px * var(--ui-scale));background:color-mix(in srgb,var(--surface-raised) 96%,transparent);box-shadow:0 calc(14px * var(--ui-scale)) calc(42px * var(--ui-scale)) #0000003d}.model-menu button{border:1px solid transparent;border-radius:calc(8px * var(--ui-scale));background:transparent;color:var(--text);padding:calc(8px * var(--ui-scale)) calc(9px * var(--ui-scale));text-align:left;font-weight:800}.model-menu button:hover,.model-menu button.is-active{border-color:var(--border);background:var(--surface)}.context-meter{justify-self:start;display:inline-grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:calc(7px * var(--ui-scale));padding:calc(5px * var(--ui-scale)) calc(9px * var(--ui-scale));border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 76%,transparent);width:clamp(calc(300px * var(--ui-scale)),34vw,calc(360px * var(--ui-scale)));cursor:pointer}.context-meter[aria-expanded=true]{border-color:var(--border-strong);background:var(--surface)}.context-meter strong{font-size:calc(11px * var(--ui-scale));white-space:nowrap}.context-track{height:calc(7px * var(--ui-scale));border-radius:999px;background:var(--border);overflow:hidden}.context-track span{display:block;height:100%;border-radius:inherit;background:var(--ink)}.mini-action{display:inline-flex;align-items:center;justify-content:center;gap:calc(5px * var(--ui-scale));width:calc(92px * var(--ui-scale));padding:calc(6px * var(--ui-scale)) calc(9px * var(--ui-scale))}.mini-action:hover,.model-pill:hover,.context-meter:hover{border-color:var(--border-strong)}.status-pill{display:flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--green-soft);color:#346538;border-radius:999px;padding:calc(7px * var(--ui-scale)) calc(10px * var(--ui-scale));font-size:calc(12px * var(--ui-scale));font-weight:700;white-space:nowrap}.message-list{min-height:0;min-width:0;max-width:100%;padding:calc(28px * var(--ui-scale));overflow:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:calc(12px * var(--ui-scale));overscroll-behavior:contain}.message-bubble{width:fit-content;max-width:min(calc(760px * var(--ui-scale)),100%);min-width:0;border:1px solid var(--border);background:var(--assistant-surface);color:var(--text);border-radius:calc(12px * var(--ui-scale));padding:calc(16px * var(--ui-scale)) calc(18px * var(--ui-scale));line-height:1.6;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.message-user,.message-command{align-self:flex-end;background:var(--user-surface);color:var(--user-text);border-color:color-mix(in srgb,var(--user-surface) 80%,var(--border))}.message-assistant{align-self:flex-start}.message-layer-reply{background:var(--assistant-surface)}.message-role{font-size:calc(11px * var(--ui-scale));text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800;margin-bottom:calc(8px * var(--ui-scale))}.message-user .message-role,.message-command .message-role{color:color-mix(in srgb,var(--user-text) 72%,transparent)}.message-timestamp{display:block;margin-top:calc(8px * var(--ui-scale));color:var(--muted);font-family:SF Mono,Geist Mono,monospace;font-size:calc(10px * var(--ui-scale));text-align:right}.message-user .message-timestamp,.message-command .message-timestamp{color:color-mix(in srgb,var(--user-text) 58%,transparent)}.message-error{margin-top:calc(8px * var(--ui-scale));border-top:1px solid color-mix(in srgb,var(--red-soft) 72%,transparent);padding-top:calc(7px * var(--ui-scale));color:#e58b86;font-size:calc(11px * var(--ui-scale));line-height:1.35}.markdown-text{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.markdown-text>:first-child{margin-top:0}.markdown-text>:last-child{margin-bottom:0}.markdown-text p{margin:0 0 calc(10px * var(--ui-scale));white-space:pre-wrap}.markdown-text ul,.markdown-text ol{margin:0 0 calc(10px * var(--ui-scale));padding-left:calc(22px * var(--ui-scale))}.markdown-text li+li{margin-top:calc(4px * var(--ui-scale))}.markdown-text blockquote{margin:calc(10px * var(--ui-scale)) 0;padding-left:calc(12px * var(--ui-scale));border-left:3px solid var(--border-strong);color:var(--muted-strong)}.markdown-text a{color:inherit;text-decoration:underline;text-underline-offset:.18em}.markdown-text code{border:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--surface-muted) 72%,transparent);border-radius:6px;padding:.08em .34em;font-family:SF Mono,Geist Mono,monospace;font-size:.92em}.markdown-text pre{max-width:100%;overflow:auto;margin:calc(10px * var(--ui-scale)) 0;border:1px solid var(--border);border-radius:calc(10px * var(--ui-scale));background:color-mix(in srgb,var(--surface-muted) 82%,transparent);padding:calc(10px * var(--ui-scale));white-space:pre}.markdown-text pre code{border:0;background:transparent;border-radius:0;padding:0}.markdown-text table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;margin:calc(10px * var(--ui-scale)) 0}.markdown-text th,.markdown-text td{border:1px solid var(--border);padding:calc(6px * var(--ui-scale)) calc(8px * var(--ui-scale));text-align:left}.markdown-text hr{border:0;border-top:1px solid var(--border);margin:calc(12px * var(--ui-scale)) 0}.markdown-text-compact{font-family:SF Mono,Geist Mono,monospace;font-size:calc(12px * var(--ui-scale));line-height:1.35}.markdown-text-compact p{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.markdown-text-compact code{font-size:1em}.agent-activity-line{align-self:flex-start;max-width:100%;display:inline-grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:calc(7px * var(--ui-scale));color:color-mix(in srgb,var(--muted-strong) 82%,transparent);background:color-mix(in srgb,var(--surface-muted) 58%,transparent);border-radius:999px;padding:calc(5px * var(--ui-scale)) calc(8px * var(--ui-scale));font-size:calc(12px * var(--ui-scale));line-height:1.2}.agent-activity-line .markdown-text{min-width:0;overflow:hidden}.agent-activity-icon{display:inline-grid;place-items:center;width:calc(17px * var(--ui-scale));height:calc(17px * var(--ui-scale));color:var(--muted)}.agent-activity-status{color:var(--muted);font-size:calc(10px * var(--ui-scale));text-transform:uppercase;letter-spacing:.06em}.agent-activity-line.is-failed{color:#d66f6b}.empty-state{margin:auto;max-width:calc(580px * var(--ui-scale));text-align:center;display:grid;gap:calc(12px * var(--ui-scale));color:color-mix(in srgb,var(--muted) 68%,transparent);opacity:.82}.empty-state h3{color:color-mix(in srgb,var(--text) 58%,transparent)}.empty-command-row{display:flex;flex-wrap:wrap;justify-content:center;gap:calc(8px * var(--ui-scale))}.empty-command-row button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:calc(7px * var(--ui-scale)) calc(10px * var(--ui-scale));font-family:SF Mono,Geist Mono,monospace;font-size:calc(11px * var(--ui-scale));font-weight:800}.composer-shell{position:sticky;bottom:0;z-index:4;width:100%;min-width:0;max-width:100%;padding:calc(14px * var(--ui-scale)) calc(28px * var(--ui-scale)) calc((28px * var(--ui-scale)) + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface-muted) 96%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.composer{display:grid;grid-template-columns:auto minmax(0,1fr);gap:calc(10px * var(--ui-scale));align-items:end;min-width:0;width:100%}.composer>.icon-button{align-self:end;width:calc(64px * var(--ui-scale));height:calc(64px * var(--ui-scale));aspect-ratio:1 / 1}.composer-input{min-width:0;width:100%;max-width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(calc(38px * var(--ui-scale)),auto) minmax(calc(38px * var(--ui-scale)),auto);gap:calc(10px * var(--ui-scale));align-items:end;border:1px solid var(--border);background:var(--surface);border-radius:calc(14px * var(--ui-scale));padding:calc(10px * var(--ui-scale))}.composer textarea{min-width:0;border:0;outline:0;resize:none;min-height:calc(38px * var(--ui-scale));max-height:calc(150px * var(--ui-scale));padding:calc(9px * var(--ui-scale)) 0;line-height:1.45;color:var(--text);background:transparent;overflow-y:hidden}.composer textarea::placeholder{color:color-mix(in srgb,var(--muted) 58%,transparent)}.send-button{background:var(--ink);color:var(--canvas);border-color:var(--ink)}.voice-button{background:var(--surface);color:var(--ink);border-color:var(--border-strong)}.attachment-tray{display:flex;flex-wrap:wrap;gap:calc(8px * var(--ui-scale))}.command-tray{position:absolute;left:calc(28px * var(--ui-scale));bottom:calc(100% - (12px * var(--ui-scale)));z-index:6;width:min(calc(560px * var(--ui-scale)),calc(100% - (56px * var(--ui-scale))));display:grid;grid-template-columns:1fr;gap:calc(7px * var(--ui-scale));padding:calc(8px * var(--ui-scale));border:1px solid var(--border);border-radius:calc(12px * var(--ui-scale));background:color-mix(in srgb,var(--surface-raised) 96%,transparent);box-shadow:0 calc(14px * var(--ui-scale)) calc(42px * var(--ui-scale)) #00000038}.command-tray button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:calc(9px * var(--ui-scale));padding:calc(9px * var(--ui-scale)) calc(11px * var(--ui-scale));text-align:left;display:grid;gap:4px;width:100%;min-width:0}.command-tray strong{font-family:SF Mono,Geist Mono,monospace;font-size:12px}.command-tray span{color:var(--muted);font-size:12px;line-height:1.35;white-space:normal}.attachment-panel{max-width:100%;min-width:0;overflow:hidden;border:1px solid var(--border);background:color-mix(in srgb,var(--yellow-soft) 52%,var(--surface));border-radius:calc(12px * var(--ui-scale));padding:calc(9px * var(--ui-scale));margin-bottom:calc(10px * var(--ui-scale));display:grid;gap:calc(8px * var(--ui-scale))}.attachment-summary{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:calc(10px * var(--ui-scale));color:var(--muted-strong);font-size:calc(12px * var(--ui-scale));font-weight:800}.attachment-summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-summary button{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:calc(7px * var(--ui-scale));padding:calc(5px * var(--ui-scale)) calc(8px * var(--ui-scale));font-size:calc(11px * var(--ui-scale));font-weight:800}.attachment-tray{min-width:0;max-width:100%;overflow:hidden}.attachment-chip{min-width:0;border:1px solid var(--border);background:var(--yellow-soft);color:#725009;border-radius:999px;padding:calc(7px * var(--ui-scale)) calc(8px * var(--ui-scale)) calc(7px * var(--ui-scale)) calc(11px * var(--ui-scale));font-size:calc(12px * var(--ui-scale));display:inline-flex;align-items:center;gap:calc(7px * var(--ui-scale));max-width:100%;overflow:hidden;text-overflow:ellipsis}.attachment-chip-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip.is-uploaded{background:var(--green-soft);color:#346538}.attachment-chip.is-failed{background:var(--red-soft);color:#9f2f2d}.attachment-chip button{border:0;background:transparent;color:inherit;display:grid;place-items:center;padding:2px}.desktop-hidden,.mobile-only{display:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#00000057;display:grid;place-items:center;padding:calc((20px * var(--ui-scale)) + env(safe-area-inset-top)) calc(20px * var(--ui-scale)) calc((20px * var(--ui-scale)) + env(safe-area-inset-bottom))}.settings-modal{width:min(calc(440px * var(--ui-scale)),100%);max-height:min(calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - (32px * var(--ui-scale))),calc(720px * var(--ui-scale)));overflow:auto;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);border-radius:calc(16px * var(--ui-scale));padding:calc(20px * var(--ui-scale));display:grid;gap:calc(16px * var(--ui-scale));box-shadow:0 calc(24px * var(--ui-scale)) calc(80px * var(--ui-scale)) #00000029}.settings-modal header{display:flex;align-items:center;justify-content:space-between;gap:calc(12px * var(--ui-scale))}.settings-copy{color:var(--muted);line-height:1.55}.settings-modal label{display:grid;gap:8px;color:var(--muted);font-size:12px;font-weight:800}.settings-modal label span{display:flex;align-items:center;gap:7px}.settings-modal label strong{color:var(--text);margin-left:auto}.theme-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;border:1px solid var(--border);border-radius:10px;padding:4px;background:var(--surface-muted)}.theme-tabs button{border:0;border-radius:7px;background:transparent;color:var(--muted);padding:9px 8px;font-weight:800}.theme-tabs button.is-active{border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}.settings-modal input[type=range]{accent-color:var(--ink);padding:0;border:0;background:transparent}.toggle-setting{grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--border);background:var(--surface-muted);border-radius:calc(10px * var(--ui-scale));padding:calc(10px * var(--ui-scale)) calc(12px * var(--ui-scale))}.toggle-setting input[type=checkbox]{width:calc(18px * var(--ui-scale));height:calc(18px * var(--ui-scale));accent-color:var(--ink)}.pairing-modal-header{align-items:flex-start}.pairing-modal-header>div{display:grid;gap:calc(4px * var(--ui-scale));min-width:0}.debug-log-panel{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;padding:12px;display:grid;gap:calc(10px * var(--ui-scale))}.debug-log-panel span{display:flex;align-items:center;gap:7px;color:var(--text);font-size:12px;font-weight:800}.debug-log-panel>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:calc(10px * var(--ui-scale))}.debug-log-panel p{color:var(--muted);font-size:12px;line-height:1.5;margin-top:5px}.compact-setting-panel{grid-template-columns:minmax(0,1fr);align-items:center}.setting-info-bubble{position:relative;flex:0 0 auto}.setting-info-bubble summary{list-style:none;width:calc(24px * var(--ui-scale));height:calc(24px * var(--ui-scale));border:1px solid var(--border);border-radius:999px;display:grid;place-items:center;cursor:pointer;color:var(--muted-strong);background:var(--surface);font-weight:900;font-size:calc(11px * var(--ui-scale))}.setting-info-bubble summary::-webkit-details-marker{display:none}.setting-info-bubble p{position:absolute;right:0;top:calc(100% + (8px * var(--ui-scale)));z-index:12;width:min(calc(290px * var(--ui-scale)),72vw);margin:0;padding:calc(10px * var(--ui-scale));border:1px solid var(--border);border-radius:calc(10px * var(--ui-scale));background:var(--surface-raised);color:var(--text);box-shadow:0 calc(12px * var(--ui-scale)) calc(36px * var(--ui-scale)) #0000003d}.debug-log-actions{display:grid;grid-template-columns:1fr;gap:8px}.debug-log-panel button{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:8px;padding:10px 12px;font-weight:800}.debug-log-actions button{width:100%}.debug-log-panel .debug-log-status{width:100%;margin-top:0;color:var(--text);overflow-wrap:anywhere}.settings-modal select,.settings-modal input,.settings-modal textarea{width:100%;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:calc(10px * var(--ui-scale));padding:calc(10px * var(--ui-scale)) calc(12px * var(--ui-scale))}.settings-modal .toggle-setting input[type=checkbox]{width:calc(18px * var(--ui-scale));height:calc(18px * var(--ui-scale));padding:0}.pairing-modal{width:min(680px,100%);max-height:min(86vh,760px);overflow:auto}.pairing-form-card{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-muted) 72%,transparent);border-radius:calc(12px * var(--ui-scale));padding:calc(12px * var(--ui-scale));display:grid;gap:calc(12px * var(--ui-scale))}.pairing-grid{display:grid;grid-template-columns:1fr 1fr;gap:calc(12px * var(--ui-scale))}.pairing-connection-card{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-muted) 76%,transparent);border-radius:calc(14px * var(--ui-scale));padding:calc(12px * var(--ui-scale));display:grid;gap:calc(12px * var(--ui-scale))}.pairing-connection-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:calc(10px * var(--ui-scale));min-width:0}.pairing-connection-summary>svg{color:var(--muted-strong)}.pairing-connection-summary div{display:grid;gap:calc(3px * var(--ui-scale));min-width:0}.pairing-connection-summary strong{color:var(--text);font-size:calc(14px * var(--ui-scale))}.pairing-connection-summary span{color:var(--muted);font-size:calc(12px * var(--ui-scale));line-height:1.35}.pairing-status-detail-ok{color:#4fa365!important}.pairing-status-detail-warn{color:#d06c66!important}.pairing-status-detail-checking{color:#6f9fda!important}.pairing-link-map{display:grid;grid-template-columns:minmax(calc(54px * var(--ui-scale)),auto) minmax(calc(52px * var(--ui-scale)),1fr) minmax(calc(54px * var(--ui-scale)),auto) minmax(calc(52px * var(--ui-scale)),1fr) minmax(calc(54px * var(--ui-scale)),auto);align-items:start;gap:calc(8px * var(--ui-scale));border:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:color-mix(in srgb,var(--surface) 72%,transparent);border-radius:calc(10px * var(--ui-scale));padding:calc(10px * var(--ui-scale));overflow:hidden}.pairing-node{display:grid;justify-items:center;align-items:start;gap:calc(4px * var(--ui-scale));min-width:0}.pairing-node-icon{width:calc(42px * var(--ui-scale));height:calc(42px * var(--ui-scale));border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:calc(10px * var(--ui-scale));display:grid;place-items:center}.pairing-node-copy{display:grid;justify-items:center;gap:calc(3px * var(--ui-scale));min-width:0}.pairing-node strong,.pairing-link-copy strong{font-size:calc(11px * var(--ui-scale));color:var(--muted-strong);font-weight:900}.pairing-node-copy span{color:var(--muted);font-size:calc(10px * var(--ui-scale));font-weight:800}.pairing-link{display:grid;grid-template-rows:calc(42px * var(--ui-scale)) auto auto;align-items:start;justify-items:center;gap:calc(4px * var(--ui-scale));min-width:0;position:relative}.pairing-link-line{grid-row:2;width:100%;height:2px;background:var(--border-strong);display:block;align-self:center}.pairing-link-dot{grid-row:1;align-self:center;justify-self:center;width:calc(9px * var(--ui-scale));height:calc(9px * var(--ui-scale));border-radius:999px;z-index:1;box-shadow:0 0 0 calc(3px * var(--ui-scale)) color-mix(in srgb,currentColor 18%,transparent)}.pairing-link-copy{grid-row:3;display:grid;align-items:center;justify-items:center;gap:calc(3px * var(--ui-scale));min-width:0;width:100%;margin-top:calc(5px * var(--ui-scale))}.pairing-link code{color:var(--muted);font-family:SF Mono,Geist Mono,monospace;font-size:calc(10px * var(--ui-scale));white-space:nowrap}.pairing-link-ok .pairing-link-dot{color:#2c9b4c;background:#2c9b4c}.pairing-link-warn .pairing-link-dot{color:#c95d58;background:#c95d58}.pairing-link-checking .pairing-link-dot{color:#4d82c8;background:#4d82c8}.pairing-heartbeat-row button{flex:0 0 auto}.pairing-label-row,.pairing-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.pairing-status-row{border:1px solid var(--border);background:var(--surface-muted);border-radius:calc(10px * var(--ui-scale));padding:calc(10px * var(--ui-scale)) calc(12px * var(--ui-scale))}.pairing-status-row .settings-copy{flex:1 1 auto;min-width:0}.copy-icon-button{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:8px;width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto}.copy-icon-button:hover{background:var(--surface-muted)}.copy-text-button{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:8px;padding:9px 11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:800;margin-left:auto}.copy-text-button:hover{background:var(--surface-muted)}.pairing-prompt{font-family:SF Mono,Geist Mono,monospace;font-size:12px;line-height:1.45;resize:vertical}.modal-done{border:1px solid var(--ink);background:var(--ink);color:var(--canvas);border-radius:8px;padding:11px 12px;font-weight:800}.pairing-action-button{width:100%;display:flex;align-items:center;justify-content:center}.theme-dark{--canvas: #151513;--surface: #24231f;--surface-muted: #1e1d1a;--surface-raised: #282722;--border: #44413a;--border-strong: #69645a;--text: #eeeae1;--muted: #aaa397;--muted-strong: #c4bdaf;--ink: #f0eadf;--user-surface: #34312b;--user-text: #f1eadf;--assistant-surface: #201f1c;--blue-soft: #173142;--green-soft: #1d3021;--yellow-soft: #3b301b;--red-soft: #3a2020;background:#151513;color:var(--text)}.theme-dark .app-shell{background:radial-gradient(circle at 15% 10%,rgba(180,150,96,.05),transparent 28%),#151513}.theme-dark .new-session,.theme-dark .send-button,.theme-dark .modal-done{background:#efe7d8;color:#151513;border-color:#efe7d8}.theme-dark .session-card:not(.is-active),.theme-dark .room-card{background:#302d27;border-color:#575247}.theme-dark .session-card:not(.is-active) .session-preview,.theme-dark .room-card .session-preview{color:#d1c8b8}.theme-dark .session-card.is-active{background:#3f3a31;border-color:#efe7d8}.theme-dark .message-assistant{background:#202126;border-color:#3f424a}.theme-dark .message-user,.theme-dark .message-command{background:#42392f;color:#f3eadc;border-color:#766754}.theme-dark .message-user .message-role,.theme-dark .message-command .message-role{color:#f0d8b6}.theme-dark .status-pill{color:#bad6bc}.theme-dark .attachment-chip{color:#e6c87c}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.session-rail{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;z-index:5;transform:translate(-100%);transition:transform .18s ease;box-shadow:none}.session-rail.is-open{transform:translate(0)}.desktop-hidden,.mobile-only{display:grid}.chat-header{padding:calc((12px * var(--ui-scale)) + env(safe-area-inset-top)) calc(14px * var(--ui-scale)) calc(12px * var(--ui-scale));align-items:flex-start}.connection-state-wrap{max-width:max-content}.connector-state{width:auto;padding-inline:0}.session-heading{grid-template-columns:minmax(0,1fr)}.session-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:calc(7px * var(--ui-scale));justify-self:stretch}.composer-controls{grid-template-columns:minmax(calc(300px * var(--ui-scale)),calc(360px * var(--ui-scale))) minmax(0,1fr);gap:calc(7px * var(--ui-scale))}.context-control{grid-column:1;width:100%}.model-picker{grid-column:2;width:max-content;justify-self:end}.model-pill{grid-template-columns:auto minmax(0,1fr) auto;width:max-content;max-width:min(100%,calc(220px * var(--ui-scale)))}.model-pill strong{justify-self:end;text-align:right}.context-meter{grid-template-columns:auto minmax(0,1fr) auto;width:100%;max-width:100%}.mini-action{width:100%;min-width:0;padding-inline:calc(6px * var(--ui-scale));font-size:calc(11px * var(--ui-scale))}.empty-command-row{justify-content:center;overflow:visible;flex-wrap:wrap;max-width:min(100%,calc(340px * var(--ui-scale)));margin-inline:auto;padding-bottom:2px}.empty-command-row button{flex:0 1 auto;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-list{padding:calc(14px * var(--ui-scale)) calc(10px * var(--ui-scale));gap:calc(9px * var(--ui-scale))}.message-bubble{max-width:100%;padding:calc(13px * var(--ui-scale)) calc(14px * var(--ui-scale))}.message-assistant{align-self:flex-start}.message-user,.message-command{max-width:92%}.agent-activity-line{max-width:100%;padding:calc(4px * var(--ui-scale)) calc(7px * var(--ui-scale))}.composer-shell{padding:calc(10px * var(--ui-scale)) calc(10px * var(--ui-scale)) calc((24px * var(--ui-scale)) + env(safe-area-inset-bottom))}.composer{grid-template-columns:auto minmax(0,1fr);gap:calc(7px * var(--ui-scale))}.composer>.icon-button{width:calc(42px * var(--ui-scale));height:calc(42px * var(--ui-scale))}.composer-input{gap:calc(7px * var(--ui-scale));padding:calc(8px * var(--ui-scale))}.send-button,.voice-button{width:calc(36px * var(--ui-scale));height:calc(36px * var(--ui-scale))}.command-tray{left:calc(10px * var(--ui-scale));width:calc(100% - (20px * var(--ui-scale)))}.pairing-grid{grid-template-columns:1fr}.pairing-link-map{gap:calc(5px * var(--ui-scale));padding:calc(9px * var(--ui-scale))}.pairing-node-icon{width:calc(34px * var(--ui-scale));height:calc(34px * var(--ui-scale));font-size:calc(8px * var(--ui-scale))}.pairing-node strong{font-size:calc(10px * var(--ui-scale))}}@media(max-width:520px){.composer-controls{grid-template-columns:minmax(calc(220px * var(--ui-scale)),calc(270px * var(--ui-scale))) minmax(0,1fr)}.context-meter span{display:none}}
