/* Shared, compact workspace surfaces. */
.workspace-page { width:100%; max-width:1280px; min-width:0; margin:0 auto; }
.workspace-page .page-header { gap:20px; margin-bottom:28px; }
.workspace-page .page-header h1 { margin:0; font-size:clamp(1.7rem,2.6vw,2.35rem); }
.workspace-page .page-header > div,.workspace-page .panel-heading > div { min-width:0; }
.workspace-page h2 { font-size:1.05rem; }
.workspace-page .panel { border-radius:16px; box-shadow:0 3px 14px rgb(0 0 0 / 2%); }
.workspace-page .panel-heading { align-items:center; gap:14px; }
.workspace-page .panel-heading h2 { margin:0; }
.workspace-page .panel-heading p { font-size:.8rem; margin:6px 0 0; color:var(--muted); }
.workspace-page .field-help,.workspace-page .quiet-details { font-size:.8rem; }
.workspace-page .stack-form { gap:18px; }
.workspace-page .stack-form > label { display:grid; gap:7px; }
.workspace-page .stack-form > .setting-toggle,.workspace-page .stack-form > .assurance-check { display:flex; }
.workspace-page .stack-form label { font-size:.83rem; }
.workspace-page .stack-form > .button { justify-self:start; }
.workspace-page .button { font-size:.82rem; }
.workspace-page .workspace-secondary { display:inline-flex; align-items:center; gap:7px; min-height:40px; font-size:.8rem; color:var(--muted); }
.workspace-page .workspace-secondary:hover { color:var(--accent-text); }
.workspace-page .workspace-count { color:var(--muted); font-size:.77rem; font-weight:400; }
.workspace-page .workspace-search { max-width:400px; margin-bottom:22px; }
.workspace-page .workspace-search input { font-size:.85rem; padding:12px 15px; background:var(--surface); border-radius:11px; }
.workspace-subnav { display:flex; align-items:center; gap:8px; border-bottom:1px solid var(--line); margin:-7px 0 24px; padding-bottom:10px; }
.workspace-subnav a { display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border-radius:9px; color:var(--muted); font-size:.82rem; font-weight:550; }
.workspace-subnav .ui-icon { width:17px; height:17px; }
.workspace-subnav a:hover { background:var(--surface); color:var(--ink); }
.workspace-subnav a[aria-current] { background:var(--accent-soft); color:var(--accent-text); }
.request-detail .request-message-entry { display:flex; align-items:center; gap:12px; padding:20px 24px; color:var(--ink); font-size:.84rem; font-weight:550; }
.request-detail .request-message-entry span { flex:1; }
.request-detail .request-message-entry:hover { border-color:var(--accent-text); color:var(--accent-text); }
.request-detail .request-message-entry .ui-icon:last-child { width:17px; height:17px; }
.workspace-page .workspace-empty-icon { display:grid; place-items:center; width:62px; height:62px; margin:0 auto 18px; border-radius:18px; background:var(--accent-soft); color:var(--accent-text); transform:rotate(-5deg); }
.workspace-page .workspace-empty-icon .ui-icon { width:29px; height:29px; }

