/* Teen Recruit's plain-and-personal design system. Loaded after legacy styles. */
:root {
  --ink: #17221f;
  --ink-soft: #33423b;
  --muted: #5d6965;
  --faint: #7c8882;
  --line: #dce6e1;
  --line-strong: #baccc2;
  --paper: #fff;
  --surface: #fff;
  --surface-soft: #f6f8f6;
  --blue: #064e3b;
  --blue-dark: #03392b;
  --blue-soft: #e9f3ed;
  --mint: #f8e7c9;
  --mint-dark: #064e3b;
  --success: #147f5b;
  --shadow-sm: 0 2px 10px #17221f0a;
  --shadow-md: 0 8px 28px #17221f1a;
  --brand: #064e3b;
  --primary: #064e3b;
}
html { scroll-behavior: smooth; }
body { font-family: "DM Sans", Arial, sans-serif; background: var(--paper); }
button, input, select, textarea { font-family: inherit; }
h1, h2, h3, h4, .brand-lockup, .button { font-family: "Manrope", Arial, sans-serif; letter-spacing: 0; }
:focus-visible { outline: 3px solid #0a88637a; outline-offset: 3px; }
.button { border-radius: 7px; box-shadow: none; }
.button-primary { background: #064e3b; color: #fff; box-shadow: none; }
.button-primary:hover, .button-primary:focus-visible { background: #03392b; }
.button-secondary, .icon-button, .control-button, .control-select { border-color: var(--line-strong); background: var(--surface); color: var(--ink); }
.link-button, .text-button { color: var(--blue); }
.section-label, .hero-kicker { color: var(--blue); }
.brand-lockup { color: var(--ink); }
.brand-mark { border-radius: 0; background: transparent; }
.brand-mark img { width: 34px; height: 34px; filter: none; }
.market-header { width: 100%; min-height: 70px; padding-inline: max(20px, calc((100% - var(--max)) / 2)); margin: 0; border-bottom: 1px solid var(--line); background: var(--surface); }
.desktop-nav { justify-content: flex-start; gap: 14px; }
.desktop-nav a { color: var(--ink-soft); font-weight: 600; }
.desktop-nav a.is-active::after { background: var(--blue); }
.language-nav-link { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 40px; padding: 6px 9px; border: 1px solid var(--line); border-radius: 6px; color: var(--ink); font-size: 12px; font-weight: 800; white-space: nowrap; }
.language-nav-link svg { width: 16px; height: 16px; }
.language-nav-link:hover { background: var(--surface-soft); }
.site-theme-toggle { display: inline-grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); color: var(--ink); cursor: pointer; }
.site-theme-toggle svg { width: 18px; height: 18px; }
.site-theme-toggle:hover { background: var(--surface-soft); }
.site-theme-toggle:focus-visible { outline: 3px solid #0a88637a; outline-offset: 2px; }
.language-page { min-height: 100vh; background: var(--paper); }
.language-main { width: min(620px, calc(100% - 40px)); margin: clamp(58px, 10vh, 110px) auto; }
.language-main h1 { margin: 0; font-size: 2.6rem; line-height: 1.15; }
.language-main > p { margin: 14px 0 30px; color: var(--muted); line-height: 1.65; }
.language-choice-list { display: grid; gap: 10px; }
.language-search { width: 100%; min-height: 48px; margin: 0 0 16px; padding: 10px 14px; border: 1px solid var(--line-strong); border-radius: 6px; background: var(--surface); color: var(--ink); }
.language-choice-list { grid-template-columns: repeat(4, minmax(0, 1fr)); max-height: 276px; overflow-y: auto; padding: 2px 5px 2px 2px; align-content: start; }
.language-choice-list button { width: 100%; min-height: 82px; padding: 17px 21px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface); color: var(--ink); text-align: left; cursor: pointer; }
.language-choice-list button:hover, .language-choice-list button:focus-visible { border-color: var(--blue); }
.language-choice-list button[aria-pressed="true"] { border-color: var(--blue); box-shadow: inset 4px 0 0 var(--blue); }
.language-choice-list strong, .language-choice-list small { display: block; }
.language-choice-list strong { font: 800 18px "Manrope", Arial, sans-serif; }
.language-choice-list small { margin-top: 3px; color: var(--muted); font-size: 13px; }
.language-choice-current { visibility: hidden; color: var(--blue); font-size: 13px; font-weight: 700; }
button[aria-pressed="true"] .language-choice-current { visibility: visible; }
.language-choice-list button { min-width: 0; min-height: 58px; padding: 9px 11px; }
.language-choice-list button[aria-disabled="true"] { cursor: not-allowed; opacity: .58; }
.language-choice-list button[aria-disabled="true"]:hover { border-color: var(--line); }
.language-choice-list button[hidden] { display: none; }
.language-choice-list strong { overflow-wrap: anywhere; font-size: 13px; }
.language-choice-list small, .language-choice-current { font-size: 11px; }
.market-footer { border-top: 1px solid var(--line); background: #fff; color: var(--ink); }
.market-footer .brand-lockup-light { color: var(--ink); }
.market-footer .brand-lockup-light .brand-mark { background: #f8e7c9; border: 1px solid #e7d7b9; border-radius: 7px; }
.market-footer .brand-lockup-light .brand-mark img { filter: none; width: 28px; height: 28px; }
.market-footer .footer-brand p, .market-footer .footer-columns a, .market-footer .footer-bottom { color: var(--muted); }
.market-footer .footer-columns strong { color: var(--ink); }
.market-footer .footer-columns a:hover { color: var(--blue); }
.market-footer .footer-bottom { border-color: var(--line); }

/* Search-led homepage. Existing search/listing IDs and event handlers are unchanged. */
.marketplace-page .market-hero { min-height: 565px; display: block; overflow: visible; border-bottom: 1px solid var(--line); background: var(--surface); }
.marketplace-page .market-hero-media, .marketplace-page .market-hero-shade { display: none; }
.marketplace-page .market-hero-content { min-height: 565px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0; padding: 35px 0 52px; color: var(--ink); text-align: center; }
.marketplace-page .hero-kicker { display: none; }
.marketplace-page .hero-brand-title { order: 2; display: inline-flex; align-items: center; gap: 14px; margin: 48px 0 0; font: 800 3.95rem/1.1 "Manrope", Arial, sans-serif; color: var(--ink); }
.marketplace-page .hero-brand-title img { width: 1.12em; height: 1.12em; object-fit: contain; }
.marketplace-page .market-hero h1 { order: 3; max-width: 880px; margin: 9px 0 0; color: var(--blue); font-size: 2.65rem; line-height: 1.13; }
.marketplace-page .hero-copy { order: 4; max-width: 660px; margin: 12px 0 0; color: var(--muted); font-size: 1rem; line-height: 1.65; }
.marketplace-page .market-search { order: 1; width: min(930px, 100%); }
.marketplace-page .header-actions > a.text-button { min-height: 40px; padding: 8px 13px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: #17221f; }
.marketplace-page .header-actions > a.text-button:hover { border-color: var(--line-strong); background: #f6f8f6; }
.marketplace-page .search-mode { gap: 22px; padding: 0; margin-bottom: 13px; border-radius: 0; background: transparent; backdrop-filter: none; }
.marketplace-page .search-mode button { min-height: 38px; position: relative; padding: 6px 2px 8px; border-radius: 0; background: transparent; color: var(--muted); }
.marketplace-page .search-mode button.is-active { border-bottom: 2px solid var(--blue); color: var(--ink); background: transparent; }
.marketplace-page .search-mode button.is-active::after { display: none; }
.marketplace-page .search-fields { grid-template-columns: minmax(260px, 1fr) minmax(190px, .43fr) auto; min-height: 70px; padding: 6px; border: 1px solid #639684; border-radius: 8px; box-shadow: 0 6px 18px #064e3b1c; }
.marketplace-page .search-fields:focus-within { border-color: var(--blue); box-shadow: 0 0 0 3px #f8e7c999, 0 8px 22px #064e3b1c; }
.marketplace-page .search-fields input { font-weight: 500; }
.marketplace-page .search-fields input::placeholder { color: #687078; }
.marketplace-page .search-privacy { order: 5; justify-content: center; margin-top: 20px; color: var(--muted); }
.marketplace-page .search-privacy svg { color: var(--blue); }
.marketplace-page .category-section, .marketplace-page .listing-section { padding-block: 70px; }
.marketplace-page .listing-section { border-top: 1px solid var(--line); }
.marketplace-page .category-tile { min-height: 108px; border-color: var(--line); box-shadow: none; }
.marketplace-page .category-tile .category-icon, html[data-theme="dark"] .marketplace-page .category-tile .category-icon { border-radius: 6px; background: #f8e7c9; color: #064e3b; }
.marketplace-page .category-tile.is-active .category-icon, html[data-theme="dark"] .marketplace-page .category-tile.is-active .category-icon { background: #064e3b; color: #fff; }
.marketplace-page .category-tile:hover, .marketplace-page .category-tile.is-active { border-color: #5a9b81; box-shadow: inset 0 -3px 0 #064e3b; }
.marketplace-page .provider-card { border-color: var(--line); box-shadow: none; }
.marketplace-page .provider-card:hover { border-color: #6d9b86; box-shadow: var(--shadow-sm); }
.marketplace-page .provider-badge.is-sponsored, html[data-theme="dark"] .marketplace-page .provider-badge.is-sponsored { background: #173e31; color: #fff; }
.marketplace-page .listing-footer { justify-content: flex-end; }
.marketplace-page .launch-cta { border-top: 1px solid var(--line); background: #fbf5e9; color: var(--ink); }
.search-alert-status { margin: 14px 0 18px; color: #08634b; font-size: 14px; font-weight: 700; }
.search-alert-status.is-error { color: #a72b27; }
html[data-theme="dark"] .search-alert-status { color: #8bc9a4; }
html[data-theme="dark"] .search-alert-status.is-error { color: #ff9e9a; }

/* The interactive illustration replaces the old confidence and step sections. */
.marketplace-page .journey-story { margin-top: 48px; padding-top: 100px; background: #fff; }
.marketplace-page .request-film__scene { max-width: 1000px; }
.marketplace-page .film-example-note { align-self: center; }

/* Account, dashboard, information, and public business surfaces. */
.auth-page, .auth-shell, .auth-form-side { background: #fff; }
.auth-story { background: #064e3b; }
.auth-story .brand-lockup { color: #fff; }
.auth-story .brand-mark { background: transparent; }
.auth-story .brand-lockup-light .brand-mark { background: transparent; }
.auth-story .brand-mark img { filter: invert(1); }
.auth-story-copy h1 { font-size: 3.55rem; line-height: 1.1; }
.auth-story-copy .section-label { color: #f8e7c9; }
.auth-story-proof svg { color: #f8e7c9; }
.auth-form-side { border-left: 1px solid var(--line); }
.auth-language-link { position: absolute; top: 28px; right: calc(clamp(24px, 7vw, 110px) + 48px); }
.auth-theme-toggle { position: absolute; top: 28px; right: clamp(24px, 7vw, 110px); }
.auth-form, .auth-success { max-width: 520px; }
.account-type-option:has(input:checked) { border-color: var(--blue); background: var(--blue-soft); }
.dashboard-page, .dashboard-main, .dashboard-content { background: #fff; }
.dashboard-sidebar { background: #fff; }
.dashboard-topbar { background: #ffffffed; }
.dashboard-nav button.is-active { color: #064e3b; background: #e9f3ed; }
.workspace-label, .command-search kbd { background: #f3f7f4; }
.nav-count { background: #064e3b; }
.avatar { background: #064e3b; }
.workspace-panel, .metric, .listing-manager-card, .guide-card, .settings-card, .admin-queue-card, .calendar-shell, .message-shell, .request-sheet, .dashboard-dialog-panel { border-color: var(--line); background: var(--surface); box-shadow: none; }
body.dashboard-page .dashboard-content { width: min(1320px, 100%); padding: clamp(20px, 3vw, 38px); }
body.dashboard-page .dashboard-topbar { min-height: 70px; padding-inline: clamp(20px, 3vw, 38px); }
body.dashboard-page .dashboard-sidebar { padding: 18px 14px 14px; }
body.dashboard-page .sidebar-brand { padding-bottom: 24px; }
body.dashboard-page .workspace-label { margin-bottom: 20px; padding: 2px 10px 15px; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; }
body.dashboard-page .workspace-label strong { font-size: .85rem; line-height: 1.4; }
body.dashboard-page .workspace-label span, body.dashboard-page .sidebar-profile small { font-size: .72rem; }
body.dashboard-page .dashboard-nav-group > span { color: var(--muted); font-size: .68rem; letter-spacing: 0; }
body.dashboard-page .dashboard-nav button { font-size: .86rem; font-weight: 600; }
body.dashboard-page .dashboard-nav button.is-active { box-shadow: inset 3px 0 0 var(--blue); font-weight: 800; }
body.dashboard-page .dashboard-welcome { align-items: flex-end; margin-bottom: 22px; }
body.dashboard-page .dashboard-welcome h2 { margin: 0 0 7px; font-size: clamp(1.65rem, 2.2vw, 2rem); line-height: 1.18; }
body.dashboard-page .dashboard-welcome p { line-height: 1.5; }
body.dashboard-page .dashboard-layout { align-items: start; }
body.dashboard-page .dashboard-stack { align-content: start; }
body.dashboard-page .metric-grid { gap: 12px; margin-bottom: 20px; }
body.dashboard-page .metric { padding: 17px; }
body.dashboard-page .metric-icon, body.dashboard-page .card-icon { color: #064e3b; background: #e9f3ed; }
body.dashboard-page .metric:nth-child(4n + 2) .metric-icon { color: #6e4b10; background: #fbefd9; }
body.dashboard-page .metric:nth-child(4n + 3) .metric-icon { color: #4b5a53; background: #eef1ef; }
body.dashboard-page .workspace-panel-head { padding: 17px 18px; }
body.dashboard-page .workspace-panel-head p { margin-top: 4px; font-size: .77rem; line-height: 1.45; }
body.dashboard-page .request-list > .quiet, body.dashboard-page .schedule-list > .quiet, body.dashboard-page .marketplace-alert-list > .quiet { padding: 18px; margin: 0; }
body.dashboard-page .next-action-panel { border-color: #064e3b; color: #fff; background: #064e3b; }
body.dashboard-page .next-action-panel .workspace-panel-head h3 { color: #fff; }
body.dashboard-page .next-action-panel > p { color: #e1f0e8; line-height: 1.5; }
body.dashboard-page .next-action-panel .button { border: 1px solid #f8e7c9; color: #064e3b; background: #f8e7c9; }
body.dashboard-page .next-action-panel .button:hover { background: #fff2db; }
body.dashboard-page .settings-card, body.dashboard-page .listing-manager-card { display: flex; flex-direction: column; }
body.dashboard-page .settings-card .card-actions, body.dashboard-page .listing-manager-card .card-actions { margin-top: auto; }
body.dashboard-page .settings-card p { overflow-wrap: anywhere; }
body.dashboard-page .dashboard-empty-start { max-width: 680px; padding: 28px 0; border-top: 1px solid var(--line); }
body.dashboard-page .dashboard-empty-start h3 { margin: 0 0 6px; font-size: 1.12rem; }
body.dashboard-page .dashboard-empty-start p { margin: 0; color: var(--muted); line-height: 1.6; }
.info-page { background: #fff; }
.info-hero { padding-block: 72px; border-bottom: 1px solid var(--line); background: #fbf5e9; }
.info-hero h1 { font-size: 3.8rem; }
.info-content { padding-top: 55px; }
.info-feature, .info-step, .info-callout, .support-form { border-color: var(--line); }
.info-callout { background: #064e3b; }
.imported-info .legal-page, .imported-info .parent-guide-page { color: var(--ink); }
.public-business-page { background: #fff; color: var(--ink); }
.public-business-header, .public-business-main > section, .public-business-aside, .public-business-footer { border-color: var(--line); background: #fff; }
.public-business-avatar { background: #064e3b; }
.public-business-intro > p:not(.section-label), .public-business-aside p, .public-portfolio-grid p, .public-rental-list p { color: var(--muted); }
.public-business-header nav > a:not(.button), .business-facts { color: var(--muted); }
.business-facts a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.business-facts a:hover { color: var(--blue); }
.service-pill-list span { color: #064e3b; border-color: #d2e6d9; background: #edf5ef; }
.business-response { border-color: #064e3b; background: #f3f8f4; }
.save-button:hover, .save-button:focus-visible, .save-button.is-saved { color: #064e3b; border-color: #8ab8a2; background: #eaf4ec; }
.quality-tax-note { border-left-color: #064e3b; }

html[data-theme="dark"] {
  --ink: #f1f3f2; --ink-soft: #dce2df; --muted: #adb5b2; --faint: #8b9891;
  --line: #353d3a; --line-strong: #535d58; --paper: #151719; --surface: #222528;
  --surface-soft: #2a2e2e; --blue: #82d3a4; --blue-dark: #a6e2bb;
  --blue-soft: #304239; --mint: #f8e7c9; --mint-dark: #94d9ad;
  --success: #88d9a6; --brand: #82d3a4; --primary: #82d3a4;
}
html[data-theme="dark"] .market-header, html[data-theme="dark"] .dashboard-sidebar, html[data-theme="dark"] .auth-form-side, html[data-theme="dark"] .market-footer { background: #1d2022; }
html[data-theme="dark"] .brand-mark { background: transparent; }
html[data-theme="dark"] .auth-story .brand-lockup-light .brand-mark { background: transparent; }
html[data-theme="dark"] .brand-mark img, html[data-theme="dark"] .hero-brand-title img { filter: invert(1); }
html[data-theme="dark"] .market-footer .brand-lockup-light .brand-mark { background: #f8e7c9; }
html[data-theme="dark"] .market-footer .brand-lockup-light .brand-mark img { filter: none; }
html[data-theme="dark"] .button-primary { background: #2d7857; color: #fff; }
html[data-theme="dark"] .button-primary:hover { background: #399567; }
html[data-theme="dark"] .language-nav-link { color: var(--ink); }
html[data-theme="dark"] .marketplace-page .market-hero, html[data-theme="dark"] .marketplace-page .journey-story { background: #151719; border-color: var(--line); }
html[data-theme="dark"] .journey-story, html[data-theme="dark"] .journey-story__heading h2 { color: var(--ink); }
html[data-theme="dark"] .marketplace-page .market-hero h1 { color: var(--ink); }
html[data-theme="dark"] .marketplace-page .search-mode button.is-active { color: var(--ink); }
html[data-theme="dark"] .marketplace-page .header-actions > a.text-button { border-color: #606a66; background: #f6f8f6; color: #17221f; }
html[data-theme="dark"] .marketplace-page .search-mode button.is-active { background: transparent; }
html[data-theme="dark"] .marketplace-page .search-fields { border-color: #697174; background: var(--surface); box-shadow: none; }
html[data-theme="dark"] .marketplace-page .search-fields input { color: var(--ink); }
html[data-theme="dark"] .marketplace-page .search-fields input::placeholder { color: #b4babc; }
html[data-theme="dark"] .marketplace-page .search-privacy { color: var(--muted); }
html[data-theme="dark"] .marketplace-page .launch-cta { background: #272c2a; color: var(--ink); }
html[data-theme="dark"] .journey-story__heading > p:last-child, html[data-theme="dark"] .film-example-note, html[data-theme="dark"] .film-chapters li, html[data-theme="dark"] .film-agreed, html[data-theme="dark"] .film-profile p { color: var(--muted); }
html[data-theme="dark"] .request-film { --film-green: #197554; }
html[data-theme="dark"] .request-film__scene { color: var(--ink); }
html[data-theme="dark"] .film-person { clip-path: none; overflow: visible; }
html[data-theme="dark"] .film-person__light { display: none; }
html[data-theme="dark"] .film-person__dark { display: block; position: absolute; width: 100%; height: auto; top: 0; left: 0; }
html[data-theme="dark"] .film-search, html[data-theme="dark"] .film-profile, html[data-theme="dark"] .film-calendar { border-color: #50585a; background: #292e30; box-shadow: 0 8px 24px #080a0b30; }
html[data-theme="dark"] .film-profile h3, html[data-theme="dark"] .film-calendar strong { color: var(--ink); }
html[data-theme="dark"] .film-check { background: #39443f; }
html[data-theme="dark"] .request-film__footer { border-color: var(--line); }
html[data-theme="dark"] .film-chapters li.is-active { color: #8ed5aa; }
html[data-theme="dark"] .film-chapters li.is-active::before { background: #8ed5aa; }
html[data-theme="dark"] .dashboard-page, html[data-theme="dark"] .dashboard-main, html[data-theme="dark"] .dashboard-content { background: #151719; }
html[data-theme="dark"] .dashboard-topbar { background: #1d2022ef; }
html[data-theme="dark"] .dashboard-nav button.is-active { color: #a6e2bb; background: #304239; }
html[data-theme="dark"] body.dashboard-page.is-dark {
  --ink: #f1f3f2; --ink-soft: #dce2df; --muted: #adb5b2; --faint: #8b9891;
  --line: #353d3a; --line-strong: #535d58; --paper: #151719; --surface: #222528;
  --surface-soft: #2a2e2e; --blue: #82d3a4; --blue-dark: #a6e2bb;
  --blue-soft: #304239; --mint: #f8e7c9; --mint-dark: #94d9ad;
  color: var(--ink); background: #151719;
}
html[data-theme="dark"] body.dashboard-page .dashboard-main, html[data-theme="dark"] body.dashboard-page .dashboard-content { background: #151719; }
html[data-theme="dark"] body.dashboard-page .dashboard-sidebar, html[data-theme="dark"] body.dashboard-page .dashboard-topbar { background: #1d2022; }
html[data-theme="dark"] body.dashboard-page .workspace-label { border-color: var(--line); background: transparent; }
html[data-theme="dark"] body.dashboard-page .workspace-panel, html[data-theme="dark"] body.dashboard-page .metric, html[data-theme="dark"] body.dashboard-page .listing-manager-card, html[data-theme="dark"] body.dashboard-page .guide-card, html[data-theme="dark"] body.dashboard-page .settings-card, html[data-theme="dark"] body.dashboard-page .admin-queue-card, html[data-theme="dark"] body.dashboard-page .calendar-shell, html[data-theme="dark"] body.dashboard-page .message-shell, html[data-theme="dark"] body.dashboard-page .request-sheet, html[data-theme="dark"] body.dashboard-page .dashboard-dialog-panel { border-color: var(--line); color: var(--ink); background: var(--surface); }
html[data-theme="dark"] body.dashboard-page .next-action-panel { border-color: #2d7857; color: #fff; background: #20543e; }
html[data-theme="dark"] body.dashboard-page .next-action-panel .workspace-panel-head h3 { color: #fff; }
html[data-theme="dark"] body.dashboard-page .next-action-panel > p { color: #e0f1e8; }
html[data-theme="dark"] body.dashboard-page .next-action-panel .button { border-color: #f8e7c9; color: #064e3b; background: #f8e7c9; }
html[data-theme="dark"] body.dashboard-page .metric-icon, html[data-theme="dark"] body.dashboard-page .card-icon { color: #a6e2bb; background: #304239; }
html[data-theme="dark"] body.dashboard-page .metric:nth-child(4n + 2) .metric-icon { color: #f8e7c9; background: #403c32; }
html[data-theme="dark"] body.dashboard-page .metric:nth-child(4n + 3) .metric-icon { color: #ced6d2; background: #343a38; }
html[data-theme="dark"] body.dashboard-page .avatar { color: #fff; background: #286a4f; }
html[data-theme="dark"] body.dashboard-page .sidebar-profile { border-color: var(--line); color: var(--ink); background: #222528; }
html[data-theme="dark"] body.dashboard-page .dashboard-nav button.is-active { color: #a6e2bb; background: #304239; }
html[data-theme="dark"] body.dashboard-page .data-table th, html[data-theme="dark"] body.dashboard-page .calendar-weekday { background: #292e2e; }
html[data-theme="dark"] body.dashboard-page .dashboard-topbar .icon-button, html[data-theme="dark"] body.dashboard-page .dashboard-topbar .command-search, html[data-theme="dark"] body.dashboard-page .dashboard-topbar .site-theme-toggle, html[data-theme="dark"] body.dashboard-page .dashboard-topbar .language-nav-link { border-color: var(--line); color: var(--ink); background: #252a29; }
html[data-theme="dark"] body.dashboard-page .dashboard-topbar .icon-button:hover, html[data-theme="dark"] body.dashboard-page .dashboard-topbar .command-search:hover { background: #303735; }
html[data-theme="dark"] .auth-story { background: #064e3b; }
html[data-theme="dark"] .info-hero { background: #252a29; }
html[data-theme="dark"] .info-callout { background: #183d30; }
html[data-theme="dark"] .public-business-page { background: #151719; color: var(--ink); }
html[data-theme="dark"] .public-business-header, html[data-theme="dark"] .public-business-main > section, html[data-theme="dark"] .public-business-aside, html[data-theme="dark"] .public-business-footer { border-color: var(--line); background: var(--surface); }
html[data-theme="dark"] .public-business-page .brand-link img { filter: invert(1); }
html[data-theme="dark"] .public-portfolio-grid article, html[data-theme="dark"] .public-review { border-color: var(--line); background: var(--surface-soft); }
html[data-theme="dark"] .business-response, html[data-theme="dark"] .public-empty-state { background: var(--surface-soft); }
html[data-theme="dark"] .service-pill-list span { color: #b6e5c6; border-color: #4e715c; background: #294238; }
html[data-theme="dark"] .save-button:hover, html[data-theme="dark"] .save-button:focus-visible, html[data-theme="dark"] .save-button.is-saved { color: #a6e2bb; border-color: #558a68; background: #294238; }
html[data-theme="dark"] .quality-review-card, html[data-theme="dark"] .quality-rating-field span { background: var(--surface); border-color: var(--line); }
html[data-theme="dark"] .quality-business-response, html[data-theme="dark"] .quality-record-summary > div, html[data-theme="dark"] .quality-tax-note { background: var(--surface-soft); border-color: var(--line); }
html[data-theme="dark"] .quality-tax-note { border-left-color: #82d3a4; }

@media (max-width: 820px) {
  body.dashboard-page .dashboard-content { padding: 20px; }
  body.dashboard-page .dashboard-topbar { padding-inline: 20px; }
  .market-header { padding-inline: 20px; }
  .language-nav-link { min-width: 40px; padding: 6px; }
  .marketplace-page .market-hero, .marketplace-page .market-hero-content { min-height: 0; }
  .marketplace-page .market-hero-content { padding-block: 34px 58px; }
  .marketplace-page .hero-brand-title { margin-top: 45px; font-size: 3.15rem; }
  .marketplace-page .market-hero h1 { font-size: 2.15rem; }
  .auth-story-copy h1 { font-size: 2.6rem; }
  .info-hero h1 { font-size: 2.6rem; }
  .language-main h1 { font-size: 2.15rem; }
  .language-choice-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .marketplace-page .search-fields { grid-template-columns: minmax(0, 1fr); }
  .marketplace-page .search-location-field { border-left: 0; border-top: 1px solid var(--line); }
  .marketplace-page .search-privacy { text-align: center; }
  .marketplace-page .category-section, .marketplace-page .listing-section { padding-block: 50px; }
}
@media (max-width: 540px) {
  .public-business-header nav > a.language-nav-link { display: inline-flex; }
}
@media (max-width: 480px) {
  body.dashboard-page .dashboard-content { padding: 20px 16px 32px; }
  body.dashboard-page .dashboard-topbar { padding-inline: 14px; }
  body.dashboard-page .dashboard-welcome { align-items: stretch; }
  body.dashboard-page .dashboard-welcome h2 { font-size: 1.55rem; }
  .language-choice-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .marketplace-page .journey-story { margin-top: 28px; padding-top: 70px; }
  .market-header { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding-inline: 14px; }
  .info-header .header-actions > .button, .info-header .header-actions > .text-button { display: none; }
  .header-actions { gap: 4px; }
  .brand-lockup { min-width: 0; }
  .brand-lockup > span:last-child { white-space: nowrap; }
  .public-business-header { padding-inline: 14px; }
  .public-business-header nav { gap: 6px; }
  .public-business-header nav > a.language-nav-link { display: inline-flex; min-width: 40px; }
  .public-business-header nav > a.language-nav-link span { display: none; }
  .marketplace-page .hero-brand-title { gap: 8px; font-size: 2.55rem; }
  .marketplace-page .market-hero h1 { font-size: 1.85rem; }
  .marketplace-page .search-fields { min-height: 0; }
  .marketplace-page .search-fields label { min-height: 54px; padding-inline: 12px; }
  .marketplace-page .search-fields input { height: 48px; }
  .marketplace-page .search-submit { min-height: 50px; }
  .language-nav-link span { display: none; }
}

body.dashboard-page { --blue: #064e3b; --blue-dark: #064e3b; --blue-soft: #edf5ef; --primary: #064e3b; }
html[data-theme="dark"] body.dashboard-page { --blue: #9dd8b2; --blue-dark: #b7e7c6; --blue-soft: #304239; --primary: #9dd8b2; }
body.dashboard-page .calendar-day.is-today > span { color: #064e3b; background: #f8e7c9; }
body.dashboard-page .calendar-event { border: 1px solid var(--line); border-left: 3px solid #3b8163; color: var(--ink); background: var(--surface-soft); font-weight: 700; }
body.dashboard-page .calendar-event:hover, body.dashboard-page .calendar-event:focus-visible { border-color: #83b69b; background: #edf5ef; }
body.dashboard-page .date-tile { color: #064e3b; background: #f6eee0; }
body.dashboard-page .message-bubble.is-own { color: #fff; background: #064e3b; }
html[data-theme="dark"] body.dashboard-page .calendar-day.is-today > span { color: #17221f; background: #f8e7c9; }
html[data-theme="dark"] body.dashboard-page .calendar-event { border-color: #4d6156; border-left-color: #9dd8b2; color: var(--ink); background: #2a3430; }
html[data-theme="dark"] body.dashboard-page .calendar-event:hover, html[data-theme="dark"] body.dashboard-page .calendar-event:focus-visible { background: #35443b; }
html[data-theme="dark"] body.dashboard-page .date-tile { color: #f8e7c9; background: #403c32; }
html[data-theme="dark"] body.dashboard-page .message-bubble.is-own { color: #f2f6f3; background: #285b43; }

.sidebar-bottom { position: relative; }
.account-menu { position: absolute; z-index: 45; right: 0; bottom: calc(100% + 8px); width: min(264px, calc(100vw - 28px)); display: grid; gap: 2px; padding: 6px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); background: var(--surface); box-shadow: 0 14px 34px #17221f1f; }
.account-menu[hidden] { display: none; }
.account-menu button { display: flex; align-items: center; gap: 10px; min-height: 40px; width: 100%; padding: 8px 10px; border: 0; border-radius: 5px; color: inherit; background: transparent; cursor: pointer; text-align: left; font-size: .83rem; }
.account-menu button:hover, .account-menu button:focus-visible { background: var(--surface-soft); }
.account-menu button:last-child { margin-top: 4px; border-top: 1px solid var(--line); border-radius: 0; }
.account-menu svg { width: 17px; height: 17px; color: var(--muted); }
.sidebar-profile[aria-expanded="true"] { border-color: #6ca889; }
.account-detail-line { display: grid; gap: 3px; padding: 12px 0; overflow-wrap: anywhere; }
.account-detail-line > span, .account-detail-line > small { color: var(--muted); font-size: .75rem; }
.account-detail-line > strong { font-size: .9rem; }

.appearance-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: auto; padding-top: 16px; }
.appearance-options button { display: grid; justify-items: center; align-content: center; gap: 6px; min-height: 64px; border: 1px solid var(--line-strong); border-radius: 6px; color: var(--ink); background: var(--surface); cursor: pointer; font-size: .73rem; font-weight: 700; }
.appearance-options button[aria-pressed="true"] { border-color: #3b8163; color: #064e3b; background: #edf5ef; }
.appearance-options svg { width: 18px; height: 18px; }
html[data-theme="dark"] .appearance-options button[aria-pressed="true"] { border-color: #9dd8b2; color: #d8f3e1; background: #304239; }

.notification-layout { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: 16px; align-items: start; }
.notification-activity { display: grid; padding: 8px 18px 18px; }
.notification-activity > button, .notification-activity > div { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 66px; padding: 10px 0; border: 0; border-bottom: 1px solid var(--line); color: var(--ink); background: transparent; text-align: left; }
.notification-activity > button { cursor: pointer; }
.notification-activity > button:hover strong { color: var(--blue); }
.notification-activity > :last-child { border-bottom: 0; }
.notification-activity .card-icon { width: 34px; height: 34px; margin: 0; }
.notification-activity strong, .notification-activity small, .notification-option strong, .notification-option small { display: block; }
.notification-activity strong { font-size: .83rem; }
.notification-activity small { margin-top: 3px; color: var(--muted); font-size: .72rem; }
.notification-activity > button > svg { width: 17px; height: 17px; color: var(--muted); }
.notification-activity .quiet { padding: 16px 0 4px; }
.notification-preference-form { padding: 2px 18px 18px; }
.notification-option { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 14px; min-height: 72px; padding: 12px 0; border-bottom: 1px solid var(--line); cursor: pointer; }
.notification-option strong { font-size: .84rem; }
.notification-option small { margin-top: 3px; color: var(--muted); font-size: .72rem; line-height: 1.45; }
.notification-option input { width: 19px; height: 19px; accent-color: #064e3b; cursor: pointer; }
.notification-required { display: flex; align-items: flex-start; gap: 9px; padding: 16px 0 5px; color: var(--muted); font-size: .72rem; line-height: 1.5; }
.notification-required svg { flex: none; width: 17px; height: 17px; color: var(--blue); }
.notification-form-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding-top: 16px; }
.notification-form-actions .form-status { margin: 0; font-size: .76rem; }
@media (max-width: 760px) { .notification-layout { grid-template-columns: minmax(0, 1fr); } }
