@font-face {
  font-family: "Sevrena Sans";
  font-style: normal;
  font-weight: 300 800;
  src: url("/static/fonts/source-sans-3/SourceSans3VF.woff2") format("woff2");
  font-display: swap;
}
:root {
  color-scheme: light;

  --font-sans: "Sevrena Sans", "Source Sans 3", "Source Sans Pro", "IBM Plex Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-display: 720;
  --tracking-label: .01em;

  --bg: #f6f8f6;
  --surface: #ffffff;
  --surface-soft: #eef5ef;
  --surface-muted: #e6ede8;
  --surface-glass: rgba(255, 255, 255, .74);
  --surface-glass-strong: rgba(255, 255, 255, .94);
  --surface-sticky: rgba(255, 255, 255, .92);

  --ink: #1a1d1b;
  --muted: #56645d;
  --muted-2: #89968e;
  --line: rgba(15, 61, 49, .14);

  --primary: #0f3d31;
  --primary-dark: #0f3d31;
  --primary-pressed: #0b2f27;
  --primary-soft: #d8e9df;
  --accent-blue: #1f5e4d;

  --success: #1e5d4b;
  --success-soft: #dceee4;
  --warn: #a76b05;
  --warn-soft: #fff2cf;
  --warn-contrast: #74510a;
  --danger: #b8323a;
  --danger-soft: #ffe5e7;

  --on-primary: #ffffff;
  --on-primary-muted: rgba(255, 255, 255, .82);
  --on-primary-border: rgba(255, 255, 255, .58);
  --on-primary-overlay: rgba(255, 255, 255, .20);
  --on-primary-overlay-strong: rgba(255, 255, 255, .34);
  --on-soft-muted: rgba(15, 61, 49, .72);

  --track-soft: rgba(15, 61, 49, .10);
  --hero-mint: #e3f6ea;
  --security-mid: #cfe8f6;
  --mint-bright: #cffff2;

  --chart-interview: #8a6a43;
  --chart-active-border: rgba(31, 94, 77, .28);

  --gradient-hero-soft: linear-gradient(145deg, var(--primary-soft) 0%, var(--surface) 100%);
  --gradient-hero-fresh: linear-gradient(145deg, var(--primary-soft) 0%, var(--hero-mint) 100%);
  --gradient-panel-soft: linear-gradient(135deg, rgba(246, 251, 247, .88), rgba(255, 250, 241, .84));

  --focus-ring: rgba(31, 94, 77, .32);

  --radius-sm: 10px;
  --radius: 16px;
  --radius-md: 20px;
  --radius-lg: 28px;
  --radius-screen: 54px;
  --radius-pill: 999px;

  --shadow-sm: 0 6px 16px rgba(15, 61, 49, .06);
  --shadow-card: 0 14px 34px rgba(15, 61, 49, .07);
  --shadow-soft: 0 24px 56px rgba(15, 61, 49, .12);
  --shadow-nav: 0 20px 42px rgba(15, 61, 49, .10);
  --shadow-sheet: 0 -18px 42px rgba(15, 61, 49, .08);

  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-7: 1.75rem;
  --space-8: 2rem;
  --safe-bottom: env(safe-area-inset-bottom, 0px);

  --shell-content-max: 1120px;
  --shell-desktop-inset: 3rem;

  --touch-target: 44px;
  --button-min-height: var(--touch-target);
  --button-min-height-sm: 36px;
  --button-min-height-lg: 52px;
  --button-radius: var(--radius-pill);
  --button-padding-y: .72rem;
  --button-padding-x: 1.05rem;
  --button-padding-y-sm: .5rem;
  --button-padding-x-sm: .75rem;
  --button-padding-y-lg: .9rem;
  --button-padding-x-lg: 1.35rem;
  --button-gap: .45rem;

  --icon-button-size: 42px;

  --field-min-height: 48px;
  --field-radius: var(--radius-md);
  --field-padding-y: .78rem;
  --field-padding-x: .95rem;
  --field-bg: var(--surface-soft);
  --field-color: var(--ink);
  --field-placeholder: var(--muted-2);
  --field-gap: .45rem;

  --card-radius: var(--radius-lg);
  --card-bg: var(--surface);
  --card-padding: 1rem;
  --card-padding-lg: 1.35rem;
  --card-gap: var(--space-4);

  --color-security-mid: var(--security-mid);
  --color-mint-bright: var(--mint-bright);
}
* { box-sizing: border-box; }
html { min-height: 100%; background: var(--primary); font-size: 16px; }
body { margin: 0; min-height: 100%; font-family: var(--font-sans); color: var(--ink); background: var(--primary); }
body.app-body--guest { background: var(--primary); }
body.app-body--signed-in { background: linear-gradient(180deg, var(--primary) 0 18rem, var(--bg) 18rem 100%); }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
img { max-width: 100%; display: block; }
h1, h2, h3, p { margin-top: 0; }
h1 { font-size: clamp(1.75rem, 6vw, 3rem); line-height: 1.05; letter-spacing: -.04em; margin-bottom: .45rem; font-weight: var(--font-weight-display); }
h2 { font-size: clamp(1.18rem, 4vw, 1.65rem); letter-spacing: -.025em; margin-bottom: .3rem; font-weight: var(--font-weight-display); }
h3 { font-size: 1.05rem; margin-bottom: .3rem; font-weight: var(--font-weight-semibold); }
p { line-height: 1.48; }
:focus-visible { outline: 3px solid var(--focus-ring); outline-offset: 3px; }
.app-shell { min-height: 100dvh; padding-bottom: calc(88px + var(--safe-bottom)); background: linear-gradient(180deg, var(--primary) 0 15rem, var(--bg) 15rem 100%); }
.app-main { width: min(430px, 100%); min-height: calc(100dvh - 86px); margin: 0 auto; padding: var(--space-6) var(--space-4) calc(var(--space-8) + 4.5rem); background: var(--bg); border-radius: var(--radius-screen) var(--radius-screen) 0 0; box-shadow: var(--shadow-sheet); }
.mobile-page { display: grid; gap: var(--space-5); width: 100%; }
.mobile-page > * { min-width:0; }
.mobile-page--wide { max-width: 980px; margin: 0 auto; }
.mobile-page--compact { gap: var(--space-4); }
.stack { display: grid; gap: var(--space-4); }
.cluster { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.shell-header { position: sticky; top: 0; z-index: 40; color: var(--on-primary); background: var(--primary); border-bottom: 0; }
.shell-header__inner { width: min(430px, 100%); margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: 1rem 1.35rem 1.25rem; }
.shell-brand { display: flex; align-items: center; gap: .65rem; font-weight: var(--font-weight-display); letter-spacing: -.02em; }
.shell-brand__mark { width:38px; height:38px; display:block; flex:0 0 auto; object-fit:contain; background:transparent; border-radius:0; box-shadow:none; }
.shell-header .shell-brand__mark, .guest-header .shell-brand__mark { filter:brightness(0) invert(1); }
.shell-header__actions { display: flex; align-items: center; gap: .5rem; }
.shell-avatar { width: 40px; height: 40px; border-radius: 999px; display:grid; place-items:center; overflow:hidden; background: var(--bg); color: var(--primary-dark); font-weight: var(--font-weight-display); flex:0 0 auto; }
.shell-avatar img { width:100%; height:100%; object-fit:cover; }
.shell-profile { position:relative; }
.shell-profile__trigger { display:grid; place-items:center; width:44px; height:44px; padding:2px; border:0; border-radius:50%; background:transparent; color:inherit; cursor:pointer; }
.shell-profile__trigger:hover { background:var(--on-primary-overlay); }
.shell-profile__trigger:focus-visible { outline:2px solid var(--on-primary-border); outline-offset:2px; }
.shell-profile__menu { position:absolute; z-index:70; top:calc(100% + .7rem); right:0; width:min(290px,calc(100vw - 2rem)); overflow:hidden; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); color:var(--ink); box-shadow:var(--shadow-soft); }
.shell-profile__menu[hidden] { display:none; }
.shell-profile__identity { display:grid; gap:.08rem; padding:var(--space-4); border-bottom:1px solid var(--line); background:var(--surface-soft); }
.shell-profile__identity strong, .shell-profile__identity span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.shell-profile__identity strong { color:var(--primary-dark); }
.shell-profile__identity span { color:var(--muted); font-size:.84rem; }
.shell-profile__links { display:grid; padding:var(--space-2); }
.shell-profile__links a, .shell-profile__links button { width:100%; min-height:46px; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.7rem; padding:.65rem .7rem; border:0; border-radius:var(--radius); background:transparent; color:var(--ink); text-align:left; font:inherit; font-weight:var(--font-weight-semibold); cursor:pointer; }
.shell-profile__links a:hover, .shell-profile__links button:hover { background:var(--primary-soft); color:var(--primary-dark); }
.shell-profile__links a:focus-visible, .shell-profile__links button:focus-visible { outline:2px solid var(--focus-ring); outline-offset:1px; }
.shell-profile__links ion-icon { color:var(--muted); font-size:1.12rem; }
.shell-profile__links a > ion-icon:last-child { font-size:1rem; }
.shell-profile__links form { margin:0; }
.breadcrumb { display:flex; gap:.45rem; align-items:center; max-width:100%; min-width:0; overflow-x:auto; white-space:nowrap; scrollbar-width:none; color:var(--muted); font-size:.9rem; margin-bottom: var(--space-3); }
.breadcrumb::-webkit-scrollbar { display:none; }
.breadcrumb a { color: var(--primary-dark); font-weight: var(--font-weight-display); }
.shell-bottom-nav { position: fixed; left: 50%; bottom: 0; transform: translateX(-50%); width: min(430px, 100%); z-index: 50; display: grid; grid-template-columns: repeat(5, 1fr); gap: .1rem; padding: .5rem .85rem calc(.55rem + var(--safe-bottom)); border: 0; border-radius: 30px 30px 0 0; background: var(--surface-glass-strong); box-shadow: var(--shadow-nav); backdrop-filter: blur(14px); }
.shell-bottom-nav a, .shell-bottom-nav button { border:0; background:transparent; min-height:48px; border-radius:20px; display:grid; place-items:center; gap:.05rem; color:var(--muted); cursor:pointer; font-weight:var(--font-weight-semibold); font-size:.62rem; }
.shell-bottom-nav ion-icon { font-size: 1.28rem; }
.shell-bottom-nav .is-active, .shell-bottom-nav a:hover, .shell-bottom-nav button:hover { color: var(--primary-dark); background: var(--primary-soft); }
.shell-bottom-nav .is-active span { color: var(--primary-dark); }
.shell-bottom-nav__create { margin-top:-1.05rem; color:var(--on-primary) !important; }
.shell-bottom-nav__create ion-icon { width:44px; height:44px; padding:.62rem; border-radius:18px; color:var(--on-primary); background:var(--primary); box-shadow:0 12px 24px rgba(15,61,49,.2); }
.shell-bottom-nav__create span { color:var(--primary-dark); margin-top:-.1rem; }
.guest-shell { min-height:100dvh; display:grid; grid-template-rows:auto 1fr auto; background:var(--primary); }
.guest-header { width:min(430px,100%); margin:0 auto; padding:1rem 1.35rem; display:flex; align-items:center; justify-content:space-between; color:var(--on-primary); }
.guest-header .btn { min-height:44px; padding:.55rem .9rem; }
.guest-header .btn:not(.btn-primary) { background:var(--on-primary-overlay); color:var(--on-primary); border-color:transparent; }
.guest-header .btn-primary { color:var(--primary-dark); background:var(--bg); border-color:transparent; box-shadow:none; }
body.app-body--guest .app-main { width:min(430px,100%); min-height:auto; padding:0; background:transparent; border-radius:0; box-shadow:none; }

.app-body { min-height:100%; }
.breadcrumb__sep { color:var(--muted); }
.breadcrumb__current { color:var(--ink); font-weight:var(--font-weight-medium); }
.shell-nav { display: none; }
.shell-nav__link, .shell-nav__create { display: inline-flex; align-items: center; gap: .4rem; min-height: var(--button-min-height-sm); padding: .4rem .75rem; border-radius: var(--radius-pill); color: var(--on-primary-muted); font-size: .9rem; font-weight: var(--font-weight-display); text-decoration: none; white-space: nowrap; }
.shell-nav__link:hover { color: var(--on-primary); background: var(--on-primary-overlay); }
.shell-nav__link.is-active { color: var(--on-primary); background: var(--on-primary-overlay-strong); }
.shell-nav__create { color: var(--primary-dark); background: var(--bg); }
.shell-nav__create:hover { background: var(--surface); }
.shell-nav__link:focus-visible, .shell-nav__create:focus-visible { outline: 2px solid var(--on-primary-border); outline-offset: 2px; }

.shell-create-dialog, .sv-sheet-dialog { width:min(430px,100%); max-width:none; min-width:0; max-height:min(90dvh,680px); margin:auto 0 0 50%; overflow:auto; padding:0; border:0; border-radius:var(--radius-lg) var(--radius-lg) 0 0; color:var(--ink); background:transparent; box-shadow:var(--shadow-soft); transform:translateX(-50%); }
.shell-create-dialog::backdrop, .sv-sheet-dialog::backdrop { background:rgba(15,61,49,.42); backdrop-filter:blur(3px); }
.shell-create-dialog__panel, .sv-sheet-dialog__panel { display:grid; gap:var(--space-4); padding:var(--space-5) var(--space-4) calc(var(--space-5) + var(--safe-bottom)); background:var(--surface); border-radius:inherit; }
.shell-create-dialog__head, .sv-sheet-dialog__head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-3); }
.shell-create-dialog__head h2, .sv-sheet-dialog__head h2 { margin:.15rem 0 0; }
.shell-create-dialog__eyebrow, .sv-sheet-dialog__eyebrow { color:var(--muted); font-size:.76rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-sheet-dialog__body { min-width:0; }
.sv-sheet-dialog__copy { margin:0; color:var(--muted); line-height:1.55; }
.sv-sheet-dialog__actions { display:flex; justify-content:flex-end; gap:var(--space-2); flex-wrap:wrap; }
.shell-create-options { display:grid; gap:var(--space-2); }
.shell-create-option { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:var(--space-3); min-width:0; padding:.9rem; border:1px solid var(--line); border-radius:var(--radius-md); color:var(--ink); background:var(--surface-soft); text-decoration:none; }
.shell-create-option:hover { background:var(--primary-soft); border-color:transparent; }
.shell-create-option:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; }
.shell-create-option__icon { width:42px; height:42px; display:grid; place-items:center; border-radius:var(--radius); color:var(--on-primary); background:var(--primary); }
.shell-create-option__icon ion-icon { font-size:1.25rem; }
.shell-create-option strong, .shell-create-option small { display:block; }
.shell-create-option small { margin-top:.18rem; color:var(--muted); line-height:1.35; }
.shell-create-option > ion-icon { color:var(--muted); }
.sv-icon-button.sv-page-create, .btn.sv-page-create { display:none; }
.sub { color: var(--muted); font-size: .95rem; margin-bottom:0; }
.fw-bold { font-weight:900; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.grow { flex:1 1 auto; min-width:0; }
.row { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }
.btn {
  --_button-bg: var(--surface-soft);
  --_button-color: var(--primary-dark);
  --_button-border: transparent;
  --_button-shadow: none;
  min-height: var(--button-min-height);
  border: 1px solid var(--_button-border);
  border-radius: var(--button-radius);
  padding: var(--button-padding-y) var(--button-padding-x);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--button-gap);
  background: var(--_button-bg);
  color: var(--_button-color);
  font-weight: var(--font-weight-display);
  line-height: 1;
  text-align: center;
  cursor: pointer;
  box-shadow: var(--_button-shadow);
  text-decoration: none;
  vertical-align: middle;
  user-select: none;
  transition: transform .16s ease, background-color .16s ease, box-shadow .16s ease, border-color .16s ease, color .16s ease;
}
.btn:hover { transform: translateY(-1px); }
.btn:active { transform: translateY(0); }
.btn:disabled, .btn[aria-disabled="true"] { cursor: not-allowed; opacity: .56; transform: none; box-shadow: none; }
.btn ion-icon { flex: 0 0 auto; font-size: 1.05rem; color: currentColor; }
.btn span { color: currentColor; }

.btn-primary { --_button-bg: var(--primary); --_button-color: var(--on-primary); --_button-shadow: 0 12px 28px rgba(15,61,49,.18); }
.btn-primary:hover { --_button-bg: var(--primary-pressed); }
.btn-quiet { --_button-bg: var(--surface-soft); --_button-color: var(--primary-dark); }
.btn-danger { --_button-bg: var(--danger-soft); --_button-color: var(--danger); }

.btn--sm { min-height: var(--button-min-height-sm); padding: var(--button-padding-y-sm) var(--button-padding-x-sm); font-size: .86rem; }
.btn-large { min-height: var(--button-min-height-lg); padding: var(--button-padding-y-lg) var(--button-padding-x-lg); font-size: 1rem; }

.sv-icon-button {
  width: var(--icon-button-size);
  height: var(--icon-button-size);
  min-width: var(--icon-button-size);
  border-radius: var(--radius-pill);
  border: 1px solid transparent;
  background: var(--surface-soft);
  display: inline-grid;
  place-items: center;
  cursor: pointer;
  color: var(--primary-dark);
  line-height: 1;
  text-decoration: none;
  transition: transform .16s ease, background-color .16s ease, box-shadow .16s ease, color .16s ease;
}
.sv-icon-button:hover { transform: translateY(-1px); }
.sv-icon-button:active { transform: translateY(0); }
.sv-icon-button ion-icon { color: currentColor; }
.sv-icon-button:disabled, .sv-icon-button[aria-disabled="true"] { cursor: not-allowed; opacity: .56; transform: none; }
.sv-card { border:0; border-radius:var(--card-radius); background:var(--card-bg); box-shadow:var(--shadow-card); }
:where(.app-body--signed-in) .sv-card { background:transparent; box-shadow:none; }
.sv-card--stack { padding: var(--card-padding); display: grid; gap: var(--card-gap); }
.sv-card--section { padding: var(--card-padding); }
.sv-card--surface { background:var(--surface); box-shadow:var(--shadow-card); }
.action-list { display: grid; gap: .85rem; }
.action-list--minimal { gap:.65rem; }
.app-section { display: grid; gap: var(--space-4); }
.app-section--quiet { padding:0; background:transparent; box-shadow:none; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; }
.section-heading p { color: var(--muted); margin-bottom: 0; }
.section-heading--compact { align-items:center; margin-bottom:.8rem; }
.section-heading--compact h2 { margin:0; }
.section-heading--compact p { margin:.12rem 0 0; color:var(--muted); }
.section-heading--flush { margin-bottom:0; }
.sv-focus-card { display:grid; gap:var(--space-4); padding:var(--card-padding); border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--gradient-panel-soft); box-shadow:var(--shadow-card); }
.sv-focus-card--surface { background:var(--surface); border:1px solid var(--line); }
.sv-focus-card__content { display:grid; gap:.35rem; }
.sv-focus-card__eyebrow { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-focus-card h2 { margin-bottom:0; color:var(--primary-dark); }
.sv-focus-card p { margin-bottom:0; color:var(--muted); }
.sv-focus-card__meta { color:var(--primary-dark); font-weight:var(--font-weight-semibold); font-size:.9rem; }
.sv-focus-card__actions { display:flex; gap:var(--space-2); flex-wrap:wrap; }
.sv-focus-card--surface .sv-focus-card__actions { margin-top:.25rem; }
.sv-focus-card__actions .btn-quiet { background:var(--surface-soft); }
.sv-list-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.8rem; border:1px solid var(--line); border-radius:var(--radius-md); }
.sv-list-row--no-icon { grid-template-columns:minmax(0,1fr) auto; }
.sv-list-row--action { padding:.85rem; background:var(--surface-soft); box-shadow:none; position:relative; color:inherit; transition:background .16s ease, border-color .16s ease, transform .16s ease; }
.sv-list-row__icon { display:grid; place-items:center; color:var(--primary-dark); background:transparent; }
.sv-list-row--action .sv-list-row__icon { width:1.5rem; height:1.5rem; border-radius:0; font-size:1.35rem; }
.sv-list-row__content { display:grid; min-width:0; }
.sv-list-row--action .sv-list-row__content { gap:.15rem; }
.sv-list-row__content strong { color:var(--primary-dark); }
.sv-list-row--action:hover { background:var(--primary-soft); border-color:var(--chart-active-border); transform:translateY(-1px); }
.sv-list-row--action:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; }
.sv-list-row__chevron { color:var(--muted); transition:color .16s ease, transform .16s ease; }
.sv-list-row--action:hover .sv-list-row__chevron { color:var(--primary-dark); transform:translateX(2px); }
.sv-inline-actions { display:flex; gap:.45rem; flex-wrap:wrap; }
.empty-state { padding: 1.6rem; text-align: center; display: grid; justify-items: center; gap: .65rem; background: var(--bg); }
.empty-state__icon { width: 58px; height: 58px; border-radius: 22px; background: var(--primary-soft); color: var(--primary-dark); display: grid; place-items: center; font-size: 1.55rem; }
.empty-state__title { font-weight: var(--font-weight-display); }

.workspace-list { display:grid; gap:var(--space-3); }
.workspace-list--quick-links { gap:var(--space-3); }
.workspace-list-card { display:grid; gap:.5rem; }
.workspace-list-card--compact { padding:var(--card-padding); }
.workspace-list-card__header { display:flex; align-items:flex-start; gap:var(--space-3); }
.workspace-list-card__title-row { display:flex; align-items:center; gap:.45rem; flex-wrap:wrap; min-width:0; }
.workspace-list-card__title { color:var(--primary-dark); font-weight:var(--font-weight-display); text-decoration:none; }
.workspace-list-card__title:hover { text-decoration:underline; }
.workspace-list-card__actions { flex:0 0 auto; display:flex; align-items:center; gap:.4rem; }

