/*
 * Layout 1 + Theme 3
 * Compact horizontal navigation with tinted light surfaces and a deep
 * jewel-toned dark mode.
 * This file intentionally contains only presentation overrides; application
 * behavior remains in the stable templates and client code.
 */

body.app-theme-jewel {
  color-scheme: light;
  --jewel-canvas: #e8f0f5;
  --jewel-canvas-deep: #041f31;
  --jewel-surface: #f6fafc;
  --jewel-surface-raised: #edf5f8;
  --jewel-surface-muted: #e1ebf1;
  --jewel-line: #bfd0dc;
  --jewel-line-strong: #8daabb;
  --jewel-text: #102a3c;
  --jewel-text-soft: #345469;
  --jewel-text-muted: #60798a;
  --jewel-teal: #087f71;
  --jewel-teal-soft: #087f71;
  --jewel-teal-hover: #06685e;
  --jewel-blue: #176cb4;
  --jewel-violet: #7451b8;
  --jewel-gold: #9a6100;
  --jewel-coral: #c1464d;
  --jewel-green: #1f7b5a;
  --jewel-danger: #b82f46;
  --jewel-on-accent: #ffffff;
  --jewel-on-danger: #ffffff;
  --jewel-chrome: #063450;
  --jewel-chrome-deep: #041f31;
  --jewel-chrome-surface: #0a3b58;
  --jewel-chrome-line: #2a5971;
  --jewel-chrome-text: #f6fbfd;
  --jewel-chrome-soft: #c9d9e2;
  --jewel-chrome-muted: #9eb4c1;
  --jewel-banner: #d6e7ee;
  --jewel-banner-heading: #102a3c;
  --jewel-hover: #d9e8ee;
  --jewel-active: #d2e8e6;
  --jewel-track: #c8dae4;
  --jewel-toolbar: #dbe9ef;
  --jewel-archived: #e5edf2;
  --jewel-teal-tint: #d4eee8;
  --jewel-blue-tint: #dbeaf7;
  --jewel-violet-tint: #ebe5f7;
  --jewel-gold-tint: #f5e8cd;
  --jewel-danger-tint: #f5dfe3;
  --jewel-success-tint: #d7ede4;
  --jewel-neutral-tint: #dce7ed;
  --jewel-tooltip: #082b42;
  --jewel-tooltip-text: #f4f9fc;
  --jewel-notice-text: #762532;
  --jewel-notice-copy: #7d3640;
  --jewel-notice-strong: #5a1521;
  --jewel-notice-border: #d498a1;
  --jewel-notice-surface: #f4dce1;
  --jewel-disabled: #eef3f6;
  --jewel-disabled-text: #8397a4;
  --jewel-placeholder: #708795;
  --jewel-dialog-backdrop: rgb(4 31 49 / 48%);
  --jewel-icon-filter: none;
  --wine-950: var(--jewel-canvas-deep);
  --wine-900: var(--jewel-chrome);
  --wine-800: var(--jewel-teal);
  --wine-700: var(--jewel-teal);
  --wine-100: var(--jewel-teal-tint);
  --cream-50: var(--jewel-canvas);
  --cream-100: var(--jewel-surface-muted);
  --cream-200: var(--jewel-line);
  --ink-900: var(--jewel-text);
  --ink-800: var(--jewel-text);
  --ink-700: var(--jewel-text-soft);
  --ink-600: var(--jewel-text-soft);
  --ink-500: var(--jewel-text-muted);
  --sage-700: var(--jewel-green);
  --sage-600: var(--jewel-teal);
  --sage-100: var(--jewel-success-tint);
  --gold-900: #724700;
  --gold-700: var(--jewel-gold);
  --gold-600: var(--jewel-gold);
  --gold-400: #b77913;
  --gold-100: var(--jewel-gold-tint);
  --danger-700: var(--jewel-danger);
  --danger-100: var(--jewel-danger-tint);
  --white: var(--jewel-surface);
  --shadow-sm: 0 1px 2px rgb(25 58 75 / 8%), 0 8px 22px rgb(25 58 75 / 7%);
  --shadow-md: 0 18px 48px rgb(25 58 75 / 18%);
  --radius-sm: 5px;
  --radius-md: 7px;
  --radius-lg: 10px;
  --site-shell-width: 1640px;
  --sans: "Segoe UI Variable", Aptos, "Segoe UI", Arial, sans-serif;
  --serif: "Noto Sans Hebrew", "Arial Hebrew", Arial, sans-serif;
  margin: 0;
  color: var(--jewel-text);
  background: var(--jewel-canvas);
  font-family: var(--sans);
  font-size: 14px;
  line-height: 1.48;
  letter-spacing: 0;
}

html[data-theme="dark"] body.app-theme-jewel {
  color-scheme: dark;
  --jewel-canvas: #000d1b;
  --jewel-canvas-deep: #000813;
  --jewel-surface: #031c32;
  --jewel-surface-raised: #05243e;
  --jewel-surface-muted: #02172a;
  --jewel-line: #103a58;
  --jewel-line-strong: #185477;
  --jewel-text: #f3f7fc;
  --jewel-text-soft: #c1cfde;
  --jewel-text-muted: #8199b0;
  --jewel-teal: #08d5ad;
  --jewel-teal-soft: #51e5c8;
  --jewel-teal-hover: #51e5c8;
  --jewel-blue: #55aaff;
  --jewel-violet: #ae7cff;
  --jewel-gold: #ffbc3d;
  --jewel-coral: #ff675d;
  --jewel-green: #38d39f;
  --jewel-danger: #ff6d78;
  --jewel-on-accent: #001b25;
  --jewel-on-danger: #ffffff;
  --jewel-chrome: #00162a;
  --jewel-chrome-deep: #000813;
  --jewel-chrome-surface: #032039;
  --jewel-chrome-line: #15415f;
  --jewel-chrome-text: #f3f7fc;
  --jewel-chrome-soft: #c1cfde;
  --jewel-chrome-muted: #8199b0;
  --jewel-banner: #021a30;
  --jewel-banner-heading: #ffffff;
  --jewel-hover: #082b47;
  --jewel-active: #08364a;
  --jewel-track: #173b58;
  --jewel-toolbar: #04233b;
  --jewel-archived: #031a2d;
  --jewel-teal-tint: #073a3c;
  --jewel-blue-tint: #0a3150;
  --jewel-violet-tint: #2a2340;
  --jewel-gold-tint: #3a2d18;
  --jewel-danger-tint: #4a2734;
  --jewel-success-tint: #073a3c;
  --jewel-neutral-tint: #173650;
  --jewel-tooltip: #071a2d;
  --jewel-tooltip-text: #edf6ff;
  --jewel-notice-text: #ffd8d5;
  --jewel-notice-copy: #f4c7c4;
  --jewel-notice-strong: #fff2f0;
  --jewel-notice-border: #73343e;
  --jewel-notice-surface: #291c2f;
  --jewel-disabled: #021727;
  --jewel-disabled-text: #6f879c;
  --jewel-placeholder: #6f879c;
  --jewel-dialog-backdrop: rgb(0 6 16 / 78%);
  --jewel-icon-filter: brightness(0) invert(1);
  --wine-950: var(--jewel-canvas-deep);
  --wine-900: var(--jewel-chrome);
  --wine-800: var(--jewel-teal);
  --wine-700: var(--jewel-teal);
  --wine-100: #0a3c4f;
  --ink-800: #e7eef7;
  --ink-600: #aebfd0;
  --sage-100: #083b3c;
  --gold-900: #ffe3a3;
  --gold-400: #ffd16d;
  --gold-100: #473719;
  --danger-100: #432535;
  --white: var(--jewel-surface);
  --cream-50: var(--jewel-canvas);
  --cream-100: var(--jewel-surface-muted);
  --cream-200: var(--jewel-line);
  --shadow-sm: 0 8px 20px rgb(0 7 18 / 18%);
  --shadow-md: 0 18px 48px rgb(0 5 14 / 36%);
}

