/* Warm Editorial layout shared by all website palettes. */
:root{--editorial-serif:Georgia,"Times New Roman",serif;--editorial-radius:5px;--editorial-rule:color-mix(in srgb,var(--line) 75%,var(--bg));--editorial-shadow:0 12px 32px #00000014}
[data-theme="editorial"]{
  --editorial-shadow:0 12px 32px #4038210c;
}
body{line-height:1.6}
.site-header{max-width:1328px;min-height:90px;padding:20px 44px;border-bottom:1px solid var(--editorial-rule)}
.site-header .brand{font-size:21px;letter-spacing:-.035em}.site-header .brand img{width:34px;height:34px}
.site-header nav{gap:28px}.button,.theme-trigger,input,select{border-radius:var(--editorial-radius)}
.button{font-weight:600;min-height:42px}.button.primary{box-shadow:none}
.wrap{max-width:1328px;padding-left:44px;padding-right:44px}
.home-hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr);gap:64px;padding-top:82px;padding-bottom:78px;align-items:center}
.home-intro h1{font-family:var(--editorial-serif);font-size:clamp(42px,4.2vw,62px);font-weight:400;letter-spacing:-.045em;line-height:1.06;max-width:15ch;margin-bottom:24px}
.home-intro .eyebrow{font-size:13px;letter-spacing:.13em;text-transform:uppercase;line-height:1.7;margin-bottom:24px}
.home-intro>p:not(.eyebrow){font-size:17px;line-height:1.75;max-width:42ch;margin-bottom:30px}
.hero-actions{gap:20px}.home-intro .platform{margin-top:28px;font-size:14px;gap:14px}
.app-preview>a{border-radius:5px;box-shadow:var(--editorial-shadow);border:1px solid var(--line)}
.app-preview figcaption{font-size:13px;margin-top:14px;letter-spacing:.025em}
.section-heading h2,.home-download h2{font-family:var(--editorial-serif);font-weight:400;font-size:34px;letter-spacing:-.035em}
.section-heading{padding:28px 0;border-color:var(--editorial-rule)}
.section-heading>p{font-size:15px;max-width:65ch}
.tool-list article,.tool-list article+article{padding:30px 0;border-color:var(--editorial-rule)}
.tool-symbol{border-radius:4px;background:var(--panel)}
.home-download{margin-top:28px;padding-top:36px;padding-bottom:36px;border:1px solid var(--editorial-rule);border-radius:5px;gap:70px}
.home-help{padding-top:48px;padding-bottom:70px}
.setup-steps{gap:38px;margin-top:32px}.setup-steps li{padding-top:6px}
.setup-steps li::before{font-family:var(--editorial-serif);content:counter(setup,decimal-leading-zero);display:block;width:auto;height:auto;background:none;font-size:23px;font-weight:400;border-radius:0;margin-bottom:18px}
.setup-steps h3{font-size:18px;font-weight:600}.setup-steps p{font-size:14px;line-height:1.8}
.site-footer{max-width:1328px;padding:28px 44px;border-top:1px solid var(--editorial-rule)}
/* The portal uses the same spacing and rules, with sans-serif task headings. */
body:has(.portal) .site-header nav{display:none}
body:has(.portal) .site-header{min-height:76px;padding-top:16px;padding-bottom:16px}
body:has(.portal) .site-header [data-theme-picker]{margin-left:auto}
.portal{max-width:1328px;grid-template-columns:minmax(0,1fr);gap:30px;padding:0 44px;margin:0 auto 48px}
.portal-sidebar{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:18px 0;margin:0;border-bottom:1px solid var(--editorial-rule);width:100%}
.portal-sidebar h2{font-size:14px;color:var(--text);margin:0 10px 0 0;letter-spacing:0}
.portal-navigation{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px;width:auto;flex:1 1 auto}
.portal-nav{padding:10px 4px;min-height:44px;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);font-size:14px}
.portal-nav[aria-current=page]{border:0;border-bottom:2px solid var(--blue);background:none;color:var(--text);font-weight:600}
.portal-nav:hover{background:none;color:var(--blue)}
/* Equal outer rows keep company links centered with the surrounding navigation. */
.portal-company-nav{display:grid;grid-template-rows:1fr auto 1fr;margin:0 12px;padding:0 0 0 16px;border-left:1px solid var(--line);width:auto}
.portal-company-nav::after{content:""}
.portal-company-name{font-size:13px;margin:0;padding:0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.portal-company-pages{display:flex;flex-direction:row;gap:16px;margin:0}
.portal-company-pages .portal-nav{font-size:14px;min-height:34px;padding:5px 0}
.identity{margin:0 0 0 auto;font-size:13px;line-height:1.6;max-width:240px}
.portal-sidebar>.button{margin:0;font-size:14px;align-self:center;min-height:36px}
.portal-top{margin-bottom:16px;gap:24px}.portal-top h1{font-size:34px;font-weight:600;letter-spacing:-.04em;line-height:1.2}
.portal-page-label{color:var(--blue);font-size:13px!important;letter-spacing:.09em;text-transform:uppercase;margin-bottom:12px!important}
.portal-scope{max-width:none;font-size:14px;margin-bottom:22px}.portal-breadcrumb{margin-bottom:22px}
.notice{border-color:var(--editorial-rule);border-radius:4px;font-size:14px;background:var(--panel)}
.panel{padding:26px 28px;border:1px solid var(--editorial-rule);border-radius:5px;box-shadow:none;background:var(--panel);margin-bottom:24px}
.panel h2{font-size:21px;font-weight:600;letter-spacing:-.025em}.panel-heading{align-items:center;gap:20px;margin-bottom:20px}
.panel-description{margin-bottom:20px;max-width:none!important}.panel .search{max-width:280px}
.metrics:not(.analytics-metrics){gap:0;border-top:1px solid var(--editorial-rule);border-bottom:1px solid var(--editorial-rule);padding:20px 0;margin:26px 0}
.metrics:not(.analytics-metrics)>.metric{border:0;border-right:1px solid var(--editorial-rule);border-radius:0;background:transparent;padding:4px 28px;box-shadow:none;text-align:center}
.metrics:not(.analytics-metrics)>.metric:last-child{border-right:0}
.metrics:not(.analytics-metrics) .seat-meter{margin-inline:auto}
.metric strong{font-size:29px;line-height:1.3}.metric>span{font-size:14px}.seat-meter{height:3px;max-width:230px;margin-top:12px}
.table-scroll{border-radius:0}th{background:color-mix(in srgb,var(--panel) 45%,var(--raised));padding:13px 14px;font-size:13px;font-weight:600;text-transform:none;letter-spacing:.01em;color:var(--muted)}
td{padding:14px;font-size:14px;border-color:var(--editorial-rule)}
.portal table :is(th,td){text-align:center}
#member-table table :is(th,td):first-child{text-align:left}
#member-table .person-heading{display:block;width:min(100%,var(--person-text-width,100%));text-align:center}
#member-table .person-email{display:inline-block;max-width:100%;overflow-wrap:anywhere;vertical-align:middle}
.portal table .analytics-table-link{text-align:center}
.portal .analytics-table :is(th,td):first-child{padding-inline:9px}
.portal .role-picker{text-align:center;text-align-last:center;padding-inline:26px;background-position:right 12px center,right 7px center;background-size:5px 5px}
.portal .role-picker[data-role-member]{width:164px;max-width:100%;height:34px;min-height:34px;padding:5px 22px;border-radius:var(--editorial-radius)}
.portal .member-actions{margin-inline:auto;justify-content:center}
.portal .member-actions>.button:only-child{grid-column:1/-1}
.portal .readonly-access{justify-content:center}
tbody tr:hover{background:color-mix(in srgb,var(--panel) 88%,var(--raised))}
.role-readonly{font-size:14px;padding:8px 0}.role-picker{font-size:14px;min-height:40px}
.status{border-radius:4px;font-size:13px;padding:3px 8px}.member-actions .button{font-size:13px;padding:6px 10px;min-height:34px}
.member-more summary{min-height:34px;font-size:13px;padding:6px 10px}
.inline-form{padding-top:24px;margin-top:24px}.field label{font-size:14px}.field small{font-size:13px}
.panel[aria-labelledby="company-download-title"]{border-left:3px solid var(--blue);padding:20px 24px}
.panel[aria-labelledby="company-download-title"] h2{font-size:17px;margin-bottom:10px}
.panel[aria-labelledby="company-download-title"] .download-unavailable{background:none;border:0;padding:0;margin-bottom:14px;max-width:85ch}
[data-theme="editorial"] .theme-swatch{border-color:var(--line)}
@media(min-width:701px){
  .inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label ." "input action" "hint .";gap:8px 12px;align-items:stretch}
  .inline-form:has(>[data-message]){grid-template-areas:"message message" "label ." "input action" "hint ."}
  .inline-form>.field{display:contents}
  .inline-form>.field>label{grid-area:label}
  .inline-form>.field>input{grid-area:input}
  .inline-form>.field>small{grid-area:hint}
  .inline-form>.button{grid-area:action;align-self:stretch;margin-top:0;min-height:44px;padding-block:10px}
  .inline-form>[data-message]{grid-area:message;margin:0}
  .panel[aria-labelledby="company-download-title"]:has(.download-unavailable){display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px 20px;align-items:center;padding:14px 18px}
  .panel[aria-labelledby="company-download-title"]:has(.download-unavailable) h2{margin:0;font-size:14px}
  .panel[aria-labelledby="company-download-title"] .download-unavailable{margin:0;font-size:14px}
  .panel[aria-labelledby="company-download-title"]:has(.download-unavailable)>.button{font-size:14px;min-height:36px}
  #member-table table.has-actions{min-width:920px;table-layout:auto}
  #member-table .actions-cell{min-width:160px;width:180px}
  #member-table th:nth-child(2){width:215px}
  #member-table th:nth-child(3){width:180px}
  #member-table th:nth-child(6){width:180px}
  #member-table .member-actions{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:0;width:100%;max-width:160px}
  #member-table .member-actions:has(.member-more){grid-template-columns:minmax(0,1fr) 32px}
  #member-table td:first-child{min-width:180px}
  #member-table:has(.has-actions)::after{content:none}
}
@media(max-width:1040px){
  #member-table{overflow:visible}
  #member-table table.has-actions{display:block;min-width:0;width:100%}
  #member-table thead{display:none}
  #member-table tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  #member-table tr{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:14px;border:1px solid var(--line);border-radius:5px;margin:0}
  #member-table td{display:block;min-width:0;width:auto!important;padding:4px;border:0;text-align:left}
  #member-table td::before{content:attr(data-label);display:block;color:var(--muted);font-size:14px;margin-bottom:4px}
  #member-table td:first-child,#member-table td:nth-child(3),#member-table .actions-cell{grid-column:1/-1;min-width:0}
  #member-table td:nth-child(2){grid-column:1/-1}
  #member-table .person-heading{text-align:left}
  #member-table .readonly-access{justify-content:flex-start}
  #member-table .member-actions{max-width:none}
  #member-table:has(.has-actions)::after{content:none}
}
@media(max-width:700px){
  #member-table tbody{grid-template-columns:1fr;gap:12px}
  #member-table tr{padding:10px;gap:4px}
  #member-table td:nth-child(2){grid-column:1/-1}
  #member-table .actions-cell{padding-top:8px}
}
@media(max-width:1050px){
  .home-hero{gap:36px;padding-top:56px;padding-bottom:56px}.home-intro h1{font-size:44px}
  .portal-sidebar{gap:8px 16px}.identity{font-size:12px}.portal-navigation{flex-basis:65%}
}
@media(max-width:800px){
  .home-hero{grid-template-columns:1fr}.home-intro h1{max-width:20ch;font-size:48px}.home-intro>p:not(.eyebrow){max-width:52ch}
  .home-download{gap:28px}.portal-navigation{flex-basis:100%}.portal-sidebar h2{width:100%}.portal-company-nav{margin-left:0}
}
@media(max-width:700px){
  .site-header,.site-footer{padding:20px}.wrap{padding-left:20px;padding-right:20px}
  .site-header{gap:16px}.site-header .brand{font-size:19px}
  .home-hero{padding-top:42px;padding-bottom:42px;gap:32px}.home-intro h1{font-size:42px;max-width:16ch}.home-intro .eyebrow{font-size:12px}
  .home-intro>p:not(.eyebrow){font-size:16px}.hero-actions{gap:16px}.section-heading h2,.home-download h2{font-size:30px}
  .home-download{grid-template-columns:1fr;border-left:0;border-right:0;border-radius:0;margin-top:10px;padding-top:28px;padding-bottom:28px}
  .home-help{padding-top:28px;padding-bottom:42px}.setup-steps{gap:26px}.setup-steps li{border-top:1px solid var(--editorial-rule);padding-top:20px}
  .portal{padding:0 20px;gap:24px}.portal-sidebar{padding:14px 0;gap:8px 16px}.portal-sidebar .identity{flex:1;margin:8px 0 0;max-width:none}.portal-sidebar>.button{margin-top:8px}
  .portal-navigation{gap:14px}.portal-company-nav{grid-template-rows:auto auto;width:100%;padding-left:12px;margin:4px 0}.portal-company-nav::after{display:none}.portal-nav{font-size:14px}
  .portal-top h1{font-size:28px}.panel{padding:20px 16px}.panel-heading{align-items:stretch;flex-wrap:wrap}.panel .search{max-width:none;width:100%}
  .metrics:not(.analytics-metrics){grid-template-columns:repeat(3,minmax(0,1fr));padding:16px 0;gap:0}
  .metrics:not(.analytics-metrics)>.metric{padding:4px 12px}.metrics:not(.analytics-metrics)>.metric:last-child{grid-column:auto}
  .metric strong{font-size:23px}.metric>span{font-size:13px}.metric strong span{font-size:13px}
  .table-scroll tr{background:transparent;border-color:var(--line);border-radius:4px}.table-scroll td{padding:8px;font-size:14px}
  .table-scroll td:first-child{font-size:14px}.role-readonly{font-size:14px}
  .member-actions .button,.member-more summary{min-height:40px}.inline-form{gap:16px}
  .portal .role-picker[data-role-member]{height:40px;min-height:40px;padding-block:8px}
  .panel[aria-labelledby="company-download-title"]:has(.download-unavailable){padding:14px 16px}
  .panel[aria-labelledby="company-download-title"]:has(.download-unavailable) h2{font-size:15px;margin-bottom:6px}
  .panel[aria-labelledby="company-download-title"] .download-unavailable{font-size:14px;margin-bottom:10px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* A stable, contrasting badge with palette-driven rings across every screen. */
.brand-mark{width:34px;height:34px;flex-shrink:0;overflow:visible}
.brand-disc{fill:var(--bg-primary);stroke:var(--text-muted);stroke-width:1}
.brand-ring{fill:none;stroke:var(--accent);stroke-width:2}
.brand-ring-inner{fill:none;stroke:var(--accent);stroke-width:.6;opacity:.65}
.brand-initials{fill:var(--text-primary);font:500 16px system-ui,sans-serif;letter-spacing:-.5px}
.site-footer .brand-mark{width:26px;height:26px}
[data-theme="editorial"] .brand-disc{fill:var(--bg-secondary);stroke:var(--accent)}

/* Public navigation wraps without hiding account access. */
.site-header nav{flex-wrap:wrap}
@media(max-width:700px){.site-header nav{justify-content:flex-start;gap:4px 18px}.site-header nav .button{flex-shrink:0}}

.tool-example{grid-column:2;margin-top:14px;max-width:75ch}.tool-example summary{cursor:pointer;color:var(--blue);padding:8px 0;font-size:14px}.tool-example>div{border-left:2px solid var(--line);padding:12px 20px}.tool-example h4{margin:0 0 12px}.tool-example dl{display:grid;gap:18px}.tool-example dt{font-size:14px;color:var(--muted);margin-bottom:4px}.tool-example dd{margin:0;font-size:15px}.tool-example .muted{margin-top:16px;font-size:14px}
@media(max-width:600px){.tool-example{grid-column:1/-1}}

.product-preview-dialog{width:min(1280px,calc(100vw - 32px));max-width:none;padding:24px;max-height:calc(100dvh - 32px)}.preview-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;position:sticky;top:-24px;background:var(--panel);padding:12px 0;z-index:1}.preview-toolbar h2{margin:0 auto 0 0;font-size:19px}.preview-image-scroll{overflow:auto;max-height:65dvh;border:1px solid var(--line)}.preview-image-scroll img{display:block;width:100%;max-width:none}.preview-image-scroll img.actual-size{width:1280px}.product-preview-dialog>p{font-size:14px}

.setup-steps a{text-decoration:underline;text-underline-offset:3px}.setup-note{border-left:2px solid var(--blue);padding:8px 18px;font-size:14px;max-width:85ch}

.legal-contents{padding:20px;margin:24px 0;border:1px solid var(--line);border-radius:5px;background:var(--panel)}.legal-contents h2{margin:0 0 12px;font-size:18px}.legal-contents ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;list-style:none;padding:0;margin:0}.legal-contents a{font-size:14px;text-decoration:underline;text-underline-offset:3px}.legal section,.legal-document section{scroll-margin-top:24px}.legal-document .legal-contents ul{grid-template-columns:1fr}
@media(max-width:600px){.legal-contents ul{grid-template-columns:1fr}}

.compact-download .download-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px}.panel.compact-download h2,.compact-download .download-summary p{margin:0;font-size:14px}.compact-download .download-summary .button{margin-left:auto}.compact-download summary{cursor:pointer;margin-top:10px;font-size:14px;color:var(--muted)}.compact-download details p{font-size:14px;margin-top:12px;margin-bottom:0}
@media(max-width:600px){.compact-download .download-summary .button{margin-left:0}}