.overview-card--flat { background:var(--surface-soft); box-shadow:none; }
.overview-card__value--compact { font-size:1.12rem; }
.app-section__title { margin:.15rem 0 0; color:var(--primary-dark); font-size:1.15rem; }
.app-section__body { margin:0; color:var(--muted); font-size:.9rem; line-height:1.5; }
.empty-state__actions { display:flex; gap:.45rem; flex-wrap:wrap; justify-content:center; }
.sv-card__eyebrow { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-card__link { display:inline-flex; align-items:center; gap:.35rem; color:var(--primary-dark); font-weight:var(--font-weight-display); text-decoration:none; white-space:nowrap; }
.sv-card__link:hover span { text-decoration:underline; text-underline-offset:.18em; }
.sv-card__link ion-icon { transition:transform .16s ease; }
.sv-card__link:hover ion-icon { transform:translateX(2px); }
.sv-card__link:focus-visible { outline:2px solid var(--focus-ring); outline-offset:3px; border-radius:var(--radius-sm); }
.sv-card__label { font-weight:var(--font-weight-display); color:var(--primary-dark); }
.sv-price-card { position:relative; display:grid; gap:.8rem; padding:var(--card-padding); background:var(--bg); box-shadow:none; }
.sv-price-card--highlight { background:linear-gradient(145deg,var(--surface-soft),var(--surface)); box-shadow:var(--shadow-card); }
.sv-price-card__badge { justify-self:start; min-height:30px; padding:.3rem .7rem; border-radius:var(--radius-pill); background:var(--primary); color:var(--on-primary); font-weight:var(--font-weight-display); font-size:.8rem; }
.sv-price-card__label { color:var(--muted); font-size:.82rem; font-weight:var(--font-weight-display); }
.sv-price-card__price { color:var(--primary-dark); font-size:clamp(2rem,7vw,3rem); line-height:1; letter-spacing:-.055em; font-weight:var(--font-weight-display); }
.sv-price-card__price small { font-size:.92rem; letter-spacing:0; color:var(--muted); font-weight:var(--font-weight-semibold); }
.sv-price-card__form { display:grid; margin-top:.3rem; }
.sv-card-grid { display:grid; gap:.7rem; grid-template-columns:1fr; }
.sv-record-card { position:relative; min-width:0; overflow:hidden; padding:0; border:0; border-bottom:1px solid var(--line); border-radius:0; background:transparent; box-shadow:none; }
.sv-record-card__link { display:grid; gap:.38rem; min-width:0; padding:.9rem .2rem; color:var(--ink); text-decoration:none; }
.sv-record-card__link:hover { background:var(--surface-soft); }
.sv-record-card__header { display:flex; align-items:start; justify-content:space-between; gap:1rem; min-width:0; }
.sv-record-card__header > div { min-width:0; }
.sv-record-card__title { min-width:0; overflow-wrap:anywhere; font-size:1.12rem; font-weight:var(--font-weight-display); letter-spacing:-.02em; }
.sv-record-card__meta { min-width:0; overflow-wrap:anywhere; color:var(--muted); font-size:.9rem; }
.sv-record-card__task { display:flex; align-items:center; gap:.35rem; min-width:0; margin-top:.2rem; color:var(--muted); font-size:.86rem; }
.sv-record-card__task ion-icon { flex:0 0 auto; color:var(--primary-dark); }
.sv-record-card__task span { min-width:0; overflow-wrap:anywhere; }
.is-selection-mode .sv-record-card__link { padding-left:3.8rem; }

.sv-card--transparent { background:transparent; box-shadow:none; }
.empty-state--quiet { padding:1rem 0; background:transparent; box-shadow:none; }

.sv-price-card__form { gap:.72rem; }
.sv-price-card__consent {
  grid-template-columns:auto minmax(0,1fr);
  gap:.62rem;
  align-items:start;
  color:var(--ink);
  font-size:.9rem;
  font-weight:var(--font-weight-medium);
  line-height:1.48;
}
.sv-price-card__consent input[type="checkbox"] { margin-top:.14rem; }
.sv-price-card__legal-links { display:flex; flex-wrap:wrap; align-items:center; gap:.3rem .48rem; font-size:.86rem; color:var(--muted); }
.sv-price-card__legal-links a { color:var(--primary-dark); font-weight:var(--font-weight-semibold); text-underline-offset:.16em; }

.sv-interest-rating { display:inline-flex; align-items:center; gap:.08rem; width:max-content; color:var(--primary-dark); font-size:.82rem; line-height:1; }
.sv-interest-rating ion-icon { width:.88rem; height:.88rem; }
.sv-interest-rating--compact { gap:.2rem; font-weight:var(--font-weight-semibold); }
.sv-danger-zone { padding:var(--card-padding); border:1px solid color-mix(in srgb, var(--danger) 18%, transparent); border-radius:var(--card-radius); background:var(--danger-soft); box-shadow:none; }
.inline-note { padding: .95rem 1rem; border-radius: 22px; background: var(--surface-soft); color: var(--primary-dark); font-weight: var(--font-weight-semibold); }
.inline-note--danger { background: var(--danger-soft); color: var(--danger); }
.inline-note--warn { background: var(--warn-soft); color: var(--warn-contrast); }

.sv-alert { display:flex; align-items:flex-start; gap:.7rem; padding:.95rem 1rem; border-radius:var(--radius-lg); font-weight:var(--font-weight-semibold); }
.sv-alert ion-icon { margin-top:.1rem; flex:0 0 auto; font-size:1.2rem; }
.sv-alert--success { background:var(--success-soft); color:var(--success); }
.sv-alert--info { background:var(--surface-soft); color:var(--primary-dark); }
.sv-alert--danger { background:var(--danger-soft); color:var(--danger); }
.sv-alert--warn { background:var(--warn-soft); color:var(--warn-contrast); }

.sv-celebration { position:fixed; inset:0; z-index:90; overflow:hidden; pointer-events:none; }
.sv-celebration__message { position:fixed; top:calc(env(safe-area-inset-top, 0px) + 1rem); left:50%; z-index:2; display:inline-flex; align-items:center; gap:.5rem; padding:.72rem 1rem; border:1px solid color-mix(in srgb, var(--success) 18%, transparent); border-radius:999px; background:var(--surface); color:var(--primary-dark); box-shadow:var(--shadow-soft); font-weight:var(--font-weight-bold); transform:translateX(-50%); animation:sv-celebration-message 1.9s ease both; }
.sv-celebration__piece { position:absolute; top:-8vh; left:var(--celebration-x); width:8px; height:14px; border-radius:3px; background:var(--success); opacity:0; transform:translate3d(0,-10vh,0) rotate(0deg); animation:sv-confetti-fall var(--celebration-duration) cubic-bezier(.18,.74,.3,1) var(--celebration-delay) forwards; }
.sv-celebration__piece:nth-child(4n+1) { background:var(--primary); }
.sv-celebration__piece:nth-child(4n+2) { background:var(--primary-soft); }
.sv-celebration__piece:nth-child(4n+3) { background:var(--warn); width:10px; height:10px; border-radius:50%; }
.sv-celebration__piece:nth-child(4n) { background:var(--accent-blue); }
.sv-celebration.is-reduced-motion .sv-celebration__message { animation:none; opacity:1; }

@keyframes sv-confetti-fall {
  0% { opacity:0; transform:translate3d(0,-10vh,0) rotate(0deg); }
  8% { opacity:1; }
  100% { opacity:0; transform:translate3d(var(--celebration-drift),108vh,0) rotate(var(--celebration-rotation)); }
}
@keyframes sv-celebration-message {
  0% { opacity:0; transform:translate(-50%,-.6rem) scale(.96); }
  15%, 78% { opacity:1; transform:translate(-50%,0) scale(1); }
  100% { opacity:0; transform:translate(-50%,-.25rem) scale(.98); }
}
.badge, .chip { display:inline-flex; align-items:center; gap:.35rem; min-height:30px; border-radius:999px; padding:.3rem .72rem; font-size:.76rem; font-weight:var(--font-weight-display); background:var(--surface-soft); color:var(--primary-dark); }
.chips { display:flex; gap:.45rem; flex-wrap:wrap; }
.badge--success { background:var(--success-soft); color:var(--success); }
.dot { width:.5rem; height:.5rem; border-radius:50%; background:currentColor; opacity:.55; }

.sv-meta-chip { display:inline-flex; align-items:center; min-height:28px; padding:.32rem .58rem; border-radius:var(--radius-pill); background:var(--surface); color:var(--muted); font-size:.8rem; font-weight:var(--font-weight-semibold); }
.sv-meta-chip--warn { background:var(--warn-soft); color:var(--warn-contrast); }
.form-grid { display: grid; gap: .8rem; }
.form-grid--2 { grid-template-columns: 1fr; }
.sv-field, label { display: grid; gap: var(--field-gap); font-weight: var(--font-weight-display); color: var(--ink); }
.sv-field { min-width:0; align-self:start; align-content:start; }
.sv-field__label { font-weight: var(--font-weight-display); color: var(--ink); }
.sv-field__helper { color: var(--muted); font-size: .86rem; font-weight: var(--font-weight-medium); }
.sv-input, input, select, textarea { width: 100%; border: 1px solid transparent; border-radius: var(--field-radius); min-height: var(--field-min-height); padding: var(--field-padding-y) var(--field-padding-x); background: var(--field-bg); color: var(--field-color); outline: none; }
input[type="checkbox"] { width:1.15rem; height:1.15rem; min-width:1.15rem; min-height:1.15rem; flex:0 0 1.15rem; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; accent-color:var(--primary-dark); }
input[type="date"], input[type="datetime-local"], input[type="time"] { display:block; min-width:0; max-width:100%; inline-size:100%; width:100%; min-inline-size:0; max-inline-size:100%; overflow:hidden; }
input[type="date"]::-webkit-date-and-time-value, input[type="datetime-local"]::-webkit-date-and-time-value, input[type="time"]::-webkit-date-and-time-value { width:100%; min-width:0; max-width:100%; min-inline-size:0; text-align:left; overflow:hidden; }
input[type="date"]::-webkit-datetime-edit, input[type="datetime-local"]::-webkit-datetime-edit, input[type="time"]::-webkit-datetime-edit { min-width:0; min-inline-size:0; }
@supports (-webkit-touch-callout: none) {
  input[type="date"], input[type="datetime-local"], input[type="time"] {
    width:-webkit-fill-available;
    inline-size:-webkit-fill-available;
  }
}
.sv-input::placeholder, input::placeholder, textarea::placeholder { color: var(--field-placeholder); }
.sv-input:focus, input:focus, select:focus, textarea:focus { box-shadow: 0 0 0 3px var(--focus-ring); }
.sv-input[aria-invalid="true"], input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: color-mix(in srgb, var(--danger) 36%, transparent); background: var(--danger-soft); }
.sv-input:disabled, input:disabled, select:disabled, textarea:disabled { cursor: not-allowed; opacity: .62; }
textarea, .sv-input--textarea { min-height: 120px; resize: vertical; }
.form-actions { display: flex; gap: .6rem; flex-wrap: wrap; align-items: center; }
.form-grid__full { grid-column:1 / -1; }
.form-grid--filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
.sv-search-panel { display:grid; grid-template-columns:minmax(0,1fr); gap:.75rem; min-width:0; padding:var(--card-padding); background:transparent; }
.sv-search-box { min-height:48px; display:flex; align-items:center; gap:.6rem; padding:0 .95rem; border:1px solid var(--line); border-radius:var(--radius-pill); background:var(--surface); box-shadow:var(--shadow-card); color:var(--muted); }
.sv-search-box input { width:100%; border:0; outline:0; background:transparent; color:var(--ink); min-height:46px; }
.sv-search-box input:focus, .sv-search-box input:focus-visible { outline:0; box-shadow:none; }
.sv-search-box ion-icon { font-size:1.2rem; }
.sv-applications-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"meta actions"; align-items:center; gap:.6rem var(--space-3); min-width:0; }
.sv-applications-toolbar__actions { grid-area:actions; display:flex; align-items:center; justify-content:flex-end; gap:.5rem; min-width:0; }
.sv-applications-toolbar .sv-result-meta { grid-area:meta; }
.sv-applications-toolbar .sv-view-switch { grid-area:view; }

.sv-form-workspace { display:grid; gap:var(--space-4); width:min(100%,960px); margin-inline:auto; }
.sv-consumer-action { padding-bottom:var(--space-6); }
.sv-form-layout { display:grid; gap:var(--space-3); align-items:start; min-width:0; }
.sv-form-layout [hidden] { display:none !important; }
.sv-form-surface { display:grid; gap:0; min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:var(--card-radius); background:var(--surface); box-shadow:var(--shadow-card); }
.sv-form-section { display:grid; gap:var(--space-3); min-width:0; padding:var(--card-padding); }
.sv-form-section + .sv-form-section { border-top:1px solid var(--line); }
.sv-form-section__head { display:grid; gap:.2rem; }
.sv-form-section__head h2 { margin:0; color:var(--primary-dark); }
.sv-form-section__head p { margin:0; color:var(--muted); font-size:.9rem; font-weight:var(--font-weight-medium); }
.sv-form-disclosure { border-top:1px solid var(--line); }
.sv-form-disclosure__summary { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); min-height:60px; padding:var(--space-4) var(--card-padding); color:var(--primary-dark); font-weight:var(--font-weight-display); cursor:pointer; list-style:none; }
.sv-form-disclosure__summary::-webkit-details-marker { display:none; }
.sv-form-disclosure__summary:hover { background:var(--surface-soft); }
.sv-form-disclosure__summary:focus-visible { outline:2px solid var(--focus-ring); outline-offset:-2px; }
.sv-form-disclosure__summary ion-icon { flex:0 0 auto; color:var(--muted); transition:transform .16s ease; }
.sv-form-disclosure[open] > .sv-form-disclosure__summary ion-icon { transform:rotate(180deg); }
.sv-form-disclosure__content { display:grid; gap:var(--space-3); padding:0 var(--card-padding) var(--card-padding); }
.sv-form-disclosure__content > .sub { margin:0; }
.form-actions--sticky { grid-column:1 / -1; position:sticky; bottom:calc(var(--safe-bottom, 0px) + 72px); z-index:5; justify-content:stretch; padding:.75rem; border:1px solid var(--line); border-radius:var(--card-radius); background:var(--surface-sticky); box-shadow:0 16px 40px rgba(13,43,38,.12); backdrop-filter:blur(16px); }
.form-actions--sticky .btn { flex:1 1 140px; }

.sv-interest-picker { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; min-height:2.6rem; }
.sv-interest-picker label { cursor:pointer; }
.sv-interest-picker__stars { display:flex; flex-direction:row-reverse; align-items:center; gap:.18rem; }
.sv-interest-picker input { position:absolute; width:1px; min-width:1px; height:1px; min-height:1px; margin:0; padding:0; border:0; opacity:0; overflow:hidden; pointer-events:none; }
.sv-interest-picker__none, .sv-interest-picker__star { display:inline-flex; align-items:center; justify-content:center; min-height:2.35rem; border:1px solid var(--line); border-radius:var(--radius-pill); background:var(--surface); color:var(--muted); }
.sv-interest-picker__none { padding:.45rem .8rem; font-size:.86rem; font-weight:var(--font-weight-semibold); }
.sv-interest-picker__star { width:2.35rem; padding:0; font-size:1.05rem; }
.sv-interest-picker input:checked + span { color:var(--primary-dark); }
.sv-interest-picker__star:has(input:checked), .sv-interest-picker__star:has(input:checked) ~ .sv-interest-picker__star { border-color:var(--primary-border); background:var(--primary-soft); color:var(--primary-dark); }
.sv-interest-picker__star:focus-within, .sv-interest-picker__none:focus-within { outline:2px solid var(--focus); outline-offset:2px; }
.sv-interest-control { display:grid; gap:.3rem; justify-items:start; margin-top:.2rem; }
.sv-interest-control__label { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-semibold); }
.sv-interest-form, .sv-interest-form__stars { display:flex; flex-wrap:wrap; align-items:center; gap:.2rem; }
.sv-interest-form__star { display:inline-grid; place-items:center; width:2rem; height:2rem; padding:0; border:0; border-radius:var(--radius-pill); background:transparent; color:var(--muted); cursor:pointer; }
.sv-interest-form__star:hover, .sv-interest-form__star:focus-visible, .sv-interest-form__star.is-active { color:var(--primary-dark); background:var(--primary-soft); }
.sv-interest-form__clear { min-height:2rem; padding:.2rem .45rem; border:0; background:transparent; color:var(--muted); font:inherit; font-size:.78rem; cursor:pointer; text-decoration:underline; text-underline-offset:.18em; }
.sv-interest-form__clear:hover, .sv-interest-form__clear:focus-visible { color:var(--ink); }
.sv-page-grid { display: grid; gap: var(--space-4); }
.sv-page-grid--equal { gap:var(--space-4); }
.sv-page-grid--aside-right { gap:var(--space-4); }
.page-head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-3); flex-wrap:wrap; }
.page-head--compact { align-items:center; flex-wrap:nowrap; color:var(--ink); padding:.15rem .25rem .35rem; }
.page-head--compact h1 { margin:0; color:var(--ink); }
.page-head--compact .sub { margin:0; color:var(--muted); }
.page-head__title { margin:0; color:var(--ink); font-size:1.65rem; font-weight:var(--font-weight-display); line-height:1.15; letter-spacing:-.02em; }
.app-body--signed-in .page-head { align-items:center; flex-wrap:nowrap; color:var(--ink); padding:.1rem .2rem .25rem; }
.app-body--signed-in .page-head__title { font-size:clamp(1.75rem,6vw,3rem); line-height:1.05; letter-spacing:-.04em; }
.page-head__actions { display:flex; align-items:center; gap:.45rem; flex-wrap:wrap; }
.section-heading__label { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.page-head--tight { align-items:center; flex-wrap:nowrap; color:var(--ink); padding:.1rem .2rem .25rem; }
.page-head--tight h1 { margin:0; color:var(--ink); }
.page-head__tools { display:flex; gap:.45rem; }
.page-head--tight .sv-icon-button { background:var(--surface-glass-strong); color:var(--primary-dark); }
.sv-disclosure { position:relative; }
.sv-disclosure > summary, .sv-filter-trigger { list-style:none; display:inline-flex; align-items:center; gap:.45rem; min-height:40px; padding:.5rem .82rem; border:0; border-radius:var(--radius-pill); background:var(--surface); color:var(--primary-dark); font-weight:var(--font-weight-semibold); box-shadow:var(--shadow-card); cursor:pointer; }
.sv-disclosure > summary::-webkit-details-marker { display:none; }
.sv-disclosure[open] { z-index:20; }
.sv-disclosure--menu { justify-self:start; }
.sv-disclosure__menu { position:absolute; right:auto; left:0; top:calc(100% + .45rem); min-width:210px; max-width:calc(100vw - 2rem); display:grid; gap:.35rem; padding:.55rem; border-radius:var(--radius-md); background:var(--surface); box-shadow:var(--shadow-soft); }
.sv-applications-toolbar .sv-disclosure__menu { right:0; left:auto; }
.sv-disclosure__menu a, .sv-disclosure__menu button { width:100%; display:flex; align-items:center; gap:.55rem; padding:.7rem .75rem; border:0; border-radius:var(--radius); color:var(--ink); background:transparent; text-align:left; cursor:pointer; }
.sv-disclosure__menu a:hover, .sv-disclosure__menu button:hover { background:var(--primary-soft); }
.sv-filter-trigger__count { min-width:22px; min-height:22px; display:grid; place-items:center; padding:.12rem .35rem; border-radius:var(--radius-pill); color:var(--on-primary); background:var(--primary); font-size:.72rem; font-weight:var(--font-weight-display); }
.sv-fact-list { display:grid; gap:.7rem; }
.sv-fact-list__item { display:flex; justify-content:space-between; gap:.9rem; align-items:center; padding:.8rem .9rem; border-radius:var(--radius-md); background:var(--bg); font-size:.9rem; }
.sv-fact-list__item span { color:var(--muted); }
.sv-fact-list__item strong { color:var(--primary-dark); font-weight:var(--font-weight-display); text-align:right; }
.sv-result-meta { display:flex; flex-wrap:wrap; align-items:center; gap:.45rem; color:var(--muted); font-size:.9rem; }
.sv-result-meta strong { color:var(--primary-dark); font-size:1.05rem; }

.sv-calendar { display:grid; gap:var(--space-4); padding:var(--card-padding); border-radius:var(--radius-lg); background:var(--surface); box-shadow:var(--shadow-card); transition:opacity .16s ease; }
.sv-calendar[aria-busy="true"] { opacity:.62; }
.sv-calendar__heading { margin:0; }
.sv-calendar__heading > div:first-child { min-width:0; }
.sv-calendar__heading > .cluster { flex:0 0 auto; flex-wrap:nowrap; }
.sv-calendar__grid { display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); gap:.35rem; }
.sv-calendar__weekday { text-align:center; color:var(--muted); font-size:.72rem; font-weight:var(--font-weight-semibold); }
.sv-calendar__day { height:54px; min-height:54px; display:grid; place-items:center; align-content:center; gap:.12rem; padding:.28rem; border:1px solid transparent; border-radius:16px; background:var(--surface-soft); color:var(--primary-dark); position:relative; }
.sv-calendar__day.is-muted { opacity:.46; }
.sv-calendar__day.is-today { border-color:var(--primary-dark); box-shadow:inset 0 0 0 1px var(--surface); }
.sv-calendar__day.has-activity { background:var(--surface-muted); }
.sv-calendar__day-number { font-weight:var(--font-weight-display); line-height:1; }
.sv-calendar__dot { min-width:1.15rem; height:1.15rem; padding:0 .25rem; border-radius:var(--radius-pill); display:inline-flex; align-items:center; justify-content:center; background:var(--primary-dark); color:var(--on-primary); font-size:.68rem; line-height:1; }
.sv-calendar__days { min-width:0; }
.sv-calendar__day.is-selected { opacity:1; border-color:var(--primary-dark); background:var(--primary-dark); color:var(--on-primary); box-shadow:none; }
.sv-calendar__day.is-selected .sv-calendar__dot { background:var(--surface); color:var(--primary-dark); }
.sv-calendar__day.is-selected.is-today { box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--primary-dark); }
.sv-calendar-day-view { scroll-margin-block:calc(80px + var(--space-3)) calc(110px + var(--safe-bottom)); display:grid; gap:var(--space-3); padding:var(--space-4); border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface-soft); outline:none; }
.sv-calendar-day-view[hidden] { display:none; }
.sv-calendar-day-view:focus-visible { outline:3px solid var(--focus-ring); outline-offset:3px; }
.sv-calendar-day-view__head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-3); }
.sv-calendar-day-view__head h3 { margin:.15rem 0 0; color:var(--primary-dark); font-size:1.2rem; }
.sv-calendar-day-view__head .sub { margin:.2rem 0 0; }
.sv-calendar-day-view__events { display:grid; border-top:1px solid var(--line); }
.sv-calendar-day-view__event { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.7rem; min-width:0; min-height:54px; padding:.7rem .15rem; border-bottom:1px solid var(--line); color:var(--ink); }
.sv-calendar-day-view__event:hover { background:var(--surface); }
.sv-calendar-day-view__event > span:nth-child(2) { min-width:0; }
.sv-calendar-day-view__event strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--primary-dark); }
.sv-calendar-day-view__event small { display:block; margin-top:.08rem; color:var(--muted); }
.sv-calendar-day-view__event-icon { display:grid; place-items:center; color:var(--primary-dark); font-size:1.2rem; }
.sv-calendar-day-view__empty { display:flex; align-items:center; gap:.65rem; padding:.75rem 0; color:var(--muted); }
.sv-calendar-day-view__empty ion-icon { flex:0 0 auto; color:var(--primary); font-size:1.25rem; }
.sv-calendar-day-view__empty p { margin:0; }
.sv-calendar-day-view__actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; }
.sv-calendar-day-view__actions .btn { width:100%; justify-content:center; }
.sv-import { display:grid; gap:var(--space-4); }
.sv-import .sv-form-workspace { width:min(100%,960px); }
.sv-import__workspace--preview { width:min(100%,1120px) !important; }
.sv-import__guide { display:grid; gap:var(--space-3); margin:0; }
.sv-import__guide div { display:grid; gap:.2rem; }
.sv-import__guide strong { color:var(--primary-dark); }
.sv-import__guide span { color:var(--muted); font-weight:var(--font-weight-medium); }
.sv-import__list { margin:0 0 0 1.1rem; color:var(--muted); }
.sv-import__mapping { display:flex; flex-wrap:wrap; gap:.45rem; }
.sv-import__mapping-chip { display:inline-flex; align-items:center; min-height:30px; padding:.35rem .65rem; border-radius:var(--radius-pill); background:var(--surface-soft); color:var(--primary-dark); font-size:.84rem; font-weight:var(--font-weight-semibold); }
.sv-import__preview { overflow:hidden; border-top:1px solid var(--line); background:var(--surface); }
.sv-import__scroll { overflow:auto; max-height:58vh; min-width:0; }
.sv-import__table { width:100%; border-collapse:collapse; min-width:680px; }
.sv-import__table th, .sv-import__table td { padding:.75rem .85rem; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
.sv-import__table th { position:sticky; top:0; background:var(--surface); color:var(--primary-dark); font-weight:var(--font-weight-display); z-index:1; }
.sv-import__table-index { color:var(--muted); width:3rem; }
.sv-import__table-company { font-weight:var(--font-weight-semibold); color:var(--primary-dark); }
.sv-plan { min-width:0; }
.sv-plan__title { margin:0; font-size:clamp(1.7rem,6vw,2.6rem); line-height:.98; letter-spacing:-.045em; color:var(--primary-dark); font-weight:var(--font-weight-display); }
.sv-plan__status-chips { display:flex; gap:.45rem; flex-wrap:wrap; margin:.3rem 0; }
.sv-plan__status-note { padding:.8rem 1rem; border-radius:var(--radius-md); background:var(--surface-soft); }
.sv-plan__portal { display:grid; gap:.75rem; padding:var(--card-padding); border-radius:var(--radius-lg); background:var(--bg); }
.sv-plan__usage { align-self:start; }
.sv-plan__subtitle { color:var(--muted); font-size:.88rem; line-height:1.45; }
.sv-plan__pricing-grid { margin-top:.35rem; }
.sv-plan__notice { padding:.85rem 1rem; border-radius:var(--radius-md); background:var(--surface-soft); }
.sv-plan .sv-card--stack { gap:1rem; }

.sv-plan-comparison-section { display:grid; gap:var(--space-3); }
.sv-plan-comparison { display:grid; min-width:0; border-top:1px solid var(--line); }
.sv-plan-comparison__row { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(5.5rem,.65fr) minmax(5.5rem,.75fr); align-items:center; gap:var(--space-3); min-height:3.35rem; padding:.65rem .2rem; border-bottom:1px solid var(--line); }
.sv-plan-comparison__row > :nth-child(2), .sv-plan-comparison__row > :nth-child(3) { text-align:center; }
.sv-plan-comparison__row > strong:last-child { color:var(--primary-dark); }
.sv-plan-comparison__head { min-height:3rem; background:var(--surface-soft); border-radius:var(--radius-md) var(--radius-md) 0 0; font-size:.88rem; }
.sv-plan-comparison__head small { display:block; margin-top:.1rem; color:var(--muted); font-size:.68rem; font-weight:var(--font-weight-regular); }
.sv-plan-comparison ion-icon { vertical-align:middle; font-size:1.15rem; }
.site-footer { margin-top:0; padding: var(--space-6) var(--space-4) var(--space-8); border-top: 1px solid var(--line); }
.site-footer__inner { width: min(430px, 100%); margin: 0 auto; display: grid; gap: var(--space-6); }

.site-footer__col { display: grid; gap: var(--space-2); align-content: start; }
.site-footer__col--brand { gap: var(--space-3); }

.site-footer__brand { text-decoration: none; }
.shell-brand--footer { gap: .5rem; font-size: 1rem; }
.shell-brand--footer .shell-brand__mark { width: 26px; height: 26px; }
.shell-brand__text { letter-spacing: -.02em; }

.site-footer__tagline { margin: 0; max-width: 34ch; font-size: .88rem; line-height: 1.45; }

.site-footer__col-title { font-size: .74rem; font-weight: var(--font-weight-display); letter-spacing: var(--tracking-label); }

.site-footer__links { margin: 0; padding: 0; list-style: none; display: grid; }
.site-footer__links li { min-width: 0; }
.site-footer__links a { display: inline-flex; align-items: center; min-height: var(--touch-target); font-size: .9rem; text-decoration: none; }
.site-footer__links a:hover { text-decoration: underline; }
.site-footer__links a:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 3px; border-radius: var(--radius-sm); }

