/* Parting Portal design tokens — browser UI only. */
html[data-pp-ui] {
  color-scheme: light;

  --pp-font-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --pp-font-serif: Iowan Old Style, Baskerville, "Times New Roman", serif;
  --pp-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;

  --pp-bg: #f5f1e8;
  --pp-bg-elevated: #fbf8f1;
  --pp-surface: #fffdf8;
  --pp-surface-soft: #f8f3e8;
  --pp-surface-muted: #efe7d7;
  --pp-surface-glass: rgba(255, 253, 248, 0.82);
  --pp-surface-glass-strong: rgba(255, 253, 248, 0.94);
  --pp-text: #302819;
  --pp-text-soft: #5d513f;
  --pp-text-muted: #7d705e;
  --pp-text-faint: #988b77;
  --pp-heading: #17150f;
  --pp-border: rgba(73, 56, 27, 0.15);
  --pp-border-strong: rgba(73, 56, 27, 0.25);
  --pp-divider: rgba(73, 56, 27, 0.1);

  --pp-primary: #17150f;
  --pp-primary-hover: #2d2412;
  --pp-primary-pressed: #090806;
  --pp-primary-soft: #f8ecd0;
  --pp-primary-border: rgba(181, 138, 43, 0.52);
  --pp-primary-foreground: #fff8e7;
  --pp-link: #8a6418;
  --pp-accent: #8a6418;
  --pp-accent-hover: #6e4f11;
  --pp-accent-soft: #f9edcf;
  --pp-accent-border: rgba(181, 138, 43, 0.42);

  --pp-info: #8a6418;
  --pp-info-soft: #fbf0d6;
  --pp-success: #58713e;
  --pp-success-soft: #edf3e7;
  --pp-warning: #8a6418;
  --pp-warning-soft: #fbf0d6;
  --pp-danger: #b93f39;
  --pp-danger-hover: #9c302c;
  --pp-danger-soft: #fcedeb;

  --pp-space-0: 0;
  --pp-space-1: 0.25rem;
  --pp-space-2: 0.5rem;
  --pp-space-3: 0.75rem;
  --pp-space-4: 1rem;
  --pp-space-5: 1.25rem;
  --pp-space-6: 1.5rem;
  --pp-space-8: 2rem;
  --pp-space-10: 2.5rem;
  --pp-space-12: 3rem;
  --pp-space-16: 4rem;

  --pp-radius-xs: 0.5rem;
  --pp-radius-sm: 0.7rem;
  --pp-radius-md: 0.9rem;
  --pp-radius-lg: 1.15rem;
  --pp-radius-xl: 1.5rem;
  --pp-radius-2xl: 2rem;
  --pp-radius-pill: 999px;

  --pp-shadow-xs: 0 1px 2px rgba(23, 21, 15, 0.06);
  --pp-shadow-sm: 0 8px 24px rgba(23, 21, 15, 0.09);
  --pp-shadow-md: 0 18px 48px rgba(23, 21, 15, 0.13);
  --pp-shadow-lg: 0 30px 90px rgba(23, 21, 15, 0.18);
  --pp-shadow-float: 0 24px 64px rgba(23, 21, 15, 0.22);
  --pp-inset-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  --pp-focus: 0 0 0 4px rgba(210, 168, 74, 0.38);
  --pp-focus-danger: 0 0 0 4px rgba(185, 63, 57, 0.2);

  --pp-control-height: 2.75rem;
  --pp-control-height-sm: 2.25rem;
  --pp-control-height-lg: 3.125rem;
  --pp-content: 75rem;
  --pp-content-wide: 90rem;
  --pp-sidebar: 17rem;
  --pp-header: 4.5rem;

  --pp-duration-fast: 120ms;
  --pp-duration: 180ms;
  --pp-duration-slow: 320ms;
  --pp-ease: cubic-bezier(0.2, 0.75, 0.25, 1);
}