.inline-form>#capacity-help{grid-column:1/-1;margin:8px 0 0;white-space:normal}.inline-form>#capacity-help .button{margin:8px 0 0 8px}

.people-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin:18px 0}.people-filters .field{margin:0;min-width:150px;flex:1}.people-filters .button{min-height:44px}.people-count{font-size:14px;color:var(--muted);margin-bottom:12px}

.member-handoff{padding:20px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:5px;margin:20px 0;background:var(--raised)}.member-handoff h3{margin:0 0 12px;font-size:18px}.member-handoff p{font-size:14px}.member-handoff label{display:block;font-size:14px;margin:12px 0 6px}.member-handoff textarea{width:100%;resize:vertical;font:inherit;font-size:14px;line-height:1.6;padding:12px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:5px}

.company-section-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;border-block:1px solid var(--line);padding:10px 0;margin:8px 0 20px}.company-section-nav>span{font-size:14px;color:var(--muted);margin-right:auto}.company-section-nav .portal-nav{padding:10px 4px}.portal-navigation{gap:18px}
@media(max-width:600px){.company-section-nav>span{width:100%}.company-section-nav{gap:4px 20px}}

.company-capacity{display:grid;gap:4px;justify-items:center}.company-capacity progress{max-width:160px;width:100%;height:8px;accent-color:var(--accent)}