.site-footer__links--inline { display: flex; flex-wrap: wrap; gap: 0 var(--space-4); }

.site-footer--public { background: var(--primary); border-top-color: var(--on-primary-overlay); color: var(--on-primary-muted); }
.site-footer--public .shell-brand--footer, .site-footer--public .site-footer__col-title { color: var(--on-primary); }
.site-footer--public .shell-brand__mark { background:transparent; filter:brightness(0) invert(1); }
.site-footer--public .site-footer__links a { color: var(--on-primary-muted); }
.site-footer--public .site-footer__links a:hover { color: var(--on-primary); }

.site-footer--auth { background: var(--primary); border-top-color: var(--on-primary-overlay); color: var(--on-primary-muted); }
.site-footer--auth .shell-brand--footer, .site-footer--auth .site-footer__col-title { color: var(--on-primary); }
.site-footer--auth .shell-brand__mark { background:transparent; filter:brightness(0) invert(1); }
.site-footer--auth .site-footer__links a { color: var(--on-primary-muted); }
.site-footer--auth .site-footer__links a:hover { color: var(--on-primary); }

.site-footer__legal-actions { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.15rem; }
.site-footer__legal-actions .btn { min-height:38px; background:var(--bg); color:var(--primary-dark); border-color:transparent; box-shadow:none; }
.site-footer__legal-actions .btn:hover { background:var(--surface-soft); }
.site-footer--auth .site-footer__legal-actions { justify-content:flex-end; }

.site-footer-gap { width:100%; height:clamp(2.5rem,6vw,4rem); background:var(--bg); }
.app-body--guest .site-footer-gap { background:transparent; }
.site-footer__contract-action {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:.28rem .62rem;
  border:1px solid var(--on-primary-border);
  border-radius:var(--radius-pill);
  color:var(--on-primary);
  background:transparent;
  font-size:.78rem;
  font-weight:var(--font-weight-display);
  line-height:1.2;
  text-decoration:none;
}
.site-footer__contract-action:hover { background:var(--on-primary-overlay); text-decoration:none; }
.site-footer__contract-action:focus-visible { outline:2px solid var(--on-primary-border); outline-offset:3px; }
.site-footer__trust-mark {
  display:inline-flex;
  width:fit-content;
  max-width:100%;
  margin-top:.15rem;
  border-radius:var(--radius-sm);
  opacity:.92;
}
.site-footer__trust-mark:hover { opacity:1; }
.site-footer__trust-mark:focus-visible { outline:2px solid var(--on-primary-border); outline-offset:3px; }
.site-footer__trust-mark img { display:block; width:134px; max-width:100%; height:auto; }

.site-footer__instagram-link {
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  width:44px;
  min-height:44px;
  margin-top:-.15rem;
  color:var(--on-primary);
  opacity:.88;
  text-decoration:none;
}
.site-footer__instagram-link--desktop { display:none; }
.site-footer__instagram-link:hover { opacity:1; }
.site-footer__instagram-link:focus-visible { outline:2px solid var(--on-primary-border); outline-offset:3px; border-radius:var(--radius-sm); }
.site-footer__instagram-link img { display:block; width:24px; height:24px; filter:brightness(0) invert(1); }
.sv-detail-page { display:grid; gap:var(--space-4); }
.sv-detail-hero { display:grid; gap:var(--space-3); padding:var(--card-padding); }
.sv-detail-hero__bar { display:flex; align-items:center; justify-content:space-between; }
.sv-detail-hero__actions { display:flex; gap:.45rem; }
.sv-detail-hero__identity { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:var(--space-3); }
.sv-detail-hero__identity h1 { margin:0; font-size:clamp(1.45rem,5.2vw,2.3rem); }
.sv-detail-hero__identity p { margin:.12rem 0 .5rem; color:var(--muted); }
.sv-detail-hero__meta { gap:.35rem; align-items:center; margin-bottom:.45rem; }
.sv-detail-hero--application .sv-detail-hero__identity { grid-template-columns:minmax(0,1fr); }
.sv-status-control { display:inline-grid; grid-template-columns:minmax(0,auto) auto; align-items:center; gap:.35rem; }
.sv-status-control .sv-input { min-height:38px; width:auto; max-width:12rem; padding:.35rem 2.2rem .35rem .75rem; border:0; border-radius:var(--radius-pill); background:var(--primary-soft); color:var(--primary-dark); font-weight:var(--font-weight-semibold); }
.sv-status-control .sv-icon-button { width:38px; height:38px; min-height:38px; background:var(--surface-glass); }
.sv-application-progress { display:none; padding:0 var(--card-padding); }
.sv-status-timeline { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); margin:0; padding:0; list-style:none; }
.sv-status-timeline__step { position:relative; display:grid; justify-items:center; gap:.2rem; min-width:0; padding-top:1.35rem; color:var(--muted); text-align:center; }
.sv-status-timeline__step::before { content:""; position:absolute; top:.46rem; left:0; right:0; height:2px; background:var(--line); }
.sv-status-timeline__step:first-child::before { left:50%; }
.sv-status-timeline__step:last-child::before { right:50%; }
.sv-status-timeline__dot { position:absolute; z-index:1; top:.15rem; width:.72rem; height:.72rem; border:2px solid var(--surface); border-radius:50%; background:var(--track-soft); box-shadow:0 0 0 2px var(--line); }
.sv-status-timeline__step strong { font-size:.82rem; color:inherit; }
.sv-status-timeline__step time { font-size:.72rem; white-space:nowrap; }
.sv-status-timeline__step.is-done, .sv-status-timeline__step.is-active { color:var(--primary-dark); }
.sv-status-timeline__step.is-done .sv-status-timeline__dot, .sv-status-timeline__step.is-active .sv-status-timeline__dot { background:var(--primary-dark); box-shadow:0 0 0 2px var(--primary-soft); }
.sv-section-panel { display:grid; gap:.8rem; padding:var(--card-padding); }
.sv-section-panel__head { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.65rem; }
.sv-section-panel__head h2 { margin:0; }
.sv-section-panel__head > ion-icon { width:40px; height:40px; padding:.55rem; border-radius:16px; color:var(--primary-dark); background:var(--primary-soft); }
.sv-section-panel--plain-head .sv-section-panel__head > ion-icon { width:1.55rem; height:1.55rem; padding:0; border-radius:0; background:transparent; }
.sv-data-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.8rem; align-items:center; padding:.78rem; border-radius:var(--radius-md); background:var(--surface-soft); }
.sv-data-row strong { display:block; }
.sv-data-row .sub { margin:.12rem 0 0; }
.sv-detail-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-3); margin:0; }
.sv-detail-facts div { display:grid; gap:.12rem; min-width:0; }
.sv-detail-facts dt { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); }
.sv-detail-facts dd { margin:0; color:var(--primary-dark); font-weight:var(--font-weight-display); overflow-wrap:anywhere; }
.sv-detail-facts__desktop-empty { display:none; margin:0; }
.sv-danger-zone__layout { display:flex; justify-content:space-between; gap:var(--space-3); align-items:flex-start; }
.sv-danger-zone h2 { margin:0 0 .2rem; font-size:1.1rem; }

.sv-detail-page--wide { max-width:none; margin:0; }
.sv-detail-hero { overflow:hidden; background:radial-gradient(circle at 100% 0%, rgba(0,208,158,.16), transparent 34%), var(--surface); }
.sv-detail-hero__copy { min-width:0; }
.sv-detail-layout { display:grid; gap:var(--space-4); align-items:start; min-width:0; }
.sv-detail-main, .sv-detail-aside { display:grid; gap:var(--space-4); min-width:0; align-content:start; }
.sv-detail-main > .sv-card--transparent, .sv-detail-aside > .sv-card--transparent { border-radius:0; }
.sv-detail-layout--application > .sv-detail-main, .sv-detail-layout--application > .sv-detail-aside { display:contents; }
.sv-detail-layout--application #details { order:1; }
.sv-detail-layout--application #contacts { order:2; }
.sv-detail-layout--application #interviews { order:3; }
.sv-detail-layout--application #tasks { order:4; }
.sv-detail-layout--application #offer-details { order:5; }
.sv-detail-layout--application #notes { order:6; }
.sv-detail-layout--application #documents { order:7; }

.sv-inline-create-panel { padding:var(--space-4); border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface-glass); }
.sv-inline-create-panel[hidden] { display:none; }
.sv-inline-create-panel .form-actions { justify-content:flex-end; }
.sv-check-row { display:flex; align-items:center; gap:.65rem; color:var(--ink); font-weight:var(--font-weight-semibold); }
.sv-check-row input { margin:0; }
.sv-document-picker { min-width:0; display:grid; gap:.55rem; max-height:18rem; overflow:auto; padding:.15rem; }
.sv-document-picker__item { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.7rem; align-items:start; padding:.75rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface-soft); cursor:pointer; }
.sv-document-picker__item input { margin-top:.15rem; }
.sv-document-picker__item span { display:grid; gap:.15rem; min-width:0; }
.sv-document-picker__item strong, .sv-document-picker__item small { overflow-wrap:anywhere; }
.sv-document-picker__item small { color:var(--muted); }
.sv-document-link-row .badge { margin-top:.35rem; }
.sv-danger-zone--application { width:100%; margin-inline:0; }
.sv-detail-hero.sv-detail-hero--application { overflow:visible; background:transparent; box-shadow:none; }
.sv-status-control__submit { min-height:38px; padding:.36rem .68rem; font-size:.78rem; white-space:nowrap; }
.sv-status-control__submit[hidden] { display:none !important; }
.sv-data-row--editable { align-items:start; }
.sv-data-row__actions { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:.35rem; }
.sv-data-row__actions form { display:inline-flex; }
.sv-icon-button--danger { background:var(--danger-soft); color:var(--danger); }
.sv-inline-edit-panel { margin-top:-.25rem; }
.sv-file-picker-control { position:relative; min-width:0; display:grid; gap:.5rem; padding:.55rem; border-radius:var(--field-radius); background:var(--field-bg); }
.sv-file-picker-control input[type="file"] { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.sv-file-picker-control__button { width:100%; pointer-events:none; }
.sv-file-picker-control__name { min-width:0; color:var(--muted); font-size:.86rem; font-weight:var(--font-weight-medium); overflow-wrap:anywhere; }
.sv-document-upload-form .form-grid--2 { grid-template-columns:1fr; }
.sv-document-upload-form__actions { display:grid; grid-template-columns:1fr; }
.sv-document-upload-form__actions .btn { width:100%; }

.sv-contact-list, .sv-contact-methods { min-width:0; }
.sv-contact-list { display:grid; border-top:1px solid var(--line); }
.sv-contact-row { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:var(--space-3); min-width:0; padding:.9rem 1rem; border-bottom:1px solid var(--line); }
.sv-contact-row > .sv-selection-checkbox { top:50%; left:1rem; transform:translateY(-50%); }
.sv-contacts-page.is-selection-mode .sv-contact-row { padding-left:3.5rem; }
.sv-contacts-page.is-selection-mode .sv-contact-row__actions { visibility:hidden; pointer-events:none; }
.sv-contact-row__main { display:grid; gap:.12rem; min-width:0; }
.sv-contact-row__main > strong { color:var(--primary-dark); }
.sv-contact-methods { display:flex; flex-wrap:wrap; gap:.35rem 1rem; margin-top:.3rem; }
.sv-contact-methods a { display:inline-flex; align-items:center; gap:.35rem; min-width:0; color:var(--muted); text-decoration:none; }
.sv-contact-methods a:hover { color:var(--primary-dark); text-decoration:underline; text-underline-offset:.16em; }
.sv-contact-methods a span { overflow-wrap:anywhere; }
.sv-contact-methods ion-icon { flex:0 0 auto; color:var(--primary-dark); }
.sv-contact-row__links { margin-top:.25rem; }
.sv-contact-row__actions { display:flex; align-items:center; justify-content:flex-end; gap:.3rem; }
.sv-contact-row__actions form { display:inline-flex; }
.sv-back-link { display:inline-flex; align-items:center; gap:.35rem; margin-bottom:.45rem; color:var(--muted); text-decoration:none; font-weight:var(--font-weight-medium); }
.sv-back-link:hover { color:var(--ink); }
.sv-contacts-page { display:grid; gap:var(--space-5); }
.sv-contacts-page .page-head__actions { margin-left:auto; }
.sv-contact-choice { border:0; padding:0; margin:0; }
.sv-contact-choice legend { font-weight:700; margin-bottom:.5rem; }
.sv-contact-choice__list { display:flex; flex-wrap:wrap; gap:.45rem 1rem; }

.sv-detail-hero--application .sv-interest-control { display:flex; align-items:center; flex-wrap:wrap; gap:.4rem .65rem; margin-top:0; }
.sv-detail-hero--application .sv-interest-control__label { font-size:.82rem; }
.sv-detail-hero--application .sv-interest-form { margin:0; }
.sv-detail-hero--application .sv-interest-form__stars { gap:.1rem; }
.sv-detail-page .empty-state--quiet { gap:.45rem; padding:.35rem 0 .5rem; }
.sv-detail-page .empty-state--quiet .empty-state__actions { margin-top:.1rem; }
.sv-compact-empty { padding:.2rem 0; color:var(--muted); }
.sv-contact-create-panel .form-grid--2 { grid-template-columns:1fr; }
.sv-planning-page { gap:var(--space-6); }
.sv-planning-sections { display:grid; gap:var(--space-6); }
.sv-planning-section { display:grid; gap:.55rem; min-width:0; }
.sv-planning-section .section-heading { margin:0; }
.sv-planning-section .section-heading h2 { margin:0; }
.sv-planning-list { display:grid; min-width:0; border-top:1px solid var(--line); }
.sv-planning-row { position:relative; min-width:0; }
.sv-planning-row > .sv-list-row--planning { padding-right:3.15rem; }
.sv-planning-row__calendar { position:absolute; top:50%; right:.15rem; z-index:1; transform:translateY(-50%); }
.sv-planning-row__calendar:hover { transform:translateY(-50%); }
.sv-list-row--planning { grid-template-columns:minmax(0,1fr) auto; gap:var(--space-3); padding:.88rem .2rem; border-width:0 0 1px; border-radius:0; background:transparent; box-shadow:none; transform:none; }
.sv-list-row--planning:hover { padding-inline:.7rem; background:var(--surface-soft); border-color:var(--line); transform:none; }
.sv-list-row--planning:focus-visible { border-radius:var(--radius-sm); }
.sv-list-row--planning .sv-list-row__content { gap:.12rem; }
.sv-list-row__meta, .sv-list-row__state { min-width:0; overflow-wrap:anywhere; color:var(--muted); font-size:.88rem; }
.sv-list-row__state--warn { color:var(--warn-contrast); font-weight:var(--font-weight-semibold); }
.sv-list-row--planning-done { opacity:.82; }
.sv-planning-history { display:grid; gap:.55rem; min-width:0; }
.sv-planning-history > summary { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); min-height:2.75rem; cursor:pointer; list-style:none; font-size:var(--font-size-h2); font-weight:var(--font-weight-bold); color:var(--text); }
.sv-planning-history > summary::-webkit-details-marker { display:none; }
.sv-planning-history > summary ion-icon { color:var(--muted); transition:transform .16s ease; }
.sv-planning-history[open] > summary ion-icon { transform:rotate(180deg); }
.sv-planning-history > summary:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; border-radius:var(--radius-sm); }