/* Templates prioritize their title and the action to start a request. */
.templates-page .template-grid { grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr)); gap:20px; }
.templates-page .template-card { display:flex; flex-direction:column; padding:24px; border:1px solid var(--line); background:var(--surface); box-shadow:none; transition:border-color .16s,background-color .16s; }
.templates-page .template-card:hover,.templates-page .template-card:focus-within { border-color:var(--accent-text); }
.templates-page .template-card.is-clickable { cursor:pointer; }
.templates-page .template-card-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:20px; }
.templates-page .template-card-icon { display:grid; place-items:center; width:44px; height:48px; border-radius:11px; border:1px solid var(--line); color:var(--muted); background:var(--subtle); transition:transform .16s; }
.templates-page .template-card-icon.published { background:var(--accent-soft); color:var(--accent-text); border-color:transparent; }
.templates-page .template-card:hover .template-card-icon { transform:translateY(-2px); }
.templates-page .template-card h2 { margin:0 0 8px; font-size:1.05rem; overflow-wrap:anywhere; }
.templates-page .template-card h2 a { color:var(--ink); }
.templates-page .template-card h2 a:hover { color:var(--accent-text); text-decoration:underline; text-underline-offset:3px; }
.templates-page .template-card-description { color:var(--muted); font-size:.81rem; line-height:1.6; margin:0 0 14px; overflow-wrap:anywhere; }
.templates-page .template-card-meta { margin:0 0 22px; color:var(--muted); font-size:.74rem; }
.templates-page .template-actions { margin-top:auto; padding-top:17px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:12px; }
.templates-page .template-actions .button { font-size:.78rem; }

/* Team cards keep account controls out of the primary identity row. */
.team-page.workspace-page .team-layout { grid-template-columns:minmax(0,1fr) 320px; gap:22px; }
.team-page.workspace-page .team-main,.team-page.workspace-page .team-side { gap:20px; }
.team-page.workspace-page .team-member { padding:20px 0; gap:12px 18px; }
.team-page.workspace-page .team-member:first-child { border-top:0; padding-top:0; }
.team-page.workspace-page .team-member:last-child { padding-bottom:0; }
.team-page.workspace-page .person-cell strong { font-size:.86rem; }
.team-page.workspace-page .person-cell > div > small { font-size:.76rem; }
.team-page.workspace-page .avatar { background:var(--accent-soft); color:var(--accent-text); width:38px; height:38px; flex-shrink:0; }
.team-page.workspace-page .team-member-meta .status { font-size:.68rem; }
.team-page.workspace-page .team-access { padding-left:50px; }
.team-page.workspace-page .team-access > summary { font-size:.75rem; font-weight:500; }
.team-page.workspace-page .team-access[open] { border-left:2px solid var(--accent); padding-left:16px; }
.team-page.workspace-page .team-invite > summary { font-size:.95rem; color:var(--ink); }
.team-page.workspace-page .team-invite p { font-size:.8rem; color:var(--muted); }
.team-page.workspace-page .team-invitations table { table-layout:fixed; }
.team-page.workspace-page .team-invitations td { overflow-wrap:anywhere; font-size:.77rem; }
.team-page.workspace-page .team-invitations th:first-child { width:31%; }
.team-page.workspace-page .team-invitations th:last-child { width:16%; }

