/* Crewline's sales tools: the Sales desk (salesdesk.js, sd-*), Lot to post and the ad studio (lotpost.js and
   adstudio.js, lq-* lp-* ads-*). Loaded after theme.css.
   These screens are an app a salesperson or a manager opens many times a day on a phone, so they get an app's
   chrome there: the site's bars fold away (the menu button reaches them), a slim header with one action over a
   large title, a tab bar at the bottom, sheets that slide up. On a computer they sit in Crewline's own layout.
   The small system they share:
     type     34 / 22 / 20 / 17 / 15 / 13 (and 12 for badges), the system font (SF Pro on an iPhone), tabular figures
     space    4 8 12 16 20 24 32
     radius   8 (chips) 12 (controls) 16 (cards) 20 (sheets, hero cards)
     depth    soft shadows instead of borders; hairlines only between rows
     color    neutrals, Crewline blue for the one thing to do, green done, amber check, red stop */

/* ------------------------------------------------------------------ tokens */
:root {
  --cs-page: #f3f4f6;
}
:root[data-theme="dark"] { --cs-page: #0b0d10; }
/* .cl-appwrap: the manager and owner screens (crewline-app.css) share these tokens */
.cs-app, .lq, .sd-page, .sd-sheet-wrap, .cl-appwrap {
  --cs-bg: var(--cs-page);
  --cs-surface: #ffffff;
  --cs-raised: #ffffff;
  --cs-fill: rgba(116, 126, 138, .12);
  --cs-fill-2: rgba(116, 126, 138, .2);
  --cs-in: rgba(116, 126, 138, .1);
  --cs-sep: rgba(15, 23, 32, .08);
  --cs-sep-2: rgba(15, 23, 32, .14);
  --cs-text: #101418;
  --cs-text-2: #4b5560;
  --cs-text-3: #858e98;
  --cs-brand: #1b6a96;
  --cs-brand-2: #165a80;
  --cs-brand-text: #1b6a96;
  --cs-brand-tint: #e5eff6;
  --cs-ring: rgba(27, 106, 150, .22);
  --cs-ok: #1d7f46; --cs-ok-tint: #e3f3e9;
  --cs-warn: #9a5c00; --cs-warn-tint: #fcf0d9; --cs-warn-dot: #e09a1e;
  --cs-stop: #c8392d; --cs-stop-tint: #fcebe8;
  --cs-violet: #5a4cb0; --cs-violet-tint: #eeebfa;
  --cs-fb: #1877f2;
  --cs-ink: #101418;
  --cs-glass: rgba(16, 20, 24, .46);
  /* depth kept quiet: a hairline-soft lift for cards, the strong one only for sheets and pop-overs */
  --cs-e1: 0 1px 2px rgba(16, 24, 40, .05);
  --cs-e2: 0 1px 2px rgba(16, 24, 40, .05), 0 0 0 .5px rgba(16, 24, 40, .04);
  --cs-e3: 0 -2px 8px rgba(16, 24, 40, .04), 0 12px 36px -6px rgba(16, 24, 40, .2);
  /* the phone's own font (SF Pro on an iPhone): no download, no text jumping as it arrives, and it looks native */
  --cs-font: -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  --cs-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.6 9.6 17 19 7.4'/%3E%3C/svg%3E");
  --cs-chev-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23858e98' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  --sd-nav: 0px;
  font-family: var(--cs-font);
}
:root[data-theme="dark"] :is(.cs-app, .lq, .sd-page, .sd-sheet-wrap, .cl-appwrap) {
  --cs-surface: #15181c;
  --cs-raised: #1c2025;
  --cs-fill: rgba(150, 160, 172, .13);
  --cs-fill-2: rgba(150, 160, 172, .22);
  --cs-in: rgba(150, 160, 172, .12);
  --cs-sep: rgba(255, 255, 255, .07);
  --cs-sep-2: rgba(255, 255, 255, .13);
  --cs-text: #f0f2f4;
  --cs-text-2: #aeb6bf;
  --cs-text-3: #7d8690;
  --cs-brand: #2a7eb0;
  --cs-brand-2: #3a90c4;
  --cs-brand-text: #6bb5e1;
  --cs-brand-tint: rgba(74, 160, 212, .16);
  --cs-ring: rgba(107, 181, 225, .3);
  --cs-ok: #6fcf94; --cs-ok-tint: rgba(76, 190, 120, .14);
  --cs-warn: #f0bb5c; --cs-warn-tint: rgba(232, 168, 56, .14); --cs-warn-dot: #e8a838;
  --cs-stop: #f1857a; --cs-stop-tint: rgba(232, 96, 82, .15);
  --cs-violet: #b3a8f0; --cs-violet-tint: rgba(150, 135, 235, .16);
  --cs-ink: #f0f2f4;
  --cs-e1: 0 0 0 1px rgba(255, 255, 255, .05);
  --cs-e2: 0 0 0 1px rgba(255, 255, 255, .06), 0 6px 18px -6px rgba(0, 0, 0, .5);
  --cs-e3: 0 0 0 1px rgba(255, 255, 255, .07), 0 16px 40px -8px rgba(0, 0, 0, .7);
}

/* ------------------------------------------------------------------ the app shell on a phone */
.cs-app a:not(.btn), .lq a:not(.btn), .sd-page a:not(.btn), .sd-sheet-wrap a:not(.btn) { color: inherit; text-decoration: none; }
.cl-main:has(> div > .sd-desk) > .cl-head { display: none; }
@media (max-width: 760px) {
  html:has(.cs-app), html:has(.cs-app) body, html:has(.lq), html:has(.lq) body { background: var(--cs-page); }
  body:has(.cs-app) :is(.topbar, .foot, .cl-caution),
  body:has(.lq) :is(.topbar, .foot, .cl-caution) { display: none !important; }
  body:has(.cs-app) .app, body:has(.lq) .app { padding: 0 16px 24px; }
  body:has(.cs-app) .cl-body, body:has(.lq) .cl-body { display: block; }
  body:has(.cs-app) .cl-main, body:has(.lq) .cl-main { padding-top: 0; }
  .sd-desk:not(.sd-detail) { --sd-nav: calc(58px + env(safe-area-inset-bottom)); padding-bottom: calc(88px + env(safe-area-inset-bottom)); }
  .lq:has(> .lq-tabs) { --sd-nav: calc(58px + env(safe-area-inset-bottom)); padding-bottom: calc(80px + env(safe-area-inset-bottom)); }
}

/* the slim header: menu, the title once the large one scrolls under it, one action */
.sd-head, .lq-top, .sd-backbar {
  position: sticky; top: 0; z-index: 40; display: flex; align-items: center; gap: 4px;
  min-height: 52px; margin: 0 -16px; padding: env(safe-area-inset-top) 8px 0;
  background: color-mix(in srgb, var(--cs-page) 92%, transparent);
  -webkit-backdrop-filter: saturate(1.8) blur(20px); backdrop-filter: saturate(1.8) blur(20px);
  box-shadow: 0 1px 0 transparent; transition: box-shadow .2s;
}
.sd-head.stuck, .lq-top.stuck, .sd-backbar, .lq-top:not(.lq-top-root) { box-shadow: 0 1px 0 var(--cs-sep); }
.sd-head-mini { flex: 1; min-width: 0; text-align: center; font: 600 1.0625rem/1.2 var(--cs-font); color: var(--cs-text); opacity: 0; transition: opacity .2s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sd-head.stuck .sd-head-mini { opacity: 1; }
.sd-head-a { flex: none; min-width: 44px; display: flex; justify-content: flex-end; align-items: center; }
.sd-hero, .lq-hero { padding: 6px 0 18px; }
.sd-hero-k, .lq-kicker { display: block; font: 600 .8125rem/1.2 var(--cs-font); letter-spacing: .01em; color: var(--cs-brand-text); }
.sd-hero-t, .lq .lq-hero-t { margin: 2px 0 0; font: 700 1.875rem/1.12 var(--cs-font); letter-spacing: -.028em; color: var(--cs-text); }
.sd-hero-s, .lq-hero .lq-sub { margin: 4px 0 0; font: 400 .9375rem/1.4 var(--cs-font); color: var(--cs-text-2); }
.sd-hero-s:empty { display: none; }
.sd-desk.sd-detail > .sd-head, .sd-desk.sd-detail > .sd-hero { display: none; }

/* the tab bar: at the bottom on a phone */
.sd-tabs, .lq-tabs {
  position: fixed; z-index: 45; left: 0; right: 0; bottom: 0;
  display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; padding: 6px 6px calc(4px + env(safe-area-inset-bottom));
  background: color-mix(in srgb, var(--cs-surface) 86%, transparent);
  -webkit-backdrop-filter: saturate(1.8) blur(20px); backdrop-filter: saturate(1.8) blur(20px);
  box-shadow: 0 -1px 0 var(--cs-sep);
}
:root[data-theme="dark"] :is(.sd-tabs, .lq-tabs) { background: color-mix(in srgb, #15181c 88%, transparent); }
.sd-desk a.sd-tab, .lq a.lq-tab {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-width: 0; min-height: 48px; padding: 2px 0;
  border-radius: 10px; color: var(--cs-text-3); font: 500 .6875rem/1.1 var(--cs-font); letter-spacing: .01em; white-space: nowrap;
}
.sd-tab .sd-ic, .lq-tab .lq-ic, .lq-tab .lq-ic svg { width: 25px; height: 25px; }
.sd-desk a.sd-tab.on, .lq a.lq-tab.on { color: var(--cs-brand-text); font-weight: 600; }
.sd-desk.sd-detail > .sd-tabs { display: none; }
/* the one Sales bar inside Crewline (crewline.js): Lot, Post today, Leads, Results, More */
.cs-tabs .cs-tab {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; min-width: 0; min-height: 50px; padding: 3px 0 1px;
  border: 0; border-radius: 10px; background: none; color: var(--cs-text-3); font: 500 .6875rem/1.1 var(--cs-font); letter-spacing: .01em; white-space: nowrap; text-decoration: none; cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.cs-tabs .cs-tab .cs-ic { display: inline-flex; width: 25px; height: 25px; }
.cs-tabs .cs-tab .cs-ic svg, .cs-home .cs-ic svg { width: 100%; height: 100%; display: block; }
.cs-tabs .cs-tab.on { color: var(--cs-brand-text); font-weight: 650; }
.cs-tabs .cs-tab.on .cs-ic svg { stroke-width: 2.2; }
.cs-tabs .cs-tab:active { opacity: .6; }
/* "< Crewline": the way back to the rest of the app, where a phone's back button sits */
.cs-home { flex: none; display: inline-flex; align-items: center; gap: 0; min-height: 44px; padding: 0 10px 0 2px; border-radius: 12px; color: var(--cs-brand-text) !important; font: 500 1.0625rem/1 var(--cs-font); letter-spacing: -.01em; text-decoration: none; }
.cs-home .cs-ic { display: inline-flex; width: 26px; height: 26px; }
.cs-home .cs-ic svg { stroke-width: 2.3; }
.cs-home:active { opacity: .55; }
.lq-top-root:has(.cs-home) .lq-tools, .sd-head:has(.cs-home) .sd-head-a { min-width: 104px; }
.sd-tab .sd-badge-n { position: absolute; top: 2px; left: calc(50% + 6px); min-width: 17px; height: 17px; padding: 0 5px; border-radius: 9px; background: var(--cs-stop); color: #fff; font: 700 .6875rem/17px var(--cs-font); text-align: center; }

/* icon buttons */
.sd-icon-btn, .lq-back, .lq-tools .lq-tool {
  flex: none; width: 44px; height: 44px; display: inline-grid; place-items: center; padding: 0; border: 0; border-radius: 50%;
  background: transparent; color: var(--cs-text); cursor: pointer; list-style: none;
}
.sd-icon-btn::-webkit-details-marker { display: none; }
.sd-icon-btn .sd-ic, .lq-back .lq-ic svg, .lq-tools .lq-tool .lq-ic svg { width: 24px; height: 24px; }
.sd-icon-btn-line { background: var(--cs-fill); color: var(--cs-brand-text); width: 40px; height: 40px; }
.sd-ic { display: inline-flex; width: 20px; height: 20px; flex: none; }
.sd-ic svg, .lq-ic svg { width: 100%; height: 100%; display: block; }
.lq-ic { display: inline-grid; place-items: center; line-height: 0; }
.sd-ic-xs { width: 14px; height: 14px; }

/* ------------------------------------------------------------------ type and small pieces */
.sd-desk, .sd-sheet-wrap, .lq { font-size: .9375rem; line-height: 1.45; color: var(--cs-text); }
.sd-msg { margin: 8px 0 0; font-size: .875rem; color: var(--cs-text-2); }
.sd-msg:empty, .lq .sh-msg:empty { display: none; }
.sd-fine { margin: 0; font-size: .8125rem; color: var(--cs-text-3); }
.sd-strong { color: var(--cs-text); font-weight: 600; }
.sd-sec { margin: 0 0 28px; }
.sd-sec-h, .lq-sec-h { display: flex; align-items: center; gap: 8px; min-height: 36px; margin: 0 0 10px; }
.sd-sec-h h2, .sd-title, .lq-sec-h h2 { flex: 1; min-width: 0; margin: 0; font: 700 1.25rem/1.2 var(--cs-font); letter-spacing: -.015em; color: var(--cs-text); }
.lq-sec-h span { font-size: .8125rem; color: var(--cs-text-3); }
.sd-sec-tools { display: flex; align-items: center; gap: 4px; flex: none; }
.sd-count { font: 600 .8125rem/1.2 var(--cs-font); color: var(--cs-text-3); white-space: nowrap; }
.sd-h3, .sd-sub-h h3 { margin: 0; font: 650 1.0625rem/1.25 var(--cs-font); letter-spacing: -.01em; }
.sd-h3 { margin: 28px 0 10px; }
.sd-dots { display: flex; flex-wrap: wrap; align-items: center; margin: 0; font-size: .875rem; color: var(--cs-text-3); }
.sd-dots > span + span::before { content: ""; display: inline-block; width: 3px; height: 3px; margin: 0 7px; border-radius: 50%; background: currentColor; vertical-align: middle; opacity: .7; }

/* a tip: one quiet line, the why behind a tap */
.sd-tip { display: flex; align-items: flex-start; gap: 8px; margin: 0 0 12px; font-size: .8125rem; line-height: 1.4; color: var(--cs-text-3); }
.sd-tip .sd-ic { width: 16px; height: 16px; margin-top: 1px; }
details.sd-tip { display: block; }
details.sd-tip > summary { display: flex; align-items: flex-start; gap: 8px; list-style: none; cursor: pointer; }
details.sd-tip > summary::-webkit-details-marker { display: none; }
details.sd-tip > summary > span:not(.sd-ic) { flex: 1; }
.sd-tip-caret { transition: transform .15s; }
details.sd-tip[open] .sd-tip-caret { transform: rotate(180deg); }
details.sd-tip > p { margin: 6px 0 0 24px; color: var(--cs-text-2); }
.sd-sample { display: flex; align-items: center; gap: 8px; margin: 0 0 16px; padding: 10px 12px; border-radius: 12px; background: var(--cs-warn-tint); color: var(--cs-text); font-size: .8125rem; font-weight: 500; }
.sd-sample .sd-ic { width: 16px; height: 16px; color: var(--cs-warn); }
@media (min-width: 761px) { body:has(.cl-demo-tag) .sd-sample { display: none; } }

/* chips: small tinted labels (status), never outlines */
.sd-chip { display: inline-flex; align-items: center; gap: 4px; flex: none; padding: 3px 8px; border-radius: 7px; background: var(--cs-fill); color: var(--cs-text-2); font: 600 .75rem/1.35 var(--cs-font); white-space: nowrap; }
.sd-chip .sd-ic { width: 12px; height: 12px; }
.sd-chip-ok, .sd-chip-st-sold { background: var(--cs-ok-tint); color: var(--cs-ok); }
.sd-chip-due, .sd-chip-st-new { background: var(--cs-brand-tint); color: var(--cs-brand-text); }
.sd-chip-late { background: var(--cs-stop-tint); color: var(--cs-stop); }
.sd-chip-draft, .sd-chip-st-replied { background: var(--cs-fill); color: var(--cs-text-2); }
.sd-chip-st-booked { background: var(--cs-violet-tint); color: var(--cs-violet); }
.sd-chip-st-lost { background: transparent; color: var(--cs-text-3); padding-left: 0; }

/* buttons: one filled primary, tonal secondary, text for the rest */
.sd-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 0 20px;
  border: 0; border-radius: 14px; font: 600 1rem/1.1 var(--cs-font); letter-spacing: -.005em; white-space: nowrap; cursor: pointer; text-decoration: none;
  transition: background-color .15s, opacity .15s, transform .1s;
}
.sd-btn:active:not(:disabled) { transform: scale(.98); }
.sd-btn .sd-ic { width: 20px; height: 20px; }
.sd-btn-primary, .sd-desk a.sd-btn-primary, .sd-sheet-wrap .sd-btn-primary { background: var(--cs-brand); color: #fff; box-shadow: 0 1px 2px rgba(16, 24, 40, .14), inset 0 1px 0 rgba(255, 255, 255, .1); }
.sd-btn-primary:disabled { background: var(--cs-fill-2); color: var(--cs-text-3); box-shadow: none; cursor: not-allowed; }
.sd-btn-ghost, .sd-desk a.sd-btn-ghost, .sd-page a.sd-btn-ghost { background: var(--cs-fill); color: var(--cs-text); }
.sd-btn-done { background: var(--cs-ok-tint); color: var(--cs-ok); cursor: default; }
.sd-btn-quiet { background: transparent; color: var(--cs-stop); }
.sd-btn-sm { min-height: 36px; padding: 0 12px; border-radius: 10px; font-size: .875rem; }
.sd-btn-sm .sd-ic { width: 17px; height: 17px; }
.sd-btn-icon { flex: 0 0 50px !important; padding: 0; }
.sd-chipbtn { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 10px; border: 0; border-radius: 10px; background: transparent; color: var(--cs-brand-text); font: 600 .875rem var(--cs-font); cursor: pointer; white-space: nowrap; }
.sd-chipbtn .sd-ic { width: 17px; height: 17px; }
.sd-tiny { display: inline-flex; align-items: center; gap: 4px; min-height: 30px; padding: 0 6px; border: 0; border-radius: 8px; background: none; color: var(--cs-brand-text); font: 600 .8125rem var(--cs-font); cursor: pointer; }
/* the one action on the inbox: a floating button over the tab bar */
.sd-fab {
  position: fixed; z-index: 30; right: 16px; bottom: calc(var(--sd-nav) + 16px);
  display: inline-flex; align-items: center; gap: 8px; height: 52px; padding: 0 20px 0 16px; border-radius: 26px;
  background: var(--cs-brand); color: #fff !important; font: 600 1rem var(--cs-font); box-shadow: 0 8px 24px -4px rgba(27, 106, 150, .45), 0 2px 6px rgba(16, 24, 40, .15);
}
.sd-fab .sd-ic { width: 22px; height: 22px; }

/* menus */
.sd-menu { position: relative; flex: none; }
.sd-menu > summary { list-style: none; }
.sd-menu-pop { position: absolute; right: 0; top: calc(100% + 6px); z-index: 50; min-width: 240px; display: grid; padding: 6px; border-radius: 14px; background: var(--cs-raised); box-shadow: var(--cs-e3); }
.sd-menu-pop button { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 12px; border: 0; border-radius: 9px; background: none; color: var(--cs-text); font: 500 .9375rem var(--cs-font); text-align: left; cursor: pointer; }
.sd-menu-pop button.danger { color: var(--cs-stop); }

/* empty states: a drawing, a line, one action */
.sd-empty, .lq-empty { display: grid; justify-items: center; gap: 6px; padding: 32px 20px 28px; border-radius: 20px; background: var(--cs-surface); box-shadow: var(--cs-e1); color: var(--cs-text-2); text-align: center; font-size: .9375rem; }
.sd-empty > .sd-ic { width: 64px; height: 64px; padding: 18px; margin-bottom: 6px; border-radius: 50%; background: var(--cs-brand-tint); color: var(--cs-brand-text); box-shadow: 0 0 0 8px color-mix(in srgb, var(--cs-brand-tint) 45%, transparent); }
.sd-empty b { color: var(--cs-text); font-size: 1.0625rem; font-weight: 650; }
.lq-empty::before { content: ""; width: 60px; height: 60px; margin: 0 auto 8px; border-radius: 50%; background: var(--cs-brand-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231b6a96' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20V11M10 20V5M16 20v-6M20.5 20h-17'/%3E%3C/svg%3E") center / 26px no-repeat; box-shadow: 0 0 0 8px color-mix(in srgb, var(--cs-brand-tint) 45%, transparent); }
:root[data-theme="dark"] .lq-empty::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236bb5e1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20V11M10 20V5M16 20v-6M20.5 20h-17'/%3E%3C/svg%3E"); }
.sd-empty .sd-btn { margin-top: 12px; }
.sd-allclear { display: flex; align-items: center; gap: 12px; margin: 0; padding: 14px 16px; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e1); color: var(--cs-text); font-weight: 600; font-size: .9375rem; }
.sd-allclear .sd-ic { width: 32px; height: 32px; padding: 7px; border-radius: 50%; background: var(--cs-ok-tint); color: var(--cs-ok); }

/* notes: approved, check this */
.sd-note { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 12px; padding: 12px 14px; border-radius: 14px; font-size: .875rem; line-height: 1.4; }
.sd-note .sd-ic { width: 18px; height: 18px; margin-top: 1px; }
.sd-note-ok { background: var(--cs-ok-tint); color: var(--cs-ok); }
.sd-note-ok b { font-weight: 650; }
.sd-note-warn { background: var(--cs-warn-tint); color: var(--cs-text); }
.sd-note-warn .sd-ic { color: var(--cs-warn); }

/* avatars */
.sd-av { flex: none; width: 36px; height: 36px; display: inline-grid; place-items: center; border-radius: 50%; color: #fff; font: 650 .9375rem/1 var(--cs-font); letter-spacing: 0; }
.sd-av-xs { width: 22px; height: 22px; font-size: .625rem; }
.sd-av-md { width: 40px; height: 40px; }
.sd-av-lg { width: 52px; height: 52px; font-size: 1.25rem; }
.sd-av-xl { width: 72px; height: 72px; font-size: 1.75rem; }
.sd-tint-0 { background: linear-gradient(135deg, #3a8cc0, #1b6a96); } .sd-tint-1 { background: linear-gradient(135deg, #45a46a, #237a47); }
.sd-tint-2 { background: linear-gradient(135deg, #d39a3e, #a96a12); } .sd-tint-3 { background: linear-gradient(135deg, #8076cf, #5a4cb0); }
.sd-tint-4 { background: linear-gradient(135deg, #3fa69c, #1f7a71); } .sd-tint-5 { background: linear-gradient(135deg, #d0685a, #a8443a); }

/* ------------------------------------------------------------------ photos, and the placeholder when there isn't one */
.sd-photo { position: relative; overflow: hidden; background: var(--cs-fill); }
.sd-photo > .sd-art, .sd-photo > img { position: absolute; inset: 0; width: 100%; height: 100%; }
.sd-photo > img { object-fit: cover; }
.sd-photo-hero { aspect-ratio: 4 / 3; }
.sd-photo-wide { aspect-ratio: 1.91 / 1; }
.sd-photo-sq { aspect-ratio: 1; }
.sd-photo-tile, .sd-photo-col { aspect-ratio: 4 / 3; }
.sd-photo-col { border-radius: 12px; }
/* no photo: the plain tile from sampleimg.js (a camera, and "Sample photo" for the sample crew), in this palette */
.sd-art { display: grid; place-items: center; overflow: hidden; }
.rvsp-tile.sd-art { background: linear-gradient(160deg, #eef0f3 0%, #e1e4e9 100%); color: #8a929c; }
.rvsp-tile.sd-art > .rvsp-ph { gap: 8px; font: 600 .75rem/1.2 var(--cs-font, inherit); letter-spacing: .01em; opacity: 1; }
.rvsp-tile.sd-art .rvsp-ph svg { width: 30px; height: 30px; padding: 10px; box-sizing: content-box; border-radius: 50%; background: rgba(255, 255, 255, .7); }
:root[data-theme="dark"] .rvsp-tile.sd-art { background: linear-gradient(160deg, #1d2127 0%, #16191e 100%); color: #6f7882; }
:root[data-theme="dark"] .rvsp-tile.sd-art .rvsp-ph svg { background: rgba(255, 255, 255, .06); }
.sd-thumb .rvsp-tile .rvsp-ph svg, .sd-lthumb .rvsp-tile .rvsp-ph svg, .sd-ctxunit .rvsp-tile .rvsp-ph svg, .sd-hp .rvsp-tile .rvsp-ph svg { width: 20px; height: 20px; padding: 0; background: none; }

/* ------------------------------------------------------------------ cards and lists */
.sd-list, .sd-inbox, .sd-board, .sd-chart, .sd-spec, .sd-form, .sd-spent, .sd-kpi, .sd-ctxunit, .sd-rep-card { background: var(--cs-surface); border-radius: 16px; box-shadow: var(--cs-e2); }
.sd-list, .sd-inbox, .sd-board { overflow: hidden; }
.sd-row { position: relative; display: flex; align-items: center; gap: 12px; min-height: 68px; padding: 10px 12px 10px 14px; }
.sd-row + .sd-row::before, .sd-lrow + .sd-lrow::before, .sd-rep + .sd-rep::before, .sd-board li + li::before, .sd-more::before { content: ""; position: absolute; top: 0; left: 72px; right: 0; height: 1px; background: var(--cs-sep); }
.sd-row-main { flex: 1; min-width: 0; display: grid; gap: 1px; }
.sd-row-main b, .sd-row-main span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.sd-row-main b { font-weight: 600; font-size: 1rem; letter-spacing: -.005em; }
.sd-row-main span { font-size: .875rem; color: var(--cs-text-3); }
.sd-row-chev { width: 18px; height: 18px; color: var(--cs-text-3); opacity: .7; }
.sd-row-more { min-height: 50px; justify-content: space-between; font-weight: 600; font-size: .9375rem; }
.sd-desk a.sd-row-more { color: var(--cs-brand-text); }
.sd-thumb { position: relative; flex: none; width: 46px; height: 46px; }
.sd-thumb .sd-photo { width: 100%; height: 100%; border-radius: 12px; }
.sd-thumb .sd-av-xs { position: absolute; right: -4px; bottom: -4px; box-shadow: 0 0 0 2px var(--cs-surface); }
.sd-stack { flex: none; display: flex; width: 46px; height: 46px; align-items: center; }
.sd-stack-i { width: 28px; height: 34px; border-radius: 8px; box-shadow: 0 0 0 2px var(--cs-surface); }
.sd-stack-i + .sd-stack-i { margin-left: -18px; }

/* ------------------------------------------------------------------ segmented controls */
.sd-seg, .lq-seg { display: flex; gap: 2px; margin: 0 0 14px; padding: 3px; border-radius: 12px; background: var(--cs-fill); overflow-x: auto; scrollbar-width: none; }
.sd-seg::-webkit-scrollbar, .lq-seg::-webkit-scrollbar { display: none; }
.sd-seg button, .lq .lq-segb {
  flex: 1 1 0; min-width: 0; min-height: 34px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 10px;
  border: 0; border-radius: 9px; background: transparent; color: var(--cs-text-2); font: 600 .875rem var(--cs-font); white-space: nowrap; cursor: pointer; box-shadow: none;
}
.lq .lq-segb { flex: 1 0 auto; }
.sd-seg button > span { display: inline-flex; align-items: center; gap: 6px; }
.sd-seg button .sd-ic { width: 17px; height: 17px; }
.sd-seg button[aria-checked="true"], .lq .lq-segb[aria-pressed="true"] { background: var(--cs-raised); color: var(--cs-text); box-shadow: 0 1px 2px rgba(16, 24, 40, .1), 0 1px 1px rgba(16, 24, 40, .04); }
:root[data-theme="dark"] :is(.sd-seg button[aria-checked="true"], .lq .lq-segb[aria-pressed="true"]) { background: #383e46; box-shadow: none; }
.sd-seg .sd-ic-fb { color: var(--cs-fb); }
.sd-seg-sm button { min-height: 30px; font-size: .8125rem; }
.sd-dot-stop { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--cs-stop); }

/* ------------------------------------------------------------------ inputs: filled, large */
.sd-in, .lq .sh-in, .sd-sheet-wrap .sh-in {
  box-sizing: border-box; width: 100%; max-width: none; min-height: 50px; margin: 0; padding: 12px 14px;
  border: 1px solid transparent; border-radius: 12px; background: var(--cs-in); color: var(--cs-text); font: 400 16px/1.4 var(--cs-font); box-shadow: none;
  transition: background-color .15s, border-color .15s, box-shadow .15s;
}
.sd-in::placeholder, .lq .sh-in::placeholder { color: var(--cs-text-3); }
.sd-in:focus, .lq .sh-in:focus, .sd-sheet-wrap .sh-in:focus { outline: none; background: var(--cs-surface); border-color: var(--cs-brand); box-shadow: 0 0 0 4px var(--cs-ring); }
select.sd-in, .lq select.sh-in { -webkit-appearance: none; appearance: none; padding-right: 40px; background-image: var(--cs-chev-down); background-repeat: no-repeat; background-position: right 12px center; background-size: 18px; }
input[type="date"].sd-in, .lq input[type="date"].sh-in, input[type="month"].sd-in { -webkit-appearance: none; appearance: none; min-width: 0; }
.sd-ta { min-height: 100px; resize: vertical; line-height: 1.45; }
.sd-field { display: grid; gap: 6px; margin: 0 0 18px; }
.sd-field > span:first-child, .lq .lq-lbl { font: 600 .8125rem/1.3 var(--cs-font); letter-spacing: 0; text-transform: none; color: var(--cs-text-2); }
.sd-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0 0 8px; }
.sd-grid3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; margin: 0 0 8px; }
.sd-grid-tight { margin: 0; }
.sd-grid2 .sd-seg { margin: 0; align-self: stretch; }
.sd-grid2 .sd-seg button { min-height: 40px; }
.sd-more-f { margin: 0 0 8px; }
.sd-more-f > summary { display: flex; align-items: center; gap: 6px; min-height: 44px; list-style: none; color: var(--cs-brand-text); font-weight: 600; font-size: .9375rem; cursor: pointer; }
.sd-more-f > summary::-webkit-details-marker { display: none; }
.sd-more-f[open] > summary .sd-ic { transform: rotate(180deg); }
.sd-more-f > .sd-fine { margin: 0 0 8px; }
/* custom checkboxes: a rounded square that fills with a check */
.sd-ack input, .lp-tick input, .lq-ok-cb, .li-cb, .sd-opt-cb {
  -webkit-appearance: none; appearance: none; flex: none; width: 24px; height: 24px; margin: 0; border: 2px solid var(--cs-sep-2); border-radius: 7px;
  background: var(--cs-surface) center / 16px no-repeat; cursor: pointer; transition: background-color .12s, border-color .12s;
}
.sd-ack input:checked, .lp-tick input:checked, .li-cb:checked { background-color: var(--cs-brand); border-color: var(--cs-brand); background-image: var(--cs-check); }
.lq-ok-cb { border-radius: 50%; width: 26px; height: 26px; }
.lq-ok-cb:checked { background-color: var(--cs-ok); border-color: var(--cs-ok); background-image: var(--cs-check); }
:is(.sd-ack input, .lp-tick input, .lq-ok-cb, .li-cb):disabled { opacity: .45; cursor: default; }
:is(.sd-ack input, .lp-tick input, .lq-ok-cb, .li-cb):focus-visible { outline: none; box-shadow: 0 0 0 4px var(--cs-ring); }

/* ------------------------------------------------------------------ sheets: slide up, grab handle */
html.sd-locked, html.sd-locked body { overflow: hidden; }
.sd-sheet-wrap { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: flex-end; justify-content: center; }
.sd-scrim { position: absolute; inset: 0; background: rgba(8, 10, 12, .44); opacity: 0; transition: opacity .22s; }
.sd-sheet {
  position: relative; display: flex; flex-direction: column; width: 100%; max-width: 560px; height: calc(100dvh - 12px); max-height: calc(100vh - 12px);
  border-radius: 22px 22px 0 0; background: var(--cs-bg); outline: none; box-shadow: var(--cs-e3);
  transform: translateY(100%); transition: transform .3s cubic-bezier(.2, .8, .2, 1);
}
.sd-sheet-menu, .sd-sheet-form { height: auto; max-height: calc(100dvh - 40px); }
.sd-sheet-wrap.open .sd-scrim { opacity: 1; }
.sd-sheet-wrap.open .sd-sheet { transform: none; }
.sd-grab { flex: none; width: 36px; height: 5px; margin: 7px auto 0; border-radius: 3px; background: var(--cs-sep-2); }
.sd-sheet-h { flex: none; display: flex; align-items: center; gap: 4px; min-height: 48px; padding: 0 8px; }
.sd-sheet-t { flex: 1; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; text-align: center; font: 600 1.0625rem var(--cs-font); letter-spacing: -.01em; }
.sd-sheet-sp { flex: none; width: 44px; }
.sd-sheet-b { flex: 1; overflow: auto; overscroll-behavior: contain; padding: 4px 16px 20px; }
.sd-sheet-menu .sd-sheet-b, .sd-sheet-form .sd-sheet-b { padding-bottom: calc(20px + env(safe-area-inset-bottom)); }
.sd-sheet-f { flex: none; padding: 10px 16px calc(12px + env(safe-area-inset-bottom)); background: var(--cs-surface); box-shadow: 0 -1px 0 var(--cs-sep); }
.sd-sheet-f:empty { display: none; }
.sd-sheet-f .sd-msg { margin: 0 0 8px; }
.sd-sheet-b > .sd-seg, .sd-sheet-b > .sd-note { margin-bottom: 14px; }
.sd-sheet-b > .sd-tip { margin: 14px 0 0; }
/* the menu sheet */
.sd-nav-h { margin: 14px 4px 6px; font: 600 .8125rem var(--cs-font); color: var(--cs-text-3); }
.sd-nav-list { display: grid; overflow: hidden; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e1); }
.sd-nav-row { position: relative; display: flex; align-items: center; gap: 14px; min-height: 50px; padding: 0 14px; border: 0; background: none; color: var(--cs-text); font: 500 1rem var(--cs-font); text-align: left; cursor: pointer; }
.sd-nav-row + .sd-nav-row::before { content: ""; position: absolute; top: 0; left: 14px; right: 0; height: 1px; background: var(--cs-sep); }
.sd-nav-row > span:not(.sd-ic):not(.sd-row-chev) { flex: 1; }
.sd-nav-row .sd-ic { width: 22px; height: 22px; color: var(--cs-text-2); }
.sd-nav-row .sd-row-chev { display: inline-flex; width: 18px; height: 18px; }
.sd-nav-row.on { color: var(--cs-brand-text); font-weight: 600; }

/* ------------------------------------------------------------------ the action bar: one decision at the bottom of the screen */
.sd-bar, .lq-next {
  position: sticky; bottom: calc(var(--sd-nav) + 10px); z-index: 20; margin: 18px 0 0; padding: 10px;
  border-radius: 20px; background: color-mix(in srgb, var(--cs-surface) 92%, transparent);
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); box-shadow: var(--cs-e3);
}
.sd-bar-row { display: flex; gap: 8px; }
.sd-bar-row > * { flex: 1 1 0; min-width: 0; }
.sd-bar-row > .sd-note { margin: 0; }
.sd-bar .sd-msg { margin: 2px 4px 8px; }
.sd-bar-fine { margin: 7px 0 1px; text-align: center; font-size: .75rem; color: var(--cs-text-3); }
.sd-bar-row > .sd-bar-fine { margin: 0; align-self: center; text-align: left; }
.sd-approver { min-height: 50px; }
.sd-sheet-f .sd-bar-row .sd-btn, .sd-bar .sd-bar-row .sd-btn { min-height: 50px; }

/* ------------------------------------------------------------------ Today */
.sd-progrow { display: flex; align-items: center; gap: 10px; margin: -4px 0 10px; }
.sd-prog { flex: 1; display: flex; gap: 4px; max-width: 220px; }
.sd-prog i { flex: 1; height: 6px; border-radius: 3px; background: var(--cs-fill-2); }
.sd-prog i.on { background: var(--cs-ok); }
.sd-units { display: grid; grid-auto-flow: column; grid-auto-columns: calc(100% - 36px); gap: 12px; margin: 0 -16px; padding: 4px 16px 16px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding: 0 16px; scrollbar-width: none; }
.sd-units::-webkit-scrollbar { display: none; }
.sd-unit { scroll-snap-align: start; overflow: hidden; border-radius: 20px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.sd-unit-media { position: relative; }
.sd-unit-media .sd-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8, 12, 16, .18) 0%, rgba(8, 12, 16, 0) 26%, rgba(8, 12, 16, 0) 46%, rgba(8, 12, 16, .78) 100%); }
.sd-unit-chips { position: absolute; top: 12px; left: 12px; display: flex; gap: 6px; }
.sd-unit-media .sd-chip, .sd-badge {
  display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px 5px 9px; border-radius: 999px;
  background: var(--cs-glass); color: #fff; font: 600 .75rem/1.2 var(--cs-font); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
.sd-unit-media .sd-chip::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #c9d1d9; }
.sd-unit-media .sd-chip-fresh::before { background: #5fd38d; }
.sd-unit-media .sd-chip-aging::before { background: #f3b34a; }
.sd-unit-media .sd-chip-feat::before { display: none; }
.sd-unit-media .sd-chip-feat .sd-ic { width: 13px; height: 13px; color: #ffd36b; }
.sd-badge { position: absolute; top: 12px; right: 12px; }
.sd-badge .sd-ic { width: 13px; height: 13px; }
.sd-badge-ok .sd-ic { color: #5fd38d; }
.sd-badge-stop { background: rgba(200, 57, 45, .88); }
.sd-unit-cap { position: absolute; left: 16px; right: 16px; bottom: 14px; color: #fff; }
.sd-unit-cap h3 { margin: 0 0 3px; color: #fff; font: 650 1.1875rem/1.2 var(--cs-font); letter-spacing: -.015em; text-shadow: 0 1px 2px rgba(0, 0, 0, .3); }
.sd-unit-cap .sd-dots { color: rgba(255, 255, 255, .82); font-size: .875rem; }
.sd-unit-cap .sd-strong { color: #fff; font-weight: 650; }
.sd-unit-acts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 12px; }
.sd-big { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 48px; padding: 0 8px; white-space: nowrap; border: 0; border-radius: 13px; background: var(--cs-fill); color: var(--cs-text); font: 600 .9375rem var(--cs-font); cursor: pointer; transition: background-color .15s, transform .1s; }
.sd-big:active { transform: scale(.98); }
.sd-big .sd-big-ic { width: 21px; height: 21px; }
.sd-big .sd-big-fb, .sd-big .sd-big-store { color: var(--cs-fb); }
:root[data-theme="dark"] .sd-big .sd-big-fb, :root[data-theme="dark"] .sd-big .sd-big-store { color: #4b9bff; }
.sd-big.done { background: var(--cs-ok-tint); color: var(--cs-ok); }
.sd-big.done .sd-big-ic { color: var(--cs-ok); }
.sd-unit-gone { padding: 18px; display: grid; place-items: center; min-height: 200px; }
.sd-unit-gone .sd-tip { margin: 0; }

/* ------------------------------------------------------------------ Leads: the inbox */
.sd-inbox-h { gap: 8px; }
.sd-inbox-h .sd-seg { flex: 1; margin: 0; max-width: 260px; }
.sd-lrow { position: relative; display: flex; align-items: center; gap: 14px; padding: 12px 14px; }
.sd-lthumb { position: relative; flex: none; width: 54px; height: 54px; }
.sd-lthumb .sd-photo { width: 100%; height: 100%; border-radius: 14px; }
.sd-lthumb .sd-av-lg { width: 54px; height: 54px; }
.sd-srcbadge { position: absolute; right: -5px; bottom: -5px; width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: var(--cs-raised); color: var(--cs-text-2); box-shadow: 0 0 0 2px var(--cs-surface), 0 1px 3px rgba(16, 24, 40, .18); }
.sd-srcbadge .sd-ic { width: 14px; height: 14px; }
.sd-src-marketplace, .sd-src-fbpost, .sd-src-meta { background: var(--cs-fb); color: #fff; }
.sd-lmain { flex: 1; min-width: 0; display: grid; gap: 1px; }
.sd-ltop { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.sd-ltop b { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-weight: 600; font-size: 1rem; letter-spacing: -.005em; }
.sd-ltop time { flex: none; display: inline-flex; align-items: center; gap: 6px; font-size: .8125rem; color: var(--cs-text-3); }
.sd-lrow.unread .sd-ltop b { font-weight: 700; }
.sd-lrow.unread .sd-ltop time { color: var(--cs-brand-text); font-weight: 600; }
.sd-lrow.unread .sd-ltop time::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--cs-brand-text); }
.sd-lunit { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: .875rem; color: var(--cs-text-2); }
.sd-lbot { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin-top: 5px; }
.sd-next { font-size: .8125rem; font-weight: 500; color: var(--cs-text-2); }
.sd-next.late { color: var(--cs-stop); }
.sd-who { font-size: .8125rem; color: var(--cs-text-3); }
.sd-more { position: relative; width: 100%; min-height: 50px; border: 0; background: none; color: var(--cs-brand-text); font: 600 .9375rem var(--cs-font); cursor: pointer; }
.sd-more::before { left: 0; }

/* ------------------------------------------------------------------ new lead */
.sd-form { padding: 18px 16px 4px; margin-bottom: 20px; overflow-x: clip; }
.sd-opts { display: grid; grid-template-columns: repeat(auto-fill, minmax(124px, 1fr)); gap: 8px; }
.sd-opt { position: relative; }
.sd-opt input, .sd-hp input, .sd-tile input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.sd-opt > span { display: flex; align-items: center; gap: 7px; min-height: 44px; padding: 0 10px; white-space: nowrap; overflow: hidden; border-radius: 12px; background: var(--cs-in); color: var(--cs-text-2); font-size: .875rem; font-weight: 600; cursor: pointer; transition: background-color .12s, color .12s; }
.sd-opt > span .sd-ic { width: 17px; height: 17px; }
.sd-opt input:checked + span { background: var(--cs-brand); color: #fff; }
.sd-opt input:focus-visible + span, .sd-hp input:focus-visible ~ .sd-photo, .sd-tile input:focus-visible ~ .sd-photo { outline: none; box-shadow: 0 0 0 4px var(--cs-ring); }
.sd-hpick { display: flex; gap: 10px; margin: 0 -16px; padding: 4px 16px 8px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.sd-hpick::-webkit-scrollbar { display: none; }
.sd-hp { position: relative; flex: 0 0 104px; display: grid; gap: 6px; align-content: start; scroll-snap-align: start; cursor: pointer; }
.sd-hp .sd-photo, .sd-hp-ph { width: 100%; border-radius: 14px; transition: box-shadow .12s; }
.sd-hp-ph { aspect-ratio: 1; display: grid; place-items: center; background: var(--cs-in); color: var(--cs-text-3); font: 600 1.5rem var(--cs-font); }
.sd-hp-t { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: .75rem; line-height: 1.3; color: var(--cs-text-2); }
.sd-hp input:checked ~ .sd-photo, .sd-hp input:checked ~ .sd-hp-ph { box-shadow: 0 0 0 3px var(--cs-surface), 0 0 0 5px var(--cs-brand); }
.sd-hp input:checked ~ .sd-hp-t { color: var(--cs-brand-text); font-weight: 600; }
.sd-form .sd-tip { margin: -6px 0 14px; }
.sd-form > .sd-bar { margin: 8px -16px 0; position: sticky; }

/* ------------------------------------------------------------------ the check: flags marked on the words */
.sd-hl { position: relative; }
.sd-hl-back, .sd-hl .sd-hl-ta { box-sizing: border-box; margin: 0; padding: 8px 14px 12px; border: 0; font: 400 16px/1.5 var(--cs-font); letter-spacing: 0; white-space: pre-wrap; overflow-wrap: break-word; word-break: normal; tab-size: 4; }
.sd-hl-back { min-height: 3em; color: transparent; }
.sd-hl .sd-hl-ta { position: absolute; inset: 0; width: 100%; height: 100%; overflow: hidden; resize: none; border-radius: 0; background: transparent; color: var(--cs-text); box-shadow: none; }
.sd-hl .sd-hl-ta:focus-visible { outline: 2px solid var(--cs-brand); outline-offset: -2px; border-radius: 12px; }
.sd-mk { color: transparent; border-radius: 4px; }
.sd-mk-stop { background: rgba(200, 57, 45, .18); box-shadow: inset 0 -2px 0 var(--cs-stop); }
.sd-mk-check { background: rgba(224, 154, 30, .22); box-shadow: inset 0 -2px 0 var(--cs-warn-dot); }
.sd-gate { display: grid; gap: 8px; margin: 12px 0 0; }
.sd-flag { border-radius: 14px; background: var(--cs-surface); box-shadow: var(--cs-e1); font-size: .875rem; line-height: 1.4; }
.sd-flag > summary { display: flex; align-items: baseline; gap: 10px; padding: 12px 14px; list-style: none; cursor: pointer; }
.sd-flag > summary::-webkit-details-marker { display: none; }
.sd-flag > summary::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--cs-stop); transform: translateY(-1px); }
.sd-flag > summary b { flex: none; max-width: 45%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--cs-stop); }
.sd-flag > summary span { color: var(--cs-text-2); }
.sd-flag > p { margin: 0; padding: 0 14px 12px 32px; color: var(--cs-text-3); font-size: .8125rem; }
.sd-flag-check > summary::before { background: var(--cs-warn-dot); }
.sd-flag-check > summary b { color: var(--cs-warn); }
.sd-ack { display: flex; align-items: flex-start; gap: 12px; min-height: 44px; padding: 12px 14px; border-radius: 14px; background: var(--cs-surface); box-shadow: var(--cs-e1); font-size: .875rem; line-height: 1.4; cursor: pointer; }
.sd-ack > span { display: grid; gap: 2px; }
.sd-ack small { font-size: .8125rem; color: var(--cs-text-3); }

/* ------------------------------------------------------------------ the post preview sheet */
.sd-fb, .sd-mp { overflow: hidden; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.sd-fb-h { display: flex; align-items: center; gap: 10px; padding: 14px 14px 4px; }
.sd-fb-h > div { display: grid; }
.sd-fb-h b { font-size: .9375rem; font-weight: 650; }
.sd-fb-h > div > span { display: inline-flex; align-items: center; gap: 4px; font-size: .75rem; color: var(--cs-text-3); }
.sd-fb-card { background: var(--cs-fill); }
.sd-fb-card-t { display: grid; padding: 10px 14px 12px; }
.sd-fb-card-t small { font-size: .6875rem; letter-spacing: .03em; color: var(--cs-text-3); }
.sd-fb-card-t b { font-size: .9375rem; font-weight: 650; }
.sd-mp-h { display: grid; gap: 2px; padding: 14px 14px 10px; }
.sd-mp-price { font-size: 1.375rem; line-height: 1.2; font-weight: 700; letter-spacing: -.02em; }
.sd-mp-h span { font-weight: 600; }
.sd-mp-h small { font-size: .8125rem; color: var(--cs-text-3); }
.sd-mp-d { margin: 0 14px; padding: 12px 0 0; box-shadow: 0 -1px 0 var(--cs-sep); }
.sd-mp-d > b { display: block; font-size: .9375rem; }
.sd-hl-mp .sd-hl-back, .sd-hl-mp .sd-hl-ta { padding: 6px 0 14px; }

/* ------------------------------------------------------------------ a lead, as a chat */
.sd-backbar { gap: 6px; margin-bottom: 8px; }
.sd-backbar > .sd-icon-btn:first-child { color: var(--cs-brand-text); }
.sd-backbar .sd-title { font-size: 1.0625rem; font-weight: 650; text-align: center; margin-right: 44px; }
.sd-backbar .sd-sec-tools { gap: 0; }
.sd-backbar .sd-sec-tools .sd-icon-btn { color: var(--cs-brand-text); }
.sd-chat-who { flex: 1; min-width: 0; display: flex; align-items: center; gap: 10px; }
.sd-chat-who > div { display: grid; min-width: 0; }
.sd-chat-who b { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 1.0625rem; font-weight: 650; letter-spacing: -.01em; }
.sd-chat-who > div > span { display: inline-flex; align-items: center; gap: 4px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: .8125rem; color: var(--cs-text-3); }
.sd-chat-who .sd-av-md { width: 38px; height: 38px; }
.sd-seg-status { margin: 0 0 12px; }
.sd-seg-status button { min-height: 32px; padding: 0 4px; font-size: .78rem; }
.sd-sold { display: grid; grid-template-columns: 1fr 1fr auto; gap: 8px; margin: 0 0 12px; }
.sd-thread { display: flex; flex-direction: column; gap: 6px; padding: 4px 0 0; }
.sd-ctxunit { display: flex; align-items: center; gap: 12px; margin: 0 0 6px; padding: 10px 12px; }
.sd-ctxunit .sd-photo { flex: none; width: 52px; height: 52px; border-radius: 12px; }
.sd-ctxunit > div { display: grid; min-width: 0; }
.sd-ctxunit b { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: .9375rem; font-weight: 600; }
.sd-ctxunit span { font-size: .8125rem; color: var(--cs-text-3); white-space: pre; }
.sd-stamp { align-self: center; margin: 10px 0 4px; font: 600 .75rem var(--cs-font); color: var(--cs-text-3); }
.sd-bub { max-width: 84%; margin: 0; padding: 10px 14px; border-radius: 20px; font-size: .96875rem; line-height: 1.45; }
.sd-bub p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.sd-bub.them { align-self: flex-start; border-bottom-left-radius: 6px; background: var(--cs-surface); box-shadow: var(--cs-e1); }
.sd-bub.me { align-self: flex-end; border-bottom-right-radius: 6px; }
.sd-bub.sent { background: var(--cs-brand); color: #fff; }
.sd-bub.sent > summary { list-style: none; cursor: pointer; }
.sd-bub.sent > summary::-webkit-details-marker { display: none; }
.sd-bub.sent > summary p { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.sd-bub.sent[open] > summary { display: none; }
.sd-bub.sent:not([open]) > p { display: none; }
/* the reply being written: a composer card, not a dashed box */
.sd-bub.draft { width: 94%; max-width: 94%; padding: 4px 2px; border-radius: 20px 20px 6px 20px; background: var(--cs-surface); box-shadow: var(--cs-e2), 0 0 0 1.5px var(--cs-brand); }
.sd-bub.draft.ok { box-shadow: var(--cs-e2), 0 0 0 1.5px var(--cs-ok); }
.sd-hl-bub .sd-hl-back, .sd-hl-bub .sd-hl-ta { padding: 8px 12px; line-height: 1.45; }
.sd-bub.ghost { display: grid; gap: 4px; width: 84%; padding: 12px 14px; border: 0; border-radius: 16px; background: transparent; box-shadow: inset 0 0 0 1px var(--cs-sep-2); color: var(--cs-text-2); font: inherit; text-align: left; cursor: pointer; }
.sd-bub.ghost.on { box-shadow: inset 0 0 0 1.5px var(--cs-brand); color: var(--cs-brand-text); }
.sd-ghost-t { display: inline-flex; align-items: center; gap: 6px; font-size: .875rem; font-weight: 600; }
.sd-ghost-x { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: .875rem; color: var(--cs-text-3); }
.sd-label { align-self: flex-end; margin: 10px 6px 0; font: 600 .75rem var(--cs-font); color: var(--cs-brand-text); }
.sd-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 2px 6px 6px; font-size: .75rem; color: var(--cs-text-3); }
.sd-meta.me { align-self: flex-end; justify-content: flex-end; }
.sd-meta > span { display: inline-flex; align-items: center; gap: 4px; }
.sd-red { color: var(--cs-text-3); }
.sd-gate-slot .sd-gate { margin: 4px 0 6px; }
.sd-gate-slot:empty { display: none; }
.sd-history { margin: 24px 0 0; font-size: .875rem; }
.sd-history > summary { display: inline-flex; align-items: center; gap: 4px; min-height: 40px; list-style: none; color: var(--cs-text-3); font-weight: 600; cursor: pointer; }
.sd-history > summary::-webkit-details-marker { display: none; }
.sd-history ul { display: grid; gap: 6px; margin: 4px 0 0; padding: 0; list-style: none; color: var(--cs-text-2); }
.sd-history time { color: var(--cs-text-3); }

/* ------------------------------------------------------------------ Compare */
.sd-tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; margin: 0 0 18px; }
.sd-tile { position: relative; display: grid; align-content: start; overflow: hidden; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); cursor: pointer; transition: opacity .15s, box-shadow .15s, transform .15s; }
.sd-tile:has(input:checked) { box-shadow: 0 0 0 2.5px var(--cs-brand), var(--cs-e2); }
.sd-tile.off { opacity: .42; }
.sd-tile-n { position: absolute; top: 10px; right: 10px; width: 28px; height: 28px; display: grid; place-items: center; border: 2px solid rgba(255, 255, 255, .95); border-radius: 50%; background: rgba(16, 20, 24, .22); color: #fff; font: 700 .8125rem/1 var(--cs-font); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.sd-tile input:checked ~ .sd-tile-n { background: var(--cs-brand); border-color: #fff; }
.sd-tile-t { display: grid; gap: 2px; padding: 10px 12px 12px; }
.sd-tile-t b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: .875rem; font-weight: 600; line-height: 1.3; }
.sd-tile-t span { font-size: .8125rem; color: var(--cs-text-3); font-weight: 500; }
.sd-tile-star { position: absolute; top: 10px; right: 10px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--cs-glass); color: #fff; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.sd-tile-star .sd-ic { width: 18px; height: 18px; }
.sd-tile-feat input:checked ~ .sd-tile-star { background: #f2b33d; color: #fff; }
.sd-tile-feat .sd-photo-tile { aspect-ratio: 16 / 10; }
.sd-tile-feat input:checked ~ .sd-tile-star svg { fill: currentColor; }
.sd-cmp-f { display: grid; gap: 10px; padding: 14px; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.sd-cmp-f .sd-ta { min-height: 70px; }
.sd-spec { margin: 0 0 24px; padding: 14px; }
.sd-shead { display: grid; gap: 10px; margin: 0 0 10px; }
.sd-scol { display: grid; align-content: start; gap: 8px; min-width: 0; }
.sd-scol b { font-size: .8125rem; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.sd-scol small { font-size: .75rem; color: var(--cs-warn); }
.sd-srow { padding: 10px 0; box-shadow: 0 -1px 0 var(--cs-sep); }
.sd-slab { margin: 0 0 4px; font: 500 .75rem var(--cs-font); color: var(--cs-text-3); }
.sd-scells { display: grid; gap: 10px; }
.sd-sc { display: flex; align-items: baseline; gap: 6px; min-width: 0; overflow-wrap: anywhere; font-size: .9375rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.sd-ask { font-weight: 500; color: var(--cs-text-3); }
.sd-src-dot { flex: none; width: 7px; height: 7px; border: 1.5px solid var(--cs-text-3); border-radius: 50%; align-self: center; }
.sd-src-dot.pdi { border-color: var(--cs-ok); background: var(--cs-ok); }
.sd-sdisc { margin: -4px 0 8px; font-size: .75rem; color: var(--cs-text-3); }
.sd-slegend { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 4px 0 0; padding: 10px 0 0; box-shadow: 0 -1px 0 var(--cs-sep); font-size: .75rem; color: var(--cs-text-3); }
.sd-slegend > span:not(.sd-src-dot) { flex: 1; min-width: 0; }
.sd-vid { margin-bottom: 24px; }
.sd-vid-stage { position: relative; display: grid; place-items: center; min-height: 180px; overflow: hidden; border-radius: 20px; background: radial-gradient(120% 90% at 50% 0%, #26323c, #0f1418); box-shadow: var(--cs-e2); }
.sd-vid-stage:not([data-mode="idle"]) { aspect-ratio: 3 / 4; max-height: 62vh; margin: 0 auto; }
.sd-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; background: #000; }
.sd-vid-ctl { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 22px; }
.sd-vid-stage:not([data-mode="idle"]) .sd-vid-ctl { position: absolute; left: 0; right: 0; bottom: 0; padding: 32px 20px 20px; background: linear-gradient(transparent, rgba(0, 0, 0, .55)); }
.sd-rec { width: 72px; height: 72px; display: grid; place-items: center; padding: 0; border: 4px solid #fff; border-radius: 50%; background: transparent; cursor: pointer; }
.sd-rec-dot { width: 54px; height: 54px; border-radius: 50%; background: #ff3b30; transition: width .2s, height .2s, border-radius .2s; }
.sd-vid-stage[data-mode="rec"] .sd-rec-dot { width: 26px; height: 26px; border-radius: 6px; }
.sd-vid-cap { display: grid; text-align: center; color: #fff; gap: 2px; }
.sd-vid-cap b { font-size: 1rem; font-weight: 650; }
.sd-vid-cap small { font-size: .8125rem; opacity: .75; }
.sd-vid-time { position: absolute; top: 12px; left: 50%; z-index: 1; transform: translateX(-50%); padding: 4px 10px; border-radius: 999px; background: #ff3b30; color: #fff; font: 600 .8125rem var(--mono); }
.sd-row2 { display: flex; gap: 8px; margin: 12px 0 0; }
.sd-row2 > .sd-btn { flex: 1 1 0; }
.sd-row2:not(:has(> :not([hidden]))) { display: none; }
.sd-vid-done { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.sd-vid-ic { flex: none; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: var(--cs-ok-tint); color: var(--cs-ok); }
.sd-vid-done > span:nth-child(2) { flex: 1; display: grid; }
.sd-vid-done small { font-size: .8125rem; color: var(--cs-text-3); }
.sd-hl-note { border-radius: 14px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.sd-hl-note .sd-hl-back, .sd-hl-note .sd-hl-ta { padding: 12px 14px; }

/* ------------------------------------------------------------------ Spend and results */
.sd-month { width: auto; max-width: 180px; min-height: 36px; padding: 6px 12px; border-radius: 10px; font-size: .875rem; font-weight: 600; }
.sd-form-sub { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin: -2px 0 12px; }
.sd-moneys { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0 0 8px; }
.sd-money { display: grid; gap: 2px; padding: 10px 12px; border-radius: 14px; background: var(--cs-in); cursor: text; transition: box-shadow .15s, background-color .15s; }
.sd-money:focus-within { background: var(--cs-surface); box-shadow: 0 0 0 1.5px var(--cs-brand), 0 0 0 5px var(--cs-ring); }
.sd-money-l { font-size: .75rem; font-weight: 600; color: var(--cs-text-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sd-money-in { display: flex; align-items: center; gap: 4px; }
.sd-money-in i { font-style: normal; font-weight: 600; color: var(--cs-text-3); }
.sd-money .sd-in, .sd-boost .sd-money-in .sd-in { min-height: 32px; padding: 0; border: 0; border-radius: 0; background: transparent; font: 650 1.1875rem var(--cs-font); font-variant-numeric: tabular-nums; box-shadow: none; }
.sd-money .sd-in:focus, .sd-boost .sd-money-in .sd-in:focus { outline: none; box-shadow: none; background: transparent; }
.sd-money-total { background: var(--cs-brand-tint); cursor: default; }
.sd-money-total .sd-money-l { color: var(--cs-brand-text); }
.sd-money-total-v { display: flex; align-items: center; min-height: 32px; font-size: 1.1875rem; font-variant-numeric: tabular-nums; color: var(--cs-text); }
.sd-boosts { display: grid; gap: 8px; margin: 8px 0; }
.sd-boosts:empty { display: none; }
.sd-boost { display: grid; grid-template-columns: minmax(0, 1fr) 104px 40px; align-items: center; gap: 8px; }
.sd-boost .sd-money-in { min-height: 50px; padding: 0 12px; border-radius: 12px; background: var(--cs-in); }
.sd-form > .sd-sec-h .sd-month { margin-left: auto; }
.sd-results > .sd-skel span { height: 96px; }
.sd-spent { display: flex; align-items: center; gap: 14px; padding: 14px 14px 14px 16px; }
.sd-form .sd-spent { box-shadow: none; padding: 0 0 14px; }
.sd-spent-ic { flex: none; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: var(--cs-ok-tint); color: var(--cs-ok); }
.sd-spent-t { flex: 1; min-width: 0; display: grid; gap: 1px; }
.sd-spent-t b { font-size: 1.1875rem; font-weight: 700; letter-spacing: -.015em; font-variant-numeric: tabular-nums; }
.sd-spent-t span { font-size: .8125rem; color: var(--cs-text-3); }
.sd-kpis { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 10px; }
.sd-kpis-3 { grid-template-columns: repeat(3, 1fr); }
.sd-kpi { display: grid; gap: 4px; padding: 14px 16px; }
.sd-kpi > span { order: -1; font-size: .8125rem; font-weight: 500; color: var(--cs-text-2); }
.sd-kpi > b { font: 700 1.875rem/1.05 var(--cs-font); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.sd-kpi-none > b { font-size: 1.0625rem; font-weight: 600; letter-spacing: -.01em; color: var(--cs-text-3); padding: 8px 0 6px; }
.sd-kpi sup, .sd-barlab sup { font-size: .55em; color: var(--cs-text-3); margin-left: 2px; }
.sd-kpi-line { margin: 2px 0 6px; font-size: .875rem; }
.sd-sub-h { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 28px 0 10px; }
.sd-sub-h .sd-seg { width: 190px; margin: 0; }
.sd-chart { display: grid; gap: 16px; padding: 16px; }
.sd-barrow { display: grid; gap: 6px; }
.sd-barlab { display: flex; justify-content: space-between; gap: 8px; font-size: .9375rem; }
.sd-barlab span { font-weight: 600; }
.sd-barlab b { font-variant-numeric: tabular-nums; font-weight: 700; }
.sd-bartrack { display: block; height: 8px; border-radius: 4px; background: var(--cs-fill); overflow: hidden; }
.sd-bartrack-sm { height: 5px; }
.sd-barfill { display: block; height: 100%; border-radius: 4px; background: linear-gradient(90deg, #3a8cc0, var(--cs-brand)); }
.sd-barrow small { font-size: .75rem; color: var(--cs-text-3); }
.sd-barrow-none { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; font-size: .9375rem; }
.sd-barrow-none > span { font-weight: 600; color: var(--cs-text-2); }
.sd-free { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 12px 0 0; }
.sd-board { margin: 0; padding: 0; list-style: none; }
.sd-board li { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px; }
.sd-board li + li::before { left: 86px; }
.sd-board li.muted { opacity: .65; }
.sd-rank { width: 18px; flex: none; text-align: center; font: 600 .875rem var(--cs-font); color: var(--cs-text-3); font-variant-numeric: tabular-nums; }
.sd-board-m { flex: 1; min-width: 0; display: grid; gap: 5px; }
.sd-board-m > b { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: .9375rem; font-weight: 600; }
.sd-board-m .sd-dots { font-size: .75rem; }
.sd-board-n { flex: none; display: grid; justify-items: center; min-width: 40px; }
.sd-board-n b { font-size: 1.375rem; line-height: 1.1; font-weight: 700; font-variant-numeric: tabular-nums; }
.sd-board-n small { font-size: .6875rem; color: var(--cs-text-3); }
.sd-foot { margin: 18px 0 0; font-size: .8125rem; color: var(--cs-text-3); }
.sd-foot > summary { display: flex; align-items: flex-start; gap: 6px; list-style: none; cursor: pointer; }
.sd-foot > summary::-webkit-details-marker { display: none; }
.sd-foot > summary .sd-ic { width: 16px; height: 16px; }
.sd-foot > p { margin: 6px 0 0 22px; color: var(--cs-text-2); }

/* ------------------------------------------------------------------ Team, profile */
.sd-rep { position: relative; padding: 12px 10px 12px 14px; }
.sd-rep.off { opacity: .6; }
.sd-rep-h { display: flex; align-items: center; gap: 12px; }
.sd-rep + .sd-rep::before { left: 70px; }
.sd-linkout:empty { display: none; }
.sd-linkout { margin: 10px 0 2px 56px; }
.sd-linkout .sd-note { margin: 0; }
.sd-linkout .sd-row2 { margin-top: 8px; }
.sd-addrow { display: flex; gap: 8px; margin: 12px 0 0; }
.sd-addrow .sd-btn { flex: none; }
.sd-profile { display: flex; align-items: center; gap: 16px; padding: 18px; border-radius: 20px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.sd-profile h2 { margin: 0 0 2px; font: 700 1.375rem/1.2 var(--cs-font); letter-spacing: -.02em; }
.sd-profile + .sd-sec .sd-kpi > b { font-size: 1.625rem; }
.sd-me { border-radius: 50%; display: inline-grid; }
.sd-me .sd-av { width: 34px; height: 34px; font-size: .875rem; }
.sd-me.on .sd-av { box-shadow: 0 0 0 2px var(--cs-page), 0 0 0 4px var(--cs-brand); }
/* working as: a compact switcher in the header */
.sd-as { position: relative; display: inline-flex; align-items: center; gap: 8px; max-width: 220px; min-height: 40px; padding: 3px 8px 3px 3px; border-radius: 999px; background: var(--cs-surface); box-shadow: var(--cs-e1); cursor: pointer; }
.sd-as .sd-av { width: 32px; height: 32px; font-size: .8125rem; }
.sd-as-t { display: grid; min-width: 0; line-height: 1.15; }
.sd-as-l { font-size: .6875rem; font-weight: 500; color: var(--cs-text-3); white-space: nowrap; }
.sd-as-t b { font-size: .8125rem; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sd-as-sel { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; font-size: 16px; }
.sd-as > .sd-ic { width: 16px; height: 16px; color: var(--cs-text-3); pointer-events: none; }

/* ------------------------------------------------------------------ loading: shimmer where the content is about to be */
.sd-skel { display: grid; gap: 12px; }
.sd-skel span, .sd-unit-skel, .sd-tile-skel, .sd-lrow-skel, .lq-skel span {
  border-radius: 16px; background: linear-gradient(100deg, var(--cs-fill) 30%, var(--cs-fill-2) 50%, var(--cs-fill) 70%) 0 0 / 300% 100%;
  animation: sd-shimmer 1.4s ease-in-out infinite;
}
.sd-skel span, .lq-skel span { display: block; height: 120px; }
.lq-skel { display: grid; gap: 12px; }
.sd-unit-skel { height: 360px; box-shadow: none; }
.sd-tile-skel { height: 196px; box-shadow: none; }
.sd-lrow-skel { height: 78px; border-radius: 0; }
@keyframes sd-shimmer { 0% { background-position: 100% 0; } 100% { background-position: 0 0; } }
@media (prefers-reduced-motion: reduce) { .sd-skel span, .sd-unit-skel, .sd-tile-skel, .sd-lrow-skel, .lq-skel span { animation: none; } .sd-sheet, .sd-scrim { transition: none; } }

/* ================================================================== Lot to post (lotpost.js) and the ad studio (adstudio.js) */
.lq { --lq-pad: 16px; }
.lq .lq-ic svg { width: 22px; height: 22px; }
.lq-top { margin-bottom: 0; }
.lq .lq-title { flex: 1; min-width: 0; margin: 0; font: 650 1.0625rem/1.2 var(--cs-font); letter-spacing: -.01em; color: var(--cs-text); text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
.lq-top-root .lq-title { opacity: 0; transition: opacity .2s; }
.lq-top-root.stuck .lq-title { opacity: 1; }
.lq-tools { flex: none; min-width: 44px; display: flex; justify-content: flex-end; align-items: center; gap: 0; }
.lq-back { color: var(--cs-brand-text); }
.lq-menu { color: var(--cs-text); }
.lq-hero { padding-top: 6px; }
.lq-hero .lq-sub { margin: 4px 0 0; }
.lq-sub { color: var(--cs-text-2); }
.lq .lq-h2 { margin: 0; font: 650 1.0625rem/1.25 var(--cs-font); letter-spacing: -.01em; color: var(--cs-text); }
.lq .lq-hint { display: block; margin: 6px 0 0; font-size: .8125rem; line-height: 1.4; color: var(--cs-text-3); }
.lq .lq-lbl { display: block; margin: 0 0 6px; }
.lq-link { border: 0; background: none; padding: 8px 6px; font: 600 .9375rem var(--cs-font); color: var(--cs-brand-text); cursor: pointer; text-decoration: none; border-radius: 8px; }
.lq-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 8px 0; }
.lq-row .sh-in { flex: 1 1 160px; }
.lp-file { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.lq .sh-msg { margin: 10px 0 0; font-size: .875rem; color: var(--cs-text-2); }
/* the site's buttons, inside these screens */
.lq .btn, .sd-sheet-wrap .btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 18px; border: 0; border-radius: 13px; font: 600 .9375rem var(--cs-font); letter-spacing: 0; text-transform: none; box-shadow: none; cursor: pointer; text-decoration: none; }
.lq .btn-crew, .sd-sheet-wrap .btn-crew, .lq a.btn-crew { background: var(--cs-brand); color: #fff; box-shadow: 0 1px 2px rgba(16, 24, 40, .14); }
.lq .btn-crew:disabled, .sd-sheet-wrap .btn-crew:disabled { background: var(--cs-fill-2); color: var(--cs-text-3); box-shadow: none; opacity: 1; }
.lq .btn-ghost, .sd-sheet-wrap .btn-ghost, .lq a.btn-ghost { background: var(--cs-fill); color: var(--cs-text); }
.lq .btn-sm { min-height: 38px; padding: 0 14px; border-radius: 11px; font-size: .875rem; }
.lq .lq-primary { width: 100%; min-height: 52px; font-size: 1rem; border-radius: 14px; }
.lq .lq-primary .lq-ic svg { width: 20px; height: 20px; }

/* the lot: Add, the other ways in, today's posts, the units */
.lq-addrow { display: grid; gap: 10px; margin: 0 0 24px; }
.lq-add {
  display: flex; align-items: center; gap: 14px; min-height: 76px; padding: 14px 18px 14px 14px; border-radius: 20px; cursor: pointer;
  background: linear-gradient(135deg, #2580b3, var(--cs-brand) 55%, #155a80); color: #fff; box-shadow: 0 10px 26px -10px rgba(27, 106, 150, .65), 0 2px 4px rgba(16, 24, 40, .1);
  transition: transform .12s;
}
:root[data-theme="dark"] .lq-add { background: linear-gradient(135deg, #2f8cc2, #21709f 55%, #1b5d85); }
.lq-add:active { transform: scale(.985); }
.lq-addrow-2 .lq-add { min-height: 64px; background: var(--cs-surface); color: var(--cs-text); box-shadow: var(--cs-e2); }
:root[data-theme="dark"] .lq-addrow-2 .lq-add { background: var(--cs-surface); }
.lq-addrow-2 .lq-add-ic { background: var(--cs-brand-tint); color: var(--cs-brand-text); }
.lq-addrow-2 .lq-add-t small { color: var(--cs-text-3); }
.lq-add-ic { flex: none; width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; background: rgba(255, 255, 255, .18); }
.lq-add-ic svg { width: 26px !important; height: 26px !important; }
.lq-add-t { display: grid; gap: 2px; min-width: 0; }
.lq-add-t b { font: 650 1.125rem/1.2 var(--cs-font); letter-spacing: -.015em; }
.lq-add-t small { font-size: .8125rem; color: rgba(255, 255, 255, .82); }
.lq-addalt { display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 8px; }
.lq-alt {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 10px; min-height: 84px; padding: 12px;
  border: 0; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e1); color: var(--cs-text); font: 600 .8125rem/1.25 var(--cs-font); text-align: left; cursor: pointer;
}
.lq-alt .lq-ic { width: 32px; height: 32px; border-radius: 10px; background: var(--cs-brand-tint); color: var(--cs-brand-text); }
.lq-alt .lq-ic svg { width: 19px; height: 19px; }
.lq-alt-sm { flex-direction: row; align-items: center; min-height: 36px; padding: 0 12px 0 6px; border-radius: 10px; background: var(--cs-fill); box-shadow: none; }
.lq-alt-sm .lq-ic { width: 26px; height: 26px; background: none; }
.lq-alt-row { flex-direction: row; align-items: center; min-height: 54px; font-size: .9375rem; }
.lq-alt-row > span:not(.lq-ic) { flex: 1; }
.lq-alt-row > .lq-ic:last-child { background: none; color: var(--cs-text-3); width: 20px; }
.lp-pick { display: grid; gap: 0; margin: 0 0 16px; max-height: 340px; overflow: auto; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.lp-pick-row { position: relative; display: grid; text-align: left; gap: 2px; padding: 12px 14px; min-height: 52px; border: 0; background: none; color: var(--cs-text); font: inherit; cursor: pointer; }
.lp-pick-row + .lp-pick-row { box-shadow: 0 -1px 0 var(--cs-sep); }
.lq-todaybox:empty { display: none; }
.lq-todaybox { margin: 0 0 22px; }
.lq-todaybox > .lq-lbl { font: 700 1.25rem/1.2 var(--cs-font); letter-spacing: -.015em; color: var(--cs-text); margin: 0 0 10px; }
.lq-today { display: flex; gap: 10px; margin: 0 -16px; padding: 2px 16px 10px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; }
.lq-today::-webkit-scrollbar { display: none; }
.lq-todo { position: relative; flex: 0 0 auto; display: grid; gap: 2px; width: 196px; padding: 12px 14px 12px 16px; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); color: var(--cs-text); scroll-snap-align: start; overflow: hidden; }
.lq-todo::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 0 3px 3px 0; background: var(--cs-brand); }
.lq-todo b { font-size: .9375rem; font-weight: 650; letter-spacing: -.01em; }
.lq-todo span { font-size: .8125rem; color: var(--cs-text-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lq-todo small { font-size: .75rem; color: var(--cs-text-3); font-weight: 500; }
.lq-todo.late::before { background: var(--cs-stop); }
.lq-todo.late small { color: var(--cs-stop); }
.lq-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(46%, 210px), 1fr)); gap: 12px; }
.lq-unit { position: relative; display: grid; align-content: start; overflow: hidden; border: 0; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); color: var(--cs-text); text-decoration: none; transition: transform .12s, box-shadow .15s; }
.lq-unit:active { transform: scale(.985); }
.lq-cover { position: relative; aspect-ratio: 4 / 3; display: grid; place-items: center; overflow: hidden; background: var(--cs-fill); color: var(--cs-text-3); }
.lq-cover > img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lq-cover > .sd-art { position: absolute; inset: 0; width: 100%; height: 100%; }
.lq-cover > .lq-ic { position: absolute; inset: 0; }
.lq-cover::after { content: ""; position: absolute; inset: 0 0 auto; height: 42%; background: linear-gradient(rgba(8, 12, 16, .26), transparent); pointer-events: none; }
.lq-unit-t { display: grid; gap: 2px; padding: 10px 12px 12px; min-width: 0; }
.lq-unit-t b { font-size: .9375rem; font-weight: 600; line-height: 1.25; letter-spacing: -.005em; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.lq-unit-t small { color: var(--cs-text-3); font-size: .8125rem; }
/* a unit's price on the lot grid, and the chip while what came from the website waits for a confirm (lotimport.js) */
.lq-price-row { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.lq-price { font: 700 1rem/1.2 var(--cs-font); letter-spacing: -.01em; font-variant-numeric: tabular-nums; color: var(--cs-text); }
.lq-need { display: inline-flex; align-items: center; padding: 2px 7px; border-radius: 6px; background: var(--cs-warn-tint); color: var(--cs-warn); font: 650 .6875rem/1.35 var(--cs-font); white-space: nowrap; }
/* status chips: on a photo they're glass with a colored dot, elsewhere tinted */
.lq-chip { display: inline-flex; align-items: center; gap: 6px; padding: 3px 8px; border-radius: 7px; background: var(--cs-fill); color: var(--cs-text-2); font: 600 .75rem/1.35 var(--cs-font); white-space: nowrap; box-shadow: none; }
.lq-chip-needs { background: var(--cs-warn-tint); color: var(--cs-warn); }
.lq-chip-approve { background: var(--cs-brand-tint); color: var(--cs-brand-text); }
.lq-chip-posted { background: var(--cs-ok-tint); color: var(--cs-ok); }
.lq-chip-sold { background: var(--cs-ink); color: var(--cs-page); }
.lq-unit > .lq-chip { position: absolute; top: 10px; left: 10px; z-index: 1; padding: 4px 9px 4px 8px; border-radius: 999px; background: var(--cs-glass); color: #fff; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.lq-unit > .lq-chip::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #c9d1d9; }
.lq-unit > .lq-chip-needs::before { background: #f3b34a; }
.lq-unit > .lq-chip-approve::before { background: #6bc0f0; }
.lq-unit > .lq-chip-posted::before { background: #5fd38d; }
.lq-unit > .lq-chip-sold { background: rgba(16, 20, 24, .78); }
.lq-unit > .lq-chip-sold::before { background: #fff; }

/* after a confirm: the next step, and the unit it points at */
.lq-nexthint, .lq-nudge {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 56px; margin: 0 0 16px; padding: 10px 12px 10px 12px;
  border: 0; border-radius: 16px; background: var(--cs-brand-tint); color: var(--cs-text) !important; font: inherit; text-align: left; text-decoration: none; cursor: pointer;
}
.lq-nexthint > .lq-ic:first-child, .lq-nudge > .lq-ic:first-child { flex: none; width: 36px; height: 36px; border-radius: 11px; background: var(--cs-brand); color: #fff; }
.lq .lq-nexthint > .lq-ic:first-child svg, .lq .lq-nudge > .lq-ic:first-child svg { width: 20px; height: 20px; }
.lq-nexthint > span:not(.lq-ic) { flex: 1; min-width: 0; display: grid; gap: 1px; }
.lq-nexthint b { font: 650 .9375rem/1.25 var(--cs-font); }
.lq-nexthint small { font-size: .8125rem; color: var(--cs-text-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lq-nexthint > .lq-ic:last-child, .lq-nudge > .lq-ic:last-child { flex: none; color: var(--cs-brand-text); }
.lq-nudge { min-height: 48px; padding: 6px 10px 6px 8px; margin: 0 0 12px; background: var(--cs-warn-tint); }
.lq-nudge > .lq-ic:first-child { width: 32px; height: 32px; border-radius: 10px; background: var(--cs-surface); color: var(--cs-warn); }
.lq-nudge > span:not(.lq-ic) { flex: 1; min-width: 0; font: 600 .875rem/1.3 var(--cs-font); }
.lq-nudge > .lq-ic:last-child { color: var(--cs-warn); }
.lq-nudge:active, .lq-nexthint:active { transform: scale(.99); }
.lq-unit.lq-unit-next { box-shadow: 0 0 0 2.5px var(--cs-brand), var(--cs-e2); }

/* the tabs on a computer (on a phone they're the bar at the bottom) */
.lq-tabs .lq-tab { text-decoration: none; }

/* one unit: its header and the four steps stay on top */
.lq-unit-head { position: sticky; top: 0; z-index: 40; margin: 0 -16px 14px; padding: 0 16px; background: color-mix(in srgb, var(--cs-page) 94%, transparent); -webkit-backdrop-filter: saturate(1.8) blur(20px); backdrop-filter: saturate(1.8) blur(20px); box-shadow: 0 1px 0 var(--cs-sep); }
.lq-unit-head .lq-top { position: static; margin: 0 -16px; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; }
.lq-ttl { flex: 1; min-width: 0; display: grid; justify-items: center; gap: 3px; padding: 6px 0; }
.lq-ttl .lq-title { width: 100%; }
.lq-ttl .lq-chip { padding: 2px 8px; font-size: .6875rem; }
.lq-steps { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); padding: 4px 0 10px; }
.lq-step { position: relative; display: grid; justify-items: center; gap: 5px; padding: 2px 0; background: none; border: 0; font: 500 .75rem var(--cs-font); color: var(--cs-text-3); cursor: pointer; }
.lq-step:not(:first-child)::before { content: ""; position: absolute; top: 14px; right: calc(50% + 18px); width: calc(100% - 36px); height: 2px; border-radius: 1px; background: var(--cs-sep-2); }
.lq-step.done:not(:first-child)::before, .lq-step.on:not(:first-child)::before { background: var(--cs-brand); opacity: .55; }
.lq-step-n { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--cs-surface); box-shadow: inset 0 0 0 2px var(--cs-sep-2); font: 650 .8125rem var(--cs-font); color: var(--cs-text-3); }
.lq-step-n .lq-ic svg { width: 15px; height: 15px; }
.lq-step.done .lq-step-n { background: var(--cs-ok); box-shadow: none; color: #fff; }
.lq-step.done { color: var(--cs-text-2); }
.lq-step.on { color: var(--cs-text); font-weight: 650; }
.lq-step.on .lq-step-n { background: var(--cs-brand); box-shadow: 0 0 0 4px var(--cs-ring); color: #fff; }
.lq-next { padding: 10px; }
.lq-next.lq-inline { position: static; margin: 12px 0 0; padding: 0; background: none; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; border-radius: 0; }
.lq-body { padding-bottom: 8px; }

/* step 1: photos, then the facts */
.lq-photos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; margin: 0 -2px; }
.lq-ph { position: relative; aspect-ratio: 1; padding: 0; border: 0; border-radius: 6px; overflow: hidden; background: var(--cs-fill); cursor: pointer; line-height: 0; }
.lq-photos > :first-child { border-top-left-radius: 14px; }
.lq-photos > :nth-child(3) { border-top-right-radius: 14px; }
.lq-ph canvas { width: 100%; height: 100%; display: block; }
.lq-ph.on { box-shadow: inset 0 0 0 3px var(--cs-brand); }
.lq-ph.on canvas { opacity: .82; }
.lq-ph.off canvas { opacity: .3; }
.lq-ph-add { display: grid; place-items: center; align-content: center; gap: 6px; line-height: 1.2; background: var(--cs-brand-tint); color: var(--cs-brand-text); font: 600 .8125rem var(--cs-font); }
.lq-ph-add .lq-ic { width: 40px; height: 40px; border-radius: 50%; background: var(--cs-surface); box-shadow: var(--cs-e1); }
.lq-ph-add .lq-ic svg { width: 22px; height: 22px; }
.lq-ph-tag, .lq-th-tag { position: absolute; left: 6px; bottom: 6px; line-height: 1.2; font: 600 .6875rem var(--cs-font); padding: 3px 7px; border-radius: 6px; background: rgba(200, 57, 45, .92); color: #fff; }
.lq-th-tag { background: var(--cs-glass); }
.lq-sheet { display: grid; gap: 10px; margin: 18px 0 0; padding: 16px; border-radius: 18px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.lq-sheet > .lq-h2 { font-size: 1.25rem; font-weight: 700; letter-spacing: -.015em; }
.lq-sheet > .lq-hint { margin: -6px 0 4px; }
.lq-fact { position: relative; display: grid; grid-template-columns: 104px minmax(0, 1fr) 30px; gap: 10px; align-items: center; }
.lq .lq-fact .lq-lbl { margin: 0; font: 500 .875rem var(--cs-font); color: var(--cs-text-2); }
.lq-fact .sh-in { min-height: 46px; }
.lq-fact.lq-unconf .sh-in { background: var(--cs-warn-tint); box-shadow: inset 3px 0 0 var(--cs-warn-dot); }
.lq-fact.lq-pass .sh-in { box-shadow: inset 3px 0 0 var(--cs-ok); }
.lq-more { border-radius: 0; box-shadow: 0 -1px 0 var(--cs-sep); padding-top: 2px; }
.lq-more > summary { display: flex; align-items: center; justify-content: space-between; min-height: 48px; cursor: pointer; font: 600 .9375rem var(--cs-font); color: var(--cs-text); list-style: none; }
.lq-more > summary::-webkit-details-marker { display: none; }
.lq-more > summary::after { content: ""; width: 18px; height: 18px; background: var(--cs-chev-down) center / 18px no-repeat; transition: transform .15s; }
.lq-more[open] > summary::after { transform: rotate(180deg); }
.lq-more[open] { display: grid; gap: 10px; padding-bottom: 8px; }
.lq-body > .lq-more { padding: 2px 16px; margin: 10px 0 0; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e1); }
.lq-field { display: grid; gap: 0; margin: 2px 0; }
.lq-editbox { display: grid; gap: 10px; margin: 12px 0; padding: 14px; border-radius: 18px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.lq-edit-head { display: flex; justify-content: space-between; align-items: center; }
.lq-edit-head b { font-size: 1.0625rem; font-weight: 650; }
.lq-x { min-height: 36px; padding: 0 12px; border: 0; border-radius: 10px; background: var(--cs-fill); font: 600 .875rem var(--cs-font); color: var(--cs-brand-text); cursor: pointer; }
.lq-frame { position: relative; border-radius: 14px; overflow: hidden; background: #0e1216; box-shadow: var(--cs-e2); line-height: 0; }
.lq-frame canvas, .lq-art { display: block; width: 100%; height: auto; }
.lp-tick { display: flex; align-items: center; gap: 12px; min-height: 44px; font-size: .9375rem; cursor: pointer; }
.lp-range { display: grid; gap: 4px; font-size: .8125rem; font-weight: 600; color: var(--cs-text-2); }
.lp-range input { width: 100%; min-height: 30px; accent-color: var(--cs-brand); }

/* step 2: the ads in a swipeable row, at their real sizes */
.ad-studio { margin: 0 0 22px; }
.lq-car { display: flex; gap: 14px; margin: 0 -16px; padding: 6px 16px 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding: 0 16px; scrollbar-width: none; align-items: flex-start; }
.lq-car::-webkit-scrollbar { display: none; }
.lq-slide { flex: 0 0 auto; width: min(76vw, 330px); margin: 0; scroll-snap-align: start; }
.lq-slide:has(.lq-frame-1x91x1) { width: min(86vw, 420px); }
.lq-slide:has(.lq-frame-9x16) { width: min(56vw, 240px); }
.lq-slide:not(.on) .lq-frame { opacity: .55; filter: saturate(.7); }
.lq-slide figcaption { display: flex; justify-content: space-between; align-items: center; gap: 6px; padding: 10px 2px 0; }
.lq-slide figcaption b { font-size: .9375rem; font-weight: 650; }
.lq-slide-act { display: flex; gap: 6px; }
.lq-use, .lq-editb { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 12px; border: 0; border-radius: 999px; font: 600 .8125rem var(--cs-font); cursor: pointer; background: var(--cs-fill); color: var(--cs-text); }
.lq-editb { background: transparent; color: var(--cs-brand-text); }
.lq-editb[aria-expanded="true"] { background: var(--cs-brand-tint); }
.lq-use[aria-pressed="true"] { background: var(--cs-brand); color: #fff; }
.lq-use-dot { width: 16px; height: 16px; border-radius: 50%; box-shadow: inset 0 0 0 2px currentColor; }
.lq-use[aria-pressed="true"] .lq-use-dot { box-shadow: none; background: rgba(255, 255, 255, .26) var(--cs-check) center / 11px no-repeat; }
.lq-badge { position: absolute; top: 10px; right: 10px; line-height: 1.2; font: 600 .75rem var(--cs-font); padding: 4px 9px; border-radius: 999px; }
.lq-badge-stop { background: var(--cs-stop); color: #fff; }
.lq-strip { display: flex; gap: 8px; overflow-x: auto; padding: 2px 2px 6px; scrollbar-width: none; }
.lq-th { position: relative; flex: none; padding: 0; border: 0; border-radius: 10px; overflow: hidden; background: var(--cs-fill); cursor: pointer; line-height: 0; transition: box-shadow .12s; }
.lq-th canvas { width: 96px; height: 72px; display: block; }
.lq-th[aria-pressed="true"] { box-shadow: 0 0 0 2px var(--cs-surface), 0 0 0 4px var(--cs-brand); }
.lq-th-off { opacity: .45; cursor: default; }
.lq-th-n { position: absolute; top: 5px; right: 5px; line-height: 20px; width: 20px; text-align: center; border-radius: 50%; background: var(--cs-brand); color: #fff; font: 700 .6875rem/20px var(--cs-font); }
.lq-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.lq-chips .lq-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--cs-fill); color: var(--cs-text); font: 600 .875rem var(--cs-font); cursor: pointer; }
.lq-chips .lq-chip[aria-pressed="true"] { background: var(--cs-brand-tint); color: var(--cs-brand-text); box-shadow: inset 0 0 0 1.5px var(--cs-brand); }
.lq-chips .lq-chip[aria-pressed="true"]::before { content: ""; width: 16px; height: 16px; border-radius: 50%; background: var(--cs-brand) var(--cs-check) center / 11px no-repeat; }
.lq .sh-in.lq-bad { background: var(--cs-stop-tint); box-shadow: inset 3px 0 0 var(--cs-stop); }
.lq .sh-in.lq-warn { background: var(--cs-warn-tint); box-shadow: inset 3px 0 0 var(--cs-warn-dot); }
.lq-note { display: flex; gap: 8px; align-items: baseline; font-size: .8125rem; line-height: 1.4; padding: 8px 10px; margin: 6px 0 0; border-radius: 10px; background: var(--cs-warn-tint); color: var(--cs-text); }
.lq-note::before { content: ""; flex: none; width: 7px; height: 7px; border-radius: 50%; background: var(--cs-warn-dot); transform: translateY(-1px); }
.lq-note-stop { background: var(--cs-stop-tint); }
.lq-note-stop::before { background: var(--cs-stop); }
.lq-note b { font-weight: 650; }
.lq-notes:empty { display: none; }
.lq-notes { display: grid; gap: 6px; margin: 10px 0 0; }
.lq-notes .lq-note { margin: 0; }
.lq-body > .lq-h2 { margin: 6px 0 12px; font-size: 1.25rem; font-weight: 700; letter-spacing: -.015em; }
/* the post, as it will look on a phone */
.lq-mockwrap { margin: 0 0 4px; }
.lq-phone { max-width: 440px; margin: 0 auto; background: #fff; color: #050505; border-radius: 18px; overflow: hidden; box-shadow: var(--cs-e2); font-family: system-ui, -apple-system, "Segoe UI", sans-serif; }
:root[data-theme="dark"] .lq-phone { background: #242526; color: #e4e6eb; }
.lq-post-head { display: flex; gap: 10px; align-items: center; padding: 12px 14px 8px; }
.lq-post-head small { display: block; color: #65676b; font-size: .75rem; }
:root[data-theme="dark"] .lq-post-head small { color: #b0b3b8; }
.lq-post-head b { font-size: .9375rem; }
.lq-ava { flex: none; width: 40px; height: 40px; border-radius: 50%; object-fit: contain; background: #f0f2f5; display: grid; place-items: center; font-weight: 700; padding: 3px; color: #050505; }
.lq-post-text { white-space: pre-wrap; padding: 4px 14px 12px; font-size: .9375rem; line-height: 1.42; }
.lq-phone .lp-ta { border: 0; border-radius: 0; margin: 0; max-width: none; min-height: 220px; background: #fffef3; color: #050505; padding: 12px 14px; font: 16px/1.45 system-ui, -apple-system, sans-serif; }
.lq-post-img { line-height: 0; background: #000; }
.lq-post-img canvas { width: 100%; height: auto; display: block; }
.lq-reelbox { display: grid; place-items: center; padding: 12px 0; background: #111; }
.lq-reelbox canvas { width: 46%; height: auto; border-radius: 10px; }
.lq-phone-card .lq-post-text { padding-top: 12px; }
.lq-mark { border-radius: 4px; padding: 0 1px; color: inherit; }
.lq-mark-stop { background: #ffd8d3; box-shadow: inset 0 -2px 0 #c8392d; }
.lq-mark-check { background: #ffefc2; box-shadow: inset 0 -2px 0 #c58a12; }
:root[data-theme="dark"] .lq-mark-stop { background: rgba(232, 96, 82, .3); }
:root[data-theme="dark"] .lq-mark-check { background: rgba(232, 168, 56, .28); }
.lq-mockwrap .lq-row { justify-content: space-between; margin-top: 12px; }
.lq-mockwrap .lq-row .lq-hint { flex: 1 1 200px; margin: 0; }

/* step 3: approve everything at once */
.lq-review { display: grid; grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 12px; align-items: start; }
.lq-rv { margin: 0; position: relative; }
.lq-rv canvas { width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; display: block; border-radius: 12px; box-shadow: var(--cs-e2); background: #0e1216; }
.lq-rv figcaption { font-size: .75rem; line-height: 1.3; color: var(--cs-text-2); margin-top: 6px; font-weight: 600; }
.lq-rv.ok::after { content: ""; position: absolute; top: 7px; right: 7px; width: 22px; height: 22px; border-radius: 50%; background: var(--cs-ok) var(--cs-check) center / 14px no-repeat; box-shadow: 0 0 0 2px rgba(255, 255, 255, .9); }
.lq-review + .lq-hint { margin: 12px 0 0; }
.lq-fix { display: grid; gap: 8px; margin: 0 0 16px; padding: 14px; border-radius: 18px; background: var(--cs-stop-tint); }
.lq-fix > b { font-size: 1.0625rem; font-weight: 650; color: var(--cs-stop); }
.lq-fixrow { display: grid; gap: 4px; text-align: left; background: var(--cs-surface); border: 0; border-radius: 12px; padding: 10px 12px; font: inherit; cursor: pointer; color: var(--cs-text); box-shadow: var(--cs-e1); }
.lq-fixrow .lq-note { margin: 0; padding: 0; background: none; }
.lq-where { font: 600 .6875rem var(--cs-font); color: var(--cs-text-3); letter-spacing: .02em; }
.lq-ok { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-radius: 16px; background: var(--cs-ok-tint); color: var(--cs-ok); margin: 0 0 16px; font-size: .9375rem; }
.lq-ok::before { content: ""; flex: none; width: 26px; height: 26px; border-radius: 50%; background: var(--cs-ok) var(--cs-check) center / 16px no-repeat; }
.lq-ok b { font-weight: 650; }
.lp-ack { align-items: flex-start; padding: 12px 14px; margin: 8px 0 0; border-radius: 14px; background: var(--cs-surface); box-shadow: var(--cs-e1); font-size: .875rem; line-height: 1.4; }
.lp-ack b { font-weight: 650; }
.lq-body > .lq-field { margin: 16px 0 0; }

/* step 4: each thing to do in its own card */
.lq-card { display: grid; gap: 12px; margin: 0 0 12px; padding: 16px; border-radius: 18px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.lq-card-h { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.lq-card-h span { font-size: .8125rem; color: var(--cs-text-3); text-align: right; }
.lq-card .lq-seg { margin: 0; }
.lq-card .lq-row { margin: 0; }
.lq-copies { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; }
.lq-copy { display: flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--cs-fill); font: 600 .875rem var(--cs-font); color: var(--cs-text); cursor: pointer; text-align: left; }
.lq-copy::before { content: ""; flex: none; width: 18px; height: 18px; background: currentColor; opacity: .55; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='8' width='13' height='13' rx='2.5'/%3E%3Cpath d='M16 8V5.5A2.5 2.5 0 0 0 13.5 3h-8A2.5 2.5 0 0 0 3 5.5v8A2.5 2.5 0 0 0 5.5 16H8'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='8' width='13' height='13' rx='2.5'/%3E%3Cpath d='M16 8V5.5A2.5 2.5 0 0 0 13.5 3h-8A2.5 2.5 0 0 0 3 5.5v8A2.5 2.5 0 0 0 5.5 16H8'/%3E%3C/svg%3E") center / contain no-repeat; }
.lq-copy.done { background: var(--cs-ok-tint); color: var(--cs-ok); }
.lq-video { display: grid; gap: 8px; justify-items: start; }
.lq-vid { width: min(56vw, 240px); aspect-ratio: 9 / 16; border-radius: 14px; background: #000; }
.lq-body > .lq-video:empty { display: none; }

/* settings, in a sheet over the lot */
.sd-sheet-form .lq-sheet { margin: 0; padding: 0; background: none; box-shadow: none; gap: 0; }
.lq-group-h { margin: 18px 4px 8px; font: 600 .8125rem var(--cs-font); color: var(--cs-text-3); }
.lq-sheet > .lq-group-h:first-child { margin-top: 4px; }
.lq-group { display: grid; overflow: hidden; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e1); }
.lq-group > * { position: relative; }
.lq-group > * + *::before { content: ""; position: absolute; top: 0; left: 14px; right: 0; height: 1px; background: var(--cs-sep); }
.lq-grow { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 56px; padding: 6px 14px; cursor: pointer; }
.lq .lq-grow .lq-lbl, .sd-sheet-wrap .lq-grow .lq-lbl { margin: 0; font: 500 .9375rem var(--cs-font); color: var(--cs-text); }
.lq-grow-v { display: flex; align-items: center; gap: 10px; }
.lq-group .lq-field { padding: 12px 14px; margin: 0; gap: 6px; }
.lq-hex { font: 500 .8125rem var(--mono); color: var(--cs-text-3); }
.lp-colors { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.lp-color { -webkit-appearance: none; appearance: none; width: 34px; height: 34px; padding: 0; border: 0; border-radius: 50%; background: none; cursor: pointer; box-shadow: 0 0 0 1px var(--cs-sep-2); }
.lp-color::-webkit-color-swatch-wrapper { padding: 0; }
.lp-color::-webkit-color-swatch { border: 0; border-radius: 50%; }
.lp-color::-moz-color-swatch { border: 0; border-radius: 50%; }
.lp-logo { display: block; max-height: 36px; max-width: 120px; border-radius: 6px; }
.lq-swatch { margin: 0 0 12px; display: flex; align-items: center; justify-content: space-between; gap: 12px; height: 76px; padding: 0 16px; border-radius: 16px; box-shadow: var(--cs-e2); overflow: hidden; }
.lq-swatch img { max-height: 44px; max-width: 46%; border-radius: 6px; background: #fff; padding: 3px; }
.lq-swatch b { color: #fff; font-size: .9375rem; font-weight: 650; }
.lq-swatch span { padding: 9px 16px; border-radius: 999px; font-weight: 700; font-size: .875rem; color: #111; white-space: nowrap; }
.sd-sheet-form .lq-next { margin-top: 20px; position: static; padding: 0; background: none; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }

/* results */
.lp-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 6px; }
.lp-stat { display: grid; align-content: start; gap: 4px; padding: 14px 16px; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.lp-stat span { font-size: .8125rem; font-weight: 500; line-height: 1.3; color: var(--cs-text-2); }
.lp-stat b { font: 700 1.875rem/1.05 var(--cs-font); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.lp-stat small { font-size: .8125rem; color: var(--cs-text-3); }
.lp-stat-none b { font-size: 1.0625rem; font-weight: 600; letter-spacing: -.01em; color: var(--cs-text-3); padding: 7px 0 5px; }
.lq-working { margin: 22px 0 0; }
.lq-working > .lq-h2 { font-size: 1.25rem; font-weight: 700; letter-spacing: -.015em; margin: 0 0 10px; }
.ads-table { width: 100%; border-collapse: separate; border-spacing: 0; margin: 0 0 12px; font-size: .9375rem; border-radius: 16px; overflow: hidden; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.ads-table th, .ads-table td { text-align: left; padding: 12px 14px; border-bottom: 1px solid var(--cs-sep); }
.ads-table tr:last-child td { border-bottom: 0; }
.ads-table th:not(:first-child), .ads-table td:not(:first-child) { text-align: right; font-variant-numeric: tabular-nums; }
.ads-table th { font: 600 .75rem var(--cs-font); letter-spacing: 0; text-transform: none; color: var(--cs-text-3); background: color-mix(in srgb, var(--cs-fill) 50%, transparent); }
.ads-table td:first-child { font-weight: 600; }
.ads-next { margin: 10px 0; }
.lq-note-check { background: var(--cs-warn-tint); }

/* the lot-wide promo */
.lq-promo-b { display: grid; gap: 4px; }
.lq-promo-b > .lq-field { margin: 0 0 10px; }
.lq-promo-b > .lq-lbl { margin: 8px 0 8px; }
.lq-promo-b > .lq-chips { margin: 0 0 14px; }
.lq-promo-b > .lq-seg { margin: 4px 0 4px; }
.lq-promo { max-width: 460px; margin: 10px auto 14px; border-radius: 16px; }
.ads-approve { display: grid; gap: 8px; }
.ads-approve > .lq-row .sh-in { flex: 1 1 140px; }

/* the two-week plan and paid ads, folded inside the Post step */
.ads-plan { list-style: none; padding: 0; margin: 12px 0 0; display: grid; gap: 0; }
.ads-pl { position: relative; display: grid; grid-template-columns: 84px minmax(0, 1fr) auto; align-items: center; gap: 4px 12px; padding: 12px 0; box-shadow: 0 -1px 0 var(--cs-sep); }
.ads-pl-when { display: grid; font-size: .8125rem; }
.ads-pl-when b { font-weight: 600; }
.ads-pl-when span { color: var(--cs-text-3); font-size: .75rem; font-weight: 600; }
.ads-pl-what { display: grid; gap: 2px; min-width: 0; }
.ads-pl-what b { font-size: .9375rem; font-weight: 600; }
.ads-pl.done { opacity: .6; }
.ads-pl.done .ads-pl-when span { color: var(--cs-ok); }
.ads-pl.skip { opacity: .45; }
.ads-pl.due .ads-pl-when span { color: var(--cs-brand-text); }
.ads-pl.late .ads-pl-when span { color: var(--cs-stop); }
.ads-angle { display: grid; gap: 8px; margin: 14px 0 0; padding: 14px; border-radius: 16px; background: var(--cs-surface); box-shadow: var(--cs-e2); }
.ads-angle h3 { margin: 0; font: 650 1.0625rem var(--cs-font); }
.ads-target { padding: 10px 12px; border-radius: 12px; background: var(--cs-fill); font-size: .875rem; }
.ads-target > summary { cursor: pointer; font-weight: 600; }
.ads-target ul { margin: 6px 0 0; padding-left: 18px; }
.ads-vars { display: grid; gap: 12px; }
.lq-meta { overflow: hidden; margin: 8px 0; border-radius: 14px; background: var(--cs-surface); box-shadow: 0 0 0 1px var(--cs-sep-2); }
.lq-meta .lp-ta { border: 0; border-radius: 0; margin: 0; max-width: none; background: transparent; }
.lq-meta-bar { display: grid; grid-template-columns: minmax(0, 1fr) 8.6rem; gap: 8px; align-items: center; padding: 8px; background: var(--cs-fill); }
.lq-meta-bar .sh-in { margin: 2px 0; min-height: 40px; background: var(--cs-surface); }
.lq-meta .lq-note { margin: 4px 8px; }

/* the Loud sale style (adloud.js), the cutout touch-up (cutout.js), the floorplan and the payment line */
.lq-styletag { display: inline-block; margin-left: 6px; padding: 1px 6px; border-radius: 5px; background: #d8141b; color: #fff; font: 800 .625rem/1.5 var(--cs-font); letter-spacing: .03em; text-transform: uppercase; vertical-align: 2px; }
.lq-scenes { display: flex; gap: 8px; overflow-x: auto; padding: 2px 2px 6px; scrollbar-width: none; }
.lq-scene { flex: none; display: grid; gap: 4px; padding: 0 0 6px; border: 0; border-radius: 12px; background: var(--cs-fill); color: var(--cs-text-2); font: 600 .6875rem var(--cs-font); cursor: pointer; overflow: hidden; transition: box-shadow .12s; }
.lq-scene canvas { display: block; width: 96px; height: 72px; }
.lq-scene[aria-pressed="true"] { box-shadow: 0 0 0 2px var(--cs-surface), 0 0 0 4px var(--cs-brand); color: var(--cs-text); }
.lq-ph-plan span { font-size: .75rem; }
.lq-ph-tag-plan { background: rgba(15, 42, 61, .9); }
.lq-frame-plan { background: #fff; }
.lq-pair { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; align-items: end; }
.lq-half .sh-in { min-height: 46px; }
.lq-half.lp-tick { margin: 0 0 4px; }
.lq-pay summary { font-weight: 650; }
.lq-paynote .lq-ok { font-size: .8125rem; line-height: 1.4; }
.lq-paynote .btn { margin-left: 4px; }
.lq-loudbox[hidden] { display: none; }
.cut-back { position: fixed; inset: 0; z-index: 1000; background: rgba(8, 10, 12, .6); display: grid; place-items: center; padding: 12px; -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.cut-sheet { width: min(100%, 720px); max-height: calc(100vh - 24px); overflow: auto; background: var(--cs-surface, var(--surface)); border-radius: 22px; padding: 16px; display: grid; gap: 10px; box-shadow: 0 24px 60px rgba(0, 0, 0, .4); }
.cut-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.cut-head b { font-size: 1.0625rem; font-weight: 650; }
.cut-frame { border-radius: 14px; overflow: hidden; line-height: 0; background: #e8ecef; }
.cut-view { display: block; width: 100%; height: auto; touch-action: none; cursor: crosshair; }
.cut-modes { margin: 0; }

/* fields that sit on the page itself (not in a card) are white, so they read as fields */
.sd-addrow .sd-in, .sd-sold .sd-in, .lq-promo-b .sh-in, .lq-body > .lq-field .sh-in, .ads-approve .sh-in, .lq-body > .lq-row .sh-in { background: var(--cs-surface); box-shadow: var(--cs-e1); }
.lq-promo-b .lq-chips .lq-chip:not([aria-pressed="true"]) { background: var(--cs-surface); box-shadow: var(--cs-e1); }
.ads-approve > .lq-row .btn, .lq-promo-b .lq-row .btn { min-height: 50px; padding: 0 22px; font-size: 1rem; border-radius: 14px; }

/* ------------------------------------------------------------------ a computer: Crewline's layout around it, a sensible width */
@media (min-width: 761px) {
  .sd-desk, .lq { max-width: 960px; }
  .sd-page { max-width: 960px; margin: 0 auto; }
  .sd-desk { position: relative; padding-bottom: 40px; }
  .sd-head { position: absolute; top: 18px; right: 0; margin: 0; padding: 0; min-height: 0; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none !important; z-index: 5; }
  .sd-menu-btn, .sd-head-mini, .lq-menu, .cs-home { display: none; }
  /* the sidebar lists Sales' places on a computer: no second row of tabs */
  .sd-tabs.cs-tabs, .lq-tabs.cs-tabs { display: none; }
  .lq-top-root:has(.cs-home) .lq-tools, .sd-head:has(.cs-home) .sd-head-a { min-width: 0; }
  .sd-hero { padding: 14px 260px 18px 0; }
  .sd-hero-t, .lq .lq-hero-t { font-size: 2.125rem; }
  .sd-tabs, .lq-tabs { position: static; display: flex; gap: 4px; margin: 0 0 24px; padding: 0; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: inset 0 -1px 0 var(--cs-sep); }
  .sd-desk a.sd-tab, .lq a.lq-tab { flex-direction: row; gap: 8px; min-height: 44px; padding: 0 14px; border-radius: 0; font-size: .9375rem; font-weight: 500; color: var(--cs-text-2); }
  .sd-desk a.sd-tab:hover, .lq a.lq-tab:hover { color: var(--cs-text); }
  .sd-tab .sd-ic, .lq-tab .lq-ic, .lq-tab .lq-ic svg { width: 19px; height: 19px; }
  .sd-desk a.sd-tab.on, .lq a.lq-tab.on { color: var(--cs-text); font-weight: 600; box-shadow: inset 0 -2px 0 var(--cs-brand); }
  .sd-units { grid-auto-flow: row; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-columns: auto; margin: 0; padding: 4px 0 8px; overflow: visible; }
  .sd-fab { position: static; height: 40px; padding: 0 16px 0 12px; font-size: .9375rem; box-shadow: 0 1px 2px rgba(16, 24, 40, .14); }
  .sd-backbar, .lq-top:not(.lq-top-root) { position: static; margin: 0 0 12px; padding: 12px 0 0; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; }
  .sd-backbar > .sd-icon-btn:first-child, .lq-top:not(.lq-top-root) > .lq-back { margin-left: -10px; }
  .sd-chat, .sd-desk:has(.sd-spec) .sd-body, .sd-form { max-width: 720px; }
  .sd-sheet-wrap { align-items: center; }
  .sd-sheet { height: auto; max-height: 88vh; border-radius: 22px; }
  /* the phone's app menu (the site's own bars cover it on a computer); every other sheet still shows */
  .sd-appmenu { display: none; }
  .sd-bar, .lq-next { bottom: 16px; }
  .sd-tiles { grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); }
  .lq-top-root { position: absolute; top: 18px; right: 0; margin: 0; padding: 0; min-height: 0; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none !important; }
  .lq { position: relative; }
  .lq-top-root .lq-title { display: none; }
  .lq-hero { padding: 14px 80px 18px 0; }
  .lq-addrow { grid-template-columns: minmax(0, 1.25fr) minmax(0, 2fr); align-items: stretch; }
  .lq-add { min-height: 100%; }
  .lq-unit-head { position: sticky; top: 64px; margin: 0 0 16px; padding: 0; background: var(--bg); -webkit-backdrop-filter: none; backdrop-filter: none; }
  .lq-unit-head .lq-top { margin: 0; padding: 12px 0 0; }
  .lq-ttl { justify-items: start; }
  .lq-ttl .lq-title { text-align: left; font-size: 1.5rem; font-weight: 700; letter-spacing: -.02em; }
  .lq-body, .lq-unit-head { max-width: 760px; }
  .lq-steps { max-width: 520px; }
  .lp-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .lq-photos { grid-template-columns: repeat(5, 1fr); }
  .lq-photos > :nth-child(3) { border-top-right-radius: 6px; }
  .lq-photos > :nth-child(5) { border-top-right-radius: 14px; }
  .lq-car { margin: 0; padding: 6px 0 14px; }
  .sd-hpick { margin: 0; padding: 4px 0 8px; }
  .lq-today { margin: 0; padding: 2px 0 10px; }
  :root:not([data-theme="dark"]) .sd-unit, :root:not([data-theme="dark"]) .lq-unit { box-shadow: 0 1px 2px rgba(16, 24, 40, .05), 0 6px 18px -6px rgba(16, 24, 40, .12); }
}
@media (min-width: 761px) {
  .sd-units .sd-unit-acts { grid-template-columns: 1fr; gap: 6px; }
  .sd-units .sd-big { min-height: 42px; }
  .sd-inbox-h .sd-sec-tools { margin-left: auto; gap: 6px; }
}
/* the inbox beside the open lead, on a wide screen */
.sd-split { display: grid; grid-template-columns: minmax(300px, 360px) minmax(0, 1fr); gap: 20px; align-items: start; }
.sd-split-l { position: sticky; top: 76px; max-height: calc(100vh - 96px); overflow: auto; overscroll-behavior: contain; padding: 2px 4px 12px; margin: -2px -4px 0; scrollbar-width: thin; }
.sd-split-l .sd-sec { margin: 0; }
.sd-split-l .sd-inbox-h .sd-seg { max-width: 170px; }
.sd-split-l .sd-lrow { padding: 11px 12px; gap: 12px; }
.sd-split-l .sd-lthumb, .sd-split-l .sd-lthumb .sd-av-lg { width: 46px; height: 46px; }
.sd-lrow.on { background: var(--cs-brand-tint); }
.sd-lrow.on::after { content: ""; position: absolute; left: 0; top: 10px; bottom: 10px; width: 3px; border-radius: 0 3px 3px 0; background: var(--cs-brand); }
.sd-split-r { min-width: 0; }
.sd-split-r > .sd-empty { min-height: 360px; align-content: center; }
.sd-split-r .sd-backbar { padding-top: 0; }
.sd-split-r .sd-backbar > .sd-icon-btn:first-child { display: none; }
.sd-split-r .sd-chat { max-width: none; }
@media (max-width: 380px) {
  .sd-desk a.sd-tab, .lq a.lq-tab { font-size: .625rem; }
  .sd-seg-status button { font-size: .72rem; }
  .lq-fact { grid-template-columns: 88px minmax(0, 1fr) 28px; }
  .lq-addalt { grid-template-columns: 1fr 1fr; }
}
/* hover only where there's a real pointer: a tap leaves :hover stuck on a phone */
@media (hover: hover) {
  .sd-icon-btn:hover, .lq-back:hover, .lq-tools .lq-tool:hover { background: var(--cs-fill); }
  .sd-btn-primary:hover:not(:disabled) { background: var(--cs-brand-2); }
  .sd-btn-ghost:hover { background: var(--cs-fill-2); }
  .sd-chipbtn:hover { background: var(--cs-fill); }
  .sd-tiny:hover { background: var(--cs-fill); }
  .sd-menu-pop button:hover { background: var(--cs-fill); }
  .sd-row:hover, .sd-lrow:hover { background: color-mix(in srgb, var(--cs-fill) 50%, transparent); }
  .sd-big:hover { background: var(--cs-fill-2); }
  .sd-bub.ghost:hover { background: var(--cs-fill); }
  .lq-link:hover { background: var(--cs-fill); }
  .lq .btn-crew:hover, .sd-sheet-wrap .btn-crew:hover { background: var(--cs-brand-2); color: #fff; }
  .lq .btn-ghost:hover, .sd-sheet-wrap .btn-ghost:hover { background: var(--cs-fill-2); color: var(--cs-text); }
  .lq-alt:hover { box-shadow: var(--cs-e2); }
  .lp-pick-row:hover { background: var(--cs-fill); }
  .lq-copy:hover { background: var(--cs-fill-2); }
}

/* a salesperson's Today: sold units they posted, to take down first */
.sd-takedown { display: grid; gap: 10px; margin: 0 0 16px; padding: 14px; border-radius: 16px; background: var(--cs-stop-tint); }
.sd-takedown[hidden] { display: none; }
.sd-takedown-h { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--cs-stop); font: 600 .9375rem/1.3 var(--cs-font); }
.sd-takedown-h .sd-ic { width: 18px; height: 18px; }
.sd-takedown-row { display: flex; align-items: center; gap: 12px; justify-content: space-between; padding: 10px 12px; border-radius: 12px; background: var(--cs-surface); }
.sd-takedown-row > span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sd-takedown-row small { color: var(--cs-text-2); font-size: .8125rem; line-height: 1.35; }