.sv-task-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:var(--space-3); min-width:0; padding:.88rem .2rem; border-bottom:1px solid var(--line); }
.sv-task-row__content { display:grid; gap:.12rem; min-width:0; }
.sv-task-row__content > strong { color:var(--primary-dark); }
.sv-task-application-link { width:max-content; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--muted); font-size:.88rem; text-decoration:none; }
.sv-task-application-link:hover { color:var(--primary-dark); text-decoration:underline; text-underline-offset:.16em; }
.sv-task-row__actions { display:flex; align-items:center; justify-content:flex-end; gap:.3rem; }
.sv-task-row__actions form { display:inline-flex; }
.sv-task-row--done { opacity:.82; }
.sv-view-switch { display:none; align-items:center; gap:.2rem; padding:.22rem; border:1px solid var(--line); border-radius:var(--radius-pill); background:var(--surface-soft); }
.sv-view-switch[hidden] { display:none; }
.sv-view-switch__button { display:inline-flex; align-items:center; gap:.38rem; min-height:36px; padding:.42rem .72rem; border:0; border-radius:var(--radius-pill); color:var(--muted); background:transparent; cursor:pointer; font-weight:var(--font-weight-semibold); }
.sv-view-switch__button:hover { color:var(--primary-dark); }
.sv-view-switch__button.is-active { color:var(--primary-dark); background:var(--surface); box-shadow:var(--shadow-card); }
.sv-kanban { display:none; min-width:0; }
.sv-kanban[hidden], [data-pipeline-mode="list"][hidden] { display:none; }
.sv-kanban__scroll { min-width:0; overflow-x:auto; padding:.1rem .1rem .65rem; overscroll-behavior-inline:contain; scrollbar-width:thin; }
.sv-kanban__grid { display:grid; gap:.75rem; align-items:start; }
.sv-kanban__column { display:grid; gap:.7rem; min-width:0; min-height:180px; padding:.72rem; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface-soft); }
.sv-kanban__column-head { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.5rem; padding:.1rem .15rem; }
.sv-kanban__column-head h2 { margin:0; color:var(--primary-dark); font-size:.98rem; }
.sv-kanban__column-icon { width:30px; height:30px; display:grid; place-items:center; border-radius:11px; color:var(--primary-dark); background:var(--primary-soft); }
.sv-kanban__count { min-width:28px; min-height:28px; display:grid; place-items:center; padding:.2rem .45rem; border-radius:var(--radius-pill); color:var(--muted); background:var(--surface); font-size:.78rem; font-weight:var(--font-weight-display); }
.sv-kanban__cards { display:grid; gap:.6rem; align-content:start; }
.sv-kanban__empty { min-height:82px; display:grid; place-items:center; margin:0; padding:.75rem; border:1px dashed var(--line); border-radius:var(--radius-md); color:var(--muted); font-size:.86rem; text-align:center; }
.sv-kanban-card { position:relative; min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:var(--radius-md); color:var(--ink); background:var(--surface); box-shadow:var(--shadow-card); transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
.sv-kanban-card:hover { transform:translateY(-1px); border-color:var(--primary-border); box-shadow:var(--shadow-soft); }
.sv-kanban-card__link { display:grid; gap:.52rem; min-width:0; padding:.8rem; color:var(--ink); text-decoration:none; }
.sv-kanban-card__company { min-width:0; overflow-wrap:anywhere; color:var(--primary-dark); font-weight:var(--font-weight-display); line-height:1.3; }
.sv-kanban-card__role { min-width:0; overflow-wrap:anywhere; font-size:.9rem; font-weight:var(--font-weight-semibold); line-height:1.35; }
.sv-kanban-card__meta { display:flex; align-items:center; gap:.3rem; min-width:0; color:var(--muted); font-size:.8rem; }
.sv-kanban-card__meta ion-icon { flex:0 0 auto; }
.sv-kanban-card__next { display:flex; align-items:flex-start; gap:.35rem; min-width:0; padding:.55rem; border-radius:var(--radius); color:var(--muted); background:var(--bg); font-size:.8rem; line-height:1.35; }
.sv-kanban-card__next ion-icon { flex:0 0 auto; margin-top:.08rem; color:var(--primary-dark); }
.sv-kanban-card__next span { min-width:0; overflow-wrap:anywhere; }
.sv-kanban-card .sv-meta-chip { justify-self:start; }
.sv-selection-checkbox { position:absolute; top:1rem; left:1rem; z-index:3; display:none; margin:0; cursor:pointer; }
.sv-selection-checkbox:focus-visible { outline:3px solid var(--focus-ring); outline-offset:2px; }
.is-selection-mode .sv-selection-checkbox { display:block; }
.is-selection-mode .sv-kanban-card__link { padding-left:3.4rem; }
.is-selection-mode [data-selection-card] { cursor:pointer; }
.sv-selection-bar { position:fixed; left:50%; bottom:calc(78px + var(--safe-bottom)); z-index:55; width:min(410px,calc(100% - 1rem)); display:grid; gap:.65rem; padding:.78rem; border:1px solid var(--line); border-radius:var(--radius-lg); color:var(--ink); background:var(--surface-glass-strong); box-shadow:var(--shadow-soft); backdrop-filter:blur(18px); transform:translateX(-50%); }
.sv-selection-bar[hidden] { display:none; }
.sv-selection-bar__status { display:flex; align-items:baseline; gap:.35rem; color:var(--muted); }
.sv-selection-bar__status strong { color:var(--primary-dark); font-size:1.15rem; }
.sv-selection-bar__actions { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; gap:.45rem; }
.sv-selection-bar__actions--delete-only { grid-template-columns:minmax(0,1fr) auto; }
.sv-selection-bar__actions .btn { min-width:0; }
.is-selection-mode { padding-bottom:9rem; }
.sv-account-workspace { display:grid; gap:var(--space-5); }
.sv-account-workspace__content { min-width:0; }
.sv-account-message { padding:.95rem 1rem; border-radius:var(--radius-lg); font-weight:var(--font-weight-semibold); }
.sv-account-message--success { background:var(--success-soft); color:var(--success); }
.sv-account-message--danger { background:var(--danger-soft); color:var(--danger); }
.sv-account-footnote { margin:0; color:var(--muted); font-size:.9rem; }

.sv-settings-profile { display:grid; gap:var(--space-4); }
.sv-settings-profile__summary { display:flex; align-items:center; gap:var(--space-4); }
.sv-settings-profile__avatar { width:88px; height:88px; flex:0 0 88px; display:grid; place-items:center; overflow:hidden; border-radius:50%; background:var(--surface-soft); color:var(--primary-dark); font-size:1.65rem; font-weight:var(--font-weight-display); }
.sv-settings-profile__avatar img { width:100%; height:100%; object-fit:cover; }
.sv-settings-profile__identity { display:grid; gap:.15rem; min-width:0; }
.sv-settings-profile__identity strong { color:var(--primary-dark); font-size:1.15rem; }
.sv-settings-profile__identity span { color:var(--muted); overflow-wrap:anywhere; }
.sv-settings-profile__name .sv-form-section { gap:var(--space-3); }
.sv-settings-avatar { min-width:0; }
.sv-settings-avatar__upload { display:grid; gap:var(--space-3); }

.sv-avatar-picker { border-top:1px solid var(--line); }
.sv-avatar-picker > summary,
.sv-security-manage > summary { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); min-height:3.5rem; color:var(--primary-dark); font-weight:var(--font-weight-display); cursor:pointer; list-style:none; }
.sv-avatar-picker > summary::-webkit-details-marker,
.sv-security-manage > summary::-webkit-details-marker { display:none; }
.sv-avatar-picker > summary ion-icon,
.sv-security-manage > summary ion-icon { color:var(--muted); transition:transform .16s ease; }
.sv-avatar-picker[open] > summary ion-icon,
.sv-security-manage[open] > summary ion-icon { transform:rotate(180deg); }
.sv-avatar-picker > summary:focus-visible,
.sv-security-manage > summary:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; border-radius:var(--radius-sm); }
.sv-avatar-picker__form { display:grid; gap:var(--space-4); padding-top:var(--space-2); }
.sv-avatar-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(64px,1fr)); gap:.7rem; }
.sv-avatar-option { position:relative; display:grid; justify-items:center; gap:.35rem; min-width:0; cursor:pointer; }
.sv-avatar-option input { position:absolute; opacity:0; pointer-events:none; }
.sv-avatar-option__preview { width:58px; height:58px; display:grid; place-items:center; object-fit:cover; border:2px solid transparent; border-radius:50%; background:var(--surface-soft); color:var(--primary-dark); font-weight:var(--font-weight-display); transition:border-color .16s ease, transform .16s ease; }
.sv-avatar-option__label { color:var(--muted); font-size:.74rem; }
.sv-avatar-option:hover .sv-avatar-option__preview { transform:translateY(-1px); border-color:var(--line); }
.sv-avatar-option input:checked + .sv-avatar-option__preview { border-color:var(--primary); box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--primary-soft); }
.sv-avatar-option input:focus-visible + .sv-avatar-option__preview { outline:2px solid var(--focus-ring); outline-offset:3px; }

.sv-storage-usage { display:grid; gap:var(--space-3); padding:var(--space-4); border-radius:var(--radius-lg); background:var(--surface-soft); }
.sv-storage-usage__head { display:flex; justify-content:space-between; gap:var(--space-3); flex-wrap:wrap; color:var(--primary-dark); }
.sv-storage-usage__head span { color:var(--muted); font-size:.86rem; }
.sv-storage-usage__track { height:.55rem; overflow:hidden; border-radius:var(--radius-pill); background:var(--line); }
.sv-storage-usage__track span { display:block; width:var(--storage-progress); height:100%; border-radius:inherit; background:var(--primary); }
.sv-settings-storage-foot { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); flex-wrap:wrap; }
.sv-settings-storage-foot .sub { margin:0; }

.sv-settings-links { display:grid; border-top:1px solid var(--line); }
.sv-settings-links .sv-list-row { padding:.9rem .2rem; border-width:0 0 1px; border-radius:0; background:transparent; transform:none; }
.sv-settings-links .sv-list-row:hover { padding-inline:.65rem; background:var(--surface-soft); transform:none; }

.sv-data-copy { display:grid; gap:var(--space-3); padding:var(--space-4); border-radius:var(--radius-lg); background:var(--surface-soft); }
.sv-data-copy p { margin:0; max-width:72ch; }
.sv-data-copy .btn { justify-self:start; }
.sv-data-copy__facts { display:flex; gap:.6rem 1rem; flex-wrap:wrap; color:var(--muted); font-size:.88rem; }

.sv-settings-facts { display:grid; border-top:1px solid var(--line); }
.sv-settings-fact { display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); min-height:4.75rem; padding:.8rem .15rem; border-bottom:1px solid var(--line); }
.sv-settings-fact > div:first-child { display:grid; gap:.15rem; }
.sv-settings-fact > div:first-child strong { color:var(--primary-dark); }
.sv-settings-fact > div:first-child span { color:var(--muted); font-size:.88rem; }
.sv-settings-fact__value { display:flex; align-items:center; gap:.35rem; color:var(--primary-dark); font-weight:var(--font-weight-semibold); }
.sv-settings-fact--standalone { padding-inline:var(--space-4); border:0; border-radius:var(--radius-lg); background:var(--surface-soft); }
.sv-settings-state { display:inline-flex; align-items:center; min-height:2rem; padding:.25rem .65rem; border-radius:var(--radius-pill); background:var(--success-soft); color:var(--success); font-size:.82rem; font-weight:var(--font-weight-semibold); }
.sv-settings-state--warn { background:var(--warn-soft); color:var(--warn-contrast); }

.sv-settings-fact--action { align-items:center; }
.sv-settings-compact-action { flex:0 0 auto; }
.sv-settings-compact-action .btn { min-width:0; }

.sv-two-factor-setup { margin-top:var(--space-3); }
.sv-two-factor-enrollment { display:grid; grid-template-columns:190px minmax(0,1fr); align-items:center; gap:var(--space-5); min-width:0; }
.sv-two-factor-manual { display:grid; gap:.5rem; min-width:0; align-content:center; }
.sv-setup-key { display:block; width:100%; max-width:34rem; padding:.7rem .85rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface-soft); color:var(--primary-dark); font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; font-size:.86rem; line-height:1.45; overflow-wrap:anywhere; word-break:break-word; }
.sv-two-factor-enable-form { margin-top:var(--space-4); }
.sv-qr-box { display:grid; place-items:center; min-width:0; padding:var(--space-2); }
.sv-qr-box svg { width:min(180px,100%); height:auto; }
.sv-recovery-codes { display:grid; gap:.65rem; margin-top:var(--space-3); padding:var(--space-4); border-radius:var(--radius-lg); background:var(--success-soft); }
.sv-recovery-codes p { margin:0; }
.sv-recovery-codes > div { display:flex; gap:.45rem; flex-wrap:wrap; }
.sv-recovery-codes code { padding:.4rem .55rem; border-radius:var(--radius-sm); background:var(--surface); color:var(--primary-dark); }
.sv-security-manage { margin-top:var(--space-3); border-top:1px solid var(--line); }
.sv-security-manage__grid { padding-top:var(--space-3); }

.sv-danger-disclosure { overflow:hidden; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--danger-soft); }
.sv-danger-disclosure > summary { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); padding:var(--space-4); cursor:pointer; list-style:none; color:var(--danger); }
.sv-danger-disclosure > summary::-webkit-details-marker { display:none; }
.sv-danger-disclosure > summary > span { display:grid; gap:.2rem; }
.sv-danger-disclosure > summary small { color:var(--muted); font-weight:var(--font-weight-regular); }
.sv-danger-disclosure > summary ion-icon { transition:transform .16s ease; }
.sv-danger-disclosure[open] > summary ion-icon { transform:rotate(180deg); }
.sv-danger-disclosure > summary:focus-visible { outline:2px solid var(--focus-ring); outline-offset:-3px; }
.sv-form-surface--danger { border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; }

.sv-reminder-fieldset { min-width:0; margin:0; padding:0; border:0; }
.sv-reminder-fieldset > legend { margin-bottom:.55rem; color:var(--ink); font-weight:var(--font-weight-display); }
.sv-reminder-master { align-items:flex-start; padding:.85rem 0; border-bottom:1px solid var(--line); }
.sv-reminder-master > span,
.sv-reminder-content__option > span { display:grid; gap:.12rem; min-width:0; }
.sv-reminder-master small,
.sv-reminder-content__option small { color:var(--muted); font-size:.86rem; font-weight:var(--font-weight-medium); line-height:1.4; }
.sv-reminder-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:.4rem; }
.sv-reminder-day { position:relative; min-width:0; cursor:pointer; }
.sv-reminder-day input { position:absolute; width:1px; height:1px; min-width:0; min-height:0; margin:0; padding:0; opacity:0; pointer-events:none; }
.sv-reminder-day span { min-height:44px; display:grid; place-items:center; border:1px solid var(--line); border-radius:var(--radius-pill); background:var(--surface-soft); color:var(--primary-dark); font-weight:var(--font-weight-semibold); }
.sv-reminder-day input:checked + span { border-color:var(--primary); background:var(--primary); color:var(--on-primary); }
.sv-reminder-day input:focus-visible + span { outline:3px solid var(--focus-ring); outline-offset:2px; }
.sv-reminder-time { max-width:18rem; }
.sv-reminder-content { display:grid; border-top:1px solid var(--line); }
.sv-reminder-content__option { align-items:flex-start; min-height:4.4rem; padding:.8rem .1rem; border-bottom:1px solid var(--line); }
.sv-reminder-master input,
.sv-reminder-content__option input { width:1.15rem; height:1.15rem; min-height:1.15rem; flex:0 0 1.15rem; margin:.12rem 0 0; padding:0; border:0; background:transparent; }

.sv-calendar-help { display:grid; gap:0; }
.sv-calendar-help > div { display:grid; gap:.15rem; padding:.8rem 0; border-bottom:1px solid var(--line); }
.sv-calendar-help > div:last-child { border-bottom:0; }
.sv-calendar-help span { color:var(--muted); font-size:.88rem; line-height:1.45; }

.sv-calendar-help-disclosure { border-top:0; border-bottom:1px solid var(--line); }
.sv-calendar-help-disclosure .sv-form-disclosure__summary { min-height:4.75rem; padding:.8rem .15rem; }
.sv-calendar-help-disclosure .sv-form-disclosure__content { padding:0 .15rem .9rem; }
.sv-article { width:100%; }
.sv-article { display:grid; gap:var(--space-6); }
.sv-article--editorial { color:var(--on-primary); }
.sv-article-hero { display:grid; gap:var(--space-5); padding:var(--space-4); }
.sv-article-hero__back { width:max-content; min-height:var(--touch-target); display:inline-flex; align-items:center; gap:.45rem; color:var(--on-primary-muted); font-weight:var(--font-weight-semibold); }
.sv-article-hero__back:hover { color:var(--on-primary); }
.sv-article-hero__back ion-icon { font-size:1.05rem; }
.sv-article-hero__copy { display:grid; gap:var(--space-4); max-width:850px; }
.sv-article-hero__eyebrow, .sv-article__kicker { color:var(--on-primary-muted); font-size:.8rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-article-hero h1 { max-width:19ch; margin:0; color:var(--on-primary); font-size:clamp(2.2rem,7vw,4.25rem); line-height:1; letter-spacing:-.035em; }
.sv-article-hero__intro { display:grid; gap:.7rem; max-width:72ch; }
.sv-article-hero__intro p { margin:0; color:var(--on-primary-muted); font-size:clamp(1.05rem,2.3vw,1.25rem); line-height:1.6; }
.sv-article-hero__meta { display:flex; flex-wrap:wrap; gap:.45rem 1.1rem; color:var(--on-primary-muted); font-size:.88rem; }
.sv-article-hero__meta span { display:inline-flex; align-items:center; gap:.35rem; }
.sv-article-layout { display:grid; gap:var(--space-5); align-items:start; }
.sv-article__reading { display:grid; padding:clamp(1.25rem,5vw,3rem); border-radius:clamp(28px,6vw,var(--radius-screen)); background:var(--surface); color:var(--ink); box-shadow:none; overflow:hidden; }
.sv-article__summary { display:grid; gap:.6rem; margin-bottom:var(--space-4); padding:var(--space-5); border-radius:var(--radius-lg); background:var(--primary-soft); }
.sv-article__summary .sv-article__kicker { color:var(--on-soft-muted); }
.sv-article__summary h2 { margin:0; color:var(--primary-dark); font-size:clamp(1.35rem,3vw,1.75rem); }
.sv-article__summary p { max-width:68ch; margin:0; color:var(--primary-dark); font-size:1.02rem; line-height:1.65; }
.sv-article__section { display:grid; gap:.9rem; padding:clamp(1.6rem,4vw,2.35rem) 0; border-top:1px solid var(--line); background:transparent; box-shadow:none; scroll-margin-top:1rem; }
.sv-article__section h2 { max-width:30ch; margin:0; color:var(--primary-dark); font-size:clamp(1.4rem,3vw,1.95rem); line-height:1.12; letter-spacing:-.015em; }
.sv-article__section p { max-width:72ch; margin:0; color:var(--ink); font-size:1rem; line-height:1.72; }
.sv-article__list { display:grid; gap:.65rem; max-width:70ch; margin:.15rem 0 0; padding-left:1.25rem; color:var(--ink); }
.sv-article__list li { padding-left:.2rem; line-height:1.55; }
.sv-article__steps { display:grid; gap:.7rem; margin:.2rem 0 0; padding:0; list-style:none; }
.sv-article__steps li { display:grid; grid-template-columns:2.4rem minmax(0,1fr); gap:.75rem; align-items:start; padding:.9rem 0; border-top:1px solid var(--line); }
.sv-article__steps li:first-child { border-top:0; }
.sv-article__step-number { width:2.4rem; height:2.4rem; display:grid; place-items:center; border-radius:50%; background:var(--primary-soft); color:var(--primary-dark); font-weight:var(--font-weight-display); }
.sv-article__steps strong { display:block; margin:.1rem 0 .2rem; color:var(--primary-dark); }
.sv-article__steps p { color:var(--muted); line-height:1.55; }
.sv-article__checklist { display:grid; gap:.55rem; margin:.2rem 0 0; padding:0; list-style:none; }
.sv-article__checklist li { display:grid; grid-template-columns:1.4rem minmax(0,1fr); gap:.55rem; align-items:start; padding:.7rem .8rem; border-radius:var(--radius-md); background:var(--surface-soft); color:var(--ink); line-height:1.5; }
.sv-article__checklist ion-icon { margin-top:.12rem; color:var(--primary-dark); font-size:1.1rem; }
.sv-article__examples { display:grid; gap:.65rem; }
.sv-article__examples > div { display:grid; gap:.2rem; padding:.9rem 1rem; border-radius:var(--radius-md); background:var(--surface-soft); }
.sv-article__examples strong { color:var(--primary-dark); }
.sv-article__examples p { color:var(--muted); line-height:1.55; }
.sv-article__example, .sv-article__note { display:grid; gap:.45rem; max-width:72ch; padding:var(--space-4); border-radius:var(--radius-md); background:var(--surface-soft); color:var(--ink); }
.sv-article__example strong, .sv-article__note strong { color:var(--primary-dark); }
.sv-article__example p { white-space:pre-line; line-height:1.65; }
.sv-article__note { border-left:3px solid var(--primary); }
.sv-article__note p { color:var(--muted); line-height:1.6; }
.sv-article__inline-link { width:fit-content; max-width:100%; min-width:0; min-height:var(--touch-target); display:inline-flex; align-items:center; gap:.4rem; overflow-wrap:anywhere; color:var(--primary-dark); font-weight:var(--font-weight-display); }
.sv-article__inline-link:hover { text-decoration:underline; text-underline-offset:.18em; }
.sv-article-table-wrap { min-width:0; width:100%; overflow-x:auto; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); }
.sv-article-table { width:100%; min-width:680px; border-collapse:collapse; color:var(--ink); }
.sv-article-table th, .sv-article-table td { padding:.85rem 1rem; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; line-height:1.45; }
.sv-article-table th { background:var(--surface-soft); color:var(--primary-dark); font-size:.88rem; }
.sv-article-table tr:last-child td { border-bottom:0; }
.sv-article__sources { display:grid; gap:.6rem; padding-top:var(--space-6); border-top:1px solid var(--line); }
.sv-article__sources h2 { margin:0; color:var(--primary-dark); font-size:1.2rem; }
.sv-article__sources p { margin:0; color:var(--muted); }
.sv-article__sources ul { display:grid; gap:.45rem; margin:0; padding-left:1.2rem; }
.sv-article__sources a { color:var(--primary-dark); text-decoration:underline; text-underline-offset:.18em; }
.sv-article-aside { display:grid; gap:var(--space-4); align-content:start; }
.sv-article-toc { display:none; }
.sv-article-bridge { display:grid; gap:.65rem; padding:var(--space-5); border-radius:var(--radius-lg); background:var(--primary-soft); color:var(--primary-dark); }
.sv-article-bridge .sv-article__kicker { color:var(--on-soft-muted); }
.sv-article-bridge h2 { margin:0; color:var(--primary-dark); font-size:1.25rem; line-height:1.15; }
.sv-article-bridge p { margin:0; color:var(--on-soft-muted); line-height:1.55; }
.sv-article-bridge .btn { margin-top:.25rem; }
.sv-template-related + .sv-article-bridge, .sv-article__sources + .sv-article-bridge { margin-top:var(--space-5); }
.sv-article-related { display:grid; gap:var(--space-4); padding:var(--space-4); }
.sv-article-related__head { display:grid; gap:.25rem; }
.sv-article-related__head h2 { margin:0; color:var(--on-primary); font-size:clamp(1.55rem,4vw,2.15rem); }
.sv-article-grid { display:grid; gap:var(--space-4); }
.sv-article-card { display:grid; gap:.65rem; padding:var(--card-padding); color:inherit; box-shadow:none; transition:transform .16s ease, background .16s ease; }
.sv-article-card:hover { transform:translateY(-1px); background:var(--surface-soft); box-shadow:none; }
.sv-article-card__eyebrow { color:var(--muted); font-size:.8rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-article-card__title { margin:0; color:var(--primary-dark); font-size:1.15rem; line-height:1.14; }
.sv-article-card__teaser { color:var(--muted); margin:0; line-height:1.55; }
.app-body--documents .sv-icon-button.sv-page-create { display:inline-grid; }
.app-body--documents [data-doc-upload-toggle] ion-icon { transition:transform .16s ease; }
.app-body--documents [data-doc-upload-toggle][aria-expanded="true"] ion-icon { transform:rotate(45deg); }
.sv-document-upload { scroll-margin-top:calc(var(--header-height) + var(--space-3)); }
.sv-document-upload__actions { justify-content:flex-end; }
.sv-document-upload__actions .btn { width:100%; }
.sv-document-library { gap:var(--space-3); }
.sv-document-library__head { display:grid; grid-template-columns:minmax(0,1fr); align-items:end; gap:var(--space-3); }
.sv-document-library__head h2, .sv-document-library__head p { margin-bottom:0; }
.sv-document-library__search { min-width:0; }
.sv-document-list { display:grid; }
.sv-document-row { position:relative; display:grid; grid-template-columns:2.25rem minmax(0,1fr) auto; align-items:center; gap:var(--space-3); min-width:0; padding:1rem 0; border-bottom:1px solid var(--line); }
.sv-document-row > .sv-selection-checkbox { top:50%; left:.45rem; transform:translateY(-50%); }
.app-body--documents .is-selection-mode .sv-document-row { padding-left:2.8rem; }
.app-body--documents .is-selection-mode .sv-document-row__actions { visibility:hidden; pointer-events:none; }
.sv-document-row:first-child { border-top:1px solid var(--line); }
.sv-document-row[hidden], [data-doc-no-results][hidden] { display:none !important; }
.sv-document-row__extension { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-document-row__content { display:grid; gap:.15rem; min-width:0; }
.sv-document-row__content strong { min-width:0; overflow-wrap:anywhere; color:var(--primary-dark); }
.sv-document-row__content span { min-width:0; overflow-wrap:anywhere; color:var(--muted); font-size:.86rem; }
.sv-document-row__actions { display:flex; align-items:center; justify-content:flex-end; gap:.4rem; }
.sv-document-row__actions form { display:grid; }
.sv-document-row.is-missing .sv-document-row__content span { color:var(--danger); }
.sv-document-batch { display:grid; gap:var(--space-3); }
.sv-document-batch[hidden], .sv-document-batch__row[hidden] { display:none !important; }
.sv-document-batch__row { display:grid; gap:var(--space-3); padding:var(--space-3) 0; border-top:1px solid var(--line); }
.sv-document-batch__row:last-child { border-bottom:1px solid var(--line); }
.sv-document-batch__head { display:grid; gap:.15rem; min-width:0; }
.sv-document-batch__head strong { min-width:0; overflow-wrap:anywhere; color:var(--primary-dark); }
.sv-document-batch__head span { color:var(--muted); font-size:.82rem; }
.sv-document-batch__fields { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--space-3); min-width:0; }
.sv-document-batch__remove { justify-self:start; }
.sv-document-row__preview-link, .sv-document-link-preview { color:inherit; text-decoration:none; }
.sv-document-row__preview-link:hover, .sv-document-link-preview:hover { text-decoration:underline; text-underline-offset:.16em; }
.sv-document-preview-page { gap:var(--space-4); }
.sv-document-preview-head { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:var(--space-3); align-items:center; }
.sv-document-preview-head h1, .sv-document-preview-head p { margin-bottom:0; }
.sv-document-preview-head h1 { overflow-wrap:anywhere; }
.sv-document-preview-frame { display:grid; place-items:center; min-height:18rem; max-height:72vh; padding:var(--space-3); overflow:auto; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface-soft); }
.sv-document-preview-frame img { display:block; width:auto; height:auto; max-width:100%; max-height:66vh; object-fit:contain; }
.dashboard-home { gap:var(--space-6); }
.dashboard-home__head { padding-bottom:0; }
.dashboard-home__head h1 { margin:0; }
.dashboard-wave { display:inline-block; font-size:.82em; transform:translateY(-.04em); }
.dashboard-status { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:.15rem 0; background:transparent; }
.dashboard-status__item { display:grid; justify-items:center; align-content:center; gap:.16rem; min-width:0; padding:.45rem .65rem; text-align:center; }
.dashboard-status__item + .dashboard-status__item { border-left:1px solid var(--line); }
.dashboard-status__value { color:var(--primary-dark); font-size:1.55rem; font-weight:var(--font-weight-display); line-height:1; letter-spacing:-.04em; }
.dashboard-status__label { color:var(--muted); font-size:.74rem; line-height:1.15; }
.dashboard-primary-grid, .dashboard-secondary-grid, .dashboard-knowledge__grid { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--space-5); }
.dashboard-focus { align-content:center; }
.dashboard-planning, .dashboard-hints, .dashboard-module, .dashboard-knowledge { min-width:0; }
.dashboard-chart-card, .dashboard-documents-card { padding:var(--space-5); border:1px solid transparent; border-radius:var(--radius-lg); background:var(--surface-soft); }
.dashboard-chart-card { min-height:230px; display:grid; grid-template-rows:auto minmax(0,1fr) auto; gap:var(--space-3); }
.dashboard-chart-card__summary { display:flex; align-items:baseline; gap:.45rem; flex-wrap:wrap; }
.dashboard-chart-card__summary strong { color:var(--primary-dark); font-size:2rem; line-height:1; letter-spacing:-.04em; }
.dashboard-chart-card__summary span { color:var(--muted); font-size:.86rem; }
.dashboard-chart-card__wrap { min-width:0; min-height:150px; overflow:hidden; }
.dashboard-chart { min-height:150px; }
.dashboard-chart-card__empty { margin:0; color:var(--muted); font-size:.84rem; }
.dashboard-documents-card { display:grid; align-content:start; gap:var(--space-3); }
.dashboard-module__label { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.dashboard-document-list { display:grid; gap:.2rem; margin:0; padding:0; list-style:none; }
.dashboard-document-list li { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:.65rem; min-height:46px; padding:.45rem 0; border-bottom:1px solid var(--line); color:var(--primary-dark); font-weight:var(--font-weight-semibold); }
.dashboard-document-list li:last-child { border-bottom:0; }
.dashboard-document-list ion-icon { color:var(--muted); font-size:1.15rem; }
.dashboard-document-list span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dashboard-module__empty { display:flex; align-items:center; gap:.65rem; min-height:120px; color:var(--muted); }
.dashboard-module__empty ion-icon { color:var(--primary-dark); font-size:1.35rem; }
.sv-compare-picker { display:grid; gap:var(--space-3); padding:var(--space-4) 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.sv-compare-picker__search { margin-bottom:var(--space-3); box-shadow:none; }
.sv-compare-picker__meta { min-height:1.35rem; display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); margin-bottom:.35rem; color:var(--muted); font-size:.86rem; }
.sv-compare-picker__options { display:grid; gap:.15rem; max-height:min(22rem,46vh); overflow-y:auto; overscroll-behavior:contain; padding:.15rem .35rem .15rem 0; scrollbar-gutter:stable; }
.sv-compare-picker__options .sv-check-row { min-height:3.65rem; padding:.45rem .15rem; border-bottom:1px solid var(--line); }
.sv-compare-picker__options [data-compare-option][hidden] { display:none; }
.sv-compare-picker__options .sv-check-row:last-child { border-bottom:0; }
.sv-compare-picker__options small { display:block; color:var(--muted); margin-top:.1rem; }
.sv-compare-picker__options input:disabled + span { opacity:.52; }
.sv-compare-table-wrap { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.sv-compare-table { width:100%; min-width:700px; border-collapse:collapse; }
.sv-compare-table th, .sv-compare-table td { padding:.85rem .75rem; text-align:left; vertical-align:top; border-bottom:1px solid var(--line); }
.sv-compare-table thead th { position:sticky; top:0; background:var(--bg); z-index:1; }
.sv-compare-table thead th:first-child { min-width:150px; }
.sv-compare-table thead a { color:var(--ink); text-decoration:none; }
.sv-compare-table thead small { display:block; color:var(--muted); font-weight:400; margin-top:.15rem; }
.sv-compare-table tbody th { font-weight:var(--font-weight-display); color:var(--muted); }

#applications-list { row-gap:0; column-gap:var(--space-6); border-top:1px solid var(--line); }
.sv-offer-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-3); margin:0; }
.sv-offer-summary > div { display:grid; gap:.15rem; min-width:0; }
.sv-offer-summary dt { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); }
.sv-offer-summary dd { margin:0; color:var(--primary-dark); font-weight:var(--font-weight-display); overflow-wrap:anywhere; }
.sv-offer-summary__wide { grid-column:1 / -1; }
.sv-fact-note { display:block; margin-top:.22rem; color:var(--muted); font-size:.84rem; font-weight:var(--font-weight-medium); white-space:pre-line; }
.sv-fact-disclosure { border-top:1px solid var(--line); }
.sv-fact-disclosure > summary { display:flex; align-items:center; justify-content:space-between; gap:var(--space-2); padding:.8rem 0 .1rem; color:var(--primary-dark); font-weight:var(--font-weight-semibold); cursor:pointer; list-style:none; }
.sv-fact-disclosure > summary::-webkit-details-marker { display:none; }
.sv-fact-disclosure > summary ion-icon { color:var(--muted); transition:transform .16s ease; }
.sv-fact-disclosure[open] > summary ion-icon { transform:rotate(180deg); }
.sv-fact-disclosure__open { display:none; }
.sv-fact-disclosure[open] .sv-fact-disclosure__closed { display:none; }
.sv-fact-disclosure[open] .sv-fact-disclosure__open { display:inline; }
.sv-offer-summary--more { padding-top:var(--space-3); }
.sv-section-panel__actions { display:flex; align-items:center; gap:.4rem; margin-left:auto; }
.sv-offer-editor { display:block; }
.sv-offer-editor [hidden], .sv-form-disclosure--offer-create [hidden] { display:none !important; }
.sv-offer-accordion-list { display:grid; gap:0; min-width:0; border-top:1px solid var(--line); }
.sv-offer-accordion { overflow:visible; border:0; border-bottom:1px solid var(--line); border-radius:0; background:transparent; }
.sv-offer-accordion .sv-form-disclosure__summary { min-height:56px; padding:var(--space-3) .15rem; }
.sv-offer-accordion .sv-form-disclosure__content { padding:0 var(--space-4) var(--space-4); }
.sv-offer-payment-block { display:grid; gap:var(--space-3); min-width:0; padding:var(--space-2) 0 var(--space-3); }
.sv-offer-payment-block + .sv-offer-payment-block { border-top:1px solid var(--line); padding-top:var(--space-3); }
.sv-offer-payment-block h4 { margin:0; color:var(--primary-dark); font-size:1rem; }
.sv-benefit-groups { display:grid; gap:var(--space-4); }
.sv-benefit-groups .sv-field-group { min-width:0; padding:0; border:0; border-radius:0; background:transparent; }
.sv-benefit-groups .sv-field-group legend { padding:0; margin-bottom:var(--space-2); color:var(--primary-dark); font-weight:var(--font-weight-display); }
.sv-benefit-options { display:grid; gap:var(--space-2); }
.sv-form-disclosure--offer-create > .sv-form-disclosure__content { padding-top:var(--space-3); }
.sv-offer-editor .form-actions { justify-content:flex-end; padding:var(--space-3) var(--card-padding) var(--card-padding); border-top:1px solid var(--line); }

