/* geselle.ai: shared identity for the portal, customer widget and privacy page. */
:root {
  --font: "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --ink: #252b2e;
  --ink-soft: #4c5457;
  --muted: #6e7374;
  --line: #e3e0d9;
  --line-strong: #cecbc3;
  --paper: #f6f3ec;
  --surface-soft: #faf8f3;
  --accent: #b84f32;
  --accent-dark: #963d25;
  --accent-soft: #f9e9de;
}
.admin-body, .privacy-body { --forest: #252b2e; --forest-2: #363e42; }
:is(.admin-body, .widget-body, .privacy-body) :is(h1, h2, h3, h4) { font-family: var(--font); }
.page-heading h2, .panel__head h3 { font-weight: 700; letter-spacing: -.035em; }
.privacy-document { overflow-wrap: anywhere; hyphens: auto; }
.privacy-document h1 { font-size: clamp(30px, 5vw, 48px); font-weight: 700; letter-spacing: -.04em; }
.brand { letter-spacing: -.045em; font-weight: 800; }
.brand__mark { display: block; flex: 0 0 auto; width: 34px; height: 34px; padding: 0; border-radius: 10px; background: none; }
.brand__name em { color: var(--accent); font-style: normal; }
.brand--light .brand__name em { color: #f5c46b; }
.button--primary { box-shadow: 0 4px 12px rgb(184 79 50 / 12%); }
.login-art { background: #252b2e; }
.login-art__grid { opacity: .035; }
.login-art h1, .login-card h2, .staff-welcome h3 { font-family: var(--font); font-weight: 750; letter-spacing: -.045em; }
.login-art .eyebrow { color: #f5c46b; }
.login-art__content > p:not(.eyebrow), .login-proof small { color: #c9cdcd; }
.login-art::before { border: 60px solid #f5c46b; opacity: .1; }
.login-art::after { border-color: #f5c46b; opacity: .25; }
.login-back { display: inline-block; margin-top: 25px; color: var(--muted); font-size: 12px; text-underline-offset: 4px; }
.sidebar { background: #252b2e; }
.nav-list a { color: #c2c8ca; }
.nav-label { color: #98a3a8; }
.nav-icon { color: #aab5bb; }
.nav-list a.is-active .nav-icon { color: #f5c46b; }
.tenant-switcher__logo { background: #434b50; }
.geselle-launcher { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0 0 24px; }
.geselle-launcher button { display: flex; align-items: center; gap: 14px; padding: 20px; text-align: left; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); color: var(--ink); }
.geselle-launcher button:hover { border-color: var(--accent); background: var(--surface-soft); }
.geselle-launcher button > img, .geselle-launcher__icon { width: 40px; height: 40px; flex: 0 0 auto; }
.geselle-launcher__icon { display: grid; place-items: center; border-radius: 12px; background: var(--accent-soft); color: var(--accent-dark); font-size: 21px; }
.geselle-launcher strong, .geselle-launcher small { display: block; }
.geselle-launcher strong { margin-bottom: 4px; font-size: 14px; }
.geselle-launcher small { color: var(--muted); font-size: 12px; line-height: 1.5; }
.geselle-launcher button > b { margin-left: auto; color: var(--accent); }
.staff-mark { width: 54px; height: 54px; padding: 0; background: none; }
.staff-message--user { background: #f3eee4; }
.staff-thread.is-active { border-color: #dec2b3; background: #fcf3ea; }
.widget-footer .widget-credit { display: inline-flex; align-items: center; gap: 5px; text-decoration: none; }
.widget-credit img { width: 16px; height: 16px; }
.privacy-credit { margin: 28px 0 8px; color: var(--muted); font-size: 11px; }
@media (max-width: 1050px) {
  .geselle-launcher { grid-template-columns: 1fr; gap: 8px; }
  .geselle-launcher button { padding: 14px 16px; }
}
@media (max-width: 900px) {
  .login-screen { grid-template-columns: minmax(0, 1fr); }
  .login-art { display: none; }
  .brand--mobile { display: inline-flex; }
  .login-panel { min-width: 0; }
}