body.app-theme-jewel ::selection { color: var(--jewel-on-accent); background: var(--jewel-teal); }
body.app-theme-jewel main { min-height: 48vh; }
body.app-theme-jewel .shell { padding-inline: clamp(16px, 1.7vw, 28px); }
body.app-theme-jewel h1,
body.app-theme-jewel h2,
body.app-theme-jewel h3 { color: var(--jewel-text); font-family: var(--sans); font-weight: 650; letter-spacing: -.018em; }
body.app-theme-jewel h1 { letter-spacing: -.028em; }
body.app-theme-jewel .muted,
body.app-theme-jewel .optional { color: var(--jewel-text-muted); }
body.app-theme-jewel .eyebrow { margin-bottom: 5px; color: var(--jewel-teal); font-size: .63rem; font-weight: 750; letter-spacing: .1em; }
body.app-theme-jewel a { text-underline-offset: 3px; }
body.app-theme-jewel button:focus-visible,
body.app-theme-jewel a:focus-visible,
body.app-theme-jewel input:focus-visible,
body.app-theme-jewel select:focus-visible,
body.app-theme-jewel textarea:focus-visible,
body.app-theme-jewel summary:focus-visible { outline: 2px solid var(--jewel-gold); outline-offset: 3px; }

/* Persistent service state */
body.app-theme-jewel .service-notice {
  z-index: 21;
  color: var(--jewel-notice-text);
  border-block: 1px solid var(--jewel-notice-border);
  background: var(--jewel-notice-surface);
  box-shadow: none;
}
body.app-theme-jewel .service-notice-inner { min-height: 44px; justify-content: flex-start; gap: 10px; text-align: left; }
body.app-theme-jewel .service-notice-icon { width: 18px; height: 18px; color: var(--jewel-coral); background: transparent; filter: brightness(0) invert(1); opacity: .9; }
body.app-theme-jewel .service-notice p { color: var(--jewel-notice-copy); font-size: .74rem; }
body.app-theme-jewel .service-notice strong { color: var(--jewel-notice-strong); font-weight: 750; }