.insights-report { gap:var(--space-6); }
.insights-section { display:grid; gap:var(--space-4); margin-top:var(--space-4); padding-top:var(--space-6); border-top:1px solid var(--line); }
.insights-section:first-of-type { margin-top:0; padding-top:0; border-top:0; }
.insights-section__head { display:grid; gap:var(--space-3); }
.insights-section__head h2 { margin:.15rem 0 0; color:var(--primary-dark); }
.insights-section__head p { margin:.35rem 0 0; max-width:62rem; color:var(--muted); }
.insights-section__eyebrow { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }

.insights-funnel { display:grid; gap:var(--space-3); }
.insights-funnel__row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.45rem .75rem; align-items:center; }
.insights-funnel__label { display:flex; justify-content:space-between; gap:var(--space-3); color:var(--primary-dark); }
.insights-funnel__label span { color:var(--muted); font-weight:var(--font-weight-semibold); }
.insights-funnel__label em { font-style:normal; }
.insights-funnel__track { grid-column:1 / -1; height:.55rem; overflow:hidden; border-radius:var(--radius-pill); background:var(--line); }
.insights-funnel__track span { display:block; width:var(--insights-progress); min-width:0; height:100%; border-radius:inherit; background:var(--primary); }
.insights-funnel__rate { display:none; color:var(--primary-dark); }
.insights-timing { display:grid; gap:var(--space-3); margin:0; }
.insights-timing div { display:grid; gap:.15rem; padding:var(--space-3) 0; border-top:1px solid var(--line); }
.insights-timing dt { color:var(--muted); }
.insights-timing dd { margin:0; color:var(--primary-dark); font-size:1.05rem; font-weight:var(--font-weight-display); }

.insights-range, .insights-comparison-tabs { min-width:0; display:flex; gap:.35rem; overflow-x:auto; padding-bottom:.15rem; scrollbar-width:none; }
.insights-range::-webkit-scrollbar, .insights-comparison-tabs::-webkit-scrollbar { display:none; }
.insights-range a, .insights-comparison-tabs a { flex:0 0 auto; min-height:38px; display:inline-flex; align-items:center; justify-content:center; padding:.45rem .75rem; border:1px solid transparent; border-radius:var(--radius-pill); background:var(--surface-soft); color:var(--primary-dark); font-size:.86rem; font-weight:var(--font-weight-display); text-decoration:none; }
.insights-range a.is-active, .insights-comparison-tabs a.is-active { border-color:var(--primary); background:transparent; }
.insights-range a:focus-visible, .insights-comparison-tabs a:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; }

.insights-chart { display:grid; gap:var(--space-3); }
.insights-chart__canvas { min-height:220px; overflow:hidden; border-radius:var(--radius-lg); background:var(--surface-soft); padding:.65rem; }
.insights-chart__canvas canvas { width:100%; max-height:260px; }
.insights-chart__note { margin:0; color:var(--muted); }

.insights-comparison { display:grid; gap:var(--space-4); }
.insights-comparison__empty, .insights-data-basis { margin:0; color:var(--muted); }
.insights-comparison__rows { display:grid; border-top:1px solid var(--line); }
.insights-comparison-row { display:grid; gap:var(--space-3); padding:var(--space-4) 0; border-bottom:1px solid var(--line); }
.insights-comparison-row__group { display:grid; gap:.15rem; }
.insights-comparison-row__group strong { color:var(--primary-dark); }
.insights-comparison-row__group span { color:var(--muted); font-size:.82rem; }
.insights-comparison-row.is-best .insights-comparison-row__group span { color:var(--success); font-weight:var(--font-weight-semibold); }
.insights-comparison-row__metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; margin:0; }
.insights-comparison-row__metrics div { display:grid; gap:.1rem; }
.insights-comparison-row__metrics dt { color:var(--muted); font-size:.76rem; }
.insights-comparison-row__metrics dd { margin:0; color:var(--primary-dark); font-weight:var(--font-weight-display); }
.insights-data-basis { padding-top:var(--space-2); font-size:.86rem; }

.insights-chart__legend { display:flex; flex-wrap:wrap; gap:.55rem; color:var(--muted); font-size:.86rem; }
.insights-chart__legend span { display:inline-flex; align-items:center; gap:.35rem; }
.insights-chart__dot { width:.65rem; height:.65rem; border-radius:50%; display:inline-block; background:var(--primary-dark); }
.insights-chart__dot--applications { background:var(--primary); }
.insights-chart__dot--interviews { background:var(--chart-interview); }
.section-title { font-size:1.25rem; font-weight:var(--font-weight-display); color:var(--primary-dark); letter-spacing:-.02em; }
.auth-stage { width:min(430px,100%); margin:0 auto; min-height:calc(100dvh - 70px); display:flex; align-items:stretch; padding-top:4.5rem; }
.auth-stage--login, .auth-stage--flow { padding:1rem 0 0; align-items:flex-end; }
.auth-stage--credentials { min-height:auto; padding:2.5rem 0 0; align-items:stretch; }
.auth-stage--flow { width:min(780px,100%); }
.auth-card { width:100%; padding:5.6rem 2.25rem 2.25rem; border:0; border-radius:var(--radius-screen) var(--radius-screen) 0 0; background:var(--bg); box-shadow:var(--shadow-sheet); }
.auth-login-card, .auth-card--flow, .auth-card--status { padding:0; display:grid; gap:0; overflow:hidden; background:var(--bg); }
.auth-card__panel { padding:2rem 1.35rem 1.5rem; display:grid; align-content:start; }
.auth-card--flow .auth-card__panel { padding:1.65rem 1.25rem 1.4rem; }

.auth-stage--compact { width:min(620px,calc(100% - 1.5rem)); padding:1.25rem 0 2rem; align-items:flex-start; }
.auth-card--compact { border-radius:var(--radius-screen); box-shadow:var(--shadow-soft); }
.auth-card--compact .auth-card__panel { padding:2rem 1.35rem 1.65rem; }
.auth-card--compact .auth-card__head { text-align:left; margin-bottom:1.15rem; }
.auth-card--compact .auth-card__title { font-size:clamp(1.9rem,8vw,2.45rem); }
.auth-card--status { width:min(560px,100%); margin:0 auto; }
.auth-card--status .auth-card__panel { padding:2.25rem 1.5rem 2rem; justify-items:center; text-align:center; }
.auth-card--status .auth-card__head { text-align:center; margin-bottom:.35rem; }
.auth-card--status .auth-card__body { max-width:32rem; margin-inline:auto; }
.auth-status-mark { width:52px; height:52px; border-radius:50%; display:grid; place-items:center; margin-bottom:1.1rem; background:var(--success-soft); color:var(--primary-dark); }
.auth-status-mark ion-icon { font-size:1.7rem; }
.auth-context-line { margin:.1rem 0 .65rem; color:var(--primary-dark); }
.auth-helper-note { margin:1.1rem 0 0; color:var(--muted); font-size:.9rem; line-height:1.5; }
.auth-helper-note a { color:var(--primary-dark); font-weight:var(--font-weight-display); text-decoration:none; }
.auth-secondary-link { min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:.4rem .75rem; color:var(--primary-dark); font-weight:var(--font-weight-display); text-decoration:none; }
.auth-secondary-link:hover { text-decoration:underline; text-underline-offset:.18em; }
.auth-card__head { text-align:center; margin-bottom:2rem; }
.auth-card__head--compact { margin-bottom:1.35rem; }
.auth-card__title { font-size:clamp(2rem,9vw,2.6rem); color:var(--primary-dark); }
.auth-card__body { color:var(--muted); margin-bottom:0; }
.auth-form { display:grid; gap:1.05rem; }
.auth-actions { display:grid; gap:.8rem; justify-items:center; margin-top:1.5rem; }
.auth-actions--login, .auth-actions--stacked { margin-top:1rem; }
.auth-actions--stacked { width:100%; }
.auth-actions .btn { min-width: min(210px, 100%); }
.auth-actions--stacked .btn { width:100%; }
.auth-submit { width:100%; min-height:54px; }
.auth-field { gap:.5rem; }
.auth-field__label-row { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.auth-field__link, .auth-switch-note a, .auth-alert__hint a, .auth-legal-note a { color:var(--primary-dark); font-weight:var(--font-weight-display); text-decoration:none; }
.auth-field__link { font-size:.86rem; }
.auth-input { background:var(--surface); border-color:var(--line); box-shadow:0 12px 24px rgba(6,61,57,.045); }
.auth-input--code { letter-spacing:.14em; font-weight:var(--font-weight-display); text-align:center; }
.auth-password-wrap { position:relative; }
.auth-password-wrap input { padding-right:3.25rem; }
.auth-password-toggle { position:absolute; right:.35rem; top:50%; transform:translateY(-50%); background:transparent; box-shadow:none; color:var(--primary-dark); }
.auth-password-toggle:hover { transform:translateY(-50%); background:var(--surface-soft); }
.auth-switch-note { margin:0; color:var(--muted); font-size:.92rem; text-align:center; }
.auth-remember { display:flex; grid-template-columns:none; align-items:center; gap:.65rem; width:max-content; max-width:100%; color:var(--muted); font-size:.9rem; font-weight:var(--font-weight-medium); cursor:pointer; }
.auth-remember input { flex:0 0 auto; }
.auth-alert, .auth-inline-note { border-radius:22px; padding: var(--card-padding); background:var(--surface-soft); color:var(--primary-dark); margin-bottom:1rem; }
.auth-alert { display:flex; align-items:flex-start; gap:.7rem; }
.auth-alert ion-icon { flex:0 0 auto; font-size:1.35rem; margin-top:.1rem; }
.auth-alert--danger { background:var(--danger-soft); color:var(--danger); }
.auth-alert--success { background:var(--success-soft); color:var(--success); }
.auth-alert__body { margin-top:.18rem; }
.auth-alert__hint { margin-top:.35rem; color:var(--ink); font-size:.9rem; }
.auth-inline-note { display:grid; gap:.35rem; }
.auth-inline-note__actions { display:grid; gap:.65rem; margin-top:.8rem; }
.auth-inline-note__actions form { display:grid; }
.auth-password-strength { height:8px; border-radius:999px; background:var(--surface-soft); overflow:hidden; margin-top:.5rem; }
.auth-password-strength__bar { height:100%; width:0; background:var(--primary); transition:width .18s ease, background-color .18s ease; }
.auth-password-strength__bar[data-score="1"] { background:var(--danger); }
.auth-password-strength__bar[data-score="2"] { background:var(--warn); }
.auth-password-strength__bar[data-score="3"], .auth-password-strength__bar[data-score="4"] { background:var(--success); }
.auth-password-strength__label, .auth-legal-note { color:var(--muted); font-size:.86rem; }
.auth-legal-note { margin:.1rem 0 0; text-align:center; }
.auth-hero, .auth-flow-hero { position:relative; isolation:isolate; overflow:hidden; color:var(--primary-dark); background:var(--gradient-hero-fresh); }
.auth-hero { min-height:150px; padding:1.5rem 1.35rem; display:grid; align-content:end; gap:1.1rem; }
.auth-flow-hero { min-height:230px; padding:1.2rem 1.25rem; display:grid; align-content:space-between; gap:1rem; }
.auth-card--credentials .auth-flow-hero { min-height:150px; padding:1.5rem 1.35rem; align-content:end; }
.auth-hero::after, .auth-flow-hero::after { content:""; position:absolute; inset:auto -4.5rem -6rem auto; width:13rem; height:13rem; border-radius:50%; background:var(--on-primary-overlay); z-index:-1; }
.auth-flow-hero::before { content:""; position:absolute; width:8rem; height:8rem; left:-3rem; top:30%; border-radius:50%; background:var(--on-primary-overlay); z-index:-1; }
.auth-flow-hero--recovery { background:var(--gradient-hero-fresh); }
.auth-flow-hero--verify, .auth-flow-hero--signup { background:var(--gradient-hero-fresh); }
.auth-flow-hero--security { background:linear-gradient(145deg, var(--color-security-mid) 0%, var(--color-mint-bright) 100%); }
.auth-flow-hero--success { background:var(--gradient-hero-fresh); }
.auth-flow-hero--deleted { background:var(--gradient-hero-soft); }
.auth-hero__copy { max-width:28rem; }
.auth-flow-hero .auth-hero__copy { max-width:28rem; }
.auth-hero__copy h2 { color:var(--primary-dark); font-size:clamp(1.65rem,7vw,2.35rem); line-height:1.02; margin-bottom:0; }
.auth-flow-hero .auth-hero__copy h2 { font-size:clamp(1.55rem,6vw,2.15rem); }
.auth-hero__copy p { margin-bottom:0; color:var(--on-soft-muted); }
.auth-alert__hint--standalone { margin:-.65rem 0 1rem; padding-inline:1rem; }
.auth-alert__hint--standalone a { color:var(--primary-dark); font-weight:var(--font-weight-display); text-decoration:none; }
.auth-hero--login { gap:.5rem; }
.auth-inline-note--neutral { background:var(--surface-soft); color:var(--muted); }
.landing-page { width:100%; display:grid; gap:clamp(2rem,4.5vw,3.5rem); color:var(--ink); }
.landing-section--soft, .landing-product, .landing-cta { border-radius:var(--radius-screen); }
.landing-hero { position:relative; display:grid; gap:var(--space-6); overflow:hidden; padding:clamp(1.5rem,4vw,3.5rem) clamp(1.25rem,5vw,3.5rem) clamp(1.5rem,4vw,2.25rem); border-radius:0 0 var(--radius-screen) var(--radius-screen); background:var(--primary); color:var(--on-primary); }
.landing-hero__content { min-width:0; max-width:760px; display:grid; gap:var(--space-4); align-content:center; }
.landing-kicker, .landing-section__eyebrow { color:var(--on-soft-muted); font-size:.8rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); text-transform:none; }
.landing-hero .landing-kicker { color:var(--on-primary-muted); }
.landing-title { max-width:12ch; margin:0; color:var(--on-primary); font-size:clamp(2.45rem,5.2vw,3.9rem); line-height:.98; letter-spacing:-.04em; }
.landing-lead { max-width:43rem; margin:0; color:var(--on-primary-muted); font-size:clamp(1rem,2vw,1.15rem); line-height:1.58; }
.landing-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.65rem; }
.landing-hero .btn-primary { background:var(--bg); border-color:transparent; color:var(--primary-dark); box-shadow:none; }
.landing-hero__secondary { border-color:var(--on-primary-border); background:transparent; color:var(--on-primary); }

