.ba-start { margin: 0; background: #fafafa; color: #252528; font: 16px/1.6 ui-sans-serif, system-ui, sans-serif; }
.ba-start main { max-width: 500px; margin: 12vh auto 100px; padding: 24px; }
.ba-start main small { letter-spacing: .12em; color: #797980; font-size: 11px; }
.ba-start h1 { font-size: 36px; line-height: 1.2; letter-spacing: -.03em; }
.ba-start main button { padding: 12px 20px; background: #252528; color: white; border: 0; border-radius: 9px; font: inherit; cursor: pointer; }
.ba-start-actions { display: flex; flex-direction: column; align-items: stretch; gap: 8px; margin-top: 28px; }
.ba-start-actions > button { width: 100%; min-width: 0; max-width: 100%; min-height: 44px; }
.ba-start .ba-start-hint { margin-top: 32px; font-size: 13px; color: #73737b; }
.ba-pair form { display: grid; gap: 12px; margin-top: 28px; }
.ba-pair input { box-sizing: border-box; width: 100%; padding: 12px 14px; font: 18px ui-monospace, monospace; color: #252528; background: #fff; border: 1px solid #ccc; border-radius: 8px; }
.ba-pair input:focus-visible { outline: 2px solid #555; outline-offset: 3px; }
.ba-pair button:disabled { opacity: .6; cursor: wait; }
.ba-pair #ba-pair-status { min-height: 24px; margin: 0; color: #686872; font-size: 14px; }
.ba-pair #ba-pair-error { color: #ad3434; font-size: 14px; margin: 0; }
[data-ba-hidden="true"] { display: none !important; }
#ba-panel { margin: auto; border: 1px solid var(--border, #ddd); border-radius: 14px; width: min(900px, calc(100vw - 32px)); max-height: calc(100dvh - 60px); padding: 0; box-shadow: 0 24px 90px #0003; }
#ba-panel::backdrop { background: #0006; backdrop-filter: blur(3px); }
#ba-panel header { padding: 20px 24px; border-bottom: 1px solid var(--border, #ddd); display: flex; align-items: center; justify-content: space-between; }
#ba-panel h2 { font-size: 22px; line-height: 1.25; font-weight: 650; margin: 3px 0 0; }
#ba-panel h3 { font-size: 17px; font-weight: 600; margin: 0 0 10px; }
#ba-panel p { margin: 8px 0 14px; }
#ba-panel small, #ba-panel .ba-muted { color: var(--muted-foreground, #6a6a73); font-size: 12px; }
.ba-panel-content { padding: 20px 24px; overflow-y: auto; max-height: calc(100dvh - 165px); }
.ba-row, .ba-actions { display: flex; align-items: center; gap: 10px; }
.ba-row { justify-content: space-between; }
#ba-panel button { font: inherit; color: inherit; border: 1px solid var(--border, #ddd); background: var(--secondary, #f5f5f7); padding: 7px 12px; border-radius: 7px; cursor: pointer; }
#ba-panel button:hover { filter: brightness(.95); }
#ba-panel button.ba-primary { background: var(--foreground, #252528); color: var(--background, #fff); border-color: transparent; }
#ba-panel button.ba-subtle { background: transparent; }
.ba-admin-layout { display: grid; grid-template-columns: 235px minmax(0, 1fr); gap: 24px; margin-top: 12px; }
.ba-browser-list { display: flex; flex-direction: column; gap: 6px; }
#ba-panel .ba-browser { display: flex; flex-direction: column; align-items: flex-start; text-align: left; background: transparent; padding: 10px 12px; overflow-wrap: anywhere; }
#ba-panel .ba-browser.ba-selected { border-color: var(--foreground, #252528); background: var(--muted, #f4f4f6); }
.ba-browser strong { font-size: 13px; margin-bottom: 3px; }
.ba-form { display: flex; flex-direction: column; gap: 14px; }
.ba-field { display: flex; flex-direction: column; gap: 5px; font-weight: 500; }
#ba-panel input:not([type="checkbox"]), #ba-panel select, #ba-panel textarea { font: inherit; color: inherit; background: var(--background, #fff); border: 1px solid var(--border, #d6d6da); border-radius: 6px; padding: 8px 10px; width: 100%; }
#ba-panel textarea { font-family: ui-monospace, monospace; font-size: 11px; overflow-wrap: anywhere; resize: vertical; }
.ba-grants { border: 1px solid var(--border, #ddd); border-radius: 7px; padding: 10px 12px; max-height: 200px; overflow: auto; }
.ba-grants legend { padding: 0 4px; font-weight: 500; }
.ba-grants label { display: flex; align-items: center; gap: 8px; padding: 5px 0; }
.ba-usage-card { margin: 8px 0 24px; padding: 0; }
#ba-panel progress { display: block; width: 100%; height: 8px; margin: 12px 0; }
#ba-panel .ba-alert { color: #bf542c; }
.ba-account { padding: 14px 16px; border-radius: 8px; background: var(--muted, #f4f4f6); }
.ba-account summary { font-weight: 500; cursor: pointer; }
.ba-project-list { margin-top: 16px; display: grid; gap: 8px; }
#ba-panel .ba-pair-qr { margin: 16px 0; padding: 12px; border-radius: 9px; background: #fff; border: 1px solid #e5e5e5; text-align: center; }
#ba-panel .ba-pair-qr img { display: block; max-width: 100%; height: auto; margin: 0 auto; image-rendering: pixelated; }
#ba-panel .ba-pair-qr figcaption { margin: 8px auto 0; max-width: 300px; color: #60606a; font-size: 12px; line-height: 1.5; }
.ba-project-list > div { padding: 10px 12px; border: 1px solid var(--border, #ddd); border-radius: 6px; }
#ba-toast { position: fixed; z-index: 10000; bottom: 52px; right: 16px; max-width: min(440px, calc(100vw - 32px)); padding: 12px 16px; border: 1px solid var(--border, #ddd); border-radius: 8px; box-shadow: 0 8px 25px #0002; }

#ba-panel, #ba-toast, #ba-usage-tooltip { font-family: ui-sans-serif, system-ui, sans-serif; color: var(--foreground, #242427); background: var(--background, #fff); font-size: 14px; line-height: 1.5; box-sizing: border-box; }
#ba-panel *, #ba-usage-tooltip * { box-sizing: border-box; }
[data-slot="sidebar-footer"] [data-slot="sidebar-menu-item"]:has(button:is([aria-label="Usage"],[aria-label="Лимиты"])), [data-slot="sidebar-menu-item"]:has([data-ba-hidden="true"]) { display: none !important; }
.ba-sidebar-usage { flex: 1 1 140px; min-width: 0; list-style: none; }
.ba-chat-nav { flex:0 0 30px; list-style:none; position:relative; align-self:center; }
.ba-chat-nav a { display:grid; place-items:center; width:30px; height:36px; border-radius:6px; color:var(--muted-foreground,#777); }
.ba-chat-nav a:hover, .ba-chat-nav a:focus-visible { background:var(--sidebar-row-hover,#8881); }
.ba-chat-nav svg { width:18px; height:18px; }
.ba-chat-unread { position:absolute; top:0; right:-4px; border-radius:8px; padding:0 4px; background:var(--foreground,#333); color:var(--background,#fff); font:9px/14px ui-sans-serif,system-ui,sans-serif; pointer-events:none; }
button.ba-usage-trigger { width: 100%; min-height: 52px; display: flex; gap: 9px; align-items: center; padding: 6px 8px; border: 0; border-radius: var(--control-radius, 7px); background: transparent; color: var(--sidebar-foreground, #252528); cursor: pointer; text-align: left; font: 12px/1.3 ui-sans-serif, system-ui, sans-serif; }
button.ba-usage-trigger:hover, button.ba-usage-trigger:focus-visible { background: var(--sidebar-row-hover, #8881); outline: none; }
button.ba-usage-trigger:focus-visible { box-shadow: 0 0 0 2px var(--ring, #888); }
.ba-usage-trigger > svg { width: 16px; height: 16px; flex: 0 0 16px; color: var(--sidebar-icon-color, #777); }
.ba-usage-copy { display: grid; min-width: 0; flex: 1; gap: 4px; }
.ba-usage-line { display: flex; justify-content: space-between; gap: 6px; align-items: baseline; white-space: nowrap; }
.ba-usage-line strong { font-size: 13px; font-weight: 550; font-variant-numeric: tabular-nums; }
.ba-usage-line small { color: var(--muted-foreground, #777); font-size: 9px; font-weight: 400; letter-spacing: 0; }
.ba-usage-reset { color: var(--muted-foreground, #777); font-size: 12px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.ba-usage-trigger progress { width: 100%; height: 3px; margin: 0; }
.ba-usage-trigger[data-level="low"] { --ba-fill: #b88733; }
.ba-usage-trigger[data-level="empty"] { --ba-fill: #c34d43; }
.ba-usage-trigger[data-level="unknown"] { opacity: .65; }
:is(.ba-usage-trigger, #ba-panel, #ba-usage-tooltip) progress { appearance: none; border: 0; border-radius: 4px; overflow: hidden; background: var(--muted, #e5e5e5); color: var(--ba-fill, var(--foreground, #555)); }
:is(.ba-usage-trigger, #ba-panel, #ba-usage-tooltip) progress::-webkit-progress-bar { background: var(--muted, #e5e5e5); border-radius: 4px; }
:is(.ba-usage-trigger, #ba-panel, #ba-usage-tooltip) progress::-webkit-progress-value { background: var(--ba-fill, var(--foreground, #555)); border-radius: 4px; transition: width .2s; }
:is(.ba-usage-trigger, #ba-panel, #ba-usage-tooltip) progress::-moz-progress-bar { background: var(--ba-fill, var(--foreground, #555)); border-radius: 4px; }
#ba-usage-tooltip { position: fixed; z-index: 1000; width: min(330px, calc(100vw - 16px)); border: 1px solid var(--border, #ddd); border-radius: 9px; padding: 14px 16px; box-shadow: 0 6px 24px #0002; }
#ba-usage-tooltip p { margin: 6px 0; font-size: 12px; }
#ba-usage-tooltip small, #ba-usage-tooltip .ba-muted { color: var(--muted-foreground, #777); font-size: 11px; }
#ba-usage-tooltip progress { width: 100%; height: 5px; margin: 8px 0; }
#ba-usage-tooltip .ba-alert { color: #b67a35; }
#ba-start-usage { display: flex; align-items: center; gap: 4px; width: 240px; max-width: 100%; margin-top: 24px; }
#ba-start-usage button { padding: 8px; background: transparent; color: #252528; font: 12px/1.3 ui-sans-serif,system-ui,sans-serif; }
#ba-start-usage :is(.ba-usage-line strong, .ba-usage-reset) { overflow: hidden; text-overflow: ellipsis; }
#ba-start-usage small { letter-spacing: 0; font-size: 9px; }
.ba-account-summary { padding-bottom: 14px; margin-bottom: 22px; border-bottom: 1px solid var(--border, #ddd); }
#ba-panel .ba-account-summary h3 { margin: 0; }
.ba-usage-list { display: flex; flex-direction: column; margin: 14px 0 24px; }
#ba-panel .ba-usage-browser { display: block; width: 100%; text-align: left; border: 0; border-radius: 0; border-bottom: 1px solid var(--border, #ddd); background: transparent; padding: 15px 0; }
#ba-panel .ba-usage-browser:hover { background: var(--muted, #f5f5f5); }
#ba-panel .ba-usage-browser .ba-row strong:last-child { font-weight: 450; font-size: 12px; }
#ba-panel .ba-usage-browser progress { height: 5px; margin: 10px 0 6px; }
#ba-panel .ba-panel-content > .ba-field { margin-bottom: 22px; }
@media (max-width: 690px) { .ba-admin-layout { grid-template-columns: 1fr; gap: 16px; } .ba-browser-list { max-height: 190px; overflow: auto; } #ba-panel header, .ba-panel-content { padding: 16px; } #ba-panel .ba-row { align-items: flex-start; flex-wrap: wrap; } .ba-actions { flex-wrap: wrap; } }
@media (prefers-reduced-motion: reduce) { .ba-usage-trigger progress::-webkit-progress-value { transition: none; } }

/* One language control per page. Never overlays a native header or takes focus on mount. */
#ba-language{display:inline-flex;align-items:center;flex-shrink:0;align-self:center;color:var(--foreground,CanvasText);font:600 12px/1 system-ui,sans-serif;margin:0}
#ba-language button{font:inherit;letter-spacing:.02em;cursor:pointer}
#ba-language.ba-language-floating{position:fixed;top:12px;right:16px;z-index:40}
.ba-start-toolbar{position:absolute;top:16px;right:20px}
.bc-header-tools{display:flex;align-items:center;gap:12px;flex-shrink:0}
.bc-header-tools #ba-language{color:#364c44}
@media(max-width:650px){.bc-header-tools{gap:5px}.bc-header-tools #bc-connection{font-size:0}.bc-header-tools #bc-connection::before{font-size:12px}}
#ba-settings-results{display:grid;gap:3px;font:13px/1.35 system-ui,sans-serif;color:inherit}
#ba-settings-results[hidden]{display:none}
#ba-settings-results a{display:grid;gap:3px;padding:9px 10px;border-radius:7px;color:inherit;text-decoration:none}
#ba-settings-results a[aria-selected=true],#ba-settings-results a:hover{background:color-mix(in srgb,currentColor 9%,transparent)}
#ba-settings-results strong{font-weight:500}#ba-settings-results small{opacity:.65}
.ba-russian-search > [role=status],.ba-russian-search > [data-slot=sidebar-menu]{display:none!important}

[data-ba-pr-hidden="true"] { display:none!important; }
/* Unused native entry points stay hidden before JS and across RU/EN changes. */
[data-ba-action-hidden],
#root button:is([aria-label="Add action"],[aria-label="Добавить действие"]),
#root [role="group"]:is([aria-label="Open in editor"],[aria-label="Открыть в редакторе"],[aria-label="Git actions"],[aria-label="Действия Git"]),
[data-chat-header-actions] button:has(svg.lucide-git-branch-plus) { display:none!important; }
.ba-header-chat, #ba-language button { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:32px; height:32px; padding:0; border:0; border-radius:8px; color:var(--foreground,inherit); background:transparent; text-decoration:none; pointer-events:auto; }
.ba-header-chat { position:relative; }
.ba-header-chat svg { width:18px; height:18px; pointer-events:none; }
.ba-header-chat:hover, #ba-language button:hover { background:var(--accent,#8881); }
.ba-header-chat:focus-visible, #ba-language button:focus-visible { outline:2px solid var(--ring,#888); outline-offset:2px; }
.ba-header-chat .ba-chat-unread { top:0; right:0; }
[data-workspace-titlebar-controls] > [aria-hidden="true"] { display:none; }
@media(max-width:650px), (pointer:coarse) {
  .ba-header-chat, #ba-language button { width:40px; height:44px; }
  [data-panel-layout-controls] button[data-slot="toggle"] { width:40px; height:44px; padding:0; }
}
/* The language switch shares the native controls' flex row in every panel state. */
:is([data-workspace-titlebar-controls],[data-panel-layout-controls]) > #ba-language { pointer-events:auto; margin:0; }
html[data-ba-titlebar-language] [data-chat-header-actions].pr-16,
html[data-ba-titlebar-language] [data-right-panel-tabbar].pr-28 { padding-right:var(--ba-titlebar-width,204px); }
/* Enlarge interface typography without changing message prose or code sizes. */
:is([data-slot="sidebar"], [data-slot="sidebar-container"], [data-slot="sidebar-inner"], header, [data-right-panel-tabbar], [role="dialog"], [role="menu"], [role="tooltip"]) {
  --text-xs:0.875rem; --text-sm:0.9375rem;
}
:is([data-slot="sidebar"], [data-slot="sidebar-inner"], header, [role="dialog"], [role="menu"]) [class~="text-[11px]"] { font-size:0.8125rem; }
#ba-settings-results { font-size:14px; }
/* A single mobile row: project/title stack on the left, one aligned control row
   on the right. The measured inset follows the controls when panels move. */
@media(max-width:650px) {
  [data-chat-header] nav > ol { flex-direction:column; align-items:flex-start; gap:2px; }
  [data-chat-header] nav > ol > li { width:100%; }
  [data-chat-header] nav > ol > li[aria-hidden="true"] { display:none; }
  [data-chat-header] nav > ol > li:not([aria-current="page"]) { font-size:11px; line-height:14px; }
  [data-chat-header] nav > ol > li[aria-current="page"] { font-size:13px; line-height:18px; }
  [data-chat-header] nav button { max-width:100%; }
  [data-chat-header-actions].pr-16 { padding-right:var(--ba-titlebar-width,180px); }
}
