/* Common component rhythm. Module styles consume the same appearance tokens. */
.sai-console-content > :is(.sad-dashboard-shell,.aak-api-key-container,.aasf-billing-container,.saia-container,.scp-container,.scc-container,.scb-container,.sai-chat-container,.sai-support-page,.sai-history-container) {
  width: 100% !important; max-width: none !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important;
  border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; backdrop-filter: none !important;
}
.sai-console-content :is(.sad-dashboard-shell,.aak-api-key-container,.aasf-billing-container,.saia-container,.scp-container,.scc-container,.scb-container) { font-family: var(--sai-ui-font-family) !important; }
.sai-console-content > div { min-width: 0; }
.sai-console :is(.sad-hero-card,.sad-card,.aasf-credit-section,.aasf-invoice-section,.aasf-balance-card,.aak-api-key-header,.aak-api-key-list,.aak-api-key-item,.scp-header,.scp-list,.scp-item,.saia-list,.sai-chat-card) { border: 1px solid var(--sai-line) !important; border-radius: 10px !important; box-shadow: none !important; background: var(--sai-surface) !important; }
.sai-console :is(.sad-hero-card,.sad-card,.aasf-credit-section,.aasf-invoice-section,.aasf-balance-card,.aak-api-key-header,.aak-api-key-list,.aak-api-key-item,.scp-header,.scp-list,.scp-item,.saia-list):hover { transform: none !important; box-shadow: none !important; }
.sai-console-content :is(.sai-breadcrumb-card,.aak-breadcrumb-section,.scp-breadcrumb-section,.saia-breadcrumb-section) { margin: 0 0 24px !important; padding: 0 !important; border: 0 !important; background: none !important; border-radius: 0 !important; box-shadow: none !important; transform: none !important; }
.sai-console-content :is(.sai-breadcrumb,.aak-breadcrumb,.scp-breadcrumb) { font-size: 12px !important; }
.sai-console-content :is(.aak-api-key-header,.scp-header) { padding: 0 0 24px !important; border: 0 !important; border-radius: 0 !important; background: none !important; margin-bottom: 8px !important; gap: 20px; }
.sai-console-content :is(.aak-api-key-title,.scp-title,.saia-title) { font-size: 28px !important; color: var(--sai-text) !important; letter-spacing: -.035em; }
.sai-console-content :is(.aak-api-key-subtitle,.scp-subtitle) { color: var(--sai-secondary-text) !important; font-size: 14px !important; }
.sai-console-content :is(.aak-api-key-list,.scp-list) { padding: 20px !important; min-height: 0 !important; }
.sai-console-content :is(.aak-api-key-item,.scp-item) { padding: 20px !important; }
.sai-console :is(.sai-input,.saia-input,.choices__inner) { min-height: 44px; padding: 10px 12px; border-radius: 8px; box-shadow: none; font-size: 14px; background: var(--sai-surface); color: var(--sai-text); }
.sai-console .choices { font-size: 14px; }
.sai-console .choices[data-type*="select-one"] .choices__inner { min-height: 44px; padding-left: 12px; }
.sai-console .choices__list--dropdown, .sai-console .choices__list[aria-expanded] { background: var(--sai-surface); border-color: var(--sai-border); border-radius: 8px; }
.sai-console .choices__list--dropdown .choices__item--selectable.is-highlighted { background: var(--sai-hover); }
.sai-console .choices__item { font-size: 14px; }
.sai-console :is(.sai-label,.saia-label) { font-size: 13px; font-weight: 550; }
.sai-console :is(.sai-btn,.sad-btn,.aak-btn-primary,.saia-btn,.onb2-submit,.ob4-btn) { min-height: 42px; padding: 10px 16px; border-radius: 8px; font-size: 13px; line-height: 1.4; box-shadow: none; }
.sai-console :is(.sai-modal__panel,.model-modal-container,.shareai-sheet-panel) { background: var(--sai-surface); border: 1px solid var(--sai-border); border-radius: 14px; box-shadow: var(--sai-shadow); color: var(--sai-text); }
.sai-console :is(.sai-modal__header,.sai-modal__footer) { background: var(--sai-surface); border-color: var(--sai-line); }
.sai-console .sai-modal__title { font-size: 22px; }
.sai-console .sai-modal__close { border-radius: 8px; box-shadow: none; background: var(--sai-control); color: var(--sai-text); }
.sai-console :is(input,textarea,select)::placeholder { color: var(--sai-secondary-text); opacity: .75; }
.sai-console :is(.aasf-billing-container,.aak-api-key-list,.saia-container) table { width: 100%; border-collapse: collapse; font-size: 13px; }
.sai-console :is(.aasf-billing-container,.aak-api-key-list,.saia-container) th { color: var(--sai-secondary-text); background: var(--sai-control); font-size: 11px; font-weight: 500; }
.sai-console :is(.aasf-billing-container,.aak-api-key-list,.saia-container) :is(td,th) { border-color: var(--sai-line); }
/* Overview */
.sai-console-content--dashboard { max-width: 1320px; }
.sai-console .sad-hero-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(160px,240px); align-items:center; gap:32px; position: relative; margin: 0 0 36px; padding: clamp(24px, 4vw, 48px); min-height: 256px; overflow: hidden; background: linear-gradient(115deg, var(--sai-surface) 45%, var(--sai-accent-soft)) !important; }
.sai-console .sad-hero-copy { position: relative; min-width:0; max-width: 670px; z-index: 1; }
.sai-console .sad-hero-brand { display:block; width:100%; height:auto; color:var(--sai-link); opacity:.5; pointer-events:none; }
.sai-console .sad-hero-brand__body { fill:currentColor; opacity:.08; }
.sai-console .sad-title { font-size: clamp(28px, 3vw, 40px); font-weight: 600; margin: 0 0 18px; letter-spacing: -.05em; }
.sai-console .sad-lede { max-width: 540px; font-size: 14px; line-height: 1.75; color: var(--sai-secondary-text); margin: 0 0 26px; }
.sai-console .sad-hero-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.sai-console .sad-btn--primary { background: var(--sai-accent); border-color: var(--sai-accent); color: white; }
.sai-console .sad-btn--secondary { background: var(--sai-surface); border: 1px solid var(--sai-border); color: var(--sai-text); }
.sai-console .sad-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.sai-console .sad-card { padding: 26px; min-height: 266px; }
.sai-console .sad-card:hover { border-color: var(--sai-border) !important; }
.sai-console .sad-card-eyebrow { font-size: 10px; font-weight: 500; color: var(--sai-secondary-text); letter-spacing: .06em; }
.sai-console .sad-card-icon { width: 38px; height: 38px; margin: 20px 0; border: 1px solid var(--sai-line); border-radius: 9px; background: var(--sai-control); color: var(--sai-link); box-shadow: none; }
.sai-console .sad-card-icon svg { width: 19px; height: 19px; }
.sai-console .sad-card-title { font-size: 18px; margin: 0 0 10px; color: var(--sai-text); }
.sai-console .sad-card-description { font-size: 13px; color: var(--sai-secondary-text); line-height: 1.7; }
.sai-console .sad-card-link { font-size: 12px; margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--sai-line); color: var(--sai-link); }
.sai-console .sad-org-meta { min-width: 0; }
.sai-console .sad-org-actor,.sai-console .sad-kicker { color: var(--sai-secondary-text); font-size: 12px; }
/* Authentication and setup share one calm, compact form surface. */
body.oauthpress-native-route { overflow: auto; }
.sai-auth-layout { min-height: 100dvh; display: flex; flex-direction: column; }
.sai-auth-main { flex: 1; display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; padding: 30px 20px 60px; }
.sai-auth-footer { display: flex; justify-content: space-between; gap: 20px; padding: 22px 36px; color: var(--sai-secondary-text); font-size: 11px; }
.sai-auth-footer a { color: inherit; text-decoration: none; }
.sai-auth-main .oauthpress-native-shell { --opnf-bg: var(--sai-background) !important; --opnf-text: var(--sai-text) !important; --opnf-accent: var(--sai-accent) !important; --opnf-card-bg: transparent !important; --opnf-card-border: transparent !important; --opnf-label: var(--sai-text); --opnf-muted: var(--sai-secondary-text); --opnf-field-border: var(--sai-border); --opnf-focus-ring: var(--sai-ui-focus); height: auto; min-height: 0; padding: 0; overflow: visible; font-family: var(--sai-ui-font-family); background: none; }
.sai-auth-main .oauthpress-native-card { width: 380px; max-width: 100%; max-height: none; padding: 0; border: 0; box-shadow: none; overflow: visible; background: none; }
.sai-auth-main .oauthpress-native-logo-wrap { display: none; }
.sai-auth-main .oauthpress-native-title { margin: 0 0 14px; color: var(--sai-text); font-size: 32px; font-weight: 600; letter-spacing: -.045em; }
.sai-auth-main .oauthpress-native-subtitle { font-size: 14px; color: var(--sai-secondary-text); margin-bottom: 30px; }
.sai-auth-main .oauthpress-native-input { color: var(--sai-text); background: var(--sai-surface); border: 1px solid var(--sai-border); border-radius: 8px; min-height: 48px; font-size: 14px; box-shadow: none; }
.sai-auth-main .oauthpress-native-label { color: var(--sai-text); font-size: 13px; font-weight: 500; }
.sai-auth-main .oauthpress-native-submit { background: var(--sai-accent); color: white; border: 1px solid var(--sai-accent); border-radius: 8px; min-height: 46px; font-size: 14px; font-weight: 600; box-shadow: none; }
.sai-auth-main .oauthpress-native-submit:hover { background: var(--sai-accent-hover); }
.sai-auth-main :is(.oauthpress-native-forgot,.oauthpress-native-footer a) { color: var(--sai-link); }
.sai-console.shareai-onboarding-page { background: var(--sai-background) !important; }
.sai-console.shareai-onboarding-page .sai-standalone-main { margin-top: 0; }
.sai-console .onb2-page { background: transparent; min-height: 0; padding: 26px 0 50px; font-family: var(--sai-ui-font-family); }
.sai-console .onb2-brand { display: none; }
.sai-console .onb2-shell { margin-top: 0; }
.sai-console .onb2-eyebrow { color: var(--sai-link); }
.sai-console .onb2-shell, .sai-console .onb2-hero-card, .sai-console .onb2-form-panel { background: transparent; }
.sai-console .onb2-page .onb2-submit { background: var(--sai-accent); border-color: var(--sai-accent); color: white; border-radius: 8px; }
.sai-console .onb2-page .onb2-input { color: var(--sai-text); background: var(--sai-surface); border-color: var(--sai-border); border-radius: 8px; }
@media (max-width: 1100px) { .sai-console .sad-card-grid { grid-template-columns: 1fr; } .sai-console .sad-card { min-height: 0; } .sai-console .sad-hero-card { grid-template-columns:1fr; } .sai-console .sad-hero-brand { display: none; } }
@media (max-width: 800px) {
  .sai-console .sad-hero-card { padding: 24px; margin-bottom: 20px; }
  .sai-console .sad-card { padding: 22px; }
  .sai-console-content :is(.aak-api-key-header,.scp-header) { flex-wrap: wrap; }
  .sai-console-content :is(.aak-api-key-list,.scp-list,.aak-api-key-item,.scp-item) { padding: 16px !important; }
  .sai-auth-footer { padding: 20px; }
  .sai-auth-main { padding-bottom: 40px; }
  .sai-console .onb2-page { padding: 10px 0 32px; }
}
/* Leave room for the verification widget on narrow phones. */
@media (max-width: 340px) { .sai-auth-main { padding-inline: 10px; } }
/* Native navigation replaces the page-builder breadcrumb frame. */
.sai-console-content > * > .brc-breadcrumb-container { display: none !important; }
.sai-console .sai-page-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0 0 28px; }
.sai-console .sai-page-heading h1 { margin: 0; font-size: 28px; font-weight: 600; }
.sai-console .sai-page-heading p { margin: 8px 0 0; color: var(--sai-secondary-text); font-size: 14px; }
.sai-console .sai-console-nav-group a { font-weight: 450; }
.sai-console .sai-console-nav-group a[aria-current] { font-weight: 550; }
.sai-console .sad-card-eyebrow { display: block; background: none; border: 0; padding: 0; border-radius: 0; }
.sai-console .sad-card-link { font-weight: 550; }
.sai-console .sai-console-topbar-actions > a { font-weight: 500; }
.sai-console-secondary { display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--sai-border); border-radius: 8px; background: var(--sai-surface); padding: 9px 14px; min-height: 40px; font-size: 12px; font-weight: 500; white-space: nowrap; }
.sai-console .aasf-credit-section, .sai-console .aasf-invoice-section { padding: 24px !important; margin-bottom: 24px !important; }
.sai-console .aasf-card-title { font-size: 18px !important; margin-bottom: 8px !important; font-weight: 550 !important; }
.sai-console .aasf-subtext { font-size: 13px !important; color: var(--sai-secondary-text) !important; line-height: 1.7; }
.sai-console .aasf-balance-card { width: 280px !important; min-height: 150px; height: auto !important; padding: 24px !important; align-items: flex-start !important; background: var(--sai-control) !important; }
.sai-console .aasf-balance-amount { max-width: 100%; font-size: 27px !important; line-height: 1.35; overflow-wrap: anywhere; letter-spacing: -.04em; }
.sai-console .aasf-balance-label { font-size: 12px !important; color: var(--sai-secondary-text) !important; margin-top: 8px; }
.sai-console .aasf-payment-row { flex-wrap: wrap !important; align-items: flex-start !important; border: 0 !important; padding: 0 !important; gap: 16px; }
.sai-console .aasf-card-body { gap: 24px !important; }
.sai-console .aasf-payment-right { display: flex; flex-wrap: wrap; gap: 8px; }
.sai-console .aasf-charged { font-size: 13px !important; margin: 0 !important; }
.sai-console .aasf-payment-note { font-size: 12px !important; line-height: 1.7; }
.sai-console :is(.aasf-buy-btn,.aasf-notifications-btn,.aasf-grants-btn) { min-height: 40px !important; padding: 9px 14px !important; border-radius: 8px !important; font-size: 12px !important; font-weight: 550 !important; }
.sai-console .aasf-notifications-btn { background: var(--sai-surface) !important; color: var(--sai-text) !important; border: 1px solid var(--sai-border) !important; }
.sai-console .aasf-invoice-table :is(th,td) { padding: 14px 12px !important; font-size: 12px !important; }
.sai-console .aasf-invoice-table th { font-size: 11px !important; font-weight: 500 !important; }
.sai-console .aak-priority-wrapper { background: var(--sai-control) !important; border: 1px solid var(--sai-line) !important; color: var(--sai-text) !important; padding: 7px 10px !important; border-radius: 7px !important; }
.sai-console .aak-priority-label { color: var(--sai-secondary-text) !important; font-size: 11px !important; font-weight: 500 !important; }
/* Settings: separate navigation and editor panels. */
.sai-console .saia-list { padding: 0 !important; border: 0 !important; background: none !important; min-height: 0 !important; backdrop-filter: none !important; }
.sai-console .saia-grid { grid-template-columns: 228px minmax(0,1fr) !important; gap: 24px !important; min-height:0!important; }
.sai-console .saia-inner-column { border: 0 !important; border-radius: 0 !important; background: none !important; }
.sai-console .saia-inner-column--sidebar { align-self:stretch; min-height:0!important; overflow:visible!important; }
.sai-console .saia-sidebar { height:auto!important; }
.sai-console .saia-title { font-size: 15px !important; font-weight: 550 !important; }
.sai-console .saia-sub { font-size: 12px !important; line-height: 1.6; }
.sai-console .saia-tabs { gap: 6px !important; }
.sai-console .saia-tab { border: 1px solid transparent !important; background: none !important; min-height: 40px; }
.sai-console .saia-tab.is-active { background: var(--sai-control) !important; }
.sai-console .saia-tab-label { font-size: 13px !important; font-weight: 500 !important; }
.sai-console .saia-content { padding: 24px !important; border: 1px solid var(--sai-line) !important; border-radius: 10px !important; background: var(--sai-surface) !important; min-height: 0 !important; }
.sai-console .saia-content :is(h2,h3) { font-size: 20px !important; margin: 0 0 8px; color: var(--sai-text); }
.sai-console .saia-content .sai-note { font-size: 13px; }
.sai-console .saia-actor-image-field { border: 1px solid var(--sai-line); border-radius: 8px; }
.sai-console .saia-actor-image-description { font-size: 12px; }
.sai-console .saia-content form { max-width: 660px; }
/* Provider and creator workspaces. */
.sai-console .scp-list { padding: 0 !important; border: 0 !important; background: none !important; }
.sai-console .scp-accepted-body { gap: 24px; align-items: stretch; }
.sai-console .scp-accepted-body > .scp-sidebar { width: 228px; flex-basis: 228px; min-height: 0; }
.sai-console .scp-device-wrap { padding: 0; border: 0; background: none; }
.sai-console .scp-device-grid { gap: 6px; max-height: calc(100dvh - 250px); overflow-y: auto; }
.sai-console .scp-device-card { padding: 14px 12px; min-height: 74px; border: 1px solid var(--sai-line); border-radius: 7px; }
.sai-console .scp-device-card.active { border-color: var(--sai-accent-line); background: var(--sai-accent-soft); }
.sai-console .scp-device-name { font-size: 13px !important; font-weight: 550 !important; padding-top: 12px; overflow-wrap: anywhere; }
.sai-console .scp-device-meta { font-size: 11px !important; color: var(--sai-secondary-text); }
.sai-console .scp-status-badge { font-size: 8px; padding: 2px 5px; }
.sai-console .scp-overview-label, .sai-console .scp-overview-icon { padding: 12px; font-size: 13px; }
/* Conversation presentation: stable reading width, real response states and native Markdown. */
.sai-console .sai-chat-card { position:relative; }
.sai-console #sai-chat-messages { padding:28px max(24px,calc((100% - 820px)/2)); gap:20px; overflow-x:hidden; scrollbar-width:thin; scrollbar-color:var(--sai-border) transparent; }
.sai-console .sai-chat-new { display:grid; place-items:center; flex:0 0 36px; width:36px; height:36px; border:1px solid var(--sai-border); border-radius:8px; background:none; color:var(--sai-secondary-text); cursor:pointer; }
.sai-console .sai-chat-new svg { width:17px; height:17px; }
.sai-console .sai-settings-right button:disabled { opacity:.5; cursor:default; }
.sai-console .sai-greeting-overlay { display:flex; flex-direction:column; align-items:center; justify-content:center; position:static; transform:none; inset:auto; flex:1; width:100%; min-height:0; margin:auto; text-align:center; pointer-events:auto; background:none; -webkit-text-fill-color:currentColor; }
.sai-console .sai-greeting-overlay[hidden] { display:none; }
.sai-console .sai-welcome-icon { display:grid; place-items:center; width:44px; height:44px; margin-bottom:20px; border-radius:14px; border:1px solid var(--sai-accent-line); background:var(--sai-accent-soft); color:var(--sai-link); }
.sai-console .sai-welcome-icon svg { width:22px; height:22px; }
.sai-console #sai-greeting-title { max-width:600px; margin:0 0 12px; color:var(--sai-text); font-size:clamp(24px,2.3vw,34px); line-height:1.2; font-weight:550; letter-spacing:-.035em; }
.sai-console .sai-greeting-overlay > p { font-size:14px; font-weight:400; line-height:1.8; color:var(--sai-secondary-text); margin:0; }
.sai-console .sai-chat-starters { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin:28px 0 0; }
.sai-console .sai-chat-starters button { display:flex; align-items:center; gap:16px; min-height:42px; padding:11px 14px; border:1px solid var(--sai-border); border-radius:10px; color:var(--sai-secondary-text); background:var(--sai-control); font:12px/1.5 var(--sai-ui-font-family); cursor:pointer; }
.sai-console .sai-chat-starters button:hover { color:var(--sai-text); border-color:var(--sai-accent-line); background:var(--sai-accent-soft); }
.sai-console #sai-chat-messages > .sai-greeting-overlay { flex-shrink:1; }
.sai-console .sai-msg-user { width:fit-content; max-width:min(85%,680px); padding:14px 18px; margin:8px 0 0 auto; border-radius:16px 16px 4px 16px; font-size:15px; line-height:1.7; overflow-wrap:anywhere; white-space:pre-wrap; }
.sai-console .sai-msg-bot { width:100%; max-width:820px; min-width:0; padding:4px 0 20px; margin:0 auto; background:none; border:0; font-size:15px; line-height:1.75; overflow-wrap:anywhere; }
.sai-console .sai-response-heading { display:flex; align-items:center; gap:10px; margin-bottom:16px; font-size:12px; font-weight:550; line-height:1.5; color:var(--sai-text); overflow-wrap:anywhere; }
.sai-console .sai-response-avatar { display:grid; place-items:center; width:26px; height:26px; flex-shrink:0; border:1px solid var(--sai-accent-line); border-radius:8px; background:var(--sai-accent-soft); color:var(--sai-link); font-size:12px; }
.sai-console .sai-response-status { display:flex; gap:10px; align-items:center; padding:4px 0 14px; min-height:36px; color:var(--sai-secondary-text); font-size:13px; }
.sai-console .sai-response-status[hidden],.sai-console .sai-response-actions[hidden] { display:none; }
.sai-console .sai-response-pulse { width:7px; height:7px; background:var(--sai-link); border-radius:50%; animation:sai-response-pulse 1.2s ease-in-out infinite; }
@keyframes sai-response-pulse { 50% { opacity:.3; transform:scale(.75); } }
.sai-console .sai-response-content { min-width:0; }
.sai-console .sai-response-content > :first-child { margin-top:0; }
.sai-console .sai-response-content > :last-child { margin-bottom:0; }
.sai-console .sai-response-content :is(p,ul,ol,blockquote,.sai-code-block,.sai-table-scroll) { margin:0 0 18px; }
.sai-console .sai-response-content p { font-size:inherit; line-height:inherit; }
.sai-console .sai-response-content :is(h1,h2,h3,h4,h5,h6) { margin:26px 0 12px; line-height:1.35; font-weight:600; letter-spacing:-.02em; color:var(--sai-text); }
.sai-console .sai-response-content h1 { font-size:25px; }
.sai-console .sai-response-content h2 { font-size:21px; }
.sai-console .sai-response-content h3 { font-size:18px; }
.sai-console .sai-response-content :is(h4,h5,h6) { font-size:16px; }
.sai-console .sai-response-content :is(ul,ol) { padding-left:24px; }
.sai-console .sai-response-content ul { list-style:disc; }
.sai-console .sai-response-content ol { list-style:decimal; }
.sai-console .sai-response-content li { padding-left:3px; margin:6px 0; }
.sai-console .sai-response-content li > :is(p,ul,ol) { margin-bottom:8px; }
.sai-console .sai-response-content strong { font-weight:650; }
.sai-console .sai-response-content a { color:var(--sai-link); text-decoration:underline; text-underline-offset:3px; }
.sai-console .sai-response-content blockquote { padding:4px 0 4px 18px; border-left:3px solid var(--sai-accent-line); color:var(--sai-secondary-text); }
.sai-console .sai-response-content blockquote p:last-child { margin:0; }
.sai-console .sai-response-content hr { border:0; border-top:1px solid var(--sai-line); margin:24px 0; }
.sai-console .sai-response-content code { font:13px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace; padding:2px 5px; border:1px solid var(--sai-line); border-radius:4px; background:var(--sai-control); overflow-wrap:anywhere; }
.sai-console .sai-code-block { max-width:100%; border:1px solid var(--sai-border); border-radius:11px; overflow:hidden; background:var(--sai-background); }
.sai-console .sai-code-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:40px; padding:8px 14px; background:var(--sai-control); border-bottom:1px solid var(--sai-line); font-size:11px; line-height:1.5; color:var(--sai-secondary-text); }
.sai-console .sai-code-heading button { color:var(--sai-secondary-text); border:0; background:none; font:inherit; cursor:pointer; padding:4px 0; }
.sai-console .sai-response-content pre { max-width:100%; margin:0; padding:16px; overflow:auto; scrollbar-width:thin; white-space:pre; background:none; border:0; border-radius:0; }
.sai-console .sai-response-content pre code { display:block; width:max-content; min-width:100%; border:0; background:none; padding:0; white-space:pre; overflow-wrap:normal; }
.sai-console .sai-table-scroll { max-width:100%; overflow:auto; scrollbar-width:thin; border:1px solid var(--sai-line); border-radius:10px; }
.sai-console .sai-response-content table { min-width:100%; border-collapse:collapse; font-size:13px; }
.sai-console .sai-response-content :is(th,td) { padding:10px 14px; border-bottom:1px solid var(--sai-line); text-align:left; }
.sai-console .sai-response-content th { font-weight:600; background:var(--sai-control); }
.sai-console .sai-response-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-top:18px; color:var(--sai-secondary-text); font-size:11px; }
.sai-console .sai-response-actions button { min-height:32px; padding:5px 9px; border:1px solid var(--sai-line); border-radius:7px; background:none; color:var(--sai-secondary-text); font:inherit; cursor:pointer; }
.sai-console .sai-response-error { border:1px solid var(--sai-border); background:var(--sai-control); border-radius:10px; padding:16px; font-size:13px; }
.sai-console .sai-response-error p { margin:6px 0 12px; color:var(--sai-secondary-text); }
.sai-console .sai-response-error button { padding:7px 12px; border:1px solid var(--sai-border); border-radius:7px; color:var(--sai-text); background:var(--sai-surface); font:inherit; cursor:pointer; }
.sai-console .sai-chat-scroll-control { position:relative; height:0; z-index:3; flex:none; }
.sai-console #sai-scroll-latest { position:absolute; bottom:12px; left:50%; transform:translateX(-50%); display:flex; gap:10px; align-items:center; min-height:36px; padding:8px 14px; border:1px solid var(--sai-border); border-radius:20px; box-shadow:var(--sai-shadow); background:var(--sai-surface); color:var(--sai-text); font:12px var(--sai-ui-font-family); cursor:pointer; }
.sai-console #sai-scroll-latest[hidden],.sai-console #sai-stop-btn[hidden],.sai-console #sai-send-btn[hidden] { display:none; }
.sai-console #sai-stop-btn { display:flex; flex:none; align-items:center; justify-content:center; gap:8px; min-height:42px; padding:9px 12px; border:1px solid var(--sai-border); border-radius:12px; background:var(--sai-control); color:var(--sai-text); font:12px var(--sai-ui-font-family); cursor:pointer; }
.sai-console .sai-console-content--chat .sai-chat-input-row { padding-inline:max(24px,calc((100% - 820px)/2)); }
.sai-console:has(.sai-standalone-main .sai-chat-container--guest.expanded) { height:100dvh; display:flex; flex-direction:column; overflow:hidden; }
.sai-console:has(.sai-standalone-main .sai-chat-container--guest.expanded) > .sai-auth-header { flex:none; }
.sai-standalone-main:has(.sai-chat-container--guest.expanded) { flex:1; min-height:0; padding:16px 0; }
.sai-console .sai-chat-container--guest.expanded { height:100%; min-height:0; }
.sai-console .sai-chat-container--guest.expanded .sai-chat-card { height:100%; }
@media(max-width:600px) {
 .sai-console #sai-chat-messages { padding:20px 16px; gap:18px; }
 .sai-console .sai-console-content--chat .sai-chat-input-row { padding-inline:14px; }
 .sai-console .sai-msg-user { max-width:92%; font-size:14px; padding:12px 14px; }
 .sai-console .sai-msg-bot { font-size:14px; }
 .sai-console #sai-greeting-title { font-size:25px; }
 .sai-console .sai-greeting-overlay > p { font-size:12px; }
 .sai-console .sai-chat-starters { display:grid; width:100%; max-width:290px; gap:8px; margin-top:20px; }
 .sai-console .sai-chat-starters button { justify-content:space-between; font-size:11px; min-height:36px; padding:9px 12px; }
 .sai-console .sai-welcome-icon { width:36px; height:36px; margin-bottom:14px; }
 .sai-console .sai-response-content pre { padding:12px; }
 .sai-console .sai-response-content h1 { font-size:22px; }
 .sai-console .sai-response-content h2 { font-size:19px; }
}
@media(max-height:650px) {
 .sai-console .sai-greeting-overlay { padding:12px 0; }
 .sai-console .sai-welcome-icon,.sai-console .sai-greeting-overlay > p { display:none; }
 .sai-console .sai-chat-starters { display:flex; margin-top:10px; }
 .sai-console #sai-greeting-title { font-size:22px; margin:0; }
 .sai-console .sai-chat-container--guest.expanded .sai-chat-guest-footer { display:none; }
}
@media(prefers-reduced-motion:reduce) { .sai-console .sai-response-pulse { animation:none; } }

