:root {
  font-family: Inter, "Microsoft YaHei UI", "PingFang SC", system-ui, sans-serif;
  color: #16243a;
  background: #edf4fb;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html, body { width: 100%; min-width: 1040px; min-height: 100%; margin: 0; }
body { background: radial-gradient(circle at 10% 0, #ffffff 0, #edf4fb 42%, #e5eef8 100%); }
[hidden] { display: none !important; }
button, input, textarea { font: inherit; }
button:not(:disabled), input[type="checkbox"] { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .58; }

.page-shell { min-height: 100vh; display: grid; grid-template-rows: auto 1fr; }
.topbar { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 28px; border-bottom: 1px solid #d6e1ee; background: rgba(255,255,255,.88); backdrop-filter: blur(18px); }
.topbar > div:first-child { min-width: 0; }
.topbar h1 { margin: 0 0 5px; font-size: 23px; }
.topbar p { margin: 0; overflow: hidden; color: #65758a; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.topbar-actions { flex: none; display: flex; align-items: center; gap: 12px; }
.session-controls { display: flex; align-items: center; gap: 9px; padding: 4px; border: 1px solid rgba(210,224,238,.86); border-radius: 13px; background: rgba(244,248,252,.82); box-shadow: inset 0 1px rgba(255,255,255,.85); }
.usage-pill, .provider-badge { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: #e8f1fb; color: #2d6399; font-size: 11px; font-weight: 800; padding: 5px 9px; white-space: nowrap; }

.import-view { width: min(1080px, calc(100% - 48px)); margin: 42px auto; display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 22px; align-items: start; }
.import-card, .notes-card { border: 1px solid #d8e3ef; border-radius: 18px; background: #fff; box-shadow: 0 18px 48px rgba(38,72,112,.1); }
.import-card { padding: 24px; }
.import-side { display: grid; gap: 16px; }
.notes-card { padding: 22px; color: #53647a; }
.notes-card h3 { margin: 0 0 14px; color: #1c2d44; }
.notes-card ul { margin: 0; padding-left: 20px; display: grid; gap: 12px; font-size: 13px; line-height: 1.65; }
.sponsor-card { position: relative; min-height: 112px; overflow: hidden; border: 1px solid #cbdcf1; border-radius: 18px; display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 19px 17px; color: #173e66; text-decoration: none; background: linear-gradient(135deg, #f8fbff 0%, #e7f2ff 52%, #eef0ff 100%); box-shadow: 0 16px 42px rgba(43,85,135,.13); isolation: isolate; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.sponsor-card::before { content: ""; position: absolute; z-index: -1; top: -70px; right: -42px; width: 150px; height: 150px; border-radius: 50%; background: radial-gradient(circle, rgba(89,137,229,.24), rgba(89,137,229,0) 68%); transition: transform .35s ease; }
.sponsor-card::after { content: ""; position: absolute; z-index: -1; inset: -45% auto -45% -52%; width: 34%; opacity: 0; transform: skewX(-18deg); background: rgba(255,255,255,.68); }
.sponsor-card:hover { border-color: #8eb6e4; box-shadow: 0 21px 50px rgba(38,82,134,.2); transform: translateY(-3px); }
.sponsor-card:hover::before { transform: scale(1.16) translate(-5px, 4px); }
.sponsor-card:hover::after { animation: sponsor-sheen .8s ease; }
.sponsor-label { position: absolute; top: 9px; right: 11px; border: 1px solid rgba(83,119,166,.22); border-radius: 999px; padding: 2px 6px; color: #6b7f98; background: rgba(255,255,255,.65); font-size: 9px; font-weight: 700; }
.sponsor-mark { position: relative; width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: linear-gradient(145deg, #2d75bd, #614fc3); box-shadow: 0 9px 22px rgba(52,84,174,.26); transform: rotate(-3deg); transition: transform .22s ease; }
.sponsor-card:hover .sponsor-mark { transform: rotate(2deg) scale(1.05); }
.sponsor-mark::before { content: ""; width: 25px; height: 17px; border: 2px solid #fff; border-radius: 4px; background: linear-gradient(145deg, transparent 47%, rgba(255,255,255,.95) 49% 53%, transparent 55%); }
.sponsor-mark i { position: absolute; width: 18px; height: 2px; opacity: .85; transform: translateY(-3px) rotate(32deg); background: #fff; }
.sponsor-copy { min-width: 0; display: grid; gap: 4px; }
.sponsor-copy strong { overflow: hidden; font-size: 17px; letter-spacing: -.01em; text-overflow: ellipsis; white-space: nowrap; }
.sponsor-copy small { color: #6b7e96; font-size: 11px; }
.sponsor-cta { align-self: end; display: flex; align-items: center; gap: 4px; margin-bottom: 3px; color: #386eaa; font-size: 10px; font-weight: 800; white-space: nowrap; }
.sponsor-cta b { font-size: 14px; transition: transform .2s ease; }
.sponsor-card:hover .sponsor-cta b { transform: translate(2px, -2px); }
@keyframes sponsor-sheen {
  0% { left: -52%; opacity: 0; }
  22% { opacity: .85; }
  100% { left: 128%; opacity: 0; }
}
.section-heading { display: flex; justify-content: space-between; gap: 20px; align-items: start; margin-bottom: 16px; }
.section-heading h2 { margin: 0 0 6px; font-size: 19px; }
.section-heading p { margin: 0; color: #718096; font-size: 13px; }
.section-heading code { color: #185c9d; }
.section-heading strong { color: #48739e; font-size: 13px; }
.section-heading strong.over-limit { color: #c53b4a; }
#account-input { width: 100%; min-height: 330px; resize: vertical; border: 1px solid #cbd9e8; border-radius: 12px; padding: 14px; outline: none; color: #24364e; background: #f9fbfe; line-height: 1.6; font-family: Consolas, monospace; font-size: 12px; }
#account-input:focus, .search-input:focus, .subject-search input:focus { border-color: #4b8fd0; box-shadow: 0 0 0 3px rgba(75,143,208,.14); }
.import-options { margin: 14px 0; display: flex; gap: 18px; color: #67788e; font-size: 12px; }
.import-options label { display: flex; gap: 8px; color: #344b66; }
.primary-button, .danger-button, .secondary-button, .mode-button, .api-help-button, .subject-search button, .code-panel button { border: 0; border-radius: 9px; padding: 10px 15px; font-weight: 700; }
.primary-button, .subject-search button, .code-panel button { color: #fff; background: #236cad; }
.primary-button { width: 100%; min-height: 43px; }
.primary-button:hover, .subject-search button:hover, .code-panel button:hover { background: #185d9b; }
.session-action { position: relative; min-height: 38px; overflow: hidden; isolation: isolate; white-space: nowrap; box-shadow: 0 4px 12px rgba(39,78,116,.08); transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.session-action::after { content: ""; position: absolute; z-index: -1; inset: -40% auto -40% -55%; width: 38%; opacity: 0; transform: skewX(-18deg); background: rgba(255,255,255,.58); pointer-events: none; }
.session-action:hover { transform: translateY(-1px); box-shadow: 0 8px 18px rgba(39,78,116,.16); }
.session-action:hover::after { animation: action-sheen .72s ease; }
.session-action:active { transform: translateY(0) scale(.98); }
.danger-button { color: #a2293a; background: linear-gradient(135deg, #fff3f5, #fbdfe4); }
.danger-button:hover { color: #8f1f31; background: linear-gradient(135deg, #ffe9ed, #f8d3da); }
.mode-button { color: #286493; background: linear-gradient(135deg, #edf6fe, #dcecf9); }
.mode-button.active { color: #fff; background: linear-gradient(135deg, #347fba, #275f91); }
.mode-button:hover { background: linear-gradient(135deg, #e1f0fc, #cfe5f7); }
.mode-button.active:hover { background: linear-gradient(135deg, #2e74ad, #225580); }
.api-help-button { display: inline-flex; align-items: center; gap: 8px; color: #27684e; background: linear-gradient(135deg, #eaf9f2, #d8f0e5); }
.api-help-button:hover { color: #1e5b43; background: linear-gradient(135deg, #dff6eb, #c9eadb); }
.api-help-button > span { width: 8px; height: 8px; flex: none; border-radius: 50%; background: #28a56f; box-shadow: 0 0 0 0 rgba(40,165,111,.38); animation: api-dot-pulse 2s ease-out infinite; }
.secondary-button { color: #46637f !important; background: #eaf1f8 !important; }
.error-text { margin: 0 0 12px; padding: 10px 12px; border-radius: 8px; color: #ae2637; background: #fff0f2; font-size: 12px; }

@keyframes action-sheen {
  0% { left: -55%; opacity: 0; }
  25% { opacity: .8; }
  100% { left: 125%; opacity: 0; }
}
@keyframes api-dot-pulse {
  0%, 45% { box-shadow: 0 0 0 0 rgba(40,165,111,.38); }
  75%, 100% { box-shadow: 0 0 0 8px rgba(40,165,111,0); }
}

.workspace { height: calc(100vh - 88px); height: calc(100dvh - 88px); min-height: 620px; display: grid; grid-template-columns: clamp(250px, 20vw, 320px) clamp(360px, 29vw, 460px) minmax(430px, 1fr); overflow: hidden; background: #fff; scroll-margin-top: 0; }
.account-column, .message-column, .detail-column { min-width: 0; min-height: 0; overflow: hidden; }
.account-column, .message-column { border-right: 1px solid #dce5ef; }
.account-column { display: grid; grid-template-rows: auto auto minmax(0, 1fr); background: #f6f9fd; }
.column-toolbar { min-height: 66px; padding: 15px 16px 10px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.column-toolbar > div { display: flex; align-items: center; gap: 8px; }
.column-toolbar h2 { margin: 0; font-size: 16px; }
.column-toolbar > div span { color: #7a8a9d; font-size: 12px; }
.switch-label { display: flex; align-items: center; gap: 6px; font-size: 11px; color: #51657d; }
.search-input { margin: 0 14px 10px; width: calc(100% - 28px); border: 1px solid #ccd9e7; border-radius: 9px; padding: 9px 11px; outline: none; background: #fff; }
.account-list { min-height: 0; overflow: auto; padding: 0 9px 12px; }
.account-item { width: 100%; border: 0; border-radius: 10px; display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 9px; align-items: center; padding: 9px; color: inherit; text-align: left; background: transparent; }
.account-item:hover { background: #eaf2fa; }
.account-item.active { background: #dcecfb; box-shadow: inset 3px 0 #3180c4; }
.account-item.error { background: #fff0f2; }
.avatar { width: 34px; height: 34px; border-radius: 9px; display: grid; place-items: center; color: #fff; background: linear-gradient(135deg, #2d7abe, #59a1df); font-weight: 800; }
.account-copy { min-width: 0; display: grid; gap: 3px; }
.account-copy strong, .account-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.account-copy strong { font-size: 13px; }
.account-copy small { color: #718197; font-size: 11px; }
.account-item.error small { color: #bc3445; }

.message-column { display: grid; grid-template-rows: auto auto minmax(0, 1fr); }
.subject-search { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 8px; padding: 12px; border-bottom: 1px solid #e0e8f1; }
.subject-search input { min-width: 0; border: 1px solid #cddae8; border-radius: 9px; padding: 9px 10px; outline: none; }
.subject-search button { padding: 8px 11px; font-size: 12px; }
.message-heading { min-height: 78px; padding: 13px 15px; display: flex; justify-content: space-between; gap: 10px; border-bottom: 1px solid #e0e8f1; }
.message-heading h2 { margin: 0 0 5px; max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 15px; }
.message-heading p { margin: 0; color: #77889c; font-size: 11px; }
.folder-tabs { display: flex; align-self: start; gap: 4px; padding: 3px; border-radius: 9px; background: #edf3f9; }
.message-actions { display: grid; justify-items: end; gap: 6px; }
.refresh-button { border: 0; border-radius: 7px; padding: 5px 8px; color: #2c6fa8; background: #e7f1fa; font-size: 10px; }
.folder-tabs button { border: 0; border-radius: 7px; padding: 6px 8px; color: #61738a; background: transparent; font-size: 11px; }
.folder-tabs button.active { color: #1d639f; background: #fff; box-shadow: 0 2px 8px rgba(42,82,120,.12); }
.message-content { min-height: 0; position: relative; overflow: hidden; }
.message-list { height: 100%; min-height: 0; overflow: auto; overscroll-behavior: contain; }
.message-item { width: 100%; border: 0; border-bottom: 1px solid #e5ebf2; display: grid; gap: 7px; padding: 14px 15px; color: inherit; text-align: left; background: #fff; }
.message-item:hover { background: #f5f9fd; }
.message-item.active { background: #eaf4fd; box-shadow: inset 3px 0 #2e7fc3; }
.message-top, .message-bottom { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.message-top strong, .message-subject, .message-bottom span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.message-top strong { font-size: 13px; }
.message-top time, .message-bottom { color: #7e8da0; font-size: 11px; }
.message-subject { font-size: 13px; font-weight: 650; }
.message-bottom span { flex: 1; }
.message-bottom mark { border-radius: 6px; padding: 3px 6px; color: #9c5c00; background: #fff0bc; font: 800 12px Consolas, monospace; }
.empty-state { min-height: 100%; display: grid; place-items: center; padding: 30px; color: #8391a3; text-align: center; font-size: 13px; }

.detail-column { overflow: auto; background: #fbfdff; }
.detail-empty { min-height: 100%; display: grid; place-content: center; justify-items: center; padding: 50px; color: #8492a4; text-align: center; }
.detail-empty h2 { margin: 0 0 8px; color: #53647b; }
.detail-empty p { max-width: 440px; margin: 0; line-height: 1.7; font-size: 13px; }
.spinner { width: 24px; height: 24px; margin-bottom: 12px; border: 3px solid #d9e5f0; border-top-color: #2c78b8; border-radius: 50%; animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.detail { min-height: 100%; padding: clamp(22px, 2vw, 32px); }
.detail header { padding-bottom: 18px; border-bottom: 1px solid #dfe7f0; }
.detail-title { display: flex; align-items: start; justify-content: space-between; gap: 14px; }
.detail-title h2 { margin: 0 0 9px; font-size: 20px; line-height: 1.45; }
.detail time { color: #718197; font-size: 12px; }
.detail dl { margin: 16px 0 0; display: grid; gap: 7px; }
.detail dl div { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 8px; font-size: 12px; }
.detail dt { color: #8492a4; }
.detail dd { margin: 0; overflow-wrap: anywhere; }
.code-panel { margin: 18px 0; border: 1px solid #efcf87; border-radius: 12px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 16px; background: #fff9e8; }
.code-panel > div { display: grid; grid-template-columns: auto auto; align-items: baseline; gap: 4px 14px; }
.code-panel span { color: #8a6a2b; font-size: 11px; }
.code-panel strong { color: #925c00; font: 800 25px Consolas, monospace; letter-spacing: 3px; }
.code-panel small { grid-column: 1 / -1; color: #a08143; font-size: 10px; }
.detail-text { min-height: 260px; margin: 18px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; color: #27384e; line-height: 1.75; font: 13px/1.75 "Microsoft YaHei UI", sans-serif; user-select: text; }

.connection-loading { position: fixed; inset: 0; z-index: 40; display: grid; place-items: center; padding: 24px; background: rgba(230,239,249,.76); backdrop-filter: blur(8px); }
.connection-loading-card { width: min(390px, calc(100vw - 48px)); border: 1px solid rgba(190,211,232,.9); border-radius: 18px; display: grid; justify-items: center; padding: 30px 28px 26px; text-align: center; background: rgba(255,255,255,.96); box-shadow: 0 24px 70px rgba(38,72,112,.2); }
.connection-loading-card h2 { margin: 17px 0 8px; font-size: 20px; }
.connection-loading-card p { min-height: 21px; margin: 0; color: #4d6580; font-size: 13px; }
.connection-loading-card small { margin-top: 12px; color: #8291a3; line-height: 1.6; font-size: 11px; }
.connection-spinner { width: 50px; height: 50px; border: 4px solid #dce9f5; border-top-color: #2475b9; border-right-color: #68a8dc; border-radius: 50%; animation: spin .8s linear infinite; box-shadow: 0 0 0 8px rgba(70,139,198,.08); }
.connection-progress { width: 100%; height: 7px; margin-top: 17px; overflow: hidden; border-radius: 999px; background: #e8f0f8; }
.connection-progress span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2475b9, #69aee2); transition: width .25s ease; }

.provider-choice { position: fixed; inset: 0; z-index: 45; display: grid; place-items: center; padding: 24px; }
.provider-choice-backdrop { position: absolute; inset: 0; background: rgba(20,39,61,.42); backdrop-filter: blur(5px); }
.provider-choice-card { position: relative; width: min(560px, calc(100vw - 48px)); border: 1px solid #d3e1ee; border-radius: 18px; padding: 28px; background: #fff; box-shadow: 0 26px 80px rgba(17,46,79,.28); }
.provider-choice-card h2 { margin: 0 0 9px; color: #1e3047; font-size: 20px; }
.provider-choice-card > p { margin: 0; color: #6b7d92; font-size: 13px; line-height: 1.6; }
.provider-choice-card > small { display: block; margin-top: 16px; color: #8493a5; font-size: 11px; }
.provider-choice-close { position: absolute; top: 10px; right: 13px; width: 30px; height: 30px; border: 0; border-radius: 50%; color: #75869a; background: transparent; font-size: 24px; line-height: 1; }
.provider-choice-close:hover { color: #2b5f8c; background: #edf4fa; }
.provider-choice-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.provider-choice-option { min-height: 126px; border: 1px solid #c9dceb; border-radius: 13px; display: grid; align-content: center; gap: 9px; padding: 18px; color: #225e91; text-align: left; background: #f5faff; transition: .16s ease; }
.provider-choice-option:hover { border-color: #4d93cc; background: #eaf5fd; box-shadow: 0 8px 22px rgba(44,113,168,.14); transform: translateY(-1px); }
.provider-choice-option.graph { border-color: #d7d0ef; color: #5e4b9a; background: #faf8ff; }
.provider-choice-option.graph:hover { border-color: #927dcc; background: #f4f0ff; box-shadow: 0 8px 22px rgba(102,77,165,.14); }
.provider-choice-option strong { font-size: 16px; }
.provider-choice-option span { color: #718399; font-size: 12px; line-height: 1.55; }

.api-help-modal { position: fixed; inset: 0; z-index: 48; display: grid; place-items: center; padding: 24px; }
.api-help-backdrop { position: absolute; inset: 0; background: rgba(18,38,59,.48); backdrop-filter: blur(7px); animation: api-backdrop-in .2s ease both; }
.api-help-card { position: relative; width: min(650px, calc(100vw - 48px)); border: 1px solid rgba(198,219,210,.95); border-radius: 20px; padding: 29px; background: linear-gradient(145deg, #fff 0%, #fbfffd 72%, #f0faf5 100%); box-shadow: 0 28px 90px rgba(17,47,75,.3); animation: api-card-in .28s cubic-bezier(.2,.75,.3,1) both; }
.api-help-card::before { content: ""; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 1px rgba(255,255,255,.9); pointer-events: none; }
.api-help-close { position: absolute; top: 12px; right: 14px; width: 32px; height: 32px; border: 0; border-radius: 50%; color: #708297; background: rgba(235,244,239,.84); font-size: 23px; line-height: 1; transition: transform .18s ease, background .18s ease; }
.api-help-close:hover { color: #245e47; background: #dff1e8; transform: rotate(8deg); }
.api-help-kicker { display: flex; align-items: center; gap: 8px; margin-bottom: 9px; color: #2f7a5b; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.api-help-kicker span { width: 9px; height: 9px; border-radius: 50%; background: #2aaa73; box-shadow: 0 0 0 6px rgba(42,170,115,.1); }
.api-help-card h2 { margin: 0 0 9px; color: #19392e; font-size: 22px; }
.api-help-card > p { margin: 0; max-width: 570px; color: #60766d; font-size: 13px; line-height: 1.7; }
.api-method-line { margin-top: 19px; border: 1px solid #d6e8df; border-radius: 11px; display: flex; align-items: center; gap: 12px; padding: 11px 13px; background: rgba(241,249,245,.9); }
.api-method-line strong { border-radius: 6px; padding: 4px 7px; color: #fff; background: #23865d; font-size: 11px; letter-spacing: .06em; }
.api-method-line code { min-width: 0; overflow: hidden; color: #315b4b; text-overflow: ellipsis; white-space: nowrap; font: 12px Consolas, monospace; }
.api-email-field { display: grid; gap: 7px; margin-top: 16px; color: #526b61; font-size: 11px; font-weight: 700; }
.api-email-field input { width: 100%; border: 1px solid #cbded5; border-radius: 9px; padding: 10px 11px; outline: none; color: #213b31; background: #fff; font: 12px Consolas, monospace; }
.api-email-field input:focus { border-color: #4baf83; box-shadow: 0 0 0 3px rgba(75,175,131,.14); }
.api-url-box { margin-top: 9px; border: 1px solid #d2e2da; border-radius: 10px; display: grid; grid-template-columns: minmax(0,1fr) auto; overflow: hidden; background: #fff; }
.api-url-box code { min-width: 0; overflow-x: auto; padding: 11px 12px; color: #28503f; white-space: nowrap; font: 11px Consolas, monospace; user-select: text; }
.api-url-box button { border: 0; border-left: 1px solid #d2e2da; padding: 9px 13px; color: #fff; background: linear-gradient(135deg, #30976d, #237854); font-size: 11px; font-weight: 800; }
.api-url-box button:hover { background: linear-gradient(135deg, #278b62, #1d6849); }
.api-help-points { margin: 17px 0 0; padding-left: 20px; display: grid; gap: 7px; color: #60736b; font-size: 12px; line-height: 1.55; }
.api-help-points code { color: #287252; font-family: Consolas, monospace; }
.api-response-example { margin-top: 17px; display: grid; gap: 7px; }
.api-response-example > span { color: #667c72; font-size: 11px; font-weight: 700; }
.api-response-example pre { margin: 0; overflow-x: auto; border-radius: 10px; padding: 12px 13px; color: #dff8eb; background: #17362b; font: 11px/1.6 Consolas, monospace; user-select: text; }

@keyframes api-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes api-card-in { from { opacity: 0; transform: translateY(15px) scale(.97); } to { opacity: 1; transform: translateY(0) scale(1); } }

.toast-region { position: fixed; right: 22px; bottom: 22px; z-index: 20; display: grid; gap: 8px; pointer-events: none; }
.toast { max-width: 420px; border: 1px solid #c9dfd3; border-radius: 10px; padding: 11px 14px; color: #276644; background: #effaf4; box-shadow: 0 12px 34px rgba(36,69,102,.18); opacity: 0; transform: translateY(8px); transition: .18s ease; font-size: 12px; }
.toast.error { border-color: #efc8ce; color: #a72f3e; background: #fff1f3; }
.toast.visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1250px) {
  .workspace { grid-template-columns: 250px 360px minmax(430px, 1fr); }
}
@media (max-width: 620px) {
  .provider-choice-options { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .session-action, .api-help-backdrop, .api-help-card, .api-help-button > span, .sponsor-card, .sponsor-card::before, .sponsor-mark, .sponsor-cta b { animation: none !important; transition: none !important; }
}
