/* Shared action roles for the website, administration and Workplify. */
:root {
  --sc-action-primary:#d6e1ca;
  --sc-action-primary-hover:#c5d5b6;
  --sc-action-primary-active:#b8cba6;
  --sc-action-primary-text:#2c3a25;
  --sc-action-secondary:#f5f2e9;
  --sc-action-secondary-hover:#e9e4d8;
  --sc-action-secondary-active:#ded7c8;
  --sc-action-secondary-text:#374322;
  --sc-action-focus:#3f5945;
}
/* Sage canvas, warm light content surfaces and shared flat action roles. Status colours stay separate. */
html:has(body.sc-sage-theme), body.sc-sage-theme {
  --sc-surface-sage:#e8ebe1;
  --sc-surface-light:#fafdf6;
  --sc-surface-line:#cbd0c3;
  --sc-surface-card:#fafbf7;
  --sc-surface-quiet:#f1f3e9;
  --sc-surface-form:#f1f3e9;
  --sc-surface-card-line:#d5dbce;
  --sc-surface-field:#fafbf7;
  --sc-surface-card-shadow:0 1px 2px rgba(38,48,25,.025),0 12px 30px rgba(38,48,25,.025);
  --paper:#e8ebe1;
  --paper-2:#fafdf6;
  background:#e8ebe1;
}
body.sc-sage-theme :is(.hero,.page-hero,.p-hero,.section,.section-dark,.p-section,.v-section,.analysis-shell,.analysis-overview-shell,.analysis-toolbox-shell,.analysis-tool-light-shell,.ticket-shell,.ticket-section,.analysis-record-section,.analysis-explanation-section,.practice-section,.team-network-section,.contact-band,#account-dashboard) {
  background:var(--sc-surface-sage)!important;
}
body.sc-sage-theme :is(.section-muted,.p-section-soft,.p-check-section,.v-soft,.portal-access-section,.home-references,.sc-ki-entry,.p-home-entry,.logos-section) {
  background:var(--sc-surface-light)!important;
}
body.sc-sage-theme :is(.topbar,.topbar.is-scrolled,.p-section-nav,.v-sections) {
  background:var(--sc-surface-light)!important;
  border-color:var(--sc-surface-line)!important;
}
body.sc-sage-theme .hero::before,
body.sc-sage-theme .page-hero::before,
body.sc-sage-theme .p-hero::before {
  background:linear-gradient(90deg,rgba(232,235,225,.99) 0%,rgba(232,235,225,.93) 45%,rgba(232,235,225,.45) 72%,rgba(232,235,225,.08) 100%)!important;
}
body.sc-sage-theme .hero::after,
body.sc-sage-theme .page-hero::after,
body.sc-sage-theme .p-hero::after {
  background:linear-gradient(0deg,#e8ebe1 0%,rgba(232,235,225,.7) 42%,transparent 100%)!important;
}
body.sc-sage-theme .v-hero-photo {
  background:linear-gradient(90deg,#e8ebe1 3%,rgba(232,235,225,.93) 36%,rgba(232,235,225,.68)),linear-gradient(0deg,#e8ebe1,transparent 65%),var(--office-photo) center/cover!important;
}
body.sc-sage-theme .compact-grid { background:transparent!important; }
/* Content cards use a warm, restrained surface instead of full white. */
body.sc-sage-theme :is(.compact-card,.service-card,.insight-card,.practice-case-card,.search-result-card,.search-empty,.analysis-card,.analysis-resource-card,.analysis-kev-card,.analysis-news-card,.analysis-live-card,.analysis-empty,.analysis-trust-card,.analysis-toolbox-result,.analysis-mini-result,.v-package,.v-job,.v-job-empty,.v-mail-frame,.v-account-overview>div,.rc-card,.crm-card,.crm-metric,.crm-empty,.sc-admin-tile,.sc-admin-empty,.sc-admin-access-card,.app-example-preview,.app-architecture,.app-hr-preview,.opendesk-demo-guide,.hr-product-feature,.hr-product-preview) {
  background:var(--sc-surface-card)!important;
  border-color:var(--sc-surface-card-line)!important;
  box-shadow:var(--sc-surface-card-shadow)!important;
}
/* Secondary information blends more closely into the page. */
body.sc-sage-theme :is(.depth-panel,.list-panel,.workflow-step,.value-grid article,.trust-strip article,.proof-metrics,.location-trust article,.service-city-group,.team-network-card,.p-journey,.v-journey,.ticket-side,.p-license-strip,.p-review-card,.p-calculator,.contact-card,.app-architecture-integrations,.hr-product-demo-note) {
  background:var(--sc-surface-quiet)!important;
  border-color:var(--sc-surface-card-line)!important;
  box-shadow:none!important;
}
body.sc-sage-theme .founder-card::before {
  background:var(--sc-surface-quiet)!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
/* Warm work areas separate forms from the sage page; selected states remain distinct. */
body.sc-sage-theme :is(.contact-form,.ticket-panel,.ticket-view-panel,.ticket-admin-panel,.search-panel,.p-check-box,.p-result,.p-report-shell,.p-assistant,.p-dialog,.v-form-card,.v-order-summary,.v-payment,.v-end-dialog,.analysis-tool-card,.analysis-tool-output,.analysis-toolbox-output,.analysis-result-placeholder,.analysis-result,.analysis-tool-light-shell .list-panel) {
  background:var(--sc-surface-form)!important;
  border-color:var(--sc-surface-card-line)!important;
  box-shadow:var(--sc-surface-card-shadow)!important;
}
body.sc-sage-theme .p-package:not(.p-package-featured) {
  background:var(--sc-surface-card)!important;
  border-color:var(--sc-surface-card-line)!important;
  box-shadow:var(--sc-surface-card-shadow)!important;
}
body.sc-sage-theme :is(.compact-card,.insight-card,.practice-case-card,.search-result-card):is(:hover,:focus-within) {
  background:#f1f4eb!important;
  border-color:#aab99e!important;
  box-shadow:0 4px 18px rgba(38,48,25,.055)!important;
}
/* A quiet transition replaces the long dividing rule above the footer. */
body.sc-sage-theme main > .contact-band:last-child {
  border-bottom-color:var(--sc-surface-sage)!important;
}
body.sc-sage-theme .footer {
  background:linear-gradient(180deg,#e8ebe1 0,#f3f6ed 96px,#fafdf6 210px)!important;
  background-origin:border-box!important;
  border-top-color:transparent!important;
  box-shadow:none!important;
}
/* The public demo and real login use the same tonal language; buttons and status colours are separate. */
body.sc-sage-theme.hr-demo :is(.surface,.document-dialog),
body.sc-sage-theme :is(.auth-card,.workspace-surface,.workspace-overview-card,.workspace-module-card,.workspace-company-create,.workspace-account-dialog,.workspace-absence-calendar,.workspace-companies-grid .tenant-list li,.settings-panel>.workflow-policy,.settings-panel>.workflow-card,.settings-panel>.settings-facts:not(.workspace-time-metrics),.workspace-time-list>.workflow-card) {
  background:var(--sc-surface-form)!important;
  border-color:var(--sc-surface-card-line)!important;
  box-shadow:var(--sc-surface-card-shadow)!important;
}
body.sc-sage-theme.hr-demo :is(.public-credentials,.action-box,.journey,.parity-record-detail,.settings-record,.parity-lifecycle .workflow-card) {
  background:var(--sc-surface-quiet)!important;
  border-color:var(--sc-surface-card-line)!important;
}
body.sc-sage-theme.hr-demo .login-footer {
  border-top-color:transparent!important;
}
@media(max-width:1020px) {
  body.sc-sage-theme .topbar .nav { background:var(--sc-surface-light)!important; }
  body.sc-sage-theme .hero::before,
  body.sc-sage-theme .page-hero::before,
  body.sc-sage-theme .p-hero::before {
    background:linear-gradient(90deg,rgba(232,235,225,.98),rgba(232,235,225,.78) 75%,rgba(232,235,225,.35))!important;
  }
}

/* Consent surfaces share the palette; opt-in behaviour and action styles stay original. */
body.sc-sage-theme .cookie-banner {
  background:var(--sc-surface-quiet)!important;
  border-color:var(--sc-surface-card-line)!important;
  box-shadow:0 2px 5px rgba(38,48,25,.04),0 18px 44px rgba(38,48,25,.10)!important;
}
body.sc-sage-theme .cookie-preferences {
  background:transparent!important;
  border-top-color:var(--sc-surface-card-line)!important;
}
body.sc-sage-theme .cookie-preference-card {
  background:var(--sc-surface-card)!important;
  border-color:var(--sc-surface-card-line)!important;
  box-shadow:none!important;
}
body.sc-sage-theme .cookie-toggle-card:is(:hover,:focus-within) {
  background:var(--sc-surface-form)!important;
  border-color:#b8c7a7!important;
}
body.sc-sage-theme .cookie-toggle-card:has(input:checked) {
  background:#edf2e3!important;
  border-color:#b8c7a7!important;
}

/* Keep expanded consent settings reachable within small viewports. */
@media(max-width:1060px) {
  body.sc-sage-theme .cookie-banner {
    max-height:calc(100dvh - 36px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }
}
@media(max-width:680px) {
  body.sc-sage-theme .cookie-banner { max-height:calc(100dvh - 28px); }
}

/* Six homepage services form complete desktop rows without an exposed grid canvas. */
body.sc-sage-theme.home-page .service-grid { background:transparent!important; }
@media(min-width:1021px) {
  body.sc-sage-theme.home-page .service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

/* Personal access is a quiet full-width band rather than an inset framed card. */
body.sc-sage-theme :is(.p-hero,.v-hero)+.portal-access-section { background:var(--sc-surface-quiet)!important; }
body.sc-sage-theme :is(.p-hero,.v-hero)+.portal-access-section .portal-access-card {
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}

/* Public text fields retain their geometry and validation on a warm sage surface. */
body.sc-sage-theme:has(.topbar) :is(input:not([type="hidden"],[type="button"],[type="submit"],[type="reset"],[type="image"],[type="file"],[type="range"],[type="color"],[type="checkbox"],[type="radio"]),textarea,select) {
  background-color:var(--sc-surface-field)!important;
}
body.sc-sage-theme:has(.topbar) :is(input:not([type="hidden"],[type="button"],[type="submit"],[type="reset"],[type="image"],[type="file"],[type="range"],[type="color"],[type="checkbox"],[type="radio"]),textarea,select):is(:hover,:focus,:focus-visible) {
  background-color:#f5f7ef!important;
}
body.sc-sage-theme.home-page .hero-search {
  background:var(--sc-surface-field)!important;
}
body.sc-sage-theme.home-page .hero-search input {
  background-color:transparent!important;
}
body.sc-sage-theme.home-page .home-hero .hero-panel {
  background:var(--sc-surface-card)!important;
}
/* Large example selectors are content cards; their selected state stays recognisable. */
body.sc-sage-theme .app-scenario:not([aria-pressed="true"]) {
  background:var(--sc-surface-card)!important;
}
body.sc-sage-theme .app-scenario:not([aria-pressed="true"]):is(:hover,:focus-visible) {
  background:#f1f4eb!important;
}
body.sc-sage-theme .app-example-row {
  background:var(--sc-surface-quiet)!important;
  border-color:var(--sc-surface-card-line)!important;
}
/* Ticket and analysis interiors use the same surfaces as their surrounding cards. */
body.sc-sage-theme :is(.ticket-panel,.analysis-tool-card,.analysis-tool-output,.analysis-toolbox-output,.analysis-result-placeholder,.analysis-result) {
  background:var(--sc-surface-card)!important;
}
body.sc-sage-theme :is(.ticket-upload-box,.ticket-side-list li,.analysis-columns>div,.analysis-detail-grid>div,.analysis-record-row,.analysis-mini-result-card,.analysis-inline-list li,.analysis-stat-grid div) {
  background:var(--sc-surface-quiet)!important;
  border-color:var(--sc-surface-card-line)!important;
}
body.sc-sage-theme .ticket-upload-box:is(:hover,:focus-within) {
  background:var(--sc-surface-card)!important;
}
body.sc-sage-theme .analysis-table-wrap {
  background:var(--sc-surface-card)!important;
  border-color:var(--sc-surface-card-line)!important;
}
body.sc-sage-theme .analysis-table-wrap th {
  background:var(--sc-surface-quiet)!important;
}
body.sc-sage-theme .analysis-table-wrap td {
  background-color:#f5f7ef!important;
}

/* Placeholder text remains readable against the sage input background. */
body.sc-sage-theme:has(.topbar) :is(input,textarea)::placeholder {
  color:#656b5e!important;
  opacity:1;
}

/* Product workspaces keep their quieter warm surface, as requested, with tinted controls. */
body.sc-sage-theme.hr-demo,body.sc-sage-theme:has(.auth-header) {
  --sc-surface-card:#edf1e6;
  --sc-surface-card-line:#bcc7b0;
  --sc-surface-form:#f1f3e9;
  --sc-surface-quiet:#e8eddf;
  --sc-surface-field:#fafbf7;
  --workplify-surface:#f1f3e9;
}
body.sc-sage-theme :is(.booking-embed,.booking-activation,.booking-frame-toolbar,.booking-loading,.p-toast,.p-checkout,.p-handoff-content,.ticket-admin-create,.ticket-admin-warning-card,.ticket-admin-internal) {
  background:var(--sc-surface-form)!important;
  border-color:var(--sc-surface-card-line)!important;
}
body.sc-sage-theme :is(.p-option,.p-slot,.p-report-panel,.p-message,.ticket-meta,.ticket-note,.ticket-package-card,.ticket-admin-item,.loading-card,.address-note,.analysis-loading,.analysis-score,.analysis-kev-meta>div,.phase-list li) {
  background:var(--sc-surface-quiet)!important;
  border-color:var(--sc-surface-card-line)!important;
}
body.sc-sage-theme :is(.p-option,.ticket-package-card):is(:hover,:focus-within),
body.sc-sage-theme .p-option:has(input:checked),body.sc-sage-theme .ticket-package-card:has(input:checked) {
  background:#e9efdf!important;
  border-color:#91a67b!important;
}
/* These are deliberately secondary controls, never a blanket button override. */
body.sc-sage-theme :is(.hero-search button,.hero-search-tags a,.search-suggestion,.v-filters button,.p-process-picker button,.p-assistant-prompts button,.analysis-copy,.ticket-payment-clear,.cookie-manage,.cookie-reject,.service-city-list a,.seo-hero-tags span) {
  background:var(--secondary-bg,#d6dfcb)!important;
  border-color:transparent!important;
  color:#374322!important;
  -webkit-text-fill-color:#374322!important;
  box-shadow:none!important;
}
body.sc-sage-theme :is(.hero-search button,.hero-search-tags a,.search-suggestion,.v-filters button,.p-process-picker button,.p-assistant-prompts button,.analysis-copy,.ticket-payment-clear,.cookie-manage,.cookie-reject,.service-city-list a):is(:hover,:focus-visible) {
  background:var(--secondary-hover,#c3d1b4)!important;
  border-color:transparent!important;
}
body.sc-sage-theme :is(.v-filters button,.p-process-picker button)[aria-pressed="true"],
body.sc-sage-theme .p-process-picker button[aria-selected="true"] {
  background:var(--sc-action-primary-hover)!important;
  border-color:transparent!important;
  color:#263019!important;
}
body.sc-sage-theme :is(.hero-search button,.hero-search-tags a,.search-suggestion,.v-filters button,.p-process-picker button,.p-assistant-prompts button,.analysis-copy,.ticket-payment-clear,.cookie-manage,.cookie-reject):focus-visible {
  outline:2px solid #374322!important;
  outline-offset:3px!important;
}
body.sc-sage-theme .hero-search-tags a { background:var(--public-chip-bg,#dbe3d3)!important; }
body.sc-sage-theme .hero-search-tags a:is(:hover,:focus-visible) { background:var(--secondary-hover,#c3d1b4)!important; }
body.sc-sage-theme :is(.hero-search button,.hero-search-tags a,.search-suggestion,.v-filters button,.p-process-picker button,.p-assistant-prompts button,.analysis-copy,.ticket-payment-clear,.cookie-manage,.cookie-reject,.service-city-list a):active {
  background:var(--secondary-active,#bdcea9)!important;
}
body.sc-sage-theme:is(.hr-demo,:has(.auth-header)) :is(input:not([type="checkbox"],[type="radio"],[type="range"],[type="hidden"]),textarea,select) {
  background-color:var(--sc-surface-field)!important;
}
body.sc-sage-theme:is(.hr-demo,:has(.auth-header)) :is(.button-secondary,.button.secondary,.settings-tabs>.settings-tab,.workspace-settings-tabs>.settings-tab,.tabs>button,.record-choice,.workspace-account-button) {
  background:var(--sc-action-secondary)!important;
  border-color:#bdc9af!important;
}
body.sc-sage-theme:is(.hr-demo,:has(.auth-header)) :is(.button-secondary,.button.secondary,.settings-tabs>.settings-tab,.workspace-settings-tabs>.settings-tab,.tabs>button,.record-choice,.workspace-account-button):is(:hover,:focus-visible) {
  background:var(--sc-action-secondary-hover)!important;
  border-color:#91a67b!important;
}
body.sc-sage-theme:is(.hr-demo,:has(.auth-header)) :is(.tabs>button,.settings-tabs>.settings-tab,.workspace-settings-tabs>.settings-tab)[aria-selected="true"] {
  background:var(--sc-action-primary-hover)!important;
  border-color:#91a67b!important;
}
/* Public product secondary actions share the warm neutral role. */
body.sc-sage-theme.sc-workplify { --workplify-card:#fafbf7; }

body.sc-sage-theme.hr-demo .filter-button {
  background:var(--sc-action-secondary)!important;
  border-color:#bdc9af!important;
}
body.sc-sage-theme.hr-demo .filter-button:is(:hover,:focus-visible) {
  background:var(--sc-action-secondary-hover)!important;
  border-color:#91a67b!important;
}
body.sc-sage-theme.hr-demo .filter-button[aria-selected="true"],
body.sc-sage-theme.hr-demo .filter-button[aria-pressed="true"] {
  background:var(--sc-action-primary-hover)!important;
  border-color:#91a67b!important;
}
html body.sc-sage-theme.sc-workplify .button-secondary:not(.cookie-manage):not(.cookie-reject):is(:hover,:focus-visible){background:var(--sc-action-secondary-hover)!important;}
html body.sc-sage-theme.sc-workplify .button-secondary:not(.cookie-manage):not(.cookie-reject):active{background:var(--sc-action-secondary-active)!important;}

/* Individually identified inner panels from the rendered normal/selected-state review. */
body.sc-sage-theme :is(.app-architecture-flow li,.app-architecture-integrations li,.p-report-foot,.p-process-step.is-human,.analysis-note,.analysis-tool-note) {
  background:var(--sc-surface-quiet)!important;
  border-color:var(--sc-surface-card-line)!important;
}
body.sc-sage-theme .p-package-featured { background:#edf2e5!important; }
body.sc-sage-theme .app-scenario[aria-pressed="true"] { background:#e9efdf!important; }
body.sc-sage-theme .app-scenario:is(:hover,:focus-visible) { background:#f1f4eb!important; }
body.sc-sage-theme .p-dialog-close { background:var(--sc-action-secondary)!important; }
body.sc-sage-theme .p-dialog-close:is(:hover,:focus-visible) { background:var(--sc-action-secondary-hover)!important; }
body.sc-sage-theme :is(.insight-thumb,.analysis-card-image,.app-example-image) { background-color:var(--sc-surface-quiet)!important; }

body.sc-sage-theme :is(.analysis-kev-toolbar,.analysis-live-item,.analysis-live-tags span,.generated-password) {
  background:var(--sc-surface-quiet)!important;
  border-color:var(--sc-surface-card-line)!important;
}

/* Muted explanatory copy retains readable contrast on the stronger sage surfaces. */
body.sc-sage-theme :is(#question-count,#question-category,#question-help,.p-check-privacy,.p-tabs button,.p-metrics strong small,.p-metrics p,.p-report-foot,.p-assistant-head span,.p-assistant-foot,.p-option small,.p-small,.p-monitor-status,.p-monitor-rows>div>span,#dialog-category,#dialog-intro,.p-booking-steps p,#contact-send-hint,#ticket-required-hint,#ticket-safe-content,.ticket-upload-list) {
  color:#4f5948!important;
}
body.sc-sage-theme .analysis-risk-medium :is(strong,span) { color:#795700!important; }
body.sc-sage-theme.hr-demo .filter-button { color:#4f5948!important; }
body.sc-sage-theme.hr-demo .filter-button:is([aria-selected="true"],[aria-pressed="true"]) { color:#263019!important; }

/* U124: public actions use flat fill, not permanent frames or gradients.
   Transparent existing borders preserve geometry; focus outlines stay explicit.
   Field/card outlines and semantic status surfaces are deliberately separate. */
html body.sc-sage-theme:has(.topbar) :is(button,input[type="submit"],input[type="button"],.button,.nav-cta,.hero-search-tags a,.service-city-list a,.seo-hero-tags span,.hero-scroll-cue) {
  border-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
html body.sc-sage-theme.sc-workplify .button-secondary:not(.cookie-manage):not(.cookie-reject) { border-color:transparent!important; }
html body.sc-sage-theme:has(.topbar) :is(.v-filters button,.p-process-picker button)[aria-pressed="true"] {
  background:#c3d1b4!important;
}

/* Operational navigation is secondary; the current area keeps a sage marker. */
html body.sc-sage-theme[data-unified-admin] :is(.sc-admin-tabs button,.crm-tabs button,.crm-form-subtabs button,.crm-line-remove) {
  background:var(--sc-action-secondary)!important;
  color:var(--sc-action-secondary-text)!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
html body.sc-sage-theme[data-unified-admin] :is(.sc-admin-tabs button,.crm-tabs button,.crm-form-subtabs button,.crm-line-remove):is(:hover,:focus-visible) { background:var(--sc-action-secondary-hover)!important; }
html body.sc-sage-theme[data-unified-admin] :is(.sc-admin-tabs button,.crm-tabs button,.crm-form-subtabs button)[aria-current=page] { background:var(--sc-action-primary-hover)!important; }
html body.sc-sage-theme[data-unified-admin] :is(.sc-admin-tabs button,.crm-tabs button,.crm-form-subtabs button,.crm-line-remove):active { background:var(--sc-action-secondary-active)!important; }
html body.sc-sage-theme :is(.workspace-account-button,.sc-admin-tabs button,.crm-tabs button,.crm-form-subtabs button,.crm-line-remove):focus-visible { outline:2px solid var(--sc-action-focus)!important;outline-offset:3px; }

/* Password visibility is a secondary control, with an explicit selected state. */
html body.sc-sage-theme.hr-demo .password-field button {
  background:var(--sc-action-secondary)!important;
  color:var(--sc-action-secondary-text)!important;
}
html body.sc-sage-theme.hr-demo .password-field button:is(:hover,:focus-visible) { background:var(--sc-action-secondary-hover)!important; }
html body.sc-sage-theme.hr-demo .password-field button:is(:active,[aria-pressed="true"]) { background:var(--sc-action-primary-hover)!important; }
html body.sc-sage-theme.hr-demo .password-field button:focus-visible { outline:2px solid var(--sc-action-focus)!important;outline-offset:3px; }

html body.sc-sage-theme[data-unified-admin][data-keyboard] .sc-admin :is(button,a,summary):focus {
  outline:2px solid var(--sc-action-focus)!important;
  outline-offset:3px!important;
}

/* Public content follows the quiet Workplify workspace; fields and actions retain their geometry. */
body.sc-sage-theme:has(.topbar) :is(.compact-card,.service-card,.insight-card,.practice-case-card,.search-result-card,.analysis-card,.analysis-resource-card,.analysis-kev-card,.analysis-news-card,.analysis-live-card,.analysis-trust-card,.v-package,.v-job,.rc-card,.crm-card,.crm-metric,.sc-admin-tile,.sc-admin-access-card,.app-example-preview,.app-architecture,.app-hr-preview,.hr-product-feature,.hr-product-preview,.depth-panel,.list-panel,.workflow-step,.value-grid article,.trust-strip article,.team-network-card,.p-journey,.v-journey,.ticket-side,.contact-card,.app-scenario) { border-radius:16px; }
body.sc-sage-theme:has(.topbar) :is(.contact-form,.ticket-panel,.ticket-view-panel,.ticket-admin-panel,.search-panel,.p-check-box,.p-result,.v-form-card,.v-order-summary,.analysis-tool-card) { border-radius:18px; }
body.sc-sage-theme.home-page .service-grid { gap:22px;border:0; }
body.sc-sage-theme.home-page .service-card { min-height:260px;padding:26px;border:1px solid var(--sc-surface-card-line);display:flex;flex-direction:column;align-items:flex-start; }
body.sc-sage-theme.home-page .service-card .text-link { margin-top:auto; }
body.sc-sage-theme.home-page .service-card .service-number { margin-bottom:16px; }
body.sc-sage-theme .compact-grid { gap:22px; }
body.sc-sage-theme:has(.topbar) .v-label { color:#536153; }
body.sc-sage-theme.home-page .home-hero .hero-panel { background:linear-gradient(135deg,#fafbf7,#f1f3e9)!important; }
html body.sc-sage-theme:has(.topbar) .app-scenario[aria-pressed="true"] { background:#e9efdf!important;box-shadow:inset 3px 0 0 #8da582!important; }
body.sc-sage-theme .app-scenario[aria-pressed="true"]:is(:hover,:focus-visible) { background:#e9efdf!important; }
@media(max-width:680px) {
  body.sc-sage-theme.home-page .service-grid,body.sc-sage-theme .compact-grid { gap:18px; }
  body.sc-sage-theme.home-page .service-card { min-height:0;padding:24px; }
}

/* Shared field geometry. Checkboxes never inherit the 44 px text-field minimum. */
html body.sc-sage-theme :is(input:not([type="hidden"],[type="button"],[type="submit"],[type="reset"],[type="image"],[type="file"],[type="range"],[type="color"],[type="checkbox"],[type="radio"]),textarea,select) {
  border-color:var(--sc-surface-card-line)!important;
  border-radius:7px;
}
html body.sc-sage-theme input:is([type="checkbox"],[type="radio"]) {
  box-sizing:border-box; flex:none; width:18px; height:18px; min-width:18px;
  min-height:18px; max-height:18px; padding:0; line-height:normal;
  margin-block:3px 0; accent-color:#607747;
}
html body.sc-sage-theme .wp-sso .wp-sso-field:has(input[type="checkbox"]) { align-items:start; }
html body.sc-sage-theme .wp-sso input[type="checkbox"] { margin:3px 0 0; }
/* Sign-in is the primary action in both password and second-factor steps. */
html body.sc-sage-theme #access.auth-layout :is(#login-form>.button,.wp-security-stack form>.wp-button[type="submit"]) {
  width:100%; min-height:48px; margin-top:12px; font-weight:600;
  background:#c5d5b6!important; color:#25351f!important; border:1px solid #819471!important;
}
html body.sc-sage-theme #access.auth-layout :is(#login-form>.button,.wp-security-stack form>.wp-button[type="submit"]):hover { background:#b8cba6!important; }
html body.sc-sage-theme #access.auth-layout :is(#login-form>.button,.wp-security-stack form>.wp-button[type="submit"]):active { background:#a9bf94!important; }
