/* Shared presentation contract. State comes from the owning workflow, never
   from guessing the words in a status message. Keep overrides in one place. */
body:has(#appShell.ui-workspace) {
  --status-neutral-fg: var(--ui-ink-secondary, #667488);
  --status-neutral-bg: var(--ui-surface-muted, #f5f7fa);
}
#appShell.ui-workspace :is(.app-status, .badge, .status-pill, .connections-status, .connections-schedule-status, .pos-status-chip, .admin-table-status, .import-status, .admin-support-status, .dashboard-top-status-pill, .marketplace-sync-pill, .connections-notification-badge, .admin-policy-signature-status),
body:has(#appShell.ui-workspace) .modal :is(.app-status, .connections-status, .badge) {
  --state-ink: var(--ui-ink-secondary, #667488);
  --state-fill: var(--ui-surface-muted, #f5f7fa);
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  padding:5px 8px !important; min-height:24px; min-width:0;
  border:1px solid transparent !important; border-radius:6px !important;
  background:var(--state-fill) !important; color:var(--state-ink) !important;
  box-shadow:none !important; font-size:11px !important; font-weight:550 !important;
  line-height:1.4 !important; letter-spacing:0 !important; text-transform:none;
  max-width:100%; white-space:normal; overflow-wrap:anywhere;
}
#appShell.ui-workspace :is(.app-status[data-tone="success"], .badge.exact, .badge.info, .connections-status.is-connected, .import-status--imported, .admin-support-status:is(.is-healthy,.is-connected,.is-active,.is-success), .dashboard-top-status-pill.status-ok, .marketplace-sync-pill.is-connected) {
  --state-ink:var(--ui-green); --state-fill:var(--ui-green-soft);
}
#appShell.ui-workspace :is(.app-status[data-tone="warning"], .badge.near, .badge.ok, .connections-status.is-attention, .import-status--review, .admin-support-status:is(.is-attention,.is-needs_attention,.is-needs_review,.is-partial,.is-medium), .dashboard-top-status-pill.status-warn, .marketplace-sync-pill:is(.is-attention,.is-soon)) {
  --state-ink:var(--ui-amber); --state-fill:var(--ui-amber-soft);
}
#appShell.ui-workspace :is(.app-status[data-tone="error"], .badge.none, .import-status--error, .admin-support-status:is(.is-error,.is-failed,.is-revoked,.is-critical,.is-high), .dashboard-top-status-pill.status-err) {
  --state-ink:var(--ui-red); --state-fill:var(--ui-red-soft);
}
#appShell.ui-workspace :is(.app-status[data-tone="info"], .import-status--ready, .import-status--processing, .admin-support-status.is-in_progress, .marketplace-sync-pill.is-running) {
  --state-ink:var(--ui-blue); --state-fill:var(--ui-blue-soft);
}
#appShell.ui-workspace :is(.pos-status-chip.is-matched,.pos-status-chip.is-paid,.connections-schedule-status.is-configured,.admin-table-status.is-active) { --state-ink:var(--ui-green); --state-fill:var(--ui-green-soft); }
#appShell.ui-workspace :is(.pos-status-chip.is-review,.pos-status-chip.is-not-found) { --state-ink:var(--ui-amber); --state-fill:var(--ui-amber-soft); }
#appShell.ui-workspace :is(.pos-status-chip.is-error,.connections-schedule-status.is-error,.admin-table-status.is-revoked) { --state-ink:var(--ui-red); --state-fill:var(--ui-red-soft); }
/* Inline feedback, validation and notifications use the same quiet state strip.
   No role=status catch-all: progress meters and data regions are not banners. */
