/* Nabolagsbytte design system: compact, mobile-first and recognisably ours. */
:root {
  --nb-ink: #102d2c;
  --nb-muted: #60706f;
  --nb-brand: #17665d;
  --nb-brand-strong: #0d4943;
  --nb-mint: #e8f4ef;
  --nb-sand: #f6f3eb;
  --nb-accent: #e5a93d;
  --nb-line: #d9dfdc;
  --nb-card: #ffffff;
  --nb-radius: 18px;
  --nb-shadow: 0 10px 32px rgb(16 45 44 / .08);
}

#profile-skills .inline-help {
  display: inline;
  color: var(--nb-muted);
  font-size: .76em;
  font-weight: 500;
  line-height: 1.3;
}

#profile-skills .skill-description-field > span {
  display: block;
  margin-bottom: 5px;
}

@media (max-width: 360px) {
  #profile-skills .inline-help { font-size: .7em; }
}

/* Product experience: fast choices, clear hierarchy and compact interaction. */
.next-card { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:16px; }
.next-card > div { min-width:0; }
.next-card small { display:block; margin-bottom:5px; color:var(--nb-brand); font-size:.72rem; font-weight:850; letter-spacing:.13em; }
.next-card strong { display:block; font-size:clamp(1.1rem,2.4vw,1.35rem); line-height:1.2; }
.next-card p { margin:7px 0 0; }
.next-card-icon { display:grid; place-items:center; width:48px; height:48px; border-radius:15px; background:#fff; color:var(--nb-brand-strong); font-size:1.2rem; font-weight:850; box-shadow:0 5px 18px rgb(16 45 44 / .08); }
.category-picker { display:flex; gap:8px; margin-bottom:14px; overflow-x:auto; scrollbar-width:none; }
.category-picker::-webkit-scrollbar { display:none; }
.category-picker button { flex:0 0 auto; display:grid; place-items:center; gap:4px; min-width:82px; min-height:72px; padding:9px 12px; border:1px solid var(--nb-line); border-radius:14px; background:#fff; color:var(--nb-ink); font:inherit; font-size:.78rem; font-weight:750; }
.category-picker button span { font-size:1.25rem; color:var(--nb-brand); }
.category-picker button[aria-pressed="true"] { border-color:var(--nb-brand); background:var(--nb-mint); color:var(--nb-brand-strong); box-shadow:inset 0 0 0 1px var(--nb-brand); }
.proposal-form { position:relative; display:grid; grid-template-columns:1fr auto 1fr; gap:10px; margin-top:14px; padding:16px; border:1px solid var(--nb-line); border-radius:16px; background:var(--nb-mint); }
.proposal-heading,.proposal-form details,.proposal-form .fair-hint,.proposal-form .status,.proposal-form .error,.proposal-form > button { grid-column:1/-1; }
.proposal-heading { display:flex; justify-content:space-between; gap:12px; }
.proposal-heading span,.fair-hint { color:var(--nb-muted); font-size:.82rem; }
.proposal-swap { align-self:end; padding-bottom:16px; color:var(--nb-brand); font-weight:850; }
.proposal-form label { margin:0; }
.proposal-form select { min-width:0; }
.proposal-form details textarea { width:100%; margin-top:8px; }
.quick-replies { display:flex; grid-column:1/-1; gap:7px; margin-bottom:4px; overflow-x:auto; }
.quick-replies button { flex:0 0 auto; min-height:36px; padding:6px 11px; border:1px solid var(--nb-line); border-radius:999px; background:#fff; color:var(--nb-brand-strong); font:inherit; font-size:.78rem; font-weight:750; }
.notification-cta { display:block; margin-top:4px; color:var(--nb-brand); font-size:.78rem; }
.exchange-modes { margin-top:28px; }
.exchange-modes h2 { margin-top:3px; font-size:1.3rem; }
.mode-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.mode-grid button { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; gap:2px 9px; min-width:0; padding:14px; text-align:start; border:1px solid var(--nb-line); border-radius:16px; background:#fff; color:var(--nb-ink); font:inherit; box-shadow:0 6px 18px rgb(16 45 44 / .05); }
.mode-grid button > span { grid-row:1/3; display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:var(--nb-mint); color:var(--nb-brand); }
.mode-grid strong { font-size:.9rem; }
.mode-grid small { color:var(--nb-muted); line-height:1.3; }
.create-dialog { width:min(520px,calc(100% - 24px)); padding:0; border:0; border-radius:24px; }
.create-dialog::backdrop { background:rgb(8 34 32 / .48); backdrop-filter:blur(3px); }
.create-dialog-body { padding:22px; }
.dialog-heading { display:flex; align-items:start; justify-content:space-between; }
.dialog-heading h2 { margin:3px 0 18px; }
.icon-button { display:grid; place-items:center; width:42px; height:42px; border:0; border-radius:50%; background:#eef3f0; font:inherit; font-size:1.4rem; }
.create-choices { display:grid; gap:10px; }
.create-choices button { display:grid; grid-template-columns:48px 1fr; gap:2px 13px; padding:15px; text-align:start; border:1px solid var(--nb-line); border-radius:16px; background:#fff; color:var(--nb-ink); font:inherit; }
.create-choices button > span { grid-row:1/3; display:grid; place-items:center; width:48px; height:48px; border-radius:14px; background:var(--nb-mint); color:var(--nb-brand); font-size:1.25rem; }
.create-choices strong { align-self:end; }.create-choices small { color:var(--nb-muted); }
.exchange-progress { grid-template-columns:repeat(4,1fr); }
.availability-toggle { align-items:flex-start; padding:13px; border-radius:13px; background:var(--nb-mint); }
.availability-toggle span { display:grid; gap:3px; }.availability-toggle small { color:var(--nb-muted); }
.help-now-badge { display:inline-flex; width:max-content; margin:0 0 8px; padding:6px 10px; border-radius:999px; background:#daf4df; color:#195e31; font-size:.75rem; font-weight:850; }

/* Human needs are the primary way into discovery. Colour makes them easy to scan. */
.home-needs { margin:26px 0 24px; }
.needs-heading,.explore-needs-heading { display:flex; align-items:end; justify-content:space-between; gap:14px; }
.needs-heading h2 { margin:3px 0 12px; }
.needs-heading .text-button,.explore-needs-heading .text-button { flex:0 0 auto; min-height:44px; padding:6px 2px; color:var(--nb-brand); font-weight:750; }
.explore-needs-heading { align-items:center; margin:14px 0 9px; }
.need-strip { display:flex; gap:10px; margin-inline:-2px; padding:2px 2px 8px; overflow-x:auto; scroll-snap-type:x proximity; scrollbar-width:none; }
.need-strip::-webkit-scrollbar { display:none; }
.home-category-groups { display:grid; max-width:100%; min-width:0; gap:12px; overflow:hidden; }
.home-category-row { max-width:100%; min-width:0; overflow:hidden; }
.home-category-row h3 { margin:0 0 5px; font-size:.9rem; }
.home-category-row .need-strip { width:100%; max-width:100%; margin-inline:0; }
.home-category-row .need-card { min-width:148px; min-height:78px; grid-template-columns:30px minmax(0,1fr); align-items:center; align-content:center; gap:8px; padding:10px; }
.home-category-row .need-card span { width:30px; height:30px; }
.home-category-row .need-card strong { min-width:0; font-size:.78rem; line-height:1.15; overflow-wrap:normal; word-break:normal; hyphens:none; white-space:normal; }
.need-card { --need-bg:#e7f4ee; --need-accent:#17665d; display:grid; align-content:center; justify-items:start; gap:9px; min-width:132px; min-height:112px; padding:14px; border:0; border-radius:17px; background:var(--need-bg); color:var(--nb-ink); text-align:start; font:inherit; box-shadow:0 7px 20px rgb(16 45 44 / .06); scroll-snap-align:start; cursor:pointer; }
.need-card span { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; background:rgb(255 255 255 / .76); color:var(--need-accent); font-size:1.25rem; }
.need-card strong { font-size:.88rem; line-height:1.25; }
.need-card[aria-pressed="true"] { outline:3px solid var(--need-accent); outline-offset:-3px; }
.need-repair,.need-tools { --need-bg:#fff0d8; --need-accent:#a76010; }
.need-moving,.need-transport { --need-bg:#e5efff; --need-accent:#315eaa; }
.need-cleaning,.need-language { --need-bg:#f2e8fa; --need-accent:#775195; }
.need-tech,.need-homework { --need-bg:#e2f3f6; --need-accent:#216b79; }
.need-children,.need-sewing { --need-bg:#fde7e4; --need-accent:#a94e45; }
.need-pets,.need-activity { --need-bg:#edf1d8; --need-accent:#617322; }
.need-errands,.need-cooking { --need-bg:#ffeadf; --need-accent:#a9542b; }
.need-other { --need-bg:#eeeae4; --need-accent:#5f6764; }
.category-dialog { width:min(680px,calc(100% - 24px)); max-height:min(82vh,760px); padding:0; overflow:auto; border:0; border-radius:24px; color:var(--nb-ink); }
.category-dialog::backdrop { background:rgb(8 34 32 / .5); backdrop-filter:blur(3px); }
.category-dialog-body { padding:22px; }
.category-dialog .dialog-heading h2 { margin-bottom:16px; }
.need-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.need-grid .need-card { width:100%; min-width:0; }
@media (max-width:700px) {
  .next-card { grid-template-columns:auto 1fr; }.next-card > button { grid-column:1/-1; width:100%; }
  .mode-grid { grid-template-columns:repeat(2,1fr); }
  .proposal-form { grid-template-columns:1fr; }.proposal-form > * { grid-column:1!important; }.proposal-swap { justify-self:center; padding:0; transform:rotate(90deg); }
  .need-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .category-dialog-body { padding:18px; }
  .need-grid .need-card { min-height:102px; padding:12px; }
}

/* 2026 polish: a quieter, denser hierarchy shared by every product view. */
:root {
  --nb-text-xs: .75rem;
  --nb-text-sm: .875rem;
  --nb-text-body: 1rem;
  --nb-text-card: 1.0625rem;
  --nb-text-section: 1.25rem;
  --nb-text-page: clamp(1.65rem, 4vw, 2rem);
  --nb-radius-field: 12px;
  --nb-radius-button: 13px;
  --nb-radius-card: 18px;
  --nb-shadow-soft: 0 6px 22px rgb(16 45 44 / .055);
}
.exchange-page {
  font-size: var(--nb-text-body);
  line-height: 1.48;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
.exchange-page p,
.exchange-page dd,
.exchange-page li { max-width: 64ch; }
.exchange-page p { font-weight: 400; }
.exchange-page .muted,
.exchange-page small,
.exchange-page form small { color: var(--nb-muted); font-size: var(--nb-text-sm); font-weight: 400; }
.exchange-page h1,
.exchange-page .panel h1,
.exchange-page .hero h1 { font-size: var(--nb-text-page); line-height: 1.12; letter-spacing: -.032em; }
.exchange-page h2 { font-size: var(--nb-text-section); line-height: 1.24; letter-spacing: -.018em; }
.exchange-page h3 { font-size: var(--nb-text-card); line-height: 1.3; }
.exchange-page strong,
.exchange-page b { font-weight: 700; }
.eyebrow { font-size: var(--nb-text-xs); font-weight: 750; letter-spacing: .17em; }

.hero,
.panel,
.person-card,
.skill-item,
.exchange-card,
.exchange-detail,
.profile-card,
.notification-card,
.install-card {
  border-radius: var(--nb-radius-card);
  box-shadow: var(--nb-shadow-soft);
}
.person-card,
.skill-item,
.exchange-card { padding: 16px; }
.profile-card { padding: 18px; }
.chip,
.trust-summary > span { font-size: var(--nb-text-xs); font-weight: 600; }
/* Early-launch profiles start without history. Keep score and email state
   internal until the community is large enough for those signals to help. */
.person-detail .trust-summary > span:nth-child(2),
.person-detail .trust-summary > span:nth-child(3) { display: none; }
.person-detail .chips .chip[role="button"] {
  cursor: pointer;
  border: 1px solid transparent;
  transition: border-color .15s ease, transform .15s ease;
}
.person-detail .chips .chip[role="button"]:hover,
.person-detail .chips .chip[role="button"]:focus-visible {
  border-color: var(--nb-accent);
  outline: 2px solid transparent;
  transform: translateY(-1px);
}
.exchange-offer-options {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-top: 14px;
  padding: 14px;
  border-radius: 14px;
  background: var(--nb-mint);
}
.exchange-choice-list,
#exchange-summary,
#exchange-detail { min-width: 0; max-width: 100%; }
.exchange-offer-options legend { font-weight: 700; padding: 0 4px; }
.exchange-choice-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.exchange-choice-list label { margin: 0; cursor: pointer; }
.exchange-choice-list input { position: absolute; opacity: 0; pointer-events: none; }
.exchange-choice-list span {
  display: block;
  padding: 9px 13px;
  border: 1px solid var(--nb-line);
  border-radius: 999px;
  background: #fff;
}
.exchange-choice-list input:checked + span {
  color: #fff;
  border-color: var(--nb-brand-strong);
  background: var(--nb-brand-strong);
}
.exchange-choice-list input:focus-visible + span { outline: 3px solid var(--nb-accent); }

.button {
  min-height: 46px;
  border-radius: var(--nb-radius-button);
  padding: 9px 16px;
  font-size: .9375rem;
  font-weight: 700;
  box-shadow: none;
}
.button.primary { box-shadow: 0 4px 12px rgb(23 102 93 / .13); }
.text-button { font-size: .9rem; font-weight: 550; }
.actions { gap: 9px; }
.safety-actions.action-menu {
  position: relative;
  width: 100%;
  margin-top: 10px;
  border-top: 1px solid var(--nb-line);
  padding-top: 10px;
  color: var(--nb-muted);
}
.safety-actions.action-menu summary { width: max-content; min-height: 44px; display: flex; align-items: center; cursor: pointer; font-size: .875rem; }
.safety-actions.action-menu > div { display: flex; gap: 12px; }

input,
select,
textarea {
  min-height: 48px;
  border-radius: var(--nb-radius-field);
  border-color: #b7c0bd;
  padding: 10px 12px;
  font-size: 1rem;
}
form label { gap: 6px; margin-block: 13px; font-size: .9375rem; font-weight: 650; }
input:hover,
select:hover,
textarea:hover { border-color: #84938f; }
input:focus,
select:focus,
textarea:focus { border-color: var(--nb-brand); box-shadow: 0 0 0 3px rgb(23 102 93 / .11); }

.empty {
  display: grid;
  justify-items: start;
  gap: 5px;
  min-height: 116px;
  margin: 10px 0;
  padding: 20px;
  border: 1px dashed #bdc9c5;
  border-radius: var(--nb-radius-card);
  background: rgb(255 255 255 / .62);
  color: var(--nb-muted);
}
.empty::before {
  content: "◇";
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 11px;
  background: var(--nb-mint);
  color: var(--nb-brand);
  font-size: 1.1rem;
}
.empty strong { color: var(--nb-ink); font-size: var(--nb-text-card); }
.empty p { margin: 0; }

@media (max-width:700px) {
  html,
  body.exchange-page,
  .exchange-page .site-header,
  .exchange-page main,
  #app { width: 100%; max-width: none; }
  .exchange-page .header-inner,
  .is-authenticated .header-inner { min-height: 68px; padding: 7px 16px; }
  .brand-symbol { width: 38px; height: 38px; }
  .brand-lockup strong { font-size: .68rem; letter-spacing: .11em; }
  .brand-lockup small { font-size: .46rem; }
  .language-menu summary,
  .header-session { min-height: 42px; padding: 6px 10px; font-size: .9rem; }
  #app > .panel,
  #app > .panel:not(#home-panel),
  #home-panel { min-height: calc(100dvh - 68px); padding: 20px 18px 58px; }
  #app > .panel:not(#home-panel) > h1,
  #home-panel .home-heading h1,
  #profile-panel > h1 { margin-bottom: 16px; font-size: clamp(1.55rem, 6.6vw, 1.82rem); }
  .home-section-title { font-size: 1.08rem; margin-bottom: 10px; }
  #home-panel .next-card { margin: 13px 0 22px; padding: 16px; border-radius: 18px; box-shadow: var(--nb-shadow-soft); }
  .home-shortcuts { gap: 9px; }
  .home-shortcuts button { min-height: 112px; padding: 14px; box-shadow: var(--nb-shadow-soft); }
  .home-shortcuts button > strong { font-size: .95rem; }
  .home-shortcuts button > span:last-child { font-size: .78rem; }
  .mode-grid button { min-height: 84px; box-shadow: var(--nb-shadow-soft); }
  #explore-panel .search { padding: 13px; box-shadow: var(--nb-shadow-soft); }
  #explore-panel .person-card,
  #exchange-list .exchange-card,
  #conversation-list .exchange-card,
  .exchange-detail,
  #profile-panel .profile-card,
  .skill-item { padding: 15px; border-radius: 17px; box-shadow: var(--nb-shadow-soft); }
  .exchange-detail h2 { font-size: 1.35rem; }
  .agreement-state { padding: 12px; }
  .meeting-summary span { padding: 12px; }
  .profile-pane > form { padding: 14px; box-shadow: var(--nb-shadow-soft); }
  #profile-account .account-summary,
  #profile-account #profile-install,
  #profile-account > .account-export,
  #profile-account > details,
  #profile-account > .danger-zone { padding: 14px; box-shadow: var(--nb-shadow-soft); }
  .app-tabs { inset-inline: 14px; bottom: calc(8px + env(safe-area-inset-bottom)); box-shadow: 0 8px 26px rgb(16 45 44 / .16); }
  .exchange-page .app-tabs button,
  .app-tabs button { min-height: 55px; font-size: .7rem; }
  .app-tabs button[aria-selected="true"] { min-height: 55px; }
  .exchange-page main { padding-bottom: calc(118px + env(safe-area-inset-bottom)); }
  .results { gap: 10px; }
  .empty { min-height: 104px; padding: 16px; }
}

.exchange-page { background: var(--nb-sand); color: var(--nb-ink); }
.exchange-page .site-header {
  background: rgb(255 255 255 / .96);
  border-bottom: 1px solid var(--nb-line);
  box-shadow: 0 2px 14px rgb(16 45 44 / .05);
}
.exchange-page .header-inner { max-width: 1180px; min-height: 74px; }
.brand-symbol { border-radius: 12px; box-shadow: 0 5px 15px rgb(13 73 67 / .18); }
.language-menu summary,
.header-session { border-color: var(--nb-line); border-radius: 12px; background: #fff; }
.header-session { color: var(--nb-brand-strong); }
.exchange-page main { max-width: 1180px; padding-top: 20px; }

.hero,
.panel {
  border: 1px solid var(--nb-line);
  border-radius: var(--nb-radius);
  background: var(--nb-card);
  box-shadow: var(--nb-shadow);
}
.hero { padding: clamp(30px, 5vw, 68px); }
.hero h1,
.panel h1 {
  max-width: 20ch;
  color: var(--nb-ink);
  font-size: clamp(2.2rem, 4.7vw, 4.25rem);
  line-height: 1.04;
  letter-spacing: -.045em;
}
.panel h1 { font-size: clamp(2rem, 3.6vw, 3.35rem); }
.eyebrow { color: var(--nb-brand); font-size: .73rem; letter-spacing: .2em; }
.lead { color: var(--nb-muted); line-height: 1.55; }
.button { border-radius: 12px; transition: transform .16s ease, box-shadow .16s ease, background .16s ease; }
.button.primary { background: var(--nb-brand); border-color: var(--nb-brand); box-shadow: 0 6px 16px rgb(23 102 93 / .17); }
.button.primary:hover { background: var(--nb-brand-strong); transform: translateY(-1px); }
.button.secondary { border-color: var(--nb-line); background: #fff; }

.front-examples { margin: 20px 0; }
.front-examples span { border: 0; border-radius: 12px; background: var(--nb-mint); padding: 10px 14px; }
.front-actions .button { min-width: 210px; }
.front-flow,
.front-value { border: 0; border-radius: 14px; background: var(--nb-mint); }
.front-flow { max-width: 700px; margin-top: 24px; }
.front-offer { gap: 16px; }
.front-offer article {
  border: 1px solid var(--nb-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 6px 20px rgb(16 45 44 / .055);
}
.front-offer article > span { background: var(--nb-mint); color: var(--nb-brand-strong); }
.front-live-total,
.front-live-cities { border-radius: 14px; background: var(--nb-mint); }
.front-live {
  padding: 22px;
  border: 1px solid var(--nb-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 24px rgb(16 45 44 / .07);
}
.front-live > .eyebrow { margin-top: 0; font-weight: 800; }
.front-live-total { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 10px; }
.front-live-total > div { min-width: 0; padding: 14px; border-radius: 11px; background: #fff; }
.front-live-total strong { display: block; color: var(--nb-brand-strong); font-size: 2rem; line-height: 1; }
.front-live-total span { display: block; margin-top: 7px; color: var(--nb-muted); line-height: 1.3; }
.front-live-cities { padding: 10px; }
.front-live-city { display: flex; gap: 10px; padding: 12px; border-radius: 11px; background: #fff; }
.front-live-city > span { color: var(--nb-brand); font-size: 1.25rem; }
.front-live-city div { display: grid; gap: 3px; min-width: 0; }
.front-live-city small { color: var(--nb-muted); }
.front-live-categories span { border: 0; border-radius: 999px; background: #eef4f2; color: var(--nb-brand-strong); font-size: .9rem; font-weight: 700; }
.signup-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:14px 0 20px; padding:0; list-style:none; }
.signup-steps li { display:grid; justify-items:center; gap:5px; color:var(--nb-muted); font-size:.78rem; text-align:center; }
.signup-steps strong { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--nb-mint); color:var(--nb-brand-strong); }
.invite-context { display:grid; gap:5px; margin:12px 0; padding:14px; border-radius:13px; background:var(--nb-mint); border-inline-start:4px solid var(--nb-brand); }
.invite-context[hidden] { display:none; }
.invite-context span { color:var(--nb-muted); }
.offer-share-row { display:inline-flex; align-items:stretch; margin:0 8px 8px 0; border-radius:999px; background:var(--nb-mint); overflow:hidden; }
.offer-share-row .chip { margin:0; border-radius:999px 0 0 999px; }
.share-offer { min-width:48px; padding:6px 10px; border:0; border-inline-start:1px solid #cad8d3; background:#f5f8f7; color:var(--nb-brand-strong); font:inherit; font-size:.78rem; font-weight:800; cursor:pointer; }
.person-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:10px; }
.person-actions .button { width:100%; margin:0; }
.share-status { position:fixed; z-index:100; inset:auto 20px 22px auto; padding:12px 16px; border-radius:12px; background:var(--nb-brand-strong); color:#fff; box-shadow:var(--nb-shadow); font-weight:800; }
.share-status[hidden] { display:none; }
.compact-person-card .person-open { grid-template-columns:auto minmax(0,1fr) auto; align-items:center; }
.person-quick-actions { display:flex; align-self:start; gap:6px; }
.person-quick-actions button { display:grid; place-items:center; width:42px; height:42px; padding:0; border:1px solid var(--nb-line); border-radius:50%; background:#fff; color:var(--nb-brand-strong); font-size:1.25rem; cursor:pointer; }
.person-quick-actions button:hover { background:var(--nb-mint); }
.saved-discovery-group { padding:10px 0; }
.saved-discovery-group + .saved-discovery-group { border-top:1px solid var(--nb-line); }
.saved-discovery-group h3 { display:flex; align-items:center; justify-content:space-between; margin:0 0 8px; font-size:1rem; }
.saved-discovery-group h3 span { display:grid; place-items:center; min-width:26px; height:26px; padding:0 7px; border-radius:99px; background:var(--nb-mint); font-size:.8rem; }
.saved-discovery-items { display:grid; gap:6px; }
.saved-discovery-item { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; padding:7px 8px 7px 12px; border:1px solid var(--nb-line); border-radius:12px; background:#fff; }
.saved-discovery-item > span { display:grid; min-width:0; }
.saved-discovery-item small { color:var(--nb-muted); }
.saved-discovery-item > button:last-child { flex:0 0 36px; width:36px; height:36px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--danger, #8a3d38); font-size:1.35rem; cursor:pointer; }
.saved-discovery-item > button:last-child:hover { background:#fff1ef; }
.saved-discovery-link { overflow:hidden; padding:6px 0; border:0; background:transparent; color:var(--nb-ink); font:inherit; font-weight:700; text-align:left; text-overflow:ellipsis; white-space:nowrap; cursor:pointer; }
.saved-discovery-more { margin-top:8px; }
.saved-discovery-more summary { color:var(--nb-brand-strong); font-weight:700; cursor:pointer; }
.saved-discovery-more .saved-discovery-items { margin-top:8px; }
.results-heading { margin:22px 4px 8px; }
.results-heading .eyebrow { margin:0 0 5px; }
.results-heading h2 { margin:0; font-size:1.2rem; }
.category-group + .category-group { margin-top:22px; padding-top:18px; border-top:1px solid var(--nb-line); }
.category-group h3 { margin:0 0 10px; font-size:1.05rem; }

@media (min-width:701px) {
  :root { --max:1180px; }
  .exchange-page main,
  .exchange-page .header-inner {
    width:min(calc(100% - 2rem),1180px);
    max-width:1180px;
  }
  .home-category-row .need-strip {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    -webkit-mask-image:none;
    mask-image:none;
    overflow:visible;
  }
  .home-category-row .need-card { width:100%; min-width:0; }
}
.compact-person-card .person-detail { padding-top:14px; }
.person-bio { margin:0 0 12px; color:var(--nb-muted); }
.person-availability { margin:0 0 14px; }
.profile-skill-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:8px 0 16px; }
.profile-skill-group { min-width:0; padding:14px; border-radius:14px; background:#f3f7f5; }
.profile-skill-group h3 { margin:0 0 10px; font-size:.86rem; letter-spacing:.04em; text-transform:uppercase; }
.profile-skill-group .chips { display:flex; flex-wrap:wrap; gap:7px; }
.profile-skill-group .chip { margin:0; padding:7px 10px; border:0; border-radius:999px; background:#fff; }
.profile-skill-group details { margin-top:8px; }
.profile-skill-group summary { color:var(--nb-brand-strong); font-size:.84rem; font-weight:800; cursor:pointer; }
.profile-skill-group details .chips { margin-top:8px; }
.propose-main { width:100%; }
.search-empty .actions { justify-content:center; margin-top:14px; }

.app-tabs {
  top: 8px;
  overflow: hidden;
  border: 1px solid var(--nb-line);
  border-radius: 16px;
  background: rgb(255 255 255 / .96);
  box-shadow: var(--nb-shadow);
}
.app-tabs button { border-color: var(--nb-line); }
.app-tabs button[aria-selected="true"] { background: var(--nb-brand); }
.next-card,
.match-card,
.profile-card,
.notification-card,
.agreement-state { border: 0; border-radius: 15px; background: var(--nb-mint); }
.quick-grid button,
.person-card,
.skill-item,
.exchange-card {
  border: 1px solid var(--nb-line);
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 5px 18px rgb(16 45 44 / .05);
}
input,
select,
textarea { border-color: #aeb9b5; border-radius: 11px; background: #fff; }
details.account-export { border-color: var(--nb-line); }
.profile-tabs { border-color: var(--nb-line); }
.profile-tabs button[aria-selected="true"] { border-color: var(--nb-brand); color: var(--nb-brand-strong); }
.chip { background: var(--nb-mint); }
.install-card,
.connection-status { border: 0; border-radius: 14px; box-shadow: var(--nb-shadow); }

@media (min-width: 701px) {
  #welcome.hero { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); column-gap: 42px; }
  #welcome > .eyebrow,
  #welcome > h1,
  #welcome > .lead,
  #welcome > .front-examples,
  #welcome > .front-actions,
  #welcome > .front-flow { grid-column: 1; }
  #welcome > .front-offer { grid-column: 1 / -1; }
  #welcome > .front-live { grid-column: 1 / -1; }
}

@media (max-width: 700px) {
  .exchange-page .site-header { position: sticky; top: 0; z-index: 30; }
  .exchange-page .header-inner { min-height: 64px; padding: 7px 16px; }
  .brand-symbol { width: 40px; height: 40px; }
  .brand-lockup strong { font-size: .7rem; }
  .brand-lockup small { font-size: .48rem; }
  .language-menu summary,
  .header-session { min-height: 44px; padding-inline: 11px; }
  .exchange-page main { padding: 10px 12px calc(90px + env(safe-area-inset-bottom)); }
  .hero,
  .panel { margin-block: 8px; padding: 22px 20px; border-radius: 16px; }
  .hero h1,
  .panel h1 { max-width: 100%; margin: 8px 0 13px; font-size: clamp(2rem, 10vw, 2.65rem); line-height: 1.04; letter-spacing: -.045em; }
  .lead { font-size: 1.06rem; line-height: 1.48; }
  .front-examples { flex-wrap: nowrap; overflow-x: auto; margin: 17px -20px 18px; padding: 0 20px 4px; scrollbar-width: none; }
  .front-examples::-webkit-scrollbar { display: none; }
  .front-examples span { flex: 0 0 auto; font-size: .83rem; }
  .front-actions { display: grid; gap: 9px; }
  .front-actions .button { width: 100%; min-width: 0; }
  .front-flow { margin: 18px 0 0; padding: 15px; }
  .front-offer { grid-template-columns: 1fr; gap: 11px; margin-top: 14px; }
  .front-offer article { display: grid; grid-template-columns: 42px 1fr; gap: 0 12px; padding: 15px; }
  .front-offer article > span { grid-row: 1 / span 2; width: 42px; height: 42px; }
  .front-offer h2 { margin: 1px 0 4px; font-size: 1rem; }
  .front-offer p { font-size: .9rem; line-height: 1.42; }
  .front-value { margin-top: 12px; padding: 15px; }
  .front-live { margin-top: 16px; padding: 17px; }
  .front-live h2 { margin-bottom: 13px; font-size: 1.35rem; line-height: 1.2; }
  .front-live-grid { grid-template-columns: 1fr; }
  .front-live-cities { grid-template-columns: 1fr; }
  .front-live-total > div { padding: 12px; }
  .front-live-total strong { font-size: 1.75rem; }
  .front-live-total span { font-size: .86rem; }
  .front-live-categories { gap: 7px; }
  .front-live-categories span { padding: 7px 11px; font-size: .82rem; }
  .signup-steps { gap:4px; }
  .person-actions { grid-template-columns:1fr 1fr; }
  .person-actions .share-profile { grid-column:1/-1; }
  .share-status { inset:auto 16px calc(92px + env(safe-area-inset-bottom)) 16px; text-align:center; }
  .compact-person-card .person-open { grid-template-columns:auto minmax(0,1fr); }
  .person-quick-actions { grid-column:1/-1; justify-self:end; margin-top:-4px; }
  .profile-skill-groups { grid-template-columns:1fr; gap:9px; }
  .app-tabs {
    inset: auto 10px calc(8px + env(safe-area-inset-bottom));
    border-radius: 22px;
    box-shadow: 0 10px 34px rgb(16 45 44 / .2);
    padding-bottom: 0;
  }
  .app-tabs button { min-height: 66px; padding: 7px 2px; border-inline-end: 0; }
  .app-tabs button[aria-selected="true"] { border-radius: 17px; margin: 5px; min-height: 56px; }
  .quick-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .quick-grid button { min-height: 100px; padding: 15px; }
  .person-card,
  .skill-item { padding: 16px; }
  .profile-pane { min-height: 0; }
  .profile-card { padding: 18px; }
  .profile-card dl { grid-template-columns: 1fr; gap: 14px; }
  .install-card { margin: 8px 0; padding: 14px; flex-wrap: wrap; }
  .install-card .button { flex: 1; }
}

@media (max-width: 390px) {
  .brand-lockup { display: none; }
  .header-actions { gap: 6px; }
  .hero h1,
  .panel h1 { font-size: 2rem; }
}

@media (prefers-reduced-motion: reduce) {
  .button { transition: none; }
}

/* Signed-in application shell */
.is-authenticated .site-header { background: var(--nb-brand); border: 0; box-shadow: none; }
.is-authenticated .brand { color: #fff; }
.is-authenticated .brand-lockup small { color: #d8ece6; }
.is-authenticated .brand-symbol { border: 2px solid rgb(255 255 255 / .7); box-shadow: none; }
.is-authenticated .language-menu summary,
.is-authenticated .header-session { border-color: rgb(255 255 255 / .65); background: #fff; }
.is-authenticated .site-footer { display: none; }
.home-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.home-heading h1 { margin-bottom: 4px; }
.home-alerts {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 50%;
  background: var(--nb-mint);
  color: var(--nb-brand-strong);
  font: 800 1.6rem/1 sans-serif;
  cursor: pointer;
}
.home-section-title { margin: 24px 0 12px; font-size: 1.2rem; }
.home-shortcuts .shortcut-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  margin: 0 0 10px;
  border-radius: 12px;
  background: var(--nb-mint);
  color: var(--nb-brand-strong);
  font-size: 1.45rem;
  font-weight: 800;
}
.home-fab { display: none; }

@media (max-width: 700px) {
  .is-authenticated .site-header { position: sticky; }
  .is-authenticated .header-inner { min-height: 78px; }
  #home-panel {
    padding: 16px 8px 28px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  #home-panel .home-heading h1 { font-size: 1.72rem; letter-spacing: -.025em; }
  #home-panel .eyebrow { margin-bottom: 4px; }
  #home-panel .next-card {
    min-height: 152px;
    margin: 16px 0;
    padding: 22px;
    border: 0;
    border-radius: 20px;
    background: linear-gradient(145deg, #e3f3ed, #f5faf7);
    box-shadow: 0 12px 28px rgb(16 45 44 / .09);
  }
  #home-panel .next-card strong { font-size: 1.25rem; }
  #home-panel .next-card p { color: var(--nb-muted); }
  #home-panel .match-card,
  #home-panel .notification-card { margin: 14px 0; box-shadow: 0 8px 24px rgb(16 45 44 / .07); }
  .home-shortcuts {
    display: flex;
    gap: 10px;
    margin-inline: -20px;
    padding: 0 20px 8px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .home-shortcuts::-webkit-scrollbar { display: none; }
  .home-shortcuts button {
    flex: 0 0 142px;
    min-height: 132px;
    padding: 15px;
    border: 0;
    border-radius: 16px;
    background: var(--nb-card);
    box-shadow: 0 7px 22px rgb(16 45 44 / .08);
    scroll-snap-align: start;
  }
  .home-shortcuts button > span:last-child { font-size: .82rem; line-height: 1.35; }
  .home-fab {
    position: fixed;
    inset-inline-end: 22px;
    bottom: calc(92px + env(safe-area-inset-bottom));
    z-index: 19;
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border: 0;
    border-radius: 50%;
    background: var(--nb-brand-strong);
    color: #fff;
    box-shadow: 0 10px 26px rgb(13 73 67 / .28);
    font: 400 2rem/1 sans-serif;
  }
  #app > .panel:not(#home-panel) h1 { font-size: 1.9rem; line-height: 1.08; letter-spacing: -.03em; }
  #app > .panel:not(#home-panel) { padding: 22px 18px; }
}

/* One coherent mobile application across Explore, Exchanges, Messages and Profile. */
@media (max-width: 700px) {
  #app > .panel {
    margin: 0;
    padding: 20px 8px 32px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  #app > .panel:not(#home-panel) { padding: 20px 8px 32px; }
  #app > .panel:not(#home-panel) > .eyebrow { margin: 0 0 7px; }
  #app > .panel:not(#home-panel) > h1 {
    margin: 0 0 20px;
    font-size: 1.72rem;
    line-height: 1.12;
    letter-spacing: -.028em;
  }

  #explore-panel .search {
    padding: 17px;
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--nb-shadow);
  }
  #explore-panel .search label { margin-top: 0; }
  #explore-panel .search input { min-height: 54px; }
  #explore-panel .search-filters {
    margin: 10px 0 14px;
    border: 1px solid var(--nb-line);
    border-radius: 12px;
    background: #fafbf9;
  }
  #explore-panel .search-filters summary { min-height: 50px; padding: 13px 15px; font-weight: 750; }
  #explore-panel .search-filters[open] summary { border-bottom: 1px solid var(--nb-line); }
  #explore-panel .filter-grid { padding: 0 14px 12px; }
  #explore-panel .search > .button { width: calc(50% - 5px); padding-inline: 8px; }
  #explore-panel .search > .button + .button { margin-inline-start: 6px; }
  #explore-panel .saved-section { margin: 14px 4px; }
  #explore-panel #location-note { margin: 16px 4px 8px; }
  #explore-panel .results { gap: 13px; margin-top: 12px; }
  #explore-panel .person-card { padding: 18px; border: 0; box-shadow: var(--nb-shadow); }
  #explore-panel .person-open { grid-template-columns: 58px 1fr; align-items: center; gap: 13px; }
  #explore-panel .person-placeholder,
  #explore-panel .person-photo { width: 58px; height: 58px; grid-row: 1; }
  #explore-panel .person-summary { min-width: 0; }
  #explore-panel .person-open strong { font-size: 1.08rem; }

  #exchanges-panel .filter-tabs,
  #messages-panel .filter-tabs {
    flex-wrap: nowrap;
    gap: 6px;
    margin: 0 0 16px;
    padding: 5px;
    overflow-x: auto;
    border-radius: 13px;
    background: #e9eeeb;
  }
  #exchanges-panel .filter-tabs button,
  #messages-panel .filter-tabs button {
    flex: 1 0 auto;
    min-height: 44px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    padding: 8px 13px;
    font-size: .9rem;
  }
  #exchanges-panel .filter-tabs button[aria-pressed="true"],
  #messages-panel .filter-tabs button[aria-pressed="true"] {
    background: #fff;
    color: var(--nb-brand-strong);
    box-shadow: 0 3px 10px rgb(16 45 44 / .09);
  }
  #exchange-list,
  #conversation-list { gap: 13px; margin-top: 0; }
  #exchange-list .exchange-card,
  #conversation-list .exchange-card {
    padding: 18px;
    border: 0;
    border-radius: 18px;
    box-shadow: var(--nb-shadow);
  }
  .exchange-card .button { width: 100%; margin-top: 10px; }
  .exchange-detail {
    padding: 18px;
    border: 0;
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--nb-shadow);
  }

  #profile-panel > h1 { margin-bottom: 10px; }
  #profile-panel-panel > h1,
  #messages-panel > h1 { margin-bottom: 18px; }
  .profile-tabs {
    position: sticky;
    top: 78px;
    z-index: 8;
    flex-wrap: nowrap;
    gap: 0;
    margin: 0 0 15px;
    padding: 0 4px;
    border: 0;
    border-radius: 14px;
    background: rgb(246 243 235 / .96);
  }
  .profile-tabs button { flex: 1; min-width: 0; padding: 10px 5px; font-size: .9rem; }
  .profile-card {
    display: grid;
    grid-template-columns: 82px 1fr;
    gap: 12px 17px;
    max-width: none;
    padding: 19px;
    border: 0;
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--nb-shadow);
  }
  .profile-card .profile-photo,
  .profile-card .photo-placeholder { width: 82px; height: 82px; margin: 0; font-size: 2rem; }
  .profile-card h2 { align-self: center; margin: 0; font-size: 1.35rem; }
  .profile-card dl { grid-column: 1 / -1; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; padding-top: 5px; }
  .profile-card dl div:nth-child(4) { grid-column: 1 / -1; }
  .profile-photo-actions,
  #profile-overview > .button { width: 100%; }
  #profile-overview > .button { margin-bottom: 8px; }
  .profile-pane form,
  .profile-pane .account-export,
  .profile-pane .danger-zone {
    border-radius: 16px;
  }
  .profile-pane > form {
    padding: 17px;
    background: #fff;
    box-shadow: var(--nb-shadow);
  }
  .skill-item { border: 0; box-shadow: var(--nb-shadow); }

  #notification-card .notification-heading { gap: 10px; }
  .notification-list { margin-top: 8px; }
  .notification-item { border-radius: 12px; }
}

/* Final mobile pass: one predictable viewport rhythm across every view. */
.search-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.search-actions .button { width:100%; }
.meeting-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:16px 0; }
.meeting-summary span { display:grid; gap:4px; padding:13px; border-radius:12px; background:var(--nb-mint); }
.meeting-summary small { color:var(--nb-muted); text-transform:uppercase; font-size:.68rem; font-weight:800; letter-spacing:.08em; }
.meeting-summary strong { overflow-wrap:anywhere; }

@media (max-width:700px) {
  html { scroll-padding-top:92px; }
  body.exchange-page { min-width:320px; overflow-x:clip; }
  .exchange-page .site-header,
  .is-authenticated .site-header { position:sticky; top:0; z-index:40; }
  .exchange-page .header-inner,
  .is-authenticated .header-inner { min-height:76px; padding:8px 16px; }
  .exchange-page main { width:100%; padding:0 0 calc(132px + env(safe-area-inset-bottom)); }
  #app { width:100%; }
  #app > .panel,
  #app > .panel:not(#home-panel),
  #home-panel {
    width:100%;
    min-height:calc(100dvh - 76px);
    margin:0;
    padding:24px 20px 52px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  #app > .panel > .eyebrow,
  #home-panel .home-heading .eyebrow { margin:0 0 6px; }
  #app > .panel:not(#home-panel) > h1,
  #home-panel .home-heading h1,
  #profile-panel > h1 {
    margin:0 0 20px;
    font-size:clamp(1.65rem,7.2vw,2rem);
    line-height:1.14;
    letter-spacing:-.035em;
  }
  .home-heading { align-items:flex-start; }
  .home-heading h1 { margin-bottom:0!important; }
  .home-alerts { width:44px; height:44px; flex-basis:44px; }
  #home-panel .next-card { min-height:0; margin:16px 0 26px; padding:18px; gap:13px; }
  #home-panel .next-card-icon { width:46px; height:46px; }
  #home-panel .next-card > button { margin-top:2px; }
  .home-section-title { margin:0 0 12px; font-size:1.16rem; }
  .home-shortcuts {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin:0;
    padding:0;
    overflow:visible;
  }
  .home-shortcuts button { width:auto; min-width:0; min-height:128px; padding:15px; }
  .home-shortcuts button > strong { font-size:1rem; }
  .exchange-modes { margin-top:30px; }
  .mode-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .mode-grid button { min-height:92px; padding:13px 11px; }
  .mode-grid button > span { width:32px; height:32px; }
  .mode-grid strong { font-size:.86rem; }
  .mode-grid small { font-size:.76rem; }
  .home-fab { inset-inline-end:20px; bottom:calc(98px + env(safe-area-inset-bottom)); z-index:29; width:56px; height:56px; }

  .app-tabs {
    inset: auto 14px calc(10px + env(safe-area-inset-bottom));
    z-index:30;
    width:auto;
    padding:4px;
    overflow:visible;
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
  .exchange-page .app-tabs button,
  .app-tabs button { min-width:0; min-height:58px; padding:5px 1px; overflow-wrap:normal; font-size:.72rem; }
  .app-tabs button span:first-child { height:22px; margin:0; font-size:1.15rem; line-height:22px; }
  .app-tabs button[aria-selected="true"] { min-height:58px; margin:0; border-radius:16px; }
  .badge { position:absolute; margin:-4px 0 0 2px; }

  #explore-panel .search { padding:14px; border-radius:18px; }
  .category-picker { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin:0 0 16px; overflow:visible; }
  .category-picker button { width:100%; min-width:0; min-height:66px; padding:7px 4px; font-size:.72rem; }
  .category-picker button:nth-child(n+4) { grid-column:auto; }
  #explore-panel .search label { margin:12px 0; }
  #explore-panel .search input { min-height:50px; }
  #explore-panel .search-filters { margin:12px 0; }
  #explore-panel .search-filters summary { min-height:48px; padding:11px 13px; }
  .search-actions { grid-template-columns:1fr 1fr; gap:8px; }
  #explore-panel .search-actions .button { min-width:0; margin:0; padding-inline:7px; }
  #explore-panel .saved-section { margin:16px 2px; }
  #explore-panel .person-card { padding:15px; }
  #explore-panel .person-open { grid-template-columns:52px minmax(0,1fr); gap:11px; }
  #explore-panel .person-placeholder,
  #explore-panel .person-photo { width:52px; height:52px; }
  #explore-panel .person-summary { overflow-wrap:anywhere; }

  #exchanges-panel .filter-tabs { width:100%; overflow:visible; }
  #exchanges-panel .filter-tabs button { min-width:0; padding-inline:7px; font-size:.82rem; }
  .exchange-detail { padding:16px; overflow:hidden; }
  .exchange-detail > .text-button { margin:-5px 0 4px; }
  .exchange-detail h2 { margin:4px 0 12px; font-size:1.5rem; }
  .exchange-progress { grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; margin:14px 0; }
  .exchange-progress li { display:grid; align-content:start; gap:4px; padding-top:7px; font-size:.7rem; line-height:1.25; }
  .exchange-progress li b { overflow-wrap:anywhere; }
  .agreement-state { margin:14px 0; padding:13px; }
  .meeting-summary { grid-template-columns:1fr; }
  #exchange-actions.actions { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
  #exchange-actions.actions > .button { width:100%; min-width:0; padding-inline:8px; }
  #exchange-actions .safety-reminder,
  #exchange-actions .cancel-agreement { grid-column:1/-1; }
  #exchange-actions .archive-exchange { grid-column:1/-1; color:var(--danger); border-color:#d9aaa6; }
  #exchange-actions .safety-actions { grid-column:1/-1; margin-top:12px; padding-top:8px; opacity:.72; }
  .agreement-messages { margin-top:18px; padding-top:16px; }
  .message-form { gap:8px; }
  .message-form label { margin:4px 0; }
  .message-form textarea { min-height:82px; }
  .message-form > .button { width:100%; }
  .quick-replies { margin:0 -2px 2px; padding:2px 2px 5px; scrollbar-width:none; }

  #profile-panel .profile-tabs { position:static; margin:0 0 14px; padding:3px; background:#e9eeeb; }
  #profile-panel .profile-tabs button { min-height:44px; border:0; border-radius:10px; }
  #profile-panel .profile-tabs button[aria-selected="true"] { background:#fff; box-shadow:0 3px 10px rgb(16 45 44 / .08); }
  #profile-panel .profile-card { grid-template-columns:64px minmax(0,1fr); padding:16px; gap:9px 14px; }
  #profile-panel .profile-card .profile-photo,
  #profile-panel .profile-card .photo-placeholder { width:64px; height:64px; font-size:1.6rem; }
  #profile-panel .profile-card dl { grid-template-columns:1fr 1fr; gap:11px; }
  #profile-panel .profile-card dl div:nth-child(4) { grid-column:1/-1; }
  #profile-panel .profile-card dt { font-size:.76rem; }
  #profile-panel .profile-card dd { font-size:.91rem; }
  .profile-pane > form { padding:15px; }
  .profile-pane form label { margin:12px 0; }
  .profile-pane .actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
  .profile-pane .actions > .button { min-width:0; padding-inline:8px; }
  .profile-pane .account-export,
  .profile-pane .danger-zone { margin-top:20px; padding-top:16px; }
  .skill-item { gap:10px; padding:14px; }
  .item-actions { justify-content:flex-start; gap:4px; }

  .notification-card { padding:14px; }
  .notification-heading { display:grid; grid-template-columns:1fr auto; }
  .notification-item { grid-template-columns:minmax(0,1fr) auto; }
  .notification-actions { gap:0; }

  .exchange-page > main > .hero,
  .exchange-page > main > .panel.narrow,
  .offline-state { margin:12px; padding:20px 18px; }
  .exchange-page > main > .hero h1,
  .exchange-page > main > .panel.narrow h1 { font-size:clamp(1.9rem,9vw,2.45rem); }
  .install-card,
  .connection-status { margin:0; border-radius:0; }
  dialog:not(.onboarding-dialog) { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); margin:auto; padding:18px 15px; border-radius:20px; }
  .create-dialog { padding:0!important; }
  .create-dialog-body { padding:18px; }
}

@media (max-width:360px) {
  #app > .panel,
  #app > .panel:not(#home-panel),
  #home-panel { padding-inline:14px; }
  .home-shortcuts,.mode-grid { grid-template-columns:1fr; }
  .category-picker { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .search-actions { grid-template-columns:1fr; }
  .brand-lockup { display:none; }
}

/* Screenshot review: remove accidental link styling and simplify account hierarchy. */
.person-open > .person-summary { color:inherit; font-weight:inherit; text-decoration:none; }
.person-summary > span:last-child { color:var(--nb-brand); font-weight:750; text-decoration:underline; }

@media (max-width:700px) {
  .home-fab { display:none; }
  #profile-account { display:grid; gap:12px; }
  #profile-account > h2 { display:none; }
  #profile-account .account-summary,
  #profile-account #profile-install,
  #profile-account > .account-export,
  #profile-account > details,
  #profile-account > .danger-zone {
    margin:0;
    padding:16px;
    border:1px solid var(--nb-line);
    border-radius:16px;
    background:#fff;
    box-shadow:0 6px 20px rgb(16 45 44 / .055);
  }
  #profile-account .account-summary h2,
  #profile-account h3 { margin:0 0 8px; font-size:1.12rem; }
  #profile-account .account-summary p { margin:7px 0; overflow-wrap:anywhere; }
  #profile-account .account-summary .check-row { margin:14px 0 0; }
  #profile-account > details > summary { min-height:44px; display:flex; align-items:center; font-weight:750; cursor:pointer; }
  #profile-account > details:not([open]) { padding-block:8px; }
  #profile-account > p { margin:2px 4px; font-size:.86rem; line-height:1.6; }
  #profile-account .danger-zone { border-color:#e8cac7; background:#fff9f8; }
  #profile-account .danger-zone .button { width:100%; }
  #profile-account .results { margin-block:10px; }
  #profile-account .profile-install { display:block; }
  #profile-account .profile-install[hidden] { display:none; }
  .person-detail .trust-summary { gap:6px; }
  .person-detail .trust-summary > span { padding:5px 8px; font-size:.76rem; }
  .person-detail .chips { margin-block:10px; }
  .person-detail .profile-safety { margin-top:14px; padding-top:8px; opacity:.72; }
}

/* Keep the final cascade authoritative after legacy responsive layers. */
.exchange-page .hero h1,
.exchange-page .panel h1 { max-width:22ch; font-size:var(--nb-text-page); line-height:1.12; letter-spacing:-.032em; }
.exchange-page .lead { font-size:1.0625rem; line-height:1.5; }
.exchange-page h2 { font-size:var(--nb-text-section); }
.exchange-page h3 { font-size:var(--nb-text-card); }
.exchange-page .hero,
.exchange-page .panel,
.exchange-page .person-card,
.exchange-page .skill-item,
.exchange-page .exchange-card,
.exchange-page .exchange-detail,
.exchange-page .profile-card { border-radius:var(--nb-radius-card); box-shadow:var(--nb-shadow-soft); }
@media (max-width:700px) {
  .exchange-page .header-inner,
  .is-authenticated .header-inner { min-height:68px; padding:7px 16px; }
  .exchange-page main { padding:0 0 calc(118px + env(safe-area-inset-bottom)); }
  #app > .panel,
  #app > .panel:not(#home-panel),
  #home-panel { min-height:calc(100dvh - 68px); padding:20px 18px 58px; }
  #app > .panel:not(#home-panel) > h1,
  #home-panel .home-heading h1,
  #profile-panel > h1 { margin:0 0 16px; font-size:clamp(1.55rem,6.6vw,1.82rem); line-height:1.12; }
  .exchange-page .app-tabs button,
  .app-tabs button { min-height:55px; font-size:.7rem; }
  .app-tabs button[aria-selected="true"] { min-height:55px; }
  .home-shortcuts button { min-height:112px; }
  #explore-panel .person-card,
  #exchange-list .exchange-card,
  #conversation-list .exchange-card,
  .exchange-detail,
  #profile-panel .profile-card,
  .skill-item { padding:15px; border-radius:17px; box-shadow:var(--nb-shadow-soft); }
  #exchange-actions .safety-actions.action-menu { grid-column:1/-1; margin-top:10px; padding-top:10px; opacity:1; }
}

/* Focused mobile polish from real-device review. */
:root { --nb-nav-clearance: 96px; }
.person-open { cursor:default; }
.person-title {
  width:max-content;
  max-width:100%;
  min-height:44px;
  margin:-8px 0 -4px;
  padding:6px 0;
  border:0;
  background:transparent;
  color:var(--nb-brand-strong);
  font-family:inherit;
  font-size:1.05rem;
  font-weight:700;
  line-height:1.25;
  text-align:start;
  text-decoration:none;
  cursor:pointer;
}
.person-title bdi,
.person-summary > span,
.saved-discovery-item span,
.saved-discovery-link,
.profile-name-line h2,
.profile-card dd {
  min-width:0;
  overflow-wrap:break-word;
  word-break:normal;
}
.button[aria-busy="true"],
button[aria-busy="true"],
label[aria-busy="true"] { cursor:progress; opacity:.72; }
.person-title:hover bdi,
.person-title:focus-visible bdi { text-decoration:underline; text-underline-offset:3px; }
.profile-name-line { align-self:center; display:flex; align-items:center; flex-wrap:wrap; gap:7px; min-width:0; }
.profile-name-line h2 { min-width:0; }
.gender-badge {
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:2px 8px;
  border-radius:999px;
  background:#e8f1ee;
  color:#315853;
  font-size:.72rem;
  font-weight:700;
  text-decoration:none;
}
.person-summary > span,
.person-open .match-summary { text-decoration:none; }
.profile-safety.action-menu { display:block; opacity:1; }
.profile-safety.action-menu > div { display:flex; gap:12px; }

.rating-form {
  display:grid;
  grid-template-columns:minmax(140px,.65fr) minmax(180px,1fr);
  gap:10px 14px;
}
.rating-form label { margin:0; }
.rating-form select { max-width:none; }
.rating-form textarea { min-height:72px; }
.rating-form .button { grid-column:1/-1; width:max-content; }
.agreement-messages { display:flex; flex-direction:column; }
.skill-item.is-paused { opacity:.68; background:#f3f4f2; }
.safety-reminder { flex:1 0 100%; align-self:start; display:grid; gap:4px; padding:14px 16px; border-radius:14px; background:#fff7df; border:1px solid #dbc98e; color:var(--nb-ink); }
.safety-reminder a { width:max-content; font-weight:700; color:inherit; }
.agreement-messages .message-list { order:1; margin:12px 0; padding:12px; border-radius:14px; background:#f7f9f7; }
.agreement-messages .status,
.agreement-messages .error { order:2; }
.agreement-messages .message-form { order:3; margin-top:8px; padding-top:14px; border-top:1px solid var(--nb-line); }

#profile-account .account-group > summary,
#profile-account > details > summary {
  min-height:48px;
  display:flex;
  align-items:center;
  color:var(--nb-ink);
  font-size:1rem;
  font-weight:700;
  cursor:pointer;
}
#profile-account .account-group[open] > summary { margin-bottom:10px; border-bottom:1px solid var(--nb-line); padding-bottom:8px; }
#profile-account .legal-group p { margin:4px 0; }
#profile-account .danger-zone > summary { color:var(--danger); }
#profile-account .danger-zone h3 { font-size:1rem; }
.security-row,
.security-event {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:11px 4px;
  border-bottom:1px solid var(--nb-line);
}
.security-row > span:nth-child(2),
.security-event > span:nth-child(2) { display:grid; gap:2px; min-width:0; }
.security-device-icon { color:var(--nb-brand); font-size:.82rem; }
.security-event { grid-template-columns:auto minmax(0,1fr) auto; }
.security-event > .text-button { width:44px; min-height:44px; padding:4px; font-size:1.2rem; text-decoration:none; }
.security-event > span:first-child { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:var(--nb-mint); color:var(--nb-brand); font-size:.75rem; }
.security-toggle { margin-top:7px; }
.security-activity-group { margin-top:14px; border-top:1px solid var(--nb-line); padding-top:8px; }
.security-activity-group > summary { min-height:44px; display:flex; align-items:center; font-weight:700; cursor:pointer; }
.person-open,
.person-open *,
.person-summary,
.person-summary > span,
.person-open .match-summary,
.person-open .match-summary strong { text-decoration:none; }
.person-open .match-summary { display:flex; flex-wrap:wrap; align-items:center; gap:4px; color:var(--nb-muted); font-weight:400; }
.person-open .match-summary strong { color:var(--nb-brand-strong); font-weight:700; }
.skill-form-intro { grid-column:1/-1; display:grid; grid-template-columns:36px 1fr; gap:2px 10px; margin:0 0 6px; }
.skill-form-intro > span { grid-row:1/3; display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--nb-mint); color:var(--nb-brand); font-weight:800; }
.skill-form-intro > small { grid-column:2; }

@media (max-width:700px) {
  html { scroll-padding-bottom:calc(var(--nb-nav-clearance) + 20px); }
  .exchange-page main { padding-bottom:calc(var(--nb-nav-clearance) + 42px); }
  #app > .panel,
  #app > .panel:not(#home-panel),
  #home-panel { padding-bottom:calc(var(--nb-nav-clearance) + 28px); }
  .results,
  .exchange-detail,
  .profile-pane,
  form { scroll-margin-bottom:calc(var(--nb-nav-clearance) + 16px); }
  .exchange-page .header-inner,
  .is-authenticated .header-inner { min-height:62px; padding:6px 15px; transition:min-height .18s ease,padding .18s ease; }
  .brand-symbol { width:35px; height:35px; }
  .brand-lockup strong { font-size:.64rem; }
  .brand-lockup small { font-size:.43rem; }
  .site-header.is-compact .header-inner { min-height:54px; padding-block:4px; }
  .site-header.is-compact .brand-symbol { width:31px; height:31px; }
  .site-header.is-compact .brand-lockup small { display:none; }
  .site-header.is-compact .language-menu summary,
  .site-header.is-compact .header-session { min-height:40px; }
  .exchange-page .app-tabs button,
  .app-tabs button,
  .app-tabs button[aria-selected="true"] { min-height:52px; }
  .app-tabs { background:#fff; transition:transform .2s ease,opacity .2s ease; }
  .app-tabs.nav-hidden { transform:translateY(calc(100% + 24px + env(safe-area-inset-bottom))); opacity:0; pointer-events:none; }
  .person-open { grid-template-columns:52px minmax(0,1fr); }
  .person-title { font-size:1rem; }
  .category-picker {
    display:flex;
    gap:7px;
    margin:0 -13px 13px;
    padding:0 13px 5px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .category-picker::-webkit-scrollbar { display:none; }
  .category-picker button { flex:0 0 88px; width:88px; min-height:62px; scroll-snap-align:start; }
  #explore-panel .search-filters:not([open]) { margin:8px 0 11px; padding:0 11px; }
  #explore-panel .search-filters:not([open]) summary { min-height:42px; padding:0; }
  #explore-panel .search-filters[open] { padding:0; }
  #explore-panel .search-filters[open] summary { padding:10px 12px; }
  #profile-skills .skill-form { margin-top:12px; padding:15px; border:1px solid var(--nb-line); border-radius:17px; background:#fff; box-shadow:var(--nb-shadow-soft); }
  #profile-skills .skill-form label { margin:5px 0; }
  #profile-skills .skill-form .actions { margin-top:7px; }
  .rating-form { grid-template-columns:1fr; gap:9px; }
  .rating-form .button { grid-column:auto; width:100%; }
  .agreement-messages .message-list { min-height:74px; }
  #profile-account { gap:9px; }
  #profile-account .account-summary,
  #profile-account #profile-install,
  #profile-account > .account-export,
  #profile-account > details,
  #profile-account > .danger-zone { padding:12px 14px; border-radius:14px; box-shadow:0 4px 15px rgb(16 45 44 / .045); }
  #profile-account > details:not([open]) { padding-block:6px; }
}

/* Compact mobile rhythm: more useful content per screen without reducing touch targets. */
.icon-button:focus-visible { outline:2px solid var(--nb-brand); outline-offset:2px; }
.category-dialog .dialog-heading {
  position:sticky;
  top:0;
  z-index:2;
  margin:-2px 0 8px;
  padding:2px 0 8px;
  background:#fff;
}
.category-dialog .dialog-heading::after {
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:1px;
  background:var(--nb-line);
  content:"";
}
.need-strip {
  -webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 22px),transparent 100%);
  mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 22px),transparent 100%);
}
[dir="rtl"] .need-strip {
  -webkit-mask-image:linear-gradient(to left,#000 0,#000 calc(100% - 22px),transparent 100%);
  mask-image:linear-gradient(to left,#000 0,#000 calc(100% - 22px),transparent 100%);
}
.need-card[aria-pressed="true"] { outline-width:2px; outline-offset:-2px; }

/* Colour carries meaning on navigation cards; content and safety surfaces stay calm. */
.home-shortcuts button:nth-child(1) { background:#e6f3ef; border-color:#d2e8e1; }
.home-shortcuts button:nth-child(2) { background:#fff1db; border-color:#f3dfbd; }
.home-shortcuts button:nth-child(3) { background:#e7effc; border-color:#d5e1f4; }
.home-shortcuts button:nth-child(4) { background:#f1e9f7; border-color:#e4d7ef; }
.home-shortcuts button:nth-child(1) .shortcut-icon { background:#fff; color:#5d6d7e; }
.home-shortcuts button:nth-child(2) .shortcut-icon { background:#fff; color:#a76010; }
.home-shortcuts button:nth-child(3) .shortcut-icon { background:#fff; color:#315eaa; }
.home-shortcuts button:nth-child(4) .shortcut-icon { background:#fff; color:#775195; }
.mode-grid button:nth-child(1) { background:#edf7f2; }
.mode-grid button:nth-child(2) { background:#fff7e9; }
.mode-grid button:nth-child(3) { background:#edf3fc; }
.mode-grid button:nth-child(4) { background:#f5eef9; }

@media (max-width:700px) {
  .exchange-page { font-size:.94rem; }
  #app > .panel,
  #app > .panel:not(#home-panel),
  #home-panel { padding-inline:16px; padding-top:17px; }
  #app > .panel:not(#home-panel) > h1,
  #home-panel .home-heading h1,
  #profile-panel > h1 { margin-bottom:13px; font-size:clamp(1.48rem,6.2vw,1.68rem); }
  .eyebrow { font-size:.68rem; }
  .home-needs { margin:21px 0 20px; }
  .needs-heading h2 { margin-bottom:9px; font-size:1.08rem; }
  .needs-heading .text-button,
  .explore-needs-heading .text-button { font-size:.84rem; }
  .need-strip { gap:8px; padding-bottom:6px; }
  .need-card { min-width:112px; min-height:94px; gap:7px; padding:11px; border-radius:14px; }
  .need-card span { width:34px; height:34px; border-radius:10px; font-size:1.08rem; }
  .need-card strong { font-size:.78rem; }
  .home-section-title { margin:20px 0 9px; font-size:1.08rem; }
  .home-shortcuts { gap:8px; }
  .home-shortcuts button { min-height:100px; padding:12px; }
  .home-shortcuts button > strong { font-size:.88rem; }
  .home-shortcuts button > span:last-child { font-size:.74rem; }
  .shortcut-icon { width:34px; height:34px; }
  .exchange-modes { margin-top:24px; }
  .exchange-modes h2 { font-size:1.08rem; }
  .mode-grid { gap:8px; }
  .mode-grid button { padding:11px; }
  .mode-grid strong { font-size:.8rem; }
  .mode-grid small { font-size:.72rem; }
  #explore-panel .search { padding:12px; }
  .explore-needs-heading { margin:5px 0 7px; }
  .explore-needs-heading > strong { font-size:.9rem; }
  #explore-panel .search label { margin:9px 0; }
  #explore-panel .search input { min-height:48px; font-size:16px; }
  .search-actions .button { min-height:46px; }
  .category-dialog { max-height:84dvh; }
  .category-dialog-body { padding:15px; }
  .category-dialog .dialog-heading { margin:0 0 8px; padding:0 0 9px; }
  .category-dialog .dialog-heading h2 { margin:2px 0 5px; font-size:1.28rem; }
  .category-dialog .icon-button { width:40px; height:40px; }
  .need-grid { gap:7px; }
  .need-grid .need-card { min-height:88px; padding:10px; }
}

/* The next exchange is the home hero; it begins immediately below the app bar. */
#home-panel .next-card {
  position:relative;
  overflow:hidden;
  border:1px solid #cce5dc;
  background:
    radial-gradient(circle at 92% 8%,rgb(229 169 61 / .22) 0 42px,transparent 43px),
    linear-gradient(135deg,#daf0e8 0%,#eef8f4 58%,#fff7e8 100%);
}
#home-panel .next-card::after {
  position:absolute;
  inset-block:0;
  inset-inline-start:0;
  width:5px;
  background:linear-gradient(var(--nb-brand),#58a394);
  content:"";
}
#home-panel .next-card > * { position:relative; z-index:1; }
#home-panel .next-card small { color:#626a73; }
#home-panel .next-card strong { color:var(--nb-brand-strong); letter-spacing:-.025em; }
#home-panel .next-card .button { box-shadow:0 7px 18px rgb(13 73 67 / .18); }

@media (max-width:700px) {
  #home-panel .next-card { margin-top:0; padding:17px 16px 16px 19px; }
  #home-panel .next-card strong { font-size:1.18rem; }
  #home-panel .next-card p { margin-top:5px; font-size:.82rem; line-height:1.42; }
  #home-panel .next-card-icon { width:42px; height:42px; border-radius:13px; }
}

/* Final home fit: calm hero, neutral home selection and one complete action row. */
#home-panel .next-card small { letter-spacing:.09em; }
.home-needs .need-card[aria-pressed="true"] { outline:0; }
@media (max-width:700px) {
  #home-panel .next-card > .button { min-height:44px; padding-block:9px; }
  .home-needs { margin-bottom:25px; }
  .home-section-title { margin-top:0; }
  .home-shortcuts {
    display:flex;
    gap:8px;
    margin-inline:-2px;
    padding:2px 2px 8px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    -webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 22px),transparent 100%);
    mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 22px),transparent 100%);
  }
  .home-shortcuts::-webkit-scrollbar { display:none; }
  .home-shortcuts button { flex:0 0 148px; width:148px; min-height:104px; scroll-snap-align:start; }
  [dir="rtl"] .home-shortcuts {
    -webkit-mask-image:linear-gradient(to left,#000 0,#000 calc(100% - 22px),transparent 100%);
    mask-image:linear-gradient(to left,#000 0,#000 calc(100% - 22px),transparent 100%);
  }
}

/* Quiet brand frame: neutral slate lets the useful category colours lead. */
:root {
  --nb-brand:#5d6d7e;
  --nb-brand-strong:#3e4d60;
  --nb-accent:#46586e;
}
.is-authenticated .site-header { background:#5d6d7e; }
#home-panel .next-card {
  border-color:#ddd9d1;
  background:
    radial-gradient(circle at 92% 8%,rgb(218 199 160 / .24) 0 42px,transparent 43px),
    linear-gradient(135deg,#f3f2ef 0%,#fffdf8 58%,#f5f1e9 100%);
}
#home-panel .next-card::after { background:linear-gradient(#5d6d7e,#8794a2); }
#home-panel .next-card .button[data-open-home="explore"] {
  border-color:#46586e;
  background:#46586e;
  color:#fff;
  box-shadow:0 8px 20px rgb(50 65 84 / .2);
}
#home-panel .next-card .button[data-open-home="explore"]:hover,
#home-panel .next-card .button[data-open-home="explore"]:focus-visible {
  border-color:#344457;
  background:#344457;
  color:#fff;
}

/* Refined app bar: subtle depth and warmth without another saturated colour. */
.is-authenticated .site-header {
  border-bottom:0;
  background:
    radial-gradient(circle at 93% -35%,rgb(244 220 171 / .15) 0 40px,transparent 41px),
    linear-gradient(118deg,#607386 0%,#687a8c 62%,#818d98 100%);
  box-shadow:inset 0 -2px 0 #ddcba5,0 4px 16px rgb(45 57 70 / .1);
}
.is-authenticated .language-menu > summary,
.is-authenticated .header-session {
  border:1px solid rgb(255 255 255 / .56);
  background:rgb(255 255 255 / .84);
  box-shadow:0 5px 14px rgb(36 47 59 / .12),inset 0 1px 0 rgb(255 255 255 / .72);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}

/* Public welcome: make the first screen feel useful, warm and easy to join. */
body:not(.is-authenticated) #welcome.hero {
  position:relative;
  overflow:hidden;
  border-color:#d7dde0;
  background:
    radial-gradient(circle at 92% 4%,rgb(244 220 171 / .55) 0 74px,transparent 75px),
    radial-gradient(circle at 4% 96%,rgb(207 232 225 / .6) 0 105px,transparent 106px),
    linear-gradient(145deg,#fff 0%,#fbfcfc 58%,#f1f6f4 100%);
  box-shadow:0 18px 45px rgb(56 70 83 / .1);
}
body:not(.is-authenticated) #welcome.hero::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:linear-gradient(#71869a,#94b9ae);
}
body:not(.is-authenticated) #welcome > * { position:relative; }
body:not(.is-authenticated) #welcome .eyebrow { color:#5e7285; }
body:not(.is-authenticated) #welcome h1 { max-width:15ch; text-wrap:balance; }
body:not(.is-authenticated) #welcome .lead { max-width:590px; }
body:not(.is-authenticated) .front-examples { gap:9px; }
body:not(.is-authenticated) .front-examples span {
  border:1px solid rgb(93 109 126 / .1);
  box-shadow:0 5px 14px rgb(56 70 83 / .06);
}
body:not(.is-authenticated) .front-examples span:nth-child(1) { background:#e6f3ee; }
body:not(.is-authenticated) .front-examples span:nth-child(2) { background:#fff0d8; }
body:not(.is-authenticated) .front-examples span:nth-child(3) { background:#e6eefc; }
body:not(.is-authenticated) .front-examples span:nth-child(4) { background:#f2e8f6; }
body:not(.is-authenticated) #start {
  background:#536b82;
  border-color:#536b82;
  color:#fff;
  box-shadow:0 10px 24px rgb(62 77 96 / .22);
}
body:not(.is-authenticated) #start::after { content:"  →"; }
body:not(.is-authenticated) #start:hover { background:#455d74; }
body:not(.is-authenticated) .front-actions > span { color:#657278; }
body:not(.is-authenticated) .front-flow {
  border:1px solid rgb(93 109 126 / .08);
  background:rgb(231 242 238 / .82);
}

@media (max-width:700px) {
  body.exchange-page:not(.is-authenticated) main { padding-top:7px; }
  body:not(.is-authenticated) #welcome.hero { padding:25px 21px 22px; }
  body:not(.is-authenticated) #welcome h1 { margin-top:12px; font-size:clamp(2.1rem,10.5vw,2.75rem); }
  body:not(.is-authenticated) #welcome .lead { margin-bottom:13px; font-size:1rem; }
  body:not(.is-authenticated) .front-actions > span { font-size:.82rem; }
}

/* Exchange examples are the product: give them a real storefront. */
body:not(.is-authenticated) .front-examples-title {
  margin:22px 0 10px;
  color:#263a3d;
  font-size:.82rem;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body:not(.is-authenticated) .front-examples {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:0 0 20px;
}
body:not(.is-authenticated) .front-examples span {
  display:grid;
  align-content:end;
  min-height:112px;
  padding:16px;
  border-radius:18px;
  font-size:.9rem;
  line-height:1.25;
  white-space:normal;
  text-wrap:balance;
}
body:not(.is-authenticated) .front-examples span::before {
  display:grid;
  width:38px;
  height:38px;
  margin-bottom:13px;
  place-items:center;
  border-radius:12px;
  background:rgb(255 255 255 / .8);
  font-size:1.25rem;
}
body:not(.is-authenticated) .front-examples span:nth-child(1)::before { content:"🛠️"; }
body:not(.is-authenticated) .front-examples span:nth-child(2)::before { content:"🌿"; }
body:not(.is-authenticated) .front-examples span:nth-child(3)::before { content:"📦"; }
body:not(.is-authenticated) .front-examples span:nth-child(4)::before { content:"🧹"; }
body:not(.is-authenticated) .front-examples span:nth-child(5) { background:#dff2f4; }
body:not(.is-authenticated) .front-examples span:nth-child(6) { background:#f8e5e4; }
body:not(.is-authenticated) .front-examples span:nth-child(7) { background:#edf1d8; }
body:not(.is-authenticated) .front-examples span:nth-child(8) { background:#fbe8dc; }
body:not(.is-authenticated) .front-examples span:nth-child(9) { background:#e7f3e8; }
body:not(.is-authenticated) .front-examples span:nth-child(10) { background:#e4ecf8; }
body:not(.is-authenticated) .front-examples span:nth-child(11) { background:#e8edf4; }
body:not(.is-authenticated) .front-examples span:nth-child(12) { background:#f0e7f5; }
body:not(.is-authenticated) .front-examples span:nth-child(5)::before { content:"💻"; }
body:not(.is-authenticated) .front-examples span:nth-child(6)::before { content:"🧸"; }
body:not(.is-authenticated) .front-examples span:nth-child(7)::before { content:"🐾"; }
body:not(.is-authenticated) .front-examples span:nth-child(8)::before { content:"🛒"; }
body:not(.is-authenticated) .front-examples span:nth-child(9)::before { content:"🍲"; }
body:not(.is-authenticated) .front-examples span:nth-child(10)::before { content:"📘"; }
body:not(.is-authenticated) .front-examples span:nth-child(11)::before { content:"🚗"; }
body:not(.is-authenticated) .front-examples span:nth-child(12)::before { content:"💬"; }

@media (max-width:700px) {
  body:not(.is-authenticated) .front-examples-title { margin-top:20px; }
  body:not(.is-authenticated) .front-examples {
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:0 0 18px;
    padding:0;
    overflow:visible;
  }
  body:not(.is-authenticated) .front-examples span {
    grid-template-columns:36px minmax(0,1fr);
    align-content:center;
    align-items:center;
    gap:10px;
    min-height:88px;
    padding:12px;
    font-size:.78rem;
  }
  body:not(.is-authenticated) .front-examples span::before {
    width:36px;
    height:36px;
    margin:0;
    font-size:1.1rem;
  }
  body:not(.is-authenticated) .front-actions,
  body:not(.is-authenticated) #start { width:100%; }
}

/* Human-scale welcome: let the exchange showcase carry the first impression. */
body:not(.is-authenticated) #welcome h1 {
  max-width:18ch;
  font-size:clamp(2rem,4.1vw,3.35rem);
  font-weight:620;
  line-height:1.09;
  letter-spacing:-.025em;
}
body:not(.is-authenticated) #welcome .lead { white-space:pre-line; }
body:not(.is-authenticated) .front-exchange-showcase {
  margin-top:24px;
  border:1px solid #d7e0dd;
  border-radius:20px;
  padding:18px;
  background:rgb(255 255 255 / .72);
  box-shadow:0 10px 28px rgb(56 70 83 / .07);
}
body:not(.is-authenticated) .front-exchange-showcase .front-value {
  max-width:none;
  margin:16px 0 0;
  padding:16px 18px;
}
body:not(.is-authenticated) .front-examples-title {
  margin:0 0 7px;
  color:#263a3d;
  font-size:1rem;
  font-weight:680;
  letter-spacing:0;
  text-transform:none;
}
body:not(.is-authenticated) .front-exchange-showcase .front-examples { margin-bottom:16px; }
body:not(.is-authenticated) .front-exchange-showcase .front-actions { margin-top:0; }
body:not(.is-authenticated) .front-examples-help {
  margin:0 0 13px;
  color:#617071;
  font-size:.88rem;
}
body:not(.is-authenticated) .front-example-groups { display:grid; gap:20px; }
body:not(.is-authenticated) .front-example-heading {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin:0 0 9px;
}
body:not(.is-authenticated) .front-example-group h2 {
  margin:0;
  color:#284344;
  font-size:.92rem;
  font-weight:720;
}
body:not(.is-authenticated) .front-example-heading span { display:none; }
body:not(.is-authenticated) .front-exchange-showcase .front-example-group .front-examples {
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:0;
}
body:not(.is-authenticated) .front-example-group .front-examples span {
  min-height:102px;
  padding:13px;
  overflow:hidden;
  border-radius:16px;
  background:#e6f3ee;
  font-size:.8rem;
  overflow-wrap:anywhere;
  hyphens:auto;
}
body:not(.is-authenticated) .front-example-group .front-examples span::before {
  width:36px;
  height:36px;
  margin-bottom:11px;
  content:attr(data-icon);
  font-size:1.1rem;
}
body:not(.is-authenticated) .front-example-group:nth-child(2) .front-examples span { background:#fff0d8; }
body:not(.is-authenticated) .front-example-group:nth-child(3) .front-examples span { background:#e6eefc; }
@media (max-width:700px) {
  body:not(.is-authenticated) .front-example-groups { gap:18px; }
  body:not(.is-authenticated) .front-example-heading span {
    display:inline;
    flex:0 0 auto;
    color:#667576;
    font-size:.7rem;
    font-weight:650;
  }
  body:not(.is-authenticated) .front-exchange-showcase .front-example-group .front-examples {
    display:flex;
    gap:8px;
    margin:0 -13px;
    padding:0 13px 5px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  body:not(.is-authenticated) .front-example-group .front-examples::-webkit-scrollbar { display:none; }
  body:not(.is-authenticated) .front-example-group .front-examples span {
    flex:0 0 142px;
    grid-template-columns:32px minmax(0,1fr);
    min-height:76px;
    padding:10px;
    scroll-snap-align:start;
  }
  body:not(.is-authenticated) .front-example-group .front-examples span::before {
    width:32px;
    height:32px;
    margin:0;
  }
}
body:not(.is-authenticated) .header-join {
  border-color:#536b82;
  background:#536b82;
  color:#fff;
  box-shadow:0 5px 14px rgb(62 77 96 / .16);
}
[data-lang="ar"] { display:none; }
.header-join[hidden] { display:none; }

.municipality-field { position:relative; }
.municipality-suggestions {
  position:absolute;
  z-index:30;
  inset:calc(100% + 4px) 0 auto;
  max-height:240px;
  margin:0;
  padding:6px;
  overflow:auto;
  list-style:none;
  border:1px solid var(--nb-line, #ccd3d0);
  border-radius:14px;
  background:#fff;
  box-shadow:0 12px 28px rgba(20,38,36,.16);
}
.municipality-suggestions li {
  min-height:44px;
  padding:11px 13px;
  border-radius:9px;
  cursor:pointer;
  color:var(--nb-text-page, #173b36);
}
.municipality-suggestions li:hover,
.municipality-suggestions li[aria-selected] { background:#e8f3f0; }
.minor-safety-note {
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:14px 16px;
  border-left:4px solid #55788a;
  border-radius:10px;
  background:#edf4f7;
  color:#183b43;
}
.minor-safety-note[hidden] { display:none; }

@media (min-width:701px) {
  body:not(.is-authenticated) #welcome.hero { display:block; }
  body:not(.is-authenticated) #welcome h1 { max-width:none; }
  body:not(.is-authenticated) #welcome .lead { max-width:none; }
}

@media (max-width:700px) {
  body:not(.is-authenticated) #welcome h1 {
    margin:12px 0 13px;
    font-size:1.9rem;
    font-weight:620;
    line-height:1.12;
  }
  body:not(.is-authenticated) #welcome .lead { line-height:1.5; }
  body:not(.is-authenticated) .front-exchange-showcase {
    margin:20px -8px 0;
    padding:13px;
    border-radius:18px;
  }
}

@media (max-width:430px) {
  body:not(.is-authenticated) .header-inner { padding-inline:12px; }
  body:not(.is-authenticated) .header-actions { gap:4px; }
  body:not(.is-authenticated) .brand { gap:6px; }
  body:not(.is-authenticated) .brand-symbol { width:34px; height:34px; }
  body:not(.is-authenticated) .brand-lockup strong { font-size:.6rem; }
  body:not(.is-authenticated) .brand-lockup small { font-size:.4rem; }
  body:not(.is-authenticated) .language-menu summary,
  body:not(.is-authenticated) .header-session {
    min-width:0;
    min-height:40px;
    padding-inline:8px;
    font-size:.78rem;
  }
}
@media (max-width:700px) {
  .is-authenticated .brand-symbol { width:38px; height:38px; }
  .site-header.is-compact .brand-symbol { width:34px; height:34px; }
}

/* Compact result cards: identity first, optional details second. */
#explore-panel .compact-person-card .person-open {
  grid-template-columns:58px minmax(0,1fr) auto;
  align-items:center;
}

/* Compact notification access in the signed-in top bar. */
.is-authenticated .header-notifications {
  position:relative;
  display:grid;
  place-items:center;
  width:46px;
  min-width:46px;
  min-height:46px;
  padding:0;
  border:1px solid rgb(255 255 255 / .56);
  border-radius:14px;
  background:rgb(255 255 255 / .84);
  color:var(--nb-brand-strong);
  box-shadow:0 5px 14px rgb(36 47 59 / .12),inset 0 1px 0 rgb(255 255 255 / .72);
  font:inherit;
  font-size:1.35rem;
  cursor:pointer;
}
.header-notifications .badge {
  position:absolute;
  inset-block-start:-5px;
  inset-inline-end:-5px;
  min-width:20px;
  height:20px;
  padding:0 4px;
  border:2px solid #657789;
  border-radius:999px;
  background:#fff;
  color:#37495e;
  font-size:.66rem;
  line-height:16px;
}
.notification-more > summary {
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  cursor:pointer;
}
.notification-more > .notification-list { margin-top:8px; }

@media (max-width:700px) {
  .header-actions { gap:7px; }
  .header-notifications { width:42px; min-width:42px; min-height:42px; }
  .site-header.is-compact .header-notifications { min-height:40px; }
  .exchange-detail { padding-bottom:calc(var(--nb-nav-clearance) + 18px); }
}

@media (max-width:390px) {
  .header-actions { gap:5px; }
  .language-menu summary,
  .header-session { padding-inline:9px; }
}

/* Public front page v2, based on the supplied launch design. */
body:not(.is-authenticated) #welcome.hero{display:block;max-width:1120px;padding:0;overflow:hidden;border-radius:22px;background:#f7f3ea}
body:not(.is-authenticated) #welcome.hero::before{display:none}
body:not(.is-authenticated) #welcome>.front-v2~*{display:none!important}
.front-v2{--v2-teal:#173e38;--v2-teal-soft:#e3efe9;--v2-cream:#f7f3ea;--v2-sand:#ece4d3;--v2-muted:#5f5c55;--v2-gold:#d9a441;color:#1c1c1a}
.front-v2 h1,.front-v2 h2,.front-v2 h3,.front-v2 p{margin-top:0}
.front-v2-hero{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:38px;padding:44px}
.front-v2-copy h1{max-width:650px;margin:0;color:var(--v2-teal);font-size:clamp(2.65rem,5.2vw,4.5rem);font-weight:800;letter-spacing:-.045em;line-height:1.02;text-wrap:balance}
.front-v2-copy .lead{max-width:610px;margin:18px 0 0;color:var(--v2-muted);font-size:1.15rem;line-height:1.55}
.front-v2-cta{display:flex;align-items:center;gap:18px;margin-top:24px}.front-v2-cta .button{min-height:54px;padding-inline:24px}.front-v2-cta>span{display:grid;color:var(--v2-muted);font-size:.84rem}.front-v2-cta strong{color:#242723}
.front-v2-swap{padding:22px;border:1px solid var(--v2-sand);border-radius:18px;background:#fff;box-shadow:0 18px 40px rgb(23 62 56 / .1)}
.front-v2-people{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);align-items:center;gap:10px;margin-top:14px}
.front-v2-people>div{min-width:0;padding:14px;border-radius:12px;background:var(--v2-cream)}.front-v2-people>div>strong,.front-v2-people>div>small{display:block}.front-v2-people>div>small{color:var(--v2-muted);font-size:.76rem}.front-v2-people p{margin:10px 0 0;font-size:.79rem;line-height:1.45}.front-v2-people p b{color:var(--v2-teal)}
.front-v2-avatar{display:grid;width:38px;height:38px;margin-bottom:9px;place-items:center;border-radius:50%;background:var(--v2-teal-soft);color:var(--v2-teal)}.front-v2-avatar.gold{background:#fbf1da;color:#8a6215}.front-v2-arrow{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--v2-teal);color:var(--v2-gold);font-size:1.25rem;font-weight:800}.front-v2-swap>footer{display:flex;justify-content:space-between;gap:12px;margin-top:14px;color:var(--v2-muted);font-size:.75rem}.front-v2-swap>footer strong{color:var(--v2-teal)}
.front-v2-section{padding:30px 44px}.front-v2-section>h2,.front-v2-launch h2,.front-v2-final h2{margin:0;color:var(--v2-teal);font-size:1.75rem;letter-spacing:-.02em}.front-v2-sub{max-width:660px;margin:7px 0 0;color:var(--v2-muted)}
.front-v2-groups{display:grid;gap:18px;margin-top:20px}.front-v2-groups article>h3{margin:0 0 9px;color:#22564e;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.front-v2-groups article>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.front-v2-groups span{display:flex;align-items:center;gap:9px;min-width:0;padding:14px;border:1px solid var(--v2-sand);border-radius:12px;background:#fff}.front-v2-groups span b{min-width:0;font-size:.88rem;font-weight:700;line-height:1.32;overflow-wrap:break-word}
.front-v2-steps,.front-v2-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.front-v2-steps article,.front-v2-trust article{display:flex;align-items:flex-start;gap:13px;padding:18px;border:1px solid var(--v2-sand);border-radius:14px;background:#fff}.front-v2-steps article>b,.front-v2-trust article>span{display:grid;flex:0 0 36px;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--v2-teal);color:#fff}.front-v2-steps h3,.front-v2-trust h3{margin:0 0 5px;font-size:1rem}.front-v2-steps p,.front-v2-trust p{margin:0;color:var(--v2-muted);font-size:.88rem;line-height:1.5}.front-v2-trust article>span{border-radius:11px;background:var(--v2-teal-soft);color:var(--v2-teal)}
.front-v2-launch{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:30px;margin:24px 44px;padding:32px 36px;border-radius:18px;background:var(--v2-teal);color:#fff}.front-v2-launch h2{color:#fff}.front-v2-launch>div>p:not(.eyebrow){margin:10px 0 20px;color:rgb(255 255 255 / .84);line-height:1.55}.front-v2-gold{border-color:var(--v2-gold);background:var(--v2-gold);color:var(--v2-teal)}.front-v2-launch blockquote{margin:0;padding:18px;border:1px solid rgb(255 255 255 / .18);border-radius:14px;background:rgb(255 255 255 / .08)}.front-v2-launch blockquote>p{font-style:italic;line-height:1.55}.front-v2-launch blockquote footer{display:flex;align-items:center;gap:11px;margin-top:14px}.front-v2-launch blockquote footer>b{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:var(--v2-gold);color:var(--v2-teal)}.front-v2-launch blockquote footer span{display:grid}.front-v2-launch blockquote small{color:rgb(255 255 255 / .72)}
.front-v2-faq{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;margin-top:16px}.front-v2-faq details{padding:12px 0;border-top:1px solid var(--v2-sand)}.front-v2-faq summary{min-height:38px;font-weight:750;cursor:pointer}.front-v2-faq p{margin:5px 0 0;color:var(--v2-muted);line-height:1.5}
.front-v2-final{margin:0 44px 42px;padding:32px;border:1px solid var(--v2-sand);border-radius:18px;background:#fff;text-align:center}.front-v2-final p{margin:10px 0 20px;color:var(--v2-muted)}
@media(max-width:700px){body:not(.is-authenticated) #welcome.hero{border-radius:0}.front-v2-hero{grid-template-columns:1fr;padding:30px 22px}.front-v2-copy h1{font-size:clamp(2.25rem,10.5vw,3.2rem)}.front-v2-copy .lead{font-size:1rem}.front-v2-cta{align-items:stretch;flex-direction:column}.front-v2-cta .button{width:100%}.front-v2-people{grid-template-columns:1fr}.front-v2-arrow{margin:-2px auto;transform:rotate(90deg)}.front-v2-swap>footer{flex-direction:column}.front-v2-section{padding:25px 22px}.front-v2-groups article>div{display:flex;margin-inline:-22px;padding-inline:22px;overflow-x:auto;scroll-snap-type:x proximity}.front-v2-groups span{flex:0 0 190px;scroll-snap-align:start}.front-v2-steps,.front-v2-trust{grid-template-columns:1fr}.front-v2-launch{grid-template-columns:1fr;margin:18px 14px;padding:25px 22px}.front-v2-faq{grid-template-columns:1fr}.front-v2-final{margin:0 14px 28px;padding:26px 20px}}
@media (max-width:700px) {
  #explore-panel .compact-person-card .person-open {
    grid-template-columns:52px minmax(0,1fr) auto;
  }
  .person-quick-actions { grid-column:auto; margin-top:0; }
}

/* Signed-in home v2: clear status and four balanced exchange groups. */
.is-authenticated #home-panel{max-width:1180px}
.is-authenticated #home-panel>.next-card{padding:28px;border-color:#e5bd77;background:radial-gradient(circle at 92% 4%,rgb(255 255 255 / .48) 0 8%,transparent 25%),radial-gradient(circle at 3% 115%,rgb(222 118 91 / .18),transparent 40%),linear-gradient(128deg,#f5d98f 0%,#f0bd7e 52%,#e9a582 100%);color:#243b48;box-shadow:0 18px 38px rgb(151 91 54 / .18)}
.is-authenticated #home-panel>.next-card::after{display:none}
.is-authenticated #home-panel>.next-card .eyebrow,.is-authenticated #home-panel>.next-card p{color:#4f514d}
.is-authenticated #home-panel>.next-card h2,.is-authenticated #home-panel>.next-card strong{color:#243b48}
.is-authenticated #home-panel>.next-card .button{border-color:#294d67;background:#294d67;color:#fff}
.home-needs{margin-top:30px}
.home-needs .needs-heading{align-items:end}
.home-category-intro{max-width:700px;margin:7px 0 20px;color:#66706d;line-height:1.5}
.home-category-grid-v2{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.home-category-column{display:flex;min-width:0;min-height:420px;flex-direction:column;padding:18px;border:1px solid rgb(23 62 56 / .09);border-radius:18px;box-shadow:0 10px 24px rgb(36 47 59 / .06)}
.home-category-column>header{display:flex;min-height:91px;align-items:flex-start;gap:10px}
.home-category-column>header>span{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:10px;background:rgb(255 255 255 / .82);color:#173e38;font-weight:800}
.home-category-column h3{margin:1px 0 5px;color:#173e38;font-size:1rem}
.home-category-column header p{margin:0;color:#53635f;font-size:.76rem;line-height:1.35}
.category-skills{background:#e3efe9}.category-time{background:#fbf1da}.category-things{background:#e4edf7}.category-digital{background:#eee6f5}
.home-need-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(42px,auto);gap:8px}
.home-need-chips button{min-width:0;min-height:42px;padding:8px 6px;border:1px solid rgb(23 62 56 / .1);border-radius:10px;background:rgb(255 255 255 / .82);color:#183b36;font:inherit;font-size:.76rem;font-weight:740;line-height:1.18;text-align:center;white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:none;cursor:pointer}
.home-need-chips button:hover,.home-need-chips button:focus-visible{border-color:#173e38;background:#fff;transform:translateY(-1px)}
.category-more{align-self:flex-start;margin-top:auto;padding:14px 2px 0;border:0;background:transparent;color:#173e38;font:inherit;font-size:.82rem;font-weight:760;text-decoration:underline;cursor:pointer}
@media(max-width:960px){.home-category-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}.home-category-column{min-height:390px}}
@media(max-width:700px){.is-authenticated #home-panel>.next-card{padding:22px}.home-needs{overflow:visible}.home-category-grid-v2{display:flex;margin-inline:-22px;padding:2px 22px 14px;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory}.home-category-column{flex:0 0 min(84vw,330px);min-height:405px;scroll-snap-align:start}.home-category-column>header{min-height:82px}.home-need-chips button{font-size:.8rem}}

/* Complete signed-in home based on the supplied dashboard design. */
.is-authenticated #home-panel>.next-card{grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:30px;align-items:center;margin-bottom:30px;padding:26px 30px;border-radius:18px}
.home-status-copy{min-width:0}.home-status-copy>small{display:block;margin-bottom:5px;color:#805326!important;font-size:.7rem;font-weight:800;letter-spacing:.13em}.home-status-copy>strong{font-size:clamp(1.35rem,2.6vw,1.7rem)!important;letter-spacing:-.02em}.home-status-copy>p{max-width:650px;margin:9px 0 16px!important;line-height:1.5}.home-status-copy>p b{color:#243b48}.home-status-copy>.button{width:auto;min-height:44px;padding-inline:18px}
.home-readiness{padding:16px 18px;border:1px solid rgb(72 64 48 / .14);border-radius:14px;background:rgb(255 255 255 / .38);box-shadow:inset 0 1px 0 rgb(255 255 255 / .42);backdrop-filter:blur(4px)}
.home-readiness h3{margin:0 0 8px;color:#6f4721;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.home-readiness ul{margin:0;padding:0}.home-readiness li{display:flex;align-items:center;gap:9px;padding:5px 0;color:#243b48;font-size:.84rem;list-style:none}.home-readiness li i{display:grid;flex:0 0 20px;width:20px;height:20px;place-items:center;border:1px solid rgb(36 59 72 / .45);border-radius:50%;font-size:.7rem;font-style:normal}.home-readiness li.done{color:#243b48;text-decoration:none}.home-readiness li.done i{border-color:#294d67;background:#294d67;color:#fff;font-weight:800}
#home-panel #best-matches{display:block;margin:0 0 30px;padding:0;border:0;background:transparent;box-shadow:none}#home-panel #best-matches[hidden]{display:none}
.signed-home-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.signed-home-section-head h2{margin:0;color:#173e38;font-size:1.3rem}.signed-home-section-head p{margin:4px 0 0;font-size:.83rem}
#best-match-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.signed-match-card,.signed-match-invite{display:flex;min-width:0;min-height:230px;flex-direction:column;gap:10px;padding:16px;border:1px solid #ece4d3;border-radius:14px;background:#fff;color:#1c1c1a;font:inherit;text-align:start;cursor:pointer}
.signed-match-person{display:flex;align-items:center;gap:10px}.signed-match-person>b{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:50%;background:#e3efe9;color:#173e38}.signed-match-person>span{display:grid;min-width:0}.signed-match-person small{margin-top:2px;color:#66706d;font-size:.72rem}
.signed-match-line{display:grid;font-size:.85rem;line-height:1.4}.signed-match-line small{color:#22564e;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.signed-match-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px}.signed-match-foot small{color:#66706d}.signed-match-foot strong{color:#173e38;font-size:.78rem}
.signed-match-invite{align-items:center;justify-content:center;border-style:dashed;background:transparent;text-align:center}.signed-match-invite>span{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:#fbf1da;color:#8a6215;font-size:1.2rem}.signed-match-invite>small{max-width:230px;color:#66706d;line-height:1.4}.signed-match-invite>b{color:#173e38;font-size:.8rem;text-decoration:underline}
.signed-home-bottom{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px}.signed-home-box{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px 16px;padding:20px;border:1px solid #ece4d3;border-radius:14px;background:#fff}.signed-home-box h2{display:flex;grid-column:1/-1;align-items:center;gap:9px;margin:0;color:#173e38;font-size:1rem}.signed-home-box h2>span:first-child{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:#e3efe9}.signed-home-box p{margin:0;color:#66706d;font-size:.86rem;line-height:1.5}.signed-home-box .button{width:auto;white-space:nowrap}.signed-home-share h2>span:first-child{background:#fbf1da;color:#8a6215}
@media(max-width:800px){.is-authenticated #home-panel>.next-card{grid-template-columns:1fr}.home-readiness{display:block}#best-match-list{display:flex;margin-inline:-22px;padding-inline:22px;overflow-x:auto;scroll-snap-type:x mandatory}.signed-match-card,.signed-match-invite{flex:0 0 min(82vw,320px);scroll-snap-align:start}.signed-home-bottom{grid-template-columns:1fr}}
@media(max-width:700px){.home-needs .needs-heading{display:grid;grid-template-columns:1fr;gap:10px;align-items:start}.home-needs .needs-heading .text-button{justify-self:start}.home-category-grid-v2{display:grid;grid-template-columns:1fr;margin-inline:0;padding:0 0 34px;overflow:visible}.home-category-column{width:100%;min-height:0;flex-basis:auto}.category-more{padding-top:18px}.is-authenticated #home-panel{padding-bottom:calc(var(--nb-nav-clearance) + 40px)}}
@media(max-width:520px){.is-authenticated #home-panel>.next-card{padding:22px}.signed-home-section-head{align-items:flex-start}.signed-home-section-head .text-button{font-size:.75rem}.signed-home-box{grid-template-columns:1fr}.signed-home-box .button{width:100%}}

/* The full category chooser mirrors all four home groups. */
.category-dialog{width:min(1120px,calc(100vw - 28px));max-width:1120px}
.category-dialog-intro{max-width:720px;margin:4px 0 18px;color:#66706d;line-height:1.5}
.category-dialog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.category-dialog-column{min-width:0;padding:15px;border-radius:14px}.category-dialog-column h3{margin:0 0 11px;color:#173e38;font-size:1rem}
.category-dialog-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.category-dialog-chips button{min-width:0;min-height:42px;padding:7px 5px;border:1px solid rgb(23 62 56 / .1);border-radius:9px;background:rgb(255 255 255 / .88);color:#183b36;font:inherit;font-size:.75rem;font-weight:730;line-height:1.2;white-space:normal;word-break:normal;hyphens:none;cursor:pointer}
.category-dialog-chips button:hover,.category-dialog-chips button:focus-visible{border-color:#5d7185;background:#fff;box-shadow:0 4px 10px rgb(55 73 94 / .1)}
@media(max-width:900px){.category-dialog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.category-dialog{width:calc(100vw - 16px)}.category-dialog-grid{grid-template-columns:1fr}.category-dialog-column{padding:13px}.category-dialog-chips button{font-size:.8rem}}

/* Compact spacing and stronger contrast from the marked review. */
.is-authenticated #home-panel>.next-card{gap:20px;margin-top:0;margin-bottom:22px;padding:20px 24px}
.is-authenticated #home-panel>.next-card .home-status-copy>small{color:#513716!important}
.is-authenticated #home-panel>.next-card .home-status-copy>p{color:#394348}
.home-readiness{padding:12px 14px}.home-readiness h3{margin-bottom:5px;color:#513716}.home-readiness li{padding:3px 0}
.home-needs{margin-top:22px}.home-category-intro{margin-top:4px;margin-bottom:14px}
@media(min-width:701px){.is-authenticated #home-panel{padding-top:6px}}
@media(max-width:700px){.is-authenticated #home-panel>.next-card{gap:14px;padding:18px}.home-status-copy>p{margin:5px 0 11px!important}.home-status-copy>.button{min-height:42px}.home-readiness{padding:11px 12px}.home-readiness ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px}.home-readiness li{align-items:flex-start;font-size:.76rem;font-weight:650;line-height:1.25}.home-readiness li i{flex-basis:18px;width:18px;height:18px}.home-needs{margin-top:17px}.home-needs .needs-heading{gap:4px;margin-bottom:0}.home-needs .needs-heading h2{font-size:1.18rem;line-height:1.2}.home-needs .needs-heading .text-button{min-height:34px;padding:4px 0}.home-category-intro{margin:2px 0 12px;font-size:.88rem;line-height:1.4}}

/* Signed-in mobile home v3: one clear next action, using the supplied design. */
.mobile-home-v3,.mobile-greeting{display:none}
.account-session-actions{display:grid;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--nb-line)}
.account-session-actions details>summary{min-height:42px;display:flex;align-items:center;font-weight:750;cursor:pointer}
.account-session-actions .language-switch{margin-top:8px}
.account-session-actions>.button{width:100%}
.is-authenticated .header-actions #language-menu,.is-authenticated .header-actions #logout{display:none!important}
@media(max-width:700px){
  .is-authenticated .site-header{isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 14% -22%,rgb(166 229 198 / .98) 0 13%,transparent 48%),radial-gradient(ellipse at 72% -35%,rgb(202 184 226 / .88) 0 12%,transparent 46%),radial-gradient(ellipse at 102% 35%,rgb(163 217 198 / .8) 0 8%,transparent 42%),linear-gradient(132deg,#edf5f2 0%,#e4ecee 52%,#d3e3e7 100%);color:#172f3b;border-bottom:1px solid rgb(55 91 101 / .32);box-shadow:0 8px 24px rgb(38 70 80 / .12)}
  .is-authenticated .site-header::before{content:"";position:absolute;z-index:-2;inset:auto 0 0;height:36px;background:linear-gradient(180deg,rgb(75 105 112 / .1),rgb(42 77 87 / .24));clip-path:polygon(0 76%,10% 47%,18% 68%,29% 27%,39% 66%,50% 40%,61% 71%,73% 31%,84% 64%,93% 43%,100% 68%,100% 100%,0 100%)}
  .is-authenticated .site-header::after{content:"";position:absolute;z-index:-1;inset:auto 0 0;height:17px;border-top:1px solid rgb(255 255 255 / .72);background:linear-gradient(180deg,rgb(135 196 204 / .22),rgb(89 159 171 / .36))}
  .is-authenticated .site-header .header-inner{min-height:66px}
  .is-authenticated .brand{color:#172f3b}.is-authenticated .brand-symbol{filter:none}
  .is-authenticated .header-notifications{border-color:rgb(23 47 59 / .3);background:rgb(255 255 255 / .56);color:#172f3b;box-shadow:0 5px 16px rgb(38 70 80 / .14)}
  .mobile-greeting{display:grid;max-width:1180px;margin:0 auto;padding:0 22px 19px;color:#172f3b}
  .mobile-greeting[hidden]{display:none}.mobile-greeting strong{font-size:1.08rem;font-weight:820}.mobile-greeting span{margin-top:2px;color:#40535c;font-size:.78rem;font-weight:560}
  .is-authenticated main{padding-top:0}
  .is-authenticated #home-panel{margin-top:0;padding-top:6px}
  .mobile-home-v3{display:flex;flex-direction:column;gap:13px}
  .is-authenticated #home-panel>.next-card,#home-panel>#best-matches,#home-panel>#notification-card,#home-panel>.home-needs,#home-panel>.signed-home-bottom{display:none!important}
  .mobile-local-banner{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #ead8a6;border-radius:12px;background:#fbf1da;color:#3c413d;font-size:.78rem;line-height:1.35}
  .mobile-local-banner[hidden]{display:none}.mobile-local-banner>b{padding:3px 8px;border-radius:999px;background:#d9a441;color:#173e38}
  .mobile-action-card{padding:15px;border:1px solid #ece4d3;border-radius:15px;background:#fff;box-shadow:0 8px 22px rgb(23 62 56 / .07)}
  .mobile-action-card[hidden]{display:none}.mobile-match-label{display:flex;justify-content:space-between;gap:8px;color:#686a65;font-size:.68rem}.mobile-match-label b{color:#173e38}.mobile-action-card h2{margin:8px 0 0;color:#173e38;font-size:1.18rem;line-height:1.22}
  .mobile-match-person{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:.85rem}.mobile-match-person>b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#fbf1da;color:#805c17}
  .mobile-swap{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.mobile-swap p{margin:0;padding:8px;border-radius:9px;background:#f7f3ea;font-size:.76rem;line-height:1.3}.mobile-swap small{display:block;margin-bottom:2px;color:#22564e;font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
  .mobile-action-card .button{width:100%;min-height:44px;margin-top:9px}.mobile-action-card .button.primary{background:#173e38;color:#fff}.mobile-action-card .button.secondary{margin-top:7px}
  .mobile-section-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:4px}.mobile-section-heading h2{margin:0;color:#173e38;font-size:1.02rem}.mobile-section-heading p{margin:2px 0 0;color:#696c68;font-size:.75rem}.mobile-section-heading>button{padding:7px 0;border:0;background:transparent;color:#173e38;font:inherit;font-size:.76rem;font-weight:750;text-decoration:underline}
  .mobile-groups-heading{margin-top:2px}.mobile-compact-groups{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-group{min-width:0;padding:10px;border:1px solid rgb(23 62 56 / .08);border-radius:12px}.mobile-group h3{margin:0 0 7px;color:#173e38;font-size:.76rem}.mobile-group>div{display:grid;grid-template-columns:1fr 1fr;gap:5px}.mobile-group button{min-width:0;min-height:31px;padding:4px;border:1px solid rgb(23 62 56 / .08);border-radius:7px;background:rgb(255 255 255 / .82);color:#173e38;font:inherit;font-size:.62rem;font-weight:700;overflow-wrap:anywhere}.mobile-group .mobile-more{width:100%;margin-top:6px;border:1px dashed rgb(23 62 56 / .32);background:transparent}.mobile-group-skills{background:#e3efe9}.mobile-group-time{background:#fbf1da}.mobile-group-things{background:#e6edf6}.mobile-group-digital{background:#efe8f5}
  #mobile-nearby[hidden]{display:none}.mobile-nearby-list{overflow:hidden;border:1px solid #ece4d3;border-radius:13px;background:#fff}.mobile-nearby-list>button{display:grid;width:100%;grid-template-columns:34px minmax(0,1fr) 20px;align-items:center;gap:9px;padding:10px 11px;border:0;border-top:1px solid #ece4d3;background:#fff;color:#1c1c1a;font:inherit;text-align:left}.mobile-nearby-list>button:first-child{border-top:0}.mobile-nearby-list>button>b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#e3efe9;color:#173e38}.mobile-nearby-list span{display:grid;min-width:0}.mobile-nearby-list strong{font-size:.75rem}.mobile-nearby-list small{margin-top:2px;color:#696c68;font-size:.65rem;line-height:1.3}.mobile-nearby-list i{color:#173e38;font-size:1.3rem;font-style:normal}
  .mobile-trust{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border-radius:12px;background:#e3efe9;color:#3d4b47}.mobile-trust>span{display:grid;flex:0 0 22px;width:22px;height:22px;place-items:center;border-radius:50%;background:#173e38;color:#fff;font-size:.7rem}.mobile-trust p{margin:1px 0 0;font-size:.72rem;line-height:1.4}.mobile-trust b{color:#173e38}
  .home-fab{display:grid!important;position:fixed;right:18px;bottom:calc(var(--nb-nav-clearance) + 13px);z-index:31;width:54px;height:54px;border-color:#d9a441!important;background:#173e38!important;color:#d9a441!important;box-shadow:0 8px 22px rgb(23 62 56 / .3)}
  .is-authenticated #home-panel{padding-bottom:calc(var(--nb-nav-clearance) + 150px)}
}

/* Final cascade layer for the Arctic brand across the whole signed-in product. */
:root{--nb-brand:#347d78;--nb-brand-strong:#233f59;--nb-accent:#8078b5;--nb-mint:#e1f4ed}
.button.primary,.mobile-action-card .button.primary{border-color:#3d777d;background:linear-gradient(112deg,#286c65 0%,#397d87 52%,#665b9d 100%);color:#fff;box-shadow:0 7px 18px rgb(53 89 112 / .22)}
.button.primary:hover,.button.primary:focus-visible{border-color:#285f67;background:linear-gradient(112deg,#225d57,#326e78 52%,#584d8c)}
.app-tabs button[aria-selected="true"]{background:linear-gradient(135deg,#286c65 0%,#397d87 54%,#665b9d 100%);color:#fff}
.home-fab{border-color:#bcebd0!important;background:linear-gradient(145deg,#286c65,#397d87 52%,#665b9d)!important;color:#fff!important}
@media(min-width:701px){.is-authenticated .site-header{background:linear-gradient(108deg,rgb(193 235 213 / .94) 0%,rgb(211 226 235 / .91) 52%,rgb(215 202 231 / .93) 100%),url("./aqelyn-arctic-fjord-v1.png") center 42%/cover no-repeat;color:#173444;border-bottom:2px solid #91bcb0;box-shadow:0 7px 22px rgb(60 83 111 / .14)}.is-authenticated .brand{color:#173444}.is-authenticated .brand-symbol{filter:none}.is-authenticated .header-notifications{border-color:rgb(23 52 68 / .25);background:rgb(255 255 255 / .7);color:#173444}}
@media(max-width:700px){.is-authenticated .site-header{background:linear-gradient(108deg,rgb(193 235 213 / .93) 0%,rgb(211 226 235 / .9) 52%,rgb(215 202 231 / .92) 100%),url("./aqelyn-arctic-fjord-v1.png") center 42%/cover no-repeat;color:#173444;text-shadow:0 1px 1px rgb(255 255 255 / .5)}.is-authenticated .site-header::before,.is-authenticated .site-header::after{display:none}.is-authenticated .brand,.mobile-greeting{color:#173444}.mobile-greeting span{color:#29495a}.is-authenticated .header-notifications{border-color:rgb(23 52 68 / .25);background:rgb(255 255 255 / .76);color:#233f59;text-shadow:none}}

/* Keep every signed-in view in the same Aqelyn Aurora design system. */
.is-authenticated #explore-panel,
.is-authenticated #exchanges-panel,
.is-authenticated #messages-panel,
.is-authenticated #profile-panel{color:#173e38}
.is-authenticated #app>.panel:not(#home-panel)>.eyebrow{color:#397d87}
.is-authenticated #app>.panel:not(#home-panel)>h1{color:#173e38;font-size:clamp(1.55rem,3vw,2rem)}
.is-authenticated .person-card,
.is-authenticated .exchange-card,
.is-authenticated .exchange-detail,
.is-authenticated .profile-card,
.is-authenticated #explore-panel .search{border:1px solid rgb(57 125 135 / .14);background:rgb(255 255 255 / .9);box-shadow:0 8px 22px rgb(53 89 112 / .09)}
.is-authenticated .filter-tabs,
.is-authenticated .profile-tabs{border:1px solid rgb(57 125 135 / .12);background:linear-gradient(110deg,rgb(225 244 237 / .85),rgb(232 237 246 / .88),rgb(239 232 246 / .8))}
.is-authenticated .filter-tabs button[aria-pressed="true"],
.is-authenticated .profile-tabs button[aria-selected="true"]{border-color:transparent;background:linear-gradient(125deg,#347d78,#47828d 55%,#726aa7);color:#fff;box-shadow:0 4px 12px rgb(53 89 112 / .2)}
.is-authenticated .quick-replies button,
.is-authenticated .text-button{color:#315f69}
.is-authenticated .quick-replies button:hover,
.is-authenticated .quick-replies button:focus-visible{border-color:#57969a;background:#e1f4ed}
.is-authenticated .status:not(.error){border-color:rgb(57 125 135 / .2);background:#e1f4ed;color:#234c50}
.create-dialog,.category-dialog{color:#173e38}
.create-dialog::backdrop,.category-dialog::backdrop{background:rgb(25 50 65 / .46)}
.dialog-heading .eyebrow{color:#397d87}
.dialog-heading h2{color:#173e38;font-size:1.45rem}
.icon-button{border:1px solid rgb(57 125 135 / .16);background:linear-gradient(135deg,#e1f4ed,#e8edf6 58%,#efe8f5);color:#233f59}
.create-choices button{border-color:rgb(57 125 135 / .15);box-shadow:0 5px 16px rgb(53 89 112 / .07)}
.create-choices button:nth-child(1)>span{background:#e1f4ed;color:#286c65}
.create-choices button:nth-child(2)>span{background:#fbf1da;color:#755c22}
.create-choices button:nth-child(3)>span{background:#e6edf6;color:#3d647d}
.create-choices button:hover,.create-choices button:focus-visible{border-color:#57969a;background:#f8fcfa}

@media(max-width:700px){
  .is-authenticated #app>.panel:not(#home-panel){padding-top:15px}
  .is-authenticated #app>.panel:not(#home-panel)>.eyebrow{margin-bottom:4px;font-size:.66rem}
  .is-authenticated #app>.panel:not(#home-panel)>h1,
  .is-authenticated #profile-panel>h1{margin-bottom:14px;font-size:1.38rem;line-height:1.18;letter-spacing:-.025em}
  .is-authenticated #explore-panel .search{padding:13px;border-radius:15px}
  .is-authenticated #exchanges-panel .filter-tabs,
  .is-authenticated #profile-panel .profile-tabs{padding:3px;background:linear-gradient(110deg,rgb(225 244 237 / .9),rgb(232 237 246 / .92),rgb(239 232 246 / .85))}
  .is-authenticated #exchanges-panel .filter-tabs button,
  .is-authenticated #profile-panel .profile-tabs button{font-size:.78rem}
  .is-authenticated #exchange-list .exchange-card,
  .is-authenticated #conversation-list .exchange-card,
  .is-authenticated #explore-panel .person-card{padding:14px;border-radius:15px}
  .create-dialog-body,.category-dialog-body{padding:16px}
  .dialog-heading h2{font-size:1.3rem}
  .create-choices button{padding:13px;border-radius:14px}
}

/* Selected segmented controls stay readable above older component rules. */
.is-authenticated #profile-panel .profile-tabs button[aria-selected="true"],
.is-authenticated #exchanges-panel .filter-tabs button[aria-pressed="true"],
.is-authenticated #messages-panel .filter-tabs button[aria-pressed="true"]{
  border-color:rgb(72 130 137 / .28);
  background:linear-gradient(125deg,#d9f1e8 0%,#dcecf1 55%,#e6dcf1 100%);
  color:#173e38;
  box-shadow:0 4px 12px rgb(53 89 112 / .14);
}

/* The desktop call-to-action uses the same light mint surface as the forms. */
@media(min-width:701px){
  .is-authenticated #home-panel>.next-card{
    border-color:rgb(72 130 137 / .2);
    background:
      radial-gradient(circle at 90% 5%,rgb(231 220 243 / .72) 0 9%,transparent 32%),
      linear-gradient(118deg,#dff3eb 0%,#deedf0 58%,#e9e1f2 100%);
    color:#173e38;
    box-shadow:0 14px 34px rgb(53 89 112 / .13);
  }
  .is-authenticated #home-panel>.next-card .home-status-copy>small,
  .is-authenticated #home-panel>.next-card .home-readiness h3{color:#315f69!important}
  .is-authenticated #home-panel>.next-card .home-status-copy>p,
  .is-authenticated #home-panel>.next-card h2,
  .is-authenticated #home-panel>.next-card strong,
  .is-authenticated #home-panel>.next-card .home-readiness li{color:#173e38}
  .is-authenticated #home-panel>.next-card .home-readiness{
    border-color:rgb(57 125 135 / .18);
    background:rgb(255 255 255 / .48);
  }
}

/* A denser Explore view keeps search and nearby people above the mobile nav. */
@media(max-width:700px){
  .is-authenticated #explore-panel{padding-top:21px}
  .is-authenticated #explore-panel>.eyebrow{font-size:.61rem;letter-spacing:.16em}
  .is-authenticated #explore-panel>h1{margin-bottom:12px;font-size:1.22rem;line-height:1.18}
  .is-authenticated #explore-panel .search{padding:11px;border-radius:14px}
  #explore-panel .explore-needs-heading{margin-bottom:8px}
  #explore-panel .explore-needs-heading strong{font-size:.88rem}
  #explore-panel .explore-needs-heading .text-button{font-size:.75rem}
  #explore-panel .explore-need-strip{gap:7px;margin-bottom:11px}
  #explore-panel .explore-need-strip .need-card{min-width:96px;min-height:82px;padding:9px;gap:6px;border-radius:13px}
  #explore-panel .explore-need-strip .need-card span{width:30px;height:30px;border-radius:9px;font-size:1rem}
  #explore-panel .explore-need-strip .need-card strong{font-size:.72rem}
  #explore-panel .search>label{margin:8px 0;font-size:.82rem}
  #explore-panel .search input{min-height:44px}
  #explore-panel .search-filters{margin:8px 0}
  #explore-panel .search-filters summary{min-height:42px;padding:9px 11px;font-size:.82rem}
  #explore-panel .search-actions .button{min-height:43px;font-size:.84rem}
  #explore-panel .results-heading{margin-top:14px}
  #explore-panel .results-heading .eyebrow{font-size:.61rem}
  #explore-panel .results-heading h2{font-size:1.12rem}
}

/* Mint work surfaces and compact controls across the signed-in journey. */
.is-authenticated #explore-panel .search,
.is-authenticated .proposal-form,
.is-authenticated .profile-pane>form,
.is-authenticated .account-summary,
.is-authenticated .exchange-detail,
.is-authenticated .agreement-state{
  border-color:rgb(72 130 137 / .2);
  background:#e1f4ed;
}
.is-authenticated .proposal-form input,
.is-authenticated .proposal-form select,
.is-authenticated .proposal-form textarea,
.is-authenticated .profile-pane>form input,
.is-authenticated .profile-pane>form select,
.is-authenticated .profile-pane>form textarea{background:#fff}

@media(min-width:701px){
  .is-authenticated #profile-panel .profile-card{
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    gap:12px 18px;
    max-width:none;
  }
  .is-authenticated #profile-panel .profile-card .profile-photo,
  .is-authenticated #profile-panel .profile-card .photo-placeholder{grid-column:1;width:76px;height:76px;margin:0}
  .is-authenticated #profile-panel .profile-card .profile-name-line{grid-column:2;align-self:center}
  .is-authenticated #profile-panel .profile-card dl{grid-column:1/-1}
}

.skill-kind-group{overflow:hidden;border:1px solid rgb(57 125 135 / .16);border-radius:14px;background:#e1f4ed}
.skill-kind-group>summary{display:flex;min-height:48px;align-items:center;justify-content:space-between;padding:10px 14px;color:#173e38;cursor:pointer;list-style:none}
.skill-kind-group>summary::-webkit-details-marker{display:none}
.skill-kind-group>summary::after{content:"⌄";margin-left:8px;color:#397d87;font-size:1.1rem}
.skill-kind-group[open]>summary::after{content:"⌃"}
.skill-kind-group>summary span{display:grid;min-width:25px;height:25px;margin-left:auto;place-items:center;border-radius:50%;background:#fff;color:#315f69;font-size:.75rem;font-weight:800}
.skill-kind-group>div{display:grid;gap:8px;padding:0 9px 9px}
.skill-kind-group .skill-item{margin:0;padding:11px 12px;border-color:rgb(57 125 135 / .12);box-shadow:none}

@media(max-width:700px){
  .proposal-form{gap:6px;padding:13px}
  .proposal-heading{align-items:center;gap:8px;white-space:nowrap}
  .proposal-heading strong{font-size:.82rem}
  .proposal-heading span{min-width:0;font-size:.68rem;white-space:normal}
  .proposal-form label{gap:3px;font-size:.8rem}
  .proposal-form select{min-height:46px}
  .proposal-swap{height:18px;margin:-2px 0;line-height:18px}
  .proposal-form .fair-hint{margin:5px 0;font-size:.72rem;line-height:1.4}
  #profile-skills>h2{font-size:1.15rem}
  #profile-skills>p{margin:4px 0 10px;font-size:.82rem}
  #profile-skills .skill-form textarea[name="title"]{min-height:84px}
  .skill-list{gap:8px;margin-block:12px}
  .skill-kind-group>summary{min-height:44px;padding:8px 12px;font-size:.84rem}
  .skill-kind-group .skill-item{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
  .skill-kind-group .item-actions{gap:2px}
  .skill-kind-group .item-actions .text-button{min-height:36px;font-size:.72rem}
}

/* Final consistency pass: mint cards, fixed result identity, no spacer row. */
.is-authenticated .person-card,
.is-authenticated .exchange-card,
.is-authenticated .profile-card,
.is-authenticated .notification-card,
.is-authenticated .signed-match-card,
.is-authenticated .signed-home-box,
.is-authenticated .message-list{
  border-color:rgb(72 130 137 / .18);
  background:#e1f4ed;
}
.is-authenticated .person-card .chip,
.is-authenticated .exchange-card .chip,
.is-authenticated .profile-card .gender-badge,
.is-authenticated .message-list .message{background:#fff}
@media(min-width:701px){
  #explore-panel .compact-person-card .person-open{
    display:grid;
    grid-template-columns:58px minmax(0,1fr) auto;
    grid-template-areas:"photo identity actions";
    align-items:center;
    column-gap:14px;
  }
  #explore-panel .compact-person-card .person-photo,
  #explore-panel .compact-person-card .person-placeholder{grid-area:photo;position:static;margin:0}
  #explore-panel .compact-person-card .person-summary{grid-area:identity;min-width:0}
  #explore-panel .compact-person-card .person-quick-actions{grid-area:actions;position:static;margin:0}
}
@media(max-width:700px){
  .proposal-swap{display:none}
  .proposal-form{row-gap:4px}
  .proposal-form label+label{margin-top:1px}
}

/* Popular categories fill the available desktop width without dead space. */
@media(min-width:901px){
  #explore-panel .explore-need-strip{
    display:grid;
    grid-template-columns:repeat(8,minmax(0,1fr));
    gap:8px;
    margin-inline:0;
    padding:2px 0 10px;
    overflow:visible;
    -webkit-mask-image:none;
    mask-image:none;
  }
  #explore-panel .explore-need-strip .need-card{
    width:100%;
    min-width:0;
    min-height:92px;
    padding:10px;
  }
  #explore-panel .explore-need-strip .need-card strong{font-size:.75rem}
}

/* Public Aqelyn Aurora: the same light identity as the signed-in product. */
body:not(.is-authenticated){background:#f7f4ec}
body:not(.is-authenticated) .site-header{
  border-bottom:1px solid rgb(72 130 137 / .22);
  background:linear-gradient(108deg,rgb(217 241 232 / .94),rgb(222 237 241 / .93) 55%,rgb(232 222 242 / .92));
  box-shadow:0 5px 18px rgb(53 89 112 / .09);
}
body:not(.is-authenticated) .brand{color:#173e38}
body:not(.is-authenticated) .header-join,
body:not(.is-authenticated) #start{
  border-color:#3d777d;
  background:linear-gradient(112deg,#286c65,#397d87 52%,#665b9d);
  color:#fff;
}
body:not(.is-authenticated) #welcome.hero{border:1px solid rgb(72 130 137 / .16);background:#f9f7f0;box-shadow:0 16px 42px rgb(53 89 112 / .1)}
.front-v2{--v2-teal:#173e38;--v2-teal-soft:#e1f4ed;--v2-cream:#f7f4ec;--v2-sand:#d7e5df;--v2-muted:#586965;--v2-gold:#d9a441}
.front-v2-hero{
  position:relative;
  background:
    linear-gradient(105deg,rgb(225 244 237 / .96) 0%,rgb(226 239 242 / .9) 53%,rgb(235 225 245 / .86) 100%),
    url("./aqelyn-arctic-fjord-v1.png") center 43%/cover no-repeat;
}
.front-v2-copy,.front-v2-swap{position:relative}
.front-v2-swap{border-color:rgb(72 130 137 / .2);background:rgb(255 255 255 / .76);box-shadow:0 14px 32px rgb(53 89 112 / .12);backdrop-filter:blur(5px)}
.front-v2-people>div{background:rgb(255 255 255 / .68)}
.front-v2-arrow{background:linear-gradient(145deg,#286c65,#397d87 55%,#665b9d);color:#fff}
.front-v2-section:nth-of-type(2),.front-v2-section:nth-of-type(4){background:rgb(225 244 237 / .34)}
.front-v2-groups article:nth-child(1) span{background:#e1f4ed}
.front-v2-groups article:nth-child(2) span{background:#fbf1da}
.front-v2-groups article:nth-child(3) span{background:#e6edf6}
.front-v2-steps article,.front-v2-trust article{border-color:rgb(72 130 137 / .16);background:#e1f4ed}
.front-v2-steps article>b{background:linear-gradient(145deg,#286c65,#397d87 55%,#665b9d)}
.front-v2-launch{border:1px solid rgb(72 130 137 / .2);background:linear-gradient(118deg,#dff3eb,#deedf0 58%,#e9e1f2);color:#173e38;box-shadow:0 12px 30px rgb(53 89 112 / .11)}
.front-v2-launch h2,.front-v2-launch>div>p:not(.eyebrow),.front-v2-launch blockquote small{color:#173e38}
.front-v2-launch blockquote{border-color:rgb(72 130 137 / .2);background:rgb(255 255 255 / .52)}
.front-v2-launch blockquote footer>b{background:linear-gradient(145deg,#286c65,#665b9d);color:#fff}
.front-v2-gold{border-color:#3d777d;background:linear-gradient(112deg,#286c65,#397d87 52%,#665b9d);color:#fff}
.front-v2-final{border-color:rgb(72 130 137 / .18);background:#e1f4ed}
@media(max-width:700px){.front-v2-hero{padding-top:27px}.front-v2-copy h1{font-size:clamp(2rem,9.5vw,2.8rem)}.front-v2-section{padding-block:22px}}
.front-v2-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px}
.front-v2-section-head h2{margin:0;color:var(--v2-teal);font-size:1.75rem;letter-spacing:-.02em}
.front-v2-all-categories{display:flex;min-height:42px;align-items:center;gap:9px;padding:7px 8px 7px 14px;border:1px solid rgb(72 130 137 / .22);border-radius:999px;background:#e1f4ed;color:#173e38;font:inherit;font-size:.82rem;font-weight:780;cursor:pointer}
.front-v2-all-categories b{display:grid;min-width:27px;height:27px;place-items:center;border-radius:50%;background:linear-gradient(145deg,#286c65,#397d87 55%,#665b9d);color:#fff;font-size:.7rem}
.front-v2-all-categories:hover,.front-v2-all-categories:focus-visible{border-color:#397d87;background:#d7eee5}
@media(max-width:700px){.front-v2-section-head{align-items:flex-start;flex-direction:column;gap:10px}.front-v2-section-head h2{font-size:1.5rem}.front-v2-all-categories{min-height:40px}}

.notification-mobile-close{display:none;width:38px;height:38px;padding:0;border:1px solid var(--nb-line);border-radius:12px;background:#fff;color:var(--nb-brand-strong);font-size:1.55rem;line-height:1;cursor:pointer}
.signed-home-box[hidden]{display:none!important}
.exchange-list-tools{display:flex;justify-content:flex-end;margin:10px 0 4px}.exchange-list-tools button{min-height:38px}.exchange-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.exchange-card-actions .button{width:auto}@media(max-width:520px){.exchange-card-actions{align-items:stretch;flex-direction:column}.exchange-card-actions .button{width:100%}}
.empty-next{display:grid;justify-items:start;gap:8px;padding:22px;border:1px solid var(--nb-line);border-radius:15px;background:var(--nb-mint)}.empty-next strong{color:var(--nb-brand-strong);font-size:1rem}.empty-next p{max-width:56ch;margin:0;color:var(--nb-muted);line-height:1.45}.empty-next .button{width:auto;margin-top:4px}@media(max-width:520px){.empty-next .button{width:100%}}
@media(max-width:700px){
  .is-authenticated #explore-panel{padding-top:16px}
  .is-authenticated #explore-panel>h1{margin:0 0 9px;font-size:1.15rem}
  .is-authenticated #explore-panel .search{padding:9px 10px}
  #explore-panel .explore-needs-heading{margin-bottom:5px}
  #explore-panel .explore-need-strip{gap:6px;margin-bottom:7px}
  #explore-panel .explore-need-strip .need-card{min-width:88px;min-height:70px;padding:7px;gap:4px}
  #explore-panel .explore-need-strip .need-card span{width:28px;height:28px}
  #explore-panel .search>label{margin:6px 0}
  #explore-panel .search-filters{margin:6px 0}
  #explore-panel .results-heading{margin-top:11px}
}
.search-query-row{display:block}
@media(max-width:700px){
  #explore-panel .search-query-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px}
  #explore-panel .search-query-row>label{display:contents}
  #explore-panel .search-query-row>label>span{grid-column:1/-1;margin-top:5px;font-size:.8rem;white-space:nowrap}
  #explore-panel .search-query-row>label>input{grid-column:1;min-width:0;margin:0}
  #explore-panel .search-query-row>.search-filters:not([open]){width:116px;margin:5px 0;padding:0 10px}
  #explore-panel .search-query-row>.search-filters:not([open]) summary{min-height:44px;padding:0;font-size:.78rem;white-space:nowrap}
  #explore-panel .search-query-row>.search-filters[open]{grid-column:1/-1;margin:2px 0 5px}
  #explore-panel .search-query-row>.search-filters[open] .filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px}
  #explore-panel .search-query-row>.search-filters[open] .filter-grid label{min-width:0;margin:0;font-size:.72rem}
  #explore-panel .search-query-row>.search-filters[open] .filter-grid select{min-width:0;min-height:44px;padding:7px 5px;font-size:16px}
  #explore-panel .results-heading{margin-top:8px}
  #explore-panel .results-heading h2{margin:0 4px 7px}
}
@media(max-width:360px){#explore-panel .search-query-row>label>span{font-size:.73rem}}
.search-primary-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:0}
.search-primary-row input{border-radius:11px 0 0 11px!important}
.search-primary-row .button{min-width:104px;margin:0;border-radius:0 11px 11px 0}
@media(max-width:700px){
  #explore-panel .search-query-row>label{display:block;grid-column:1/-1;margin:4px 0 1px}
  #explore-panel .search-query-row>label>span{display:block;margin:0}
  #explore-panel .search-primary-row{grid-column:1/-1}
  #explore-panel .search-query-row>.search-filters:not([open]){grid-column:1;width:auto;margin:6px 0 0}
  #explore-panel .search-query-row>#save-search{grid-column:2;width:132px;min-height:44px;margin:6px 0 0;padding-inline:8px}
  #explore-panel .search-query-row>.search-filters[open]+#save-search{grid-column:1/-1;width:100%;margin-top:0}
}
@media(max-width:700px){
  #profile-skills .skill-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  #profile-skills .skill-form-intro{grid-column:1/-1}
  #profile-skills .skill-compact-option{min-width:0;margin:0}
  #profile-skills .skill-kind-option{grid-column:1;grid-row:2}
  #profile-skills .skill-type-option{grid-column:2;grid-row:2}
  #profile-skills .skill-mode-option{grid-column:3;grid-row:2}
  #profile-skills .skill-compact-option>span{font-size:.7rem;white-space:nowrap}
  #profile-skills .skill-compact-option select{min-width:0;min-height:44px;padding:6px 4px;font-size:.82rem}
  #profile-skills .skill-description-field{grid-column:1/-1;grid-row:3;margin:3px 0}
  #profile-skills .skill-form>.check-row{grid-column:1/-1;grid-row:4}
  #profile-skills .skill-form>.actions{grid-column:1/-1;grid-row:5}
}
@media(min-width:701px){
  #profile-skills .skill-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:8px 14px}
  #profile-skills .skill-form-intro{grid-column:1/-1;grid-row:1}
  #profile-skills .skill-compact-option{min-width:0;margin:0}
  #profile-skills .skill-kind-option{grid-column:1;grid-row:2}
  #profile-skills .skill-type-option{grid-column:2;grid-row:2}
  #profile-skills .skill-mode-option{grid-column:3;grid-row:2}
  #profile-skills .skill-compact-option select{width:100%;min-width:0}
  #profile-skills .skill-description-field{grid-column:1/-1;grid-row:3;margin:4px 0}
  #profile-skills .skill-form>.check-row{grid-column:1/-1;grid-row:4}
  #profile-skills .skill-form>.actions{grid-column:1/-1;grid-row:5}
}
@media(max-width:700px){
  body.notifications-open{overflow:hidden}
  #home-panel>#notification-card.mobile-notifications-open{display:block!important;position:fixed;z-index:80;inset:calc(env(safe-area-inset-top) + 18px) 16px calc(env(safe-area-inset-bottom) + 18px);margin:0;padding:18px;overflow:auto;border:1px solid rgb(23 62 56 / .14);border-radius:20px;background:var(--nb-mint);box-shadow:0 22px 70px rgb(13 38 35 / .28)}
  #notification-card.mobile-notifications-open .notification-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start}
  #notification-card.mobile-notifications-open .notification-mobile-close{display:grid;place-items:center;grid-column:2;grid-row:1}
  #notification-card.mobile-notifications-open #read-notifications{grid-column:1/-1;justify-self:start}
}
