/* Public bundle generated from measured public-page coverage; panel rules remain in app.css. */
@font-face {
  font-family: "Vazirmatn";
  src: url("../fonts/Vazirmatn.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --primary: #6d4ae8;
  --primary-hover: #5d3bd7;
  --primary-pressed: #4f2fc5;
  --on-primary: #ffffff;
  --primary-container: #e8deff;
  --on-primary-container: #25105d;
  --primary-strong: #5733c8;
  --primary-soft: #f1ebfe;
  --secondary: #f4a62a;
  --surface: #fcf8ff;
  --surface-bright: #ffffff;
  --surface-container: #f4eefa;
  --surface-container-high: #ede5f7;
  --surface-soft: #f7f2fc;
  --ink: #27232d;
  --on-surface: var(--ink);
  --muted: #655e70;
  --muted-strong: #625b6b;
  --outline: #d8cfe1;
  --outline-strong: #8b8294;
  --success: #2e7d4f;
  --success-strong: #1f6b40;
  --success-container: #d9f3e3;
  --warning: #9b6100;
  --warning-strong: #7d4e00;
  --warning-container: #ffebc5;
  --danger: #b3261e;
  --danger-container: #ffdad6;
  --info: #4054b2;
  --info-container: #dfe2ff;
  --shadow: 260 30% 45%;
  --sidebar: 14.5rem;
  --radius-sm: .625rem;
  --radius-md: .8rem;
  --radius-lg: 1.1rem;
  --radius-xl: 1.5rem;
  --radius-control: .75rem;
  --text-xs: .78rem;
  --space-public-section: 2rem;
  --duration-fast: 150ms;
  --duration: 250ms;
}

*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
[hidden] { display: none !important; }
html { color-scheme: light; scroll-behavior: smooth; scrollbar-gutter: stable; text-rendering: optimizeLegibility; -webkit-text-size-adjust: 100%; }
body {
  min-height: 100dvh;
  background: var(--surface);
  color: var(--ink);
  font-family: "Vazirmatn", sans-serif;
  font-size: .9375rem;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "ss01" 1, "calt" 1;
}
button, input, textarea, select { font: inherit; color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
h1, h2, h3 { line-height: 1.2; text-wrap: balance; }
p { text-wrap: pretty; }
:focus-visible { outline: 3px solid color-mix(in srgb, var(--primary), white 20%); outline-offset: 3px; }
::selection { background: var(--primary-container); color: var(--on-primary-container); }

.skip-link { position: fixed; inset-block-start: .75rem; inset-inline-start: .75rem; z-index: 1500; transform: translateY(-160%); background: var(--ink); color: white; padding: .7rem 1rem; border-radius: .8rem; }
.skip-link:focus { transform: translateY(0); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.data-number { font-variant-numeric: tabular-nums; }

.button, .icon-button {
  border: 0;
  cursor: pointer;
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  font-weight: 700;
  transition: background-color var(--duration-fast) ease-out, color var(--duration-fast) ease-out, transform var(--duration-fast) ease-out, box-shadow var(--duration-fast) ease-out;
}
.button { padding: .5rem 1rem; border-radius: 999px; min-width: 6rem; }
.button:hover { transform: translateY(-1px); }
.button:active { transform: scale(.98); }
.button:disabled { opacity: .5; cursor: not-allowed; box-shadow: none; }
.button:disabled:hover, .button:disabled:active { transform: none; }
.button--primary { background: var(--primary); color: var(--on-primary); box-shadow: 0 5px 14px hsl(var(--shadow) / .16); }
.button--primary:hover { background: var(--primary-hover); }
.button--primary:active { background: var(--primary-pressed); }
.button--tonal { background: var(--primary-container); color: var(--on-primary-container); }
.button--tonal:hover { background: #ddd0fb; }
.button--outline { background: transparent; color: var(--primary); box-shadow: inset 0 0 0 1.5px var(--primary); }
.button--ghost { background: transparent; color: var(--primary); }
.button--large { min-height: 3rem; padding-inline: 1.25rem; font-size: 1rem; }
.button--compact { min-height: 2.75rem; min-width: 0; padding: .38rem .72rem; font-size: .84rem; }
.button--danger { background: var(--danger-container); color: var(--danger); }
.button--danger:hover { background: #ffc9c4; }
.icon-button { width: 2.75rem; padding: 0; border-radius: 50%; background: var(--surface-container); color: var(--ink); }

.status { display: inline-flex; align-items: center; gap: .32rem; width: max-content; padding: .28rem .58rem; border-radius: 999px; font-size: .78rem; font-weight: 700; }
.status::before { content: ""; width: .45rem; height: .45rem; border-radius: 50%; background: currentColor; }
.status--success { background: var(--success-container); color: var(--success-strong); }
.status--warning { background: var(--warning-container); color: var(--warning-strong); }
.status--info { background: var(--info-container); color: var(--info); }
.status--danger { background: var(--danger-container); color: var(--danger); }
.status--neutral { background: var(--surface-container-high); color: var(--muted-strong); }

.surface { background: var(--surface-bright); border: 1px solid color-mix(in srgb, var(--outline), transparent 25%); border-radius: var(--radius-lg); box-shadow: 0 4px 16px hsl(var(--shadow) / .055); }
.section-heading { font-size: 1.15rem; font-weight: 800; margin-block-end: .7rem; }
.card-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: .8rem; }
.card-heading .section-heading { margin-block-end: .18rem; }
.card-heading p { color: var(--muted); font-size: .84rem; }
.breadcrumbs { display: flex; align-items: center; gap: .35rem; margin-block-end: .65rem; color: var(--muted); font-size: .82rem; }
.breadcrumbs a:hover { color: var(--primary); }
.breadcrumbs svg { width: .9rem; }
.button--back { gap: .5rem; }

/* Public website */
.public-header { height: 4.5rem; background: rgba(255,255,255,.96); border-block-end: 1px solid var(--outline); display: flex; align-items: center; position: sticky; top: 0; z-index: 1000; }
.public-header__inner { width: min(100% - 2rem, 84rem); margin-inline: auto; display: flex; align-items: center; gap: 1rem; position: relative; }
.public-brand { display: flex; align-items: center; gap: .5rem; font-size: 1.25rem; font-weight: 850; margin-inline-end: .7rem; }
.public-brand img { width: 2.25rem; height: 2.25rem; object-fit: contain; border-radius: .65rem; background: #6D4AE8; }
.public-nav { display: flex; align-items: center; gap: .8rem; color: #4b4551; font-size: .88rem; font-weight: 650; }
.public-nav a:hover { color: var(--primary); }
.public-nav a[aria-current="page"] { color: var(--primary); }
.public-menu-toggle { display: none; width: 2.75rem; min-height: 2.75rem; place-items: center; flex: 0 0 auto; border: 1px solid var(--outline); border-radius: .8rem; background: var(--surface); color: var(--primary); cursor: pointer; }
.public-header__actions { margin-inline-start: auto; display: flex; gap: .7rem; align-items: center; }
.public-error-page { min-height: 60vh; padding: clamp(2rem,6vw,5rem) 1rem; display: grid; place-items: center; }
.public-error-card { width: min(100%,38rem); padding: clamp(1.4rem,4vw,2.4rem); text-align: center; }
.public-error-card__icon { width: 4rem; height: 4rem; margin-inline: auto; display: grid; place-items: center; border-radius: 1.2rem; background: var(--primary-container); color: var(--primary); }
.public-error-card__code { margin-block-start: 1rem; color: var(--primary); font-size: .9rem; font-weight: 850; letter-spacing: .12em; }
.public-error-card h1 { margin-block-start: .25rem; font-size: clamp(1.5rem,3vw,2.1rem); }
.public-error-card > p:last-of-type { max-width: 52ch; margin: .65rem auto 0; color: var(--muted); }
.public-error-card__actions { margin-block-start: 1.25rem; display: flex; justify-content: center; gap: .6rem; flex-wrap: wrap; }
.home-stories { background: var(--surface-bright); border-block-end: 1px solid color-mix(in srgb,var(--primary),transparent 90%); }
.home-stories__inner { width: min(100% - 2rem,84rem); margin-inline: auto; padding-block: .8rem; display: grid; grid-template-columns: 10.5rem minmax(0,1fr); align-items: center; gap: 1rem; }
.home-stories__heading h2 { font-size: 1rem; font-weight: 900; }
.home-stories__heading p { margin-block-start: .2rem; color: var(--muted); font-size: .72rem; }
.home-stories__track { min-width: 0; margin: 0; padding: .2rem .25rem .45rem; display: flex; align-items: flex-start; justify-content: flex-start; gap: 1rem; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scrollbar-width: thin; scrollbar-color: color-mix(in srgb,var(--primary),transparent 55%) transparent; list-style: none; }
.home-story-item { flex: 0 0 auto; }
.home-story-card { --story-accent: var(--primary); width: 6.5rem; min-width: 6.5rem; min-height: 6.9rem; padding-block: .15rem; display: grid; justify-items: center; align-content: start; gap: .4rem; border-radius: 1rem; color: var(--ink); scroll-snap-align: start; transition: color var(--duration-fast) ease-out,transform var(--duration-fast) ease-out; }
.home-story-card--orange { --story-accent: var(--secondary); }
.home-story-card--green { --story-accent: var(--success); }
.home-story-card__media { width: 5.15rem; height: 5.15rem; position: relative; flex: 0 0 5.15rem; border: 2px solid var(--story-accent); border-radius: 50%; background: var(--surface-bright); box-shadow: 0 5px 14px color-mix(in srgb,var(--story-accent),transparent 87%); overflow: hidden; }
.home-story-card__media img { position: absolute; inset: .2rem; width: calc(100% - .4rem); height: calc(100% - .4rem); max-width: none; border-radius: 50%; object-fit: cover; }
.home-story-card__label { max-width: 100%; color: inherit; font-size: .76rem; font-weight: 800; line-height: 1.5; text-align: center; }
@media (hover:hover) { .home-story-card:hover { color: color-mix(in srgb,var(--story-accent),black 32%); transform: translateY(-2px); }.home-story-card:hover .home-story-card__media { box-shadow: 0 8px 20px color-mix(in srgb,var(--story-accent),transparent 80%); } }
.has-open-story { overflow: hidden; }
.home-story-dialog { width: 100vw; max-width: none; height: 100dvh; max-height: none; margin: 0; padding: 0; position: fixed; inset: 0; border: 0; background: transparent; overflow: hidden; }
.home-story-dialog::backdrop { background: rgba(22,13,39,.76); backdrop-filter: blur(2px); }
.home-story-dialog__shell { width: min(24rem,calc(100vw - 7rem),54dvh); margin: 50dvh auto 0; position: relative; transform: translateY(-50%); }
.home-story-viewer { width: 100%; aspect-ratio: 9 / 16; padding: .65rem; display: grid; grid-template-rows: auto auto minmax(0,1fr); gap: .55rem; border: 1px solid rgba(255,255,255,.2); border-radius: 1.35rem; background: linear-gradient(160deg,#7651ec,#5733c8); color: white; box-shadow: 0 28px 70px rgba(13,7,27,.34); overflow: hidden; }
.home-story-viewer__progress { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: .25rem; }
.home-story-viewer__progress span { height: .2rem; position: relative; border-radius: 999px; background: rgba(255,255,255,.28); overflow: hidden; }
.home-story-viewer__progress span::after { content: ""; position: absolute; inset: 0; border-radius: inherit; background: white; transform: scaleX(0); transform-origin: right center; }
.home-story-viewer__progress .is-complete::after,.home-story-viewer__progress .is-terminal::after { transform: scaleX(1); }
.home-story-viewer__progress .is-current:not(.is-terminal)::after { animation: home-story-progress var(--story-duration,7000ms) linear forwards; }
.home-story-dialog.is-story-paused .home-story-viewer__progress .is-current::after { animation-play-state: paused; }
@keyframes home-story-progress { to { transform: scaleX(1); } }
.home-story-viewer__header { min-height: 2rem; padding-inline: .25rem; display: flex; align-items: center; justify-content: space-between; gap: .6rem; }
.home-story-viewer__header > strong { min-width: 0; font-size: .84rem; }
.home-story-viewer__status { display: flex; align-items: center; gap: .35rem; }
.home-story-viewer__status > span { color: #ebe5ff; font-size: .7rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.home-story-viewer__playback { min-height: 2.75rem; padding: .25rem .55rem; display: inline-flex; align-items: center; justify-content: center; gap: .28rem; border: 1px solid rgba(255,255,255,.3); border-radius: 999px; background: rgba(28,16,54,.24); color: white; cursor: pointer; font: inherit; }
.home-story-viewer__playback > span { display: inline-flex; align-items: center; color: inherit; font-size: .68rem; font-weight: 800; white-space: nowrap; }
.home-story-viewer__playback > span[hidden] { display: none; }
.home-story-viewer__playback:disabled { opacity: .72; cursor: default; }
.home-story-viewer__playback:focus-visible { outline-color: white; }
.home-story-viewer__stage { min-height: 0; position: relative; border-radius: 1rem .45rem 1rem 1rem; background: var(--surface-bright); overflow: hidden; }
.home-story-viewer__media { position: absolute; inset: 0; background-position: center; background-size: cover; }
.home-story-viewer__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(20,11,38,.08),rgba(20,11,38,.22) 45%,rgba(20,11,38,.78)); }
.home-story-viewer__content { position: absolute; inset-inline: .7rem; inset-block-end: .7rem; z-index: 1; padding: .9rem; border: 1px solid rgba(255,255,255,.2); border-radius: 1rem .45rem 1rem 1rem; background: rgba(30,17,57,.82); color: white; }
.home-story-viewer__step { width: max-content; padding: .14rem .42rem; display: block; border-radius: 999px; background: rgba(255,255,255,.92); color: var(--primary-strong); font-size: .65rem; font-weight: 850; }
.home-story-viewer__content h2 { margin-block-start: .5rem; font-size: clamp(1.3rem,3.2vw,1.65rem); line-height: 1.5; }
.home-story-viewer__content > p { margin-block-start: .4rem; color: #eee9fb; font-size: .84rem; line-height: 1.8; }
.home-story-viewer__links { margin-block-start: .7rem; display: grid; gap: .38rem; }
.home-story-viewer__link { min-height: 3.65rem; padding: .5rem .55rem; display: grid; grid-template-columns: 2.35rem minmax(0,1fr) auto; align-items: center; gap: .5rem; border: 1px solid color-mix(in srgb,var(--primary),transparent 84%); border-radius: .75rem; background: var(--surface-bright); color: var(--ink); }
.home-story-viewer__link-mark { width: 2.35rem; height: 2.35rem; display: grid; place-items: center; overflow: hidden; border-radius: .65rem; background: var(--primary-soft); color: var(--success); font-size: .65rem; }
.home-story-viewer__link-mark img { width: 100%; height: 100%; display: block; object-fit: cover; }
.home-story-viewer__link strong,.home-story-viewer__link small { display: block; }
.home-story-viewer__link strong { font-size: .78rem; line-height: 1.55; }
.home-story-viewer__link small { margin-block-start: .08rem; color: var(--muted); font-size: .63rem; line-height: 1.5; }
.home-story-viewer__link-arrow { color: var(--primary); font-size: 1rem; }
.home-story-viewer__link-badge { padding: .12rem .38rem; border-radius: 999px; background: var(--warning-container); color: var(--warning-strong); font-size: .64rem; font-weight: 900; white-space: nowrap; }
.home-story-viewer__cta { min-height: 2.85rem; margin-block-start: .65rem; padding: .5rem .75rem; display: flex; align-items: center; justify-content: center; border-radius: .75rem; background: var(--primary); color: white; font-size: .8rem; font-weight: 850; }
.home-story-viewer__cta[hidden] { display: none; }
.home-story-viewer__stage[data-story-mode="latest_jobs"],.home-story-viewer__stage[data-story-mode="locations"],.home-story-viewer__stage[data-story-mode="custom_links"] { background: var(--surface-soft); }
.home-story-viewer__stage[data-story-mode="latest_jobs"] .home-story-viewer__media,.home-story-viewer__stage[data-story-mode="locations"] .home-story-viewer__media,.home-story-viewer__stage[data-story-mode="custom_links"] .home-story-viewer__media { display: none; }
.home-story-viewer__stage[data-story-mode="latest_jobs"] .home-story-viewer__content,.home-story-viewer__stage[data-story-mode="locations"] .home-story-viewer__content,.home-story-viewer__stage[data-story-mode="custom_links"] .home-story-viewer__content { inset: .7rem; overflow-y: auto; background: var(--surface-bright); border-color: var(--outline); color: var(--ink); }
.home-story-viewer__stage[data-story-mode="latest_jobs"] .home-story-viewer__content > p,.home-story-viewer__stage[data-story-mode="locations"] .home-story-viewer__content > p,.home-story-viewer__stage[data-story-mode="custom_links"] .home-story-viewer__content > p { color: var(--muted); }
.home-story-dialog__close,.home-story-dialog__nav { width: 2.75rem; min-height: 2.75rem; position: absolute; z-index: 3; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.32); border-radius: 50%; background: rgba(27,16,48,.68); color: white; cursor: pointer; }
.home-story-dialog__close { inset-block-start: 0; inset-inline-end: calc(100% + .75rem); }
.home-story-dialog__nav { inset-block-start: 50%; transform: translateY(-50%); }
.home-story-dialog__nav--previous { right: -3.65rem; }
.home-story-dialog__nav--previous svg { transform: rotate(180deg); }
.home-story-dialog__nav--next { left: -3.65rem; }
.home-story-dialog__nav:disabled { opacity: .28; cursor: default; }
.home-story-dialog__close:focus-visible,.home-story-dialog__nav:focus-visible { outline-color: white; }
.hero { padding: clamp(2.4rem,4.5vw,3.75rem) 1rem 3.25rem; background: radial-gradient(circle at 80% 28%,color-mix(in srgb,var(--primary-soft),transparent 30%),transparent 31rem),var(--surface); overflow: hidden; }
.hero__inner { width: min(100%,84rem); margin-inline: auto; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(25rem,.92fr); gap: clamp(2rem,5vw,4.5rem); align-items: center; }
.hero__copy { min-width: 0; position: relative; z-index: 2; }
.hero h1 { max-width: 18ch; color: var(--ink); font-size: clamp(2.25rem,3.35vw,3.65rem); font-weight: 950; line-height: 1.35; letter-spacing: -.055em; text-wrap: balance; }
.home-hero { padding-block-end: var(--space-public-section); }
.home-hero .hero__inner { grid-template-columns: minmax(0,1.35fr) minmax(20rem,.82fr); gap: clamp(2rem,4vw,3.25rem); }
.home-hero h1 { max-width: none; font-size: clamp(2.15rem,2.65vw,3rem); letter-spacing: -.035em; white-space: nowrap; text-wrap: nowrap; }
.hero__lead { max-width: 61ch; margin-block: .9rem 1.5rem; color: var(--muted); font-size: clamp(.98rem,.35vw + .92rem,1.13rem); line-height: 1.9; }
.search-box { padding: .42rem; display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,1fr) auto; gap: .35rem; border: 1px solid color-mix(in srgb,var(--primary),var(--outline) 80%); border-radius: 1.35rem; background: var(--surface-bright); box-shadow: 0 14px 34px hsl(var(--shadow) / .1); }
.search-field { min-width: 0; min-height: 3.25rem; padding-inline: .8rem; display: flex; align-items: center; gap: .55rem; border-radius: .9rem; color: var(--muted); transition: background-color var(--duration-fast) ease-out,color var(--duration-fast) ease-out; }
.search-field:focus-within { background: color-mix(in srgb,var(--primary-soft),white 38%); color: var(--primary-strong); }
.search-field + .search-field { border-inline-start: 1px solid var(--outline); border-radius: 0; }
.search-field input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; }
.search-box .button { min-height: 3.25rem; }
.hero__all-jobs { width: max-content; min-height: 2.75rem; margin-block-start: .65rem; padding-inline: .35rem; display: inline-flex; align-items: center; gap: .4rem; color: var(--primary-strong); font-size: .84rem; font-weight: 850; }
.hero__all-jobs:hover { color: var(--primary-hover); }
.hero-location-links { margin-block-start: .75rem; display: flex; flex-wrap: wrap; gap: .42rem; }
.hero-location-links a { min-height: 2.75rem; padding-inline: .7rem; display: inline-flex; align-items: center; gap: .3rem; border: 1px solid color-mix(in srgb,var(--primary),transparent 76%); border-radius: .75rem; background: var(--surface-bright); color: var(--primary-strong); font-size: .76rem; font-weight: 800; }
.hero-location-links a:hover { background: var(--primary-soft); }
.hero-paths { padding: 0; border: 1px solid color-mix(in srgb,var(--primary),transparent 84%); border-radius: 1.25rem; background: rgba(255,255,255,.96); box-shadow: 0 14px 36px hsl(var(--shadow) / .08); }
.hero-paths__list { display: grid; border-radius: inherit; overflow: hidden; }
.hero-path { --hero-path-accent: var(--primary); min-width: 0; min-height: 5.4rem; padding: .8rem 1.2rem; display: grid; grid-template-columns: 2.55rem minmax(0,1fr) 2.75rem; align-items: center; gap: .7rem; border: 0; border-block-end: 1px solid var(--outline); border-radius: 0; background: transparent; transition: background-color var(--duration-fast) ease-out; }
.hero-path:focus-visible { outline-offset: -3px; background: color-mix(in srgb,var(--hero-path-accent),white 94%); }
.hero-path:active { background: color-mix(in srgb,var(--hero-path-accent),white 88%); }
.hero-path:last-child { border-block-end: 0; }
.hero-path--latest { --hero-path-accent: var(--success); }
.hero-path--saved { --hero-path-accent: var(--primary); }
.hero-path--employer { --hero-path-accent: var(--secondary); }
.hero-path__icon { width: 2.45rem; height: 2.45rem; display: grid; place-items: center; border-radius: .75rem; background: color-mix(in srgb,var(--hero-path-accent),white 89%); color: color-mix(in srgb,var(--hero-path-accent),black 18%); }
.hero-path__copy { min-width: 0; }
.hero-path__copy strong,.hero-path__copy small { display: block; }
.hero-path__copy strong { color: color-mix(in srgb,var(--hero-path-accent),black 25%); font-size: .98rem; font-weight: 900; }
.hero-path__copy small { margin-block-start: .18rem; color: var(--muted); font-size: .72rem; line-height: 1.65; }
.hero-path__action { width: 2.75rem; min-height: 2.75rem; display: grid; place-items: center; color: color-mix(in srgb,var(--hero-path-accent),black 22%); }
.hero-path--employer .hero-path__copy strong,.hero-path--employer .hero-path__action { color: var(--warning-strong); }
@media (hover:hover) { .hero-path:hover { background: color-mix(in srgb,var(--hero-path-accent),white 94%); } }
.public-section { padding: var(--space-public-section) 1rem; scroll-margin-block-start: 5rem; }
.public-section__inner { width: min(100%, 84rem); margin-inline: auto; }
.public-section__head { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-block-end: 1rem; }
.public-section__head h2 { font-size: clamp(1.5rem, 1.6vw, 2.1rem); font-weight: 850; }
.job-layout { display: grid; grid-template-columns: minmax(0,1fr); gap: 1rem; }
.job-list { overflow: hidden; }
.job-row { min-height: 5.6rem; display: grid; grid-template-columns: 2.8rem minmax(0,1fr) auto; align-items: center; gap: .85rem; padding: .85rem 1rem; border-block-end: 1px solid var(--outline); }
.job-row:last-child { border-block-end: 0; }
.job-icon { width: 2.6rem; height: 2.6rem; display: grid; place-items: center; background: var(--primary-container); color: var(--primary); border-radius: .85rem .45rem .85rem .85rem; }
.job-row h3 { font-size: 1.05rem; }
.job-row__body { min-width: 0; }
.job-row__facts { margin-block-start: .45rem; display: flex; align-items: center; flex-wrap: wrap; gap: .35rem .8rem; color: var(--muted); font-size: .76rem; }
.job-row__facts span { display: inline-flex; align-items: center; gap: .3rem; }
.job-row__facts svg { flex: 0 0 auto; color: var(--primary); }
.employer-callout { min-height: 7.5rem; padding: 1.1rem 1.25rem; background: var(--on-primary-container); color: white; border-radius: 1.5rem .7rem 1.5rem 1.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; }
.employer-callout > div { display: grid; grid-template-columns: auto auto; align-items: center; gap: .15rem .65rem; }
.employer-callout > div > svg { grid-row: 1 / span 2; }
.employer-callout p { max-width: 70ch; color: #ded5f4; }
.employer-callout .button { flex: 0 0 auto; }

.row-meta { display: block; color: var(--muted); font-size: .78rem; margin-block-start: .15rem; }
.empty-row { min-height: 4rem; padding: .9rem; display: flex; align-items: center; justify-content: center; gap: .55rem; color: var(--muted); text-align: center; }
.field { display: grid; gap: .3rem; margin-block-end: .75rem; }
.field label { font-weight: 750; }
.field-label { font-weight: 750; }
.field-label-row { min-width: 0; display: flex; align-items: center; justify-content: flex-start; font-weight: 750; }
.field-help { color: var(--muted); font-size: .9rem; }
.field-help--danger { color: var(--danger); }
.field-error { min-width: 0; padding: .5rem .65rem; border-inline-start: 3px solid var(--danger); border-radius: .7rem .35rem .7rem .7rem; background: color-mix(in srgb,var(--danger-container),white 38%); color: color-mix(in srgb,var(--danger),black 16%); display: flex; align-items: flex-start; gap: .45rem; font-size: .8rem; font-weight: 700; line-height: 1.65; scroll-margin-block: 5rem; }
.field-error svg { flex: none; margin-block-start: .15rem; }
.form-error-summary { padding: .9rem 1rem; border: 1px solid color-mix(in srgb,var(--danger),transparent 42%); border-inline-start-width: 4px; border-radius: 1rem .55rem 1rem 1rem; background: color-mix(in srgb,var(--danger-container),white 48%); color: color-mix(in srgb,var(--danger),black 18%); scroll-margin-block: 5rem; }
.form-error-summary:focus { outline: 3px solid color-mix(in srgb,var(--danger),transparent 62%); outline-offset: 3px; }
.form-error-summary > div { display: flex; align-items: flex-start; gap: .65rem; }
.form-error-summary > div > svg { flex: none; margin-block-start: .15rem; }
.form-error-summary > div span,.form-error-summary > div strong,.form-error-summary > div small { display: block; }
.form-error-summary > div small { margin-block-start: .15rem; color: var(--muted-strong); }
.form-error-summary ul { margin-block-start: .65rem; padding-inline-start: 1.25rem; display: grid; gap: .35rem; }
.form-error-summary a { color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .18rem; }
.settings-card > .form-error-summary,.pricing-panel > .form-error-summary,.editor-panel form > .form-error-summary { margin-block: .9rem 1rem; }
.settings-upload__body > .field-error,.plain-fieldset > .field-error,.switch-row + .field-error { margin-block-start: .55rem; }
.character-count { justify-self: end; color: var(--muted); font-size: .75rem; }
.field-guidance { min-width: 0; padding: .45rem .55rem; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .4rem .5rem; border-radius: .7rem; background: color-mix(in srgb,var(--primary-container),white 46%); box-shadow: inset -3px 0 color-mix(in srgb,var(--primary),transparent 28%); color: var(--muted); font-size: .78rem; line-height: 1.6; }
.field-guidance__label { padding: .12rem .4rem; border-radius: 999px; background: var(--surface-bright); color: var(--primary-strong); font-size: var(--text-xs); font-weight: 850; white-space: nowrap; box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--primary),transparent 78%); }
.field-guidance--counter { grid-template-columns: auto minmax(0,1fr); }
.field-guidance .field-help { min-width: 0; color: inherit; font-size: inherit; }
.field-guidance .character-count { justify-self: end; color: var(--primary); font-weight: 750; white-space: nowrap; }
.field-guidance--counter .character-count { grid-column: 1 / -1; justify-self: start; }
.context-help { position: relative; display: inline-flex; flex: 0 0 auto; }
.context-help__trigger { position: relative; isolation: isolate; width: 2.75rem; min-width: 2.75rem; min-height: 2.75rem; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--primary); cursor: pointer; display: grid; place-items: center; font-size: .76rem; font-weight: 900; transition: color var(--duration-fast) ease-out,transform var(--duration-fast) ease-out; }
.context-help__trigger::before { content: ""; position: absolute; z-index: -1; width: 1.75rem; height: 1.75rem; border-radius: 50%; background: color-mix(in srgb,var(--primary-container),white 48%); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--primary),transparent 82%); transition: background-color var(--duration-fast) ease-out,box-shadow var(--duration-fast) ease-out,transform var(--duration-fast) ease-out; }
.context-help__trigger[aria-expanded="true"] { color: white; }
.context-help__trigger[aria-expanded="true"]::before { background: var(--primary); box-shadow: none; }
.context-help__trigger:focus-visible { outline-width: 2px; outline-offset: -.45rem; }
@media (hover:hover) { .context-help__trigger:hover::before { background: var(--primary-container); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--primary),transparent 68%); transform: scale(1.04); } }
.context-help__trigger:active { transform: scale(.97); }
.context-help__popover { position: fixed; z-index: 1250; inset: auto; width: min(18rem,calc(var(--help-viewport-width,100vw) - 2rem)); max-height: min(22rem,var(--help-max-height,calc(100dvh - 2rem))); overflow: visible; padding: .8rem; border: 1px solid color-mix(in srgb,var(--primary),white 78%); border-radius: 1rem; background: var(--surface-bright); box-shadow: 0 0 0 1px hsl(var(--shadow) / .07),0 .125rem .35rem hsl(var(--shadow) / .06),0 .8rem 2rem hsl(var(--shadow) / .12); display: grid; grid-template-areas: "close title" "copy copy"; grid-template-columns: 2.75rem minmax(0,1fr); grid-template-rows: auto minmax(0,1fr); column-gap: .3rem; row-gap: .55rem; align-items: center; text-align: start; transform-origin: top right; font-weight: 400; animation: context-help-in 140ms cubic-bezier(.2,.8,.2,1) both; }
.context-help__popover::before { content: ""; position: absolute; top: -6px; left: var(--help-arrow-x,24px); width: 10px; height: 10px; background: var(--surface-bright); border: inherit; border-right: 0; border-bottom: 0; transform: translateX(-50%) rotate(45deg); }
.context-help__popover[data-placement="above"]::before { top: auto; bottom: -6px; transform: translateX(-50%) rotate(225deg); }
.context-help__popover strong, .context-help__popover > span { display: block; }
.context-help__popover strong { grid-area: title; min-width: 0; color: var(--ink); font-size: .92rem; font-weight: 820; line-height: 1.5; }
.context-help__popover > span { grid-area: copy; min-width: 0; min-height: 0; max-height: none; overflow-y: auto; padding: .7rem .8rem; border-inline-start: 3px solid color-mix(in srgb,var(--primary),transparent 58%); border-radius: .75rem; background: color-mix(in srgb,var(--surface-container),white 52%); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--outline),transparent 58%); color: var(--muted); font-size: .81rem; line-height: 1.85; text-wrap: pretty; }
.context-help__close { grid-area: close; position: relative; isolation: isolate; width: 2.75rem; height: 2.75rem; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--muted); cursor: pointer; display: grid; place-items: center; transition: color var(--duration-fast) ease-out,transform var(--duration-fast) ease-out; }
.context-help__close::before { content: ""; position: absolute; z-index: -1; width: 1.65rem; height: 1.65rem; border-radius: 50%; background: color-mix(in srgb,var(--surface-container),white 28%); transition: background-color var(--duration-fast) ease-out,transform var(--duration-fast) ease-out; }
@media (hover:hover) { .context-help__close:hover { color: var(--ink); }.context-help__close:hover::before { background: var(--surface-container-high); transform: scale(1.04); } }
.context-help__close:active { transform: scale(.97); }
@keyframes context-help-in { from { opacity: 0; translate: 0 .2rem; scale: .98; } }
.input, .textarea, .select { width: 100%; border: 1.5px solid var(--outline-strong); background-color: var(--surface); border-radius: .75rem; padding: .7rem .8rem; transition: border-color var(--duration-fast), box-shadow var(--duration-fast), background-color var(--duration-fast); }
.select { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%235b5360' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: left 1rem center; background-size: 1rem; padding-inline-end: 3rem; }
.input, .select { min-height: 3rem; }
.textarea { min-height: 7rem; resize: vertical; }
.input:focus, .textarea:focus, .select:focus { outline: 0; border-color: var(--primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary), transparent 82%); background-color: white; }
.input[aria-invalid="true"], .textarea[aria-invalid="true"], .select[aria-invalid="true"] { border-color: var(--danger); background-color: color-mix(in srgb,var(--danger-container),white 72%); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--danger),transparent 82%); }
.input[aria-invalid="true"]:focus, .textarea[aria-invalid="true"]:focus, .select[aria-invalid="true"]:focus { border-color: var(--danger); box-shadow: 0 0 0 3px color-mix(in srgb,var(--danger),transparent 82%); background-color: white; }
.guide-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: .8rem; }
.guide-grid article { padding: 1rem; }
.guide-grid article > span { width: 2.2rem; height: 2.2rem; display: grid; place-items: center; border-radius: .7rem; background: var(--primary-container); color: var(--primary); font-weight: 850; }
.guide-grid h3 { margin-block: .6rem .3rem; }
.guide-grid p { color: var(--muted); }
.coverage-section { background: #fbf9ff; }
#jobs .job-layout { row-gap: 24px; }
#jobs.public-section { padding-block-end: 20px; }
#jobs + .coverage-section { padding-block-start: 20px; }
.coverage-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .85rem; }
.coverage-card { min-width: 0; padding: 1rem; display: flex; align-items: flex-start; gap: .8rem; }
.coverage-card__icon { width: 3rem; height: 3rem; flex: 0 0 3rem; display: grid; place-items: center; border-radius: .85rem; background: var(--primary-container); color: var(--primary); }
.coverage-card h3 { margin-block-end: .35rem; font-size: 1.05rem; }
.coverage-card p { color: var(--muted); line-height: 1.9; }
.coverage-card__link { color: inherit; text-decoration: underline; text-decoration-color: color-mix(in srgb,var(--primary),transparent 65%); text-underline-offset: .25em; }
.coverage-card__link:hover,.coverage-card__link:focus-visible { color: var(--primary); text-decoration-color: currentColor; }
.official-channels, .local-faq { margin-block-start: var(--space-public-section); scroll-margin-block-start: 5rem; }
.employer-callout { scroll-margin-block-start: 5rem; }
.official-channels__head { margin-block-end: .75rem; }
.official-channels__head h2 { margin-block-end: .18rem; font-size: 1.25rem; }
.official-channels__head p { color: var(--muted); font-size: .88rem; }
.official-channel-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .65rem; }
.official-channel-card { --channel-color: var(--primary); min-width: 0; min-height: 5rem; padding: .7rem; display: grid; grid-template-columns: 2.75rem minmax(0,1fr) auto; align-items: center; gap: .6rem; border: 1px solid color-mix(in srgb,var(--channel-color),transparent 68%); border-radius: 1rem; background: color-mix(in srgb,var(--channel-color),white 93%); color: var(--on-surface); box-shadow: 0 3px 12px color-mix(in srgb,var(--channel-color),transparent 91%); transition: transform var(--duration-fast) ease-out, box-shadow var(--duration-fast) ease-out, border-color var(--duration-fast) ease-out; }
.official-channel-card--telegram { --channel-color: #229ed9; }
.official-channel-card--rubika { --channel-color: #5b59e8; }
.official-channel-card--bale { --channel-color: #00a884; }
.official-channel-card--eitaa { --channel-color: #ed7c22; }
.official-channel-card--instagram { --channel-color: #c13584; }
.official-channel-card__icon { width: 2.75rem; height: 2.75rem; display: grid; place-items: center; border-radius: .85rem; background: var(--channel-color); color: white; font-size: .93rem; font-weight: 900; }
.official-channel-card strong, .official-channel-card small { display: block; }
.official-channel-card strong { color: color-mix(in srgb,var(--channel-color),black 42%); }
.official-channel-card small { margin-block-start: .12rem; color: var(--muted); font-size: .68rem; white-space: nowrap; }
.official-channel-card > svg { color: var(--channel-color); }
@media (hover:hover) { .official-channel-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--channel-color),transparent 42%); box-shadow: 0 8px 20px color-mix(in srgb,var(--channel-color),transparent 84%); } }
.local-faq__items { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .65rem; }
.local-faq details { padding: .85rem; }
.local-faq summary { min-height: 2.75rem; display: flex; align-items: center; justify-content: space-between; gap: .5rem; cursor: pointer; font-weight: 800; list-style: none; }
.local-faq summary::-webkit-details-marker { display: none; }
.local-faq details[open] summary svg { transform: rotate(-90deg); }
.local-faq summary svg { flex: 0 0 auto; color: var(--primary); transition: transform var(--duration-fast) ease-out; }
.local-faq p { padding-block-start: .6rem; color: var(--muted); line-height: 1.8; }
.jobs-archive-page { min-height: calc(100dvh - 4.5rem); padding: 1.2rem 1rem 3rem; background: var(--surface); }
.jobs-archive-shell { width: min(100%,84rem); margin-inline: auto; }
.jobs-archive-hero { min-height: 12rem; padding: clamp(1.35rem,3vw,2.3rem); display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; border-radius: 1.7rem .75rem 1.7rem 1.7rem; background: linear-gradient(135deg,var(--on-primary-container),#4930a8); color: white; overflow: hidden; position: relative; }
.jobs-archive-hero::after { content: ""; position: absolute; width: 13rem; height: 13rem; inset: -5rem auto auto -3rem; border: 2rem solid rgba(255,255,255,.07); border-radius: 50%; }
.jobs-archive-hero > * { position: relative; z-index: 1; }
.jobs-archive-hero__eyebrow { display: inline-flex; align-items: center; gap: .45rem; color: #ded5ff; font-size: .82rem; font-weight: 800; }
.jobs-archive-hero h1 { margin-block: .5rem .35rem; font-size: clamp(1.75rem,3vw,2.7rem); line-height: 1.35; }
.jobs-archive-hero p { color: #e5def6; }
.jobs-archive-hero__count { flex: 0 0 auto; min-width: 9rem; padding: 1rem; display: grid; justify-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 1.1rem; background: rgba(255,255,255,.1); backdrop-filter: blur(8px); }
.jobs-archive-hero__count strong { font-size: 2rem; line-height: 1; }
.jobs-archive-hero__count span { margin-block-start: .4rem; color: #e8e1f7; font-size: .78rem; }
.jobs-filter-panel { margin-block: 1rem 1.5rem; padding: 1rem; display: grid; grid-template-columns: minmax(14rem,1.35fr) minmax(11rem,1fr) minmax(9rem,.7fr) auto; align-items: end; gap: .75rem; }
.jobs-filter-field { min-width: 0; display: grid; gap: .35rem; color: var(--ink); font-size: .82rem; font-weight: 750; }
.jobs-filter-control { min-width: 0; min-height: 3rem; padding-inline: .75rem; display: flex; align-items: center; gap: .5rem; border: 1px solid var(--outline-strong); border-radius: .8rem; background: var(--surface-bright); color: var(--muted); }
.jobs-filter-control:focus-within { border-color: var(--primary); box-shadow: 0 0 0 3px color-mix(in srgb,var(--primary),transparent 83%); }
.jobs-filter-control input, .jobs-filter-control select { width: 100%; min-width: 0; height: 2.8rem; border: 0; outline: 0; background: transparent; color: var(--ink); }
.jobs-filter-control select { cursor: pointer; }
.jobs-filter-actions { display: flex; align-items: center; gap: .4rem; }
.jobs-filter-actions .button { white-space: nowrap; }
.jobs-results__head { margin-block-end: .85rem; display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.jobs-results__head h2 { font-size: clamp(1.35rem,2vw,1.8rem); }
.jobs-results__head p { margin-block-start: .2rem; color: var(--muted); }
.jobs-results__filter-state { display: inline-flex; align-items: center; gap: .35rem; color: var(--success); font-size: .8rem; font-weight: 800; }
.jobs-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
.jobs-card { min-width: 0; min-height: 18rem; padding: 1rem; display: flex; flex-direction: column; transition: transform var(--duration-fast) ease-out,box-shadow var(--duration-fast) ease-out,border-color var(--duration-fast) ease-out; }
@media (hover:hover) { .jobs-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--primary),transparent 55%); box-shadow: 0 10px 26px hsl(var(--shadow) / .11); } }
.jobs-card__top { display: flex; align-items: center; justify-content: space-between; gap: .7rem; }
.jobs-card__body { flex: 1; padding-block: .9rem; }
.jobs-card h3 { min-height: 3.25rem; font-size: 1.08rem; line-height: 1.55; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.jobs-card__company { margin-block-start: .35rem; color: var(--muted); font-size: .85rem; }
.jobs-card__facts { margin-block-start: 1rem; display: grid; gap: .55rem; color: var(--muted); font-size: .82rem; }
.jobs-card__facts span { display: flex; align-items: flex-start; gap: .4rem; }
.jobs-card__facts svg { flex: 0 0 auto; margin-block-start: .1rem; color: var(--primary); }
.jobs-card > .button { width: 100%; justify-content: space-between; }
.saved-job-card { overflow: hidden; }
.saved-job-card .jobs-card__top { margin-block: -1rem 0; margin-inline: -1rem; padding: .85rem 1rem; border-block-end: 1px solid color-mix(in srgb,var(--outline),transparent 40%); background: linear-gradient(135deg,var(--primary-soft),var(--surface-bright)); }
.saved-job-card h2 { font-size: 1.15rem; line-height: 1.7; overflow-wrap: anywhere; }
.saved-job-card .jobs-card__company { overflow-wrap: anywhere; }
.saved-job-card__facts { margin-block-start: 1rem; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.saved-job-card__fact { min-width: 0; display: flex; align-items: center; gap: .5rem; }
.saved-job-card__fact--location,.saved-job-card__fact--salary { grid-column: 1 / -1; }
.saved-job-card__fact-icon { display: grid; place-items: center; flex: none; width: 1.9rem; height: 1.9rem; border-radius: .55rem; background: var(--primary-soft); color: var(--primary-strong); }
.saved-job-card__fact-copy { display: grid; gap: .15rem; min-width: 0; overflow-wrap: anywhere; }
.saved-job-card__fact-copy small { color: var(--muted); font-size: .75rem; }
.saved-job-card__fact-copy strong { color: var(--ink); font-size: .84rem; font-weight: 650; line-height: 1.8; }
.job-location-link { color: var(--primary-strong); text-decoration: underline; text-decoration-color: color-mix(in srgb,var(--primary),transparent 55%); text-underline-offset: .2em; }
.job-location-link:is(:hover,:focus-visible) { text-decoration-color: currentColor; }
.saved-job-card__fact--salary { padding: .65rem; border: 1px solid color-mix(in srgb,var(--success-container),var(--success) 15%); border-radius: .75rem; background: color-mix(in srgb,var(--success-container),white 65%); }
.saved-job-card__fact--salary .saved-job-card__fact-icon { background: var(--success-container); color: var(--success-strong); }
.saved-job-card__fact--salary strong { color: var(--success-strong); font-weight: 750; }
.saved-job-card .jobs-card__saved-actions { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .5rem; margin-block-start: 0; padding-block-start: .85rem; border-block-start: 1px solid var(--outline); }
.saved-job-card .jobs-card__saved-actions .button { min-width: 0; min-height: 44px; padding-inline: .7rem; font-size: .82rem; }
.saved-job-card__remove { color: var(--danger); background: color-mix(in srgb,var(--danger-container),white 55%); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--danger),transparent 85%); }
.saved-job-card__remove:hover,.saved-job-card__remove:active { color: var(--danger); background: var(--danger-container); }
.saved-job-card__remove:focus-visible { outline-color: var(--danger); }
.jobs-empty-state { min-height: 18rem; padding: 2rem 1rem; display: grid; place-items: center; align-content: center; gap: .6rem; text-align: center; color: var(--muted); }
.jobs-empty-state > svg { color: var(--primary); }
.jobs-empty-state h3 { color: var(--ink); }
.jobs-pagination { margin-block-start: 1.2rem; min-height: 3rem; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: .7rem; }
.jobs-pagination > :first-child { justify-self: start; }
.jobs-pagination > :last-child { justify-self: end; }
.jobs-pagination__previous svg { transform: rotate(180deg); }
.jobs-pagination__pages { display: flex; align-items: center; justify-self: center; gap: .3rem; }
.jobs-pagination__pages a { width: 2.75rem; height: 2.75rem; display: grid; place-items: center; border-radius: .75rem; color: var(--muted-strong); font-weight: 800; }
.jobs-pagination__pages a[aria-current="page"] { background: var(--primary); color: white; box-shadow: 0 5px 14px hsl(var(--shadow) / .16); }
.public-job-page {
  --job-warm: #984417;
  --job-warm-bright: #c6571b;
  --job-warm-container: #ffeadc;
  --job-warm-soft: #fff8f2;
  --job-green: #216a46;
  --job-green-bright: #2f8158;
  --job-green-container: #e3f4e9;
  --job-green-soft: #f3faf6;
  padding: 1.2rem 1rem 3rem;
  background-color: #faf8fc;
  background-image: radial-gradient(circle at 82% 3%, rgb(109 74 232 / .075), transparent 25rem), radial-gradient(circle at 8% 18%, rgb(198 87 27 / .055), transparent 20rem);
}
.public-job-shell { width: min(100%,72rem); margin-inline: auto; }
.public-job-layout { display: grid; grid-template-columns: minmax(0,1fr) 18rem; gap: 1rem; align-items: start; }
.public-job-card { padding: 0; overflow: hidden; border-color: color-mix(in srgb,var(--primary),var(--outline) 82%); box-shadow: 0 10px 30px hsl(var(--shadow) / .08); }
.public-job-card__head { padding: 1.15rem 1rem; display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; border-block-end: 1px solid color-mix(in srgb,var(--primary),transparent 86%); background: linear-gradient(135deg,var(--surface-bright),color-mix(in srgb,var(--primary-soft),white 54%)); }
.public-job-card__icon { width: 3rem; height: 3rem; flex: none; border: 1px solid color-mix(in srgb,var(--primary),transparent 78%); border-radius: 1rem .55rem 1rem 1rem; background: var(--primary-soft); box-shadow: 0 4px 12px hsl(var(--shadow) / .07); }
.public-job-card h1 { font-size: clamp(1.4rem,2vw,2rem); margin-block: .55rem .3rem; }
.public-job-card p, .public-job-aside p { color: var(--muted); }
.public-job-description { padding-block: 0 1.1rem; }
.public-job-description h2 { margin-block-end: .7rem; font-size: 1rem; color: var(--on-primary-container); }
.public-job-position-detail,.public-job-common { position: relative; margin-inline: 1rem; padding: 1rem; border: 1px solid; border-inline-start-width: 3px; border-radius: 1rem; overflow: hidden; }
.public-job-position-detail { margin-block-start: 1rem; border-color: color-mix(in srgb,var(--job-warm-bright),white 61%); border-inline-start-color: var(--job-warm-bright); background-color: var(--job-warm-soft); background-image: linear-gradient(135deg,var(--job-warm-soft),#fffdfb); }
.public-job-common { margin-block: 1rem; border-color: color-mix(in srgb,var(--job-green-bright),white 63%); border-inline-start-color: var(--job-green-bright); background-color: var(--job-green-soft); background-image: linear-gradient(135deg,var(--job-green-soft),#fbfefc); }
.public-job-section-heading { margin-block-end: .7rem; display: grid; grid-template-columns: 2.5rem minmax(0,1fr); align-items: center; gap: .65rem; }
.public-job-section-heading__icon { width: 2.5rem; height: 2.5rem; display: grid; place-items: center; border: 1px solid currentColor; border-radius: .8rem .45rem .8rem .8rem; }
.public-job-position-detail .public-job-section-heading__icon { color: var(--job-warm); background: var(--job-warm-container); }
.public-job-common .public-job-section-heading__icon { color: var(--job-green); background: var(--job-green-container); }
.public-job-section-heading .eyebrow { font-size: .72rem; font-weight: 800; }
.public-job-position-detail .public-job-section-heading .eyebrow { color: var(--job-warm); }
.public-job-common .public-job-section-heading .eyebrow { color: var(--job-green); }
.public-job-section-heading h2 { margin-block-start: .12rem; font-size: 1.05rem; color: var(--ink); }
.public-job-description__text { max-inline-size: 68ch; line-height: 1.95; overflow-wrap: anywhere; }
.public-job-empty-note { max-inline-size: none; padding: .55rem .65rem; border-radius: .65rem; background: rgb(255 255 255 / .72); color: var(--muted-strong); font-size: .88rem; line-height: 1.8; }
.public-job-details { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,18rem),1fr)); gap: .65rem; padding-block-start: .75rem; border-block-start: 1px solid color-mix(in srgb,currentColor,transparent 82%); }
.public-job-position-facts { margin-block-start: .75rem; }
.public-job-common__text { margin-block-end: .75rem; }
.public-job-position-detail .public-job-details { color: var(--job-warm); }
.public-job-common .public-job-details { color: var(--job-green); }
.public-job-detail-card { min-width: 0; min-height: 5.35rem; padding: .68rem .75rem; display: grid; grid-template-columns: 2.4rem minmax(0,1fr); align-items: center; gap: .65rem; border: 1px solid color-mix(in srgb,currentColor,transparent 78%); border-radius: .85rem; background: rgb(255 255 255 / .86); box-shadow: 0 3px 10px hsl(var(--shadow) / .045); }
.public-job-detail-card__icon { width: 2.4rem; height: 2.4rem; display: grid; place-items: center; border-radius: .72rem .42rem .72rem .72rem; background: color-mix(in srgb,currentColor,white 86%); color: inherit; }
.public-job-detail-card h2 { margin-block: 0 .22rem; font-size: .82rem; color: var(--muted); }
.public-job-card .public-job-detail-card__value { color: var(--ink); font-size: .92rem; font-weight: 700; line-height: 1.7; overflow-wrap: anywhere; }
.public-job-detail-card__value--contact { display: grid; gap: .1rem; font-variant-numeric: tabular-nums; }
.public-job-phone-link { color: var(--primary); direction: ltr; unicode-bidi: isolate; text-decoration: underline; text-decoration-thickness: .08em; text-underline-offset: .22em; transition: color var(--duration-fast); }
@media (hover:hover) { .public-job-phone-link:hover { color: var(--primary-hover); } }

.public-job-aside { position: sticky; inset-block-start: 5.5rem; padding: 0; overflow: hidden; border-color: color-mix(in srgb,var(--job-green),var(--outline) 84%); box-shadow: 0 9px 26px hsl(var(--shadow) / .075); }
.public-job-aside__head { padding: 1rem; display: grid; grid-template-columns: 2.6rem minmax(0,1fr); align-items: start; gap: .65rem; border-block-end: 1px solid color-mix(in srgb,var(--job-green),transparent 82%); background: linear-gradient(135deg,var(--job-green-soft),var(--surface-bright)); }
.public-job-aside__head h2 { font-size: 1.02rem; color: var(--ink); }
.public-job-aside__head p { margin-block-start: .35rem; font-size: .82rem; line-height: 1.75; }
.public-job-aside__mark { width: 2.6rem; height: 2.6rem; display: grid; place-items: center; border-radius: .85rem .45rem .85rem .85rem; background: var(--job-green-container); color: var(--job-green); }
.official-links { display: grid; margin: 0; padding-inline: 0; }
.official-links a { min-height: 3rem; padding-inline: 1rem; display: flex; align-items: center; justify-content: space-between; border-block-start: 1px solid color-mix(in srgb,var(--outline),transparent 16%); color: var(--primary-strong); font-weight: 700; transition: background-color var(--duration-fast) ease-out,color var(--duration-fast) ease-out; }
.official-links a:first-child { border-block-start: 0; }
.public-job-channel__label { display: flex; align-items: center; gap: .55rem; }
.public-job-channel__label img { width: 1.45rem; height: 1.45rem; object-fit: contain; }
.public-job-aside__actions { padding: .7rem 1rem 1rem; display: grid; gap: .35rem; }
.public-job-aside__actions .button { width: 100%; }
@media (hover:hover) { .official-links a:hover { color: var(--primary); background: var(--primary-soft); } }

/* Public information pages and footer */
.public-info-page { min-height: calc(100dvh - 4.5rem); padding: 1.2rem 1rem 3rem; background: var(--surface); }
.public-info-shell { width: min(100%,84rem); margin-inline: auto; }
.public-info-hero { min-height: 18rem; padding: clamp(1.5rem,3.5vw,3rem); display: grid; grid-template-columns: minmax(0,1fr) 13rem; align-items: center; gap: 2rem; border-radius: 1.7rem .75rem 1.7rem 1.7rem; background: var(--on-primary-container); color: white; }
.public-info-hero__eyebrow { color: #cfc3f1; font-size: .82rem; font-weight: 800; }
.public-info-hero h1 { max-width: 19ch; margin-block: .55rem .7rem; font-size: clamp(1.9rem,3vw,3rem); line-height: 1.3; }
.public-info-hero p { max-width: 66ch; color: #e1d9ef; line-height: 1.9; }
.public-info-hero__mark { min-height: 10.5rem; padding: 1.2rem; display: grid; place-items: center; align-content: center; gap: .35rem; border: 1px solid rgba(255,255,255,.16); border-radius: 1.3rem; background: rgba(255,255,255,.09); text-align: center; }
.public-info-hero__mark svg { color: #c9b8ff; }
.public-info-hero__mark span { color: #ded5ef; font-size: .8rem; }
.public-info-hero__mark strong { font-size: 1.35rem; font-variant-numeric: tabular-nums; }
.public-info-grid { margin-block-start: 1rem; display: grid; grid-template-columns: minmax(0,1.45fr) minmax(17rem,.75fr); gap: 1rem; align-items: start; }
.public-info-copy { padding: 1.25rem; display: grid; grid-template-columns: 3rem minmax(0,1fr); gap: .9rem; }
.public-info-copy h2,.public-info-values h2,.public-info-coverage h2,.public-contact-card h2 { margin-block-end: .55rem; font-size: 1.2rem; }
.public-info-copy p,.public-info-values li,.public-info-coverage p,.public-contact-card p { color: var(--muted); line-height: 1.9; }
.public-info-copy p + p { margin-block-start: .75rem; }
.public-info-section-icon { width: 3rem; height: 3rem; display: grid; place-items: center; border-radius: 1rem .5rem 1rem 1rem; background: var(--primary-container); color: var(--primary); }
.public-info-values { padding: 1.25rem; }
.public-info-values ul { display: grid; gap: .2rem; list-style: none; padding: 0; }
.public-info-values li { min-height: 4.2rem; padding-block: .7rem; display: flex; align-items: flex-start; gap: .6rem; border-block-start: 1px solid var(--outline); }
.public-info-values li:first-child { border-block-start: 0; }
.public-info-values li svg { flex: 0 0 auto; margin-block-start: .3rem; color: var(--success); }
.public-info-values strong { display: block; color: var(--ink); }
.public-info-coverage { margin-block-start: 1rem; padding: 1.25rem; display: grid; grid-template-columns: minmax(14rem,.7fr) minmax(0,1.3fr); gap: 1.5rem; }
.public-info-coverage > div:first-child { display: grid; align-content: start; justify-items: start; }
.public-info-coverage h2 { margin-block-start: .7rem; }
.public-info-coverage__groups { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.public-info-coverage__groups > div { padding: 1rem; border-radius: 1rem; background: var(--surface); }
.public-info-coverage h3 { margin-block-end: .35rem; font-size: .95rem; }
.public-info-cta { margin-block-start: 1rem; padding: 1.3rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-radius: 1.2rem .55rem 1.2rem 1.2rem; background: var(--primary-container); }
.public-info-cta p { margin-block-start: .25rem; color: var(--muted); }
.public-info-cta > div:last-child { display: flex; gap: .5rem; }
.public-info-cta .button--ghost { color: var(--on-primary-container); }
.public-info-hero--contact { grid-template-columns: minmax(0,1fr) minmax(14rem,18rem); }
.public-info-phone { min-height: 10rem; padding: 1.2rem; display: grid; grid-template-columns: 3rem minmax(0,1fr); align-content: center; gap: .25rem .7rem; border: 1px solid rgba(255,255,255,.2); border-radius: 1.2rem; background: white; color: var(--on-primary-container); }
.public-info-phone > span { grid-row: span 2; width: 3rem; height: 3rem; display: grid; place-items: center; border-radius: 1rem; background: var(--primary-container); color: var(--primary); }
.public-info-phone small { align-self: end; color: var(--muted); }
.public-info-phone strong { font-size: 1.3rem; font-variant-numeric: tabular-nums; text-align: right; }
.public-contact-grid { margin-block-start: 1rem; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.public-contact-card { min-height: 17rem; padding: 1.2rem; display: grid; grid-template-columns: 3rem minmax(0,1fr); align-content: start; gap: .9rem; }
.public-contact-card p { min-height: 5.5rem; }
.public-contact-card .button { margin-block-start: .8rem; }
.public-contact-card__link { min-height: 3rem; margin-block-start: .8rem; padding-inline: .9rem; display: inline-flex; align-items: center; border-radius: .8rem; background: var(--primary-container); color: var(--on-primary-container); font-size: 1.15rem; font-weight: 850; font-variant-numeric: tabular-nums; }
.public-contact-channels { margin-block-start: 1rem; padding: 1.2rem; }

.site-footer { width: 100%; border-block-start: 4px solid var(--primary); background: #201047; color: #f9f6ff; }
.site-footer__inner { width: min(100% - 2rem,84rem); margin-inline: auto; padding-block: 3rem 2rem; display: grid; grid-template-columns: minmax(16rem,1.45fr) minmax(10rem,.7fr) minmax(10rem,.7fr) minmax(16rem,1fr); gap: clamp(1.5rem,3vw,3rem); align-items: start; }
.site-footer h2 { margin-block-end: .85rem; color: white; font-size: 1rem; }
.site-footer__brand { min-width: 0; }
.site-footer__logo { display: inline-flex; align-items: center; gap: .7rem; color: white; }
.site-footer__logo img { width: 2.9rem; height: 2.9rem; object-fit: contain; border-radius: .8rem; background: #6D4AE8; }
.site-footer__logo strong,.site-footer__logo small { display: block; }
.site-footer__logo strong { font-size: 1.35rem; }
.site-footer__logo small { margin-block-start: .1rem; color: #cfc4df; font-size: .72rem; }
.site-footer__brand > p { max-width: 47ch; margin-block: 1rem; color: #cfc7dc; line-height: 1.9; }
.site-footer__since { width: fit-content; min-height: 2.8rem; padding-inline: .75rem; display: inline-flex; align-items: center; gap: .5rem; border: 1px solid rgba(255,255,255,.14); border-radius: .8rem; background: rgba(255,255,255,.07); color: #ded6ea; font-size: .82rem; }
.site-footer__since svg { color: #bda9ff; }
.site-footer__since strong { color: white; font-variant-numeric: tabular-nums; }
.site-footer__nav ul { display: grid; list-style: none; padding: 0; }
.site-footer__nav a { min-height: 2.75rem; display: flex; align-items: center; justify-content: space-between; gap: .5rem; color: #cec5da; transition: color var(--duration-fast) ease-out,transform var(--duration-fast) ease-out; }
.site-footer__nav a svg { color: #8f79cf; }
@media (hover:hover) { .site-footer__nav a:hover { color: white; transform: translateX(-2px); } }
.site-footer__contact > p { color: #cfc7dc; line-height: 1.8; }
.site-footer__contacts { min-width:0; display:grid; gap:.5rem; margin-block:.8rem; }
.site-footer__contacts .site-footer__phone { margin:0; min-width:0; grid-column:auto; grid-row:auto; }
.site-footer__phone > span:last-child { min-width:0; }
.site-footer__phone strong { overflow-wrap:anywhere; }
.site-footer__phone--email strong { font-size:.88rem; }
.site-footer__phone:focus-visible { outline:3px solid #c6b5ff; outline-offset:3px; }
.site-footer__phone { min-height: 4.4rem; margin-block: .8rem; padding: .55rem; display: grid; grid-template-columns: 3rem minmax(0,1fr); align-items: center; gap: .65rem; border: 1px solid rgba(255,255,255,.16); border-radius: 1rem; background: rgba(255,255,255,.08); color: white; transition: background-color var(--duration-fast) ease-out,border-color var(--duration-fast) ease-out; }
@media (hover:hover) { .site-footer__phone:hover { border-color: #bca9fb; background: rgba(255,255,255,.12); } }
.site-footer__phone-icon { width: 3rem; height: 3rem; display: grid; place-items: center; border-radius: .85rem; background: var(--primary); color: white; }
.site-footer__phone small,.site-footer__phone strong { display: block; }
.site-footer__phone small { color: #cfc7dc; font-size: var(--text-xs); }
.site-footer__phone strong { margin-block-start: .1rem; font-size: 1.05rem; font-variant-numeric: tabular-nums; text-align: right; }
.site-footer__socials { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; }
.site-footer__social { --social-color:#8f79cf; width: 2.75rem; height: 2.75rem; padding: .55rem; display: grid; place-items: center; border: 1px solid color-mix(in srgb,var(--social-color),white 25%); border-radius: .8rem; background: rgba(255,255,255,.96); box-shadow: 0 .3rem .8rem rgba(6,2,20,.16); color: white; transition: border-color var(--duration-fast) ease-out,box-shadow var(--duration-fast) ease-out,transform var(--duration-fast) ease-out; }
.site-footer__social--telegram { --social-color:#229ed9; }.site-footer__social--rubika { --social-color:#7772f2; }.site-footer__social--bale { --social-color:#00a884; }.site-footer__social--eitaa { --social-color:#ed7c22; }.site-footer__social--instagram { --social-color:#d14b91; }
@media (hover:hover) { .site-footer__social:hover { border-color: var(--social-color); box-shadow: 0 .45rem 1rem color-mix(in srgb,var(--social-color),transparent 68%); transform: translateY(-2px); } }
.site-footer__social img { width: 1.5rem; height: 1.5rem; display: block; object-fit: contain; }
.site-footer__trust { width: min(100% - 2rem,84rem); margin-inline: auto; padding-block: 1.25rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-block-start: 1px solid rgba(255,255,255,.12); }
.site-footer__trust h2 { margin-block-end: .25rem; }
.site-footer__trust p { color: #bfb5ce; font-size: .8rem; }
.site-footer__licenses { width: min(100%,38rem); display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .55rem; }
.site-footer__license { width: 100%; min-height: 7.2rem; padding: .5rem .4rem; display: grid; grid-template-rows: minmax(4.8rem,1fr) auto; place-items: center; gap: .3rem; border: 1px solid rgba(255,255,255,.3); border-radius: .85rem; background: white; color: var(--ink); box-shadow: 0 .35rem 1rem rgba(6,2,20,.14); font-size: .66rem; line-height: 1.45; text-align: center; transition: border-color var(--duration-fast) ease-out,transform var(--duration-fast) ease-out; }
.site-footer__license img { width: 100%; height: 4.8rem; display: block; object-fit: contain; }
.site-footer__seal-media { width: 100%; height: 4.8rem; display: grid; place-items: center; }
.site-footer__seal-media > * { grid-area: 1 / 1; }
.site-footer__seal-unavailable { color: var(--muted); font-size: .75rem; }
.site-footer__seal-unavailable[hidden] { display: none; }
.site-footer__license.is-unavailable img { visibility: hidden; }
@media (hover:hover) { .site-footer__license:hover { border-color: #bba8fb; transform: translateY(-2px); } }
.site-footer__license-placeholder { min-width: 15rem; min-height: 4rem; padding: .65rem .8rem; display: flex; align-items: center; gap: .65rem; border: 1px dashed rgba(255,255,255,.22); border-radius: .9rem; color: #d6cce3; }
.site-footer__license-placeholder svg { flex: 0 0 auto; color: #bda9ff; }
.site-footer__license-placeholder strong,.site-footer__license-placeholder small { display: block; }
.site-footer__license-placeholder strong { color: white; font-size: .8rem; }
.site-footer__license-placeholder small { margin-block-start: .15rem; color: #bfb5ce; font-size: .68rem; }
.site-footer__bottom { width: min(100% - 2rem,84rem); min-height: 4rem; margin-inline: auto; padding-block: .75rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-block-start: 1px solid rgba(255,255,255,.12); color: #afa5bd; font-size: .76rem; }
.site-footer__coverage { display: inline-block; min-height: 44px; padding-block: .65rem; color: inherit; text-decoration: underline; text-underline-offset: .25em; line-height: 1.8; }
.site-footer__coverage:hover { color: #fff; }

.toast-region { position: fixed; z-index: 1400; inset-block-end: max(1.2rem,env(safe-area-inset-bottom,0px)); inset-inline-start: max(1.2rem,env(safe-area-inset-right,0px)); display: grid; gap: .6rem; }
.toast { background: var(--ink); color: white; padding: .65rem .8rem; border-radius: .8rem; box-shadow: 0 6px 18px rgba(0,0,0,.18); animation: toast-in .25s ease-out both; }
.flash-stack { position: fixed; z-index: 1400; inset-block-start: max(1rem,env(safe-area-inset-top,0px)); inset-inline-start: max(1rem,env(safe-area-inset-right,0px)); width: min(28rem, calc(100% - 2rem)); display: grid; gap: .6rem; }
.flash { min-height: 3.25rem; padding: .35rem .45rem .35rem .85rem; border-radius: .8rem; display: flex; align-items: center; gap: .55rem; background: var(--info-container); color: var(--info); box-shadow: 0 6px 18px hsl(var(--shadow) / .12); transition: opacity 180ms ease-out,transform 180ms ease-out; }
.flash--success { background: var(--success-container); color: var(--success-strong); }
.flash--error { background: var(--danger-container); color: var(--danger); }
.flash--warning { background: var(--warning-container); color: var(--warning-strong); }
.flash > svg { flex: none; }
.flash > span { min-width: 0; flex: 1; line-height: 1.7; }
.flash__close { width: 2.75rem; min-width: 2.75rem; min-height: 2.75rem; padding: 0; border: 0; border-radius: 50%; background: transparent; color: currentColor; cursor: pointer; display: grid; place-items: center; }
.flash__close:hover { background: color-mix(in srgb,currentColor,transparent 90%); }
.flash.is-leaving { opacity: 0; transform: translateY(-.35rem); }
@keyframes toast-in { from { opacity: 0; transform: translateY(8px); } }

@media (max-width: 76rem) {
  :root { --sidebar: 13.5rem; }
  .summary-band { grid-template-columns: 1.35fr repeat(3, .9fr); }
  .summary-item { padding-inline: .7rem; }
  .summary-item__icon { display: none; }
  .accounts-layout { grid-template-columns: 1fr; }
  .account-card { position: static; }
  .dossier-layout { grid-template-columns: 1fr; }
  .dossier-aside { position: static; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: start; }
  .dossier-aside .dossier-card:last-child { grid-column: span 3; }
  .personnel-management-layout { grid-template-columns: 1fr; }
  .personnel-management-layout .staff-editor-panel { position: static; grid-row: 1; }
  .staff-editor-form { grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: .85rem; }
  .staff-editor-form > .form-error-summary,.staff-editor-form > .plain-fieldset,.staff-editor-form > .switch-row,.staff-editor-form > .field-error,.staff-editor-form > .button { grid-column: 1 / -1; }
}

@media (max-width: 64rem) {
  body.has-open-sidebar { overflow: hidden; }
  .app-sidebar { transform: translateX(110%); transition: transform var(--duration) cubic-bezier(.2,.8,.2,1); box-shadow: -12px 0 34px rgba(20,12,35,.14); }
  .app-sidebar.is-open { transform: translateX(0); }
  .sidebar-backdrop.is-visible { display: block; }
  .mobile-menu-button { display: inline-flex; }
  .app-main { margin-inline-start: 0; padding-block-start: 4.2rem; }
  .page-header { padding-inline-start: 3.2rem; }
  .analytics-grid { grid-template-columns: 1fr; }
  .analytics-side { grid-template-columns: 1fr 1fr; }
  .hero__inner,.home-hero .hero__inner { grid-template-columns: 1fr; }
  .home-hero h1 { font-size: clamp(2.15rem,5vw,2.8rem); }
  .hero-paths { width: min(100%,48rem); margin-inline: auto; }
  .public-menu-toggle { display: grid; }
  .public-nav { display: none; position: absolute; inset-block-start: calc(100% + .65rem); inset-inline: 0; z-index: 1010; padding: .65rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .3rem; border: 1px solid var(--outline); border-radius: 1rem; background: var(--surface-bright); box-shadow: 0 14px 34px hsl(var(--shadow) / .18); }
  .public-nav.is-open { display: grid; }
  .public-nav a { min-height: 2.75rem; padding-inline: .7rem; display: flex; align-items: center; border-radius: .7rem; }
  .public-nav a:hover,.public-nav a[aria-current="page"] { background: var(--primary-container); }
  .jobs-filter-panel { grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); }
  .jobs-filter-actions { align-self: stretch; }
  .jobs-filter-actions .button { flex: 1; }
  .jobs-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .dossier-aside { grid-template-columns: 1fr 1fr; }
  .dossier-aside .dossier-card:last-child { grid-column: span 2; }
  .account-fields-grid { grid-template-columns: 1fr 1fr; }
  .support-request-row { grid-template-columns: minmax(13rem,1fr) 8rem 7.5rem 15rem; }
  .support-request-row .queue-actions { width: 15rem; }
  .publication-queue-row { grid-template-columns: minmax(12rem,1fr) 7rem 7.5rem 6rem 9rem; }
  .publication-action-state { width: 9rem; }
  .site-footer__inner { grid-template-columns: minmax(0,1.25fr) minmax(9rem,.65fr) minmax(9rem,.65fr); }
  .site-footer__contact { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0,1fr) minmax(15rem,.55fr); gap: .35rem 1rem; align-items: center; }
  .site-footer__contact h2,.site-footer__contact > p { grid-column: 1; }
  .site-footer__contacts { grid-column: 2; grid-row: 1 / span 2; margin: 0; }
  .site-footer__socials { grid-column: 1 / -1; }
  .footer-settings-fields { grid-template-columns: 1fr 1fr; }
  .footer-settings-intro { grid-column: 1 / -1; }
}

@media (max-width: 48rem) {
  :root { --space-public-section: 1.5rem; }
  body { font-size: .9375rem; }
  .app-main { padding-inline: .85rem; }
  .table-wrap:has(.responsive-table) { overflow: visible; }
  .responsive-table { display: block; min-width: 0; }
  .responsive-table thead { display: none; }
  .responsive-table tbody { display: grid; gap: .65rem; padding: .65rem; }
  .responsive-table tr { display: grid; padding: .55rem .7rem; border: 1px solid var(--outline); border-radius: .8rem; background: white; }
  .responsive-table td { padding: .48rem 0; border-block-start: 1px solid var(--outline); display: flex; align-items: center; justify-content: space-between; gap: .8rem; text-align: left; }
  .responsive-table td:first-child { border-block-start: 0; }
  .responsive-table td::before { content: attr(data-label); color: var(--muted); font-size: .76rem; font-weight: 700; text-align: right; }
  .responsive-table td > * { max-width: 70%; }
  .responsive-table .queue-actions { justify-content: flex-end; }
  .responsive-table .order-action-cell,.responsive-table .order-file-cell { width: auto; }
  .responsive-table .order-action-placeholder { min-width: 0; }
  .page-header { display: grid; gap: .9rem; }
  .page-title { font-size: 1.65rem; }
  .page-actions, .page-actions .button { width: 100%; }
  .jalali-calendar { position: fixed; inset-block: auto max(.75rem,env(safe-area-inset-bottom,0px)); inset-inline: .75rem; width: auto; max-height: calc(100dvh - 1.5rem - env(safe-area-inset-bottom,0px)); overflow-y: auto; }
  .range-form { display: grid; grid-template-columns: minmax(0,1fr) auto; }
  .range-form .select { width: 100%; min-width: 0; }
  .range-form .button { width: auto; }
  .filter-bar { align-items: stretch; flex-direction: column; }
  .filter-field, .filter-field:first-child { width: 100%; min-width: 0; }
  .filter-bar .button { width: 100%; }
  .compact-summary, .report-summary { grid-template-columns: 1fr 1fr; }
  .compact-summary > div:last-child, .report-summary > div:last-child { grid-column: 1 / -1; }
  .report-grid, .dossier-workspace { grid-template-columns: 1fr; }
  .ad-image-studio { grid-template-columns: 1fr; }
  .ad-image-preview { position: static; }
  .ad-image-job-label { align-items: stretch; flex-direction: column; }
  .ad-image-job-label .button { width: 100%; }
  .ad-image-badge-options { grid-template-columns: 1fr; }
  .image-template-picker__grid { grid-template-columns: 1fr; }
  .ad-image-actions { grid-template-columns: 1fr; }
  .instagram-publication-workspace { grid-template-columns: 1fr; }
  .instagram-publication-preview { min-height: 0; }
  .instagram-publication-actions { display: grid; grid-template-columns: 1fr; }
  .instagram-publication-actions .button { width: 100%; }
  .instagram-publication-facts { grid-template-columns: 1fr; }
  .ad-image-steps li { padding-inline: .35rem; font-size: .76rem; }
  .image-archive-filter { grid-template-columns: 1fr; }
  .image-archive-grid { grid-template-columns: 1fr; }
  .image-archive__head { align-items: stretch; flex-direction: column; }
  .image-archive__head .button { width: 100%; }
  .image-archive-pagination a,.image-archive-pagination span { min-width: 2.75rem; min-height: 2.75rem; }
  .image-template-management { grid-template-columns: 1fr; }
  .template-layout-editor__workspace { grid-template-columns: 1fr; }
  .template-layout-editor__intro { display: grid; }
  .template-layout-editor__intro > .status { justify-self: start; }
  .template-layout-actions { grid-template-columns: 1fr; }
  .image-template-library__grid { grid-template-columns: 1fr; }
  .dossier-aside { grid-template-columns: 1fr; }
  .dossier-aside .dossier-card:last-child { grid-column: auto; }
  .channel-tabs { overflow: visible; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .post-preview { min-height: 0; }
  .publication-run__head { align-items: flex-start; flex-wrap: wrap; }
  .guide-grid, .public-job-layout { grid-template-columns: 1fr; }
  .official-channel-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .official-channel-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
  .local-faq__items { grid-template-columns: 1fr; }
  .public-job-aside { position: static; }
  .jobs-archive-hero { align-items: flex-start; }
  .jobs-archive-hero__count { min-width: 7.5rem; }
  .jobs-filter-panel { grid-template-columns: 1fr; }
  .jobs-filter-actions, .jobs-filter-actions .button { width: 100%; }
  .jobs-results__head { align-items: flex-start; }
  .jobs-card-grid { grid-template-columns: 1fr; }
  .active-ad__top { display: grid; }
  .progress-track { overflow: visible; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .2rem; }
  .progress-step { min-width: 0; gap: .38rem; font-size: .72rem; line-height: 1.35; }
  .progress-step__dot { width: 1.8rem; height: 1.8rem; }
  .ad-facts { grid-template-columns: 1fr; }
  .ad-fact + .ad-fact { border-inline-start: 0; border-block-start: 1px solid var(--outline); }
  .active-ad__actions, .support-band, .form-actions { flex-direction: column; align-items: stretch; }
  .active-ad__actions .button, .support-band .button, .form-actions .button { width: 100%; }
  .ad-list-row { grid-template-columns: 2.7rem minmax(0,1fr) auto; }
  .ad-list-row .status { grid-column: 2; }
  .form-layout { grid-template-columns: 1fr; }
  .help-panel { position: static; grid-row: 2; }
  .stepper { width: 100%; min-width: 0; grid-template-columns: repeat(3, minmax(0,1fr)); }
  .stepper__item { min-height: 3.4rem; gap: .3rem; padding-inline: .25rem; font-size: .75rem; }
  .stepper__number { width: 1.65rem; height: 1.65rem; flex: none; }
  .stepper__label-full { display: none; }
  .stepper__label-short { display: inline; }
  .method-group { grid-template-columns: 1fr 1fr; }
  .simple-ad-grid { grid-template-columns: 1fr; }
  .identity-fields, .two-fields, .bank-card { grid-template-columns: 1fr; }
  .tariff-grid { grid-template-columns: 1fr; }
  .management-layout, .profile-layout { grid-template-columns: 1fr; }
  .staff-editor-form { grid-template-columns: 1fr; }
  .editor-panel, .profile-card { position: static; }
  .person-row { grid-template-columns: 3rem minmax(0,1fr) auto; }
  .person-row > :nth-child(3), .person-row > :nth-child(4) { display: none; }
  .connection-row { grid-template-columns: 3rem minmax(0,1fr); }
  .connection-row code { grid-column: 2; width: 100%; min-width: 0; word-break: break-all; }
  .connection-row__actions { grid-column: 1 / -1; justify-content: space-between; width: 100%; }
  .integration-overview { grid-template-columns: 1fr; }
  .integration-arrow { display: none; }
  .summary-band { grid-template-columns: 1fr 1fr; }
  .summary-primary { grid-column: 1 / -1; }
  .summary-item { min-height: 4.75rem; border-block-start: 1px solid var(--outline); }
  .summary-item:last-child { grid-column: 1 / -1; }
  .analytics-side { grid-template-columns: 1fr; }
  .revenue-chart { height: 14rem; }
  .policy-action-row { grid-template-columns: 1fr; }
  .policy-action-row > .button { width: 100%; }
  .settings-card__grid { grid-template-columns: 1fr; }
  .settings-card__actions .button { width: 100%; }
  .segmented { grid-template-columns: 1fr; }
  .account-fields-grid { grid-template-columns: 1fr; }
  .account-card__actions { align-items: stretch; flex-direction: column; }
  .account-card__actions .button { width: 100%; }
  .pricing-grid { grid-template-columns: 1fr; }
  .pricing-panel__actions { align-items: stretch; flex-direction: column; }
  .pricing-panel__actions .button { width: 100%; }
  .account-row { grid-template-columns: minmax(0,1fr) auto; }
  .account-row > :nth-child(2), .account-row > :nth-child(3), .account-row > :nth-child(4) { display: none; }
  .queue-row { min-height: 0; grid-template-columns: 1fr; gap: .45rem; padding: .7rem .8rem; }
  .queue-row .page-subtitle { margin-block-start: .1rem; }
  .queue-row .channel-statuses { gap: .3rem; margin-block-start: .2rem; }
  .queue-row .queue-actions { margin-block-start: .05rem; }
  .support-request-row .support-phone, .support-request-row > .status, .publication-date, .publication-status, .publication-dossier-link, .publication-action-state { justify-self: start; text-align: right; }
  .support-request-row .queue-actions, .publication-action-state { width: auto; justify-content: flex-start; }
  .work-queue__hint { display: none; }
  .job-layout { grid-template-columns: 1fr; }
  .public-section__head { align-items: flex-start; flex-direction: column; }
  .public-section__head .button { white-space: nowrap; }
  .coverage-grid { grid-template-columns: 1fr; }
  .public-header__inner { width: min(100% - 1rem, 84rem); gap: .35rem; }
  .public-brand { margin-inline-end: 0; font-size: 1.05rem; }
  .public-header__actions { gap: .25rem; }
  .public-header__actions .button { min-width: 0; padding-inline: .7rem; }
  .public-header__actions .button--primary { padding-inline: .6rem; font-size: .78rem; white-space: nowrap; gap: .25rem; }
  .home-stories__inner { width: 100%; padding: .7rem .85rem; grid-template-columns: 1fr; gap: .55rem; }
  .home-stories__heading { display: flex; align-items: center; justify-content: space-between; gap: .7rem; }
  .home-stories__heading h2 { font-size: .92rem; }
  .home-stories__heading p { margin-block-start: 0; font-size: .68rem; }
  .home-stories__track { margin-inline: -.35rem; padding-inline: .35rem; gap: .65rem; }
  .home-story-card { width: 5.5rem; min-width: 5.5rem; min-height: 6.15rem; }
  .home-story-card__media { width: 4.5rem; height: 4.5rem; flex-basis: 4.5rem; }
  .home-story-card__label { font-size: .7rem; }
  .hero { padding: 2.15rem .85rem 2.75rem; }
  .hero h1 { font-size: clamp(2.15rem,10vw,2.75rem); text-align: center; margin-inline: auto; }
  .home-hero h1 { max-width: 22ch; white-space: normal; text-wrap: balance; }
  .hero__lead { margin-block: .8rem 1.25rem; text-align: center; }
  .search-box { grid-template-columns: 1fr; border-radius: 1.5rem; }
  .search-field + .search-field { border-inline-start: 0; border-block-start: 1px solid var(--outline); }
  .search-box .button { width: 100%; }
  .hero-location-links { justify-content: center; }
  .hero__all-jobs { margin-inline: auto; }
  .hero-paths { margin-block-start: .45rem; }
  .job-row { grid-template-columns: 3rem minmax(0,1fr) auto; }
  .employer-callout { align-items: stretch; flex-direction: column; }
  .employer-callout > div { grid-template-columns: auto minmax(0,1fr); }
  .employer-callout .button { width: 100%; }
  .public-info-hero,.public-info-hero--contact { grid-template-columns: 1fr; }
  .public-info-hero__mark,.public-info-phone { min-height: 0; }
  .public-info-grid,.public-info-coverage { grid-template-columns: 1fr; }
  .public-contact-grid { grid-template-columns: 1fr; }
  .public-contact-card { min-height: 0; }
  .public-contact-card p { min-height: 0; }
  .public-info-cta { align-items: stretch; flex-direction: column; }
  .site-footer__inner { grid-template-columns: 1fr 1fr; }
  .site-footer__brand,.site-footer__contact { grid-column: 1 / -1; }
  .site-footer__contact { display: block; }
  .site-footer__contacts { margin-block: .8rem; }
  .site-footer__trust { align-items: flex-start; flex-direction: column; }
  .site-footer__licenses { width: 100%; }
  .footer-settings-fields,.footer-channel-grid,.footer-license-grid { grid-template-columns: 1fr; }
  .footer-settings-intro,.footer-channel-grid .field:last-child:nth-child(odd),.footer-license-editor:last-child:nth-child(odd) { grid-column: auto; }
}

@media (min-width: 701px) and (max-width: 1100px) {
  .image-archive-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .home-story-card { transition: none; }
  .home-story-card:hover { transform: none; }
  .hero-path { transition: none; }
  .image-archive-card__preview img { transition: none; }
  .image-archive-card__preview:hover img { transform: none; }
}

@media (max-width: 34rem) {
  .template-layout-editor { padding: .65rem; }
  .template-layout-layer-list { grid-template-columns: 1fr; }
  .template-layout-step { grid-template-columns: 1fr; }
  .public-brand span { display: none; }
  .public-menu-toggle { margin-inline-end: auto; }
  .public-header { height: 4.5rem; }
  .public-header__inner { flex-wrap: nowrap; }
  .public-header__actions { margin-inline-start: 0; }
  .public-header__actions > .button { white-space: nowrap; font-size: .82rem; padding-inline: .45rem; }
  .public-header__actions .button--primary > svg { display: none; }
  .public-header__actions .public-account-link { font-size: .82rem; white-space: nowrap; padding-inline: .55rem; }
  .public-account-link > svg { display: none; }
  .public-nav { grid-template-columns: 1fr; }
  .home-story-dialog__shell { width: 100vw; height: 100dvh; margin: 0; transform: none; }
  .home-story-viewer { height: 100dvh; aspect-ratio: auto; border: 0; border-radius: 0; }
  .home-story-dialog__close { inset-block-start: 2.75rem; inset-inline-end: .65rem; }
  .home-story-dialog__nav { inset-block-start: 52%; background: rgba(27,16,48,.58); }
  .home-story-dialog__nav--previous { right: .45rem; }
  .home-story-dialog__nav--next { left: .45rem; }
  .home-story-viewer__stage { margin-inline: 2.2rem; }
  .hero-paths { border-radius: 1.2rem; }
  .hero-path { min-height: 4.75rem; padding-inline: .8rem; grid-template-columns: 2.4rem minmax(0,1fr) 2.75rem; gap: .55rem; }
  .hero-path__icon { width: 2.3rem; height: 2.3rem; }
  .hero-path__action { grid-column: auto; min-height: 2.75rem; }
  .confirm-modal { width: calc(100% - 1rem); max-height: calc(100dvh - 1rem); border-radius: 1rem; }
  .confirm-modal__actions { padding-block-end: max(1rem,env(safe-area-inset-bottom,0px)); align-items: stretch; flex-direction: column; }
  .confirm-modal__actions .button { width: 100%; }
  .jobs-archive-page { padding-inline: .65rem; }
  .jobs-archive-hero { min-height: 0; display: grid; }
  .jobs-archive-hero__count { width: 100%; min-width: 0; grid-template-columns: auto 1fr; justify-content: start; justify-items: start; align-items: center; gap: .5rem; }
  .jobs-archive-hero__count span { margin-block-start: 0; }
  .jobs-results__head { display: grid; }
  .jobs-pagination { grid-template-columns: 1fr auto 1fr; }
  .jobs-pagination .button { min-width: 0; padding-inline: .7rem; }
  .method-button { min-height: 3rem; font-size: .88rem; }
  .ad-form { padding: 1rem; }
  .voice-recorder { padding: .9rem; }
  .voice-actions, .voice-actions .button { width: 100%; }
  .management-summary { grid-template-columns: 1fr 1fr; }
  .management-summary > div:first-child { grid-column: 1 / -1; }
  .permission-grid { grid-template-columns: 1fr; }
  .compact-summary, .report-summary { grid-template-columns: 1fr; }
  .compact-summary > div:last-child, .report-summary > div:last-child { grid-column: auto; }
  .dossier-contact-fields { grid-template-columns: 1fr; }
  .tariff-field { grid-template-columns: 1fr; }
  .run-actions .button, .mini-actions .button { flex: 1; }
  .public-info-page { padding-inline: .65rem; }
  .public-info-hero { padding: 1.15rem; border-radius: 1.25rem .55rem 1.25rem 1.25rem; }
  .public-info-coverage__groups { grid-template-columns: 1fr; }
  .public-info-cta > div:last-child { display: grid; }
  .site-footer__inner { grid-template-columns: 1fr; padding-block: 2rem 1.25rem; }
  .site-footer__brand,.site-footer__contact { grid-column: auto; }
  .site-footer__trust,.site-footer__bottom { align-items: stretch; flex-direction: column; }
  .site-footer__bottom { justify-content: center; text-align: center; }
  .site-footer__licenses { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .site-footer__license { width: 100%; }
  .site-footer__license-placeholder { grid-column: 1 / -1; min-width: 0; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
.jobs-archive-hero__actions,.jobs-card__saved-actions { display: flex; flex-wrap: wrap; gap: .45rem; margin-block-start: .85rem; }
.jobs-archive-hero:not(.employer-hero) .jobs-archive-hero__actions .button { color: white; }
.jobs-archive-hero:not(.employer-hero) .jobs-archive-hero__actions .button--outline { box-shadow: inset 0 0 0 1.5px white; }
.jobs-archive-hero:not(.employer-hero) .jobs-archive-hero__actions .button:is(:hover,:focus-visible) { background: white; color: var(--on-primary-container); }
.jobs-archive-hero:not(.employer-hero) .jobs-archive-hero__actions .button:focus-visible { outline-color: white; }
.jobs-archive-hero:not(.employer-hero) .jobs-archive-hero__actions .button:active { background: var(--primary-container); color: var(--on-primary-container); }
.jobs-archive-hero + .jobs-results { margin-block-start: 1.25rem; }
.public-job-positions { margin: 1rem; padding: .75rem; border: 1px solid color-mix(in srgb,var(--job-warm-bright),white 62%); border-radius: 1rem; background: linear-gradient(135deg,var(--job-warm-soft),var(--surface-bright)); }
.public-job-positions__head { margin-block-end: .6rem; display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.public-job-positions__label { color: var(--ink); font-size: .82rem; font-weight: 800; }
.public-job-positions__count { flex: none; padding: .2rem .5rem; border-radius: 999px; background: var(--job-warm-container); color: var(--job-warm); font-size: .72rem; font-weight: 750; white-space: nowrap; }
.public-job-positions__list { min-width: 0; display: flex; flex-wrap: wrap; gap: .45rem; }
.public-position-chip { min-width: 0; min-height: 2.75rem; padding: .42rem .82rem; border: 1px solid var(--outline); border-radius: .75rem; background: var(--surface-bright); color: var(--ink); box-shadow: 0 1px 3px hsl(var(--shadow) / .04); font-size: .8rem; white-space: nowrap; }
.public-position-chip[aria-current="page"] { border-color: var(--job-warm-bright); background: var(--job-warm-container); color: var(--job-warm); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--job-warm-bright),transparent 74%); }
.public-position-chip[aria-current="page"]::before { content: ""; width: .38rem; height: .38rem; flex: none; border-radius: 50%; background: var(--job-warm-bright); }
.public-job-toolbar { margin: 1rem; display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; }
.public-job-tool { min-width: 9.5rem; min-height: 2.75rem; inline-size: 9.5rem; justify-content: flex-start; padding: .34rem .4rem .34rem .72rem; border: 1px solid var(--outline); border-radius: .85rem; background: var(--surface-bright); color: var(--ink); box-shadow: 0 2px 8px hsl(var(--shadow) / .06); font-size: .82rem; }
.public-job-tool > span:last-child { white-space: nowrap; flex: 1; text-align: center; }
.public-job-tool__icon { width: 2rem; height: 2rem; display: grid; flex: none; place-items: center; border-radius: .58rem; background: var(--primary-soft); color: var(--primary); }
.public-job-tool--save { border-color: color-mix(in srgb,var(--primary),transparent 65%); background: var(--primary-soft); color: var(--primary-strong); }
.public-job-tool--share { background: var(--surface-bright); color: var(--primary-strong); }
.public-job-tool[data-save-job] { border-color: color-mix(in srgb,var(--primary),transparent 65%); }
.public-job-tool[data-save-job] .public-job-tool__icon { background: var(--primary-container); }
.public-job-tool.is-active { border-color: var(--primary); background: var(--primary); color: var(--on-primary); }
.public-job-tool.is-active .public-job-tool__icon { background: rgb(255 255 255 / .16); color: var(--on-primary); }
@media (hover:hover) {
  .public-position-chip:hover { transform: none; border-color: color-mix(in srgb,var(--job-warm-bright),transparent 42%); background: var(--job-warm-soft); color: var(--job-warm); }
  .public-job-tool:hover { transform: none; border-color: color-mix(in srgb,var(--primary),transparent 40%); background: var(--surface-soft); color: var(--on-primary-container); }
  .public-job-tool[data-save-job]:hover { background: var(--primary-container); color: var(--primary-strong); }
  .public-job-tool[data-save-job].is-active:hover { border-color: var(--primary-hover); background: var(--primary-hover); color: var(--on-primary); }
}
.public-job-tool[data-save-job].is-active:focus-visible { border-color: var(--primary-hover); background: var(--primary-hover); color: var(--on-primary); }
.public-job-card__head > div { min-width: 0; }
.public-job-employer-row { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem .85rem; margin-block-start: .5rem; }
.public-employer-link { display: inline-grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .5rem; max-inline-size: 100%; min-height: 44px; padding: .45rem .6rem; border: 1px solid color-mix(in srgb,var(--primary),white 76%); border-radius: .75rem; background: var(--primary-soft); color: var(--primary-strong); text-decoration: none; transition: background-color var(--duration-fast),border-color var(--duration-fast); }
.public-employer-link__copy { display: grid; gap: .1rem; min-width: 0; }
.public-employer-link strong { font-size: .85rem; overflow-wrap: anywhere; }
.public-employer-link small { color: var(--primary-strong); font-size: .75rem; line-height: 1.6; }
.public-employer-link:hover,.public-employer-link:active { background: var(--primary-container); border-color: var(--primary); }
.public-job-header-location { display: inline-flex; align-items: flex-start; gap: .3rem; min-width: 0; max-inline-size: 100%; color: var(--muted); font-size: .85rem; overflow-wrap: anywhere; }
.public-job-header-location > svg { flex: none; margin-block-start: .15rem; }
.related-jobs { margin-block-start: 1.5rem; }
.public-job-report { margin-block-start: 1rem; padding: 1rem; display: grid; grid-template-columns: minmax(14rem,.75fr) minmax(20rem,1.25fr); gap: 1rem; border-color: color-mix(in srgb,var(--primary),white 70%); background-color: var(--primary-soft); background-image: linear-gradient(135deg,var(--primary-soft),var(--surface-bright)); box-shadow: 0 7px 22px hsl(var(--shadow) / .06); }
.public-job-report > div { display: flex; align-items: flex-start; gap: .7rem; }
.public-job-report__icon { width: 2.5rem; height: 2.5rem; display: grid; flex: none; place-items: center; border-radius: .8rem .45rem .8rem .8rem; background: var(--primary-container); color: var(--primary-strong); }
.public-job-report h2 { margin: 0; font-size: 1.05rem; }
.public-job-report p { color: var(--muted); }
.public-job-report form { display: grid; grid-template-columns: minmax(10rem,.65fr) minmax(12rem,1fr) auto; align-items: end; gap: .5rem; }
.public-job-report .field { margin: 0; }
.public-job-report__submit { border: 1px solid var(--primary); background: var(--surface-bright); color: var(--primary-strong); box-shadow: 0 2px 8px hsl(var(--shadow) / .05); }
@media (hover:hover) { .public-job-report__submit:hover { border-color: var(--primary-strong); background: var(--primary-container); color: var(--primary-strong); } }
.location-directory { margin-block: 1rem 2rem; }
.location-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .65rem; }
.location-card { min-height: 5.5rem; display: grid; grid-template-columns: 2.7rem minmax(0,1fr) auto; align-items: center; gap: .65rem; padding: .85rem; color: inherit; transition: transform .18s ease,border-color .18s ease; }
.location-card:hover { transform: translateY(-2px); border-color: var(--primary); }
.location-card__icon { width: 2.6rem; height: 2.6rem; display: grid; place-items: center; border-radius: .8rem; color: var(--primary); background: var(--primary-soft); }
.location-card span:nth-child(2) { display: grid; gap: .15rem; }
.location-card small { color: var(--muted); }
.employer-hero { border: 1px solid color-mix(in srgb,var(--primary),transparent 76%); background-color: var(--surface-bright); background-image: linear-gradient(135deg,var(--primary-soft),var(--surface-bright) 72%); color: var(--ink); box-shadow: 0 10px 28px hsl(var(--shadow) / .08); }
.employer-hero::after { border-color: color-mix(in srgb,var(--primary),transparent 92%); }
.employer-hero .jobs-archive-hero__eyebrow { color: var(--primary-strong); }
.employer-hero h1 { color: var(--on-primary-container); }
.employer-hero p { color: var(--muted); }
.employer-hero .jobs-archive-hero__count { border-color: color-mix(in srgb,var(--primary),transparent 72%); background: var(--surface-bright); color: var(--primary-strong); backdrop-filter: none; box-shadow: 0 4px 14px hsl(var(--shadow) / .07); }
.employer-hero .jobs-archive-hero__count span { color: var(--muted); }

@media (max-width: 64rem) {
  .settings-card__grid--three,.location-card-grid { grid-template-columns: 1fr 1fr; }
  .template-picker,.order-request-form,.request-review-form,.public-job-report,.public-job-report form { grid-template-columns: 1fr; }
  .report-effectiveness { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 48rem) {
  .notification-item { grid-template-columns: 2.5rem minmax(0,1fr); }
  .notification-item form,.notification-item > .button { grid-column: 2; justify-self: start; }
  .settings-card__grid--three,.location-card-grid,.report-effectiveness { grid-template-columns: 1fr; }
  .template-picker .button,.order-request-form .button,.support-band__form,.support-band__form .button { width: 100%; }
  .support-band__form { display: grid; }
  .version-list summary { display: grid; }
  .request-review-form > div { flex-wrap: wrap; }
  .public-job-report { padding: .85rem; }
}
@media (max-width: 34rem) {
  .public-job-positions { padding: .65rem; }
  .public-job-positions__list { gap: .4rem; }
  .public-position-chip { flex: 1 1 auto; justify-content: center; }
  .public-job-toolbar .button { flex: 1; min-width: 0; padding-inline: .4rem .6rem; }
}

/* Compact home opening: preserve the approved desktop layout. */
@media (max-width: 1120px) {
  .home-hero { padding-block: 1.4rem; }
  .home-hero .hero__inner { gap: 1rem; }
  .home-hero h1 { white-space: normal; text-wrap: balance; }
  .home-hero .hero-paths { margin-block-start: 0; }
  .home-hero .hero-paths__list { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; }
  .home-hero .hero-path { grid-template-columns: 2rem minmax(0,1fr); min-height: 4.5rem; padding-inline: .6rem; gap: .4rem; border-block-end: 0; }
  .home-hero .hero-path + .hero-path { border-inline-start: 1px solid var(--outline); }
  .home-hero .hero-path__action { display: none; }
  .home-hero .hero-path__copy small { display: none; }
}
@media (max-width: 640px) {
  .home-stories__inner { padding-block: 1rem .4rem; gap: .5rem; }
  .home-stories__heading { justify-content: center; text-align: center; }
  .home-stories__heading p { display: none; }
  .home-story-card { width: 5.5rem; min-width: 5.5rem; min-height: 4.9rem; }
  .home-story-card__media { width: 3.25rem; height: 3.25rem; flex-basis: 3.25rem; }
  .home-hero { padding: 1rem .85rem; }
  .home-hero h1 { max-width: 25ch; font-size: clamp(1.4rem,6.2vw,1.6rem); }
  .home-hero .hero__lead { margin-block: .45rem .7rem; font-size: .84rem; line-height: 1.7; }
  .home-hero .search-field,.home-hero .search-box .button { min-height: 2.75rem; }
  .home-hero .hero-location-links { gap: .25rem; margin-block-start: .45rem; }
  .home-hero .hero-location-links a { padding-inline: .45rem; }
  .home-hero .hero-path { display: flex; flex-direction: column; justify-content: center; gap: .2rem; padding-block: .35rem; text-align: center; }
  .home-hero .hero-path__icon { width: 1.7rem; height: 1.7rem; }
  .home-hero .hero-path__copy strong { font-size: .72rem; line-height: 1.65; }
}

@media (max-width: 640px) {
  #jobs.public-section { padding-block-start: 1rem; }
  #jobs .public-section__head { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .6rem; align-items: center; margin-block-end: .65rem; }
  #jobs .public-section__head h2 { font-size: 1.05rem; line-height: 1.65; }
  #jobs .public-section__head .page-subtitle { font-size: .72rem; }
  #jobs .public-section__head .button { padding-inline: .65rem; font-size: .75rem; }
}

/* Homepage spacing: section boundaries share a total gap instead of doubling it. */
.home-page .home-hero { padding-block: 32px 20px; }
.home-page #jobs { padding-block-start: 20px; }
.home-page #coverage { padding-block-end: 20px; }
.home-page #guide { padding-block-start: 20px; }
.home-page .official-channels,.home-page .local-faq { margin-block-start: 32px; }
.home-page .official-channels__head { margin-block-end: 16px; }
.home-page .coverage-grid,.home-page .guide-grid { gap: 16px; }
.home-page .local-faq__items { gap: 12px; }
@media (max-width: 640px) {
  .home-page .home-hero { padding-block: 16px; }
  .home-page #jobs { padding-block-start: 16px; }
  .home-page #jobs .public-section__head { margin-block-end: 12px; }
}

/* Public opportunity cards: share the saved-card visual language. */
.public-listing-card h2,.public-listing-card h3 { display: block; min-height: 0; overflow: visible; -webkit-line-clamp: unset; font-size: 1.15rem; line-height: 1.7; overflow-wrap: anywhere; }
.public-listing-card__positions { margin-block-start: .65rem; min-block-size: 1.8em; line-height: 1.8; color: var(--muted); font-size: .8rem; }
@media (max-width: 48rem) { .public-listing-card__positions:empty { display: none; } }
.public-listing-card__actions { padding-block-start: .85rem; border-block-start: 1px solid var(--outline); }
.public-listing-card__actions .button { width: 100%; min-height: 44px; font-size: .85rem; }
.job-row__mobile-label { display: none; }
@media (max-width: 640px) {
  #jobs .job-row { grid-template-columns: 2.8rem minmax(0,1fr); align-items: start; row-gap: 12px; }
  #jobs .job-row > .button { grid-column: 1 / -1; width: 100%; min-height: 44px; }
  #jobs .job-row__mobile-label { display: inline; }
}