body:has(#appShell.ui-workspace) :is(.app-message,.status-msg--ok,.status-msg--warn,.status-msg--error,.import-source-status,.marketplace-sync-run-status,.security-message,.connections-hub-message,.connections-editor-message,.modal-message,.admin-message,.admin-inline-status,.dashboard-missing-manual-message,.marketplace-pos-load-status,.connections-notification-save-state,[data-notification-status],[id="connectionsWorkflowAlertsStatus"]):not(:empty) {
  --message-ink:var(--ui-ink-secondary,#667488); --message-fill:var(--ui-surface-muted,#f5f7fa);
  padding:10px 13px !important; min-height:36px;
  border:1px solid var(--ui-line,#e4e9ef) !important; border-radius:8px !important;
  box-shadow:none !important; background:var(--message-fill) !important;
  color:var(--message-ink) !important; font-size:12px !important; font-weight:500 !important;
  line-height:1.6 !important; overflow:visible !important; overflow-wrap:anywhere;
  width:auto; max-width:100%; letter-spacing:0;
}
body:has(#appShell.ui-workspace) :is(.app-message,.security-message,.connections-hub-message,.connections-editor-message,.modal-message,.admin-message,.admin-inline-status,.dashboard-missing-manual-message,.marketplace-pos-load-status,.connections-notification-save-state,[data-notification-status],[id="connectionsWorkflowAlertsStatus"]):is(.success,.is-success,[data-state="success"],[data-state="saved"]) {
  --message-ink:var(--ui-green,#147d60); --message-fill:var(--ui-green-soft,#edf8f3);
}
body:has(#appShell.ui-workspace) :is(.app-message,.security-message,.connections-hub-message,.connections-editor-message,.modal-message,.admin-message,.admin-inline-status,.dashboard-missing-manual-message,.marketplace-pos-load-status,.connections-notification-save-state,[data-notification-status],[id="connectionsWorkflowAlertsStatus"]):is(.warn,.is-warn,.is-warning,[data-state="warning"]) {
  --message-ink:var(--ui-amber,#98651c); --message-fill:var(--ui-amber-soft,#fff6e7);
}
body:has(#appShell.ui-workspace) :is(.app-message,.security-message,.connections-hub-message,.connections-editor-message,.modal-message,.admin-message,.admin-inline-status,.dashboard-missing-manual-message,.marketplace-pos-load-status,.connections-notification-save-state,[data-notification-status],[id="connectionsWorkflowAlertsStatus"]):is(.error,.is-error,[data-state="error"]) {
  --message-ink:var(--ui-red,#c13939); --message-fill:var(--ui-red-soft,#fff0f0);
}
body:has(#appShell.ui-workspace) :is(.app-message,.security-message,.connections-hub-message,.connections-editor-message,.modal-message,.admin-message,.admin-inline-status,.marketplace-pos-load-status):is(.is-info,[data-state="info"],[data-state="loading"]) {
  --message-ink:var(--ui-blue,#1671ec); --message-fill:var(--ui-blue-soft,#edf4ff);
}
#appShell.ui-workspace #paneConnections.utility-page .connections-hub-message::before { display:none; }
body:has(#appShell.ui-workspace) .status-msg--ok:not(:empty) { --message-ink:var(--ui-green,#147d60); --message-fill:var(--ui-green-soft,#edf8f3); }
body:has(#appShell.ui-workspace) .status-msg--warn:not(:empty) { --message-ink:var(--ui-amber,#98651c); --message-fill:var(--ui-amber-soft,#fff6e7); }
body:has(#appShell.ui-workspace) :is(.status-msg--error,.marketplace-sync-run-status.is-error):not(:empty) { --message-ink:var(--ui-red,#c13939); --message-fill:var(--ui-red-soft,#fff0f0); }
body:has(#appShell.ui-workspace) .toast { border-radius:9px; padding:12px 16px; box-shadow:0 8px 24px #14223515; font-size:12px; line-height:1.5; max-width:min(440px,calc(100vw - 32px)); overflow-wrap:anywhere; }
body:has(#appShell.ui-workspace) .toast-icon { width:22px; height:22px; border-radius:6px; display:grid; place-items:center; flex:none; }
body:has(#appShell.ui-workspace) .toast-success { background:#edf8f3; color:#147d60; border:1px solid #cde8dc; }
body:has(#appShell.ui-workspace) .toast-error { background:#fff0f0; color:#b32d35; border:1px solid #f2d0d3; }
body:has(#appShell.ui-workspace) .toast-warn { background:#fff6e7; color:#865713; border:1px solid #efdfbd; }
body:has(#appShell.ui-workspace) .toast-info { background:#edf4ff; color:#215dab; border:1px solid #d0e1fa; }
body:has(#appShell[data-ui-theme="dark"]) .toast-success { background:#19362f; color:#70ceb0; border-color:#2a5146; }
body:has(#appShell[data-ui-theme="dark"]) .toast-error { background:#3c252b; color:#ffabb1; border-color:#66404a; }
body:has(#appShell[data-ui-theme="dark"]) .toast-warn { background:#382f21; color:#ecc486; border-color:#5f4e31; }
body:has(#appShell[data-ui-theme="dark"]) .toast-info { background:#1d314b; color:#8bbdff; border-color:#334d70; }
body:has(#appShell.ui-workspace) .toast .toast-icon { color:inherit; }

/* Utility pages: the approved flatter panels, restrained accents and tighter
   controls, without changing the main workspace or Admin navigation. */
#appShell.ui-workspace .utility-page { --utility-radius:11px; gap:22px; }
#appShell.ui-workspace .utility-page > .workspace-page-head { padding:0 0 8px; margin:0; background:none; border:0; }
#appShell.ui-workspace .utility-page > .workspace-page-head h2 { font-size:30px; letter-spacing:-.035em; }
#appShell.ui-workspace .utility-page > .workspace-page-head p { font-size:13px; line-height:1.65; }
#appShell.ui-workspace .utility-page :is(.btn,.btn-outline,.chip-btn) { font-size:12px; border-radius:7px; box-shadow:none; }
#appShell.ui-workspace .utility-page .utility-kicker { font-size:10px; letter-spacing:.1em; color:var(--ui-ink-secondary); }
#appShell.ui-workspace .utility-page .utility-tabs { display:flex; gap:22px; flex-wrap:wrap; border-bottom:1px solid var(--ui-line); margin:0 0 22px; }
#appShell.ui-workspace .utility-page .utility-tabs button { padding:10px 0 13px; border:0; border-bottom:2px solid transparent; background:none; border-radius:0; color:var(--ui-ink-secondary); font-size:12px; }
#appShell.ui-workspace .utility-page .utility-tabs button[aria-pressed="true"] { color:var(--ui-blue); border-bottom-color:var(--ui-blue); }
#appShell.ui-workspace .utility-callout { padding:17px 22px; background:var(--ui-blue-soft); border:1px solid var(--ui-line); border-radius:9px; font-size:13px; line-height:1.6; margin-bottom:22px; }
#appShell.ui-workspace .utility-page [hidden] { display:none !important; }
#appShell.ui-workspace .utility-page:is([hidden],[aria-hidden="true"],.u-hidden) { display:none !important; }

/* Connections is a directory, not a wall of account cards. */
#appShell.ui-workspace #paneConnections.utility-page .connections-hub { display:block; padding:0; background:none; border:0; box-shadow:none; }
#appShell.ui-workspace #paneConnections.utility-page .connections-hub-summary { margin:0 0 24px; border-radius:11px; background:var(--ui-surface); }
#appShell.ui-workspace #paneConnections.utility-page .connections-hub-summary > div { padding:20px 24px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-hub-summary strong { font-size:26px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-hub-message:not(:empty) { margin:0 0 20px; }
#appShell.ui-workspace .utility-provider-directory { min-width:0; border:1px solid var(--ui-line); border-radius:11px; background:var(--ui-surface); }
#appShell.ui-workspace #paneConnections.utility-page .connections-hub-toolbar { padding:15px 22px; margin:0; border:0; border-bottom:1px solid var(--ui-line); border-radius:11px 11px 0 0; gap:12px; background:none; }
#appShell.ui-workspace #paneConnections.utility-page .connections-hub-grid { display:block; padding:0; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-card { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(130px,.65fr); align-items:center; gap:16px; padding:22px; margin:0; height:auto; border:0; border-bottom:1px solid var(--ui-line); border-radius:0; background:none; box-shadow:none; overflow:visible; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-card:last-child { border-bottom:0; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-card::before { display:none; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-head { display:grid; grid-template-columns:36px minmax(0,1fr); gap:9px 12px; align-items:center; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-title h3 { font-size:13px; white-space:normal; overflow-wrap:anywhere; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-title span { font-size:11px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-mark { width:35px; height:35px; border-radius:8px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-head .connections-status { grid-column:2; justify-self:start; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-meta { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; margin:0; padding:0; background:none; border:0; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-meta strong { font-size:12px; white-space:normal; overflow-wrap:anywhere; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-meta span { font-size:10px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-footer { display:flex; flex-direction:column; align-items:flex-end; gap:12px; border:0; padding:0; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-capabilities { font-size:11px; text-align:right; white-space:normal; overflow-wrap:anywhere; }
#appShell.ui-workspace #paneConnections.utility-page .connections-provider-error { grid-column:1 / -1; grid-row:2; font-size:12px; margin:0; padding:10px 13px; border-radius:8px; background:var(--ui-red-soft); color:var(--ui-red); }
#appShell.ui-workspace #paneConnections.utility-page .connections-empty-state { margin:20px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notifications { margin:0; padding:0; border:1px solid var(--ui-line); border-radius:11px; background:var(--ui-surface); box-shadow:none; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notifications-header { margin:0; padding:22px; border-bottom:1px solid var(--ui-line); }
#appShell.ui-workspace #paneConnections.utility-page .connections-notifications-header h3 { font-size:17px; margin:0 0 7px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notifications-header p { font-size:12px; margin:0; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:0; border:0; border-radius:11px; background:none; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-card { display:block; padding:22px; border:0; border-bottom:1px solid var(--ui-line); border-radius:0; background:none; box-shadow:none; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-card:last-child { border-bottom:0; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-card-head { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:22px; margin:0; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-card-head h4 { font-size:15px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-card-head p { font-size:12px; line-height:1.6; margin:6px 0; }
#appShell.ui-workspace .utility-destination-states { display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 0; }
#appShell.ui-workspace .utility-destination-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
#appShell.ui-workspace #paneConnections.utility-page .utility-destination-actions :is(button,select) { min-height:36px; height:36px; padding:6px 12px; font-size:12px; width:auto; margin:0; }
#appShell.ui-workspace #paneConnections.utility-page .utility-destination-actions select { min-width:95px; padding-right:28px; }
#appShell.ui-workspace #paneConnections.utility-page .utility-destination-toggle { flex:none; width:44px; padding:0; position:relative; background:transparent; border:0; border-radius:7px; box-shadow:none; }
#appShell.ui-workspace #paneConnections.utility-page .utility-destination-toggle::before { content:''; position:absolute; width:32px; height:19px; border-radius:99px; background:var(--ui-ink-secondary); opacity:.5; left:6px; top:calc(50% - 9.5px); }
#appShell.ui-workspace #paneConnections.utility-page .utility-destination-toggle::after { content:''; position:absolute; width:15px; height:15px; background:#fff; border-radius:50%; left:8px; top:calc(50% - 7.5px); transition:transform .15s ease; }
#appShell.ui-workspace #paneConnections.utility-page .utility-destination-toggle[aria-checked="true"]::before { background:var(--ui-blue); opacity:1; }
#appShell.ui-workspace #paneConnections.utility-page .utility-destination-toggle[aria-checked="true"]::after { transform:translateX(13px); }
#appShell.ui-workspace .utility-destination-toggle:disabled { opacity:.4; cursor:not-allowed; }
#appShell.ui-workspace .utility-destination-toggle:focus-visible { outline:2px solid var(--ui-blue); outline-offset:2px; }
#appShell.ui-workspace .utility-destination-settings { border:0; border-radius:0; box-shadow:none; background:none; padding:0; margin:0; }
#appShell.ui-workspace .utility-destination-settings:not([open]) { display:none; }
#appShell.ui-workspace .utility-destination-settings[open] { margin-top:18px; padding-top:16px; border-top:1px solid var(--ui-line); }
#appShell.ui-workspace .utility-destination-settings summary { color:var(--ui-ink-secondary); font-size:12px; cursor:pointer; padding:0; }
#appShell.ui-workspace .utility-destination-feedback { font-size:12px; line-height:1.5; margin:12px 0 0; color:var(--ui-ink-secondary); overflow-wrap:anywhere; }
#appShell.ui-workspace .utility-destination-feedback[data-state="error"] { color:var(--ui-red); }
#appShell.ui-workspace .utility-destination-feedback[data-state="success"] { color:var(--ui-green); }
#appShell.ui-workspace .utility-destination-feedback[data-state="warning"] { color:var(--ui-amber); }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-channels { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:14px; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-channel { padding:18px; border-radius:9px; box-shadow:none; }
#appShell.ui-workspace #paneConnections.utility-page .connections-notification-channel label { font-size:12px; }
@container connection-notifications (max-width:750px) {
  #appShell.ui-workspace #paneConnections.utility-page .connections-notification-card-head { grid-template-columns:minmax(0,1fr); gap:14px; }
  #appShell.ui-workspace .utility-destination-actions { display:grid; grid-template-columns:minmax(0,1fr) auto auto 44px; gap:6px; }
  #appShell.ui-workspace #paneConnections.utility-page .utility-destination-actions :is(button,select) { min-height:44px; height:44px; padding-left:8px; padding-right:8px; }
  #appShell.ui-workspace #paneConnections.utility-page .utility-destination-actions select { min-width:0; width:100%; padding-right:20px; }
  #appShell.ui-workspace #paneConnections.utility-page .connections-notification-channels { grid-template-columns:minmax(0,1fr); }
}
@media (pointer:coarse) {
  #appShell.ui-workspace #paneConnections.utility-page .utility-destination-actions :is(button,select) { min-height:44px; height:44px; }
}

/* Lookup: strong search entry point, then a flat results ledger. */
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-card { padding:0; background:none; border:0; }
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-header { padding:26px; border:1px solid var(--ui-line); border-radius:11px; background:linear-gradient(110deg,var(--ui-surface),var(--ui-blue-soft)); gap:20px; }
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-header h3 { font-size:22px; }
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-header p { font-size:13px; }
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-input { max-width:800px; }
#appShell.ui-workspace #paneSearch.utility-page .utility-search-hint { margin:14px 0 22px; }
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-body { padding:0; border:0; }
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-section { padding:0; border:1px solid var(--ui-line); border-radius:10px; background:var(--ui-surface); }
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-section h4 { padding:17px 22px; margin:0; font-size:13px; border-bottom:1px solid var(--ui-line); }
#appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-section ul { margin:0; padding:0 22px; list-style:none; }

/* Guide library: browse topics at left and expandable reading cards at right. */
#appShell.ui-workspace #paneHowTo.utility-page .dashboard-howto-card { display:grid; grid-template-columns:190px minmax(0,1fr); gap:26px; align-items:start; }
#appShell.ui-workspace .utility-guide-side { min-width:0; }
#appShell.ui-workspace .utility-guide-main { min-width:0; }
#appShell.ui-workspace #paneHowTo.utility-page .utility-guide-toolbar { display:flex; flex-direction:column; align-items:stretch; gap:10px; padding:0; border:0; background:none; }
#appShell.ui-workspace #paneHowTo.utility-page .utility-guide-toolbar input { font-size:12px; min-width:0; }
#appShell.ui-workspace #paneHowTo.utility-page .utility-guide-categories { display:grid; gap:4px; margin:20px 0; }
#appShell.ui-workspace #paneHowTo.utility-page .utility-guide-categories button { border:0; background:none; text-align:left; justify-content:flex-start; font-size:12px; padding:10px 12px; }
#appShell.ui-workspace #paneHowTo.utility-page .utility-guide-categories button[aria-pressed="true"] { background:var(--ui-blue-soft); color:var(--ui-blue); }
#appShell.ui-workspace .utility-guide-feature { border:1px solid var(--ui-line); border-radius:11px; padding:26px; margin-bottom:24px; background:linear-gradient(110deg,var(--ui-blue-soft),var(--ui-surface)); }
#appShell.ui-workspace .utility-guide-feature h3 { font-size:23px; letter-spacing:-.025em; margin:10px 0; }
#appShell.ui-workspace .utility-guide-feature p { font-size:13px; line-height:1.65; margin:0 0 18px; }
#appShell.ui-workspace #paneHowTo.utility-page .dashboard-howto-detail summary { font-size:13px; padding:22px; }

/* Templates retain every real CSV/XLSX link, grouped into a single file list. */
#appShell.ui-workspace #paneTemplates.utility-page .dashboard-grid { display:block; border:1px solid var(--ui-line); border-radius:11px; background:var(--ui-surface); }
#appShell.ui-workspace #paneTemplates.utility-page .dashboard-grid > .card { padding:22px; border:0; border-bottom:1px solid var(--ui-line); border-radius:0; gap:6px; background:none; box-shadow:none; }
#appShell.ui-workspace #paneTemplates.utility-page .dashboard-grid > .card:last-child { border-bottom:0; }
#appShell.ui-workspace #paneTemplates.utility-page .dashboard-grid > .card > .utility-kicker { display:none; }
#appShell.ui-workspace #paneTemplates.utility-page h4 { font-size:15px; }
#appShell.ui-workspace #paneTemplates.utility-page p { font-size:12px; }
#appShell.ui-workspace #paneTemplates.utility-page .dashboard-actions { gap:0; padding-top:6px; }
#appShell.ui-workspace #paneTemplates.utility-page a[download] { display:grid; grid-template-columns:44px minmax(0,1fr) auto; padding:15px 0; border:0; border-bottom:1px solid var(--ui-line); border-radius:0; background:none; gap:14px; font-size:13px; }
#appShell.ui-workspace #paneTemplates.utility-page a[download]:last-child { border:0; }
#appShell.ui-workspace #paneTemplates.utility-page a[download]:hover { background:var(--ui-surface-muted); }
#appShell.ui-workspace #paneTemplates .utility-file-type { grid-column:1; grid-row:1; padding:10px 5px; border:1px solid var(--ui-line); border-radius:6px; color:var(--ui-green); background:var(--ui-green-soft); text-align:center; }
#appShell.ui-workspace .utility-file-name { overflow-wrap:anywhere; }
#appShell.ui-workspace .utility-file-action { color:var(--ui-blue); font-size:12px; }
#appShell.ui-workspace .utility-template-layout { display:grid; grid-template-columns:minmax(0,1fr) 245px; gap:22px; align-items:start; }
#appShell.ui-workspace .utility-template-help { padding:22px; border:1px solid var(--ui-line); border-radius:11px; background:var(--ui-surface); }
#appShell.ui-workspace .utility-template-help h3 { font-size:15px; margin:0 0 12px; }
#appShell.ui-workspace .utility-template-help p { line-height:1.8; margin:12px 0; }
#appShell.ui-workspace .utility-guide-description { display:block; margin-top:9px; font-size:11px; font-weight:400; color:var(--ui-ink-secondary); }

/* Saved-run directory. Pagination limits DOM size, not loaded history. */
#appShell.ui-workspace #paneMpDownloads.utility-page { display:grid; grid-template-columns:minmax(0,1fr); }
#appShell.ui-workspace .utility-run-directory { border:1px solid var(--ui-line); border-radius:11px; background:var(--ui-surface); min-width:0; }
#appShell.ui-workspace .utility-library-toolbar { display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between; padding:18px 22px; border-bottom:1px solid var(--ui-line); }
#appShell.ui-workspace .utility-library-toolbar :is(input,select) { width:min(320px,100%); min-width:0; font-size:12px; }
#appShell.ui-workspace .utility-run-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:22px; padding:18px 22px; align-items:center; border-bottom:1px solid var(--ui-line); }
#appShell.ui-workspace .utility-run-row:last-child { border:0; }
#appShell.ui-workspace .utility-run-title { display:grid; gap:6px; min-width:0; }
#appShell.ui-workspace .utility-run-title strong { font-size:13px; font-weight:550; overflow-wrap:anywhere; }
#appShell.ui-workspace .utility-run-title span { font-size:11px; }
#appShell.ui-workspace .utility-library-footer { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding:15px 22px; border-top:1px solid var(--ui-line); }
#appShell.ui-workspace .utility-library-footer > span { flex:1; font-size:12px; }
#appShell.ui-workspace .utility-library-empty { padding:28px; font-size:13px; color:var(--ui-ink-secondary); }
#appShell.ui-workspace .utility-saved-controls { padding:20px; border:1px solid var(--ui-line); border-radius:11px; background:var(--ui-surface); box-shadow:none; min-width:0; }
#appShell.ui-workspace .utility-saved-controls > summary { font-size:13px; color:var(--ui-ink-secondary); cursor:pointer; }
#appShell.ui-workspace .utility-saved-controls-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding-top:20px; }

/* My security is shared by the customer workspace and the Admin build. */
#appShell.ui-workspace #paneSecurity.utility-page .security-account-card { padding:0; background:none; border:0; box-shadow:none; }
#appShell.ui-workspace #paneSecurity.utility-page .security-summary:not(.security-summary-compact) { margin:20px 0; }
#appShell.ui-workspace #paneSecurity.utility-page .security-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
#appShell.ui-workspace #paneSecurity.utility-page .security-section { padding:22px; border:1px solid var(--ui-line); border-radius:11px; background:var(--ui-surface); box-shadow:none; }
#appShell.ui-workspace #paneSecurity.utility-page .security-section h4 { font-size:17px; }
#appShell.ui-workspace #paneSecurity.utility-page .security-section p { font-size:12px; line-height:1.65; }
#appShell.ui-workspace #paneSecurity.utility-page .security-grid > .security-section.security-email-section { grid-column:1; grid-row:1; }
#appShell.ui-workspace #paneSecurity.utility-page .security-grid > .security-section.security-password-section { grid-column:1; grid-row:2; }
#appShell.ui-workspace #paneSecurity.utility-page .security-grid > .security-section.security-authenticator-section { grid-column:2; grid-row:1 / span 2; }
#appShell.ui-workspace #paneSecurity.utility-page .security-summary-compact { display:grid; grid-template-columns:minmax(0,1fr); }
#appShell.ui-workspace #paneSecurity.utility-page .security-summary-compact .security-summary-item { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; border:0; border-bottom:1px solid var(--ui-line); border-radius:0; }
#appShell.ui-workspace #paneSecurity.utility-page .security-form :is(input,select) { font-size:13px; }
#appShell.ui-workspace #paneSecurity .utility-security-edit { padding:0; border:0; background:none; box-shadow:none; }
#appShell.ui-workspace #paneSecurity .utility-security-edit summary { font-size:12px; color:var(--ui-blue); cursor:pointer; padding:10px 0; }
#appShell.ui-workspace #paneSecurity .utility-security-edit[open] summary { margin-bottom:12px; border-bottom:1px solid var(--ui-line); }

@media(max-width:1000px) {
  #appShell.ui-workspace .utility-template-layout { grid-template-columns:minmax(0,1fr); }
  #appShell.ui-workspace #paneConnections.utility-page .connections-provider-card { grid-template-columns:minmax(0,1fr) auto; }
  #appShell.ui-workspace #paneConnections.utility-page .connections-provider-meta { grid-column:1; grid-row:2; }
  #appShell.ui-workspace #paneConnections.utility-page .connections-provider-footer { grid-column:2; grid-row:1 / span 2; max-width:170px; }
  #appShell.ui-workspace #paneConnections.utility-page .connections-provider-error { grid-row:3; }
}
@media(max-width:800px) {
  #appShell.ui-workspace #paneHowTo.utility-page .dashboard-howto-card,
  #appShell.ui-workspace #paneSecurity.utility-page .security-grid,
  #appShell.ui-workspace .utility-saved-controls-grid { grid-template-columns:minmax(0,1fr); }
  #appShell.ui-workspace #paneSecurity.utility-page .security-grid > .security-section:is(.security-email-section,.security-password-section,.security-authenticator-section) { grid-column:auto; grid-row:auto; }
  #appShell.ui-workspace #paneHowTo.utility-page .utility-guide-categories { display:flex; flex-wrap:wrap; }
}
@media(max-width:600px) {
  #appShell.ui-workspace .utility-page .utility-tabs { gap:10px 18px; }
  #appShell.ui-workspace #paneConnections.utility-page .connections-provider-card { gap:12px; padding:18px; }
  #appShell.ui-workspace #paneConnections.utility-page .connections-provider-footer { max-width:100px; }
  #appShell.ui-workspace #paneConnections.utility-page .connections-notification-card { padding:18px; }
  #appShell.ui-workspace .utility-run-row { grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:18px; }
  #appShell.ui-workspace .utility-run-row .app-status { grid-column:1; grid-row:2; justify-self:start; }
  #appShell.ui-workspace .utility-run-row button { grid-column:2; grid-row:1 / span 2; max-width:100px; }
  #appShell.ui-workspace #paneTemplates.utility-page a[download] { grid-template-columns:38px minmax(0,1fr); }
  #appShell.ui-workspace #paneTemplates .utility-file-action { grid-column:2; }
  #appShell.ui-workspace #paneSearch.utility-page .dashboard-spotlight-header { padding:20px; }
}
@media(pointer:coarse) {
  #appShell.ui-workspace .utility-page :is(button.btn,button.btn-outline,button.chip-btn,summary) { min-height:44px; }
}
