@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--gray-0: #ffffff;--gray-25: #fbfbfc;--gray-50: #f4f5f7;--gray-100: #eceef1;--gray-150: #e4e7eb;--gray-200: #dbdfe5;--gray-300: #c4cad3;--gray-400: #9aa2ae;--gray-500: #6f7784;--gray-600: #545b67;--gray-700: #3c424b;--gray-800: #272c33;--gray-900: #14181d;--gray-950: #0b0e12;--teal-25: #f2faf8;--teal-50: #e6f4f1;--teal-100: #c9e8e2;--teal-200: #9bd4ca;--teal-300: #5cb5a8;--teal-400: #2a9484;--teal-500: #0d7a6f;--teal-600: #0a6058;--teal-700: #084a44;--amber-50: #fdf6ec;--amber-100: #f9e7c8;--amber-500: #b06f0c;--amber-600: #8c5709;--red-50: #fcf1f0;--red-100: #f7d9d6;--red-500: #c0362c;--red-600: #9d2a21;--blue-50: #f1f6fd;--blue-100: #d9e7f8;--blue-500: #2f6fd0;--blue-600: #24589f;--violet-50: #f7f3fc;--violet-100: #e8ddf6;--violet-500: #6f4fb0;--tint-lavender: #f8f4fc;--tint-lavender-border: #eadff6;--tint-peach: #fdf5f0;--tint-peach-border: #f7e1d2;--tint-ice: #f2f7fd;--tint-ice-border: #dbe8f7;--tint-mint: #f0f8f5;--tint-mint-border: #d6ebe2;--tint-sand: #fbf8f1;--tint-sand-border: #f0e8d6;--surface-app: var(--gray-50);--surface-panel: var(--gray-0);--surface-card: var(--gray-0);--surface-sunken: var(--gray-100);--surface-rail: var(--gray-25);--surface-code: var(--gray-950);--surface-hover: rgba(20, 24, 29, .04);--surface-active: rgba(20, 24, 29, .07);--surface-selected: var(--gray-100);--surface-overlay: rgba(11, 14, 18, .32);--text-strong: var(--gray-900);--text-body: var(--gray-700);--text-muted: var(--gray-500);--text-faint: var(--gray-400);--text-inverse: var(--gray-0);--text-link: var(--teal-500);--text-link-hover: var(--teal-600);--text-accent: var(--teal-500);--text-danger: var(--red-500);--text-on-code: #d7dce3;--border-hairline: var(--gray-150);--border-default: var(--gray-200);--border-strong: var(--gray-300);--border-focus: var(--teal-400);--border-code: #232a33;--action-primary: var(--gray-900);--action-primary-hover: var(--gray-800);--action-primary-press: var(--gray-950);--action-accent: var(--teal-500);--action-accent-hover: var(--teal-600);--action-danger: var(--red-500);--action-danger-hover: var(--red-600);--focus-ring: 0 0 0 3px rgba(13, 122, 111, .18);--focus-ring-danger: 0 0 0 3px rgba(192, 54, 44, .18);--state-running-fg: var(--teal-500);--state-running-bg: var(--teal-50);--state-queued-fg: var(--gray-500);--state-queued-bg: var(--gray-100);--state-review-fg: var(--amber-500);--state-review-bg: var(--amber-50);--state-failed-fg: var(--red-500);--state-failed-bg: var(--red-50);--state-merged-fg: var(--violet-500);--state-merged-bg: var(--violet-50);--diff-add-bg: #eaf7f0;--diff-add-fg: #12674a;--diff-del-bg: #fdf0ef;--diff-del-fg: #9d2a21;--diff-gutter-fg: var(--gray-400)}:root{--font-sans: "Plus Jakarta Sans", ui-sans-serif, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-md: 14px;--text-lg: 15px;--text-xl: 17px;--text-2xl: 20px;--text-3xl: 24px;--text-4xl: 30px;--text-5xl: 38px;--text-6xl: 48px;--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal: 1.45;--leading-relaxed: 1.62;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--tracking-display: -.025em;--tracking-heading: -.014em;--tracking-normal: 0em;--tracking-caps: .06em;--type-display: var(--weight-extrabold) var(--text-5xl)/var(--leading-tight) var(--font-sans);--type-title: var(--weight-bold) var(--text-3xl)/var(--leading-snug) var(--font-sans);--type-heading: var(--weight-semibold) var(--text-xl)/var(--leading-snug) var(--font-sans);--type-subheading: var(--weight-semibold) var(--text-lg)/var(--leading-snug) var(--font-sans);--type-body: var(--weight-regular) var(--text-md)/var(--leading-relaxed) var(--font-sans);--type-ui: var(--weight-medium) var(--text-sm)/var(--leading-normal) var(--font-sans);--type-caption: var(--weight-regular) var(--text-xs)/var(--leading-normal) var(--font-sans);--type-code: var(--weight-regular) var(--text-sm)/var(--leading-relaxed) var(--font-mono);--type-metric: var(--weight-medium) var(--text-xs)/1 var(--font-mono)}:root{--space-0: 0px;--space-1: 2px;--space-2: 4px;--space-3: 6px;--space-4: 8px;--space-5: 10px;--space-6: 12px;--space-7: 16px;--space-8: 20px;--space-9: 24px;--space-10: 32px;--space-11: 40px;--space-12: 48px;--space-13: 64px;--space-14: 80px;--space-15: 112px;--rail-width: 56px;--sidebar-width: 264px;--sidebar-width-wide: 300px;--inspector-width: 340px;--topbar-height: 52px;--composer-max: 760px;--thread-max: 760px;--content-max: 1180px;--gutter: var(--space-9)}:root{--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 14px;--radius-2xl: 20px;--radius-pill: 999px;--radius-control: var(--radius-md);--radius-card: var(--radius-lg);--radius-panel: var(--radius-xl);--radius-modal: var(--radius-xl)}:root{--shadow-none: none;--shadow-xs: 0 1px 2px rgba(20, 24, 29, .05);--shadow-sm: 0 1px 3px rgba(20, 24, 29, .06), 0 1px 2px -1px rgba(20, 24, 29, .05);--shadow-md: 0 4px 14px -4px rgba(20, 24, 29, .1), 0 1px 3px rgba(20, 24, 29, .04);--shadow-lg: 0 14px 36px -10px rgba(20, 24, 29, .16), 0 2px 6px rgba(20, 24, 29, .05);--shadow-xl: 0 28px 64px -16px rgba(20, 24, 29, .22), 0 4px 10px rgba(20, 24, 29, .06);--inset-top: inset 0 1px 0 rgba(255, 255, 255, .7);--inset-hairline: inset 0 0 0 1px var(--border-hairline)}:root{--dur-instant: 90ms;--dur-fast: .14s;--dur-base: .2s;--dur-slow: .32s;--dur-lazy: .52s;--ease-out: cubic-bezier(.22, .8, .28, 1);--ease-in-out: cubic-bezier(.5, 0, .3, 1);--ease-entrance: cubic-bezier(.16, .9, .2, 1);--transition-control: background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out)}@keyframes ds-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ds-rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes ds-spin{to{transform:rotate(360deg)}}@keyframes ds-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes ds-shimmer{0%{background-position:-180% 0}to{background-position:180% 0}}@keyframes ds-caret{0%,45%{opacity:1}55%,to{opacity:0}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--surface-app);color:var(--text-body);font:var(--type-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"cv11","ss01"}h1,h2,h3,h4,h5,h6,p,figure{margin:0}a{color:var(--text-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}a:hover{color:var(--text-link-hover);text-decoration:underline;text-underline-offset:2px}button,input,textarea,select{font:inherit;color:inherit}::selection{background:var(--teal-100);color:var(--teal-700)}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-xs)}code,kbd,pre,samp{font-family:var(--font-mono)}.ds-scroll{scrollbar-width:thin;scrollbar-color:var(--gray-300) transparent}.ds-scroll::-webkit-scrollbar{width:10px;height:10px}.ds-scroll::-webkit-scrollbar-thumb{background:var(--gray-200);border:3px solid transparent;background-clip:content-box;border-radius:var(--radius-pill)}.ds-scroll:hover::-webkit-scrollbar-thumb{background:var(--gray-300);background-clip:content-box}.ds-scroll::-webkit-scrollbar-track{background:transparent}html,body,#root{height:100%}body{min-width:320px}button{cursor:pointer}button:disabled{cursor:not-allowed}:root{--auth-card-width: 440px;--control-height: 36px;--control-height-lg: 42px;--touch-target: 44px}.eyebrow{margin:0 0 var(--space-5);color:var(--text-faint);font:var(--type-ui);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.muted{color:var(--text-muted);font:var(--type-caption)}.primary-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);height:36px;padding:0 var(--space-7);border-radius:var(--radius-control);font:var(--type-ui);transition:var(--transition-control)}.primary-button{color:var(--text-inverse);background:var(--action-primary);border:1px solid var(--action-primary)}.primary-button:hover:not(:disabled){background:var(--action-primary-hover);border-color:var(--action-primary-hover)}.primary-button:active:not(:disabled){background:var(--action-primary-press);transform:scale(.985)}.ghost-button{color:var(--text-strong);background:var(--surface-panel);border:1px solid var(--border-default)}.ghost-button:hover:not(:disabled){background:var(--gray-25);border-color:var(--border-strong)}.ghost-button:active:not(:disabled){transform:scale(.985)}.primary-button:disabled,.ghost-button:disabled{opacity:.45}.icon-button{display:grid;place-items:center;flex:none;width:28px;height:28px;padding:0;color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);transition:var(--transition-control)}.icon-button:hover:not(:disabled){color:var(--text-strong);background:var(--surface-hover)}.icon-button:active:not(:disabled){background:var(--surface-active)}.icon-button:disabled{opacity:.45}.app-shell{display:grid;grid-template-columns:var(--sidebar-width-wide) minmax(440px,1fr);height:100vh;overflow:hidden}.sidebar{display:flex;flex-direction:column;gap:var(--space-7);padding:var(--space-8) var(--space-6);background:var(--surface-rail);border-right:1px solid var(--border-hairline)}.brand{display:flex;align-items:center;gap:var(--space-5);padding:0 var(--space-4)}.brand-placeholder{flex:none;width:26px;height:26px;background:var(--surface-sunken);border:1px solid var(--border-hairline);border-radius:var(--radius-sm)}.brand strong{display:block;color:var(--text-strong);font:var(--type-subheading);font-weight:var(--weight-bold);letter-spacing:var(--tracking-heading)}.session-list{flex:1;min-height:0;overflow-y:auto}.session-list .eyebrow{padding:0 var(--space-4)}.repository-group{margin-bottom:var(--space-7)}.repository-title{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4)}.repository-title strong{flex:1;overflow:hidden;color:var(--text-muted);font:var(--type-ui);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.repository-title button{display:grid;place-items:center;width:24px;height:24px;padding:0;color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);transition:var(--transition-control)}.repository-title button:hover{color:var(--text-strong);background:var(--surface-hover)}.repository-title button:active{background:var(--surface-active)}.session-button{position:relative;display:flex;align-items:baseline;gap:var(--space-4);width:100%;padding:var(--space-5) var(--space-6);text-align:left;color:var(--text-body);background:transparent;border:0;border-radius:var(--radius-md);transition:var(--transition-control)}.session-name{flex:1;min-width:0;overflow:hidden;font:var(--type-ui);text-overflow:ellipsis;white-space:nowrap}.session-activity{flex:none;color:var(--text-faint);font:var(--type-metric);font-size:var(--text-2xs)}.session-button:hover{background:var(--surface-hover)}.session-button.selected{color:var(--text-strong);background:var(--surface-selected)}.session-button.selected:before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:var(--teal-500);border-radius:var(--radius-pill)}.sidebar-actions{display:grid;gap:var(--space-4)}.sidebar-actions .primary-button{height:34px}.new-session{display:flex;align-items:center;justify-content:center;gap:var(--space-3);height:34px;color:var(--text-strong);background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-control);font:var(--type-ui);transition:var(--transition-control)}.new-session:hover{background:var(--gray-25);border-color:var(--border-strong)}.new-session:active{background:var(--gray-100);transform:scale(.985)}.conversation{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;overflow:hidden;background:var(--surface-panel)}.messages{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:var(--space-10) max(var(--space-9),calc((100% - var(--thread-max)) / 2))}.thread{display:grid;gap:var(--space-6)}.empty-chat{max-width:460px;margin:14vh auto;text-align:center}.empty-icon{display:grid;place-items:center;width:44px;height:44px;margin:0 auto var(--space-7);color:var(--text-muted);background:var(--surface-sunken);border-radius:var(--radius-card)}.empty-chat h2{margin-bottom:var(--space-3);color:var(--text-strong);font:var(--type-heading);letter-spacing:var(--tracking-heading)}.empty-chat p{color:var(--text-muted);font:var(--type-body)}.message{margin:var(--space-3) 0}.assistant-message{font:var(--type-body);color:var(--text-body);text-wrap:pretty}.assistant-message .message-body{min-width:0;overflow-wrap:anywhere}.user-message{display:flex;align-items:flex-start;gap:var(--space-6)}.user-message .message-body{flex:1;min-width:0;padding:var(--space-6) var(--space-7);color:var(--text-strong);background:var(--surface-sunken);border-radius:var(--radius-xl);font:var(--type-body);overflow-wrap:anywhere;white-space:pre-wrap}.user-message.queued .message-body,.user-message.pending .message-body{opacity:.45}.user-message.pending{animation:ds-rise-in var(--dur-base) var(--ease-entrance)}.user-avatar{display:grid;place-items:center;flex:none;width:30px;height:30px;color:var(--text-body);background:var(--tint-sand);border:1px solid var(--tint-sand-border);border-radius:var(--radius-pill);font:var(--type-metric);font-size:var(--text-2xs);text-transform:uppercase}.cursor{display:inline-block;width:2px;height:1em;margin-left:3px;vertical-align:-2px;background:var(--teal-500);animation:ds-caret 1s steps(1) infinite}.timeline-event{display:flex;align-items:center;gap:var(--space-4);min-height:28px;min-width:0}.timeline-event-icon{display:flex;flex:none;color:var(--text-faint)}.timeline-event.working .timeline-event-icon{color:var(--state-running-fg);animation:ds-pulse 1.4s var(--ease-in-out) infinite}.timeline-event.success .timeline-event-icon{color:var(--state-running-fg)}.timeline-event.warning .timeline-event-icon{color:var(--state-review-fg)}.timeline-event.error .timeline-event-icon{color:var(--state-failed-fg)}.timeline-event-verb{flex:none;color:var(--text-body);font:var(--type-body)}.timeline-event.error .timeline-event-verb{color:var(--text-danger)}.timeline-event.notice{justify-self:start;max-width:100%;padding:var(--space-3) var(--space-5);background:var(--surface-sunken);border-radius:var(--radius-sm);box-shadow:var(--inset-hairline)}.timeline-event.notice .timeline-event-code{background:var(--surface-panel)}.timeline-event-detail{min-width:0;overflow:hidden;color:var(--text-muted);font:var(--type-body);text-overflow:ellipsis;white-space:nowrap}.timeline-event-code{min-width:0;overflow:hidden;padding:2px var(--space-3);color:var(--text-body);background:var(--surface-sunken);border-radius:var(--radius-xs);font:var(--type-code);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.step-group{min-width:0}.step-group>summary{display:flex;align-items:center;gap:var(--space-4);min-height:28px;cursor:pointer;list-style:none}.step-group>summary::-webkit-details-marker{display:none}.step-group>summary>.chevron{display:flex;flex:none;color:var(--text-faint)}.step-group>summary:hover>.chevron{color:var(--text-muted)}.step-group>summary:hover .timeline-event-verb{color:var(--text-strong)}.step-group[open]>summary>.chevron{transform:rotate(90deg)}.step-group-steps{display:grid;gap:var(--space-5);margin:var(--space-5) 0 0 2px;padding-left:var(--space-6);border-left:1px solid var(--border-hairline)}.tool-result{display:flex;align-items:center;gap:var(--space-4);min-width:0;min-height:28px}.tool-result .tool-icon{display:flex;flex:none;color:var(--text-faint)}.tool-result.failed .tool-icon,.tool-result.failed .timeline-event-verb{color:var(--text-danger)}.tool-metadata{flex:none;color:var(--text-faint);font:var(--type-caption);font-size:var(--text-xs)}.tool-screenshot{display:grid;gap:var(--space-3);min-width:0}.screenshot-thumb{justify-self:start;max-width:280px;padding:0;overflow:hidden;background:var(--surface-sunken);border:1px solid var(--border-hairline);border-radius:var(--radius-card);cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease-out)}.screenshot-thumb:hover{box-shadow:var(--shadow-sm)}.screenshot-thumb img{display:block;width:100%;height:auto}.screenshot-viewer{display:grid;justify-items:start;min-width:0}.screenshot-viewer img{max-width:100%;height:auto;border-radius:var(--radius-md)}.tool-message{min-width:0}.tool-message>summary{display:flex;align-items:center;gap:var(--space-4);min-height:28px;cursor:pointer;list-style:none}.tool-message>summary::-webkit-details-marker{display:none}.tool-message>summary>.chevron{display:flex;flex:none;color:var(--text-faint)}.tool-message>summary:hover>.chevron{color:var(--text-muted)}.tool-message[open]>summary>.chevron{transform:rotate(90deg)}.tool-message .tool-icon{display:flex;flex:none;color:var(--text-faint)}.tool-message.failed .tool-icon{color:var(--state-failed-fg)}.tool-message.failed .timeline-event-verb{color:var(--text-danger)}.tool-message pre{max-height:280px;overflow:auto;margin:var(--space-3) 0 0;padding:var(--space-6);color:var(--text-on-code);background:var(--surface-code);border-radius:var(--radius-md);font:var(--type-code);font-size:var(--text-xs);white-space:pre-wrap}.markdown-content{color:var(--text-body);font:var(--type-body)}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}.markdown-content p{margin:0 0 var(--space-6)}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{margin:var(--space-9) 0 var(--space-5);color:var(--text-strong);font-family:var(--font-sans);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-heading)}.markdown-content h1{font-size:var(--text-2xl)}.markdown-content h2{font-size:var(--text-xl)}.markdown-content h3{font-size:var(--text-lg)}.markdown-content h4{font-size:var(--text-md)}.markdown-content ul,.markdown-content ol{margin:var(--space-4) 0 var(--space-7);padding-left:var(--space-9)}.markdown-content li{margin:var(--space-2) 0}.markdown-content li>p{margin:var(--space-2) 0}.markdown-content strong{color:var(--text-strong);font-weight:var(--weight-semibold)}.markdown-content code{padding:2px var(--space-3);color:var(--text-body);background:var(--surface-sunken);border-radius:var(--radius-xs);font:var(--type-code);font-size:var(--text-xs)}.markdown-content pre{max-width:100%;overflow-x:auto;margin:var(--space-6) 0 var(--space-7);padding:var(--space-7);color:var(--text-on-code);background:var(--surface-code);border-radius:var(--radius-md);font:var(--type-code);font-size:var(--text-sm)}.markdown-content pre code{padding:0;color:inherit;background:transparent;white-space:pre}.markdown-content blockquote{margin:var(--space-6) 0 var(--space-7);padding-left:var(--space-6);color:var(--text-muted);border-left:2px solid var(--border-default)}.markdown-content blockquote>:last-child{margin-bottom:0}.markdown-content table{display:block;width:100%;max-width:100%;overflow-x:auto;margin:var(--space-7) 0;border-collapse:collapse;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.markdown-content th,.markdown-content td{padding:var(--space-4) var(--space-5);text-align:left;border:1px solid var(--border-hairline);white-space:nowrap}.markdown-content th{color:var(--text-strong);font-weight:var(--weight-semibold);background:var(--surface-sunken)}.markdown-content hr{margin:var(--space-9) 0;border:0;border-top:1px solid var(--border-hairline)}.markdown-content img{max-width:100%;height:auto;border-radius:var(--radius-md)}.markdown-content input[type=checkbox]{margin-right:var(--space-3)}.composer{display:grid;gap:var(--space-4);margin:0 max(var(--space-9),calc((100% - var(--composer-max)) / 2)) var(--space-8)}.composer-box{display:grid;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-4);background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-card);box-shadow:var(--shadow-xs);transition:var(--transition-control)}.composer-box:focus-within{border-color:var(--border-focus);box-shadow:var(--focus-ring)}.composer textarea{width:100%;max-height:114px;overflow-y:auto;resize:none;color:var(--text-strong);background:transparent;border:0;outline:0;font:var(--type-body)}.composer textarea::placeholder{color:var(--text-faint)}.composer textarea:focus-visible{box-shadow:none}.composer-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3) var(--space-4);flex-wrap:wrap;min-width:0}.model-select{position:relative;display:inline-flex;align-items:center;min-width:0}.model-select select{appearance:none;max-width:190px;height:26px;padding:0 calc(var(--space-4) + 14px) 0 var(--space-4);color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);outline:0;font:var(--type-ui);font-size:var(--text-xs);text-overflow:ellipsis;transition:var(--transition-control)}.model-select select:hover{color:var(--text-strong);background:var(--surface-hover)}.model-select select:disabled{opacity:.45}.model-select>svg{position:absolute;right:var(--space-3);color:var(--text-faint);pointer-events:none}.send-button{display:grid;place-items:center;width:30px;height:30px;color:var(--text-inverse);background:var(--action-primary);border:0;border-radius:var(--radius-control);transition:var(--transition-control)}.send-button:hover:not(:disabled){background:var(--action-primary-hover)}.send-button:active:not(:disabled){background:var(--action-primary-press);transform:scale(.985)}.send-button:disabled{color:var(--text-faint);background:var(--gray-150)}.code-changes{overflow:hidden;background:var(--surface-panel);border:1px solid var(--border-hairline);border-radius:var(--radius-md)}.changes-header{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-hairline)}.changes-icon{display:flex;flex:none;color:var(--text-muted)}.changes-header strong{flex:none;color:var(--text-strong);font:var(--type-ui)}.changes-header small{flex:1;min-width:0;color:var(--text-muted);font:var(--type-ui);font-size:var(--text-xs)}.change-totals,.file-totals{display:flex;flex:none;gap:var(--space-4);font:var(--type-metric)}.change-totals b,.file-totals b{color:var(--diff-add-fg);font-weight:var(--weight-medium)}.change-totals i,.file-totals i{color:var(--diff-del-fg);font-style:normal;font-weight:var(--weight-medium)}.download-patch{display:inline-flex;align-items:center;gap:var(--space-3);flex:none;height:28px;padding:0 var(--space-5);color:var(--text-body);border:1px solid var(--border-default);border-radius:var(--radius-control);font:var(--type-ui);font-size:var(--text-xs);transition:var(--transition-control)}.download-patch:hover{color:var(--text-strong);background:var(--gray-25);border-color:var(--border-strong);text-decoration:none}.changed-file{border-top:1px solid var(--border-hairline)}.changed-file:first-child{border-top:0}.changed-file>summary{display:flex;align-items:center;gap:var(--space-5);min-height:36px;padding:var(--space-4) var(--space-6);cursor:pointer;list-style:none}.changed-file>summary::-webkit-details-marker{display:none}.changed-file>summary:hover{background:var(--surface-hover)}.changed-file>summary>.chevron{display:flex;flex:none;color:var(--text-faint)}.changed-file[open]>summary>.chevron{transform:rotate(90deg)}.change-status{display:grid;place-items:center;flex:none;width:18px;height:18px;color:var(--state-queued-fg);background:var(--state-queued-bg);border-radius:var(--radius-xs);font:var(--type-metric);font-size:var(--text-2xs)}.change-status.added,.change-status.copied{color:var(--diff-add-fg);background:var(--diff-add-bg)}.change-status.deleted{color:var(--diff-del-fg);background:var(--diff-del-bg)}.change-status.renamed{color:var(--state-review-fg);background:var(--state-review-bg)}.change-path{min-width:0;flex:1}.change-path strong,.change-path small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.change-path strong{color:var(--text-strong);font:var(--type-code);font-size:var(--text-xs)}.change-path small{margin-top:var(--space-1);color:var(--text-faint);font:var(--type-metric);font-size:var(--text-2xs)}.diff-view{max-height:440px;overflow:auto;border-top:1px solid var(--border-hairline);font:var(--type-code);font-size:var(--text-xs)}.diff-line{display:grid;grid-template-columns:40px 40px minmax(max-content,1fr);min-width:max-content;color:var(--text-body)}.diff-line>span{padding:1px var(--space-4);color:var(--diff-gutter-fg);text-align:right;-webkit-user-select:none;user-select:none}.diff-line code{display:block;min-height:18px;padding:1px var(--space-6);color:inherit;white-space:pre}.diff-line.added{background:var(--diff-add-bg);color:var(--diff-add-fg)}.diff-line.deleted{background:var(--diff-del-bg);color:var(--diff-del-fg)}.diff-line.hunk{grid-template-columns:80px minmax(max-content,1fr);color:var(--text-faint);background:var(--surface-sunken)}.diff-line.hunk>span:first-child{grid-column:1}.diff-line.hunk>span:nth-child(2){display:none}.diff-line.hunk code{grid-column:2;color:inherit}.diff-line.meta{color:var(--text-faint);font-style:italic}.binary-change{padding:var(--space-8);color:var(--text-muted);font:var(--type-caption)}.pull-request-card{display:grid;gap:var(--space-6);padding:var(--space-7);background:var(--surface-panel);border:1px solid var(--border-hairline);border-radius:var(--radius-card);color:inherit;text-decoration:none;transition:box-shadow var(--dur-fast) var(--ease-out)}.pull-request-card:hover{box-shadow:var(--shadow-sm);text-decoration:none}.pull-request-card:focus-visible{outline:var(--focus-ring);outline-offset:2px}.pull-request-head{display:flex;align-items:center;gap:var(--space-5);min-width:0}.pull-request-state{display:inline-flex;flex:none;align-items:center;gap:var(--space-2);padding:3px var(--space-4);color:var(--diff-add-fg);background:var(--diff-add-bg);border-radius:var(--radius-sm);font:var(--type-ui);font-size:var(--text-xs)}.pull-request-state.draft{color:var(--text-muted);background:var(--gray-100)}.pull-request-state.merged{color:var(--state-merged-fg);background:var(--state-merged-bg)}.pull-request-state.closed{color:var(--red-500);background:var(--red-50)}.pull-request-number{overflow:hidden;color:var(--text-muted);font:var(--type-code);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.pull-request-head .spacer{flex:1}.pull-request-head .external{display:grid;place-items:center;flex:none;color:var(--text-faint)}.pull-request-card:hover .external{color:var(--text-muted)}.pull-request-title{color:var(--text-strong);font:var(--type-ui);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.toast{position:absolute;left:50%;bottom:112px;transform:translate(-50%);max-width:min(480px,calc(100% - var(--space-12)));padding:var(--space-5) var(--space-6);color:var(--text-inverse);background:var(--gray-900);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font:var(--type-ui);animation:ds-rise-in var(--dur-base) var(--ease-entrance)}.center-state{display:grid;place-items:center;min-height:100vh;color:var(--text-muted);background:var(--surface-app);font:var(--type-body)}.conversation-state{display:grid;grid-row:1 / -1;align-content:center;justify-items:center;gap:var(--space-6);padding:var(--space-12) var(--space-9);text-align:center}.conversation-state .empty-icon{margin:0}.conversation-state h2{color:var(--text-strong);font:var(--type-subheading);letter-spacing:var(--tracking-heading)}.conversation-state p{max-width:380px;color:var(--text-muted);font:var(--type-body);font-size:var(--text-sm);text-wrap:pretty}.conversation-state .spinner-label{font:var(--type-body)}.onboarding{display:grid;place-items:center;min-height:100vh;padding:var(--space-10) var(--space-7);background:var(--surface-app)}.onboarding-panel{display:grid;gap:var(--space-8);width:100%;max-width:var(--composer-max);padding:var(--space-9);background:var(--surface-panel);border:1px solid var(--border-hairline);border-radius:var(--radius-panel)}.onboarding-header{display:flex;align-items:center;gap:var(--space-5);min-width:0}.onboarding-header h1{min-width:0;color:var(--text-strong);font:var(--type-heading);letter-spacing:var(--tracking-heading)}.source-choices{display:grid;gap:var(--space-5)}.source-choice{display:flex;align-items:center;gap:var(--space-6);width:100%;min-height:var(--touch-target);padding:var(--space-6) var(--space-7);color:var(--text-body);background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-card);text-align:left;transition:var(--transition-control)}.source-choice:hover{background:var(--gray-25);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.source-choice:active{transform:scale(.985)}.source-choice-mark{display:grid;place-items:center;flex:none;width:20px;height:20px}.source-choice-label{flex:1;min-width:0;color:var(--text-strong);font:var(--type-ui)}.source-choice>svg{flex:none;color:var(--text-faint)}.setup-form{display:grid;gap:var(--space-7);width:100%}.setup-form label{display:grid;gap:var(--space-3);color:var(--text-body);font:var(--type-ui)}.setup-form input{width:100%;height:var(--control-height);padding:0 var(--space-6);color:var(--text-strong);background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-control);outline:0;font:var(--type-body);font-size:var(--text-sm);transition:var(--transition-control)}.setup-form input::placeholder{color:var(--text-faint)}.setup-form input:focus{border-color:var(--border-focus);box-shadow:var(--focus-ring)}.setup-form input:disabled{color:var(--text-muted);background:var(--surface-sunken)}.setup-actions{display:grid}.setup-actions .primary-button{height:var(--control-height-lg);font-size:var(--text-md)}.setup-options>summary{display:flex;align-items:center;gap:var(--space-4);min-height:28px;color:var(--text-muted);font:var(--type-ui);cursor:pointer;list-style:none}.setup-options>summary::-webkit-details-marker{display:none}.setup-options>summary:hover{color:var(--text-strong)}.setup-options>summary>svg{flex:none;transition:transform var(--dur-fast) var(--ease-out)}.setup-options[open]>summary>svg{transform:rotate(90deg)}.setup-options-body{display:grid;gap:var(--space-6);margin-top:var(--space-6)}.setup-step{display:flex;align-items:center;gap:var(--space-4);color:var(--text-muted);font:var(--type-ui)}.setup-step.done{color:var(--text-body)}.setup-step.done svg{color:var(--state-running-fg)}.setup-step.active{color:var(--text-strong)}.setup-step.waiting{color:var(--text-faint)}.form-error{padding:var(--space-5) var(--space-6);color:var(--text-danger);background:var(--state-failed-bg);border:1px solid var(--red-100);border-radius:var(--radius-md);font:var(--type-ui);font-size:var(--text-xs)}.dialog-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:var(--space-9);background:var(--surface-overlay);animation:ds-fade-in var(--dur-fast) var(--ease-out)}.dialog{width:520px;max-width:100%;max-height:100%;overflow-y:auto;background:var(--surface-panel);border:1px solid var(--border-hairline);border-radius:var(--radius-modal);box-shadow:var(--shadow-lg);animation:ds-rise-in var(--dur-base) var(--ease-entrance)}.dialog-header{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-8) var(--space-8) var(--space-6)}.dialog-heading{display:grid;flex:1;min-width:0}.dialog-heading h2{color:var(--text-strong);font:var(--type-heading);letter-spacing:var(--tracking-heading)}.dialog-close{display:grid;place-items:center;flex:none;width:26px;height:26px;padding:0;color:var(--text-muted);background:transparent;border:0;border-radius:var(--radius-sm);transition:var(--transition-control)}.dialog-close:hover{color:var(--text-strong);background:var(--surface-hover)}.dialog-body{padding:0 var(--space-8) var(--space-8)}.spinner-row{display:inline-flex;align-items:center;gap:var(--space-4)}.spinner{flex:none;border:2px solid var(--gray-200);border-top-color:var(--teal-500);border-radius:var(--radius-pill);animation:ds-spin .7s linear infinite}.spinner-14{width:14px;height:14px}.spinner-16{width:16px;height:16px}.spinner-20{width:20px;height:20px}.spinner-label{color:var(--text-muted);font:var(--type-ui);font-size:var(--text-xs)}.link-button{padding:0;color:var(--text-link);background:none;border:none;font:var(--type-ui)}.link-button:hover:not(:disabled){color:var(--text-link-hover);text-decoration:underline}.link-button:disabled{opacity:.45}.auth-shell{display:grid;place-items:center;min-height:100vh;padding:var(--space-10) var(--space-7);background:var(--surface-app)}.auth-card{display:grid;gap:var(--space-7);width:100%;max-width:var(--auth-card-width);padding:var(--space-9);background:var(--surface-panel);border:1px solid var(--border-hairline);border-radius:var(--radius-panel)}.auth-header{display:grid;gap:var(--space-3)}.auth-header .brand{padding:0;margin-bottom:var(--space-4)}.auth-header h1{color:var(--text-strong);font:var(--type-heading);letter-spacing:var(--tracking-heading)}.auth-helper{color:var(--text-muted);font:var(--type-body);font-size:var(--text-sm);text-wrap:pretty}.auth-mark{display:grid;place-items:center;width:40px;height:40px;margin-bottom:var(--space-2);color:var(--text-muted);background:var(--surface-sunken);border-radius:var(--radius-card)}.auth-fields{display:grid;gap:var(--space-6)}.auth-field{display:grid;gap:var(--space-3);min-width:0}.auth-field label{color:var(--text-body);font:var(--type-ui)}.auth-field input{width:100%;height:var(--control-height);padding:0 var(--space-6);color:var(--text-strong);background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-control);outline:0;font:var(--type-body);font-size:var(--text-sm);transition:var(--transition-control)}.auth-field input:focus{border-color:var(--border-focus);box-shadow:var(--focus-ring)}.auth-field input:disabled{color:var(--text-muted);background:var(--surface-sunken)}.field-error{color:var(--text-danger);font:var(--type-caption);text-wrap:pretty}.field-hint{color:var(--text-faint);font:var(--type-caption);text-wrap:pretty}.auth-field input[aria-invalid=true]{border-color:var(--red-500)}.auth-field input[aria-invalid=true]:focus{border-color:var(--red-500);box-shadow:var(--focus-ring-danger)}.password-input{position:relative;display:block}.auth-field .password-input input{padding-right:var(--space-11)}.password-toggle{position:absolute;top:50%;right:var(--space-2);display:grid;place-items:center;width:28px;height:28px;padding:0;color:var(--text-muted);background:none;border:none;border-radius:var(--radius-sm);transform:translateY(-50%);transition:var(--transition-control)}.password-toggle:hover:not(:disabled){color:var(--text-strong);background:var(--surface-hover)}.password-toggle:disabled{opacity:.45}.auth-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);min-width:0}.auth-checkbox{display:flex;align-items:center;gap:var(--space-4);color:var(--text-body);font:var(--type-ui)}.auth-checkbox input{width:15px;height:15px;padding:0;accent-color:var(--action-primary)}.auth-submit{width:100%;height:var(--control-height-lg);font-size:var(--text-md)}.auth-status{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-6);border:1px solid transparent;border-radius:var(--radius-md);font:var(--type-ui);text-wrap:pretty}.auth-status svg{flex:none;margin-top:1px}.auth-status.error{color:var(--text-danger);background:var(--state-failed-bg);border-color:var(--red-100)}.auth-status.success{color:var(--state-running-fg);background:var(--state-running-bg);border-color:var(--teal-100)}.auth-divider{display:flex;align-items:center;gap:var(--space-5);color:var(--text-faint);font:var(--type-caption)}.auth-divider:before,.auth-divider:after{flex:1;height:1px;background:var(--border-hairline);content:""}.provider-buttons{display:grid;gap:var(--space-5)}.provider-button{height:var(--control-height-lg);justify-content:flex-start;padding:0 var(--space-7)}.provider-mark{display:grid;place-items:center;flex:none;width:18px;height:18px}.auth-footer{color:var(--text-muted);font:var(--type-ui);text-align:center;text-wrap:pretty}.auth-hint{color:var(--text-faint);font:var(--type-caption);text-wrap:pretty}.auth-resend{display:grid;gap:var(--space-4);justify-items:start}.auth-resend small{color:var(--text-muted);font:var(--type-caption);text-wrap:pretty}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:var(--space-4);width:100%;height:40px;padding:0 var(--space-4);color:var(--text-body);background:none;border:1px solid transparent;border-radius:var(--radius-control);font:var(--type-ui);transition:var(--transition-control)}.user-menu-trigger:hover{background:var(--surface-hover)}.user-menu-name{flex:1;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.user-avatar-image,.user-avatar-initials{flex:none;width:26px;height:26px;border-radius:var(--radius-pill)}.user-avatar-image{object-fit:cover;border:1px solid var(--border-hairline)}.user-avatar-initials{display:inline-flex;align-items:center;justify-content:center;color:var(--text-body);background:var(--surface-sunken);border:1px solid var(--border-hairline);font:var(--type-metric);font-size:var(--text-2xs)}.user-avatar-image.large,.user-avatar-initials.large{width:36px;height:36px}.user-menu-panel{position:absolute;bottom:calc(100% + var(--space-4));left:0;right:0;display:grid;gap:var(--space-6);padding:var(--space-7);background:var(--surface-panel);border:1px solid var(--border-hairline);border-radius:var(--radius-panel);box-shadow:var(--shadow-md);z-index:20}.user-menu-identity{display:flex;align-items:center;gap:var(--space-5)}.user-menu-identity-text{display:grid;gap:var(--space-1);min-width:0}.user-menu-identity-text strong{color:var(--text-strong);font:var(--type-ui)}.user-menu-identity-text small{overflow:hidden;color:var(--text-muted);font:var(--type-caption);text-overflow:ellipsis;white-space:nowrap}.user-menu-section{display:grid;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--border-hairline)}.user-menu-provider{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5)}.user-menu-provider-name{display:flex;align-items:center;gap:var(--space-4);color:var(--text-body);font:var(--type-ui)}.provider-connected{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--state-running-fg);font:var(--type-caption)}.user-menu-hint{color:var(--text-faint);font:var(--type-caption);text-wrap:pretty}.user-menu-password{display:grid;gap:var(--space-4);justify-items:start}.user-menu-password.auth-fields{justify-items:stretch}.user-menu-password-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5)}.user-menu-password-actions .primary-button{height:32px}.user-menu-action{display:flex;align-items:center;gap:var(--space-4);height:36px;padding:0 var(--space-4);color:var(--text-body);background:none;border:none;border-top:1px solid var(--border-hairline);border-radius:0;font:var(--type-ui);text-align:left}.user-menu-action:hover:not(:disabled){color:var(--text-strong)}.user-menu-action:disabled{opacity:.45}.repository-connect{display:grid;gap:var(--space-7)}.github-panel{display:grid;gap:var(--space-6)}.github-notice{padding:var(--space-5) var(--space-6);color:var(--state-running-fg);background:var(--state-running-bg);border-radius:var(--radius-card);font:var(--type-ui)}.github-accounts-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}.github-accounts-row .ghost-button{width:var(--control-height);padding:0}.github-accounts{display:flex;flex-wrap:wrap;gap:var(--space-3)}.github-account{display:inline-flex;align-items:center;gap:var(--space-3);height:30px;padding:0 var(--space-5);color:var(--text-body);background:var(--surface-panel);border:1px solid var(--border-default);border-radius:var(--radius-pill);font:var(--type-ui);transition:var(--transition-control)}.github-account:hover{background:var(--gray-25)}.github-account.selected{color:var(--text-strong);background:var(--surface-selected);border-color:var(--border-strong)}.github-flag{padding:0 var(--space-3);color:var(--state-review-fg);background:var(--state-review-bg);border-radius:var(--radius-pill);font:var(--type-caption)}.github-empty{display:grid;justify-items:center;gap:var(--space-6);padding:var(--space-9) var(--space-7);color:var(--text-muted);font:var(--type-body);text-align:center}.github-empty .empty-icon{margin:0}.github-repositories{display:grid;gap:var(--space-2);max-height:320px;margin:0;padding:0;overflow-y:auto;list-style:none}.github-repository{display:flex;align-items:center;gap:var(--space-5);width:100%;padding:var(--space-5) var(--space-6);background:var(--surface-panel);border:1px solid var(--border-hairline);border-radius:var(--radius-card);transition:var(--transition-control)}.github-repository:hover:not(:disabled){background:var(--gray-25);border-color:var(--border-default);box-shadow:var(--shadow-sm)}.github-repository:disabled{opacity:.45}.github-repository-name{flex:1;min-width:0;overflow:hidden;color:var(--text-strong);font:var(--type-ui);text-align:left;text-overflow:ellipsis;white-space:nowrap}.github-visibility{flex:none;padding:2px var(--space-4);border-radius:var(--radius-pill);font:var(--type-caption)}.github-visibility.private{color:var(--state-review-fg);background:var(--state-review-bg)}.github-visibility.public{color:var(--text-muted);background:var(--surface-sunken)}@media(max-width:1050px){.app-shell{grid-template-columns:var(--sidebar-width) 1fr}}@media(max-width:720px){.app-shell{display:block;height:100dvh;overflow:hidden}.sidebar{display:none}.conversation{height:100dvh;min-height:0}.messages{padding:var(--space-8) var(--space-7)}.changes-header{flex-wrap:wrap}.composer{margin:0 var(--space-7) var(--space-7)}.dialog-overlay{padding:var(--space-7)}.dialog-header{padding:var(--space-7) var(--space-7) var(--space-5)}.dialog-body{padding:0 var(--space-7) var(--space-7)}.auth-shell,.onboarding{min-height:100dvh;padding:var(--space-8) var(--space-6)}.auth-card,.onboarding-panel{padding:var(--space-8) var(--space-7)}.auth-field input,.setup-form input,.auth-submit,.provider-button,.setup-actions .primary-button,.source-choice{min-height:var(--touch-target)}.password-toggle,.icon-button{width:var(--touch-target);height:var(--touch-target)}.auth-field .password-input input{padding-right:var(--space-13)}.auth-checkbox{min-height:var(--touch-target)}.auth-card .link-button{display:inline-flex;align-items:center;min-height:var(--touch-target)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transform:none!important}}