.landing-preview__window { min-width:0; display:grid; gap:1rem; padding:1rem; border-radius:32px; background:var(--bg); color:var(--ink); box-shadow:var(--shadow-soft); }
.landing-preview__window--flow { box-shadow:none; }
.landing-preview__topbar { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
.landing-preview__brand { min-width:0; display:flex; align-items:center; gap:.48rem; color:var(--primary-dark); font-weight:var(--font-weight-display); }
.landing-preview__brand .shell-brand__mark { width:28px; height:28px; filter:none; }
.landing-hero__grid { width:100%; min-width:0; display:grid; gap:var(--space-6); align-items:center; }
.landing-preview { width:min(100%,500px); min-width:0; display:grid; gap:.7rem; justify-self:end; }
.landing-preview__dots { flex:0 0 auto; display:flex; gap:.28rem; }
.landing-preview__dots span { width:.42rem; height:.42rem; border-radius:50%; background:var(--line); }
.landing-preview__dashboard-head { display:grid; gap:.7rem; }
.landing-preview__application-head { display:flex; align-items:flex-start; justify-content:space-between; gap:.75rem; }
.landing-preview__status { flex:0 0 auto; padding:.3rem .62rem; border-radius:var(--radius-pill); background:var(--primary-soft); color:var(--primary-dark); font-size:.72rem; font-weight:var(--font-weight-display); }
.landing-preview__timeline { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.15rem; }
.landing-preview__timeline span { position:relative; padding-top:.85rem; color:var(--muted); font-size:.6rem; text-align:center; }
.landing-preview__timeline span::before { content:""; position:absolute; top:.16rem; left:50%; width:.45rem; height:.45rem; border:2px solid var(--line); border-radius:50%; background:var(--bg); transform:translateX(-50%); }
.landing-preview__timeline span:not(:last-child)::after { content:""; position:absolute; top:.39rem; left:calc(50% + .35rem); width:calc(100% - .7rem); height:1px; background:var(--line); }
.landing-preview__timeline .is-done::before, .landing-preview__timeline .is-current::before { border-color:var(--primary); background:var(--primary); }
.landing-preview__timeline .is-current { color:var(--primary-dark); font-weight:var(--font-weight-display); }
.landing-preview__live-name { color:var(--primary-dark); font-weight:var(--font-weight-display); }
.landing-preview__live-sub { color:var(--muted); font-size:.86rem; line-height:1.4; }
.landing-preview__live-backlog { display:grid; gap:.4rem; }
.landing-demo-stage { display:grid; }
.landing-demo-state { grid-area:1 / 1; min-width:0; display:grid; gap:.75rem; align-content:start; opacity:0; visibility:hidden; transform:translateY(8px) scale(.99); transition:opacity .3s ease, transform .3s ease, visibility .3s; }
.landing-demo-state.is-active { opacity:1; visibility:visible; transform:none; }
.landing-demo-controls { display:flex; justify-content:center; gap:.42rem; }
.landing-demo-control { width:2rem; height:2rem; display:grid; place-items:center; padding:0; border:0; background:transparent; cursor:pointer; }
.landing-demo-control::before { content:""; width:.52rem; height:.52rem; border-radius:999px; background:var(--on-primary-overlay-strong); transition:width .2s ease, background .2s ease; }
.landing-demo-control.is-active::before { width:1.7rem; background:var(--bg); }
.landing-demo-control:focus-visible { outline:2px solid var(--bg); outline-offset:1px; border-radius:999px; }
.landing-offer-mini { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }
.landing-offer-mini div { min-width:0; display:grid; gap:.12rem; padding:.75rem; border-radius:18px; background:var(--surface); }
.landing-offer-mini span, .landing-offer-mini small { color:var(--muted); font-size:.72rem; }
.landing-offer-mini strong { color:var(--primary-dark); font-size:1rem; }
.landing-preview__kpi-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem; }
.landing-preview__kpi-strip span { min-width:0; display:grid; gap:.05rem; padding:.55rem .35rem; border-radius:15px; background:var(--surface-soft); color:var(--muted); font-size:.62rem; line-height:1.2; text-align:center; }
.landing-preview__kpi-strip strong { color:var(--primary-dark); font-size:1rem; }
.landing-preview__live-title { color:var(--primary-dark); font-weight:var(--font-weight-display); }
.landing-preview__live-body { color:var(--muted); font-size:.86rem; line-height:1.4; }
.landing-preview__live-focus { display:grid; gap:.35rem; padding:var(--space-4); border-radius:22px; background:var(--surface-soft); }
.landing-preview__live-eyebrow { color:var(--muted); font-size:.74rem; font-weight:var(--font-weight-display); }
.landing-preview__live-cta { display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin-top:.3rem; color:var(--primary-dark); font-weight:var(--font-weight-display); }
.landing-preview__live-row { min-width:0; display:flex; align-items:center; gap:.55rem; padding:.58rem .68rem; border-radius:16px; background:var(--surface); }
.landing-preview__live-row > span:last-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.landing-preview__live-pill { flex:0 0 auto; min-height:25px; display:inline-flex; align-items:center; padding:.22rem .52rem; border-radius:var(--radius-pill); background:var(--primary); color:var(--on-primary); font-size:.7rem; font-weight:var(--font-weight-display); }

.landing-flow-stage { display:grid; }
.landing-flow-panel { grid-area:1 / 1; min-width:0; display:grid; gap:.75rem; align-content:start; opacity:0; visibility:hidden; transform:translateY(8px) scale(.99); transition:opacity .3s ease, transform .3s ease, visibility .3s; }
.landing-flow-panel.is-active { opacity:1; visibility:visible; transform:none; }

.landing-section { min-width:0; display:grid; gap:clamp(1.4rem,3vw,2rem); padding:clamp(2rem,4vw,3.1rem) 0; }
.landing-section--soft { padding:clamp(1.6rem,4vw,3rem); background:var(--surface); box-shadow:none; }
.landing-section__head { display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; }
.landing-section__head > div { display:grid; gap:.45rem; }
.landing-section__title { max-width:28ch; margin:0; color:var(--primary-dark); font-size:clamp(1.7rem,3.6vw,2.65rem); line-height:1.08; letter-spacing:-.028em; }
.landing-section__copy { max-width:62ch; margin:0; color:var(--muted); line-height:1.55; }
.landing-section__copy--narrow { max-width:46ch; }

.landing-problem { gap:var(--space-6); }
.landing-pain-grid { display:grid; gap:0; border-top:1px solid var(--line); }
.landing-pain-card { display:grid; gap:.65rem; padding:var(--space-5) 0; border-bottom:1px solid var(--line); background:transparent; box-shadow:none; }
.landing-pain-card__index { color:var(--muted); font-size:.75rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.landing-pain-card h3 { max-width:28ch; margin:0; color:var(--primary-dark); font-size:1.05rem; }
.landing-pain-card p { max-width:38ch; margin:0; color:var(--muted); line-height:1.5; }
.landing-problem__answer { display:grid; gap:.3rem; padding:var(--space-4); border-radius:22px; background:var(--primary-soft); color:var(--primary-dark); }
.landing-problem__answer span { font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.landing-problem__answer strong { max-width:62ch; font-size:clamp(1rem,2vw,1.2rem); line-height:1.4; }

.landing-flow-section { color:var(--on-primary); padding-inline:clamp(1.25rem,5vw,1.5rem); }
.landing-flow-section .landing-section__eyebrow, .landing-flow-section .landing-section__copy { color:var(--on-primary-muted); }
.landing-flow-section .landing-section__title { color:var(--on-primary); }
.landing-flow { min-width:0; min-height:220vh; position:relative; }
.landing-flow__stage { position:sticky; top:1rem; min-width:0; display:grid; gap:var(--space-4); align-items:start; }
.landing-flow__preview { min-width:0; align-self:start; }
.landing-flow__narrative { min-width:0; display:grid; gap:.8rem; align-self:center; }
.landing-flow__mode { min-width:0; flex:1 1 auto; color:var(--muted); font-size:.74rem; font-weight:var(--font-weight-display); line-height:1.3; text-align:right; overflow-wrap:anywhere; }
.landing-flow__steps { min-height:172px; display:grid; }
.landing-step-card { grid-area:1 / 1; min-width:0; display:grid; grid-template-columns:auto minmax(0,1fr); gap:var(--space-3); align-items:start; padding:var(--space-4); border:1px solid var(--on-primary-overlay); border-radius:22px; background:var(--primary); color:var(--on-primary); opacity:0; visibility:hidden; transform:translateY(24px) scale(.985); pointer-events:none; transition:opacity .28s ease, transform .32s ease, visibility .28s ease, background .2s ease, border-color .2s ease; }
.landing-step-card.is-active { border-color:var(--bg); background:var(--on-primary-overlay-strong); opacity:1; visibility:visible; transform:none; pointer-events:auto; }
.landing-step-card__number { width:38px; height:38px; display:grid; place-items:center; border-radius:14px; background:var(--on-primary-overlay); color:var(--on-primary); font-weight:var(--font-weight-display); }
.landing-step-card.is-active .landing-step-card__number { background:var(--bg); color:var(--primary-dark); }
.landing-step-card h3 { margin:0 0 .35rem; color:inherit; font-size:1rem; }
.landing-step-card p { margin:0; color:var(--on-primary-muted); line-height:1.5; }
.landing-flow__nav { display:flex; align-items:center; gap:.4rem; }
.landing-flow__control { width:2rem; height:2rem; display:grid; place-items:center; padding:0; border:0; background:transparent; cursor:pointer; }
.landing-flow__control::before { content:""; width:.52rem; height:.52rem; border-radius:999px; background:var(--on-primary-overlay-strong); transition:width .2s ease, background .2s ease; }
.landing-flow__control.is-active::before { width:1.7rem; background:var(--bg); }
.landing-flow__control:focus-visible { outline:2px solid var(--bg); outline-offset:1px; border-radius:999px; }
.landing-form-mini, .landing-application-mini, .landing-dashboard-mini { min-width:0; display:grid; gap:.7rem; }
.landing-flow-panel[data-flow-panel="1"] .landing-application-mini { padding:.75rem; border:1px solid var(--line); border-radius:18px; background:var(--surface); }
.landing-flow-panel[data-flow-panel="2"] .landing-dashboard-mini { padding:.75rem; border-radius:18px; background:var(--surface-soft); }
.landing-form-mini__head, .landing-application-mini__head { display:flex; align-items:center; justify-content:space-between; gap:.75rem; color:var(--primary-dark); }
.landing-form-mini__head span, .landing-application-mini__head > div span { color:var(--muted); font-size:.76rem; }
.landing-application-mini__head > .landing-preview__live-pill { color:var(--on-primary); font-size:.7rem; }
.landing-form-mini__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; }
.landing-form-mini__grid div { min-width:0; display:grid; gap:.14rem; padding:.58rem .62rem; border-radius:15px; background:var(--surface-soft); }
.landing-form-mini__grid small { color:var(--muted); }
.landing-form-mini__grid span { overflow:hidden; color:var(--primary-dark); font-weight:var(--font-weight-semibold); text-overflow:ellipsis; white-space:nowrap; }
.landing-form-mini__save { justify-self:end; padding:.5rem .78rem; border-radius:var(--radius-pill); background:var(--primary); color:var(--on-primary); font-size:.78rem; font-weight:var(--font-weight-display); }
.landing-application-mini__head > div { min-width:0; display:grid; gap:.1rem; }
.landing-application-mini__head > div span { color:var(--muted); }
.landing-timeline-mini { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.2rem; }
.landing-timeline-mini span { position:relative; padding-top:.8rem; color:var(--muted); font-size:.64rem; text-align:center; }
.landing-timeline-mini span::before { content:""; position:absolute; top:.15rem; left:50%; width:.45rem; height:.45rem; border:2px solid var(--line); border-radius:50%; background:var(--bg); transform:translateX(-50%); }
.landing-timeline-mini span:not(:last-child)::after { content:""; position:absolute; top:.38rem; left:calc(50% + .35rem); width:calc(100% - .7rem); height:1px; background:var(--line); }
.landing-timeline-mini span.is-done::before, .landing-timeline-mini span.is-current::before { border-color:var(--primary); background:var(--primary); }
.landing-timeline-mini span.is-current { color:var(--primary-dark); font-weight:var(--font-weight-display); }
.landing-application-mini__rows { display:grid; gap:.4rem; }
.landing-application-mini__rows div { display:flex; align-items:center; gap:.55rem; padding:.58rem .62rem; border-radius:15px; background:var(--surface-soft); color:var(--ink); font-size:.8rem; }
.landing-application-mini__rows ion-icon { flex:0 0 auto; color:var(--primary-dark); }
.landing-dashboard-mini__kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem; }
.landing-dashboard-mini__kpis div { display:grid; gap:.1rem; padding:.58rem; border-radius:15px; background:var(--surface-soft); text-align:center; }
.landing-dashboard-mini__kpis strong { color:var(--primary-dark); font-size:1.15rem; }
.landing-dashboard-mini__kpis span { color:var(--muted); font-size:.7rem; }

.landing-import { gap:var(--space-5); color:var(--on-primary); }
.landing-import .landing-section__eyebrow, .landing-import .landing-section__copy { color:var(--on-primary-muted); }
.landing-import .landing-section__title { color:var(--on-primary); }
.landing-import-steps { display:grid; gap:0; margin:0; padding:0; border-top:1px solid var(--on-primary-overlay-strong); list-style:none; }
.landing-import-step { min-width:0; display:grid; grid-template-columns:auto minmax(0,1fr); gap:.85rem; align-items:start; padding:1rem 0; border-bottom:1px solid var(--on-primary-overlay-strong); }
.landing-import-step strong { width:2rem; height:2rem; display:grid; place-items:center; border-radius:50%; background:var(--bg); color:var(--primary-dark); font-size:.8rem; }
.landing-import-step div { display:grid; gap:.2rem; }
.landing-import-step span { color:var(--on-primary); font-weight:var(--font-weight-display); }
.landing-import-step p { margin:0; color:var(--on-primary-muted); line-height:1.5; }
.landing-import-note { margin:0; max-width:62ch; color:var(--on-primary-muted); line-height:1.55; }

.landing-product { gap:var(--space-6); }
.landing-product-tabs { display:flex; gap:.35rem; min-width:0; overflow-x:auto; padding-bottom:.15rem; scrollbar-width:none; }
.landing-product-tabs::-webkit-scrollbar { display:none; }
.landing-product-tab { flex:0 0 auto; min-height:42px; padding:.5rem .85rem; border:1px solid transparent; border-radius:var(--radius-pill); background:var(--surface-soft); color:var(--primary-dark); font:inherit; font-size:.86rem; font-weight:var(--font-weight-display); cursor:pointer; }
.landing-product-tab.is-active { border-color:var(--primary); background:var(--primary); color:var(--on-primary); box-shadow:var(--shadow-sm); }
.landing-product-tab:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; }
.landing-product-stage { min-width:0; display:grid; }
.landing-product-panel { min-width:0; display:grid; gap:var(--space-5); align-items:center; padding-top:var(--space-2); }
.landing-product-panel__copy { display:grid; gap:.5rem; align-content:center; }
.landing-product-panel__copy > span { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.landing-product-panel__copy h3 { max-width:18ch; margin:0; color:var(--primary-dark); font-size:clamp(1.4rem,3vw,2rem); line-height:1.08; }
.landing-product-panel__copy p { max-width:42ch; margin:0; color:var(--muted); line-height:1.55; }
.landing-product-ui { min-width:0; display:grid; gap:.65rem; padding:var(--space-4); border:1px solid var(--line); border-radius:26px; background:var(--bg); box-shadow:var(--shadow-soft); }
.landing-product-ui--dashboard { align-content:start; }
.landing-product-ui__kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem; }
.landing-product-ui__kpis div { min-width:0; display:grid; gap:.12rem; padding:.6rem; border-radius:15px; background:var(--surface-soft); text-align:center; }
.landing-product-ui__kpis strong { color:var(--primary-dark); font-size:1.05rem; }
.landing-product-ui__kpis span { overflow:hidden; color:var(--muted); font-size:.65rem; text-overflow:ellipsis; white-space:nowrap; }
.landing-product-ui__rows { display:grid; gap:.35rem; }
.landing-product-ui__rows div { display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding:.58rem .68rem; border-radius:15px; background:var(--surface); color:var(--primary-dark); font-size:.8rem; font-weight:var(--font-weight-semibold); }
.landing-search-mini { display:flex; align-items:center; gap:.55rem; padding:.65rem .75rem; border:1px solid var(--line); border-radius:var(--radius-pill); color:var(--muted); font-size:.78rem; }
.landing-app-toolbar-mini { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:.7rem; align-items:center; padding:.1rem .1rem .35rem; color:var(--muted); font-size:.7rem; }
.landing-app-toolbar-mini strong { color:var(--primary-dark); }
.landing-app-list-mini { display:grid; }
.landing-app-list-mini > div { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:.55rem; align-items:center; padding:.65rem 0; border-bottom:1px solid var(--line); }
.landing-app-list-mini > div:last-child { border-bottom:0; }
.landing-app-list-mini section { min-width:0; display:grid; gap:.1rem; }
.landing-app-list-mini section strong { color:var(--primary-dark); font-size:.8rem; }
.landing-app-list-mini section span { overflow:hidden; color:var(--muted); font-size:.72rem; text-overflow:ellipsis; white-space:nowrap; }
.landing-funnel-mini { display:grid; gap:.6rem; }
.landing-funnel-mini > div { display:grid; grid-template-columns:minmax(7.5rem,.8fr) minmax(0,1.4fr) 3.5rem; gap:.55rem; align-items:center; }
.landing-funnel-mini span { display:flex; justify-content:space-between; gap:.4rem; color:var(--primary-dark); font-size:.72rem; }
.landing-funnel-mini i { height:.42rem; overflow:hidden; border-radius:var(--radius-pill); background:var(--line); }
.landing-funnel-mini i::before { content:""; display:block; width:var(--landing-bar); height:100%; border-radius:inherit; background:var(--primary); }
.landing-funnel-mini b { color:var(--primary-dark); font-size:.72rem; text-align:right; }
.landing-insights-timing-mini { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; }
.landing-insights-timing-mini span { display:grid; gap:.18rem; padding:.55rem .65rem; border:1px solid var(--line); border-radius:15px; color:var(--muted); font-size:.68rem; }
.landing-insights-timing-mini strong { color:var(--primary-dark); font-size:.8rem; }
.landing-product-ui__note { display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding:.65rem .75rem; border-radius:16px; background:var(--surface-soft); }
.landing-product-ui__note strong { color:var(--primary-dark); font-size:.78rem; }
.landing-product-ui__note span { color:var(--muted); font-size:.72rem; }
.landing-calendar-mini { display:grid; gap:.55rem; padding:.7rem; border:1px solid var(--line); border-radius:18px; background:var(--surface-soft); }
.landing-calendar-mini__head { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
.landing-calendar-mini__head > div:first-child { display:grid; gap:.1rem; }
.landing-calendar-mini__head strong { color:var(--primary-dark); font-size:.82rem; }
.landing-calendar-mini__head span { color:var(--muted); font-size:.68rem; }
.landing-calendar-mini__head > div:last-child { display:flex; gap:.3rem; color:var(--primary-dark); }
.landing-calendar-mini__week, .landing-calendar-mini__days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:.25rem; text-align:center; }
.landing-calendar-mini__week span { color:var(--muted); font-size:.62rem; font-weight:var(--font-weight-semibold); }
.landing-calendar-mini__days > * { min-height:2rem; display:grid; place-items:center; position:relative; border-radius:10px; background:var(--bg); color:var(--primary-dark); font-size:.7rem; font-weight:var(--font-weight-semibold); }
.landing-calendar-mini__days strong { border:1px solid var(--primary); }
.landing-calendar-mini__days small { position:absolute; right:.2rem; bottom:.18rem; width:.8rem; height:.8rem; display:grid; place-items:center; border-radius:50%; background:var(--primary-dark); color:var(--on-primary); font-size:.5rem; }

.landing-usecases { color:var(--on-primary); padding-inline:clamp(1.25rem,5vw,1.5rem); }
.landing-usecases .landing-section__eyebrow { color:var(--on-primary-muted); }
.landing-usecases .landing-section__title { color:var(--on-primary); }
.landing-usecase-grid { display:grid; gap:0; border-top:1px solid var(--on-primary-overlay-strong); }
.landing-usecase-card { display:grid; gap:.65rem; padding:1.35rem 0; border-bottom:1px solid var(--on-primary-overlay-strong); background:transparent; }
.landing-usecase-card > span { color:var(--on-primary-muted); font-size:.76rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.landing-usecase-card strong { max-width:28ch; color:var(--on-primary); font-size:1.05rem; line-height:1.35; }
.landing-usecase-card p { max-width:42ch; margin:0; color:var(--on-primary-muted); line-height:1.55; }

.landing-compare-scroll { min-width:0; overflow-x:auto; border:1px solid var(--line); border-radius:22px; scrollbar-width:thin; }
.landing-compare-scroll:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; }
.landing-compare-table { min-width:720px; display:grid; }
.landing-compare-row { display:grid; grid-template-columns:minmax(12rem,1.4fr) repeat(3,minmax(9rem,1fr)); align-items:stretch; border-bottom:1px solid var(--line); }
.landing-compare-row:last-child { border-bottom:0; }
.landing-compare-row > * { display:flex; align-items:center; padding:.8rem .9rem; border-right:1px solid var(--line); }
.landing-compare-row > *:last-child { border-right:0; }
.landing-compare-row > span { color:var(--primary-dark); font-weight:var(--font-weight-semibold); }
.landing-compare-row > em { color:var(--muted); font-style:normal; }
.landing-compare-row > strong { background:var(--primary-soft); color:var(--primary-dark); }
.landing-compare-row--head { background:var(--surface-soft); }
.landing-compare-row--head strong { background:transparent; }