/* Settings use compact section tabs and progressive disclosure for optional data. */
.settings-page .settings-tabs { display:flex; flex-wrap:wrap; gap:6px; padding:5px; border:1px solid var(--line); border-radius:12px; background:var(--surface); margin-bottom:24px; }
.settings-page .settings-tabs a { flex:1; display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:10px 14px; border:0; border-radius:8px; font-size:.82rem; color:var(--muted); white-space:nowrap; }
.settings-page .settings-tabs a[aria-selected=true] { color:var(--accent-text); background:var(--accent-soft); box-shadow:none; }
.settings-page .settings-tabs .ui-icon { width:18px; height:18px; }
.settings-page .settings-workspace > [data-ui-panel] > .panel { width:100%; max-width:none; }
.settings-page .company-profile-layout { display:grid; grid-template-columns:minmax(0,1fr) 270px; gap:30px; align-items:start; }
.settings-page .company-profile-layout > * { min-width:0; }
.settings-page .company-profile-grid { gap:18px; }
.settings-page .company-profile-grid > label { font-size:.81rem; }
.settings-page .workspace-form-details { margin-top:22px; border-top:1px solid var(--line); padding-top:18px; }
.settings-page .workspace-form-details summary { font-size:.82rem; font-weight:550; color:var(--muted); }
.settings-page .workspace-form-details .company-profile-grid { margin-top:20px; }
.settings-page .company-brand-card { padding:20px; border:1px solid var(--line); border-radius:12px; background:var(--subtle); }
.settings-page .company-brand-card h3 { margin:0 0 16px; font-size:.85rem; }
.settings-page .company-logo-preview { max-width:none; width:100%; min-width:0; height:105px; margin-bottom:16px; }
.settings-page .logo-picker { padding:14px 12px; font-size:.78rem; min-width:0; }
.settings-page .logo-drop small { font-size:.72rem; }
.settings-page .company-brand-card .checkbox-label { font-size:.75rem; margin-top:14px; }
.settings-page .profile-actions { padding-top:20px; border-top:1px solid var(--line); }
.settings-page .email-settings-summary { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.settings-page .email-settings-summary p { margin:0; color:var(--muted); font-size:.8rem; }
.settings-page .input-suffix { gap:0; align-items:stretch; }
.settings-page .input-suffix > span { display:flex; align-items:center; }
.settings-page .setting-toggle { padding:16px; }

/* Billing keeps prices and commitment terms beside each purchase action. */
.billing-page .billing-stats { gap:18px; margin-bottom:22px; }
.billing-page .billing-stats .panel { margin:0; width:100%; padding:23px; }
.billing-page .billing-stats .eyebrow { font-size:.66rem; color:var(--muted); }
.billing-page .billing-stats h2 { font-size:1.35rem; margin:10px 0 8px; overflow-wrap:anywhere; }
.billing-page .billing-stats p { margin:0; color:var(--muted); font-size:.79rem; }
.billing-page .billing-stats .billing-balance { background:var(--accent-soft); border-color:color-mix(in srgb,var(--accent) 35%,var(--line)); }
.billing-page .billing-stats .billing-balance h2 { font-size:2.2rem; color:var(--accent-text); }
.billing-page .billing-plan-heading { margin:32px 0 18px; }
.billing-page .billing-plan-heading h2 { margin:0 0 6px; }
.billing-page .billing-plan-heading p { margin:0; color:var(--muted); font-size:.8rem; }
.billing-page .billing-plans { grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:18px; }
.billing-page .billing-plans > .panel { padding:24px; width:100%; min-width:0; }
.billing-page .billing-plans .current-plan { border-color:var(--accent-text); }
.billing-page .billing-plans p { color:var(--muted); font-size:.8rem; line-height:1.65; }
.billing-page .billing-plans .eyebrow { color:var(--muted); font-size:.65rem; }
.billing-page .billing-price { font-size:2rem; letter-spacing:-.04em; margin-bottom:12px; }
.billing-page .billing-price small { letter-spacing:normal; font-size:.78rem; }
.billing-page .billing-plans form { width:100%; }
.billing-page .billing-plans form .button { width:100%; white-space:normal; }
.billing-page .platform-actions { margin:0 0 22px; gap:20px; }
.billing-page .platform-actions details { font-size:.8rem; }
.billing-page .billing-records { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.billing-page .billing-records .panel { width:100%; margin:0; }
.billing-page .billing-records .platform-row { gap:12px; flex-wrap:wrap; font-size:.8rem; }

/* Delivery belongs to signature requests, with workspace messages still reachable. */
.outbox-page.workspace-page { max-width:1280px; }
.outbox-page.workspace-page .outbox-filters { flex-wrap:wrap; padding:20px; }
.outbox-page.workspace-page .outbox-filters input,.outbox-page.workspace-page .outbox-filters select { font-size:.81rem; }
.outbox-page.workspace-page .outbox-filters select { width:auto; max-width:100%; }
.outbox-page.workspace-page .outbox-filters .outbox-search { flex:1 1 260px; }
.outbox-page.workspace-page .outbox-message-summary { transition:background-color .15s; }
.outbox-page.workspace-page .outbox-message-summary:hover,.outbox-page.workspace-page .outbox-message[open] > summary { background:var(--accent-soft); }
.outbox-page.workspace-page .outbox-message[open] > summary { margin-bottom:0; }
.outbox-page.workspace-page .message-request-link { display:inline-flex; align-items:center; gap:8px; font-size:.8rem; margin-bottom:16px; }
.outbox-page.workspace-page .outbox-message-content { padding-top:16px; }
.outbox-page.workspace-page .message-request-filter { display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; margin-bottom:20px; padding:14px 18px; border:1px solid var(--line); border-radius:11px; background:var(--surface); font-size:.8rem; }
.outbox-page.workspace-page .message-request-filter strong { overflow-wrap:anywhere; }
.outbox-page.workspace-page .message-request-filter > a:last-child { margin-left:auto; color:var(--muted); }
.outbox-page.workspace-page .outbox-delivery-note { border-left:3px solid var(--control-border); padding:9px 0 9px 14px; margin-bottom:20px; }
.outbox-page.workspace-page .outbox-delivery-note.capture-mode { border-color:var(--amber); }
/* Personal controls live in the profile menu, apart from workspace settings. */
.sidebar .workspace-create-link { display:flex; align-items:center; justify-content:center; gap:8px; min-height:40px; border:1px solid var(--line); border-radius:9px; color:var(--muted); font-size:.77rem; }
.sidebar .workspace-create-link:hover { color:var(--accent-text); border-color:var(--accent-text); }
.sidebar .company-label { overflow-wrap:anywhere; font-size:.67rem; }
.account-menu { position:relative; }
.account-menu > summary { list-style:none; cursor:pointer; border:1px solid var(--line); }
.account-menu > summary::-webkit-details-marker { display:none; }
.account-menu > summary:hover,.account-menu[open] > summary { border-color:var(--accent-text); }
.account-menu .user-card-name { min-width:0; }
.account-menu > summary > .ui-icon { width:17px; color:var(--muted); }
.account-menu-panel { position:absolute; bottom:calc(100% + 9px); left:0; right:0; z-index:30; padding:7px; border:1px solid var(--line); border-radius:13px; background:var(--surface); box-shadow:0 8px 35px rgb(0 0 0 / 16%); max-height:65vh; overflow-y:auto; }
.account-menu-panel > a { display:flex; align-items:center; gap:9px; min-height:42px; padding:9px; color:var(--ink); font-size:.79rem; border-radius:7px; }
.account-menu-panel > a:hover { color:var(--accent-text); background:var(--accent-soft); }
.account-menu-theme { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:12px 3px; margin:5px 0; }
.account-menu-theme > span { display:block; color:var(--muted); font-size:.7rem; padding:0 6px 9px; }
.account-menu-theme .theme-switcher { width:100%; }
.account-menu-theme .theme-switcher button { padding:7px 4px; font-size:.67rem; }
.account-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; align-items:start; }
.account-layout > .panel { min-width:0; margin:0; }
.account-page .stack-form p { display:grid; gap:8px; margin:0; font-size:.8rem; }
.account-page .stack-form input { font-size:.85rem; }
.account-email { display:grid; gap:8px; font-size:.8rem; }
.account-email strong { overflow-wrap:anywhere; color:var(--ink); }
.account-email span { color:var(--muted); }
.account-email a { font-size:.77rem; justify-self:start; }
.account-action { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 0; color:var(--ink); border-bottom:1px solid var(--line); }
.account-action:last-child { border-bottom:0; }
.account-action > span { min-width:0; }
.account-action strong { font-size:.85rem; overflow-wrap:anywhere; }
.account-action small { font-size:.77rem; margin-top:6px; }
.account-action > .ui-icon { flex-shrink:0; color:var(--muted); }
.account-action:hover { color:var(--accent-text); }
.account-password { padding-top:18px; font-size:.82rem; }
.account-password .stack-form { padding-top:20px; }
.account-password .helptext { font-size:.75rem; line-height:1.65; }
.support-reply { margin:8px 0 18px; padding:16px; border-radius:10px; background:var(--accent-soft); color:var(--ink); overflow-wrap:anywhere; }
.support-reply p { color:var(--ink); margin-bottom:0; }
.support-page .privacy-history-item > summary { flex-wrap:wrap; }
.support-page .privacy-history-title { flex-basis:100%; }
.support-page .privacy-history-arrow { margin-left:auto; }
/* Home emphasizes current work and exceptions. */
.home-page .home-overview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line); border-radius:15px; background:var(--surface); margin-bottom:26px; overflow:hidden; }
.home-page .home-overview > a { display:grid; grid-template-columns:1fr auto; align-items:center; gap:8px 16px; padding:24px; color:var(--ink); border-right:1px solid var(--line); }
.home-page .home-overview > a:last-child { border-right:0; }
.home-page .home-overview > a:hover { background:var(--accent-soft); }
.home-page .home-overview strong { font-size:1.9rem; line-height:1.2; color:var(--accent-text); }
.home-page .home-overview span { grid-row:2; font-size:.8rem; color:var(--muted); }
.home-page .home-overview .ui-icon { grid-column:2; grid-row:1 / 3; color:var(--muted); width:17px; }
.home-page .home-attention { border-left:3px solid var(--amber); margin-bottom:24px; }
.home-page .home-attention .panel-heading { flex-wrap:wrap; }
.home-page .home-attention .panel-heading > a { display:flex; align-items:center; gap:8px; font-size:.8rem; }
.home-attention-row { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 20px; padding:14px 0; color:var(--ink); border-top:1px solid var(--line); font-size:.83rem; }
.home-attention-row strong { overflow-wrap:anywhere; }
.home-attention-row > span { display:flex; align-items:center; gap:10px; color:var(--amber); font-size:.76rem; }
.home-request { display:flex; align-items:center; gap:16px; padding:20px 8px; border-top:1px solid var(--line); border-radius:8px; }
.home-request.is-clickable { cursor:pointer; }
.home-request:hover,.home-request:focus-within { background:var(--accent-soft); }
.home-document-icon { display:grid; place-items:center; width:40px; height:46px; flex-shrink:0; border:1px solid var(--line); background:var(--subtle); color:var(--muted); border-radius:9px; }
.home-request-title { min-width:0; flex:1; }
.home-request-title a { color:var(--ink); font-size:.87rem; font-weight:600; overflow-wrap:anywhere; }
.home-request-title a:hover { text-decoration:underline; text-underline-offset:3px; }
.home-request-title small { font-size:.74rem; margin-top:7px; }
.home-row-arrow { color:var(--muted); }
.home-row-arrow .ui-icon { width:17px; }
/* Account privacy keeps requests and password-confirmed exports distinct. */
.privacy-page .privacy-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:22px; align-items:start; margin-bottom:22px; }
.privacy-page .privacy-layout > .panel { margin:0; min-width:0; }
.privacy-page .privacy-card-heading { display:flex; align-items:flex-start; gap:14px; margin-bottom:24px; }
.privacy-page .privacy-card-heading > div { min-width:0; }
.privacy-page .privacy-card-heading h2 { margin:2px 0 7px; line-height:1.4; }
.privacy-page .privacy-card-heading p { margin:0; color:var(--muted); font-size:.82rem; line-height:1.6; }
.privacy-page .privacy-card-icon { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border-radius:12px; color:var(--accent-text); background:var(--accent-soft); }
.privacy-page .privacy-export-panel .privacy-card-icon { color:var(--muted); background:var(--subtle); border:1px solid var(--line); }
.privacy-page .privacy-field { display:grid; gap:8px; min-width:0; }
.privacy-page .privacy-field .field-help { margin:0; font-weight:400; line-height:1.6; }
.privacy-page .stack-form input,.privacy-page .stack-form select,.privacy-page .stack-form textarea { font-size:.85rem; }
.privacy-page .privacy-help { margin-top:24px; padding-top:18px; border-top:1px solid var(--line); font-size:.8rem; }
.privacy-page .privacy-help summary { color:var(--muted); font-weight:500; }
.privacy-page .privacy-help p { color:var(--muted); line-height:1.7; margin:12px 0 0; }
.privacy-page .privacy-export-note { margin:20px 0 0; color:var(--muted); font-size:.76rem; line-height:1.7; }
.privacy-page .privacy-history { margin:0; }
.privacy-page .privacy-history-item { border-top:1px solid var(--line); }
.privacy-page .privacy-history-item > summary { display:flex; align-items:center; gap:16px; padding:18px 10px; border-radius:8px; list-style:none; cursor:pointer; }
.privacy-page .privacy-history-item > summary::-webkit-details-marker { display:none; }
.privacy-page .privacy-history-item > summary:hover { background:var(--accent-soft); }
.privacy-page .privacy-history-title { display:grid; gap:7px; min-width:0; flex:1; }
.privacy-page .privacy-history-title strong { font-size:.84rem; overflow-wrap:anywhere; }
.privacy-page .privacy-history-title time { font-size:.74rem; color:var(--muted); font-weight:400; }
.privacy-page .privacy-status { padding:6px 10px; border-radius:30px; font-size:.7rem; font-weight:550; white-space:nowrap; background:var(--subtle); color:var(--muted); }
.privacy-page .privacy-status-open { color:var(--accent-text); background:var(--accent-soft); }
.privacy-page .privacy-status-working { color:var(--amber); background:color-mix(in srgb,var(--amber) 12%,var(--surface)); }
.privacy-page .privacy-history-arrow { display:flex; color:var(--muted); }
.privacy-page .privacy-history-arrow .ui-icon { width:16px; height:16px; }
.privacy-page .privacy-history-item[open] .privacy-history-arrow { transform:rotate(90deg); }
.privacy-page .privacy-reference { display:grid; gap:8px; padding:0 10px 18px; color:var(--muted); font-size:.75rem; }
.privacy-page .privacy-reference code { overflow-wrap:anywhere; }
.privacy-page .privacy-empty { display:flex; align-items:center; gap:16px; padding:10px 0; }
.privacy-page .privacy-empty strong { font-size:.86rem; }
.privacy-page .privacy-empty p { color:var(--muted); font-size:.8rem; margin:6px 0 0; }
@media(max-width:1150px) {
  .account-layout { grid-template-columns:minmax(0,1fr); }
  .privacy-page .privacy-layout { grid-template-columns:minmax(0,1fr); }
  .team-page.workspace-page .team-layout { grid-template-columns:minmax(0,1fr); }
  .team-page.workspace-page .team-side { grid-row:1; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .settings-page .company-profile-layout { grid-template-columns:minmax(0,1fr); }
  .settings-page .company-brand-card { max-width:400px; }
}
@media(max-width:760px) {
  .workspace-page .page-header { grid-template-columns:minmax(0,1fr); }
  .workspace-page .page-header .button-row { flex-direction:row; flex-wrap:wrap; }
  .workspace-page .page-header > .button { width:100%; }
  .workspace-page .panel { padding:20px; }
  .workspace-page .outbox-panel { padding:0; }
  .workspace-page .button-row { gap:12px; }
  .home-page .home-overview > a { padding:16px 12px; gap:8px; grid-template-columns:1fr; }
  .home-page .home-overview .ui-icon { display:none; }
  .home-page .home-overview strong { font-size:1.6rem; }
  .home-page .home-overview span { font-size:.7rem; }
  .home-request { display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:12px; padding:18px 0; }
  .home-request .status { grid-column:2; justify-self:start; }
  .home-row-arrow { grid-column:3; grid-row:1 / 3; }
  .privacy-page .privacy-history-item > summary { gap:10px; padding:16px 0; flex-wrap:wrap; }
  .privacy-page .privacy-history-title { flex-basis:100%; }
  .privacy-page .privacy-history-arrow { margin-left:auto; }
  .privacy-page .privacy-reference { padding-left:0; padding-right:0; }
  .privacy-page .stack-form > .button { width:100%; justify-self:stretch; }
  .settings-page .settings-tabs a { flex:1 1 40%; font-size:.78rem; padding:9px; }
  .settings-page .panel-heading { flex-wrap:wrap; align-items:flex-start; }
  .settings-page .company-brand-card { max-width:none; }
  .team-page.workspace-page .team-side { grid-template-columns:minmax(0,1fr); }
  .team-page.workspace-page .team-member { grid-template-columns:minmax(0,1fr); }
  .team-page.workspace-page .team-member-meta { flex-direction:row; align-items:center; justify-content:space-between; padding-left:50px; }
  .team-page.workspace-page .team-access-body { grid-template-columns:minmax(0,1fr); }
  .team-page.workspace-page .team-invitations table { min-width:0; }
  .team-page.workspace-page .team-invitations th,.team-page.workspace-page .team-invitations td { padding:10px 5px; font-size:.67rem; }
  .billing-page .billing-records { grid-template-columns:minmax(0,1fr); }
  .outbox-page.workspace-page .outbox-filters { gap:10px; }
  .outbox-page.workspace-page .outbox-filters label:not(.outbox-search) { flex:1 1 130px; }
  .outbox-page.workspace-page .outbox-filters select { width:100%; }
}
@media(prefers-reduced-motion:reduce) { .templates-page .template-card,.templates-page .template-card-icon,.outbox-page.workspace-page .outbox-message-summary { transition:none; } .templates-page .template-card:hover .template-card-icon { transform:none; } }

/* Request setup: clear signer groups and aligned, security-aware fields. */
.phone-field { border:0; padding:0; margin:0; min-width:0; }
.phone-field legend { padding:0; margin-bottom:7px; color:var(--label); font-weight:650; font-size:inherit; }
.phone-controls { display:grid; grid-template-columns:100px minmax(0,1fr); gap:8px; align-items:start; }
.phone-country { position:relative; min-width:0; }
.phone-national { min-width:0; }
.phone-controls select,.phone-controls input { width:100%; min-width:0; }
.phone-field.is-enhanced .phone-country { border:1px solid var(--control-border); border-radius:9px; background:var(--surface); min-height:44px; height:100%; }
.phone-field.is-enhanced .phone-country select { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.phone-field.is-enhanced .phone-country:focus-within { outline:3px solid var(--accent); outline-offset:3px; }
.phone-country-display { display:flex; align-items:center; justify-content:center; gap:6px; height:100%; min-height:42px; font-size:.8rem; font-weight:500; pointer-events:none; }
.phone-country-display::after { content:'⌄'; color:var(--muted); }
.phone-error { display:block; margin-top:7px; font-size:.75rem; color:var(--red); font-weight:400; }
.request-composer .recipient-fields > .phone-field { font-size:.8rem; }
.request-composer [data-request-panel="1"] { container-type:inline-size; }
.request-composer .signing-security-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:0 0 24px; }
.request-composer .signing-security-options legend { font-size:.82rem; margin-bottom:10px; }
.request-composer .signing-security-choice { margin:0; padding:14px 12px; min-height:44px; border:1px solid var(--control-border); border-radius:11px; background:var(--surface); gap:9px; }
.request-composer .signing-security-choice:has(input:checked) { border-color:var(--accent-text); background:var(--accent-soft); box-shadow:inset 0 0 0 1px var(--accent-text); }
.request-composer .signing-security-choice:not(.disabled):hover { border-color:var(--accent-text); }
.request-composer .signing-security-choice strong { font-size:.82rem; line-height:1.4; }
.request-composer .signing-security-choice small { font-size:.73rem; margin:3px 0 0; }
.request-composer .signing-security-options > .field-help { grid-column:1/-1; margin:0; font-size:.76rem; font-weight:400; }
.request-composer .signer-guidance { font-size:.8rem; line-height:1.5; margin:-8px 0 20px; padding:12px 14px; border-left:3px solid var(--accent-text); background:var(--accent-soft); border-radius:0 8px 8px 0; }
.request-composer .routing-choice { display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; padding:0; border:0; background:none; margin-bottom:18px; }
.request-composer .routing-choice > small { flex-basis:100%; margin:0; }
.request-composer .routing-choice .segmented-choice { margin:0; }
.request-composer .routing-choice .segmented-choice button { padding:8px 14px; min-height:38px; }
.request-composer .recipient-row { display:block; padding:18px; min-width:0; }
.request-composer .signer-card-heading,.request-composer .signer-card-label,.request-composer .signer-card-actions { display:flex; align-items:center; gap:10px; }
.request-composer .signer-card-heading { justify-content:space-between; margin-bottom:18px; min-height:36px; }
.request-composer .signer-card-label { min-width:0; }
.request-composer .signer-card-label h3 { margin:0; font-size:.92rem; overflow-wrap:anywhere; }
.request-composer .recipient-index { flex:0 0 30px; }
.request-composer .signer-card-actions { flex-shrink:0; gap:6px; }
.request-composer .recipient-row .icon-button { position:static; }
.request-composer .recipient-fields { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:14px 16px; }
.request-composer.requires-mobile .recipient-fields { grid-template-columns:repeat(3,minmax(0,1fr)); }
.request-composer .recipient-fields > label { font-size:.8rem; }
.request-composer .recipient-fields input { min-width:0; width:100%; }
.request-composer .recipient-fields .field-help { font-size:.72rem; font-weight:400; margin:0; }
.request-composer .recipient-options { margin-top:0; }
.request-composer .recipient-options summary { font-weight:500; }
.request-composer .recipient-options label { max-width:360px; }
.request-composer .invitation-message { font-size:.82rem; color:var(--muted); }
.request-composer .invitation-message summary { cursor:pointer; padding:4px 0; }
.request-composer .invitation-message label { margin-top:12px; }
.request-composer .invitation-message .optional { display:inline; margin-left:8px; font-size:.74rem; font-weight:400; }
.request-composer .composer-summary h2 { overflow-wrap:anywhere; }
.request-composer .signer-summary-list { list-style:none; padding:0; margin:16px 0; display:grid; gap:14px; }
.request-composer .signer-summary-list li { min-width:0; font-size:.83rem; }
.request-composer .signer-summary-list strong,.request-composer .signer-summary-list small { display:block; overflow-wrap:anywhere; }
.request-composer .signer-summary-list small { margin-top:3px; font-size:.75rem; }
.request-composer .signer-summary-order { display:block; color:var(--muted); font-size:.68rem; margin-bottom:3px; }
.request-composer .signer-summary-security { font-size:.75rem; color:var(--accent-text); border-top:1px solid var(--line); padding-top:16px; margin:0; }
@container (max-width:640px) {
  .request-composer .signing-security-options { grid-template-columns:1fr; gap:7px; }
  .request-composer .signing-security-choice { padding:10px 12px; }
  .request-composer .signing-security-choice span { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 12px; }
  .request-composer .signing-security-choice small { margin:0; }
  .request-composer.requires-mobile .recipient-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .request-composer [data-signer-phone-field] { grid-column:1/-1; }
}
@container (max-width:440px) {
  .request-composer .recipient-fields,.request-composer.requires-mobile .recipient-fields { grid-template-columns:minmax(0,1fr); }
  .request-composer .recipient-row { padding:14px; }
  .request-composer .routing-choice { gap:8px; }
}
@media(max-width:600px) {
  .request-composer .panel { padding:18px; }
  .request-composer .wizard-actions { flex-wrap:wrap; }
  .request-composer .wizard-actions .button { flex:0 0 auto; width:100%; justify-content:center; }
}
