/* Existing homepage palette and wordmark retained. 1200 = 784 + 24 + 392 at desktop. */
.bbgs-app { --surface:#191d18; --raised:#22271f; --muted:#b0baa6; --line:#353c31; --warning:#e4c786; --negative:#f2a6a6; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.6; }
.bbgs-app [hidden] { display:none!important; }
.bbgs-app .topbar { max-width:1248px; height:72px; padding:0 24px; }
.bbgs-app .brand { font-family:var(--mono); font-size:13px; }
.bbgs-app .brand .muted { display:inline; font-size:12px; letter-spacing:0; }
.bbgs-app nav { font-size:14px; gap:24px; }
.bbgs-app main { max-width:1248px; padding:28px 24px 40px; }
.bbgs-app h1 { font-size:28px; line-height:1.3; margin:4px 0 10px; letter-spacing:-.5px; }
.bbgs-app h2,.bbgs-app h3 { font-size:16px; line-height:1.5; margin:0; letter-spacing:0; font-weight:600; }
.bbgs-app p { margin:0; }
.page-title { display:flex; justify-content:space-between; gap:24px; align-items:center; margin-bottom:20px; }
.breadcrumb { font-size:12px; color:var(--muted); }
.page-title>div>p:last-child { color:var(--muted); }
.notice { background:var(--raised); padding:16px 20px; margin:0 0 24px; border-left:3px solid var(--lime); }
.notice strong { font-size:14px; font-weight:600; }
.notice p { color:var(--muted); margin-top:4px; font-size:13px; }
.workspace { display:grid; grid-template-columns:minmax(0,2fr) minmax(300px,1fr); gap:24px; align-items:start; }
.connections-column,.settings-column { display:grid; gap:24px; min-width:0; }
.connection-panel { background:var(--surface); padding:20px; min-width:0; border-radius:4px; }
.panel-title { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.state { flex:none; white-space:nowrap; padding:2px 8px; border-radius:3px; background:var(--raised); color:var(--muted); font-size:12px; }
.state[data-tone="positive"] { color:var(--lime); background:#25331c; }
.state[data-tone="warning"] { color:var(--warning); background:#332c1d; }
.google-content { display:flex; justify-content:space-between; gap:24px; align-items:center; }
.google-content>div:first-child { max-width:460px; }
.google-actions { display:grid; gap:8px; flex:none; }
.support-text,.connection-copy,.field-help,.account { color:var(--muted); }
.bbgs-app .support-text { font-size:13px; margin-top:8px; }
.bbgs-app .account { font-size:12px; margin:4px 0 14px; overflow-wrap:anywhere; }
.section-title { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:12px; }
.section-title p { color:var(--muted); font-size:12px; }
.source-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.connection-copy { font-size:13px; min-height:42px; }
.bbgs-app fieldset { margin:0; border:0; padding:0; min-width:0; }
.bbgs-app label:not(.consent):not(.check-row),.field-label { display:block; font-size:13px; margin:14px 0 6px; font-weight:500; }
.bbgs-app input:not([type="checkbox"]),.bbgs-app select { display:block; width:100%; height:44px; padding:10px 12px; border:1px solid #505b46; border-radius:3px; background:var(--bg); color:var(--text); font:inherit; min-width:0; }
.bbgs-app input:disabled,.bbgs-app select:disabled { color:var(--muted); opacity:1; -webkit-text-fill-color:var(--muted); cursor:not-allowed; }
.bbgs-app input[type="checkbox"] { width:17px; height:17px; margin:3px 0 0; accent-color:var(--lime); flex:none; }
.password-field { position:relative; }
.bbgs-app .password-field input { padding-right:60px; }
.password-field button { position:absolute; top:0; right:0; height:44px; min-width:56px; background:transparent; font-size:12px; }
.bbgs-app .field-help { font-size:12px; margin-top:10px; }
.consent { display:flex; align-items:flex-start; gap:9px; margin:16px 0; font-size:12px; color:var(--muted); line-height:1.7; }
.check-row { display:flex; align-items:center; gap:10px; margin-top:8px; min-height:30px; }
.sync-toggle { margin-top:18px; padding-top:14px; border-top:1px solid var(--line); }
.primary-button,.secondary-button,.quiet-button { min-height:44px; padding:10px 15px; border-radius:3px; font:inherit; font-size:13px; line-height:1.5; font-weight:500; }
.primary-button { background:var(--text); color:var(--bg); }
.secondary-button,.quiet-button { background:var(--raised); color:var(--text); border:1px solid #505b46; }
.quiet-button { flex:none; background:transparent; }
.bbgs-app button:disabled { cursor:not-allowed; color:var(--muted); background:var(--raised); opacity:1; }
.bbgs-app button:disabled:hover { color:var(--muted); }
.source-panel .secondary-button { width:100%; }
.text-button,.recovery-link { background:transparent; display:inline-block; padding:10px 0; font-size:13px; text-decoration:underline; text-underline-offset:4px; }
.bbgs-app .text-button:disabled { background:transparent; }
.form-message { color:var(--muted); font-size:12px; margin-top:10px!important; overflow-wrap:anywhere; }
.form-message[data-error="true"] { color:var(--negative); }
.form-message:empty { display:none; }
.sync-facts { margin:0; }
.sync-facts>div { display:flex; justify-content:space-between; gap:16px; padding:9px 0; border-bottom:1px solid var(--line); }
.sync-facts dt { color:var(--muted); font-size:13px; }
.sync-facts dd { margin:0; text-align:right; font-size:13px; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; max-width:66%; }
#preferences-form .secondary-button { margin-top:16px; width:100%; }
.privacy-panel { padding:0 4px; }
.privacy-panel p { margin-top:12px; color:var(--muted); font-size:13px; }
.bbgs-app footer { max-width:1248px; padding:20px 24px; font-size:12px; letter-spacing:0; }
.bbgs-app dialog { width:min(440px,calc(100vw - 32px)); background:var(--surface); color:var(--text); border:1px solid var(--line); box-shadow:none; }
.bbgs-app dialog::backdrop { background:#0009; backdrop-filter:none; }
.disconnect-body { padding:24px; }
.disconnect-body p { margin-top:12px; color:var(--muted); }
.dialog-actions { display:flex; justify-content:flex-end; gap:12px; margin-top:24px; }
.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; }
@media(max-width:1050px) { .workspace { grid-template-columns:minmax(0,1fr); } .settings-column { grid-template-columns:repeat(2,minmax(0,1fr)); } .privacy-panel { grid-column:1/-1; } .google-content>div:first-child { max-width:65%; } }
@media(max-width:600px) { .bbgs-app .topbar { padding:0 18px; height:60px; } .bbgs-app nav { gap:0; font-size:13px; } .bbgs-app nav a:last-child { display:none; } .bbgs-app main { padding:22px 18px 28px; } .bbgs-app h1 { font-size:24px; } .page-title { align-items:flex-start; gap:12px; } .page-title>div>p:last-child { font-size:13px; } .page-title .quiet-button { padding:8px; font-size:12px; } .notice { padding:14px; } .workspace,.source-grid,.settings-column { grid-template-columns:minmax(0,1fr); gap:20px; } .connection-panel { padding:18px; } .google-content { display:block; } .google-content>div:first-child { max-width:none; } .google-actions { margin-top:16px; } .section-title { display:block; } .section-title p { margin-top:6px; } .connection-copy { min-height:0; } .bbgs-app footer { padding:20px 18px; } .consent,.bbgs-app .field-help,.form-message { font-size:12px; } }
@media(prefers-reduced-motion:reduce) { .bbgs-app * { scroll-behavior:auto; } }