.settings-group{min-width:0;margin:24px 0;padding:20px;border:1px solid var(--line);border-radius:8px}.settings-group legend{padding:0 8px;font-weight:600;font-size:17px}.settings-group p{color:var(--muted);font-size:14px}.settings-group .field{max-width:100%}#settings-effects li{margin:8px 0}

.analytics-section-nav{display:flex;flex-wrap:wrap;gap:12px 22px;margin:24px 0;padding:16px 0;border-block:1px solid var(--line)}.analytics-section-nav a{font-size:14px;color:var(--text);text-underline-offset:5px}.analytics-secondary{margin:12px 0 26px}.analytics-secondary summary{cursor:pointer;font-size:14px}.analytics-section-nav~[id],#analytics-overview,#analytics-tools,.analytics-section h2[id]{scroll-margin-top:20px}

.analytics-filter-summary{display:block}.analytics-filter-summary p{margin:0 0 10px;font-size:14px}.analytics-filter-chips{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.analytics-filter-chips button{white-space:normal;overflow-wrap:anywhere}#analytics-overview h2{font-size:24px}

.actions-cell .form-message{white-space:normal;overflow-wrap:anywhere}.tool-access-row small,.tool-access-timing,.tool-access-pending{font-size:13px}.portal .person-toolset .button,.portal .person-toolset select{font-size:13px}.portal table th{line-height:1.5}

.portal table :is(th,td){text-align:left}.portal table .numeric{text-align:right;font-variant-numeric:tabular-nums}.portal table .table-actions,.portal table .actions-cell{text-align:center}.portal table .analytics-table-link{text-align:left}.company-capacity{justify-items:end}#member-table .role-picker[data-role-member]{text-align:left;text-align-last:left}@media(max-width:700px){.portal .table-scroll td.numeric{text-align:left}.company-capacity{justify-items:start}}

.account-flow{width:calc(100% - 40px);max-width:680px;margin:28px auto 48px}.account-flow h1{font-size:30px;line-height:1.2}.account-flow .device{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:5px;margin:12px 0;background:var(--panel)}.account-flow .device input[type=radio]{width:18px;flex:0 0 18px;margin-top:4px}.account-flow .device span{overflow-wrap:anywhere}.account-flow small{font-size:13px;line-height:1.6;color:var(--muted)}.account-flow .button{margin:4px 6px 4px 0}.site-header>[data-theme-picker]{margin-left:auto}.desktop-sign-in #retry-flow{margin-bottom:16px}

.desktop-sign-in [hidden]{display:none}

/* Seat discipline is an explicit, prominent choice in each editable row. */
.portal .person-toolset{min-width:0;justify-content:center}.portal .person-toolset>.seat-role-picker{min-width:150px;min-height:44px;padding:9px 30px;font-size:14px;font-weight:600;border:1px solid var(--blue);background-color:color-mix(in srgb,var(--blue) 10%,var(--raised));background-position:right 19px center,right 13px center;background-size:6px 6px;box-shadow:0 0 0 1px color-mix(in srgb,var(--blue) 15%,transparent)}
.portal .person-toolset>.seat-role-picker:hover:not(:disabled){background-color:color-mix(in srgb,var(--blue) 18%,var(--raised))}
@media(max-width:1040px){.portal .person-toolset>.seat-role-picker{min-width:0;width:100%}}
@media(min-width:1041px){#member-table :is(th,td):nth-child(3){text-align:center}}