.landing-pricing-shell { width:min(900px,100%); margin-inline:auto; display:grid; gap:var(--space-4); }
.landing-pricing-controls { display:flex; align-items:center; justify-content:flex-end; gap:.65rem; flex-wrap:wrap; }
.landing-pricing-controls__label { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.landing-pricing-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-3); align-items:stretch; }
.landing-pricing-card { min-width:0; display:grid; grid-template-rows:auto auto 1fr auto auto; gap:var(--space-3); align-content:start; height:100%; padding:var(--card-padding); border-radius:var(--card-radius); background:var(--surface); box-shadow:var(--shadow-card); }
.landing-pricing-card--pro { border:1px solid var(--primary); box-shadow:var(--shadow-soft); }
.landing-pricing-card__label { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.landing-pricing-card__price { color:var(--primary-dark); font-size:2.1rem; font-weight:var(--font-weight-display); line-height:1.1; }
.landing-pricing-card__price small { color:var(--muted); font-size:.86rem; font-weight:var(--font-weight-medium); }
.landing-pricing-card__summary { margin:0; color:var(--muted); font-size:.9rem; line-height:1.45; }
.landing-pricing-card__billing-note { margin:0; color:var(--muted); font-size:.78rem; line-height:1.4; }
.landing-pricing-card .btn { width:100%; justify-content:center; }
.pricing-toggle { width:max-content; max-width:100%; display:inline-flex; gap:.2rem; padding:.2rem; border-radius:var(--radius-pill); background:var(--surface-soft); }
.pricing-toggle__option { min-height:var(--button-min-height-sm); display:inline-flex; align-items:center; gap:.35rem; padding:.3rem .7rem; border:0; border-radius:var(--radius-pill); background:transparent; color:var(--muted); font:inherit; font-size:.82rem; font-weight:var(--font-weight-display); cursor:pointer; }
.pricing-toggle__option.is-active { background:var(--surface); color:var(--primary-dark); box-shadow:var(--shadow-sm); }
.pricing-toggle__option:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; }
.pricing-toggle__save { padding:.1rem .35rem; border-radius:var(--radius-pill); background:var(--success-soft); color:var(--success); font-size:.68rem; }
.landing-plan-comparison { min-width:0; }
.landing-plan-comparison .sv-plan-comparison__head { background:rgba(255,255,255,.58); }
.landing-plan-comparison__more { display:flex; flex-direction:column; }
.landing-plan-comparison__extended { order:1; border-top:0; }
.landing-plan-comparison__more summary { order:2; min-height:46px; display:flex; align-items:center; justify-content:center; gap:.4rem; padding:.65rem .2rem; border-bottom:1px solid var(--line); color:var(--primary-dark); font-weight:var(--font-weight-display); cursor:pointer; list-style:none; }
.landing-plan-comparison__more summary::-webkit-details-marker { display:none; }
.landing-plan-comparison__more summary ion-icon { transition:transform .18s ease; }
.landing-plan-comparison__more[open] summary ion-icon { transform:rotate(180deg); }
.landing-plan-comparison__open { display:none; }
.landing-plan-comparison__more[open] .landing-plan-comparison__closed { display:none; }
.landing-plan-comparison__more[open] .landing-plan-comparison__open { display:inline; }
.landing-feature-label { min-width:0; display:flex; align-items:center; gap:.3rem; }
.landing-feature-label > span:first-child { min-width:0; }
.landing-feature-info { position:relative; flex:0 0 auto; display:inline-flex; align-items:center; }
.landing-feature-info__trigger { width:1.45rem; height:1.45rem; display:grid; place-items:center; padding:0; border:0; border-radius:50%; background:transparent; color:var(--muted); font:inherit; cursor:pointer; }
.landing-feature-info__trigger:hover, .landing-feature-info__trigger[aria-expanded="true"] { background:var(--surface-soft); color:var(--primary-dark); }
.landing-feature-info__trigger:focus-visible { outline:2px solid var(--focus-ring); outline-offset:2px; }
.landing-feature-info__trigger ion-icon { font-size:1rem; }
.landing-feature-info__popover { position:fixed; z-index:60; width:min(20rem,calc(100vw - 1.5rem)); padding:.7rem .8rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--surface); color:var(--ink); box-shadow:var(--shadow-soft); font-size:.82rem; font-weight:var(--font-weight-regular); line-height:1.45; text-align:left; }
.landing-feature-info__popover[hidden] { display:none; }

.landing-cta { display:grid; gap:var(--space-5); padding:clamp(1.4rem,4vw,2.8rem); background:var(--gradient-hero-fresh); }
.landing-actions--cta { gap:.65rem; }
.landing-actions--cta .btn { flex:1 1 100%; justify-content:center; }

.landing-section--faq { color:var(--on-primary); padding-inline:clamp(1.25rem,5vw,1.5rem); }
.landing-section--faq .landing-section__eyebrow { color:var(--on-primary-muted); }
.landing-section--faq .landing-section__title { color:var(--on-primary); }
.landing-faq-list { width:100%; display:grid; gap:.55rem; }
.landing-faq-item { overflow:hidden; border-radius:20px; background:var(--surface); color:var(--ink); }
.landing-faq-item summary { min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); padding:.85rem 1rem; color:var(--primary-dark); font-weight:var(--font-weight-display); cursor:pointer; list-style:none; }
.landing-faq-item summary::-webkit-details-marker { display:none; }
.landing-faq-item summary ion-icon { flex:0 0 auto; transition:transform .2s ease; }
.landing-faq-item[open] summary ion-icon { transform:rotate(180deg); }
.landing-faq-item p { margin:0; padding:0 1rem 1rem; color:var(--muted); line-height:1.55; }