.sai-console .scp-device-card.overview { min-height: 0; margin-bottom: 6px; }
.sai-console .scp-device-divider { margin: 8px 0; border-color: var(--sai-line); }
.sai-console .scp-accepted-body .scp-details { border: 0; background: none; border-radius: 0; padding: 0; min-height: 0; }
.sai-console .scp-details-placeholder { font-style: normal; opacity: 1; font-size: 14px; color: var(--sai-text); }
/* The provider's first-device screen sizes to its content column, not the viewport.
   Keep these rules separate from Builder's shared no-device/installer primitives. */
.sai-console .scp-accepted-body > .scp-provider-empty { container:scp-provider-empty / inline-size; min-width:0; max-width:100%; height:auto; padding:24px; gap:24px; align-items:stretch; text-align:left; overflow-wrap:anywhere; border:1px solid var(--sai-line); border-radius:10px; background:var(--sai-surface); }
.sai-console .scp-provider-empty :is(.scp-empty-intro,.scp-empty-installers,.scp-download-copy,.scp-download-actions,.scp-setup-guide,.scp-support-note) { min-width:0; max-width:100%; }
.sai-console .scp-provider-empty .scp-empty-intro { display:grid; gap:8px; }
.sai-console .scp-provider-empty .scp-empty-head { margin:0; font-size:24px; font-weight:550; line-height:1.3; }
.sai-console .scp-provider-empty .scp-empty-body { max-width:none; margin:0; font-size:13px; line-height:1.7; }
.sai-console .scp-provider-empty :is(.scp-instruction,.guide-head) { margin:0 0 16px; font-size:15px; font-weight:550; line-height:1.5; }
.sai-console .scp-provider-empty .scp-download-options { grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; max-width:none; gap:12px; margin:0; }
.sai-console .scp-provider-empty .scp-download-box { display:flex; flex-direction:column; gap:14px; justify-content:center; align-items:center; min-width:0; padding:18px; border-radius:8px; text-align:center; cursor:default; }
.sai-console .scp-provider-empty .scp-download-logo { width:44px; height:44px; margin:0; object-fit:contain; }
.sai-console .scp-provider-empty .scp-download-box h4 { margin:0 0 4px; font-size:16px; line-height:1.4; }
.sai-console .scp-provider-empty .scp-download-box p { font-size:12px; line-height:1.6; color:var(--sai-secondary-text); }
.sai-console .scp-provider-empty .scp-download-actions { display:flex; flex-direction:column; align-items:center; gap:12px; }
.sai-console .scp-provider-empty .scp-installer-link { display:inline-flex; justify-content:center; align-items:center; min-height:42px; max-width:100%; padding:10px 14px; border:1px solid var(--sai-accent); border-radius:7px; background:var(--sai-accent); color:#fff; font-size:12px; line-height:1.5; font-weight:600; text-decoration:none; }
.sai-console .scp-provider-empty .scp-installer-link:hover { background:var(--sai-accent-hover); border-color:var(--sai-accent-hover); }
.sai-console .scp-provider-empty .scp-docs-link { margin:0; font-size:12px; line-height:1.5; color:var(--sai-link); }
.sai-console .scp-provider-empty .scp-setup-guide { width:100%; margin:0; padding-top:24px; border-top:1px solid var(--sai-line); text-align:left; }
.sai-console .scp-provider-empty .guide-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 32px; margin:0 0 16px; padding-left:20px; }
.sai-console .scp-provider-empty .guide-list li { min-width:0; margin:0; padding-left:4px; font-size:13px; line-height:1.7; }
.sai-console .scp-provider-empty .guide-list li::marker { color:var(--sai-link); font-weight:600; }
.sai-console .scp-provider-empty .guide-list strong { font-weight:550; }
.sai-console .scp-provider-empty .guide-list p { margin:4px 0 0; font-size:12px; color:var(--sai-secondary-text); }
.sai-console .scp-provider-empty .guide-note { font-size:12px; line-height:1.7; color:var(--sai-secondary-text); }
.sai-console .scp-provider-empty .scp-support-note { width:100%; margin:0; padding-top:16px; border-top:1px solid var(--sai-line); text-align:left; }
.sai-console .scp-provider-empty .scp-support-note p { font-size:12px; line-height:1.7; }
@container scp-provider-empty (max-width:760px) {
 .sai-console .scp-provider-empty .scp-download-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sai-console .scp-provider-empty .scp-download-windows { grid-column:1/-1; }
 .sai-console .scp-provider-empty .guide-list { grid-template-columns:1fr; gap:12px; }
}
@container scp-provider-empty (max-width:480px) {
 .sai-console .scp-provider-empty .scp-download-options { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:600px) {
 .sai-console .scp-accepted-body > .scp-provider-empty { padding:18px; gap:20px; }
 .sai-console .scp-provider-empty .scp-download-box { padding:14px; }
}
.sai-console .scp-sysinfo { padding: 0; border: 0; background: none; }
.sai-console .scp-sysinfo-title { font-size: 22px; font-weight: 550; color: var(--sai-text); }
.sai-console .scp-sysinfo-sub { font-size: 13px; line-height: 1.7; color: var(--sai-secondary-text); font-weight: 400; }
.sai-console [class^="scp-device-dashboard-lifetime"] { font-style: normal; }
.sai-console :is(.scp-device-dashboard-lifetime__widget,.scp-device-dashboard-lifetime__hero-card,.scp-device-dashboard-lifetime__earnings-stat,.scp-device-dashboard-lifetime__top-models) { border-radius: 10px; border: 1px solid var(--sai-line); background: var(--sai-surface); padding: 20px; }
.sai-console :is(.scp-device-dashboard-lifetime__hero-title,.scp-device-dashboard-lifetime__widget-title,.scp-device-dashboard-lifetime__hero-eyebrow) { color: var(--sai-text); font-size: 15px; font-weight: 550; }
.sai-console :is(.scp-device-dashboard-lifetime__widget-sub,.scp-device-dashboard-lifetime__widget-caption,.scp-device-dashboard-lifetime__earnings-label) { color: var(--sai-secondary-text); font-size: 12px; font-weight: 400; }
.sai-console .scp-device-dashboard-lifetime__earnings-grid { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; }
.sai-console .scp-device-dashboard-lifetime__earnings-stat { padding: 14px 10px; border: 0; border-left: 1px solid var(--sai-line); border-radius: 0; background: none; }
.sai-console .scp-device-dashboard-lifetime__earnings-stat:first-child { border-left: 0; }
.sai-console .scp-device-dashboard-lifetime__earnings-value { font-size: 26px; font-weight: 550; }
.sai-console .scp-device-dashboard-lifetime__earnings-unit { font-size: 10px; font-weight: 400; color: var(--sai-secondary-text); }
.sai-console .scp-device-dashboard-lifetime__widget-value { font-size: 32px; font-weight: 550; }
.sai-console .scp-device-dashboard-lifetime__widget-action { font-size: 12px; padding: 8px 12px; border: 1px solid var(--sai-border); border-radius: 7px; color: var(--sai-text); background: var(--sai-surface); }
.sai-console .scp-device-dashboard-lifetime__unit-toggle { padding: 3px; border: 1px solid var(--sai-line); border-radius: 8px; background: var(--sai-control); }
.sai-console .scp-device-dashboard-lifetime__unit-btn { padding: 7px 12px; border-radius: 5px; font-size: 12px; color: var(--sai-secondary-text); }
.sai-console .scp-device-dashboard-lifetime__unit-btn.is-active { background: var(--sai-surface); color: var(--sai-link); }

.sai-console-empty { padding: 40px 24px; text-align: center; color: var(--sai-secondary-text); }
.sai-console-empty h2 { color: var(--sai-text); font-size: 18px; }
/* Keep the auth controller's inline presentation options out of the shared theme. */
.sai-auth-layout .oauthpress-native-shell .oauthpress-native-submit { background: var(--sai-accent) !important; color: #fff !important; }
.sai-auth-layout .oauthpress-native-shell .oauthpress-native-remember-text { font-size: 12px; font-weight: 400; color: var(--sai-secondary-text); }
.sai-console.shareai-onboarding-page > .sai-auth-header { display: flex !important; }
.sai-console .onb2-page .onb2-next, .sai-console .onb2-page .onb2-submit { border-radius: 8px; }
.sai-console .sai-new-organization__steps { min-width: 0; }
.sai-console .sai-new-organization__step-copy { min-width: 0; }
.sai-console .sai-new-organization__step-copy :is(strong,span) { overflow-wrap: anywhere; }
@media(max-width: 1050px) {
 .sai-console .scp-device-dashboard-lifetime__earnings-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media(max-width: 900px) {
 .sai-console .scp-accepted-body > .scp-sidebar { width: 100%; flex-basis: auto; }
 .sai-console .scp-device-grid { max-height: none; }
 .sai-console .scp-accepted-body #scp-sidebar-devices .scp-device-card { flex-basis: 150px; }
 .sai-console .saia-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
 .sai-console .saia-tabs { flex-direction: row !important; flex-wrap: wrap; margin: 0 !important; }
 .sai-console .saia-head { display: none; }
}
@media(max-width: 600px) {
 .sai-console .sai-page-heading { flex-wrap: wrap; }
 .sai-console .aasf-credit-section,.sai-console .aasf-invoice-section { padding: 18px !important; }
 .sai-console .aasf-balance-card { width: 100% !important; }
 .sai-console .aasf-card-left { width: 100%; }
 .sai-console .saia-content { padding: 20px !important; }
 .sai-console .scp-device-dashboard-lifetime__earnings-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .sai-console .sai-new-organization__step { min-width: 0; }
}
.sai-console .scp-device-dashboard-lifetime { border: 0; border-radius: 0; padding: 0; background: none; }
.sai-console .scp-device-dashboard-lifetime__overview { padding: 0; border: 0; border-radius: 0; background: none; }
.sai-console .scp-device-dashboard-lifetime__models { padding: 22px; border: 1px solid var(--sai-line); border-radius: 10px; background: var(--sai-surface); }
.sai-console .scp-device-dashboard-lifetime__section-copy h4 { font-size: 16px; color: var(--sai-text); }
.sai-console .scp-device-dashboard-lifetime__section-copy p { font-size: 12px; color: var(--sai-secondary-text); font-weight: 400; line-height: 1.7; }
.sai-console .scp-device-dashboard-lifetime__section-head { flex-wrap: wrap; }
.sai-console .scp-device-dashboard-lifetime__section-actions { display: flex; flex-wrap: wrap; gap: 8px; width: 100%; justify-content: space-between; }
.sai-console .scp-device-dashboard-lifetime__filters { display: flex; flex-wrap: wrap; gap: 4px; }
.sai-console .scp-device-dashboard-lifetime__filter { padding: 7px 10px; font-size: 11px; font-weight: 500; color: var(--sai-secondary-text); border: 1px solid var(--sai-border); border-radius: 6px; background: none; }
.sai-console .scp-device-dashboard-lifetime__filter.is-active { color: var(--sai-link); border-color: var(--sai-accent-line); background: var(--sai-accent-soft); }
.sai-console .scp-device-dashboard-lifetime__models-empty { border: 1px solid var(--sai-line); border-radius: 8px; padding: 20px; background: var(--sai-background); }
.sai-console .scp-device-dashboard-lifetime__models-empty strong { color: var(--sai-text); font-size: 13px; }
.sai-console .scp-device-dashboard-lifetime__models-empty p { color: var(--sai-secondary-text); font-size: 12px; }
.sai-console .scp-device-status { font-size: 8px; padding: 2px 4px; top: 6px; right: 6px; font-weight: 500; color: var(--sai-text); }
.sai-console .scp-device-card:not(.overview) .scp-device-name { padding-top: 14px; padding-right: 0; }
.sai-console .sai-support-surface { border: 1px solid var(--sai-line); border-radius: 10px; padding: 22px; font-size: 14px; }
.sai-console .sai-support-surface h3 { font-size: 18px; }
.sai-console .sai-support-surface .fs_shortcode_error { font-size: 14px; }
.sai-console .sai-new-organization__step-copy { overflow-wrap: anywhere; }
/* Readable semantic badges on both surfaces. */
.sai-console .scp-device-card.sharing .scp-device-status { background: var(--sai-accent-soft); color: var(--sai-link); }
.sai-console:has(.sai-console-content--provider) .shareai-toast--success { --shareai-toast-accent: var(--sai-accent); --shareai-toast-accent-soft: var(--sai-accent-soft); --shareai-toast-border: var(--sai-accent-line); --shareai-toast-surface: var(--sai-accent-soft); }
.sai-console:has(.sai-console-content--provider) .saise-toast--success { border-color: var(--sai-accent-line); background: var(--sai-accent-soft); color: var(--sai-link); }
.sai-console .scp-device-card.banned .scp-device-status { background: light-dark(#fae8e5,#452924); color: light-dark(#ad3025,#ffb2a8); }
/* Application states and forms across all three programs. */
.sai-console :is(.scp-dnr-card,.scp-status-wrapper) { min-height: 0 !important; padding: clamp(28px,4vw,48px) !important; border: 1px solid var(--sai-line) !important; border-radius: 12px !important; background: var(--sai-surface) !important; align-items: flex-start; text-align: left; gap: 18px; }
.sai-console :is(.scp-dnr-head,.scp-status-title) { max-width: 650px; text-align: left !important; font-size: 28px !important; font-weight: 600 !important; line-height: 1.2; }
.sai-console :is(.scp-dnr-sub,.scp-status-description) { max-width: 650px; text-align: left !important; font-size: 14px !important; line-height: 1.8; color: var(--sai-secondary-text) !important; }
.sai-console .scp-dnr-btn { min-height: 42px; padding: 11px 18px; font-size: 13px; border-radius: 8px; }
.sai-console .scp-form { max-width: 760px; }
.sai-console .scp-form .scp-input { font-size: 14px; min-height: 44px; padding: 10px 12px; border-radius: 8px; background: var(--sai-surface); color: var(--sai-text); border-color: var(--sai-border); }
.sai-console .scp-form :is(.scp-label,.scp-note) { font-size: 12px; }
.sai-console .scp-form .scp-h4 { font-size: 17px; }
.sai-console .scp-connect-form-item .scp-form { margin: 20px 0 0; }
.sai-console .scp-device-dashboard-lifetime__overview { min-height: 0; }
.sai-console .scp-settings-general { padding: 20px; gap: 20px; border: 1px solid var(--sai-line); }
.sai-console .scp-settings-general-greeting { font-size: 21px; font-weight: 550; }
.sai-console .scp-settings-general-type { font-size: 12px; }
.sai-console .scp-settings-general-joined { font-size: 12px; color: var(--sai-secondary-text); font-weight: 400; white-space: normal; }
.sai-console .scp-tab-btn { min-height: 40px; padding: 9px 14px; font-size: 12px; font-weight: 500; border-radius: 7px; border: 1px solid var(--sai-border); background: var(--sai-surface); color: var(--sai-secondary-text); }
.sai-console .scp-tab-btn.active { background: var(--sai-accent-soft); border-color: var(--sai-accent-line); color: var(--sai-link); }
.sai-console :is(.scp-provider-membership,.scp-provider-concurrency) { font-size: 13px; border-color: var(--sai-line); }
.sai-console :is(.scp-provider-membership__copy h3,.scp-provider-concurrency__copy h3,.scp-provider-membership__name) { font-size: 16px; font-weight: 550; color: var(--sai-text); }
.sai-console :is(.scp-provider-membership__copy p,.scp-provider-concurrency__copy p,.scp-provider-concurrency__notice p) { font-size: 13px; color: var(--sai-secondary-text); line-height: 1.7; }
.sai-console :is(.scp-provider-membership__label,.scp-provider-concurrency__label,.scp-provider-concurrency__metric span,.scp-provider-membership__fee-row--head span) { font-size: 10px; font-weight: 500; color: var(--sai-secondary-text); }
.sai-console .scp-provider-membership__fee-row span { font-size: 12px; color: var(--sai-text); }
.sai-console .scp-provider-membership__share-summary { font-size: 19px; }
/* FluentCart owns checkout processing; its themeable surfaces share Console colors. */
.sai-console {
  --fct-checkout-primary-text-color: var(--sai-text);
  --fct-checkout-secondary-text-color: var(--sai-secondary-text);
  --fct-checkout-border-color: var(--sai-border);
  --fct-checkout-primary-bg-color: var(--sai-accent);
  --fct-checkout-secondary-bg-color: var(--sai-control);
  --fct-checkout-btn-bg-color: var(--sai-accent);
  --fct-checkout-btn-text-color: #fff;
  --fct-checkout-input-bg-color: var(--sai-surface);
  --fct-checkout-input-disabled-bg-color: var(--sai-control);
  --fct-checkout-input-text-color: var(--sai-text);
  --fct-checkout-input-placeholder-text-color: var(--sai-secondary-text);
  --fct-checkout-input-border-color: var(--sai-border);
  --fct-primary-text-color: var(--sai-text);
  --fct-secondary-text-color: var(--sai-secondary-text);
  --fct-border-color: var(--sai-border);
  --fct-primary-bg-color: var(--sai-accent);
  --fct-secondary-bg-color: var(--sai-control);
  --fct-btn-bg-color: var(--sai-accent);
  --fct-btn-text-color: #fff;
  --fct-input-bg-color: var(--sai-surface);
  --fct-input-text-color: var(--sai-text);
  --fct-input-placeholder-text-color: var(--sai-secondary-text);
  --fct-checkout-summary-bg-color: var(--sai-surface);
  --fct-checkout-payment-method-bg-color: var(--sai-surface);
  --fct-checkout-checkbox-bg: var(--sai-surface);
  --fct-checkout-address-wrapper-bg: var(--sai-surface);
  --fct-checkout-address-modal-bg: var(--sai-surface);
  --fct-checkout-shipping-methods-bg: var(--sai-surface);
  --fct-checkout-radio-bg-color: var(--sai-surface);
  --fct-select-dropdown-bg: var(--sai-surface);
  --fct-select-option-hover-bg: var(--sai-control);
}
.sai-console :is(.fct-empty-state,.fct-empty-cart-content,.fluent-cart-cart-empty-content-text) { color: var(--sai-secondary-text); }
.sai-console :is(.fct-empty-state,.fluent-cart-cart-empty-content-text) a { color: var(--sai-link); }
.sai-console .fct_checkout { max-width: 1100px; margin: 28px auto; }
/* Customer support uses the same palette, including its dynamically mounted portal. */
.sai-console #fluent_support_client_app .fs_client_portal {
  --fs-primary: var(--sai-accent);
  --fs-primary-dark: var(--sai-accent-hover);
  --fs-primary-hover: var(--sai-accent-hover);
  --fs-global-component-bg: var(--sai-background);
  --fs-white: var(--sai-surface);
  --fs-black: var(--sai-text);
  --fs-text-strong: var(--sai-text);
  --fs-text-sub: var(--sai-secondary-text);
  --fs-text-light: var(--sai-secondary-text);
  --fs-text-lighter: var(--sai-secondary-text);
  --fs-text-muted: var(--sai-secondary-text);
  --fs-text-dark: var(--sai-text);
  --fs-text-inactive: var(--sai-secondary-text);
  --fs-text-heading: var(--sai-text);
  --fs-text-label: var(--sai-secondary-text);
  --fs-border-soft: var(--sai-line);
  --fs-border-light: var(--sai-line);
  --fs-border-lighter: var(--sai-border);
  --fs-border-input: var(--sai-border);
  --fs-border-input-hover: var(--sai-secondary-text);
  --fs-border-focus: var(--sai-link);
  --fs-bg-weak: var(--sai-control);
  --fs-bg-light: var(--sai-background);
  --fs-bg-lighter: var(--sai-control);
  --fs-bg-white: var(--sai-surface);
  --fs-bg-disabled: var(--sai-control);
  --fs-bg-hover: var(--sai-hover);
  --fs-link: var(--sai-link);
  --fs-link-hover: var(--sai-link);
  --fs-icon: var(--sai-secondary-text);
  --fs-icon-light: var(--sai-secondary-text);
  --fs-inline-btn-text: var(--sai-text);
  --fs-btn-primary: var(--sai-accent);
  --fs-btn-primary-hover: var(--sai-accent-hover);
  --fs-btn-text: #fff;
  --fs-btn-disabled-bg: var(--sai-control);
  --fs-btn-disabled-text: var(--sai-secondary-text);
  --fs-pagination-hover: var(--sai-hover);
  --fs-pagination-text: var(--sai-secondary-text);
  --fs-pagination-disabled: var(--sai-secondary-text);
  --fs-shadow-sm: none;
  --fs-shadow-md: none;
  --fs-shadow-lg: var(--sai-shadow);
  --fs-radius-xl: 10px;
  font-family: inherit;
  background: var(--sai-surface);
  color: var(--sai-text);
}
.sai-console .sai-support-surface:has(.fs_client_portal) { border: 0; background: none; padding: 0; }
.sai-console #fluent_support_client_app .fs_client_portal :is(.fs_create_ticket_btn,.fs_reply_btn,.fs_upload_button) { color: #fff; }
.sai-console #fluent_support_client_app .fs_client_portal .fs_tickets_table { background: var(--sai-surface); }
.sai-console:has(#fluent_support_client_app) {
  --el-color-primary: var(--sai-accent);
  --el-color-primary-light-9: var(--sai-accent-soft);
  --el-bg-color: var(--sai-surface);
  --el-bg-color-overlay: var(--sai-surface);
  --el-fill-color-blank: var(--sai-surface);
  --el-fill-color-light: var(--sai-control);
  --el-fill-color-lighter: var(--sai-control);
  --el-text-color-primary: var(--sai-text);
  --el-text-color-regular: var(--sai-text);
  --el-text-color-secondary: var(--sai-secondary-text);
  --el-text-color-placeholder: var(--sai-secondary-text);
  --el-border-color: var(--sai-border);
  --el-border-color-light: var(--sai-line);
  --el-border-color-lighter: var(--sai-line);
}
.sai-console #fluent_support_client_app :is(.el-input__wrapper,.el-select__wrapper,.el-textarea__inner,.mce-panel,.wp-editor-container) { background: var(--sai-surface) !important; border-color: var(--sai-border) !important; box-shadow: none !important; }
.sai-console #fluent_support_client_app :is(.el-input__inner,.el-select__selected-item,.el-select__placeholder,.el-textarea__inner,.mce-btn button,.mce-btn .mce-txt) { color: var(--sai-text) !important; }
.sai-console #fluent_support_client_app :is(.el-radio-group,.fs_filter_tabs,.el-segmented,.wp-editor-tabs,.mce-toolbar-grp,.mce-btn) { background: var(--sai-control) !important; color: var(--sai-secondary-text); }
.sai-console #fluent_support_client_app :is(.el-radio-button__inner,.wp-switch-editor) { background: var(--sai-surface); border-color: var(--sai-border); color: var(--sai-secondary-text); }
.sai-console #fluent_support_client_app :is(.el-radio-button.is-active .el-radio-button__inner,.el-segmented__item.is-selected,.wp-switch-editor[aria-pressed="true"]) { background: var(--sai-accent-soft); color: var(--sai-link); box-shadow: none; }
.sai-console #fluent_support_client_app .fs_upload_button { color: var(--sai-text) !important; }
.sai-console #fluent_support_client_app .fs_ticket_wrapper .fs_tickets_container .fs_filters_section .fs_filter_container { background: none; }
.sai-console #fluent_support_client_app .fs_client_portal {
  --fs-status-success: light-dark(#247041,#85cba0);
  --fs-status-success-bg: light-dark(#e7f5ea,#233d2a);
  --fs-status-error: light-dark(#b52b2b,#ffafa6);
  --fs-status-error-bg: light-dark(#fbe9e7,#432923);
  --fs-status-info: var(--sai-link);
  --fs-status-info-bg: var(--sai-accent-soft);
}
.sai-console #fluent_support_client_app :is(.el-input__wrapper,.el-select__wrapper) { box-shadow: inset 0 0 0 1px var(--sai-border) !important; }
.sai-console #fluent_support_client_app :is(.el-textarea__inner,.wp-editor-container) { border: 1px solid var(--sai-border) !important; }
.sai-console #fluent_support_client_app .fs_button_groups { background: var(--sai-control) !important; }
.sai-console #fluent_support_client_app .status-btn { background: none !important; color: var(--sai-secondary-text) !important; }
.sai-console #fluent_support_client_app .status-btn.active { background: var(--sai-surface) !important; color: var(--sai-text) !important; box-shadow: none !important; }
.sai-console #fluent_support_client_app .fs_sorting .el-button { background: var(--sai-surface) !important; border-color: var(--sai-border) !important; }

/* Refined working surfaces: compact navigation, readable forms and real controls. */
.sai-console .scp-settings-sidebar .scp-device-card { min-height:40px; padding:11px 12px; border-color:transparent; background:none; }
.sai-console .scp-settings-sidebar .scp-device-card.active { background:var(--sai-control); border-color:var(--sai-line); }
.sai-console .scp-settings-sidebar .scp-device-name { margin:0; padding-top:0; }
.sai-console .scp-creator-sidebar .incentive-group { margin-top:18px; }
.sai-console .scp-creator-sidebar .incentive-group__header { padding:0 12px 12px; font-size:11px!important; color:var(--sai-secondary-text); font-weight:500!important; }
/* Every secondary sidebar shares one panel treatment, including Settings' actor header.
   Settings' legacy layout uses important resets, so these surface values must win. */
.sai-console :is(.saia-sidebar,#scp-sidebar,#scc-sidebar,#scp-creator-sidebar) { padding:12px!important; border:1px solid var(--sai-border)!important; border-radius:10px!important; background:var(--sai-surface)!important; box-sizing:border-box; min-width:0; }
.sai-console :is(#scp-sidebar,#scc-sidebar,#scp-creator-sidebar) { position:relative; width:228px; flex-basis:228px; align-self:stretch; margin-bottom:0; }
.sai-console :is(#scp-sidebar,#scc-sidebar,#scp-creator-sidebar) > .scp-device-wrap { position:sticky; top:88px; gap:8px; min-height:0; padding:0; border:0; border-radius:0; background:none; justify-content:flex-start; }
/* Pass the available height through the real layout, including wrapped headings,
   notices and async panels. No fixed subtraction from the viewport is needed. */
.sai-console-body:has(.scp-accepted-body,.saia-grid) { display:flex; flex-direction:column; min-height:100dvh; }
.sai-console-body:has(.scp-accepted-body,.saia-grid) > .sai-console-topbar { flex-shrink:0; }
.sai-console-content:has(.scp-accepted-body,.saia-grid) { display:flex; flex-direction:column; flex:1; width:100%; padding-bottom:24px; }
.sai-console-content:has(.scp-accepted-body,.saia-grid) > .sai-page-heading { flex-shrink:0; }
.sai-console :is(.scp-container,.saia-container,.scp-list,.saia-list):has(.scp-accepted-body,.saia-grid) { display:flex; flex-direction:column; flex:1; height:auto; }
.sai-console :is(.saia-grid,.scp-accepted-body) { flex:1; height:auto; min-height:0!important; }
.sai-console .scp-accepted-body > .scp-details { height:auto; }
.sai-console .saia-grid { grid-template-rows:1fr; }
.sai-console :is(#scp-sidebar,#scc-sidebar,#scp-creator-sidebar) .scp-device-divider { margin:0 0 4px; }
.sai-console :is(#scp-sidebar,#scc-sidebar,#scp-creator-sidebar) .scp-device-card.overview { margin:0; border-color:var(--sai-border); }
.sai-console :is(#scp-sidebar,#scc-sidebar,#scp-creator-sidebar) .scp-overview-label .scp-device-name { margin:0; padding:0; }
.sai-console #scp-sidebar .scp-settings-menu .scp-device-card { display:flex; align-items:center; min-height:42px; padding:10px; box-sizing:border-box; }
.sai-console #scp-sidebar .scp-settings-menu .scp-device-name { margin:0; padding:0; line-height:1.5; }
.sai-console #scp-sidebar .scp-settings-menu .scp-device-card:hover { background:var(--sai-hover); }
.sai-console #scp-sidebar .scp-settings-menu .scp-device-card.active { border-color:var(--sai-accent-line); background:var(--sai-accent-soft); }
.sai-console #scp-sidebar .scp-settings-menu .scp-device-card.active .scp-device-name { color:var(--sai-link); }
@media(max-width:900px) {
 .sai-console .saia-grid { grid-template-rows:auto auto; flex:none; }
 .sai-console .scp-accepted-body { flex:none; }
 .sai-console :is(#scp-sidebar,#scc-sidebar,#scp-creator-sidebar) { position:static; width:100%; flex-basis:auto; margin:0; }
 .sai-console :is(#scp-sidebar,#scc-sidebar,#scp-creator-sidebar) > .scp-device-wrap { position:static; }
}
@media(min-width:901px) and (max-width:920px) {
 .sai-console #scc-sidebar { position:static; width:100%; flex-basis:auto; margin:0; }
 .sai-console #scc-sidebar > .scp-device-wrap { position:static; }
}
.sai-console .scp-overview-label { flex:1; }
.sai-console .scp-overview-icon { flex:0 0 40px; padding:12px; }
.sai-console .scp-gear-icon { width:14px; height:14px; }
.sai-console .scp-tabs { gap:20px; flex-wrap:wrap; border-bottom:1px solid var(--sai-line); margin-bottom:24px; }
.sai-console .scp-tab-btn { border:0; border-bottom:2px solid transparent; border-radius:0; background:none; padding:10px 0; min-height:42px; color:var(--sai-secondary-text); font-size:13px; font-weight:500; }
.sai-console .scp-tab-btn.active { background:none; border-bottom-color:var(--sai-accent); color:var(--sai-text); }
.sai-console .scp-policy-heading h2 { font-size:22px; }
.sai-console .scp-policy-fields { gap:0; }
.sai-console .scp-policy-card { padding:22px 0; border:0; border-top:1px solid var(--sai-line); border-radius:0; background:none; }
.sai-console .scp-policy-card header { margin-bottom:16px; }
.sai-console .scp-policy-card h3 { font-size:15px; font-weight:550; }
.sai-console .scp-policy-grid { gap:20px; }
.sai-console .scp-provider-model-catalog { padding:0; margin-top:24px; border:0; border-radius:0; background:none; }
.sai-console .scp-provider-model-catalog__shell { padding:0; border:0; border-radius:0; background:none; }
.sai-console .scp-provider-model-catalog__headline { font-size:20px; font-weight:550; }
.sai-console .scp-provider-model-catalog__subheadline { font-size:13px; color:var(--sai-secondary-text); }
.sai-console .scp-provider-model-catalog__list { gap:0; border:1px solid var(--sai-line); border-radius:10px; overflow:hidden; }
.sai-console .scp-provider-model-catalog__card { border:0; border-bottom:1px solid var(--sai-line); border-radius:0; padding:18px; gap:12px; }
.sai-console .scp-provider-model-catalog__card:last-child { border-bottom:0; }
.sai-console .scp-provider-model-catalog__identity { flex:1 1 260px; }
.sai-console .scp-provider-model-catalog__title { font-size:16px; font-weight:550; margin-top:5px; }
.sai-console .scp-provider-model-catalog__eyebrow { font-size:10px; font-weight:500; }
.sai-console .scp-provider-model-catalog__card :is(p,button) { font-size:12px; }
.sai-console .incentive-card { padding:20px; text-align:left; border-radius:10px; box-shadow:none; }
.sai-console .incentive-card:hover { transform:none; }
.sai-console .incentive-card.disabled { background:var(--sai-control)!important; border:1px solid var(--sai-line)!important; opacity:.65; }
.sai-console .incentive-card.disabled::before { color:var(--sai-secondary-text); }
.sai-console .inc-img { width:40px; margin-bottom:14px; }
.sai-console .inc-title { font-size:16px; }
.sai-console .inc-desc { font-size:13px; line-height:1.65; color:var(--sai-secondary-text); }
.sai-console .saia-content { min-height:0!important; padding:24px!important; }
.sai-console .saia-sidebar { min-height:0!important; }
.sai-console .saia-content form { padding-bottom:0; }
.sai-console .saia-content .saia-btn { width:auto!important; }
.sai-console .scp-creator-apply { padding:24px!important; }
/* API access has one active scope panel; selected scopes remain visible in tab counts. */
.sai-console .aak-access-tabs { display:flex; gap:24px; border-bottom:1px solid var(--sai-line); }
.sai-console .aak-access-tabs button { display:flex; gap:8px; align-items:center; min-height:42px; padding:10px 0; border:0; border-bottom:2px solid transparent; background:none; color:var(--sai-secondary-text); font:inherit; font-size:13px; cursor:pointer; }
.sai-console .aak-access-tabs button[aria-selected=true] { border-bottom-color:var(--sai-accent); color:var(--sai-text); }
.sai-console .aak-access-tabs button > span { padding:1px 6px; border-radius:4px; background:var(--sai-control); font-size:11px; }
.sai-console .aak-access-section { padding:0; border:0; border-radius:0; background:none; }
.sai-console .aak-access-section legend { display:none; }
.sai-console .aak-access-modes label { padding:8px 12px; border-radius:7px; font-size:12px; }
.sai-console .aak-access-options { max-height:290px; border-radius:8px; }
.sai-console .aak-access-option { min-height:52px; }
.sai-console .aak-access-option-icon { width:28px; height:28px; flex-basis:28px; border-radius:6px; }
.sai-console .aak-access-option-icon img { width:24px; height:24px; }
.sai-console .aak-access-chip { border-color:var(--sai-border); background:var(--sai-control); }
.sai-console .aak-access-modal .sai-modal__body { padding-top:20px; }
.sai-console .aak-access-modal #aak-access-title { font-size:22px; }
.sai-console .aak-access-save { background:var(--sai-accent); color:#fff; border-color:var(--sai-accent); }
.sai-console .aak-access-save:disabled { opacity:.45; }
.sai-console .aak-api-key-container .aak-api-key-list { border:0!important; padding:0!important; }
.sai-console .aak-api-key-container .aak-api-key-item { padding:18px!important; row-gap:12px; }
.sai-console .aak-access-summary { padding-top:12px; }
.sai-console .aak-edit-access { border-color:var(--sai-border); }
/* Chat: a readable composer shared by the public entry and workspace. */
.sai-console-body:has(> .sai-console-content--chat) { display:flex; flex-direction:column; height:100dvh; }
.sai-console-body:has(> .sai-console-content--chat) > .sai-console-topbar { flex-shrink:0; }
.sai-console-content--chat { flex:1; width:100%; max-width:none; min-height:0; padding-block:24px; }
.sai-console-content--chat > .sai-chat-container { height:100%; gap:0; }
.sai-console .sai-chat-container { backdrop-filter:none; transition:none; }
.sai-console .sai-chat-card { display:flex; flex-direction:column; height:100%; min-height:0; overflow:hidden; backdrop-filter:none; }
.sai-console .sai-top-bar { flex-shrink:0; padding:16px 20px; gap:16px; flex-direction:row; align-items:center; flex-wrap:wrap; border-bottom:1px solid var(--sai-line); }
.sai-console .sai-chat-title { margin:0; padding:0; color:var(--sai-text); font-size:14px; font-weight:600; line-height:20px; }
.sai-console .sai-premium-badge { color:var(--sai-secondary-text); font-size:13px; font-weight:400; }
.sai-console .sai-settings-right { gap:12px; min-width:0; max-width:100%; margin-left:auto; align-items:center; flex-wrap:wrap; }
.sai-console .sai-priority-container { border:0; padding:0; gap:10px; font-size:12px; align-items:center; }
.sai-console .sai-priority-text { font-size:12px; line-height:20px; }
.sai-console .sai-toggle-switch { display:block; flex:0 0 36px; width:36px; height:20px; margin:0; padding:0; border:0; line-height:1; }
.sai-console .sai-toggle-switch .slider { background:var(--sai-border); border-radius:20px; pointer-events:none; }
.sai-console .sai-toggle-switch .slider::before { background:#fff; width:14px; height:14px; left:3px; top:3px; bottom:auto; box-shadow:0 1px 3px #0003; }
.sai-console .sai-toggle-switch input:checked + .slider { background:var(--sai-accent); }
.sai-console .sai-toggle-switch input:checked + .slider::before { transform:translateX(16px); }
.sai-console .sai-toggle-switch input:focus-visible + .slider { outline:2px solid var(--sai-accent-line); outline-offset:3px; }
.sai-console .sai-model-btn { min-width:0; max-width:min(360px,100%); min-height:40px; padding:9px 12px; font-size:13px; line-height:20px; border-radius:8px; gap:9px; background:var(--sai-control); border:1px solid var(--sai-border); }
.sai-console .sai-model-btn .model-label { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sai-console .sai-model-btn :is(.status-dot,.chevron) { flex-shrink:0; }
.sai-console .sai-model-refresh-btn { display:grid; place-items:center; flex:0 0 40px; width:40px; height:40px; margin:0; padding:0; line-height:1; }
.sai-console .sai-model-refresh-btn svg { display:block; width:18px; height:18px; }
.sai-console #sai-chat-messages { min-height:40px; height:auto; flex:1; padding:20px; overflow-y:auto; overscroll-behavior-y:contain; }
.sai-console #sai-chat-messages > * { flex-shrink:0; }
.sai-console .sai-chat-instructions { flex-shrink:0; margin:0; padding:0 20px; border-bottom:1px solid var(--sai-line); font-size:12px; color:var(--sai-secondary-text); }
.sai-console .sai-chat-instructions summary { padding:12px 0; cursor:pointer; width:fit-content; }
.sai-console .sai-chat-instructions summary span { margin-left:12px; opacity:.8; }
.sai-console .sai-system-prompt { display:block; padding:0 0 14px; margin:0; border:0; border-radius:0; background:none; font-style:normal; font-size:14px; line-height:1.6; }
.sai-console #sai-system-content { display:block; width:100%; max-height:100px; overflow:auto; overflow-wrap:anywhere; white-space:pre-wrap; padding:12px; border:1px solid var(--sai-border); border-radius:8px; background:var(--sai-background); color:var(--sai-text); }
.sai-console .sai-greeting-overlay { position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:min(520px,85%); padding:0; font-size:clamp(18px,2vw,26px); line-height:1.4; font-weight:500; background:none; color:var(--sai-secondary-text); -webkit-text-fill-color:currentColor; }
.sai-console .sai-chat-input-row { display:flex; flex-direction:column; flex-shrink:0; align-items:stretch; gap:0; padding:16px 20px 12px; border-top:1px solid var(--sai-line); background:var(--sai-surface); }
.sai-console .sai-chat-input-row:focus-within { box-shadow:inset 0 2px 0 var(--sai-accent-line); }
.sai-console #sai-chat-input { display:block; flex:none; width:100%; min-width:0; min-height:88px; max-height:min(320px,32dvh); padding:8px 0 12px; margin:0; resize:none; border:0; border-radius:0; background:transparent; color:var(--sai-text); font:15px/1.75 var(--sai-ui-font-family); overflow-wrap:anywhere; box-sizing:border-box; box-shadow:none; }
.sai-console #sai-chat-input:focus { outline:none; box-shadow:none; }
.sai-console .sai-composer-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.sai-console #sai-composer-hint { font-size:11px; line-height:1.5; color:var(--sai-secondary-text); }
.sai-console .sai-composer-touch { display:none; }
.sai-console #sai-send-btn { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; margin:0; padding:0; border:1px solid var(--sai-accent); border-radius:12px; background:var(--sai-accent); color:#fff; cursor:pointer; transition:background .15s; }
.sai-console #sai-send-btn:hover { background:var(--sai-accent-hover); }
.sai-console #sai-send-btn svg { width:20px; height:20px; }
.sai-console #sai-send-btn.disabled { opacity:.4; cursor:default; }
.sai-console #sai-send-btn.is-sending svg { display:none; }
.sai-console #sai-send-btn.is-sending::after { content:''; width:16px; height:16px; border:2px solid #ffffff66; border-top-color:#fff; border-radius:50%; animation:sai-send-spin .8s linear infinite; }
@keyframes sai-send-spin { to { transform:rotate(360deg); } }
.sai-console .sai-chat-source { display:flex; align-items:center; gap:12px; margin:0 0 8px; padding:12px 14px; background:var(--sai-control); border:1px solid var(--sai-line); border-radius:9px; }
.sai-console .sai-chat-source[hidden] { display:none; }
.sai-console .sai-chat-source > span { color:var(--sai-secondary-text); flex-shrink:0; }
.sai-console .sai-chat-source svg { width:20px; height:20px; }
.sai-console .sai-chat-source > div { min-width:0; }
.sai-console .sai-chat-source small { display:block; font-size:9px; letter-spacing:.08em; color:var(--sai-secondary-text); margin-bottom:3px; }
.sai-console .sai-chat-source a { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--sai-text); font-size:12px; }
.sai-console .sai-chat-source a:hover { text-decoration:underline; }
/* Public Chat owns its height and introductory content. */
.sai-console:has(.sai-standalone-main .sai-chat-container--guest) { min-height:100dvh; }
.sai-standalone-main:has(.sai-chat-container--guest) { width:min(980px,calc(100% - 48px)); margin:0 auto; padding:clamp(24px,5vh,64px) 0 40px; }
.sai-console .sai-chat-container--guest { max-width:none; width:100%; margin:0; padding:0; background:none; gap:32px; border-radius:0; }
.sai-console .sai-chat-intro { text-align:center; padding:0 20px; }
.sai-console .sai-chat-eyebrow { display:block; font-size:10px; line-height:1.5; font-weight:600; letter-spacing:.13em; color:var(--sai-secondary-text); }
.sai-console .sai-chat-intro > .sai-chat-eyebrow { color:var(--sai-link); }
.sai-console .sai-chat-intro h1 { max-width:700px; margin:14px auto 16px; font-size:clamp(30px,3.7vw,48px); line-height:1.12; letter-spacing:-.045em; font-weight:550; color:var(--sai-text); }
.sai-console .sai-chat-intro p { margin:0; color:var(--sai-secondary-text); font-size:14px; line-height:1.8; }
.sai-console .sai-chat-container--guest .sai-chat-card { height:auto; flex:none; border-radius:16px!important; }
.sai-console .sai-chat-container--guest:not(.expanded) #sai-chat-messages { display:none; }
.sai-console .sai-chat-container--guest .sai-chat-input-row { border-top:0; padding:20px 24px 16px; }
.sai-console .sai-chat-container--guest #sai-chat-input { min-height:132px; font-size:16px; }
.sai-console .sai-chat-guest-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; flex-shrink:0; gap:12px 20px; padding:16px 24px; border-top:1px solid var(--sai-line); background:var(--sai-control); font-size:12px; }
.sai-console .sai-chat-guest-footer p { margin:0 auto 0 0; color:var(--sai-secondary-text); }
.sai-console .sai-chat-join-trigger { display:flex; align-items:center; gap:12px; padding:0; border:0; background:none; color:var(--sai-text); font:600 12px var(--sai-ui-font-family); min-height:28px; cursor:pointer; }
.sai-console .sai-chat-guest-footer a { color:var(--sai-secondary-text); }
.sai-console .sai-chat-container--guest.expanded { height:calc(100dvh - 180px); min-height:440px; }
.sai-console .sai-chat-container--guest.expanded .sai-chat-intro { display:none; }
.sai-console .sai-chat-container--guest.expanded .sai-chat-card { flex:1; min-height:0; }
.sai-console .sai-chat-container--guest.expanded #sai-chat-input { min-height:88px; }
/* Model dialog keeps search and pricing guidance outside the scrolling list. */
.sai-console :is(.sai-model-picker-modal,.sai-join-modal) .sai-modal__overlay { background:var(--sai-modal-overlay-base,#0008); backdrop-filter:blur(8px); }
.sai-console .sai-model-picker-modal .sai-modal__panel { width:min(800px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); }
.sai-console .sai-model-picker-modal .sai-modal__body { display:flex; flex-direction:column; padding:28px; gap:0; overflow:hidden; min-height:0; }
.sai-console .sai-model-picker-modal .model-picker-title { text-align:left; margin:10px 0; font-size:26px; line-height:1.2; font-weight:550; letter-spacing:-.035em; padding-right:30px; }
.sai-console .sai-model-picker-modal .model-picker-subtitle { text-align:left; font-size:13px; line-height:1.6; margin:0 0 22px; color:var(--sai-secondary-text); }
.sai-console .model-picker-show-row { justify-content:flex-start; gap:8px; flex-wrap:wrap; }
.sai-console .model-picker-show-row .show-label { display:none; }
.sai-console .model-picker-show-row .show-option { font-size:12px; padding:8px 10px; border-radius:7px; }
.sai-console #model-search { width:100%; min-height:46px; padding:12px 14px; border:1px solid var(--sai-border); border-radius:9px; background:var(--sai-background); color:var(--sai-text); font:14px var(--sai-ui-font-family); }
.sai-console .sai-model-list-caption { display:flex; justify-content:space-between; gap:12px; padding:0 14px 10px; color:var(--sai-secondary-text); font-size:10px; letter-spacing:.04em; }
.sai-console #model-list { display:flex; flex-direction:column; min-height:100px; height:min(400px,45dvh); max-height:none; flex:1 1 auto; overflow:auto; overscroll-behavior:contain; gap:0; border:1px solid var(--sai-line); border-radius:10px; padding:0; margin:0; scrollbar-width:thin; scrollbar-color:var(--sai-border) transparent; }
.sai-console #model-list .model-item { display:grid; grid-template-columns:minmax(0,1fr) 190px; flex-shrink:0; align-items:center; width:100%; gap:10px 18px; padding:18px 14px; margin:0; border:0; border-bottom:1px solid var(--sai-line); border-radius:0; background:var(--sai-surface); box-sizing:border-box; font-size:13px; }
.sai-console #model-list .model-item:last-child { border-bottom:0; }
.sai-console #model-list .model-item--disabled { opacity:1; cursor:default; text-decoration:none; }
.sai-console #model-list .model-item--disabled :is(.model-name,.model-credit-costs) { color:var(--sai-secondary-text); text-decoration:none; }
.sai-console #model-list .model-item:not(.model-item--disabled):hover { background:var(--sai-hover); transform:none; }
.sai-console #model-list .model-item.is-selected { background:var(--sai-accent-soft); box-shadow:inset 3px 0 var(--sai-accent); }
.sai-console #model-list .model-item-heading { display:grid; grid-template-columns:8px minmax(0,1fr); gap:5px 10px; }
.sai-console #model-list .model-name { min-width:0; font-size:13px; font-weight:500; overflow-wrap:anywhere; text-decoration:none; line-height:1.5; }
.sai-console #model-list .status-dot { width:6px; height:6px; margin:0; }
.sai-console #model-list .status-dot.offline { background:var(--sai-secondary-text); opacity:.55; }
.sai-console #model-list .sai-model-status { grid-column:2; font-size:10px; color:var(--sai-secondary-text); line-height:1.4; }
.sai-console #model-list .is-selected .sai-model-status { color:var(--sai-link); }
.sai-console #model-list .model-credit-costs { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0; font-size:12px; }
.sai-console #model-list .model-credit-costs > span { display:flex; flex-direction:column; gap:4px; }
.sai-console #model-list .model-credit-costs small { font-size:10px; color:var(--sai-secondary-text); }
.sai-console #model-list .model-credit-costs strong { font-size:12px; font-weight:500; color:inherit; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.sai-console #model-list .token-count { grid-column:1/-1; margin-left:18px; font-size:11px; }
.sai-console #model-list :is(.sai-model-load-error,.sai-model-search-empty,.sai-model-picker-state) { width:100%; margin:auto 0; padding:32px 18px; text-align:center; font-size:13px; color:var(--sai-secondary-text); list-style:none; }
.sai-console .sai-model-picker-modal .model-picker-pricing-note { flex-shrink:0; font-size:11px; line-height:1.6; margin:14px 0 0; color:var(--sai-secondary-text); }
.sai-console #model-load-more { flex-shrink:0; min-height:40px; text-align:center; }
/* Account invitation: contextual draft, concrete benefits, one primary action. */
.sai-console #join-modal { z-index:10000; background:none; backdrop-filter:none; }
.sai-console #join-modal[aria-hidden=true] { display:none; }
.sai-console #join-modal .sai-modal__panel { display:flex; flex-direction:column; width:min(540px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); }
.sai-console #join-modal .sai-modal__body { display:block; flex:1; min-height:0; padding:32px 32px 0; overflow:auto; }
.sai-console .sai-join-actions { flex-shrink:0; padding:20px 32px 24px; border-top:1px solid var(--sai-line); background:var(--sai-surface); }
.sai-console .sai-join-icon { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--sai-accent-line); border-radius:13px; background:var(--sai-accent-soft); color:var(--sai-link); margin-bottom:24px; }
.sai-console .sai-join-icon svg { width:22px; height:22px; }
.sai-console #sai-join-title { font-size:30px; line-height:1.12; letter-spacing:-.035em; font-weight:550; color:var(--sai-text); margin:10px 24px 12px 0; }
.sai-console #sai-join-description { color:var(--sai-secondary-text); font-size:14px; line-height:1.65; margin:0 0 20px; }
.sai-console .sai-join-draft { border:1px solid var(--sai-line); background:var(--sai-control); border-radius:10px; padding:14px; margin-bottom:22px; }
.sai-console .sai-join-draft p { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; font-size:13px; line-height:1.6; margin:7px 0; color:var(--sai-text); }
.sai-console .sai-join-draft small { font-size:11px; color:var(--sai-secondary-text); }
.sai-console .sai-join-benefits { display:grid; gap:20px; margin:22px 0 28px; padding:0; list-style:none; }
.sai-console .sai-join-benefits li { display:flex; gap:14px; align-items:flex-start; margin:0; padding:0; }
.sai-console .sai-join-benefits svg { width:18px; height:18px; flex-shrink:0; margin-top:2px; color:var(--sai-secondary-text); }
.sai-console .sai-join-benefits strong { display:block; font-size:13px; line-height:1.5; font-weight:550; color:var(--sai-text); }
.sai-console .sai-join-benefits li span { display:block; font-size:12px; line-height:1.6; margin-top:3px; color:var(--sai-secondary-text); }
.sai-console .sai-chat-cta { display:flex; align-items:center; justify-content:center; gap:16px; min-height:48px; padding:12px 16px; border:1px solid var(--sai-accent); border-radius:9px; background:var(--sai-accent); color:#fff; font-size:14px; font-weight:600; text-decoration:none; }
.sai-console .sai-chat-cta:hover { background:var(--sai-accent-hover); color:#fff; }
.sai-console #join-modal .sai-join-login-note { font-size:12px; line-height:1.7; margin:18px 0 0; color:var(--sai-secondary-text); }
.sai-console .sai-join-login-note a { color:var(--sai-text); font-weight:550; margin-left:6px; }
.sai-console .sai-join-offer { font-size:12px; line-height:1.6; color:var(--sai-secondary-text); margin:0 0 18px; }
.sai-console .sai-join-offer summary { cursor:pointer; }
.sai-console .sai-join-offer div { padding-top:10px; }
.sai-console :is(.sai-chat-container,.sai-model-picker-modal,.sai-join-modal) :is(button,a,summary,[contenteditable],input):focus-visible { outline:2px solid var(--sai-accent); outline-offset:3px; }
.sai-console #model-list .model-item:focus-visible { outline:2px solid var(--sai-accent); outline-offset:-3px; }
@media(max-width:800px) {
 .sai-console-content--chat { padding-block:16px; }
}
@media(max-width:600px) {
 .sai-standalone-main:has(.sai-chat-container--guest) { width:calc(100% - 24px); padding:20px 0 24px; }
 .sai-console .sai-chat-container--guest { gap:24px; }
 .sai-console .sai-chat-intro { padding:0 8px; }
 .sai-console .sai-chat-intro p { font-size:13px; }
 .sai-console .sai-chat-desktop-break { display:none; }
 .sai-console .sai-top-bar { padding:12px 14px; gap:10px; }
 .sai-console .sai-chat-title { flex-basis:100%; }
 .sai-console .sai-settings-right { width:100%; justify-content:flex-start; }
 .sai-console .sai-priority-container { flex:1 0 100%; }
 .sai-console .sai-model-btn { flex:1 1 0; max-width:100%; }
 .sai-console .sai-chat-instructions { padding-inline:14px; }
 .sai-console .sai-chat-instructions summary span { display:none; }
 .sai-console .sai-chat-input-row, .sai-console .sai-chat-container--guest .sai-chat-input-row { padding:12px 14px; }
 .sai-console #sai-chat-input { font-size:16px; line-height:1.65; }
 .sai-console .sai-composer-keyboard { display:none; }
 .sai-console .sai-composer-touch { display:inline; }
 .sai-console .sai-chat-guest-footer { padding:14px; gap:10px 20px; justify-content:flex-start; }
 .sai-console .sai-chat-guest-footer p { flex-basis:100%; font-size:11px; }
 .sai-console .sai-model-picker-modal .sai-modal__body { padding:24px 16px 16px; }
 .sai-console .sai-model-picker-modal .model-picker-title { font-size:24px; }
 .sai-console #model-list .model-item { grid-template-columns:minmax(0,1fr); gap:12px; padding:14px; }
 .sai-console #model-list .model-credit-costs { margin-left:18px; }
 .sai-console .sai-model-list-caption { padding-inline:4px; font-size:9px; }
 .sai-console #join-modal .sai-modal__body { padding:24px 20px 0; }
 .sai-console .sai-join-actions { padding:16px 20px 20px; }
 .sai-console #sai-join-title { font-size:27px; }
 .sai-console .sai-join-icon { margin-bottom:20px; }
 .sai-console .scp-tabs { gap:14px; }
 .sai-console .scp-creator-apply { padding:18px!important; }
}
@media(max-height:600px) {
 .sai-console .sai-model-picker-modal .sai-modal__body { overflow:auto; }
 .sai-console #model-list { min-height:140px; flex-shrink:0; }
 .sai-console .sai-chat-source { display:none; }
 .sai-console .sai-chat-instructions summary { padding-block:8px; }
 .sai-console .sai-chat-input-row { padding-block:8px; }
 .sai-console #sai-chat-input { min-height:56px; }
 .sai-console #sai-send-btn { height:36px; width:36px; flex-basis:36px; }
}
@media(prefers-reduced-motion:reduce) { .sai-console #sai-send-btn.is-sending::after { animation:none; } }

.sai-console .scp-device-card.overview { padding:0; background:var(--sai-surface); border-color:var(--sai-line); }
.sai-console .aak-access-modal .sai-modal__foot { flex-direction:row; flex-wrap:wrap; padding:16px 24px; }
.sai-console .aak-access-modal .sai-modal__foot .sai-btn { width:auto; }
.sai-console .aak-access-options { max-height:min(280px,30dvh); }
.sai-console #popup-modal .model-picker-show-row { margin:0 0 16px; }
.sai-console #popup-modal .model-search-wrapper { margin:0 0 16px!important; }
.sai-console #popup-modal .model-picker-show-row .show-text { font-size:12px; font-weight:500; }
.sai-console .scc-builder-overview { padding:0; border:0; border-radius:0; background:none; gap:20px; }
.sai-console .scc-builder-overview__head { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:20px; padding:24px; border:1px solid var(--sai-line); border-radius:10px; background:var(--sai-surface); }
.sai-console .scc-builder-overview__copy { min-width:0; gap:10px; }
.sai-console .scc-builder-overview__copy h2 { font-size:24px; font-weight:550; line-height:1.3; }
.sai-console .scc-builder-overview__copy p { font-size:13px; color:var(--sai-secondary-text); line-height:1.7; }
.sai-console .scc-builder-overview__eyebrow { font-size:10px; font-weight:500; letter-spacing:.06em; }
.sai-console .scc-builder-overview__tabs { margin-top:6px; gap:20px; border-bottom:1px solid var(--sai-line); }
.sai-console .scc-builder-overview__tab { padding:10px 0; border:0; border-bottom:2px solid transparent; border-radius:0; min-height:42px; background:none; color:var(--sai-secondary-text); font-size:13px; font-weight:500; box-shadow:none; }
.sai-console .scc-builder-overview__tab.is-active { color:var(--sai-text); background:none; border-bottom-color:var(--sai-accent); }
.sai-console .scc-builder-overview__actions { padding-top:22px; }
.sai-console .scc-builder-overview__actions .scc-btn { min-width:0; min-height:42px; padding:10px 16px; border-radius:8px; font-size:13px; font-weight:600; }
.sai-console .scc-builder-overview__actions .scc-btn:hover { transform:none; background:var(--sai-accent-hover); }
.sai-console .scc-builder-overview__actions .scc-btn:focus-visible { outline:2px solid var(--sai-accent); outline-offset:3px; }
.sai-console :is(.scc-builder-stat-card,.scc-builder-summary-card,.scc-builder-board-card,.scc-builder-period-card,.scc-builder-balance-card) { border:1px solid var(--sai-line); border-radius:10px; padding:20px; background:var(--sai-surface); box-shadow:none; min-width:0; }
.sai-console .scc-builder-summary-card { min-height:154px; gap:12px; align-content:start; }
.sai-console :is(.scc-builder-stat-card__value,.scc-builder-summary-card__value) { font-size:30px; font-weight:550; }
.sai-console :is(.scc-builder-stat-card__label,.scc-builder-summary-card__label,.scc-builder-board-card__eyebrow) { font-size:10px; font-weight:500; letter-spacing:.06em; }
.sai-console :is(.scc-builder-stat-card__note,.scc-builder-summary-card__note) { font-size:12px; line-height:1.6; color:var(--sai-secondary-text); }
.sai-console .scc-builder-board-card { gap:16px; min-height:0; align-content:start; }
.sai-console .scc-builder-board-card__head { gap:6px; }
.sai-console .scc-builder-board-card__head h3 { font-size:18px; font-weight:550; }
.sai-console .scc-builder-board-card__empty { margin:0; color:var(--sai-secondary-text); font-size:13px; line-height:1.7; }
/* Builder's legacy card rules must not override the shared navigation geometry. */
.sai-console #scc-sidebar .scp-device-card.overview { border-radius:7px; }
.sai-console #scc-sidebar .scp-overview-row { min-height:42px; }
.sai-console #scc-sidebar .scp-overview-label { border-radius:0; padding:10px 12px; }
.sai-console #scc-sidebar .scp-overview-icon { flex:0 0 40px; min-width:40px; padding:12px; border-radius:0; }
.sai-console #scc-sidebar .scp-gear-icon { width:14px; height:14px; }
.sai-console #scc-sidebar .scp-device-grid { gap:8px; }
.sai-console #scc-sidebar [data-app-id] { display:flex; flex-direction:column; align-items:stretch; gap:8px; padding:12px; border-radius:7px; }
.sai-console #scc-sidebar [data-app-id].active { border-color:var(--sai-accent-line); background:var(--sai-accent-soft); }
.sai-console #scc-sidebar .scp-device-status { position:static; align-self:flex-start; padding:4px 6px; font-size:9px; line-height:1.2; border-radius:4px; background:var(--sai-control); color:var(--sai-secondary-text); }
.sai-console #scc-sidebar .sharing .scp-device-status { background:light-dark(#e8f5ed,#1d3529); color:light-dark(#286a40,#a5dcb5); }
.sai-console #scc-sidebar .scc-sidebar-app-row { margin:0; gap:10px; }
.sai-console #scc-sidebar .scc-sidebar-app-avatar { width:36px; height:36px; flex-basis:36px; border-radius:8px; }
.sai-console #scc-sidebar .scp-device-name { margin:0; padding:0; }
.sai-console #scc-sidebar .scc-sidebar-app-type { font-size:11px; font-weight:400; color:var(--sai-secondary-text); }
.sai-console #scc-sidebar .scp-device-meta { margin:0; line-height:1.5; }
.sai-console .scc-overview-launchpad { padding:24px; border:1px solid var(--sai-line); border-radius:10px; background:var(--sai-surface); }
.sai-console .scc-overview-launchpad .scp-empty-head { font-size:24px; line-height:1.3; }
.sai-console .scc-overview-launchpad .scp-empty-body { font-size:13px; line-height:1.7; }
.sai-console .scc-overview-launchpad .scc-app-type-choice { padding:24px; border-radius:10px; text-align:left; align-items:flex-start; }
.sai-console .scc-overview-launchpad .scc-app-type-choice h4 { font-size:18px; line-height:1.4; }
.sai-console .scc-overview-launchpad .scc-app-type-choice p { font-size:13px; line-height:1.7; }
.sai-console .scc-overview-launchpad .scc-app-type-choice-note { font-size:12px; color:var(--sai-link); }
.sai-console .scc-overview-launchpad .scp-support-note { font-size:12px; }
.sai-console .scc-app-workspace { padding:0; min-height:0; border:0; border-radius:0; background:none; }
.sai-console .scc-app-workspace .scp-tabs { width:100%; padding:0; gap:20px; border:0; border-bottom:1px solid var(--sai-line); border-radius:0; background:none; }
.sai-console .scc-app-workspace .scp-tab-btn { padding:10px 0; border:0; border-bottom:2px solid transparent; border-radius:0; background:none; color:var(--sai-secondary-text); font-size:13px; font-weight:500; }
.sai-console .scc-app-workspace .scp-tab-btn.active { border-bottom-color:var(--sai-accent); color:var(--sai-text); }
.sai-console .scc-app-workspace-topbar h2 { font-size:24px; font-weight:550; line-height:1.3; }
.sai-console .scc-app-workspace .scc-btn { min-width:0; min-height:42px; padding:10px 16px; border-radius:8px; font-size:13px; font-weight:600; }
.sai-console .scc-app-workspace-card { padding:20px; gap:16px; border-color:var(--sai-line); border-radius:10px; }
.sai-console .scc-app-workspace-card__head h3 { font-size:16px; font-weight:550; }
.sai-console .scc-app-workspace-card__body-copy { font-size:13px; line-height:1.7; color:var(--sai-secondary-text); }
.sai-console .scc-rate-limit-shell { padding:0; border:0; border-radius:0; min-height:160px; }
.sai-console .scc-rate-limit-app { gap:12px; }
.sai-console .scc-rate-limit-app__avatar { width:48px; height:48px; flex-basis:48px; border-radius:10px; }
.sai-console .scc-rate-limit-app__copy strong { font-size:18px; font-weight:550; line-height:1.4; }
.sai-console :is(.scc-rate-limit-app__copy span,.scc-rate-limit-bar-meta span) { font-size:12px; }
.sai-console .scc-rate-limit-bar-meta strong { font-size:13px; font-weight:550; }
.sai-console .scc-user-rate-limit-box { min-height:160px; }
.sai-console .scc-user-rate-limit-box strong { font-size:36px; font-weight:550; }
.sai-console .scc-user-rate-limit-box span { font-size:13px; color:var(--sai-secondary-text); }
.sai-console .scc-use-case-row { grid-template-columns:40px minmax(0,1fr) auto; padding:14px; gap:12px; border-color:var(--sai-line); border-radius:8px; }
.sai-console .scc-use-case-row__icon { width:40px; height:40px; border-radius:8px; font-size:14px; }
.sai-console .scc-use-case-row__copy strong { font-size:14px; font-weight:550; }
.sai-console .scc-use-case-row__copy span { font-size:12px; line-height:1.6; color:var(--sai-secondary-text); }
.sai-console .scc-use-case-row__badge { font-size:10px; }
@media(min-width:921px) and (max-width:1200px) {
 .sai-console .scc-builder-overview__head { grid-template-columns:1fr; }
 .sai-console .scc-builder-overview__actions { padding:0; justify-items:start; }
 .sai-console .scc-builder-overview__performance { grid-template-columns:1fr; }
}
@media(max-width:920px) {
 .sai-console .shareai-connect-accepted { flex:none; }
 .sai-console .scc-builder-overview__head { padding:20px; }
}
@media(max-width:600px) {
 .sai-console .scc-use-case-row { grid-template-columns:40px minmax(0,1fr); }
 .sai-console .scc-use-case-row__badge { grid-column:2; justify-self:start; }
 .sai-console .scc-builder-overview__head { grid-template-columns:1fr; }
 .sai-console .scc-builder-overview__actions { padding:0; justify-items:stretch; }
 .sai-console .scc-builder-overview__actions .scc-btn { width:100%; }
}
.sai-console .mission-slider-head { font-size:20px; font-weight:550; }
.sai-console .mission-slider-sub { font-size:13px; color:var(--sai-secondary-text); }

.sai-console .mission-slider-widget .lbl-thumb { top:4px; transform:translateX(-50%); background:none; font-size:12px; }
.sai-console .mission-slider-wrap .static-labels { font-size:16px; justify-content:flex-start; gap:32px; }
