.portal-assistance-dialog { box-sizing:border-box; width:760px; max-width:calc(100% - 32px); max-height:calc(100dvh - 32px); padding:0; border:1px solid #d5d9df; border-radius:10px; background:#fafafa; color:#464b51; overflow:hidden; font:400 16px/1.5 "Source Sans 3","Segoe UI",sans-serif; }
.portal-assistance-dialog[open] { display:flex; flex-direction:column; }
.portal-assistance-dialog::backdrop { background:rgba(0,0,0,.65); }
.portal-assistance-dialog > header { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:16px 22px; border-bottom:1px solid #d5d9df; }
.portal-assistance-dialog h2 { margin:0; font:600 28px/1.25 "Barlow Condensed","Segoe UI",sans-serif; color:inherit; }
.portal-assistance-dialog > header button { border:0; background:transparent; color:inherit; padding:0 6px; font-size:28px; cursor:pointer; }
.portal-assistance-body { padding:22px; overflow:auto; overflow-wrap:anywhere; }
.portal-assistance-dialog .portal-assistance-body p { margin:0 0 16px; color:inherit; font:inherit; }
.portal-assistance-body p:last-child { margin-bottom:0; }
.portal-documentation-dialog { width:1400px; height:calc(100dvh - 48px); }
.portal-documentation-dialog .portal-assistance-body { padding:0; flex:1; min-height:0; overflow:hidden; }
.portal-documentation-dialog iframe { display:block; width:100%; height:100%; border:0; background:white; }
.portal-workspace button.portal-assessment-action { margin:0; align-self:center; flex-shrink:1; }
.portal-assistance-dialog .portal-assistance-body .portal-assessment-period { padding:10px 12px; border-left:3px solid #f07057; border-radius:3px; background:#edf0f3; color:#454b53; font-size:14px; }
html[data-portal-skin="dark"] .portal-assistance-dialog { background:#222; color:#e0e0e0; border-color:#444; }
html[data-portal-skin="dark"] .portal-assistance-dialog > header { border-color:#444; }
html[data-portal-skin="dark"] .portal-assistance-dialog .portal-assistance-body .portal-assessment-period { background:#2d3035; color:#dce0e5; }
@media(max-width:600px) { .portal-assistance-dialog { max-width:calc(100% - 16px); } .portal-assistance-dialog > header { padding:12px 14px; } .portal-assistance-body { padding:16px; } .portal-documentation-dialog { height:calc(100dvh - 16px); } }
.portal-workspace .portal-context-documentation { flex-wrap:wrap; align-items:center; gap:12px; padding-bottom:14px; }
.portal-workspace .portal-context-has-inheritance > .portal-context-documentation { padding-bottom:14px; }
/* About actions reserve an invisible border so hover/focus never shifts layout. */
html body.portal-shell .portal-workspace .portal-context-documentation > .portal-header-action.portal-header-action {
  padding:8px 12px; border:1px solid transparent !important; background:transparent !important;
}
html body.portal-shell .portal-workspace .portal-context-documentation > .portal-header-action.portal-header-action:is(:hover,:focus-visible) {
  border-color:var(--portal-box-border) !important; background:transparent !important;
}
.portal-workspace .portal-ai-review-badge { color:color-mix(in srgb,var(--portal-action,#f07057) 55%,var(--portal-text,#464b51)); font:500 12px/1.4 var(--portal-font,"Segoe UI",sans-serif); padding-right:9px; border-right:1px solid color-mix(in srgb,var(--portal-text,#464b51) 28%,var(--portal-surface,#fff)); }

.portal-workspace .portal-ai-report-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-bottom:24px; }
html body.portal-shell .portal-workspace .portal-ai-report-heading > h2 { margin:0 !important; padding:0 !important; font:600 22px/1.3 "Barlow Condensed","Segoe UI",sans-serif !important; }
.portal-workspace .portal-draft-review-heading { position:relative; padding-right:176px; box-sizing:border-box; }
html body.portal-shell .portal-workspace .portal-draft-review-heading > .portal-draft-assessment-action { display:none !important; position:absolute; right:0; top:0; margin:0 !important; }
html body.portal-shell .portal-workspace .portal-draft-review-panel:has(.portal-settings-save-dirty) > .portal-draft-review-heading > .portal-draft-assessment-action { display:inline-flex !important; }
html body.portal-shell .portal-workspace :is(.portal-draft-assessment-action,.portal-assessment-action,.portal-report-assessment-action,.portal-tenant-review-start)::after { content:none; display:none; }
.portal-workspace .portal-ai-request-action { display:flex; justify-content:flex-end; margin-bottom:12px; }
.portal-workspace .portal-tenant-review-item { padding:20px 0; border-top:1px solid var(--portal-border,#666); }
.portal-workspace .portal-tenant-review-item h3 { font:600 24px/1.3 "Barlow Condensed","Segoe UI",sans-serif; margin:0 0 14px; }
.portal-workspace .portal-tenant-review-explanation { overflow-wrap:anywhere; }
.portal-workspace .portal-tenant-review-status { margin:14px 0; color:var(--portal-muted); }
.portal-workspace .portal-tenant-review-start:disabled { opacity:.6; cursor:wait; }

.portal-workspace .portal-inventory-header-actions { display:flex; justify-content:flex-end; align-items:center; flex-wrap:wrap; gap:8px; margin-left:auto; max-width:100%; }

.portal-workspace .portal-inventory-device-heading { flex-wrap:wrap; }
.portal-workspace .portal-inventory-device-heading > .portal-header-action { margin-left:auto; }

.portal-assistance-dialog .portal-assistance-body.portal-assistance-loading { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:180px; gap:16px; text-align:center; }

.portal-workspace .portal-inventory-device-heading > .portal-header-action { position:relative; top:0; right:0; align-self:flex-start; }
@media(max-width:600px) { .portal-workspace .portal-inventory-device-heading > .portal-header-action { top:0; right:0; } }

.portal-assistance-followup { flex:none; padding:16px 22px; border-top:1px solid #d5d9df; font:400 14px/1.4 "Source Sans 3","Segoe UI",sans-serif; }
.portal-assistance-followup label { display:block; margin:0 0 8px; font-weight:600; color:inherit; }
.portal-assistance-question-row { display:flex; gap:8px; }
.portal-assistance-question-row :is(input,select) { min-width:0; flex:1; padding:10px 12px; border:1px solid #b7bec7; border-radius:6px; background:transparent; color:inherit; font:inherit; }
.portal-assistance-question-row select option { background:var(--portal-surface,#222); color:var(--portal-text,#ddd); }
.portal-ai-privacy { display:block; font:400 12px/1.45 "Source Sans 3","Segoe UI",sans-serif; opacity:.75; margin-top:12px; }
.portal-assistance-dialog > .portal-ai-privacy { flex:none; padding:0 22px 14px; margin-top:0; }
.portal-assistance-send { flex:none; padding:10px 16px; border:1px solid #f07057; border-radius:6px; background:#f07057; color:white; font:600 14px/1.4 "Source Sans 3","Segoe UI",sans-serif; cursor:pointer; }
.portal-assistance-followup :is(input,button):focus-visible { outline:2px solid #f07057; outline-offset:2px; }
.portal-assistance-followup :disabled { opacity:.6; cursor:wait; }
.portal-assistance-followup small { display:block; margin-top:8px; color:inherit; opacity:.75; font-size:12px; }
.portal-assistance-followup-status { display:flex; align-items:center; gap:10px; margin-top:8px; }
.portal-assistance-followup-status:empty { display:none; }
.portal-assistance-followup-status .portal-login-spinner { width:20px; height:20px; border-width:2px; flex:none; }
.portal-assistance-turn { margin-top:20px; padding-top:16px; border-top:1px solid #d5d9df; }
.portal-assistance-turn .portal-assistance-question { font-weight:600 !important; color:inherit; }
.portal-assistance-sources { display:flex; flex-direction:column; gap:6px; margin-top:12px; }
.portal-assistance-sources a { color:inherit; text-decoration:underline; overflow-wrap:anywhere; font-size:14px; }
.portal-assistance-sources a:focus-visible { outline:2px solid #f07057; outline-offset:2px; }
.portal-ai-source-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:8px 18px; margin-left:auto; }
.portal-ai-source-actions:empty { display:none; }
.portal-workspace .portal-audit-panel-heading > .portal-ai-source-actions { order:2; }
.portal-workspace .portal-audit-panel-heading > .portal-context-report-links { order:3; margin-left:18px; }
.portal-workspace .portal-audit-panel-heading > :is(.portal-ai-source-actions,.portal-context-report-links) { align-self:flex-start; margin-top:0 !important; }
.portal-workspace :is(.portal-audit-panel-heading,.portal-list-filter-header) > :is(.portal-ai-source-actions,.portal-context-report-links,.portal-audit-search-actions),

.portal-workspace .portal-draft-review-heading > .portal-draft-assessment-action { position:relative; top:0; right:0; }
.portal-workspace .portal-inventory-header-actions > .portal-header-expand { order:3; }
.portal-workspace .portal-ai-report-heading > .portal-header-action { position:relative; top:0; right:0; }
.portal-workspace .portal-list-results-header > .portal-list-search-toggle:not(.portal-inventory-actions) { position:relative; top:0; right:0; align-self:flex-start; }
.portal-workspace .portal-ai-toggle input { appearance:none; position:relative; width:46px; height:24px; margin:0; border:1px solid var(--portal-box-border,#888); border-radius:24px; background:var(--portal-muted,#888); cursor:pointer; vertical-align:middle; }
.portal-workspace .portal-ai-toggle input::before { content:''; position:absolute; width:18px; height:18px; top:2px; left:2px; border-radius:50%; background:#fff; transition:transform .15s; }
.portal-workspace .portal-ai-toggle input:checked { background:#f07057; border-color:#f07057; }
.portal-workspace .portal-ai-toggle input:checked::before { transform:translateX(22px); }
.portal-workspace .portal-ai-toggle input:focus-visible { outline:2px solid #f07057; outline-offset:3px; }
.portal-ai-preview-note { font-size:13px; opacity:.8; }
.portal-workspace .portal-audit-panel-heading:has(.portal-ai-source-actions) { flex-wrap:wrap; align-items:flex-start; }
.portal-workspace .portal-ai-source-actions .portal-header-action { white-space:nowrap; }
.portal-assistance-full-review { display:inline-block; margin-top:12px; color:inherit; text-decoration:underline; }
.portal-tenant-review-explanation[aria-busy="true"] .portal-login-spinner { display:inline-block; width:22px; height:22px; border-width:3px; vertical-align:middle; margin-right:8px; }
.portal-workspace .portal-inventory-header-actions > span { display:contents; }
.portal-workspace .portal-list-results-header:has(.portal-inventory-header-actions) { flex-wrap:wrap; }
.portal-workspace .portal-list-results-header > .portal-inventory-actions.portal-list-search-toggle { flex:1 1 400px; min-width:0; max-width:100%; }
.portal-assistance-dialog .portal-assistance-body .portal-assistance-documentation-note { font-size:13px; opacity:.8; }
html[data-portal-skin="dark"] :is(.portal-assistance-followup,.portal-assistance-turn) { border-color:#444; }
html[data-portal-skin="dark"] .portal-assistance-question-row input { border-color:#555; }
.portal-tenant-review-explanation > .portal-assistance-followup { padding:16px 0 0; margin-top:18px; }
@media(max-width:600px) { .portal-assistance-followup { padding:12px 14px; } }

.portal-workspace .portal-ai-review-tools { display:flex; justify-content:flex-end; align-items:flex-start; flex-wrap:wrap; gap:12px; margin-left:auto; max-width:100%; position:relative; top:0; right:0; }
@media(max-width:600px) { .portal-workspace .portal-ai-review-tools { top:0; right:0; } }
.portal-workspace .portal-list-results-header > .portal-audit-panel-heading:has(.portal-ai-source-actions) { flex:1; }
.portal-ai-privacy a { color:inherit; font:inherit; text-decoration:underline; }
/* Header links share the caption row; panel insets do not add offsets to nested actions. */
.portal-workspace :is(.portal-compact-heading,.portal-ai-report-heading,.portal-report-panel-heading,.product-report-heading):has(> :is(.portal-header-action,.portal-context-report-links,.portal-ai-source-actions,.portal-ai-review-tools)) { align-items:flex-start; }
.portal-workspace { --portal-panel-action-top:20px; }
.portal-workspace .portal-audit-results-card > :is(.portal-audit-panel-heading,.portal-context-results-heading,.portal-list-results-header,.portal-ai-report-heading) { padding:var(--portal-panel-action-top) var(--portal-panel-inline-inset) 8px; }
.portal-workspace .portal-list-results-header > .portal-audit-panel-heading { padding:0; margin:0; }
.portal-workspace :is(.portal-audit-panel-heading,.portal-list-filter-header,.portal-list-results-header,.portal-compact-heading,.portal-context-about-heading) > :is(.portal-ai-source-actions,.portal-context-report-links,.portal-audit-search-actions,.portal-list-search-toggle,.portal-export-menu,.portal-header-action),
.portal-workspace .portal-inventory-header-actions { position:static; top:auto; right:auto; align-self:flex-start; margin-top:0 !important; }
.portal-workspace .portal-audit-panel-heading > .portal-ai-source-actions { margin-left:auto; }
html body.portal-shell .portal-workspace [data-portal-control^="ClientDetails/"] .portal-card > .portal-context-about-heading:not(.portal-audit-panel-heading) > .portal-context-report-links { margin-top:0 !important; }
.portal-workspace .portal-draft-review-panel { position:relative; }
.portal-workspace .portal-draft-review-panel > .portal-draft-review-heading { position:static; }
html body.portal-shell .portal-workspace .portal-draft-review-heading > .portal-draft-assessment-action { position:absolute; top:var(--portal-caption-inset); right:var(--portal-panel-inline-inset); }
.portal-workspace .portal-ai-source-actions .portal-header-action { margin-block:0 !important; }
.portal-workspace .portal-ai-request-action[hidden] { display:none; }
.portal-workspace #page-title .portal-request-header-actions > .portal-context-report-links { align-items:center; flex-wrap:wrap; gap:4px; }
html body.portal-shell .portal-workspace #page-title .portal-request-header-actions .portal-header-action { border:1px solid transparent !important; }
html body.portal-shell .portal-workspace #page-title .portal-request-header-actions .portal-header-action:is(:hover,:focus-visible) { border-color:var(--portal-box-border,#777) !important; background:rgba(110,120,132,.12) !important; }
.portal-workspace .portal-tenant-ai-details { margin-top:24px; }
.portal-workspace .portal-tenant-ai-details .portal-ai-detail-sections { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.portal-workspace .portal-tenant-ai-details h3 { margin:0 0 10px; color:#f07057 !important; font:600 17px/1.3 var(--portal-font); }
.portal-workspace .portal-tenant-ai-details p { margin:0; }
@media(max-width:1100px) { .portal-workspace .portal-tenant-ai-details .portal-ai-detail-sections { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .portal-workspace .portal-tenant-ai-details .portal-ai-detail-sections { grid-template-columns:minmax(0,1fr); } }