html[data-pp-ui]:not([data-pp-surface="hosted-site"]) {
  --bg: var(--pp-bg);
  --panel: var(--pp-surface);
  --panel-strong: var(--pp-surface);
  --soft: var(--pp-surface-soft);
  --text: var(--pp-text);
  --ink: var(--pp-text);
  --muted: var(--pp-text-muted);
  --line: var(--pp-border);
  --accent: var(--pp-accent);
  --accent-strong: var(--pp-accent-hover);
  --accent-soft: var(--pp-accent-soft);
  --blue: var(--pp-accent);
  --blue-dark: var(--pp-accent-hover);
  --gold: var(--pp-accent);
  --green: var(--pp-success);
  --green-soft: var(--pp-success-soft);
  --red: var(--pp-danger);
  --red-soft: var(--pp-danger-soft);
  --teal: var(--pp-accent);
  --teal-soft: var(--pp-accent-soft);
  --warning: var(--pp-warning);
  --success: var(--pp-success);
  --danger: var(--pp-danger);
  --shadow: var(--pp-shadow-md);
  --shadow-soft: var(--pp-shadow-sm);

  --signup-bg: var(--pp-bg);
  --signup-ink: var(--pp-text);
  --signup-muted: var(--pp-text-muted);
  --signup-soft: var(--pp-surface-soft);
  --signup-panel: var(--pp-surface);
  --signup-line: var(--pp-border);
  --signup-blue: var(--pp-accent);
  --signup-blue-dark: var(--pp-accent-hover);
  --signup-gold: var(--pp-accent);
  --signup-green: var(--pp-success);
  --signup-red: var(--pp-danger);
}

html[data-pp-ui][data-color-profile="light"] {
  --pp-bg: #f8f5ee;
  --pp-bg-elevated: #fffdf8;
  --pp-surface-soft: #faf6ed;
  --pp-surface-muted: #f1e9da;
  --pp-border: rgba(73, 56, 27, 0.13);
  --pp-primary: #17150f;
  --pp-primary-hover: #2d2412;
}

html[data-pp-ui][data-pp-surface="workspace"][data-color-profile="dark"] {
  color-scheme: dark;
  --pp-bg: #0f0e0a;
  --pp-bg-elevated: #15120d;
  --pp-surface: #1b1811;
  --pp-surface-soft: #242015;
  --pp-surface-muted: #302a1d;
  --pp-surface-glass: rgba(27, 24, 17, 0.86);
  --pp-surface-glass-strong: rgba(27, 24, 17, 0.96);
  --pp-text: #f4eddf;
  --pp-text-soft: #d9ccb3;
  --pp-text-muted: #b9aa91;
  --pp-text-faint: #91836c;
  --pp-heading: #fff8e7;
  --pp-border: rgba(244, 211, 125, 0.18);
  --pp-border-strong: rgba(244, 211, 125, 0.32);
  --pp-divider: rgba(244, 211, 125, 0.12);
  --pp-primary: #d2a84a;
  --pp-primary-hover: #f4d37d;
  --pp-primary-pressed: #b58a2b;
  --pp-primary-soft: #3a2d14;
  --pp-primary-border: rgba(244, 211, 125, 0.52);
  --pp-primary-foreground: #17150f;
  --pp-link: #f4d37d;
  --pp-accent: #d2a84a;
  --pp-accent-hover: #f4d37d;
  --pp-accent-soft: #3a2d14;
  --pp-accent-border: rgba(244, 211, 125, 0.42);
  --pp-info: #d2a84a;
  --pp-info-soft: #3a2d14;
  --pp-success: #b5c487;
  --pp-success-soft: #28321d;
  --pp-warning: #f4d37d;
  --pp-warning-soft: #3a2d14;
  --pp-danger: #ff9e96;
  --pp-danger-hover: #ffbbb5;
  --pp-danger-soft: #402321;
  --pp-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.22);
  --pp-shadow-sm: 0 10px 28px rgba(0, 0, 0, 0.26);
  --pp-shadow-md: 0 20px 56px rgba(0, 0, 0, 0.34);
  --pp-shadow-lg: 0 32px 96px rgba(0, 0, 0, 0.48);
  --pp-shadow-float: 0 28px 78px rgba(0, 0, 0, 0.54);
  --pp-inset-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  --pp-focus: 0 0 0 4px rgba(244, 211, 125, 0.32);
}

html[data-pp-ui][data-pp-surface="hosted-site"] {
  --pp-primary: var(--accent, #8a6418);
  --pp-primary-hover: var(--accent-dark, #6e4f11);
  --pp-primary-soft: var(--wash, #f9edcf);
}

@media (prefers-reduced-motion: reduce) {
  html[data-pp-ui] {
    --pp-duration-fast: 1ms;
    --pp-duration: 1ms;
    --pp-duration-slow: 1ms;
  }
}
