/* Settings: stable left categories and aligned working cards. */
#view-settings .p3s-layout { display:grid;grid-template-columns:208px minmax(0,1fr);gap:16px;align-items:start;width:100%;max-width:none;min-height:0; }
#view-settings .p3s-sidebar { position:static;display:grid;gap:14px;padding:14px 10px;border:1px solid white;border-radius:var(--radius-card);background:rgb(255 255 255 / 66%);box-shadow:var(--p3a-shadow);backdrop-filter:blur(12px);max-height:none;overflow:visible;min-width:0; }
#view-settings .p3s-control-center-head { display:grid;gap:12px;min-width:0; }
#view-settings .p3s-control-center-title { display:flex;align-items:center;min-width:0;padding:2px 8px; }
#view-settings .p3s-control-center-icon { width:60px;height:60px;flex:0 0 60px;display:grid;place-items:center;border:1px solid white;border-radius:var(--radius-lg);color:var(--p3a-brand);background:rgb(255 255 255 / 72%);box-shadow:var(--p3a-shadow); }
#view-settings .p3s-control-center-eyebrow { display:none;margin:0 0 6px;font-size:13px;letter-spacing:.1em;font-weight:750;color:var(--p3a-text-muted); }
#view-settings .p3s-control-center-title h1 { margin:0;font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-.02em;color:var(--p3a-text); }
#view-settings .p3s-nav-tools { display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:4px;align-items:center; }
#view-settings .p3s-nav-search { display:flex;align-items:center;gap:6px;min-width:0;min-height:44px;padding:0 8px;border-radius:var(--radius-md);border:1px solid white;color:var(--p3a-text-muted);background:rgb(255 255 255 / 76%);box-shadow:var(--p3a-shadow); }
#view-settings .p3s-nav-search input { border:0;background:transparent;box-shadow:none;width:100%;min-width:0;font:inherit;font-size:13px;color:var(--p3a-text);padding:10px 0; }
#view-settings .p3s-nav-search:focus-within { outline:2px solid var(--p3a-brand);outline-offset:2px; }
#view-settings .p3s-nav-search input:focus { outline:none; }
#view-settings .p3s-nav-sort { justify-content:center;min-height:44px;width:44px;padding:0;border:1px solid white;border-radius:var(--radius-md);background:white;box-shadow:var(--p3a-shadow); }
#view-settings .p3s-nav-sort > span:last-child { display:none; }
#view-settings .p3s-nav-sort[aria-pressed="true"] { background:var(--p3a-brand-soft);color:var(--p3a-brand); }
#view-settings .p3s-nav-sort .material-symbols-outlined { font-size:20px; }
#view-settings .p3s-nav-hint,#view-settings .p3s-nav-feedback { margin:0;font-size:13px;line-height:1.5;color:var(--p3a-text-muted);grid-column:1/-1; }
#view-settings .p3s-nav-feedback:empty { display:none; }
#view-settings .p3s-section-chooser { min-width:0; }
#view-settings .p3s-section-chooser-summary { display:none; }
#view-settings .p3s-nav-list { display:grid;grid-template-columns:minmax(0,1fr);gap:4px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none; }
#view-settings .p3s-nav-row { display:flex;min-width:0;border-radius:var(--radius-lg); }
#view-settings .p3s-nav-row.is-dragging { opacity:.45; }
#view-settings .p3s-nav-item { display:flex;flex:1;align-items:center;min-width:0;min-height:44px;border-radius:var(--radius-md);border:1px solid transparent;margin:0;padding:6px 8px;gap:8px;color:var(--p3a-text-muted);text-align:left;background:transparent;transition:background var(--workspace-motion),box-shadow var(--workspace-motion),color var(--workspace-motion); }
#view-settings .p3s-nav-item::before { display:none; }
#view-settings .p3s-nav-item:hover { background:rgb(255 255 255 / 78%);color:var(--p3a-text); }
#view-settings .p3s-nav-item--active,#view-settings .p3s-nav-item--active:hover { color:var(--p3a-text);background:white;border-color:white;box-shadow:0 6px 18px rgb(36 50 82 / 7%); }
#view-settings .p3s-launcher-icon { display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:var(--radius-md); }
#view-settings .p3s-nav-item--active .p3s-launcher-icon { background:var(--p3a-brand-soft);color:var(--p3a-brand); }
#view-settings .p3s-launcher-label { font-size:13px;font-weight:650;line-height:1.35;white-space:normal; }
#view-settings .p3s-nav-item svg,#view-settings .p3s-nav-item .material-symbols-outlined { width:20px;height:20px;font-size:20px;flex-shrink:0;transform:none; }
#view-settings .p3s-nav-moves { display:none; }
#view-settings [data-sorting="true"] .p3s-nav-moves { display:flex;padding:0 8px 6px; }
#view-settings [data-sorting="true"] .p3s-nav-row { flex-wrap:wrap;background:rgb(255 255 255 / 72%);cursor:grab; }
#view-settings [data-sorting="true"] .p3s-nav-item { flex-basis:100%; }
#view-settings .p3s-nav-moves button { display:grid;place-items:center;min-width:44px;min-height:44px;background:transparent;border:0;border-radius:var(--radius-md);color:var(--p3a-text-muted);cursor:pointer; }
#view-settings .p3s-nav-moves button:hover { background:var(--p3a-brand-soft);color:var(--p3a-brand); }
#view-settings .p3s-content { min-width:0;display:block;max-height:none;overflow:visible;padding:0; }
#view-settings .p3s-content > [hidden],#view-settings .p3s-nav-row[hidden],#view-settings .p3s-nav-item[hidden] { display:none!important; }
#view-settings .p3s-section { min-width:0;padding:18px;border:1px solid rgb(255 255 255 / 84%);border-radius:var(--radius-panel);background:var(--workspace-glass,rgba(255,255,255,.58));box-shadow:inset 0 1px 0 white,var(--p3a-shadow);backdrop-filter:none;font-size:14px;line-height:1.5; }
#view-settings .p3s-section:hover { box-shadow:inset 0 1px 0 white,var(--p3a-shadow); }
#view-settings .p3s-section-head { display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:0;border:0; }
#view-settings .p3s-section-title { margin:0;font-size:22px;font-weight:700;line-height:1.3;letter-spacing:-.02em; }
#view-settings .p3s-guide-btn { display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;margin-left:auto;padding:0;border:1px solid var(--p3a-border);border-radius:12px;color:var(--p3a-brand);background:var(--p3a-surface-soft);transition:background-color var(--workspace-motion),border-color var(--workspace-motion),color var(--workspace-motion),box-shadow var(--workspace-motion); }
#view-settings .p3s-guide-btn:hover { border-color:color-mix(in srgb,var(--p3a-brand) 32%,var(--p3a-border));background:var(--p3a-brand-soft);box-shadow:0 5px 14px rgb(44 58 96 / 8%); }
#view-settings .p3s-guide-btn:active { box-shadow:none; }
#view-settings .p3s-guide-btn .material-symbols-outlined { font-size:20px; }
#view-settings .p3s-section[aria-busy="true"] { cursor:progress; }
#view-settings .p3s-section[aria-busy="true"] > .p3s-section-head::after { content:'Đang tải…';color:var(--p3a-text-muted);font-size:13px; }
#view-settings .p3s-role-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start; }
#view-settings .p3s-role-card,#view-settings .p3s-role-card--writer-dual { display:flex;flex-direction:column;gap:12px;min-height:0;height:auto;align-self:start;min-width:0;padding:16px;border:1px solid white;border-radius:var(--radius-card);background:white;box-shadow:var(--p3a-shadow);transition:border-color var(--workspace-motion),box-shadow var(--workspace-motion); }
#view-settings .p3s-role-card:hover { box-shadow:0 12px 28px rgb(44 58 96 / 8%); }
#view-settings .p3s-role-card--writer-dual { grid-column:span 2; }
#view-settings .p3s-role-card--writer-dual { background:white; }
#view-settings .p3s-role-card[data-role-card="researchAssistant"] { background:white; }
#view-settings .p3s-role-card__head { align-items:center;gap:14px; }
#view-settings .p3s-role-card__icon { width:44px;height:44px;flex:0 0 44px;border-radius:var(--radius-lg);color:var(--p3a-brand);background:var(--p3a-brand-soft); }
#view-settings .p3s-role-card__icon svg { width:23px;height:23px; }
#view-settings [data-role-card="researchAssistant"] .p3s-role-card__icon { color:#2f8b75;background:var(--studio-mint); }
#view-settings .p3s-role-card__name { white-space:normal;font-size:16px;line-height:1.35; }
#view-settings .p3s-role-card__desc { display:none; }
#view-settings .p3s-role-card__current { min-height:20px; }
#view-settings .p3s-role-card__model { background:var(--p3a-surface-soft);border-radius:var(--radius-md);padding:6px 9px; }
#view-settings .p3s-role-card__edit { gap:8px; }
#view-settings .p3s-role-card__edit .mselect-button,#view-settings .p3s-role-clear { min-height:46px;border-radius:var(--radius-md); }
#view-settings .p3s-role-clear { min-width:44px; }
#view-settings .p3s-writer-model-groups { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
#view-settings .p3s-writer-model-group { padding:14px;background:rgb(255 255 255 / 74%);border:1px solid white;border-radius:var(--radius-lg);gap:10px; }
#view-settings .p3s-writer-model-group__label { font-size:13px;color:var(--p3a-text-2); }
#view-settings .p3s-role-guide { margin-top:auto;padding-top:2px;border-top:1px solid var(--p3a-border); }
#view-settings .p3s-role-guide > summary { cursor:pointer;min-height:44px;align-content:center;font-size:13px;font-weight:600;color:var(--p3a-text-muted); }
#view-settings .p3s-role-guide[open] { display:grid;gap:12px; }
#view-settings .p3s-role-card__routing { min-height:0;border-radius:var(--radius-md);padding:12px; }
#view-settings .p3s-role-card__details-summary { min-height:44px; }
#view-settings .p3s-ai-provider { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;padding:0;background:none;border:0; }
#view-settings .p3s-ai-provider__url,#view-settings .p3s-ai-section-sub { display:none; }
#view-settings .p3s-ai-role-switch { margin-bottom:16px;display:flex;flex-wrap:wrap;max-width:100%; }
#view-settings .p3s-ai-role-switch button { min-height:44px;white-space:normal; }
#view-settings .p3s-task-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
#view-settings .p3s-task-card { padding:18px; }
#view-settings .p3s-task-card h3 { margin:0;font-size:16px; }
#view-settings .p3s-task-list { margin:0;padding-left:20px;font-size:14px;line-height:1.65;color:var(--p3a-text-2); }
#view-settings .p3s-task-note { margin:0;padding:10px 12px;border-left:3px solid var(--p3a-brand);background:var(--p3a-surface-soft);font-size:13px;line-height:1.55;color:var(--p3a-text-2); }
#view-settings .p3s-task-assignment { margin-top:auto;display:grid;gap:9px;min-width:0; }
#view-settings .p3s-task-label { font-weight:600;font-size:14px; }
#view-settings .p3s-task-route { display:grid;gap:4px;font-size:13px;line-height:1.5;color:var(--p3a-text-2);overflow-wrap:anywhere; }
#view-settings .p3s-task-route > code { color:var(--p3a-text);background:var(--p3a-surface-soft);padding:6px 9px;border-radius:var(--radius-md);white-space:normal; }
#view-settings .p3s-inline-status { display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;color:var(--p3a-text-muted);background:var(--p3a-surface-soft);font-size:12px;line-height:1.35; }
#view-settings .p3s-task-hint,#view-settings .p3s-ai-save-hint { margin:0;font-size:13px;line-height:1.5;color:var(--p3a-text-muted); }
#view-settings .p3s-ai-overview { display:grid;gap:10px;margin-bottom:20px; }
#view-settings .p3s-ai-overview p,#view-settings .p3s-ai-flow p,#view-settings .p3s-ai-related p { margin:0;font-size:14px;line-height:1.6; }
#view-settings .p3s-ai-provider__meta { flex-wrap:wrap; }
#view-settings .p3s-ai-flow { padding:16px;background:var(--p3a-surface-soft);border-radius:var(--radius-lg);margin-bottom:12px; }
#view-settings .p3s-ai-flow-steps { display:flex;flex-wrap:wrap;gap:10px 20px;list-style:none;padding:0;margin:0 0 12px; }
#view-settings .p3s-ai-flow-steps li { display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600; }
#view-settings .p3s-ai-flow-steps li span { display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--p3a-surface);color:var(--p3a-brand); }
#view-settings .p3s-ai-save-status { min-height:22px;margin:8px 0;font-size:14px;color:var(--p3a-text); }
#view-settings .p3s-ai-related { display:grid;gap:12px;padding:18px;margin-top:20px;border:1px solid var(--p3a-border);border-radius:var(--radius-card); }
#view-settings .p3s-ai-related h3 { margin:0;font-size:16px; }
#view-settings .p3s-ai-related-links { display:flex;flex-wrap:wrap;gap:8px; }
#view-settings .p3s-ai-related-links a { min-height:44px;white-space:normal; }
#view-settings .p3s-task-card .mselect-button { min-width:0; }
#view-settings .p3s-task-card .p3s-role-card__edit { min-width:0; }
@media(max-width:1100px) { #view-settings .p3s-task-grid { grid-template-columns:minmax(0,1fr); } }
#view-settings .p3s-perm-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch; }
#view-settings .p3s-perm-item { min-width:0;min-height:112px;height:100%;padding:16px;border:1px solid white;border-radius:var(--radius-card);background:white;box-shadow:var(--p3a-shadow);transition:box-shadow var(--workspace-motion); }
#view-settings .p3s-perm-item:hover { transform:none;box-shadow:0 12px 28px rgb(44 58 96 / 7%); }
#view-settings .p3s-perm-icon { width:48px;height:48px;border-radius:var(--radius-lg);background:var(--p3a-surface-soft);color:var(--p3a-brand); }
#view-settings .p3s-perm-name { font-size:14px;font-weight:650; }
#view-settings .p3s-perm-desc { color:var(--p3a-text-muted);font-size:13px;line-height:1.5; }
#view-settings .p3s-profile-email { color:var(--p3a-text-muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere; }
#view-settings .p3s-perm-item input[type="checkbox"] { width:24px;height:24px;min-width:24px;accent-color:var(--p3a-brand); }
#view-settings .p3s-profile-card { grid-column:span 2;grid-template-columns:84px minmax(0,1fr);min-height:0;background:white;gap:16px; }
#view-settings .p3s-profile-avatar { width:84px;height:84px;flex:0 0 84px;display:grid;place-items:center;border-radius:var(--radius-card);font-size:36px;font-weight:700;background:white;color:#2f8b75;box-shadow:0 8px 24px rgb(47 139 117 / 8%); }
#view-settings .p3s-profile-card .p3s-perm-name { font-size:24px;line-height:1.35;letter-spacing:-.03em; }
#view-settings .p3s-profile-eyebrow { margin-bottom:8px;font-size:13px;letter-spacing:.09em;font-weight:750;color:var(--p3a-text-muted); }
#view-settings .p3s-profile-role { display:inline-flex;margin-top:12px;padding:5px 10px;border-radius:var(--radius-md);font-size:13px;font-weight:650;color:#2f8b75;background:var(--studio-mint); }
#view-settings .p3s-role-banner { margin-bottom:16px;padding:12px 18px;border-radius:var(--radius-lg); }
.p3s-settings-grid { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px; }
.p3s-settings-grid--four { grid-template-columns:repeat(4,minmax(0,1fr));gap:18px; }
.p3s-control-card { min-width:0;margin:0;display:flex;flex-direction:column;gap:18px;padding:16px;border:1px solid white;border-radius:var(--radius-card);background:white;box-shadow:var(--p3a-shadow); }
.p3s-control-card > legend { padding:8px 12px;border-radius:var(--radius-md);background:white;font-size:16px;font-weight:700;color:var(--p3a-text); }
.p3s-control-card > legend .material-symbols-outlined { font-size:22px;vertical-align:middle;margin-right:8px;color:var(--p3a-brand); }
.p3s-control-card--wide { grid-column:1/-1; }
.p3s-form-actions { display:flex;flex-wrap:wrap;align-items:center;gap:12px; }
.p3s-form-actions > p { margin:0; }
.p3s-switch-row { display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:10px 14px;border-radius:var(--radius-lg);background:var(--p3a-surface-soft);font-size:13px; }
.p3s-switch-row input[type="checkbox"] { width:24px;height:24px;accent-color:var(--p3a-brand);flex:0 0 24px; }
#view-settings .p3c-settings { max-width:none;width:100%;padding:0;border:0;background:none;box-shadow:none; }
#view-settings .p3c-settings form { max-width:none;width:100%;margin:0;gap:16px; }
#view-settings .p3c-settings input:not([type="checkbox"]),#view-settings .p3c-settings select { width:100%;border-radius:var(--radius-md);min-height:46px;background:var(--p3a-surface-soft);border:1px solid var(--p3a-border); }
#view-settings .p3c-settings .p3s-form-field { margin:0; }
#view-settings .p3c-settings button { min-height:46px;border-radius:var(--radius-md); }
#view-settings .p3c-settings small { font-size:13px;color:var(--p3a-text-muted);line-height:1.5; }
#view-settings #p3s-embedding-model { margin-top:24px; }
#view-settings .p3c-model-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
#view-settings #p3s-quota-settings { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px; }
#view-settings #p3s-quota-settings > .p3s-form-field { padding:16px;border:1px solid white;border-radius:var(--radius-card);background:white;gap:14px; }
#view-settings #p3s-quota-settings .p3s-section-foot { grid-column:1/-1;margin-top:0; }
#view-settings :is(button,a,summary):focus-visible { outline:2px solid var(--p3a-brand);outline-offset:3px; }
@media (max-width:1199px) {
  #view-settings .p3s-layout { grid-template-columns:180px minmax(0,1fr); }
  #view-settings .p3s-role-grid,#view-settings .p3s-perm-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #view-settings .p3s-profile-card { grid-column:1/-1; }
  #view-settings .p3s-role-card[data-role-card="researchAssistant"] { grid-column:auto; }
  #view-settings .p3s-role-card--writer-dual { grid-column:auto; }
  #view-settings .p3s-writer-model-groups { grid-template-columns:minmax(0,1fr); }
  #view-settings #p3s-quota-settings { grid-template-columns:1fr; }
  .p3s-settings-grid--four { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:699px) {
  #view-settings .p3s-section-chooser { border:1px solid white;border-radius:var(--radius-lg);background:rgb(255 255 255 / 72%);box-shadow:var(--p3a-shadow); }
  #view-settings .p3s-section-chooser-summary { display:flex;align-items:center;gap:10px;min-height:56px;padding:8px 14px;cursor:pointer;list-style:none;color:var(--p3a-text);font-size:13px;font-weight:650; }
  #view-settings .p3s-section-chooser-summary::-webkit-details-marker { display:none; }
  #view-settings .p3s-section-chooser-summary > [data-settings-selected-icon] { display:grid;place-items:center;flex:0 0 34px; }
  #view-settings .p3s-section-chooser-summary .p3s-launcher-icon { color:var(--p3a-brand);background:var(--p3a-brand-soft); }
  #view-settings .p3s-section-chooser-summary .p3s-launcher-icon svg { width:20px;height:20px; }
  #view-settings .p3s-section-chooser-change { margin-left:auto;font-size:13px;font-weight:500;color:var(--p3a-text-muted); }
  #view-settings .p3s-section-chooser-summary > .material-symbols-outlined { font-size:20px;transition:transform var(--workspace-motion); }
  #view-settings .p3s-section-chooser[open] .p3s-section-chooser-summary > .material-symbols-outlined { transform:rotate(180deg); }
  #view-settings .p3s-section-chooser .p3s-nav-list { grid-template-columns:repeat(3,minmax(0,1fr));border:0;box-shadow:none;background:transparent;padding-top:0; }
  #view-settings .p3s-section-chooser .p3s-nav-feedback:not(:empty) { padding:0 14px 12px; }
}
@media (max-width:999px) {
  #view-settings .p3s-section { padding:16px; }
  #view-settings .p3s-role-grid,#view-settings .p3s-perm-list { grid-template-columns:minmax(0,1fr); }
  #view-settings .p3s-role-card,#view-settings .p3s-role-card[data-role-card="researchAssistant"],#view-settings .p3s-role-card--writer-dual { grid-column:auto; }
  .p3s-settings-grid { grid-template-columns:minmax(0,1fr); }
  .p3s-settings-grid--four { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:699px) {
  #view-settings .p3s-layout { grid-template-columns:minmax(0,1fr);gap:14px; }
  #view-settings .p3s-sidebar { position:static;max-height:none;padding:12px;backdrop-filter:none; }
  #view-settings .p3s-control-center-title h1 { font-size:20px; }
  #view-settings .p3s-section-chooser .p3s-nav-list { grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:6px; }
  #view-settings .p3s-nav-item { padding:7px 8px;gap:6px;min-height:54px; }
  #view-settings .p3s-launcher-icon { width:30px;height:30px;flex-basis:30px; }
  #view-settings .p3s-launcher-label { font-size:13px; }
  #view-settings .p3s-section { padding:18px; }
  #view-settings .p3s-section-title { font-size:20px; }
  #view-settings .p3s-role-card,.p3s-control-card { padding:20px; }
  #view-settings .p3s-perm-list,#view-settings .p3c-model-grid,#view-settings .p3s-writer-model-groups,.p3s-settings-grid--four { grid-template-columns:minmax(0,1fr); }
  #view-settings .p3s-profile-card { grid-template-columns:56px minmax(0,1fr);gap:16px;min-height:0;padding:20px; }
  #view-settings .p3s-profile-avatar { width:56px;height:56px;flex-basis:56px;border-radius:var(--radius-lg);font-size:28px; }
  #view-settings .p3s-profile-card .p3s-perm-name { font-size:20px; }
}

/* Inner settings components share readable type, paper cards and full working width. */
#view-settings :is(.p3s-form-field > span,.p3s-form-input,.mselect-button,.p3s-launcher-label,.p3s-prov-tab,.p3s-registry-label,.p3s-provider-row__name,.p3s-provider-panel__title,.p3s-registry-summary__title,.p3s-or-card__title,.p3s-stats-summary,.p3s-role-card__current-lbl,.p3s-writer-model-group__label,.p3s-perm-name,.p3s-ws-name) { font-size:14px; }
#view-settings :is(.p3s-form-field small,.p3s-perm-desc,.p3s-role-card__model,.p3s-role-card__scope-copy,.p3s-role-card__sub-name,.p3s-role-card__sub-desc,.p3s-role-card__chip,.p3s-role-card__details-summary,.p3s-meta-pill,.p3s-role-tag-pill,.p3s-provider-kind-pill,.p3s-prov-tab__badge,.p3s-prov-detail__sub,.p3s-prov-select__lbl,.p3s-usage-status,.p3s-metric__k,.p3s-metric__sub,.p3s-metric__of,.p3s-prov-extra__lbl,.p3s-prov-extra__of,.p3s-prov-history__title,.p3s-or-card__label,.p3s-or-card__msg,.p3s-or-pill,.p3s-or-stat__k,.p3s-or-stat__of,.p3s-provider-panel__sub,.p3s-provider-row__url,.p3s-provider-row__meta,.p3s-registry-id,.p3s-registry-notes,.p3s-ws-sub,.p3s-ws-stat .k,.p3s-activity__count,.p3s-activity__time-rel,.p3s-activity__time-abs,.p3s-activity__substage,.p3s-activity__model,.p3s-activity__tokens-sub,.p3s-breakdown__name,.p3s-breakdown__meta,.p3c-model-status span) { font-size:13px;line-height:1.5;color:var(--p3a-text-muted); }
#view-settings :is(.p3s-perm-list,.p3s-provider-list,.p3s-registry-list,.p3s-img-profile-grid) { align-items:stretch; }
#view-settings :is(.p3s-metric,.p3s-or-card,.p3s-prov-extra__cell,.p3s-prov-history,.p3s-provider-panel,.p3s-registry-collapse,.p3s-ws-card,.p3s-stats-collapse,.p3s-provider-row,.p3s-registry-row) { background:var(--workspace-paper,#fff);border:1px solid var(--p3a-border);border-radius:var(--radius-card);box-shadow:var(--p3a-shadow); }
#view-settings :is(.p3s-provider-row__url,.p3s-registry-id,.p3s-registry-notes,.p3s-ws-sub) { white-space:normal;overflow-wrap:anywhere;text-overflow:clip; }
#view-settings .p3s-prov-tabs { flex-wrap:wrap;gap:8px; }
#view-settings .p3s-prov-detail__metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }
#view-settings .p3s-prov-detail__title { font-size:17px;display:flex;flex-wrap:wrap;gap:6px 12px; }
#view-settings .p3s-prov-select-wrap { max-width:520px;margin-top:12px; }
#view-settings .p3s-cost-note { display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:10px 12px;border:1px solid #dbe5f6;border-radius:12px;background:#f7faff;color:#52627b;font-size:13px;line-height:1.5; }
#view-settings .p3s-cost-note .material-symbols-outlined { flex:0 0 auto;font-size:18px;color:var(--p3a-brand); }
#view-settings .p3s-cost-overview { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px; }
#view-settings .p3s-cost-card { min-width:0;padding:16px;border:1px solid var(--p3a-border);border-radius:var(--radius-card);background:var(--workspace-paper,#fff);box-shadow:var(--p3a-shadow); }
#view-settings .p3s-cost-card--balance { border-color:#cfdaf8;background:#f8faff; }
#view-settings .p3s-cost-card__label { color:var(--p3a-text-muted);font-size:12px;font-weight:650; }
#view-settings .p3s-cost-card__value { margin-top:4px;color:var(--p3a-text);font-size:26px;font-weight:780;letter-spacing:-.03em;font-variant-numeric:tabular-nums; }
#view-settings .p3s-cost-card--balance .p3s-cost-card__value { color:var(--p3a-brand); }
#view-settings .p3s-cost-card__hint { margin-top:5px;color:var(--p3a-text-muted);font-size:12px;line-height:1.45; }
#view-settings .p3s-cost-panel { margin-top:14px;padding:16px;border:1px solid var(--p3a-border);border-radius:var(--radius-card);background:var(--workspace-paper,#fff);box-shadow:var(--p3a-shadow); }
#view-settings .p3s-cost-bars { display:grid;grid-template-columns:repeat(30,minmax(3px,1fr));align-items:end;gap:3px;height:132px;margin-top:14px;padding-top:6px;border-bottom:1px solid var(--p3a-border); }
#view-settings .p3s-cost-bars__col { position:relative;display:flex;align-items:flex-end;justify-content:center;height:100%;min-width:0; }
#view-settings .p3s-cost-bars__col i { display:block;width:min(100%,12px);min-height:1px;border-radius:4px 4px 1px 1px;background:#607fe5; }
#view-settings .p3s-cost-bars__col small { position:absolute;bottom:-20px;color:var(--p3a-text-muted);font-size:9px;opacity:0; }
#view-settings .p3s-cost-bars__col:nth-child(5n) small,#view-settings .p3s-cost-bars__col:last-child small { opacity:1; }
#view-settings .p3s-cost-table-wrap { max-width:100%;margin-top:12px;overflow:auto; }
#view-settings .p3s-cost-table { width:100%;min-width:620px;border-collapse:collapse;font-size:13px; }
#view-settings .p3s-cost-table th { padding:9px 10px;border-bottom:1px solid var(--p3a-border);color:var(--p3a-text-muted);font-size:11px;font-weight:700;text-align:left;text-transform:uppercase;letter-spacing:.04em; }
#view-settings .p3s-cost-table td { padding:10px;border-bottom:1px solid #edf0f5;color:var(--p3a-text);font-variant-numeric:tabular-nums;vertical-align:middle; }
#view-settings .p3s-cost-table tbody tr:last-child td { border-bottom:0; }
#view-settings .p3s-cost-table td:nth-child(4),#view-settings .p3s-cost-table td:nth-child(5) { white-space:nowrap; }
#view-settings .p3s-cost-table td small { display:block;margin-top:2px;color:var(--p3a-text-muted);font-size:11px; }
#view-settings .p3s-cost-status { display:inline-flex;align-items:center;min-height:26px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:650;white-space:nowrap; }
#view-settings .p3s-cost-status.is-ok { background:#e9f7f1;color:#18735a; }
#view-settings .p3s-cost-status.is-error { background:#fff0ed;color:#a33c32; }
#view-settings .p3s-cost-empty { margin-top:10px;padding:18px;border:1px dashed var(--p3a-border);border-radius:12px;color:var(--p3a-text-muted);font-size:13px;text-align:center; }
#view-settings .p3s-provider-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:14px; }
#view-settings .p3s-provider-row { grid-template-columns:40px minmax(0,1fr);padding:16px; }
#view-settings .p3s-provider-row__actions { grid-column:2;justify-content:flex-start;flex-wrap:wrap; }
#view-settings .p3s-registry-row { gap:16px; }
#view-settings .p3s-registry-info { min-width:0; }
#view-settings .p3s-registry-meta { flex-wrap:wrap;justify-content:flex-end; }
#view-settings .p3s-activity__stage { font-size:14px; }
#view-settings .p3s-activity__substage { max-width:none;white-space:normal; }
#view-settings .p3s-activity__row { grid-template-columns:110px 40px minmax(0,1fr) 100px 90px; }
#view-settings :is(.p3s-btn-blue,.p3s-registry-remove,.p3s-registry-edit-provider,.p3s-ws-go,.p3s-prov-tab,.p3s-period-tab,.p3s-img-chip,.p3s-img-subtab,.p3s-img-model-toggle button,.p3s-img-show-all) { min-height:44px;font-size:14px; }
#view-settings .p3r-btn { min-height:44px;font-size:14px; }
#view-settings :is(.p3s-icon-btn,.p3s-registry-edit-provider) { width:44px;min-width:44px;height:44px; }
#view-settings .p3s-role-capability { font-size:13px;line-height:1.5; }
#view-settings .p3s-role-card__head { min-height:44px; }
#view-settings .p3s-profile-role { font-size:13px; }
#view-settings .p3s-ws-card { flex-wrap:wrap; }
#view-settings .p3s-ws-info { min-width:180px; }
#view-settings .p3s-ws-go { padding-inline:16px; }
#view-settings .p3c-settings small { font-size:13px; }
#view-settings .p3c-settings .p3s-switch-row { font-size:14px; }

/* Image Studio keeps one full-width frame; each operational group is a paper card. */
#view-settings .p3s-img-shell { width:100%;max-width:none;margin:0;gap:16px;--img-ok-grad:#fff;--img-info-grad:#fff;--img-warn-grad:#fff;--img-bad-grad:#fff;--img-live-grad:#fff; }
#view-settings #p3s-sec-image-studio > .p3s-section-head { display:none; }
#view-settings .p3s-img-hero-redesign { padding:0;border:0;background:transparent;box-shadow:none;border-radius:0;gap:16px;flex-wrap:wrap; }
#view-settings .p3s-img-hero-redesign h3 { font-size:22px;margin:0 0 4px; }
#view-settings .p3s-img-hero-redesign p { font-size:13px;color:var(--p3a-text-muted); }
#view-settings .p3s-img-strip { position:static;grid-template-columns:repeat(6,minmax(0,1fr));padding:14px;background:var(--workspace-paper,#fff);border:1px solid var(--p3a-border);border-radius:var(--radius-card);backdrop-filter:none; }
#view-settings .p3s-img-strip__cell { min-width:0;padding:4px 8px;gap:4px; }
#view-settings .p3s-img-strip__cell b { font-size:20px;overflow-wrap:anywhere; }
#view-settings .p3s-img-strip__cell small { font-size:13px;color:var(--p3a-text-muted); }
#view-settings .p3s-img-strip__cell .material-symbols-outlined { font-size:22px; }
#view-settings .p3s-img-subtabs { padding:0;gap:8px;flex-wrap:wrap;overflow:visible; }
#view-settings .p3s-img-subtab { padding:10px 16px; }
#view-settings .p3s-img-panel { padding:0;min-width:0; }
#view-settings .p3s-img-ops-card { padding:16px;border:1px solid var(--p3a-border);border-radius:var(--radius-card);background:var(--workspace-paper,#fff); }
#view-settings .p3s-img-ops-head { gap:12px;flex-wrap:wrap;margin-bottom:14px; }
#view-settings .p3s-img-ops-head b { font-size:16px; }
#view-settings .p3s-img-ops-head > div > span { font-size:13px;color:var(--p3a-text-muted); }
#view-settings .p3s-img-profile-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
#view-settings .p3s-img-profile-redesign { display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;padding:16px;min-height:112px;height:100%;background:#fff;border-radius:var(--radius-lg);overflow:visible; }
#view-settings .p3s-img-profile-redesign:hover { transform:none;box-shadow:0 4px 16px rgb(36 50 82 / 7%); }
#view-settings .p3s-img-profile-ring { width:44px;height:44px; }
#view-settings .p3s-img-profile-main b { font-size:15px; }
#view-settings .p3s-img-profile-main small,#view-settings .p3s-img-profile-main .p3s-img-profile-job { font-size:13px;line-height:1.5;color:var(--p3a-text-muted); }
#view-settings .p3s-img-profile-main b,#view-settings .p3s-img-profile-main small,#view-settings .p3s-img-profile-job { white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere; }
#view-settings .p3s-img-mini-pill { font-size:13px;line-height:1.4;padding:4px 8px; }
#view-settings .p3s-img-tl-item { grid-template-columns:24px 48px minmax(0,1fr) 96px;padding:14px;gap:12px;border-radius:var(--radius-lg);background:#fff; }
#view-settings .p3s-img-tl-thumb { width:48px;height:48px;border-radius:var(--radius-md); }
#view-settings .p3s-img-tl-title,#view-settings .p3s-img-hist-title { font-size:14px;line-height:1.5;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere; }
#view-settings .p3s-img-tl-sub,#view-settings .p3s-img-tl-pct,#view-settings .p3s-img-hist-meta,#view-settings .p3s-img-hist-extra,#view-settings .p3s-img-pager-info { font-size:13px;line-height:1.5;color:var(--p3a-text-muted);overflow-wrap:anywhere; }
#view-settings .p3s-img-bento { grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch; }
#view-settings .p3s-img-bento-card { background:var(--workspace-paper,#fff);border:1px solid var(--p3a-border);border-radius:var(--radius-card);padding:18px;gap:14px;min-width:0; }
#view-settings .p3s-img-bento-card__head { flex-wrap:wrap; }
#view-settings .p3s-img-bento-card__head b { font-size:16px; }
#view-settings .p3s-img-bento-card small { font-size:13px;line-height:1.5; }
#view-settings .p3s-img-form--inline { display:grid;grid-template-columns:minmax(0,1fr);gap:12px; }
#view-settings .p3s-img-form :is(input,textarea),#view-settings .p3s-img-bento-card > label input:not([type="checkbox"]),#view-settings .p3s-img-worker-label { width:100%;min-width:0;min-height:44px;border:1px solid var(--p3a-border);border-radius:var(--radius-md);padding:10px 12px;font-size:14px;background:var(--p3a-surface-soft); }
#view-settings .p3s-img-bento-card > label input[type="checkbox"] { width:22px;height:22px;flex:0 0 22px;min-height:0; }
#view-settings .p3s-img-bento-card > .p3r-btn { align-self:flex-start;min-height:44px; }
#view-settings .p3s-img-form .p3r-btn { justify-self:start; }
#view-settings .p3s-img-model-toggle { flex-wrap:wrap;max-width:100%; }
#view-settings .p3s-img-actions { flex-wrap:wrap;gap:8px; }
#view-settings .p3s-img-hist-row { grid-template-columns:56px minmax(0,1fr);padding:16px;border-radius:var(--radius-lg);background:#fff; }
#view-settings .p3s-img-hist-actions { grid-column:2; }
#view-settings .p3s-img-hist-actions :is(button,a),#view-settings .p3s-img-pager button { min-height:44px;display:inline-flex;align-items:center;font-size:14px;border-radius:var(--radius-md); }
#view-settings .p3s-img-hist-error,#view-settings .p3s-img-drawer-logs { font-size:13px;line-height:1.6;overflow-wrap:anywhere; }
#view-settings .p3s-img-drawer-redesign { width:min(600px,100vw);max-width:100vw;border-radius:var(--radius-card) 0 0 var(--radius-card);background:var(--workspace-paper,#fff); }
#view-settings .p3s-img-drawer-redesign__head { padding:18px; }
#view-settings .p3s-img-drawer-redesign__head b { font-size:17px; }
#view-settings .p3s-img-drawer-redesign__body { padding:18px;gap:16px; }
#view-settings .p3s-img-drawer-meta span,#view-settings .p3s-img-legacy small { font-size:13px;color:var(--p3a-text-muted); }
#view-settings .p3s-img-drawer-meta b { font-size:14px;line-height:1.5; }
#view-settings .p3s-img-legacy { padding:14px;border:1px solid var(--p3a-border);border-radius:var(--radius-lg);background:var(--workspace-paper,#fff); }
#view-settings .p3s-img-legacy > summary { min-height:44px;flex-wrap:wrap;font-size:14px; }

/* Dialogs are appended to body, so they need their own explicit settings owner. */
.p3s-settings-modal .p3r-modal { max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);font-size:14px;line-height:1.5;border-radius:var(--radius-panel);background:var(--workspace-paper,#fff); }
.p3s-settings-modal .p3s-provider-modal,.p3s-settings-modal .p3s-model-editor { width:min(680px,100%); }
.p3s-settings-modal .p3s-provider-models-modal { width:min(900px,100%); }
.p3s-settings-modal .p3r-modal__head,.p3s-settings-modal .p3r-modal__body,.p3s-settings-modal .p3r-modal__foot { padding:20px; }
.p3s-settings-modal .p3r-modal__head h3 { font-size:20px; }
.p3s-settings-modal .p3s-audit-entry__label,.p3s-settings-modal .p3s-audit-filter__label { font-size:14px; }
.p3s-settings-modal :is(.p3s-audit-entry__meta,.p3s-audit-entry__time,.p3s-audit-entry__cat,.p3s-audit-entry__status,.p3s-audit-header__count,.p3s-audit-chain) { font-size:13px;line-height:1.5; }
#view-settings .p3s-2fa-meta { font-size:13px;line-height:1.5; }
#view-settings .p3s-perm-item[data-perm="danger"] { border-color:#f3c6c1; }
#view-settings .p3s-perm-item[data-perm="danger"] .p3s-perm-icon { color:#b42318;background:#fff1ef; }
#view-settings .p3s-perm-item[data-perm="danger"] .p3s-perm-name { color:#a82c24; }
.p3s-settings-modal :is(.p3r-btn--red,.p3r-btn--danger) { color:#b42318;border-color:#efb3ad;background:#fff1ef; }
.p3s-settings-modal :is(.p3r-btn--red,.p3r-btn--danger):hover { color:#912018;border-color:#d98279;background:#ffe3df; }
.p3s-settings-modal .p3s-danger-action { display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px;padding:14px;border:1px solid var(--p3a-border);border-radius:var(--radius-md); }
.p3s-settings-modal .p3s-danger-action__body { flex:1 1 280px;min-width:0;overflow-wrap:anywhere; }
.p3s-settings-modal .p3s-danger-filter { display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;font-size:14px; }
.p3s-settings-modal .p3s-danger-filter .mselect { flex:1 1 180px;min-width:0;max-width:100%; }
.p3s-settings-modal .p3s-danger-filter > label[for="p3s-purge-days"] { white-space:nowrap; }
.p3s-settings-modal :is(.p3s-form-field > span,.p3s-check-row,.mselect-button,.p3s-prov-pick-name,.p3s-available-model-row__name,.p3s-provider-callout strong,.p3s-audit-summary) { font-size:14px; }
.p3s-settings-modal :is(.p3s-form-field small,.p3s-provider-callout span:last-child,.p3s-available-model-row code,.p3s-available-model-row__meta,.p3s-available-model-row__state,.p3s-prov-pick-slug,.p3s-prov-pick-summary,.p3s-audit-detail-val,.p3s-audit-detail-key,.p3s-audit-note,.p3s-audit-time,.p3s-audit-user) { font-size:13px;line-height:1.5; }
.p3s-settings-modal :is(.p3r-btn,.p3s-btn-blue,.p3s-available-model-remove,.p3s-prov-pick-clear,.p3s-audit-filter,.p3s-model-import-toolbar button) { min-height:44px;font-size:14px; }
.p3s-settings-modal :is(.p3r-modal__close,.p3s-icon-btn) { width:44px;height:44px;min-width:44px; }
.p3s-settings-modal input:not([type="checkbox"]),.p3s-settings-modal select,.p3s-settings-modal textarea { min-height:44px;font-size:14px;max-width:100%; }
.p3s-settings-modal .p3s-form-field > input,.p3s-settings-modal .mselect { width:100%;min-width:0; }
.p3s-settings-modal .p3s-provider-callout { background:var(--p3a-surface-soft);border-color:var(--p3a-border);color:var(--p3a-text); }
.p3s-settings-modal .p3s-guide-copy { display:grid;gap:14px;color:var(--p3a-text-2);font-size:14px;line-height:1.65; }
.p3s-settings-modal .p3s-guide-copy p { margin:0;max-width:62ch;color:var(--p3a-text);font-size:15px; }
.p3s-settings-modal .p3s-guide-copy ul { display:grid;gap:10px;margin:0;padding:0;list-style:none; }
.p3s-settings-modal .p3s-guide-copy li { position:relative;padding-left:24px; }
.p3s-settings-modal .p3s-guide-copy li::before { content:'check';position:absolute;left:0;top:.2em;color:var(--p3a-brand);font:20px/1 'Material Symbols Outlined'; }
.p3s-settings-modal .p3s-available-model-row { grid-template-columns:24px minmax(0,1fr) auto;min-height:64px; }
.p3s-settings-modal .p3s-available-model-row__name,.p3s-settings-modal .p3s-available-model-row code,.p3s-settings-modal .p3s-available-model-row__meta { white-space:normal;overflow-wrap:anywhere; }
.p3s-settings-modal .p3s-prov-pick-item { min-height:44px;flex-wrap:wrap; }
@media (max-width:1199px) {
  #view-settings .p3s-provider-list { grid-template-columns:minmax(0,1fr); }
  #view-settings .p3s-img-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #view-settings .p3s-img-profile-grid,#view-settings .p3s-img-bento { grid-template-columns:minmax(0,1fr); }
  #view-settings .p3s-activity__row { grid-template-columns:86px minmax(0,1fr) 90px; }
  #view-settings .p3s-activity__icon { display:none; }
  #view-settings .p3s-activity__tokens { grid-column:2;text-align:left; }
}
@media (max-width:699px) {
  #view-settings .p3s-prov-detail__metrics { grid-template-columns:minmax(0,1fr); }
  #view-settings .p3s-cost-overview { grid-template-columns:minmax(0,1fr); }
  #view-settings .p3s-cost-bars { gap:2px; }
  #view-settings .p3s-provider-row { grid-template-columns:32px minmax(0,1fr);gap:10px;padding:12px; }
  #view-settings .p3s-provider-panel__head,#view-settings .p3s-registry-summary,#view-settings .p3s-registry-row { flex-wrap:wrap; }
  #view-settings .p3s-registry-meta { justify-content:flex-start; }
  #view-settings .p3s-img-profile-redesign { grid-template-columns:44px minmax(0,1fr); }
  #view-settings .p3s-img-profile-side { grid-column:2;align-items:flex-start; }
  #view-settings .p3s-img-tl-item { grid-template-columns:24px 40px minmax(0,1fr);gap:8px;padding:12px; }
  #view-settings .p3s-img-tl-thumb { width:40px;height:40px; }
  #view-settings .p3s-img-tl-meta { grid-column:2/-1; }
  #view-settings .p3s-img-hist-row { grid-template-columns:40px minmax(0,1fr);gap:10px;padding:12px; }
  #view-settings .p3s-img-hist-thumb { width:40px;height:40px; }
  #view-settings .p3s-img-hist-actions { grid-column:1/-1; }
  #view-settings .p3s-img-strip { padding:10px;gap:6px; }
  #view-settings .p3s-img-strip__cell { padding:4px; }
  #view-settings .p3s-img-strip__cell b { font-size:17px; }
  #view-settings .p3s-img-drawer-redesign { width:100vw; }
  .p3s-settings-modal .p3r-modal__body,.p3s-settings-modal .p3r-modal__head,.p3s-settings-modal .p3r-modal__foot { padding:16px; }
  .p3s-settings-modal .p3s-model-import-toolbar { grid-template-columns:minmax(0,1fr) auto; }
  .p3s-settings-modal .p3s-available-model-row { grid-template-columns:24px minmax(0,1fr); }
  .p3s-settings-modal .p3s-available-model-row > :last-child { grid-column:2; }
}
@media (prefers-reduced-motion:reduce) {
  #view-settings *,#view-settings *::before,#view-settings *::after { scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important; }
}
/* Agent control plane — compact visual flow. Keep this surface short; details
   live in docs/AGENT_CONTROL_REDESIGN.md. */
.p3s-agent-summary {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border: 1px solid rgba(79, 70, 229, .14);
  border-radius: 16px;
  background: rgba(255, 255, 255, .88);
}
.p3s-agent-kicker { color: #6366f1; font-size: 13px; font-weight: 800; letter-spacing: .12em; }
.p3s-agent-summary h3 { margin: 4px 0 3px; color: #172033; font-size: 16px; }
.p3s-agent-summary p { margin: 0; color: #64748b; font-size: 13px; line-height: 1.45; }
.p3s-agent-summary__state { flex-shrink: 0; display: inline-flex; align-items: center; gap: 6px; padding: 7px 10px; border-radius: 999px; color: #475569; background: #f1f5f9; font-size: 13px; white-space: nowrap; }
.p3s-agent-summary__state--shadow { color: #7c3aed; background: #f5f3ff; }
.p3s-agent-summary__state--active { color: #047857; background: #ecfdf5; }
.p3s-agent-stop { min-height: 44px; color: #b42318; border-color: #fecaca; background: #fff7f5; white-space: nowrap; }
.p3s-agent-stop .material-symbols-outlined { font-size: 18px; }
.p3s-agent-scope { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 10px 0 2px; padding: 10px 12px; border: 1px solid #e2e8f0; border-radius: 12px; color: #475569; background: rgba(248, 250, 252, .72); font-size: 12px; line-height: 1.5; }
.p3s-agent-scope b { color: #1e293b; }
.p3s-agent-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: stretch; margin: 14px 0; }
.p3s-agent-node { position: relative; display: grid; gap: 3px; min-width: 0; padding: 12px 10px 11px; border: 1px solid #e2e8f0; border-radius: 14px; background: #fff; }
.p3s-agent-node--failed { border-color: #fecaca; background: #fff8f7; }
.p3s-agent-node--completed { border-color: #bbf7d0; }
.p3s-agent-node:not(:last-child)::after { content: '›'; position: absolute; top: 50%; right: -14px; z-index: 1; color: #94a3b8; font-size: 20px; line-height: 1; transform: translate(50%, -50%); }
.p3s-agent-node__index { position: absolute; top: 8px; right: 9px; color: #94a3b8; font: 600 11px/1 ui-monospace, monospace; }
.p3s-agent-node__icon { color: #4f46e5; font-size: 20px; }
.p3s-agent-node strong { color: #1e293b; font-size: 13px; }
.p3s-agent-node span:not(.material-symbols-outlined) { overflow: hidden; color: #64748b; font-size: 13px; text-overflow: ellipsis; white-space: normal; overflow-wrap: anywhere; }
.p3s-agent-node code { overflow: hidden; color: #475569; font: 13px/1.5 ui-monospace, monospace; text-overflow: ellipsis; white-space: normal; overflow-wrap: anywhere; }
.p3s-agent-node small { color: #64748b; font-size: 11px; line-height: 1.35; }
.p3s-agent-metrics { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 14px 0; }
.p3s-agent-metric { display: grid; gap: 3px; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 14px; background: #fff; }
.p3s-agent-metric strong { color: #172033; font-size: 22px; line-height: 1; font-variant-numeric: tabular-nums; }
.p3s-agent-metric span { color: #64748b; font-size: 12px; }
.p3s-agent-metric--warn { border-color: #fed7aa; background: #fffaf3; }
.p3s-agent-metric--warn strong { color: #b45309; }
.p3s-agent-metric--ok strong { color: #047857; }
.p3s-agent-signals { margin: 12px 0; padding: 0 14px; border: 1px solid #e2e8f0; border-radius: 14px; background: #fff; }
.p3s-agent-signals summary { min-height: 42px; display: flex; align-items: center; cursor: pointer; color: #334155; font-size: 13px; font-weight: 700; }
.p3s-agent-signal { display: grid; gap: 4px; padding: 10px 0; border-top: 1px solid #eef2f7; }
.p3s-agent-signal > div { display: flex; align-items: center; gap: 8px; }
.p3s-agent-signal small { color: #64748b; overflow-wrap: anywhere; }
.p3s-agent-signal__finding { color: #475569 !important; }
.p3s-agent-signal__repair { color: #047857 !important; font-weight: 650; }
.p3s-agent-signal__state { display: inline-flex; padding: 2px 7px; border-radius: 999px; color: #475569; background: #f1f5f9; font-size: 11px; }
.p3s-agent-signal__state--failed { color: #b42318; background: #fff0ed; }
.p3s-agent-signal__state--completed { color: #18735a; background: #e9f7f1; }
.p3s-agent-controls { display: grid; grid-template-columns: minmax(190px, 1.6fr) repeat(3, minmax(100px, 1fr)); gap: 10px; padding: 14px; border: 1px solid #e2e8f0; border-radius: 14px; background: rgba(248, 250, 252, .72); }
.p3s-agent-controls .p3s-form-field { margin: 0; }
.p3s-agent-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 11px; color: #64748b; font-size: 13px; }
.p3s-agent-foot > span { display: inline-flex; align-items: center; gap: 5px; }
.p3s-agent-foot .material-symbols-outlined { font-size: 16px; }
.p3s-agent-foot a { color: #4f46e5; font-weight: 700; text-decoration: none; }
.p3s-agent-foot a:hover { text-decoration: underline; }
.p3s-agent-recovery { margin: 20px 0; padding: 16px; border: 1px solid var(--p3a-border, #e2e8f0); border-radius: var(--radius-lg); min-width: 0; }
.p3s-agent-recovery legend { font-weight: 700; color: var(--p3a-text); }
.p3s-agent-recovery p { font-size: 13px; line-height: 1.5; color: var(--p3a-text-2); }
.p3s-agent-recovery select { min-height: 44px; width: 100%; max-width: 100%; }
.p3s-agent-recovery summary { min-height: 44px; display: list-item; padding-block: 12px; cursor: pointer; font-size: 13px; }
#p3s-agent-save { min-height: 44px; }
@media (max-width: 980px) {
  .p3s-agent-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p3s-agent-node::after { display: none; }
  .p3s-agent-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p3s-agent-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 699px) {
  .p3s-agent-summary { padding: 14px; flex-wrap: wrap; }
  .p3s-agent-stop { width: 100%; justify-content: center; }
  .p3s-agent-flow { grid-template-columns: 1fr; }
  .p3s-agent-controls { grid-template-columns: 1fr; }
  .p3s-agent-foot { align-items: flex-start; flex-direction: column; }
  .p3s-agent-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.p3s-agent-memory { display: grid; gap: 8px; padding-block: 12px; overflow-wrap: anywhere; }

.p3s-agent-flow--independent { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.p3s-agent-flow--independent .p3s-agent-node::after { display: none; }
@media (max-width: 640px) { .p3s-agent-flow--independent { grid-template-columns: 1fr; } }

.p3s-agent-signal details small { display: block; margin-top: 6px; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.p3s-agent-signal details > summary::before { content: '▸ '; }
.p3s-agent-signal details[open] > summary::before { content: '▾ '; }

/* Verification Routes & Settings in Research -> Writer */
.p3s-verification-card { margin-bottom: 20px; }
.p3s-verification-form { display: grid; gap: 14px; margin-bottom: 20px; }
.p3s-verification-actions { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.p3s-route-rev-tag { font-size: 13px; color: var(--p3a-text-muted, #64748b); }
.p3s-route-rev-tag code { font-family: ui-monospace, monospace; background: var(--p3a-surface-soft, #f1f5f9); padding: 3px 6px; border-radius: 4px; color: var(--p3a-text, #1e293b); }
.p3s-routes-section { display: grid; gap: 10px; margin-top: 14px; }
.p3s-routes-section h4 { margin: 0; font-size: 15px; font-weight: 700; color: var(--p3a-text, #1e293b); }
.p3s-routes-table-wrap { overflow-x: auto; width: 100%; border: 1px solid var(--p3a-border, #e2e8f0); border-radius: var(--radius-md, 8px); background: white; }
.p3s-routes-table { width: 100%; min-width: 900px; border-collapse: collapse; font-size: 13px; text-align: left; }
.p3s-routes-table th { background: var(--p3a-surface-soft, #f8fafc); padding: 10px 12px; font-weight: 650; color: var(--p3a-text-muted, #64748b); border-bottom: 1px solid var(--p3a-border, #e2e8f0); white-space: nowrap; }
.p3s-routes-table td { padding: 10px 12px; border-bottom: 1px solid var(--p3a-border, #f1f5f9); vertical-align: middle; color: var(--p3a-text, #1e293b); }
.p3s-routes-table tr:last-child td { border-bottom: 0; }
.p3s-routes-table tr:hover td { background: var(--p3a-surface-soft, #fafbfc); }
.p3s-route-badge { display: inline-flex; align-items: center; padding: 2px 8px; border-radius: 999px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.p3s-route-badge--active { color: #047857; background: #ecfdf5; border: 1px solid #a7f3d0; }
.p3s-route-badge--shadow { color: #7c3aed; background: #f5f3ff; border: 1px solid #ddd6fe; }
.p3s-route-badge--off { color: #64748b; background: #f1f5f9; border: 1px solid #e2e8f0; }
.p3s-route-badge--legacy { color: #b45309; background: #fffbeb; border: 1px solid #fde68a; }
.p3s-route-arrow { margin: 0 4px; color: var(--p3a-text-muted, #94a3b8); }
.p3s-route-provider { font-weight: 600; }
.p3s-route-fallback { font-size: 12px; color: var(--p3a-text-2, #475569); }
.p3s-route-fallback--nopaid { color: #047857; font-weight: 600; }
.p3s-route-budget { font-size: 12px; color: var(--p3a-text-2, #475569); font-variant-numeric: tabular-nums; }
.p3s-route-desc { font-size: 12px; color: var(--p3a-text-muted, #64748b); line-height: 1.35; display: block; max-width: 260px; }
.p3s-route-dim { color: var(--p3a-text-muted, #94a3b8); font-size: 12px; }
.p3s-route-recent { display: grid; gap: 2px; font-size: 12px; }
.p3s-route-recent__state { display: inline-flex; width: fit-content; padding: 1px 6px; border-radius: 4px; font-size: 11px; font-weight: 600; }
.p3s-route-recent__state--completed { color: #047857; background: #ecfdf5; }
.p3s-route-recent__state--failed { color: #b42318; background: #fff1f2; }