.app-body--landing .reveal { opacity:0; transform:translateY(12px); transition:opacity .5s ease-out, transform .5s ease-out; }
.app-body--landing .reveal.is-visible { opacity:1; transform:none; }
.reveal-stagger > .reveal:nth-child(2) { transition-delay:.06s; }
.reveal-stagger > .reveal:nth-child(3) { transition-delay:.12s; }
.reveal-stagger > .reveal:nth-child(4) { transition-delay:.18s; }
.sv-text-page { width:100%; }
.sv-text-page__head { display:grid; gap:1rem; padding:var(--card-padding); }
.sv-text-page__eyebrow { color:var(--muted); font-size:.8rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-text-page__title { color:var(--primary-dark); margin:.25rem 0 .35rem; }
.sv-text-page__guide-body, .sv-text-page__compact-intro { color:var(--muted); margin-bottom:0; }
.sv-text-page__public-cta-actions { display:flex; gap:.55rem; flex-wrap:wrap; }
.sv-pill-link { min-height:38px; border:0; border-radius:var(--radius-pill); display:inline-flex; align-items:center; justify-content:center; gap:.35rem; padding:.45rem .75rem; background:var(--surface-soft); color:var(--primary-dark); font-weight:var(--font-weight-display); white-space:nowrap; cursor:pointer; }
.overview-grid { display:grid; gap:var(--space-4); }
.overview-card { display:grid; gap:.65rem; padding:var(--card-padding); }
.overview-card__label { color:var(--muted); font-size:.78rem; font-weight:var(--font-weight-display); }
.overview-card__value { color:var(--primary-dark); font-size:1.55rem; line-height:1; letter-spacing:-.035em; font-weight:var(--font-weight-display); }
.sv-text-page__guide-section, .sv-text-page__faq-section, .sv-text-page__main { padding:var(--card-padding); display:grid; gap:.85rem; }
.sv-text-page__section-title { color:var(--primary-dark); margin:0; }
.sv-text-page__list, .sv-text-page__legal-section ul { display:grid; gap:.55rem; padding-left:1.15rem; margin:.15rem 0 0; color:var(--ink); }
.sv-text-page__faq-sections { display:grid; gap:.8rem; }
.sv-text-page__faq-item { padding:.9rem 0; border-bottom:1px solid var(--line); }
.sv-text-page__faq-item:last-child { border-bottom:0; }
.sv-text-page__faq-question { cursor:pointer; font-weight:var(--font-weight-display); color:var(--primary-dark); }
.sv-text-page__faq-answer { color:var(--muted); padding-top:.55rem; }
.sv-text-page__compact-section { display:grid; gap:.5rem; padding-top:1rem; border-top:1px solid var(--line); }
.sv-text-page__compact-section:first-of-type { border-top:0; padding-top:0; }
.sv-text-page__section-title--compact { margin:0; color:var(--primary-dark); font-size:1.15rem; }
.sv-text-page__compact-body { color:var(--muted); margin:0; }
.sv-text-page__panel { width:100%; padding:var(--card-padding); }
.sv-text-page__sections { display:grid; gap:1rem; }
.sv-text-page__legal-section { display:grid; gap:.5rem; padding-top:1rem; border-top:1px solid var(--line); }
.sv-text-page__legal-section:first-child { padding-top:0; border-top:0; }
.sv-text-page__legal-section h2 { color:var(--primary-dark); margin:0; }
.sv-text-page__legal-section p { color:var(--muted); margin:0; }
.sv-text-page__hero-copy { margin:0; max-width:62ch; color:var(--muted); line-height:1.55; }
.sv-text-page--public .sv-text-page__eyebrow { color:var(--on-primary-muted); }
.sv-text-page--public .sv-text-page__title, .sv-text-page--public .app-section__title { color:var(--on-primary); }
.sv-text-page--public .sv-text-page__hero-copy, .sv-text-page--public .app-section__body { color:var(--on-primary-muted); }
.sv-text-page--public .sv-text-page__sections { padding-inline:var(--card-padding); }
.sv-text-page__summary-grid { gap:var(--space-3); }
.sv-text-page__quick-links { display:grid; gap:var(--space-3); }
.sv-text-page__public-cta-content { display:grid; gap:.5rem; }

.sv-resource-hub{width:min(980px,100%)}.sv-resource-hub .sv-text-page__head{padding-bottom:clamp(.5rem,2vw,1rem)}.sv-resource-groups{gap:var(--space-5)}.sv-resource-group{display:grid;gap:var(--space-3);padding-block:var(--space-2) var(--space-4)}.sv-resource-group__head{display:grid;gap:.35rem;max-width:68ch}.sv-resource-group__head .app-section__title{margin:0}.sv-resource-group__head .app-section__body{margin:0;color:var(--on-primary-muted);line-height:1.55}.sv-resource-list{display:grid;border-top:1px solid var(--on-primary-overlay-strong)}.sv-resource-list__row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 1.25rem;gap:.2rem .75rem;align-items:center;padding:.82rem .15rem;border-bottom:1px solid var(--on-primary-overlay-strong);border-radius:0;color:var(--on-primary);transition:background .16s ease}.sv-resource-list__row:hover{background:var(--on-primary-overlay)}.sv-resource-list__row:focus-visible{outline:2px solid var(--on-primary-border);outline-offset:2px}.sv-resource-list__copy{min-width:0}.sv-resource-list__copy strong{color:var(--on-primary);font-size:1.02rem;line-height:1.3}.sv-resource-list__meta{grid-column:1;grid-row:2;width:max-content;color:var(--on-primary-muted);font-size:.8rem;font-weight:var(--font-weight-display)}.sv-resource-list__row>ion-icon{grid-column:2;grid-row:1/span 2;align-self:center;color:var(--on-primary);font-size:1.08rem;transition:transform .16s ease}.sv-resource-list__row:hover>ion-icon{transform:translateX(2px)}
.sv-template-detail{width:100%;color:var(--on-primary)}.sv-template-hero__actions{display:flex;flex-wrap:wrap;gap:.6rem;padding-top:.25rem}.sv-template-hero__actions .btn-primary{--_button-bg:var(--bg);--_button-color:var(--primary-dark);--_button-shadow:none}.sv-template-layout,.sv-template-reading{min-width:0}.sv-template-block{min-width:0;display:grid;gap:.9rem;padding:clamp(1.6rem,4vw,2.35rem) 0;border-top:1px solid var(--line)}.sv-template-block h2,.sv-template-related h2{max-width:30ch;margin:0;color:var(--primary-dark);font-size:clamp(1.4rem,3vw,1.95rem);line-height:1.12}.sv-template-block>p,.sv-template-related>p{max-width:72ch;margin:0;color:var(--ink);line-height:1.7}.sv-template-block__head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.sv-template-block__head>div{display:grid;gap:.25rem}.sv-template-block__head .btn{flex:none;padding:.5rem .75rem;min-height:40px}.sv-template-filetype{display:inline-flex;align-items:center;min-height:32px;padding:.35rem .65rem;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-dark);font-size:.78rem;font-weight:var(--font-weight-display)}
.sv-template-copy-list{display:grid;gap:var(--space-4)}.sv-template-copy{display:grid;gap:.75rem;padding:var(--space-4);border-radius:var(--radius-lg);background:var(--surface-soft)}.sv-template-copy__head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.sv-template-copy__head h3{margin:.35rem 0 0;color:var(--primary-dark);font-size:1.08rem}.sv-template-copy__head .btn{flex:none;padding:.45rem .65rem;min-height:38px}.sv-template-copy pre{width:100%;max-width:100%;margin:0;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:inherit;font-size:.96rem;line-height:1.62;white-space:pre-wrap;overflow-wrap:anywhere}.sv-template-checklist-groups{display:grid;gap:var(--space-4)}.sv-template-checklist-group{display:grid;gap:.65rem;padding-top:var(--space-3);border-top:1px solid var(--line)}.sv-template-checklist-group:first-child{padding-top:0;border-top:0}.sv-template-checklist-group h3{margin:0;color:var(--primary-dark);font-size:1.08rem}.sv-template-checklist-group ul{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}.sv-template-checklist-group label{display:grid;grid-template-columns:1.25rem minmax(0,1fr);gap:.6rem;align-items:start;line-height:1.5;cursor:pointer}.sv-template-checklist-group input{margin:.15rem 0 0}.sv-template-note-fields{display:grid;gap:var(--space-3)}.sv-template-note-field{display:grid;gap:.4rem}.sv-template-note-field>span{color:var(--primary-dark);font-weight:var(--font-weight-display)}.sv-template-note-field input,.sv-template-note-field textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-soft);color:var(--ink);padding:.8rem .9rem;font:inherit;resize:vertical}.sv-template-note-field input:focus,.sv-template-note-field textarea:focus{outline:2px solid var(--primary);outline-offset:2px}.sv-template-table-wrap{min-width:0;width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.sv-template-table{width:100%;min-width:620px;border-collapse:collapse;color:var(--ink)}.sv-template-table th,.sv-template-table td{padding:.8rem .9rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.45}.sv-template-table th{background:var(--surface-soft);color:var(--primary-dark);font-size:.88rem}.sv-template-table tr:last-child td{border-bottom:0}.sv-template-related{min-width:0;display:grid;gap:.65rem;padding-top:var(--space-5);border-top:1px solid var(--line)}.sv-template-related .sv-article__inline-link{width:auto;max-width:100%;overflow-wrap:anywhere}

.sv-template-detail { padding-bottom:var(--space-6); }
.sv-template-reading { padding-bottom:var(--space-2); }
.sv-not-found { width:100%; min-height:min(70vh, 680px); display:grid; place-items:center; padding:clamp(1.5rem,4vw,3rem) 0; }
.sv-not-found__card { width:min(720px,100%); display:grid; gap:var(--space-4); padding:clamp(1.6rem,4vw,2.6rem); border-radius:var(--radius-screen); background:var(--surface); box-shadow:var(--shadow-card); }
.sv-not-found__eyebrow { color:var(--muted); font-size:.82rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-not-found__card h1 { margin:0; color:var(--primary-dark); font-size:clamp(2rem,4vw,3rem); line-height:1.02; letter-spacing:-.035em; }
.sv-not-found__card p { margin:0; max-width:56ch; color:var(--muted); line-height:1.6; }
.sv-not-found__actions { display:flex; flex-wrap:wrap; gap:.75rem; }

.sv-legal-page{width:100%;display:grid;background:var(--primary);gap:clamp(2rem,5vw,4rem);padding:clamp(1rem,3vw,2rem) clamp(.25rem,2vw,1rem) clamp(3rem,7vw,5rem);color:var(--on-primary)}
.sv-legal-page__header{width:min(960px,100%);margin-inline:auto;display:grid;gap:.65rem}
.sv-legal-page__header h1{max-width:18ch;margin:0;color:var(--on-primary);font-size:clamp(2.3rem,6vw,4.4rem);line-height:1;letter-spacing:-.04em}
.sv-legal-page__header p{max-width:65ch;margin:0;color:var(--on-primary-muted);font-size:1.05rem;line-height:1.65}
.sv-legal-page__content{width:min(960px,100%);margin-inline:auto;display:grid;gap:clamp(2rem,5vw,3.5rem)}
.sv-legal-section{display:grid;gap:1rem;padding-top:clamp(1.5rem,4vw,2.5rem);border-top:1px solid var(--on-primary-overlay-strong)}
.sv-legal-section:first-child{padding-top:0;border-top:0}
.sv-legal-section h2{max-width:28ch;margin:0;color:var(--on-primary);font-size:clamp(1.45rem,3vw,2rem);line-height:1.15;letter-spacing:-.02em}
.sv-legal-section>p,.sv-legal-subsection p{max-width:none;margin:0;color:var(--on-primary-muted);line-height:1.72}
.sv-legal-subsection{display:grid;gap:.65rem;padding-top:.5rem}
.sv-legal-subsection h3{max-width:34ch;margin:0;color:var(--on-primary);font-size:1.08rem;line-height:1.3}
.sv-legal-section ul,.sv-legal-subsection ul{display:grid;gap:.5rem;margin:0;padding-left:1.25rem;color:var(--on-primary-muted);line-height:1.65}
.sv-legal-page a{color:var(--primary-soft);text-decoration:underline;text-underline-offset:.18em}
.sv-legal-page a:hover{color:var(--on-primary)}
.sv-legal-page__header--external{min-height:0}
.sv-legal-page__content--external{min-width:0;display:block;color:var(--on-primary-muted);line-height:1.72;overflow-wrap:anywhere}
.sv-legal-page__content--external>div{display:grid;gap:1rem}
.sv-legal-page__content--external h1{max-width:18ch;margin:0 0 clamp(1rem,3vw,1.75rem);color:var(--on-primary);font-size:clamp(2.3rem,6vw,4.4rem);line-height:1;letter-spacing:-.04em}
.sv-legal-page__content--external>div>h1:first-child{display:none}
.sv-legal-page__content--external h2{max-width:34ch;margin:clamp(1.5rem,4vw,2.5rem) 0 0;padding-top:clamp(1.5rem,4vw,2.5rem);border-top:1px solid var(--on-primary-overlay-strong);color:var(--on-primary);font-size:clamp(1.45rem,3vw,2rem);line-height:1.15;letter-spacing:-.02em}
.sv-legal-page__content--external h3,.sv-legal-page__content--external h4,.sv-legal-page__content--external h5,.sv-legal-page__content--external h6{max-width:40ch;margin:1.25rem 0 0;color:var(--on-primary);font-size:1.08rem;line-height:1.3}
.sv-legal-page__content--external p{max-width:none;margin:.75rem 0 0;color:var(--on-primary-muted);line-height:1.72}
.sv-legal-page__content--external ul,.sv-legal-page__content--external ol{display:grid;gap:.5rem;max-width:none;margin:.75rem 0 0;padding-left:1.35rem;color:var(--on-primary-muted);line-height:1.65}
.sv-legal-page__content--external li>p{margin-top:.35rem}
.sv-legal-page__content--external blockquote{max-width:none;margin:1rem 0;padding-left:1rem;border-left:2px solid var(--on-primary-overlay-strong);color:var(--on-primary-muted)}
.sv-legal-page__content--external table{width:100%;table-layout:fixed;margin:1rem 0;border-collapse:collapse;color:var(--on-primary-muted)}
.sv-legal-page__content--external th,.sv-legal-page__content--external td{padding:.65rem;border:1px solid var(--on-primary-overlay-strong);text-align:left;vertical-align:top}
.sv-legal-page__content--external th{color:var(--on-primary)}

.sv-provider-switch-page { display:grid; gap:var(--space-5); }
.sv-provider-switch-page__intro { max-width:72ch; margin:0; color:var(--muted); line-height:1.6; }
.sv-provider-switch-page__sections { display:grid; gap:var(--space-5); }
.sv-provider-switch-page__section { display:grid; gap:.75rem; padding-top:var(--space-5); border-top:1px solid var(--line); }
.sv-provider-switch-page__section:first-child { padding-top:0; border-top:0; }
.sv-provider-switch-page__section h2 { margin:0; color:var(--primary-dark); font-size:clamp(1.3rem,3vw,1.75rem); line-height:1.15; }
.sv-provider-switch-page__section p { max-width:82ch; margin:0; color:var(--muted); line-height:1.68; }
.sv-provider-switch-page__section ul { display:grid; gap:.5rem; max-width:82ch; margin:0; padding-left:1.25rem; color:var(--muted); line-height:1.58; }
.sv-provider-switch-page__section a { color:var(--primary-dark); text-decoration:underline; text-underline-offset:.18em; }

.sv-text-page--public-static { width:100%; margin:0 auto; padding:clamp(1.25rem,4vw,2.5rem) clamp(1rem,3vw,2rem) clamp(1rem,3vw,2rem); color:var(--on-primary); }
.sv-text-page--public-static .page-head__title,
.sv-text-page--public-static .sv-text-page__section-title { color:var(--on-primary); }
.sv-text-page--public-static .sv-text-page__eyebrow,
.sv-text-page--public-static .sv-text-page__guide-body,
.sv-text-page--public-static .sv-text-page__compact-intro,
.sv-text-page--public-static .sv-text-page__compact-body,
.sv-text-page--public-static .sv-text-page__faq-answer,
.sv-text-page--public-static .sv-text-page__public-cta p { color:var(--on-primary-muted); }
.sv-text-page__public-sections { display:grid; }
.sv-text-page--public-static .sv-text-page__public-section { padding:clamp(1.35rem,4vw,2.25rem) 0; border-top:1px solid var(--on-primary-overlay-strong); background:transparent; box-shadow:none; border-radius:0; }
.sv-text-page--public-static .sv-text-page__public-section:first-child { border-top:0; padding-top:.25rem; }
.sv-text-page--public-static .sv-text-page__guide-section { gap:.65rem; }
.sv-text-page--public-static .sv-text-page__list { color:var(--on-primary-muted); }
.sv-text-page--public-static .sv-text-page__faq-sections { gap:0; }
.sv-text-page--public-static .sv-text-page__faq-item { border-bottom-color:var(--on-primary-overlay-strong); }
.sv-text-page--public-static .sv-text-page__faq-question { color:var(--on-primary); }
.sv-text-page--public-static .sv-text-page__main--public { display:grid; gap:1rem; padding:0; background:transparent; box-shadow:none; }
.sv-text-page--public-static .sv-text-page__compact-section { border-top-color:var(--on-primary-overlay-strong); }
.sv-text-page--public-static .sv-text-page__compact-section a { color:var(--on-primary); text-decoration:underline; text-underline-offset:.18em; }
.sv-text-page--public-static .sv-text-page__public-cta { display:grid; gap:.75rem; padding:clamp(1.35rem,4vw,2rem) 0 0; border-top:1px solid var(--on-primary-overlay-strong); border-radius:0; background:transparent; }
.sv-text-page--public-static .btn:not(.btn-primary) { border-color:var(--on-primary-border); background:transparent; color:var(--on-primary); }
.sv-text-page--public-static .btn:not(.btn-primary):hover { background:var(--on-primary-overlay); }
.sv-text-page--public-static .btn-primary { border-color:transparent; background:var(--bg); color:var(--primary-dark); box-shadow:none; }
.sv-text-page__cross-link { margin:0; padding:.25rem var(--card-padding); color:var(--on-primary-muted); line-height:1.55; }
.sv-text-page__cross-link a { color:var(--on-primary); font-weight:var(--font-weight-display); text-decoration:underline; text-underline-offset:.18em; }
.sv-resource-cta { display:flex; align-items:flex-end; justify-content:space-between; gap:var(--space-4); margin-inline:var(--card-padding); padding:var(--space-5) 0 0; border-top:1px solid var(--on-primary-overlay-strong); }
.sv-resource-cta > div { display:grid; gap:.45rem; max-width:62ch; }
.sv-resource-cta h2 { margin:0; color:var(--on-primary); font-size:clamp(1.35rem,3vw,1.75rem); line-height:1.15; }
.sv-resource-cta p { margin:0; color:var(--on-primary-muted); line-height:1.58; }
.sv-resource-cta .btn-primary { flex:none; border-color:transparent; background:var(--bg); color:var(--primary-dark); box-shadow:none; }
.sv-text-page--public-static .sv-text-page__faq-sections { width:min(980px,100%); }
.sv-text-page--public-static [data-faq-footer] { width:min(980px,100%); }
.sv-text-page__compact-actions { display:flex; flex-wrap:wrap; gap:.55rem; padding-top:.25rem; }
.sv-text-page--about { width:min(1120px,100%); }
.sv-text-page--about > .page-head,
.sv-text-page--about .sv-text-page__public-section,
.sv-text-page--about .sv-text-page__public-cta { width:min(820px,100%); }
.sv-about-story { width:100%; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:clamp(1rem,3vw,2rem); align-items:center; padding:clamp(1rem,3vw,1.5rem) 0 clamp(1.5rem,4vw,2.5rem); }
.sv-about-story__scattered { min-width:0; min-height:300px; position:relative; border:1px solid var(--on-primary-overlay-strong); border-radius:var(--radius-screen); background:var(--on-primary-overlay); }
.sv-about-story__label { position:absolute; top:1rem; left:1rem; color:var(--on-primary-muted); font-size:.78rem; font-weight:var(--font-weight-display); letter-spacing:var(--tracking-label); }
.sv-about-story__tile { position:absolute; width:min(72%,250px); display:grid; gap:.18rem; padding:.78rem .9rem; border-radius:16px; background:var(--surface); color:var(--ink); box-shadow:var(--shadow-soft); }
.sv-about-story__tile span { color:var(--muted); font-size:.72rem; font-weight:var(--font-weight-display); }
.sv-about-story__tile strong { min-width:0; color:var(--primary-dark); font-size:.9rem; line-height:1.25; overflow-wrap:anywhere; }
.sv-about-story__tile small { color:var(--muted); font-size:.72rem; }
.sv-about-story__tile--sheet { top:3.4rem; left:8%; transform:rotate(-2deg); }
.sv-about-story__tile--calendar { top:6.9rem; right:7%; transform:rotate(2.5deg); }
.sv-about-story__tile--file { bottom:4.7rem; left:7%; transform:rotate(1.5deg); }
.sv-about-story__tile--note { right:8%; bottom:1.5rem; transform:rotate(-2deg); }
.sv-about-story__bridge { width:2.5rem; height:2.5rem; display:grid; place-items:center; border-radius:50%; background:var(--bg); color:var(--primary-dark); }
.sv-about-story__bridge ion-icon { font-size:1.15rem; }
.sv-about-story__together { min-width:0; display:grid; gap:.75rem; padding:1rem; border-radius:var(--radius-screen); background:var(--surface); color:var(--ink); box-shadow:var(--shadow-soft); }
.sv-about-story__brand { display:flex; align-items:center; gap:.5rem; padding-bottom:.65rem; border-bottom:1px solid var(--line); color:var(--primary-dark); }
.sv-about-story__application { min-width:0; display:flex; align-items:flex-start; justify-content:space-between; gap:.75rem; }
.sv-about-story__application > div { min-width:0; display:grid; gap:.16rem; }
.sv-about-story__application span { color:var(--primary-dark); font-weight:var(--font-weight-display); }
.sv-about-story__application small { color:var(--muted); }
.sv-about-story__application > strong { flex:none; padding:.3rem .55rem; border-radius:var(--radius-pill); background:var(--primary-soft); color:var(--primary-dark); font-size:.74rem; }
.sv-about-story__row { min-width:0; display:grid; grid-template-columns:1.6rem minmax(0,1fr); gap:.55rem; align-items:start; padding:.7rem; border-radius:14px; background:var(--surface-soft); }
.sv-about-story__row ion-icon { margin-top:.1rem; color:var(--primary); font-size:1.05rem; }
.sv-about-story__row div { min-width:0; display:grid; gap:.12rem; }
.sv-about-story__row span { color:var(--muted); font-size:.72rem; }
.sv-about-story__row strong { color:var(--primary-dark); font-size:.88rem; line-height:1.3; }
@media (max-width: 859px) {
 .app-body--applications .sv-search-panel { padding:0; }
 .landing-hero .landing-preview { display:none; }
 .landing-hero { padding-bottom:clamp(1.5rem,7vw,2.25rem); }
 .landing-title { width:100%; max-width:none; }
 .landing-import { padding-inline:clamp(1.25rem,5vw,1.5rem); }
 .landing-page { gap:clamp(1.4rem,5vw,2rem); }
 .sv-about-story { grid-template-columns:1fr; }
 .sv-about-story__bridge { justify-self:center; transform:rotate(90deg); }
 .sv-about-story__scattered { min-height:285px; }
 .sv-about-story__tile { width:min(76%,250px); }
}
@media (min-width: 520px) {
 .sv-calendar-day-view__actions { display:flex; flex-wrap:wrap; }
 .sv-calendar-day-view__actions .btn { width:auto; }
}
@media (min-width: 860px) {
  .sv-offer-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sv-benefit-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); }

 .insights-section__head--split { grid-template-columns:minmax(0,1fr) auto; align-items:end; }
 .insights-funnel__row { grid-template-columns:minmax(11rem,.36fr) minmax(0,1fr) 4.75rem; gap:var(--space-3); }
 .insights-funnel__label { display:grid; grid-template-columns:minmax(0,1fr) auto; }
 .insights-funnel__label em { display:none; }
 .insights-funnel__track { grid-column:auto; }
 .insights-funnel__rate { display:block; justify-self:end; }
 .insights-timing { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .insights-timing div { padding:var(--space-4); border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface-soft); }
 .insights-comparison-row { grid-template-columns:minmax(12rem,.42fr) minmax(0,1fr); align-items:center; }
 .insights-comparison-row__metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
 .app-body--documents .sv-document-library__head { grid-template-columns:minmax(0,1fr) minmax(220px,320px); }
 .app-body--documents .sv-document-row { grid-template-columns:3.25rem minmax(0,1fr) auto; }
 .app-body--documents .sv-document-upload__actions .btn { width:auto; }
 .sv-document-batch__row { grid-template-columns:minmax(10rem,.7fr) minmax(0,1.3fr) auto; align-items:end; }
 .sv-document-batch__fields { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
 .sv-document-batch__remove { align-self:end; }
 .sv-card { --card-padding: var(--card-padding-lg); }
 .landing-hero__grid { grid-template-columns:minmax(0,.94fr) minmax(380px,500px); gap:var(--space-7); align-items:center; }
 .landing-preview { transform:rotate(.45deg); transition:transform .25s ease; }
 .landing-preview:hover { transform:rotate(0deg) translateY(-2px); }
 .landing-import-steps { grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid var(--on-primary-overlay-strong); }
 .landing-import-step { padding:var(--space-4); border-bottom:0; border-left:1px solid var(--on-primary-overlay-strong); }
 .landing-import-step:first-child { padding-left:0; border-left:0; }
 .landing-import-step:last-child { padding-right:0; }
 .landing-hero__content { padding-bottom:var(--space-7); }
 .landing-pain-grid { grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid var(--line); }
 .landing-pain-card { padding:var(--space-5); border-bottom:0; border-left:1px solid var(--line); }
 .landing-pain-card:first-child { padding-left:0; border-left:0; }
 .landing-pain-card:last-child { padding-right:0; }
 .landing-flow-section, .landing-usecases, .landing-section--faq { padding-inline:0; }
 .landing-flow { min-height:185vh; }
 .landing-flow__stage { top:6rem; grid-template-columns:minmax(0,1.08fr) minmax(320px,.82fr); gap:var(--space-7); }
 .landing-flow__narrative { min-height:230px; align-content:center; }
 .landing-product-panel { grid-template-columns:minmax(250px,.66fr) minmax(0,1.34fr); gap:var(--space-8); }
 .landing-usecase-grid { grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid var(--on-primary-overlay-strong); }
 .landing-usecase-card { min-width:0; padding:var(--space-5); border-bottom:0; border-left:1px solid var(--on-primary-overlay-strong); }
 .landing-usecase-card:first-child { padding-left:0; border-left:0; }
 .landing-usecase-card:last-child { padding-right:0; }
 .landing-pricing-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .landing-pricing-card { height:100%; }
 .landing-cta { grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:var(--space-8); }
 .landing-actions--cta { flex-direction:column; align-items:stretch; }
 .landing-actions--cta .btn { flex:0 0 auto; }
 .landing-section--faq .landing-section__head, .landing-faq-list { max-width:820px; }
 .page-head { align-items: center; flex-wrap: nowrap; }
 .shell-nav { display: flex; align-items: center; gap: .25rem; }
 .sv-search-panel { padding: 0; }
 .sv-applications-toolbar { grid-template-columns:auto minmax(0,1fr) auto; grid-template-areas:"actions . view" "meta meta meta"; }
 .sv-applications-toolbar__actions { justify-content:flex-start; }
 .sv-applications-toolbar .sv-disclosure__menu { right:auto; left:0; }
 .form-grid--filters { grid-template-columns: repeat(4,minmax(0,1fr)); }
 .sv-card-grid--responsive-two { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .sv-view-switch { display:inline-flex; }
 .sv-kanban:not([hidden]) { display:block; }
 .sv-kanban__grid { grid-template-columns:repeat(5,minmax(180px,1fr)); min-width:940px; }
 .app-body--applications .mobile-page--wide.is-board-view { max-width:none; }
 .sv-sheet-dialog .form-grid--filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sv-selection-bar { bottom:1.25rem; width:min(680px,calc(100% - 3rem)); grid-template-columns:auto minmax(0,1fr); align-items:center; }
 .sv-selection-bar__actions { display:flex; justify-content:flex-end; }
 .is-selection-mode { padding-bottom:6rem; }

 .sv-page-grid--equal { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .sv-page-grid--aside-right { grid-template-columns: minmax(0, 1fr) 320px; align-items: start; }
 .sv-text-page__quick-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .sv-legal-page, .sv-text-page--public-static { padding-inline:var(--space-8); }
 .site-footer { padding: var(--space-8) var(--space-6); }
 .site-footer__inner { width:min(var(--shell-content-max),100%); grid-template-columns:1.6fr repeat(3,minmax(0,1fr)); gap:var(--space-8); align-items:start; }
 .site-footer__inner--compact { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--space-6); }
 .site-footer__col--legal-inline { justify-items: end; }
 .site-footer__links { gap: .15rem; }
 .site-footer__links--inline { column-gap:var(--space-4); row-gap:.35rem; }
 .site-footer__links a { min-height: 30px; }
 .site-footer__instagram-link--desktop { display:inline-flex; }
 .site-footer__social-mobile { display:none; }
 .app-shell { padding-bottom:0; }
 .shell-header__inner { width:min(var(--shell-content-max),100%); }
 .app-main { width:min(var(--shell-content-max),calc(100% - var(--shell-desktop-inset))); padding:2rem; border-radius:var(--radius-screen); min-height:calc(100dvh - 6rem); }
 .mobile-page { grid-template-columns: minmax(0, 1fr) 360px; align-items: start; }
 .mobile-page--wide { grid-template-columns:1fr; }
 .shell-bottom-nav { display:none; }
 body.app-body--guest .app-main { width:min(var(--shell-content-max),calc(100% - var(--shell-desktop-inset))); }
 body.app-body--guest .guest-header { width:min(var(--shell-content-max),calc(100% - var(--shell-desktop-inset))); }
 .form-grid--2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
 .sv-form-section__head { grid-template-columns:minmax(0,1fr) auto; align-items:end; }
 .form-actions--sticky { bottom:calc(var(--safe-bottom, 0px) + .75rem); justify-content:flex-end; }
 .form-actions--sticky .btn { flex:0 0 auto; }
 body.app-body--login .guest-header { width:min(760px, calc(100% - 3rem)); }
 body.app-body--signup .guest-header { width:min(760px, calc(100% - 3rem)); }
 body.app-body--login .app-main { width:min(760px, calc(100% - 3rem)); }
 body.app-body--signup .app-main { width:min(760px, calc(100% - 3rem)); }
 .auth-stage--login { width:min(760px,100%); min-height:calc(100dvh - 108px); align-items:center; padding:2rem 0; }
 .auth-stage--flow { width:min(860px,100%); min-height:calc(100dvh - 108px); align-items:center; padding:2rem 0; }
 .auth-stage--credentials { width:min(760px,100%); min-height:calc(100dvh - 108px); align-items:center; padding:2rem 0; }
 .auth-login-card, .auth-card--credentials.auth-card--flow { grid-template-columns:1fr; grid-template-rows:auto auto; min-height:0; border-radius:var(--radius-screen); box-shadow:var(--shadow-soft); }
 .auth-login-card .auth-hero, .auth-card--credentials.auth-card--flow .auth-flow-hero { min-height:150px; padding:1.9rem 2.65rem; align-content:end; }
 .auth-login-card .auth-card__panel, .auth-card--credentials.auth-card--flow .auth-card__panel { padding:2.4rem 2.65rem 2.6rem; align-content:start; }
 .auth-login-card .auth-card__head, .auth-card--credentials.auth-card--flow .auth-card__head { text-align:left; }
 .auth-card--credentials.auth-card--flow .auth-legal-note { text-align:left; }
 .auth-stage--credentials.auth-stage--compact { width:min(620px,calc(100% - 3rem)); min-height:calc(100dvh - 108px); align-items:center; padding:2rem 0; }
 .auth-card--credentials.auth-card--flow.auth-card--compact .auth-card__panel { padding:2.25rem 2.4rem; }
 .auth-card--credentials.auth-card--status .auth-card__panel { padding:2.6rem 2.5rem 2.35rem; }
 .app-body--dashboard .dashboard-primary-grid { grid-template-columns:minmax(0,1fr); align-items:start; }
 .app-body--dashboard .dashboard-planning .action-list, .app-body--dashboard .dashboard-hints .action-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .app-body--dashboard .dashboard-secondary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
 .app-body--dashboard .dashboard-knowledge__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .app-body--dashboard .sv-focus-card { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
 .sv-plan .sv-page-grid--aside-right { grid-template-columns:minmax(0,1fr) 320px; }
 .sv-plan__pricing-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sv-article-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .sv-article-hero { padding:var(--space-6) var(--space-8); }
 .sv-article-layout { grid-template-columns:minmax(0,1fr) 290px; gap:var(--space-5); }
 .sv-article-aside { position:sticky; top:1rem; }
 .sv-article-toc { display:grid; gap:.7rem; padding:var(--space-4) .25rem var(--space-5); border-top:1px solid var(--on-primary-overlay-strong); border-bottom:1px solid var(--on-primary-overlay-strong); }
 .sv-article-toc h2 { margin:0; color:var(--on-primary); font-size:1.15rem; }
 .sv-article-toc ol { display:grid; gap:.5rem; margin:0; padding-left:1.2rem; color:var(--on-primary-muted); }
 .sv-article-toc a { color:var(--on-primary-muted); line-height:1.35; }
 .sv-article-toc a:hover { color:var(--on-primary); }
 .sv-article__examples { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .overview-grid--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .sv-article-grid--related { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sv-text-page__head { grid-template-columns:minmax(0,1fr) auto; align-items:center; }
 .sv-detail-layout { grid-template-columns:minmax(0,1fr) minmax(320px,360px); }
 .sv-detail-layout--application > .sv-detail-main { display:grid; grid-column:1; gap:var(--space-4); }
 .sv-detail-layout--application > .sv-detail-aside { display:grid; grid-column:2; gap:var(--space-4); }
 .sv-detail-layout--application > .sv-detail-main > *, .sv-detail-layout--application > .sv-detail-aside > * { order:initial; }
 .sv-application-progress { display:block; }
 .sv-detail-facts { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .sv-detail-facts__status-date { display:none !important; }
 .sv-detail-facts__desktop-empty { display:block; }
 .sv-icon-button.sv-page-create { display:inline-grid; }
 .btn.sv-page-create { display:inline-flex; }
 .shell-create-dialog, .sv-sheet-dialog { width:min(520px,calc(100% - 3rem)); margin:auto; border-radius:var(--radius-lg); transform:none; }
 .shell-create-dialog__panel, .sv-sheet-dialog__panel { padding:var(--space-6); }

}
@media (max-width: 680px) {
 .sv-article-hero { gap:var(--space-4); padding:var(--space-4) var(--space-3); }
 .sv-article-hero__copy { gap:var(--space-3); max-width:none; }
 .sv-article-hero h1 { max-width:none; font-size:clamp(2rem,10vw,2.85rem); line-height:1.02; }
 .sv-article-hero__intro p { font-size:1.02rem; line-height:1.55; }
 .sv-article__reading { padding:var(--space-4); border-radius:28px; }
 .sv-article__summary { padding:var(--space-4); }
 .sv-article__section h2 { max-width:none; }
 .sv-settings-fact--action { align-items:stretch; }
 .sv-settings-compact-action, .sv-settings-compact-action .btn { width:100%; }
 .sv-two-factor-enrollment { grid-template-columns:1fr; justify-items:start; gap:var(--space-3); }
 .sv-qr-box { width:100%; justify-items:center; }
 .sv-qr-box svg { width:min(160px,72vw); }
 .sv-two-factor-manual { width:100%; }
 .sv-setup-key { max-width:100%; }
 .sv-plan-comparison__row { grid-template-columns:minmax(0,1.45fr) minmax(4.25rem,.6fr) minmax(4.75rem,.7fr); gap:.45rem; padding:.65rem 0; font-size:.84rem; }
 .sv-plan-comparison__head { padding-inline:.4rem; }
}
@media (max-width: 520px) {
 .sv-settings-fact { align-items:flex-start; flex-direction:column; }
 .sv-settings-fact--standalone form, .sv-settings-fact--standalone .btn { width:100%; }
 .sv-settings-profile__avatar { width:76px; height:76px; flex-basis:76px; }
 .sv-calendar__grid { gap: .25rem; }
 .sv-calendar__day { height:50px; min-height:50px; border-radius:14px; }
 .form-grid--filters { grid-template-columns: 1fr; }
 .sv-fact-list__item { align-items:flex-start; flex-direction:column; }
 .sv-price-card .btn { width:100%; }
 .sv-plan__portal .btn { width:100%; }
 .landing-actions .btn { flex:1 1 150px; justify-content:center; }
 .landing-product-ui__kpis, .landing-dashboard-mini__kpis { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .landing-product-ui__note { align-items:flex-start; flex-direction:column; }
 .landing-insights-timing-mini { grid-template-columns:1fr; }
 .landing-funnel-mini > div { grid-template-columns:minmax(6.5rem,.95fr) minmax(4rem,1.25fr) 3.25rem; gap:.35rem; }
 .landing-pricing-card { padding:var(--space-4); }
 .landing-pricing-controls { display:grid; justify-items:stretch; }
 .landing-pricing-controls__label { text-align:center; }
 .pricing-toggle { width:100%; }
 .pricing-toggle__option { flex:1 1 auto; justify-content:center; min-width:0; padding-inline:.45rem; }
 .pricing-toggle__save { display:none; }
 .landing-pricing-card__price { font-size:clamp(1.45rem,7vw,1.85rem); }
 .landing-pricing-card__price small { display:block; margin-top:.15rem; font-size:.72rem; }
 .landing-pricing-card__summary { font-size:.8rem; }
 .landing-pricing-card .btn { min-height:42px; padding-inline:.45rem; font-size:.78rem; }
 .landing-plan-comparison .sv-plan-comparison__row { grid-template-columns:minmax(0,1.45fr) minmax(3.8rem,.55fr) minmax(4.4rem,.65fr); gap:.3rem; font-size:.8rem; }
 .sv-text-page__public-cta-actions .btn { flex:1 1 150px; }
 .sv-template-hero__actions { display:grid; grid-template-columns:1fr; width:100%; }
 .sv-template-hero__actions .btn { width:100%; justify-content:center; }
 .sv-template-block { padding:var(--space-4) 0; }
 .sv-template-block__head, .sv-template-copy__head { flex-direction:column; align-items:stretch; gap:.65rem; }
 .sv-template-block__head .btn, .sv-template-copy__head .btn { width:100%; justify-content:center; }
 .sv-template-filetype { width:max-content; }
 .sv-template-copy { padding:var(--space-3); }
 .sv-template-table-wrap { border-radius:var(--radius-md); }
 .sv-resource-list__row { padding-block:.82rem; }
 .sv-resource-cta { align-items:flex-start; flex-direction:column; }
 .sv-resource-cta .btn { width:100%; }
}

@media (prefers-reduced-motion: reduce) {
 .app-body--landing .reveal { opacity: 1; transform: none; transition: none; }
 .landing-step-card, .landing-flow-panel, .landing-flow__control::before, .landing-faq-item summary ion-icon { transition:none; }
}
@media (scripting: enabled) {
 .landing-product-panel:not(.is-active) { display:none; }
 .app-body--documents .sv-document-upload:not(.is-open) { display:none; }
}
@media (scripting: none) {
 .app-body--landing .reveal { opacity: 1; transform: none; }
 .landing-flow { min-height:auto; }
 .landing-flow__stage { position:static; }
 .landing-flow__steps { min-height:0; gap:.6rem; }
 .landing-step-card { grid-area:auto; opacity:1; visibility:visible; transform:none; pointer-events:auto; }
 .landing-flow__nav { display:none; }
}

@media (min-width: 860px){.sv-resource-list__row{grid-template-columns:minmax(0,1fr) auto 1.25rem}.sv-resource-list__meta{grid-column:2;grid-row:1;align-self:center}.sv-resource-list__row>ion-icon{grid-column:3;grid-row:1;align-self:center}.sv-template-copy-list{grid-template-columns:repeat(2,minmax(0,1fr))}.sv-template-checklist-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.sv-template-checklist-group{padding-top:0;padding-left:var(--space-4);border-top:0;border-left:1px solid var(--line)}.sv-template-checklist-group:first-child{padding-left:0;border-left:0}.sv-template-note-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.sv-template-note-field:nth-child(n+4){grid-column:1/-1}}
@media print{.guest-header,.shell-header,.site-footer,.shell-bottom-nav,.sv-template-hero,.sv-template-related,.sv-template-summary,.sv-template-block:not(.sv-template-print-area),.sv-template-print-area .btn{display:none!important}body,.app-body,.guest-shell,.app-main,.sv-template-detail,.sv-template-layout,.sv-template-reading{background:#fff!important;color:#111!important}.app-main,.sv-template-reading{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border-radius:0!important}.sv-template-print-area{display:grid!important;border:0!important;padding:0!important}.sv-template-print-area h2,.sv-template-checklist-group h3,.sv-template-note-field>span{color:#111!important}.sv-template-note-field input,.sv-template-note-field textarea{background:#fff!important;border:1px solid #bbb!important}}