/* App chrome */
body.app-theme-jewel .site-header {
  top: 0;
  color: var(--jewel-chrome-text);
  border-bottom: 0;
  background: var(--jewel-chrome-deep);
  backdrop-filter: none;
  box-shadow: 0 10px 26px rgb(0 5 14 / 18%);
}
body.app-theme-jewel .dedication-strip { color: var(--jewel-chrome-soft); border-bottom: 1px solid var(--jewel-chrome-line); background: var(--jewel-chrome); }
body.app-theme-jewel .header-dedication { min-height: 27px; color: inherit; font-size: .76rem; font-weight: 550; }
body.app-theme-jewel .header-inner {
  min-height: 62px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(180px, 245px);
  grid-template-areas: "brand nav project";
  align-items: center;
  gap: 18px;
  overflow-x: clip;
}
body.app-theme-jewel .brand { grid-area: brand; gap: 10px; color: var(--jewel-chrome-text); }
body.app-theme-jewel .brand-mark { width: 34px; height: 34px; display: block; flex: 0 0 34px; border-radius: 8px; background: transparent; box-shadow: none; }
body.app-theme-jewel .brand strong { color: var(--jewel-chrome-text); font-size: .96rem; font-weight: 680; }
body.app-theme-jewel .brand small { color: var(--jewel-chrome-muted); font-size: .59rem; }
body.app-theme-jewel .project-switcher { min-width: 0; grid-area: project; }
body.app-theme-jewel .project-switcher select {
  min-height: 38px;
  color: var(--jewel-chrome-soft);
  border-color: var(--jewel-chrome-line);
  border-radius: 5px;
  background: var(--jewel-chrome-surface);
  font-size: .67rem;
  font-weight: 650;
}
body.app-theme-jewel .project-switcher select:hover { border-color: var(--jewel-teal); }
body.app-theme-jewel .main-nav { min-width: 0; grid-area: nav; justify-content: flex-start; gap: 3px; font-size: .7rem; font-weight: 650; }
body.app-theme-jewel .main-nav > a,
body.app-theme-jewel .nav-button {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 10px;
  color: var(--jewel-chrome-soft);
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
}
body.app-theme-jewel .main-nav > a img,
body.app-theme-jewel .nav-button img,
body.app-theme-jewel .theme-toggle img,
body.app-theme-jewel .nav-icon-link img,
body.app-theme-jewel .notification-icon { filter: brightness(0) invert(1); opacity: .7; }
body.app-theme-jewel .main-nav > a:hover,
body.app-theme-jewel .nav-button:hover { color: var(--jewel-chrome-text); background: var(--jewel-chrome-surface); }
body.app-theme-jewel .main-nav > a[aria-current="page"] { color: var(--jewel-chrome-text); border-bottom-color: var(--jewel-teal); background: var(--jewel-chrome-surface); box-shadow: none; }
body.app-theme-jewel .main-nav > a[aria-current="page"] img { opacity: 1; }
body.app-theme-jewel .nav-divider { height: 22px; margin-inline: 5px; background: var(--jewel-chrome-line); }
body.app-theme-jewel .nav-sign-out span { white-space: nowrap; }
body.app-theme-jewel .theme-toggle,
body.app-theme-jewel .notification-toggle,
body.app-theme-jewel .nav-icon-link {
  min-height: 34px;
  color: var(--jewel-chrome-soft);
  border: 1px solid var(--jewel-chrome-line);
  border-radius: 5px;
  background: var(--jewel-chrome-surface);
  box-shadow: none;
}
body.app-theme-jewel .notification-toggle,
body.app-theme-jewel .nav-icon-link { width: 34px; height: 34px; flex-basis: 34px; border-radius: 5px; }
body.app-theme-jewel .theme-toggle:hover,
body.app-theme-jewel .notification-toggle:hover,
body.app-theme-jewel .nav-icon-link:hover { color: var(--jewel-chrome-text); border-color: var(--jewel-teal); background: color-mix(in srgb, var(--jewel-chrome-surface) 80%, var(--jewel-teal)); }
body.app-theme-jewel .theme-icon { width: 14px; height: 14px; object-fit: contain; }
body.app-theme-jewel .notification-count { color: var(--jewel-on-accent); border-color: var(--jewel-chrome-deep); background: var(--jewel-teal); }
body.app-theme-jewel .notification-panel { color: var(--jewel-text); border-color: var(--jewel-line); border-radius: 7px; background: var(--jewel-surface-raised); }
body.app-theme-jewel .notification-item { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .notification-item-icon { color: var(--jewel-on-accent); background: var(--jewel-teal); }
body.app-theme-jewel .notification-item.is-error .notification-item-icon { color: var(--jewel-on-danger); background: var(--jewel-coral); }

/* Buttons and controls */
body.app-theme-jewel .button {
  min-height: 36px;
  border-radius: 5px;
  font-size: .72rem;
  font-weight: 680;
  box-shadow: none;
  transition: background-color .14s ease, border-color .14s ease, color .14s ease;
}
body.app-theme-jewel .button:hover:not(:disabled) { transform: none; }
body.app-theme-jewel .button-primary { color: var(--jewel-on-accent); border-color: var(--jewel-teal); background: var(--jewel-teal); box-shadow: none; }
body.app-theme-jewel .button-primary:hover:not(:disabled) { color: var(--jewel-on-accent); border-color: var(--jewel-teal-hover); background: var(--jewel-teal-hover); box-shadow: none; }
body.app-theme-jewel .button-outline,
body.app-theme-jewel .button-light,
body.app-theme-jewel .button-quiet,
body.app-theme-jewel .button-subtle {
  color: var(--jewel-text-soft);
  border-color: var(--jewel-line);
  background: var(--jewel-surface-muted);
}
body.app-theme-jewel .button-outline:hover:not(:disabled),
body.app-theme-jewel .button-light:hover:not(:disabled),
body.app-theme-jewel .button-quiet:hover:not(:disabled) { color: var(--jewel-text); border-color: var(--jewel-line-strong); background: var(--jewel-surface-raised); }
body.app-theme-jewel .button-danger { color: var(--jewel-on-danger); border-color: var(--jewel-danger); background: var(--jewel-danger); }
body.app-theme-jewel .button-danger:hover:not(:disabled) { color: var(--jewel-on-danger); background: color-mix(in srgb, var(--jewel-danger) 86%, #000); }
body.app-theme-jewel .button-text-danger { color: var(--jewel-danger); background: transparent; }
body.app-theme-jewel .text-link { color: var(--jewel-teal-soft); border-bottom-color: color-mix(in srgb, var(--jewel-teal) 55%, transparent); }
body.app-theme-jewel .text-link:hover { color: var(--jewel-teal-hover); border-bottom-color: var(--jewel-teal); }
body.app-theme-jewel .icon-button { color: var(--jewel-text-muted); border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .icon-button:hover { color: var(--jewel-danger); border-color: var(--jewel-danger); }

body.app-theme-jewel input:not([type="checkbox"]):not([type="radio"]),
body.app-theme-jewel select,
body.app-theme-jewel textarea,
body.app-theme-jewel .copy-row input,
body.app-theme-jewel .filter-multiselect > summary {
  color: var(--jewel-text);
  border-color: var(--jewel-line);
  border-radius: 5px;
  background: var(--jewel-surface-muted);
  box-shadow: none;
}
body.app-theme-jewel input:not([type="checkbox"]):not([type="radio"]):hover,
body.app-theme-jewel select:hover,
body.app-theme-jewel textarea:hover { border-color: var(--jewel-line-strong); }
body.app-theme-jewel input:disabled,
body.app-theme-jewel select:disabled,
body.app-theme-jewel textarea:disabled { color: var(--jewel-disabled-text); background: var(--jewel-disabled); opacity: .85; }
body.app-theme-jewel input::placeholder,
body.app-theme-jewel textarea::placeholder { color: var(--jewel-placeholder); opacity: 1; }
body.app-theme-jewel input[type="checkbox"],
body.app-theme-jewel input[type="radio"] { accent-color: var(--jewel-teal); }
body.app-theme-jewel select option { color: var(--jewel-text); background: var(--jewel-surface); }
body.app-theme-jewel .stack-form label:not(.check-row),
body.app-theme-jewel .memorial-label-row label,
body.app-theme-jewel .hebrew-name-label-row > label { color: var(--jewel-text-soft); font-weight: 650; }
body.app-theme-jewel .hebrew-year-field-label strong { color: var(--jewel-gold); }
body.app-theme-jewel .check-row small,
body.app-theme-jewel .form-note { color: var(--jewel-text-muted); }
body.app-theme-jewel .divider { color: var(--jewel-text-muted); }
body.app-theme-jewel .divider::before,
body.app-theme-jewel .divider::after { background: var(--jewel-line); }

/* Page frames and surfaces */
body.app-theme-jewel .page-banner,
body.app-theme-jewel .project-hero { color: var(--jewel-text); border-bottom-color: var(--jewel-line); background: var(--jewel-banner); }
body.app-theme-jewel .page-banner-inner,
body.app-theme-jewel .page-banner-small .page-banner-inner { min-height: 86px; padding-block: 15px; }
body.app-theme-jewel .page-banner h1 { margin-bottom: 2px; color: var(--jewel-banner-heading); font-size: clamp(1.42rem, 2vw, 1.78rem); }
body.app-theme-jewel .page-banner p:not(.eyebrow) { color: var(--jewel-text-muted); }
body.app-theme-jewel .page-shell,
body.app-theme-jewel .dashboard-shell { padding-block: 18px 42px; }
body.app-theme-jewel .narrow-shell { margin-block: 24px 58px; }

body.app-theme-jewel .content-card,
body.app-theme-jewel .progress-panel,
body.app-theme-jewel .management-sidebar,
body.app-theme-jewel .project-card,
body.app-theme-jewel .tractate-card,
body.app-theme-jewel .claim-group-card,
body.app-theme-jewel .shared-assignment-group,
body.app-theme-jewel .directory-metrics article,
body.app-theme-jewel .instruction-step,
body.app-theme-jewel .instruction-topic,
body.app-theme-jewel .auth-card,
body.app-theme-jewel .legal-card,
body.app-theme-jewel .audit-view-tabs a,
body.app-theme-jewel .owner-tool-card,
body.app-theme-jewel .security-card {
  color: var(--jewel-text);
  border-color: var(--jewel-line);
  border-radius: 7px;
  background: var(--jewel-surface);
  box-shadow: var(--shadow-sm);
}
body.app-theme-jewel .content-card { padding: 16px 18px; }
body.app-theme-jewel .card-heading { align-items: center; margin-bottom: 12px; padding-bottom: 10px; border-bottom: 1px solid var(--jewel-line); }
body.app-theme-jewel .card-heading h2,
body.app-theme-jewel .section-heading h2 { font-size: 1rem; }
body.app-theme-jewel .count-badge,
body.app-theme-jewel .current-project-mark { color: var(--jewel-teal-soft); border-color: color-mix(in srgb, var(--jewel-teal) 46%, var(--jewel-line)); background: var(--jewel-teal-tint); }

body.app-theme-jewel .info-tip-trigger { color: var(--jewel-blue); border-color: var(--jewel-line-strong); background: var(--jewel-surface-muted); }
body.app-theme-jewel .info-tip-trigger img { filter: var(--jewel-icon-filter); opacity: .78; }
body.app-theme-jewel .info-tip-trigger:hover,
body.app-theme-jewel .info-tip-trigger:focus-visible,
body.app-theme-jewel .info-tip.is-open .info-tip-trigger { border-color: var(--jewel-blue); background: var(--jewel-blue-tint); }
body.app-theme-jewel .info-tip-panel { color: var(--jewel-tooltip-text); border-color: var(--jewel-line-strong); background: var(--jewel-tooltip); box-shadow: var(--shadow-md); }

/* Overview */
body.app-theme-jewel .dashboard-shell { display: flex; flex-direction: column; gap: 12px; }
body.app-theme-jewel .project-overview { order: 1; display: grid; gap: 12px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.app-theme-jewel .my-work-card { order: 2; margin-top: 0; }
body.app-theme-jewel #shared-assignments { order: 3; }
body.app-theme-jewel .people-section-card { order: 4; margin-top: 0; }
body.app-theme-jewel .project-overview-heading {
  align-items: center;
  padding: 16px 18px;
  border: 1px solid var(--jewel-line);
  border-radius: 7px;
  background: var(--jewel-surface);
  box-shadow: var(--shadow-sm);
}
body.app-theme-jewel .project-overview-photo { width: 62px; height: 62px; border-color: var(--jewel-line-strong); background: var(--jewel-surface-muted); box-shadow: none; }
body.app-theme-jewel .project-overview h1 { margin-bottom: 4px; color: var(--jewel-text); font-size: clamp(1.45rem, 2.2vw, 1.9rem); }
body.app-theme-jewel .project-memorial-name { margin-bottom: 7px; color: var(--jewel-text-soft); font-family: var(--serif); font-size: 1rem; }
body.app-theme-jewel .project-context-row .eyebrow { color: var(--jewel-teal); }
body.app-theme-jewel .project-occasion,
body.app-theme-jewel .deadline-pill { color: var(--jewel-gold); border-color: color-mix(in srgb, var(--jewel-gold) 48%, var(--jewel-line)); background: var(--jewel-gold-tint); }
body.app-theme-jewel .deadline-pill.pill-late { color: var(--jewel-danger); border-color: color-mix(in srgb, var(--jewel-danger) 50%, var(--jewel-line)); background: var(--jewel-danger-tint); }
body.app-theme-jewel .overview-deadline { color: var(--jewel-text-muted); }
body.app-theme-jewel .overview-deadline strong { color: var(--jewel-text-soft); }

body.app-theme-jewel .dashboard-command-grid { display: grid; grid-template-columns: 1.35fr 1fr 1.12fr; gap: 12px; }
body.app-theme-jewel .dashboard-command-card {
  min-width: 0;
  min-height: 258px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 0;
  padding: 17px 18px;
  border: 1px solid var(--jewel-line);
  border-radius: 7px;
  background: var(--jewel-surface);
  box-shadow: var(--shadow-sm);
}
body.app-theme-jewel .continue-learning-card { border-top: 2px solid var(--jewel-teal); }
body.app-theme-jewel .personal-dashboard-summary.dashboard-command-card { border-top: 2px solid var(--jewel-blue); }
body.app-theme-jewel .project-progress-card { border-top: 2px solid var(--jewel-violet); }
body.app-theme-jewel .dashboard-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 10px; border-bottom: 1px solid var(--jewel-line); }
body.app-theme-jewel .dashboard-card-heading h2 { margin: 0; color: var(--jewel-text); font-size: .9rem; }
body.app-theme-jewel .dashboard-summary-link { color: inherit; text-decoration: none; cursor: pointer; transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease; }
body.app-theme-jewel .dashboard-summary-link:hover { transform: translateY(-2px); border-color: var(--jewel-blue); box-shadow: var(--shadow-md); }
body.app-theme-jewel .project-progress-card.dashboard-summary-link:hover { border-color: var(--jewel-violet); }
body.app-theme-jewel .dashboard-summary-link:focus-visible { outline: 3px solid color-mix(in srgb, var(--jewel-blue) 55%, transparent); outline-offset: 3px; }
body.app-theme-jewel .dashboard-card-link-cue { color: var(--jewel-blue); font-size: .56rem; font-weight: 750; }
body.app-theme-jewel .project-progress-card .dashboard-card-link-cue { color: var(--jewel-violet); }
body.app-theme-jewel .continue-learning-main { min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 18px; }
body.app-theme-jewel .continue-progress-number { color: var(--jewel-teal); font-size: 2.35rem; font-weight: 700; line-height: 1; letter-spacing: -.05em; }
body.app-theme-jewel .continue-learning-copy { min-width: 0; }
body.app-theme-jewel .continue-learning-copy h3 { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px; margin: 0 0 5px; font-size: 1.02rem; }
body.app-theme-jewel .continue-learning-copy h3 span[lang="he"] { color: var(--jewel-text-soft); font-size: .9rem; font-weight: 550; }
body.app-theme-jewel .continue-learning-copy p { margin: 0 0 13px; color: var(--jewel-text-muted); font-size: .72rem; }
body.app-theme-jewel .continue-learning-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: auto 0 0;
  border-block: 1px solid var(--jewel-line);
}
body.app-theme-jewel .continue-learning-stats div { min-width: 0; display: grid; gap: 3px; padding: 9px 8px; border-right: 1px solid var(--jewel-line); }
body.app-theme-jewel .continue-learning-stats div:first-child { padding-left: 0; }
body.app-theme-jewel .continue-learning-stats div:last-child { padding-right: 0; border-right: 0; }
body.app-theme-jewel .continue-learning-stats dt { color: var(--jewel-text-muted); font-size: .52rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
body.app-theme-jewel .continue-learning-stats dd { margin: 0; color: var(--jewel-text); font-size: .82rem; font-weight: 700; }
body.app-theme-jewel .continue-progress-track { margin-top: auto; }
body.app-theme-jewel .dashboard-empty-compact { min-height: 150px; display: flex; align-items: flex-start; justify-content: center; flex-direction: column; }
body.app-theme-jewel .dashboard-empty-compact p { color: var(--jewel-text-muted); }

body.app-theme-jewel .personal-dashboard-summary.dashboard-command-card .personal-dashboard-main,
body.app-theme-jewel .personal-dashboard-summary.dashboard-command-card .personal-dashboard-details { width: 100%; }
body.app-theme-jewel .personal-dashboard-heading { align-items: flex-end; }
body.app-theme-jewel .personal-dashboard-heading > div { display: grid; gap: 2px; }
body.app-theme-jewel .personal-progress-percent { color: var(--jewel-blue); font-family: var(--sans); font-size: 1.85rem; font-weight: 700; }
body.app-theme-jewel .personal-progress-lead { max-width: 18ch; color: var(--jewel-text-muted); text-align: right; }
body.app-theme-jewel .personal-progress-lead strong { color: var(--jewel-text); }
body.app-theme-jewel .personal-progress-track,
body.app-theme-jewel .mini-progress,
body.app-theme-jewel .progress-track { background: var(--jewel-track); }
body.app-theme-jewel .personal-progress-track { height: 6px; }
body.app-theme-jewel .personal-progress-track span,
body.app-theme-jewel .mini-progress i,
body.app-theme-jewel .progress-completed { background: var(--jewel-teal); }
body.app-theme-jewel .personal-goal-stats { gap: 0; margin-top: auto; border-block: 1px solid var(--jewel-line); }
body.app-theme-jewel .personal-goal-stats div { padding: 10px 8px; border: 0; border-right: 1px solid var(--jewel-line); border-radius: 0; background: transparent; }
body.app-theme-jewel .personal-goal-stats div:last-child { border-right: 0; }
body.app-theme-jewel .personal-goal-stats dt { color: var(--jewel-text-muted); font-size: .52rem; }
body.app-theme-jewel .personal-goal-stats dd { color: var(--jewel-text); font-size: 1.05rem; }
body.app-theme-jewel .personal-goal-note { color: var(--jewel-text-muted); }

body.app-theme-jewel .project-progress-primary { display: grid; grid-template-columns: 1.2fr .8fr; border-bottom: 1px solid var(--jewel-line); }
body.app-theme-jewel .project-progress-primary p { display: grid; gap: 3px; margin: 0; padding: 6px 12px 13px 0; }
body.app-theme-jewel .project-progress-primary p + p { padding-left: 14px; border-left: 1px solid var(--jewel-line); }
body.app-theme-jewel .project-progress-primary strong { color: var(--jewel-violet); font-size: 1.55rem; line-height: 1; }
body.app-theme-jewel .project-progress-primary p + p strong { color: var(--jewel-gold); }
body.app-theme-jewel .project-progress-primary small { color: var(--jewel-text-muted); font-size: .64rem; }
body.app-theme-jewel .project-progress-primary span { color: var(--jewel-text-muted); font-size: .58rem; }
body.app-theme-jewel .project-progress-card .progress-overview-row { grid-template-columns: 1fr; margin: 0; }
body.app-theme-jewel .project-progress-card .progress-track { height: 7px; margin: 0; }
body.app-theme-jewel .progress-claimed { background: var(--jewel-blue); }
body.app-theme-jewel .project-progress-card .progress-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); border-color: var(--jewel-line); border-radius: 5px; background: var(--jewel-surface-muted); }
body.app-theme-jewel .project-progress-card .progress-metrics article { padding: 7px 8px; border-color: var(--jewel-line); }
body.app-theme-jewel .project-progress-card .progress-metrics article:nth-child(2) { border-right: 0; }
body.app-theme-jewel .project-progress-card .progress-metrics article:nth-child(-n + 4) { border-bottom: 1px solid var(--jewel-line); }
body.app-theme-jewel .project-progress-card .progress-metrics article > span { color: var(--jewel-text-muted); font-size: .48rem; }
body.app-theme-jewel .project-progress-card .progress-metrics article > strong { color: var(--jewel-text); font-size: .86rem; }
body.app-theme-jewel .project-progress-card .progress-legend { gap: 8px 12px; margin-top: auto; color: var(--jewel-text-muted); font-size: .55rem; }
body.app-theme-jewel .legend-dot { width: 7px; height: 7px; }
body.app-theme-jewel .dot-complete { background: var(--jewel-teal); }
body.app-theme-jewel .dot-claimed { background: var(--jewel-blue); }
body.app-theme-jewel .dot-open { border-color: var(--jewel-line-strong); background: var(--jewel-track); }

/* Dense learning and assignment ledgers */
body.app-theme-jewel .assignments-card,
body.app-theme-jewel .my-work-card,
body.app-theme-jewel .people-section-card { border-top: 2px solid var(--jewel-blue); }
body.app-theme-jewel .shared-assignment-list { gap: 0; }
body.app-theme-jewel .shared-assignment-group { border-radius: 5px; box-shadow: none; }
body.app-theme-jewel .shared-assignment-group + .shared-assignment-group { margin-top: 7px; }
body.app-theme-jewel .shared-assignment-group-heading { min-height: 45px; padding: 8px 11px; background: var(--jewel-surface-muted); }
body.app-theme-jewel .shared-assignment-group[open] > .shared-assignment-group-heading { border-bottom-color: var(--jewel-line); background: var(--jewel-active); }
body.app-theme-jewel .shared-assignment-group-heading h3 { color: var(--jewel-text); }
body.app-theme-jewel .shared-assignment-group-progress,
body.app-theme-jewel .shared-assignment-group-heading-meta { color: var(--jewel-text-muted); }
body.app-theme-jewel .shared-assignment-group-open-label,
body.app-theme-jewel .shared-assignment-group-close-label { color: var(--jewel-teal-soft); }
body.app-theme-jewel .shared-assignment-card { border-bottom-color: var(--jewel-line); background: var(--jewel-surface); }
body.app-theme-jewel .shared-assignment-row { min-height: 43px; padding-block: 7px; }
body.app-theme-jewel .shared-assignment-row:hover { background: var(--jewel-hover); }
body.app-theme-jewel .assignment-person strong,
body.app-theme-jewel .assignment-masechta > strong,
body.app-theme-jewel .assignment-portion > strong,
body.app-theme-jewel .assignment-progress strong { color: var(--jewel-text-soft); }
body.app-theme-jewel .assignment-name-hebrew,
body.app-theme-jewel .assignment-portion-hebrew,
body.app-theme-jewel .assignment-detail-title-hebrew { color: var(--jewel-text); }
body.app-theme-jewel .assignment-name-english,
body.app-theme-jewel .assignment-person-hebrew { color: var(--jewel-text-muted); }
body.app-theme-jewel .shared-assignment-card .assignment-toggle { color: var(--jewel-teal-soft); }
body.app-theme-jewel .shared-assignment-card .assignment-toggle:hover { background: var(--jewel-teal-tint); }
body.app-theme-jewel .shared-assignment-card .assignment-detail-panel { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .assignment-chapter { border-color: var(--jewel-line); background: var(--jewel-surface); }
body.app-theme-jewel .assignment-chapter.is-complete { border-color: color-mix(in srgb, var(--jewel-green) 50%, var(--jewel-line)); background: var(--jewel-success-tint); }

body.app-theme-jewel .claim-group-list { gap: 8px; }
body.app-theme-jewel .claim-group-card { border-radius: 5px; background: var(--jewel-surface-muted); box-shadow: none; }
body.app-theme-jewel .claim-group-card[open] > .claim-group-summary { background: var(--jewel-hover); }
body.app-theme-jewel .claim-group-summary { min-height: 104px; }
body.app-theme-jewel .claim-group-body,
body.app-theme-jewel .chapter-status { border-color: var(--jewel-line); background: var(--jewel-surface); }
body.app-theme-jewel .personal-goal-editor,
body.app-theme-jewel .managed-learner-editor { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .managed-learner-badge { color: var(--jewel-green); background: var(--jewel-success-tint); }
body.app-theme-jewel .chapter-status.is-complete { background: var(--jewel-success-tint); }
body.app-theme-jewel .chapter-state-mark { color: var(--jewel-teal-soft); border-color: color-mix(in srgb, var(--jewel-teal) 50%, var(--jewel-line)); background: var(--jewel-teal-tint); }
body.app-theme-jewel .status-check { color: var(--jewel-on-accent); border-color: var(--jewel-line-strong); }
body.app-theme-jewel .is-complete .status-check { border-color: var(--jewel-teal); background: var(--jewel-teal); }
body.app-theme-jewel .claim-group-complete { border-color: color-mix(in srgb, var(--jewel-green) 48%, var(--jewel-line)); background: var(--jewel-success-tint); }
body.app-theme-jewel .claim-group-footer { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }

body.app-theme-jewel .people-section-card .people-list { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 0 16px; }
body.app-theme-jewel .people-section-card .person-row { padding: 10px 2px; border: 0; border-bottom: 1px solid var(--jewel-line); border-radius: 0; background: transparent; }
body.app-theme-jewel .avatar { color: var(--jewel-on-accent); background: var(--jewel-teal); font-family: var(--sans); font-weight: 750; }
body.app-theme-jewel .person-count { color: var(--jewel-green); font-family: var(--sans); }

/* Choose Mishnah */
body.app-theme-jewel .catalog-action-toolbar,
body.app-theme-jewel .catalog-view-toolbar,
body.app-theme-jewel .batch-manage-toolbar {
  border-color: var(--jewel-line);
  border-radius: 6px;
  background: var(--jewel-toolbar);
  box-shadow: var(--shadow-sm);
}
body.app-theme-jewel .catalog-action-toolbar { top: 142px; }
body.app-theme-jewel .catalog-view-copy > strong,
body.app-theme-jewel .batch-toolbar-intro > strong { color: var(--jewel-text); }
body.app-theme-jewel .catalog-view-copy > span,
body.app-theme-jewel .batch-toolbar-intro > small { color: var(--jewel-text-muted); }
body.app-theme-jewel .seder-heading { border-color: var(--jewel-line-strong); }
body.app-theme-jewel .seder-heading h2 { color: var(--jewel-text); }
body.app-theme-jewel .seder-number,
body.app-theme-jewel .seder-part-badge { color: var(--jewel-violet); border-color: color-mix(in srgb, var(--jewel-violet) 42%, var(--jewel-line)); background: var(--jewel-violet-tint); }
body.app-theme-jewel .tractate-card { box-shadow: none; }
body.app-theme-jewel .tractate-card[open] { border-color: var(--jewel-line-strong); background: var(--jewel-surface-raised); }
body.app-theme-jewel .tractate-whole-select,
body.app-theme-jewel .tractate-assignees-select { color: var(--jewel-text-soft); border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .availability { color: var(--jewel-green); background: transparent; }
body.app-theme-jewel .availability.none-left { color: var(--jewel-text-muted); }
body.app-theme-jewel .tractate-body,
body.app-theme-jewel .tractate-assignees { border-color: var(--jewel-line); }
body.app-theme-jewel .chapter-choice { color: var(--jewel-text-soft); border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .chapter-choice:hover { border-color: var(--jewel-line-strong); background: var(--jewel-hover); }
body.app-theme-jewel .chapter-choice:has(input:checked) { color: var(--jewel-on-accent); border-color: var(--jewel-teal); background: var(--jewel-teal); }
body.app-theme-jewel .chapter-choice.is-taken { color: var(--jewel-disabled-text); border-color: var(--jewel-line); background: var(--jewel-disabled); }
body.app-theme-jewel .chapter-choice.is-mine { color: var(--jewel-green); border-color: color-mix(in srgb, var(--jewel-green) 48%, var(--jewel-line)); background: var(--jewel-success-tint); }

/* Management, projects, directories, exports, and history */
body.app-theme-jewel .management-layout { grid-template-columns: 220px minmax(0, 1fr); gap: 12px; }
body.app-theme-jewel .management-content { gap: 12px; }
body.app-theme-jewel .management-sidebar { top: 148px; padding: 8px; background: var(--jewel-surface-raised); box-shadow: none; }
body.app-theme-jewel .management-sidebar-heading { border-color: var(--jewel-line); }
body.app-theme-jewel .management-sidebar-heading strong { color: var(--jewel-text); }
body.app-theme-jewel .management-sidebar-nav a,
body.app-theme-jewel .management-sidebar-advanced > a { color: var(--jewel-text-muted); border-radius: 4px; }
body.app-theme-jewel .management-sidebar-nav a:hover,
body.app-theme-jewel .management-sidebar-advanced > a:hover { color: var(--jewel-text); background: var(--jewel-hover); }
body.app-theme-jewel .management-sidebar-nav a[aria-current="page"],
body.app-theme-jewel .management-sidebar-advanced > a[aria-current="page"] { color: var(--jewel-text); background: var(--jewel-active); box-shadow: inset 3px 0 0 var(--jewel-teal); }
body.app-theme-jewel .management-sidebar-nav small,
body.app-theme-jewel .management-sidebar-advanced > summary { color: var(--jewel-text-muted); }
body.app-theme-jewel .management-sidebar-advanced { border-color: var(--jewel-line); }

body.app-theme-jewel .project-card-grid { gap: 12px; }
body.app-theme-jewel .project-card { box-shadow: none; }
body.app-theme-jewel .project-card.is-current { border-color: var(--jewel-teal); box-shadow: inset 3px 0 0 var(--jewel-teal); }
body.app-theme-jewel .project-card.is-archived { background: var(--jewel-archived); opacity: .9; }
body.app-theme-jewel .project-card-heading h3 { color: var(--jewel-text); }
body.app-theme-jewel .project-card-heading .project-card-memorial,
body.app-theme-jewel .project-card-heading .project-deadline-primary { color: var(--jewel-text-soft); }
body.app-theme-jewel .project-card-heading .project-deadline-secondary { color: var(--jewel-text-muted); }
body.app-theme-jewel .project-card-progress { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .project-card-progress span { border-color: var(--jewel-line); }
body.app-theme-jewel .project-card-progress strong { color: var(--jewel-blue); }
body.app-theme-jewel .archive-project-form,
body.app-theme-jewel .archive-visibility-form,
body.app-theme-jewel .pending-project-invitation-list article { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .project-delete-panel { border-color: color-mix(in srgb, var(--jewel-danger) 50%, var(--jewel-line)); background: var(--jewel-danger-tint); }

body.app-theme-jewel .directory-metrics { gap: 8px; }
body.app-theme-jewel .directory-metrics article { padding: 14px 16px; box-shadow: none; }
body.app-theme-jewel .directory-metrics article:nth-child(1) strong { color: var(--jewel-teal); }
body.app-theme-jewel .directory-metrics article:nth-child(2) strong { color: var(--jewel-blue); }
body.app-theme-jewel .directory-metrics article:nth-child(3) strong { color: var(--jewel-violet); }
body.app-theme-jewel .owner-participant-row { border-color: var(--jewel-line); }
body.app-theme-jewel .directory-person strong { color: var(--jewel-text-soft); }
body.app-theme-jewel .project-access-badge,
body.app-theme-jewel .directory-project-adder,
body.app-theme-jewel .directory-profile-editor { color: var(--jewel-text-soft); border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .project-access-badge:hover { border-color: var(--jewel-teal); background: var(--jewel-active); }
body.app-theme-jewel .access-role { color: var(--jewel-blue); background: var(--jewel-blue-tint); }
body.app-theme-jewel .role-owner { color: var(--jewel-gold); background: var(--jewel-gold-tint); }

body.app-theme-jewel .export-grid { gap: 10px; }
body.app-theme-jewel .export-card { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .export-count { color: var(--jewel-violet); background: var(--jewel-violet-tint); }
body.app-theme-jewel .generated-link-card { color: var(--jewel-text); border-color: color-mix(in srgb, var(--jewel-green) 48%, var(--jewel-line)); background: var(--jewel-success-tint); }
body.app-theme-jewel .generated-link-card p,
body.app-theme-jewel .generated-link-card .eyebrow { color: var(--jewel-text-soft); }

body.app-theme-jewel .audit-view-tabs a { box-shadow: none; }
body.app-theme-jewel .audit-view-tabs a[aria-current="page"] { color: var(--jewel-text); border-color: var(--jewel-teal); background: var(--jewel-active); }
body.app-theme-jewel .audit-filter-form,
body.app-theme-jewel .audit-column-filters { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .filter-multiselect-menu { border-color: var(--jewel-line); background: var(--jewel-surface-raised); box-shadow: var(--shadow-md); }
body.app-theme-jewel .filter-option-list label:hover { background: var(--jewel-hover); }
body.app-theme-jewel .audit-table th,
body.app-theme-jewel .audit-table td,
body.app-theme-jewel .assignment-table th,
body.app-theme-jewel .assignment-table td,
body.app-theme-jewel .log-table th,
body.app-theme-jewel .log-table td { border-color: var(--jewel-line); }
body.app-theme-jewel .audit-table tbody tr:hover,
body.app-theme-jewel .assignment-table tbody tr:hover,
body.app-theme-jewel .log-table tbody tr:hover { background: var(--jewel-hover); }
body.app-theme-jewel .audit-table th,
body.app-theme-jewel .assignment-table th,
body.app-theme-jewel .log-table th { color: var(--jewel-blue); }
body.app-theme-jewel .audit-details code { color: var(--jewel-text-soft); background: var(--jewel-neutral-tint); }
body.app-theme-jewel .trace-explanation { color: var(--jewel-text-soft); border-color: var(--jewel-teal); background: var(--jewel-teal-tint); }

/* Reminder, notification, and settings panels */
body.app-theme-jewel .deadline-picker,
body.app-theme-jewel .reminder-builder,
body.app-theme-jewel .consent-row,
body.app-theme-jewel .manual-reminder-panel,
body.app-theme-jewel .delivery-status,
body.app-theme-jewel .milestone-broadcast,
body.app-theme-jewel .message-examples,
body.app-theme-jewel .email-example,
body.app-theme-jewel .sms-consent-example {
  border-color: var(--jewel-line);
  background: var(--jewel-surface-muted);
}
body.app-theme-jewel .reminder-row { border-color: var(--jewel-line); background: var(--jewel-surface); }
body.app-theme-jewel .summary-day-selector span,
body.app-theme-jewel .summary-weekday-options span,
body.app-theme-jewel .summary-monthday-options span { color: var(--jewel-text-soft); border-color: var(--jewel-line); background: var(--jewel-surface); }
body.app-theme-jewel .summary-day-selector input:checked + span,
body.app-theme-jewel .summary-weekday-options input:checked + span,
body.app-theme-jewel .summary-monthday-options input:checked + span { color: var(--jewel-on-accent); border-color: var(--jewel-teal); background: var(--jewel-teal); }
body.app-theme-jewel .delivery-status.is-ready,
body.app-theme-jewel .milestone-broadcast.is-reached { border-color: color-mix(in srgb, var(--jewel-green) 48%, var(--jewel-line)); background: var(--jewel-success-tint); }
body.app-theme-jewel .milestone-state { color: var(--jewel-text-muted); background: var(--jewel-neutral-tint); }
body.app-theme-jewel .message-example-grid { border-color: var(--jewel-line); }
body.app-theme-jewel .email-example > p { border-color: var(--jewel-line); }
body.app-theme-jewel .sms-example p { color: var(--jewel-text-soft); background: var(--jewel-success-tint); }
body.app-theme-jewel .account-security-entry { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .account-security-entry-icon,
body.app-theme-jewel .security-card-icon { border-color: var(--jewel-line); background: var(--jewel-blue-tint); }
body.app-theme-jewel .account-security-entry-icon img,
body.app-theme-jewel .security-card-icon img { filter: var(--jewel-icon-filter); }

/* Instructions and public/auth screens */
body.app-theme-jewel .instruction-step { box-shadow: none; }
body.app-theme-jewel .instruction-step:nth-child(1) { border-top: 2px solid var(--jewel-teal); }
body.app-theme-jewel .instruction-step:nth-child(2) { border-top: 2px solid var(--jewel-blue); }
body.app-theme-jewel .instruction-step:nth-child(3) { border-top: 2px solid var(--jewel-violet); }
body.app-theme-jewel .instruction-step-icon { color: var(--jewel-on-accent); border-color: transparent; background: var(--jewel-teal); }
body.app-theme-jewel .instruction-step:nth-child(2) .instruction-step-icon { background: var(--jewel-blue); }
body.app-theme-jewel .instruction-step:nth-child(3) .instruction-step-icon { background: var(--jewel-violet); }
body.app-theme-jewel .instruction-step-icon img { filter: brightness(0) saturate(100%); }
body.app-theme-jewel .instruction-step-number { color: var(--jewel-gold); }
body.app-theme-jewel .instruction-topic[open] { border-color: var(--jewel-line-strong); background: var(--jewel-surface-raised); }

body.app-theme-jewel.auth-page { color: var(--jewel-text); background: var(--jewel-canvas); }
body.app-theme-jewel .brand-light { color: var(--jewel-text); }
body.app-theme-jewel .brand-light strong { color: var(--jewel-text); }
body.app-theme-jewel .brand-light small { color: var(--jewel-text-muted); }
html[data-theme="dark"] body.app-theme-jewel .brand-light { color: var(--jewel-chrome-text); }
html[data-theme="dark"] body.app-theme-jewel .brand-light strong { color: var(--jewel-chrome-text); }
html[data-theme="dark"] body.app-theme-jewel .brand-light small { color: var(--jewel-chrome-muted); }
body.app-theme-jewel .auth-backdrop::before { border-color: var(--jewel-line); box-shadow: 0 0 0 80px color-mix(in srgb, var(--jewel-teal) 5%, transparent), 0 0 0 160px color-mix(in srgb, var(--jewel-blue) 4%, transparent); }
body.app-theme-jewel .auth-backdrop span { color: color-mix(in srgb, var(--jewel-blue) 7%, transparent); }
body.app-theme-jewel .auth-intro .eyebrow { color: var(--jewel-teal); }
body.app-theme-jewel .auth-intro > p:not(.eyebrow),
body.app-theme-jewel .feature-list { color: var(--jewel-text-muted); }
body.app-theme-jewel .feature-list span { color: var(--jewel-gold); }
body.app-theme-jewel .auth-card { border-color: var(--jewel-line-strong); background: var(--jewel-surface); box-shadow: var(--shadow-md); }
body.app-theme-jewel .auth-theme-toggle { color: var(--jewel-text-soft); border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .legal-card p,
body.app-theme-jewel .legal-card li { color: var(--jewel-text-soft); }
body.app-theme-jewel .feedback-type-picker label > span,
body.app-theme-jewel .feedback-request-meta { color: var(--jewel-text-soft); border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
body.app-theme-jewel .feedback-type-picker input:checked + span { color: var(--jewel-teal-soft); border-color: var(--jewel-teal); background: var(--jewel-teal-tint); box-shadow: inset 0 0 0 1px var(--jewel-teal); }
body.app-theme-jewel .feedback-request-meta div { border-color: var(--jewel-line); }
body.app-theme-jewel .feedback-request-message,
body.app-theme-jewel .feedback-request-meta dd { color: var(--jewel-text-soft); }
body.app-theme-jewel .feedback-request-status { color: var(--jewel-green); border-color: color-mix(in srgb, var(--jewel-green) 45%, var(--jewel-line)); background: var(--jewel-success-tint); }
body.app-theme-jewel .feedback-request-card.is-resolved .feedback-request-status { color: var(--jewel-text-muted); border-color: var(--jewel-line); background: var(--jewel-surface-muted); }

/* Dialogs and transient states */
body.app-theme-jewel .new-project-panel,
body.app-theme-jewel .hebrew-keyboard,
body.app-theme-jewel .photo-crop-dialog { color: var(--jewel-text); border-color: var(--jewel-line-strong); background: var(--jewel-surface); }
body.app-theme-jewel .new-project-panel::backdrop,
body.app-theme-jewel .hebrew-keyboard::backdrop,
body.app-theme-jewel .photo-crop-dialog::backdrop { background: var(--jewel-dialog-backdrop); }
body.app-theme-jewel .new-project-panel-heading,
body.app-theme-jewel .new-project-panel-actions,
body.app-theme-jewel .hebrew-keyboard-heading,
body.app-theme-jewel .photo-crop-heading { border-color: var(--jewel-line); background: var(--jewel-surface-raised); }
body.app-theme-jewel .selection-note { color: var(--jewel-gold); border-color: color-mix(in srgb, var(--jewel-gold) 48%, var(--jewel-line)); background: var(--jewel-gold-tint); }
body.app-theme-jewel .flash-success { color: var(--jewel-green); border-color: color-mix(in srgb, var(--jewel-green) 48%, var(--jewel-line)); background: var(--jewel-success-tint); }
body.app-theme-jewel .flash-error { color: var(--jewel-danger); border-color: color-mix(in srgb, var(--jewel-danger) 48%, var(--jewel-line)); background: var(--jewel-danger-tint); }
body.app-theme-jewel .flash-icon::after { color: var(--jewel-on-accent); }

/* Semantic status colors */
body.app-theme-jewel .status-sent,
body.app-theme-jewel .category-learning,
body.app-theme-jewel .result-delivered { color: var(--jewel-green); background: var(--jewel-success-tint); }
body.app-theme-jewel .status-pending,
body.app-theme-jewel .category-notifications,
body.app-theme-jewel .result-accepted,
body.app-theme-jewel .result-in_progress { color: var(--jewel-gold); background: var(--jewel-gold-tint); }
body.app-theme-jewel .status-failed,
body.app-theme-jewel .category-security,
body.app-theme-jewel .result-failed { color: var(--jewel-danger); background: var(--jewel-danger-tint); }
body.app-theme-jewel .record-type-email,
body.app-theme-jewel .category-people,
body.app-theme-jewel .channel-email { color: var(--jewel-blue); background: var(--jewel-blue-tint); }
body.app-theme-jewel .record-type-sms,
body.app-theme-jewel .channel-sms { color: var(--jewel-violet); background: var(--jewel-violet-tint); }
body.app-theme-jewel .record-type-activity,
body.app-theme-jewel .category-project,
body.app-theme-jewel .result-recorded,
body.app-theme-jewel .status-skipped { color: var(--jewel-text-soft); background: var(--jewel-neutral-tint); }

/* Footer */
body.app-theme-jewel .site-footer { color: var(--jewel-chrome-muted); border-color: var(--jewel-chrome-line); background: var(--jewel-chrome-deep); }
body.app-theme-jewel .footer-inner strong,
body.app-theme-jewel .footer-inner a { color: var(--jewel-chrome-soft); }
body.app-theme-jewel .footer-inner a:hover { color: var(--jewel-teal); }

@media (max-width: 1180px) {
  body.app-theme-jewel .header-inner { grid-template-columns: auto minmax(0, 1fr) minmax(155px, 205px); gap: 10px; }
  body.app-theme-jewel .main-nav > a,
  body.app-theme-jewel .nav-button { padding-inline: 7px; }
  body.app-theme-jewel .main-nav > a { gap: 5px; }
  body.app-theme-jewel .main-nav > a img { width: 14px; height: 14px; }
  body.app-theme-jewel .dashboard-command-grid { grid-template-columns: 1.2fr 1fr; }
  body.app-theme-jewel .project-progress-card { grid-column: 1 / -1; min-height: 0; }
  body.app-theme-jewel .project-progress-card .progress-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.app-theme-jewel .project-progress-card .progress-metrics article { border-bottom: 0; }
  body.app-theme-jewel .project-progress-card .progress-metrics article:nth-child(2) { border-right: 1px solid var(--jewel-line); }
  body.app-theme-jewel .project-progress-card .progress-metrics article:nth-child(3) { border-right: 0; }
  body.app-theme-jewel .project-progress-card .progress-metrics article:nth-child(-n + 3) { border-bottom: 1px solid var(--jewel-line); }
  body.app-theme-jewel .project-progress-card .progress-metrics article:last-child { border-right: 0; }
}

@media (max-width: 900px) {
  body.app-theme-jewel .header-inner {
    grid-template-columns: auto minmax(170px, 1fr);
    grid-template-areas: "brand project" "nav nav";
    gap: 7px 12px;
    padding-block: 8px;
  }
  body.app-theme-jewel .main-nav { width: 100%; max-width: 100%; margin-inline: 0; padding-inline: 0; overflow-x: auto; scrollbar-width: none; }
  body.app-theme-jewel .main-nav::-webkit-scrollbar { display: none; }
  body.app-theme-jewel .main-nav > a,
  body.app-theme-jewel .nav-button,
  body.app-theme-jewel .theme-toggle { flex: 0 0 auto; }
  body.app-theme-jewel .catalog-action-toolbar { top: 8px; }
  body.app-theme-jewel .management-sidebar { top: auto; }
  body.app-theme-jewel .management-sidebar-nav a[aria-current="page"] { box-shadow: inset 0 -3px 0 var(--jewel-teal); }
}

@media (max-width: 720px) {
  body.app-theme-jewel .service-notice-inner { align-items: flex-start; }
  body.app-theme-jewel .dashboard-command-grid { grid-template-columns: 1fr; }
  body.app-theme-jewel .dashboard-command-card,
  body.app-theme-jewel .project-progress-card { grid-column: auto; min-height: 0; }
  body.app-theme-jewel .project-progress-card .progress-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.app-theme-jewel .project-progress-card .progress-metrics article:nth-child(2) { border-right: 0; }
  body.app-theme-jewel .project-progress-card .progress-metrics article:nth-child(3) { border-right: 1px solid var(--jewel-line); }
  body.app-theme-jewel .project-progress-card .progress-metrics article:nth-child(-n + 4) { border-bottom: 1px solid var(--jewel-line); }
  body.app-theme-jewel .project-overview-heading { align-items: stretch; flex-direction: column; }
  body.app-theme-jewel .project-overview-heading .button { width: 100%; }
  body.app-theme-jewel .project-overview-identity { align-items: flex-start; }
  body.app-theme-jewel .overview-deadline-hebrew { justify-content: flex-start; }
  body.app-theme-jewel .claim-group-list { grid-template-columns: 1fr; }
  body.app-theme-jewel .project-card-grid { grid-template-columns: 1fr; }
  body.app-theme-jewel .instruction-step-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  body.app-theme-jewel .shell,
  body.app-theme-jewel .narrow-shell { padding-inline: 12px; }
  body.app-theme-jewel .site-header { position: relative; }
  body.app-theme-jewel .header-inner { grid-template-columns: 1fr; grid-template-areas: "brand" "project" "nav"; }
  body.app-theme-jewel .project-switcher { width: 100%; }
  body.app-theme-jewel .main-nav { width: 100%; max-width: 100%; margin-inline: 0; padding-inline: 0; }
  body.app-theme-jewel .main-nav > a,
  body.app-theme-jewel .nav-button,
  body.app-theme-jewel .theme-toggle { min-height: 40px; border: 1px solid var(--jewel-chrome-line); border-radius: 5px; background: var(--jewel-chrome-surface); }
  body.app-theme-jewel .main-nav > a[aria-current="page"] { border-color: var(--jewel-teal); }
  body.app-theme-jewel .nav-divider { display: none; }
  body.app-theme-jewel .info-tip-panel,
  body.app-theme-jewel .info-tip-align-start .info-tip-panel,
  body.app-theme-jewel .info-tip-align-end .info-tip-panel {
    position: fixed;
    top: 50%;
    right: 12px;
    left: 12px;
    width: auto;
    max-width: 366px;
    margin-inline: auto;
    transform: translateY(calc(-50% - 3px));
  }
  body.app-theme-jewel .info-tip:hover .info-tip-panel,
  body.app-theme-jewel .info-tip:focus-within .info-tip-panel,
  body.app-theme-jewel .info-tip.is-open .info-tip-panel { transform: translateY(-50%); }
  body.app-theme-jewel .dashboard-shell { padding-top: 12px; }
  body.app-theme-jewel .project-overview-heading,
  body.app-theme-jewel .dashboard-command-card,
  body.app-theme-jewel .content-card { padding: 14px 12px; }
  body.app-theme-jewel .project-overview-identity { flex-direction: column; }
  body.app-theme-jewel .project-overview-photo { width: 54px; height: 54px; }
  body.app-theme-jewel .continue-learning-main { grid-template-columns: 1fr; gap: 8px; }
  body.app-theme-jewel .continue-progress-number { font-size: 1.9rem; }
  body.app-theme-jewel .personal-dashboard-heading { align-items: flex-start; flex-direction: column; }
  body.app-theme-jewel .personal-progress-lead { max-width: none; text-align: left; }
  body.app-theme-jewel .shared-assignment-row,
  body.app-theme-jewel .assignments-card[data-assignment-group-mode="participant"] .shared-assignment-row,
  body.app-theme-jewel .assignments-card[data-assignment-group-mode="masechta"] .shared-assignment-row { grid-template-columns: 1fr; gap: 8px; }
  body.app-theme-jewel .management-layout { grid-template-columns: 1fr; }
  body.app-theme-jewel .management-sidebar { position: static; }
  body.app-theme-jewel .audit-table tr { border-color: var(--jewel-line); background: var(--jewel-surface-muted); }
  body.app-theme-jewel .audit-table td { border-color: var(--jewel-line); }
  body.app-theme-jewel .auth-shell,
  body.app-theme-jewel .auth-shell-compact { padding-inline: 12px; }
  body.app-theme-jewel .auth-card { border-radius: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  body.app-theme-jewel *,
  body.app-theme-jewel *::before,
  body.app-theme-jewel *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
