/* Shared identity; document layouts and signature canvases retain their own styles. */
:root { --baumann-purple:#643182; --baumann-ink:#293432; --baumann-muted:#65716e; --baumann-line:#dce3df; --baumann-green:#276a59; --baumann-soft:#f3edf5; }
body[data-experience] { color:var(--baumann-ink); background:#f5f7f6; font-family:"Segoe UI",Arial,sans-serif; }
body[data-experience] :focus-visible { outline:3px solid #9658a0; outline-offset:3px; }
body[data-experience] [hidden] { display:none!important; }
.experience-search { display:flex; align-items:center; gap:10px; margin:14px 0; }
.experience-search input { min-width:0; flex:1; height:44px; padding:0 13px; border:1px solid #bac9c2; border-radius:5px; background:#fff; color:#293432; font:inherit; }
.experience-search output { color:#596b64; font-size:12px; white-space:nowrap; }
.experience-empty { padding:24px; border:1px dashed #c6d2cb; color:#596b64; text-align:center; }
.experience-jump { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 16px; border-bottom:1px solid var(--baumann-line); background:#f8faf9; color:#4b5c54; font-size:13px; }
.experience-jump select { width:min(300px,65%); min-width:0; height:40px; padding:0 10px; border:1px solid #c4cec8; background:white; color:#293432; border-radius:4px; font:inherit; }

/* Administration: a light navigation rail and restrained, dense work surfaces. */
body[data-experience="workspace"] { --accent:#643182; --line:#dce3df; --muted:#63736d; --sidebar:#fff; --sidebar-muted:#62736a; }
body[data-experience="workspace"] .app-shell { grid-template-columns:250px minmax(0,1fr); }
body[data-experience="workspace"] .sidebar { background:#fff; color:#293432; border-right:1px solid #dce3df; z-index:25; }
body[data-experience="workspace"] .brand { min-height:86px; height:86px; padding:16px; border-bottom:1px solid #e3e8e5; }
body[data-experience="workspace"] .brand img { width:45px; height:45px; object-fit:contain; }
body[data-experience="workspace"] .brand strong { font:600 17px/1.2 Georgia,serif; color:#4c2455; }
body[data-experience="workspace"] .brand span { margin-top:5px; color:#62736a; font-size:11px; }
.workspace-navigation-search { display:block; margin:14px 12px 0; }
.workspace-navigation-search input { width:100%; height:38px; padding:0 11px; border:1px solid #dce3df; border-radius:5px; background:#f8faf9; font-size:13px; }
body[data-experience="workspace"] #nav { padding:10px; scrollbar-width:thin; }
body[data-experience="workspace"] .nav-label { color:#66786e; font-size:10px; padding:18px 12px 6px; letter-spacing:0; }
body[data-experience="workspace"] .nav-button { color:#43574c; height:39px; border-radius:5px; font-size:13px; }
body[data-experience="workspace"] .nav-button:hover { background:#f0f5f2; color:#294637; }
body[data-experience="workspace"] .nav-button.active { background:#f0e6f3; color:#64276d; box-shadow:inset 3px 0 #643182; font-weight:700; }
body[data-experience="workspace"] .nav-button .badge { background:#e8edef; color:#496058; font-size:11px; }
body[data-experience="workspace"] .nav-subitem { color:#66736c; }
body[data-experience="workspace"] .branch-switcher { background:#f9fbfa; border-top:1px solid #dce3df; padding:10px 12px; }
body[data-experience="workspace"] .branch-switcher>span { color:#617469; font-size:10px; }
body[data-experience="workspace"] .branch-switcher button { border-color:#d0dbd4; color:#344b3e; background:white; }
body[data-experience="workspace"] .user-card { background:#eef4f0; border-top:1px solid #dce3df; }
body[data-experience="workspace"] .user-card div span { color:#66766c; }
body[data-experience="workspace"] .user-card .avatar { color:#652d6e; background:#e9ddec; }
body[data-experience="workspace"] .topbar { height:70px; padding:0 26px; gap:16px; background:#fff; }
body[data-experience="workspace"] .global-search { width:min(650px,60%); }
body[data-experience="workspace"] .global-search input { height:42px; background:#f5f8f6; border-color:#dce3df; border-radius:6px; }
body[data-experience="workspace"] .content { padding:26px; }
body[data-experience="workspace"] .page-head { margin-bottom:25px; }
body[data-experience="workspace"] .page-head h1 { font-size:26px; font-weight:650; color:#283d32; }
body[data-experience="workspace"] :is(.page-head,.record-workspace-head,.panel)>:is(h1,h2,header),body[data-experience="workspace"] .page-head h1,body[data-experience="workspace"] .record-workspace-head h1,body[data-experience="workspace"] .panel h2 { font-family:"Segoe UI",Arial,sans-serif; }
body[data-experience="workspace"] .page-head p { font-size:13px; }
body[data-experience="workspace"] .button { border-radius:5px; min-height:38px; box-shadow:none; }
body[data-experience="workspace"] .button.primary { background:#643182; border-color:#643182; }
body[data-experience="workspace"] .metric-grid { gap:12px; }
body[data-experience="workspace"] .metric { min-height:108px; border:0; border-left:3px solid var(--metric-color,#643182); border-radius:0; background:#fff; padding:15px 17px; box-shadow:0 1px 0 #dce3df; }
body[data-experience="workspace"] .metric strong { font-size:29px; font-weight:650; }
body[data-experience="workspace"] .panel { border:1px solid #dce3df; border-radius:5px; box-shadow:none; }
body[data-experience="workspace"] table { font-size:13px; }
body[data-experience="workspace"] th { color:#50665a; background:#eff4f1; font-size:11px; padding-top:13px; padding-bottom:13px; }
body[data-experience="workspace"] td { padding-top:13px; padding-bottom:13px; }
body[data-experience="workspace"] tbody tr:nth-child(even) { background:#fafcfb; }
body[data-experience="workspace"] tbody tr:hover { background:#f1eaf4; }
body[data-experience="workspace"] .status { border-radius:4px; padding:4px 8px; font-size:11px; }
body[data-experience="workspace"] .record-workspace { background:#fff; border:1px solid #dce3df; }
body[data-experience="workspace"] .record-workspace-head { background:#fff; padding:18px 22px; border-bottom:1px solid #e1e7e3; }
body[data-experience="workspace"] .case-summary { padding:22px; border:0; border-left:4px solid #643182; background:#f7f3f8; }
body[data-experience="workspace"] .case-summary h3 { font-size:20px; color:#512559; }
body[data-experience="workspace"] .case-tabs { display:flex; flex-wrap:wrap; gap:4px; padding:12px 16px; border-bottom:1px solid #dce3df; overflow:visible; background:#fff; }
body[data-experience="workspace"] .case-tabs .tab { min-height:36px; border:0; border-radius:4px; padding:8px 11px; font-size:12px; color:#52675b; }
body[data-experience="workspace"] .case-tabs .tab.active { background:#643182; color:#fff; box-shadow:none; }
body[data-experience="workspace"] .case-tabs .tab.active span { color:#643182; background:#fff; }
body[data-experience="workspace"] .record-workspace-foot { background:#fff; border-top:1px solid #dce3df; box-shadow:0 -5px 20px #20362908; }
#workspace-menu-toggle,#workspace-menu-backdrop { display:none; }

/* Family, memorial, deregistration and mourning-print portals. */
body[data-experience="portal"] { --primary:#643182; --primary-dark:#592660; --line:#dce3df; --muted:#63736d; --sage:#276a59; }
body[data-experience="portal"] .portal-header { height:88px; background:#fff; border-top:4px solid #643182; border-bottom:1px solid #dce3df; box-shadow:none; padding-inline:max(24px,calc((100vw - 1240px)/2)); }
body[data-experience="portal"] .portal-brand img { width:250px; max-width:40vw; height:62px; object-fit:contain; }
body[data-experience="portal"] .portal-context { color:#513556; }
body[data-experience="portal"] .button { min-height:44px; border-radius:5px; font-size:14px; padding:10px 18px; box-shadow:none; }
body[data-experience="portal"] #portal-app { padding-bottom:60px; }
body[data-experience="portal"] .portal-hero { min-height:180px; padding:32px; border:0; border-left:4px solid #643182; background:#f0e9f3; color:#46364b; }
body[data-experience="portal"] .portal-hero::before,body[data-experience="portal"] .portal-hero::after { display:none; }
body[data-experience="portal"] .portal-hero h1 { color:#55275f; font-size:38px; font-weight:400; }
body[data-experience="portal"] .portal-hero p,body[data-experience="portal"] .portal-hero .portal-eyebrow { color:#64616b; }
body[data-experience="portal"] .portal-hero-botanical { display:none; }
body[data-experience="portal"] .portal-mark { background:#fff; color:#643182; border:1px solid #d8c7de; }
body[data-experience="portal"] .portal-content { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:30px; }
body[data-experience="portal"] .portal-content>div,body[data-experience="portal"] .portal-content>aside { min-width:0; }
body[data-experience="portal"] .portal-section-kicker { color:#643182; }
body[data-experience="portal"] .portal-section :is(input,select,textarea) { font-size:15px; }
body[data-experience="portal"] .portal-section { border:0; border-top:1px solid #dce3df; border-radius:0; box-shadow:none; background:#fff; padding:26px; }
body[data-experience="portal"] .portal-section h2 { font-size:25px; color:#423747; }
body[data-experience="portal"] .portal-content aside .portal-section { background:#edf4f0; }
body[data-experience="portal"] .portal-content aside .portal-section h2 { font-size:22px; }
body[data-experience="portal"] .family-quick-nav { position:sticky; z-index:10; top:0; padding:10px; gap:6px; background:#fff; border:1px solid #dce3df; border-radius:0; }
body[data-experience="portal"] .family-quick-nav a { color:#64346c; border:0; border-radius:4px; background:#f5eff7; min-height:42px; }
body[data-experience="portal"] .family-overview-grid { gap:0; border-block:1px solid #dce3df; }
body[data-experience="portal"] .family-overview-grid article { border:0; border-radius:0; border-right:1px solid #dce3df; background:#fff; }
body[data-experience="portal"] .family-overview-grid article:nth-child(even) { background:#f3f8f5; }
body[data-experience="portal"] .family-overview-grid strong { color:#62326d; }
body[data-experience="portal"] .family-scope-group { border-radius:5px; box-shadow:none; }
body[data-experience="portal"] .family-file-upload { border-radius:5px; background:#f7f4f9; }
body[data-experience="portal"] .family-urn-arrival { border-radius:0; background:#e8f3ec; border-left:4px solid #31715d; color:#235242; }
body[data-experience="portal"] .dereg-tabs,body[data-experience="portal"] .print-category-tabs { padding:8px; gap:8px; background:#fff; border:1px solid #dce3df; border-radius:0; }
body[data-experience="portal"] .dereg-tabs button,body[data-experience="portal"] .print-category-tabs button { border:0; border-radius:5px; background:#f5f7f6; box-shadow:none; }
body[data-experience="portal"] .dereg-tabs button.active,body[data-experience="portal"] .print-category-tabs button.active { background:#f0e6f4; box-shadow:inset 0 -3px #643182; color:#5f2a69; }
body[data-experience="portal"] .dereg-overview { gap:0; border-block:1px solid #dce3df; }
body[data-experience="portal"] .dereg-overview article { border:0; border-right:1px solid #dce3df; border-radius:0; background:#fff; }
body[data-experience="portal"] .dereg-category-grid { grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); }
body[data-experience="portal"] .dereg-history-card { border-radius:6px; box-shadow:none; border-color:#dce3df; }
body[data-experience="portal"] .dereg-history-card .dereg-delivery { background:#eef5f0; color:#2d5c43; }
body[data-experience="portal"] .dereg-history-card .dereg-delivery.team { background:#faf3e8; color:#7c5825; }
body[data-experience="portal"] .portal-process { border-radius:0; background:#eef4f0; color:#4f675b; }
body[data-experience="portal"][data-portal="search"] .search-intro { min-height:360px; padding:0 24px; background:#f0e9f3; color:#54375a; border-bottom:1px solid #d9ccdf; }
body[data-experience="portal"][data-portal="search"] .search-intro::before { background:rgba(248,245,250,.93); }
body[data-experience="portal"] .search-intro-inner { min-height:360px; padding:46px 0; }
body[data-experience="portal"] .search-intro h1 { font:48px/1.12 Georgia,serif; color:#54285c; }
body[data-experience="portal"] .search-intro p,body[data-experience="portal"] .search-intro-inner>span { color:#655e6c; }
body[data-experience="portal"] .memorial-result { border-radius:6px; box-shadow:none; border-color:#dce3df; }
body[data-experience="portal"][data-portal="memorial"] .memorial-hero { min-height:460px; background-color:#ece5ee; border-bottom:3px solid #643182; }
body[data-experience="portal"][data-portal="memorial"] .memorial-hero::before { background:rgba(249,247,250,.91); }
body[data-experience="portal"][data-portal="memorial"] .memorial-hero::after { display:none; }
body[data-experience="portal"] .memorial-hero-inner { padding-block:46px; }
body[data-experience="portal"] .memorial-identity h1 { color:#53265d; font-weight:400; font-size:48px; text-shadow:none; }
body[data-experience="portal"] .memorial-hero .portal-eyebrow,body[data-experience="portal"] .memorial-portrait-wrap>span { color:#6a4672; }
body[data-experience="portal"] .memorial-hero .memorial-life-dates strong,body[data-experience="portal"] .memorial-hero blockquote { color:#57535e; }
body[data-experience="portal"] .memorial-hero .memorial-life-dates small { color:#68766c; }
body[data-experience="portal"] .memorial-age { background:#fff; color:#67366f; border:1px solid #d3bfd9; }
body[data-experience="portal"] .memorial-portrait { border:5px solid white; box-shadow:0 10px 30px #5b386017; background:#e6dce9; color:#643182; }
body[data-experience="portal"] .memorial-hero-events article { background:#fff; border:1px solid #dce3df; border-radius:5px; color:#414943; }
body[data-experience="portal"] .memorial-event-copy>span,body[data-experience="portal"] .memorial-event-icon { color:#643182; }
body[data-experience="portal"] .memorial-event-copy strong,body[data-experience="portal"] .memorial-event-copy time,body[data-experience="portal"] .memorial-event-place b { color:#36473d; }
body[data-experience="portal"] .memorial-event-place small { color:#68736d; }
body[data-experience="portal"] .memorial-event-place { border-top-color:#e0e7e2; }
body[data-experience="portal"] .memorial-tabs { border-block:1px solid #dce3df; background:#fff; }
body[data-experience="portal"] .memorial-tabs button { border-radius:0; background:transparent; color:#627366; }
body[data-experience="portal"] .memorial-tabs button.active { color:#643182; background:#f5eff7; border-color:#643182; }
body[data-experience="portal"] .memorial-callout { background:#eef4f0; color:#344e3e; border:0; border-left:3px solid #62907b; border-radius:0; box-shadow:none; }
body[data-experience="portal"] .memorial-callout h3 { color:#354c3f; }
body[data-experience="portal"] .memorial-form-pane { background:#f1eaf5; border-radius:0; box-shadow:none; }
body[data-experience="portal"] .memorial-entry { background:#fff; border:1px solid #e0e7e2; border-radius:6px; box-shadow:none; }
body[data-experience="portal"]>footer { padding:26px; border-top:1px solid #dce3df; color:#64726b; background:#fff; }

/* Authority portal: a document-oriented, scan-friendly two-column workspace. */
body[data-experience="authority"] { --primary:#643182; --primary-soft:#f3edf5; --line:#dce3df; background:#f4f7f5; }
body[data-experience="authority"] .portal-header { background:#fff; color:#293d32; border-top:4px solid #643182; box-shadow:none; }
body[data-experience="authority"] .portal-brand strong { font:600 21px Georgia,serif; color:#593061; }
body[data-experience="authority"] .portal-brand span { color:#67756d; }
body[data-experience="authority"] .portal-account { color:#43594c; }
body[data-experience="authority"] .portal-main { max-width:1500px; padding:32px; }
body[data-experience="authority"] .portal-page-head h1 { font-size:30px; font-weight:650; }
body[data-experience="authority"] .portal-metrics { gap:0; border-block:1px solid #dce3df; background:white; }
body[data-experience="authority"] .portal-metrics>article { border:0; border-right:1px solid #dce3df; border-radius:0; box-shadow:none; }
body[data-experience="authority"] .case-list-panel,body[data-experience="authority"] .case-detail-panel { border-radius:5px; border-color:#dce3df; box-shadow:none; }
body[data-experience="authority"] .case-list-item { padding:18px 15px; border-radius:0; border-bottom:1px solid #e5ebe7; }
body[data-experience="authority"] .case-list-item.active { background:#f0e7f4; color:#62306a; border-left:3px solid #643182; }
body[data-experience="authority"] .experience-search { padding:0 12px; flex-wrap:wrap; }
body[data-experience="authority"] .login-view { background:#f0f4f1; }
body[data-experience="authority"] .login-card { border-radius:8px; border:1px solid #d9e2dc; border-top:4px solid #643182; box-shadow:0 20px 70px #324b3d12; }

/* Mobile work: more legible type, touch targets, and stable scrolling. */
body[data-experience="field"] { --purple:#643182; --purple-dark:#592660; --muted:#66746b; --line:#dce3df; background:#f4f7f5; }
body[data-experience="field"] .app-header { min-height:78px; background:#fff; color:#45314c; border-top:4px solid #643182; border-bottom:1px solid #dce3df; box-shadow:none; }
body[data-experience="field"] .brand strong { font-size:19px; }
body[data-experience="field"] .brand span { color:#647469; font-size:12px; }
body[data-experience="field"] .icon-action { background:#f4eef7; color:#643182; border-color:#ddcfe3; width:44px; height:44px; }
body[data-experience="field"] .app-main { width:min(1040px,100%); padding:26px 22px 112px; }
body[data-experience="field"] .welcome h1 { font-family:"Segoe UI",sans-serif; font-size:25px; }
body[data-experience="field"] .welcome .connection { border:0; background:#eaf2ed; color:#32654d; border-radius:4px; padding:8px 10px; font-size:12px; }
body[data-experience="field"] .metrics { background:white; border:0; border-bottom:1px solid #dce3df; border-left:3px solid #643182; }
body[data-experience="field"] .metrics div { padding:19px; }
body[data-experience="field"] .metrics small { font-size:12px; }
body[data-experience="field"] .metrics strong { font-size:30px; }
body[data-experience="field"] .appointment-group>header h2 { font-size:17px; }
body[data-experience="field"] .appointment-card { box-shadow:none; border-color:#dce3df; border-left:4px solid #b385c1; border-radius:6px; }
body[data-experience="field"] .appointment-card.confirmed { border-left-color:#31775d; }
body[data-experience="field"] .appointment-card.declined { border-left-color:#ad4d49; }
body[data-experience="field"] .appointment-card>header { grid-template-columns:80px minmax(0,1fr) auto; padding:19px; }
body[data-experience="field"] .appointment-card h2 { font-size:23px; }
body[data-experience="field"] .appointment-card time b { font-size:20px; }
body[data-experience="field"] .appointment-card time span,body[data-experience="field"] .appointment-kind { font-size:11px; }
body[data-experience="field"] .appointment-card header p,body[data-experience="field"] .location strong { font-size:14px; }
body[data-experience="field"] .appointment-card footer button { min-height:46px; font-size:14px; }
body[data-experience="field"] .mobile-nav { min-height:76px; background:#fff; border-top:1px solid #dce3df; box-shadow:none; }
body[data-experience="field"] .mobile-nav button { font-size:12px; color:#627569; }
body[data-experience="field"] .mobile-nav button.active { color:#643182; background:#f3edf5; }
body[data-experience="field"] :is(.case-detail,.case-data-editor,.invoice-editor,.catalog-detail) { background:#f4f7f5; }
body[data-experience="field"] :is(.case-detail,.case-data-editor,.invoice-editor,.catalog-detail)>header { background:#fff; color:#4f3157; border-top:4px solid #643182; border-bottom:1px solid #dce3df; }
body[data-experience="field"] :is(.case-detail,.case-data-editor,.invoice-editor,.catalog-detail)>header small { color:#657669; font-size:11px; }
body[data-experience="field"] :is(.case-detail,.case-data-editor,.invoice-editor,.catalog-detail)>header button { background:#f3edf5; color:#643182; border-color:#decfe3; }
body[data-experience="field"] .invoice-panel,body[data-experience="field"] .detail-section { border-radius:5px; border-color:#dce3df; box-shadow:none; }
body[data-experience="field"] :is(.invoice-panel,.detail-section)>header h2 { font-size:18px; }
body[data-experience="field"] :is(.invoice-panel,.detail-section)>header p { font-size:12px; }
body[data-experience="field"] :is(.invoice-fields,.invoice-notes,.case-data-editor) label { font-size:12px; }
body[data-experience="field"] :is(.invoice-fields,.case-data-editor) :is(input,select,textarea) { min-height:44px; font-size:15px; }
body[data-experience="field"] .case-data-editor .case-form-tabs { padding:8px; background:#fff; border-top:0; box-shadow:none; }
body[data-experience="field"] .case-form-tabs button { font-size:13px; }
body[data-experience="field"] .catalog-card { border-radius:6px; box-shadow:none; }
body[data-experience="field"] .catalog-card-copy h2 { font-size:21px; }
body[data-experience="field"] .catalog-card-copy p { font-size:14px; line-height:1.6; }
body[data-experience="field"] .catalog-card footer button { min-height:44px; font-size:13px; }
body[data-experience="field"] .catalog-detail-info p { font-size:15px; line-height:1.7; }
body[data-experience="driver"] { background:#f4f7f5; }
body[data-experience="driver"] .mobile-head { background:white; color:#45304e; border-top:4px solid #643182; border-bottom:1px solid #dce3df; box-shadow:none; }
body[data-experience="driver"] .mobile-brand strong { font:600 19px Georgia,serif; color:#5b3064; }
body[data-experience="driver"] .mobile-connection { color:#486c59; }
body[data-experience="driver"] .mobile-vehicle-chip { color:#456250; background:#eef4f0; border-color:#d5e0d9; }
body[data-experience="driver"] .mobile-vehicle-chip strong { color:#456250; }
body[data-experience="driver"] .mobile-tabs { background:#fff; border-top:1px solid #e1e9e3; }
body[data-experience="driver"] .mobile-tab { min-height:52px; color:#607468; font-size:14px; }
body[data-experience="driver"] .mobile-tab.active { background:#f1e9f5; color:#643182; border-bottom-color:#643182; }
body[data-experience="driver"] .mobile-main { max-width:1060px; padding:24px; }
body[data-experience="driver"] .mobile-summary { background:#fff; gap:0; border-bottom:1px solid #dce3df; }
body[data-experience="driver"] .mobile-metric { border:0; border-right:1px solid #dce3df; border-radius:0; background:transparent; padding:18px; }
body[data-experience="driver"] .mobile-metric strong { color:#643182; font-size:26px; }
body[data-experience="driver"] .mobile-metric span,body[data-experience="driver"] .route-mobile span { font-size:12px; }
body[data-experience="driver"] .ticket { background:white; border:1px solid #dce3df; border-left:4px solid #643182; border-radius:6px; box-shadow:none; margin-bottom:16px; padding:22px; }
body[data-experience="driver"] .ticket h2 { font-size:22px; color:#334a3b; }
body[data-experience="driver"] .ticket-number { color:#643182; font-weight:700; }
body[data-experience="driver"] .route-mobile { background:#f3f7f4; padding:18px; border-radius:4px; }
body[data-experience="driver"] .route-mobile strong { font-size:16px; }
body[data-experience="driver"] .ticket-button { background:#643182; color:#fff; min-height:46px; padding:0 24px; border-radius:5px; font-size:14px; }
body[data-experience="driver"] .ticket-foot { flex-wrap:wrap; gap:12px; padding-top:18px; }
body[data-experience="driver"] .ticket-foot>span { font-size:12px; }
body[data-experience="driver"] .mobile-login { background:#f1f5f2; }
body[data-experience="driver"] .mobile-login-card { border-radius:8px; border-top:4px solid #643182; box-shadow:0 20px 60px #304e3c12; }
body[data-experience="driver"] .mobile-detail { height:100%; height:100dvh; display:grid; grid-template-rows:auto minmax(0,1fr); overflow:hidden; background:#f4f7f5; }
body[data-experience="driver"] .detail-head { min-height:70px; background:#fff; color:#5b3064; border-top:4px solid #643182; border-bottom:1px solid #dce3df; }
body[data-experience="driver"] .detail-head h1 { font-size:17px; }
body[data-experience="driver"] .detail-head button { color:#643182; background:#f4edf6; width:44px; height:44px; border-radius:4px; }
body[data-experience="driver"] .detail-content { width:min(800px,100%); min-height:0; height:100%; overflow:auto; overscroll-behavior:contain; margin:0 auto; padding:18px; }
body[data-experience="driver"] .detail-card { border-color:#dce3df; border-radius:5px; padding:20px; box-shadow:none; }
body[data-experience="driver"] .mobile-section-head h2 { font-size:18px; }
body[data-experience="driver"] .mobile-section-head p { font-size:12px; }
body[data-experience="driver"] .mobile-field label { font-size:12px; }
body[data-experience="driver"] .mobile-field :is(input,select,textarea) { min-height:46px; font-size:16px; border-color:#bfcfc4; }

@media(min-width:1100px) {
  body[data-experience="field"] .appointment-group>div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
}
@media(max-width:1100px) {
  body[data-experience="workspace"] .app-shell { grid-template-columns:1fr; }
  body[data-experience="workspace"] .sidebar { position:fixed; inset:0 auto 0 0; width:260px; height:100dvh; display:flex; transform:translateX(-100%); transition:transform .18s; z-index:80; }
  body[data-experience="workspace"].workspace-nav-open .sidebar { transform:translateX(0); }
  body[data-experience="workspace"].workspace-nav-open #workspace-menu-backdrop { display:block; position:fixed; inset:0; z-index:79; background:#182a2240; border:0; }
  #workspace-menu-toggle { display:grid; flex:0 0 42px; width:42px; height:42px; place-items:center; }
  body[data-experience="workspace"] .brand strong,body[data-experience="workspace"] .brand span,body[data-experience="workspace"] .nav-label,body[data-experience="workspace"] .nav-button>span,body[data-experience="workspace"] .user-card>div,body[data-experience="workspace"] .branch-switcher { display:block; }
  body[data-experience="workspace"] .nav-button { justify-content:flex-start; }
  body[data-experience="workspace"] .metric-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body[data-experience="workspace"] .global-search { flex:1; }
  body[data-experience="workspace"] .top-actions .connection { display:none; }
}
@media(max-width:1000px) {
  body[data-experience="portal"] .portal-content { grid-template-columns:minmax(0,1fr); }
  body[data-experience="portal"] .portal-content>aside { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:16px; }
  body[data-experience="portal"] .portal-content>aside>* { min-width:0; }
}
@media(max-width:680px) {
  body[data-experience="workspace"] .content { padding:14px; }
  body[data-experience="workspace"] .topbar { padding:0 12px; gap:8px; }
  body[data-experience="workspace"] .global-search input { font-size:13px; padding-right:10px; }
  body[data-experience="workspace"] .global-search kbd { display:none; }
  body[data-experience="workspace"] .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-experience="workspace"] .case-tabs { display:none; }
  body[data-experience="workspace"] .case-summary { padding:14px; }
  body[data-experience="workspace"] .page-head { flex-wrap:wrap; }
  body[data-experience="portal"] .portal-header { height:auto; min-height:78px; padding:12px 16px; gap:10px; flex-wrap:wrap; }
  body[data-experience="portal"] .portal-content { display:flex; flex-direction:column; gap:24px; }
  body[data-experience="portal"] .portal-content>div,body[data-experience="portal"] .portal-content>aside { width:100%; }
  body[data-experience="portal"] :is(.family-upload-grid,.family-action-grid,.form-grid) { grid-template-columns:minmax(0,1fr); }
  body[data-experience="portal"] :is(.family-overview-grid,.dereg-overview) { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-experience="portal"] .family-overview-grid article { display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:16px; }
  body[data-experience="portal"] .family-overview-grid article small { font-size:11px; line-height:1.4; word-break:normal; overflow-wrap:normal; }
  body[data-experience="portal"] .family-overview-grid article strong { font-size:14px; line-height:1.5; word-break:normal; }
  body[data-experience="portal"] .dereg-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body[data-experience="portal"] .dereg-tabs button { display:flex; flex-direction:column; align-items:center; gap:5px; padding:12px 6px; min-width:0; font-size:12px; }
  body[data-experience="portal"] .dereg-tabs button span { white-space:normal; text-align:center; }
  body[data-experience="portal"] .print-category-tabs { grid-template-columns:minmax(0,1fr); }
  body[data-experience="portal"] .portal-content>aside { display:block; order:2; }
  body[data-experience="portal"] .portal-brand img { max-width:52vw; height:45px; }
  body[data-experience="portal"] .portal-hero { padding:24px 18px; min-height:155px; }
  body[data-experience="portal"] .portal-hero h1 { font-size:29px; }
  body[data-experience="portal"] .portal-section { padding:20px 16px; }
  body[data-experience="portal"] .portal-section h2 { font-size:23px; }
  body[data-experience="portal"] .memorial-hero-inner { padding:30px 20px; }
  body[data-experience="portal"] .memorial-identity h1 { font-size:34px; overflow-wrap:anywhere; }
  body[data-experience="portal"] .search-intro h1 { font-size:36px; }
  body[data-experience="portal"] .search-intro-inner { width:100%; }
  body[data-experience="portal"] .memorial-search { grid-template-columns:minmax(0,1fr); }
  body[data-experience="portal"] .family-quick-nav { position:static; display:grid; grid-template-columns:1fr 1fr; }
  body[data-experience="portal"] .memorial-tabs { flex-wrap:wrap; }
  body[data-experience="portal"] .memorial-tabs button { padding:12px 8px; min-width:0; }
  body[data-experience="authority"] .portal-main { padding:18px 12px; }
  body[data-experience="authority"] .portal-brand strong { font-size:17px; }
  body[data-experience="field"] .app-main { padding:20px 14px 112px; }
  body[data-experience="field"] .brand strong { font-size:16px; }
  body[data-experience="field"] .welcome { align-items:start; }
  body[data-experience="field"] .welcome h1 { font-size:23px; }
  body[data-experience="field"] .appointment-card>header { grid-template-columns:65px minmax(0,1fr); gap:12px; padding:16px; }
  body[data-experience="field"] .appointment-card .response-state { grid-column:2; justify-self:start; }
  body[data-experience="field"] .appointment-card h2 { font-size:20px; }
  body[data-experience="field"] .metrics div { padding:14px; }
  body[data-experience="driver"] .mobile-main { padding:16px 12px; }
  body[data-experience="driver"] .ticket { padding:17px; }
}
@media(prefers-reduced-motion:reduce) { body[data-experience] * { scroll-behavior:auto!important; animation-duration:.01ms!important; transition-duration:.01ms!important; } }
