/* Shared typography & shape (both themes). Colors live under html[data-theme]. */
:root {
    --rz-root-font-size: 16px;
    --rz-body-font-size: 1rem;
    --rz-body-line-height: 1.55;

    --rz-text-font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

    --rz-text-display-h1-font-size: clamp(2rem, 5vw, 2.75rem);
    --rz-text-display-h1-line-height: 1.15;
    --rz-text-display-h1-font-weight: 700;
    --rz-text-display-h1-letter-spacing: -0.02em;
    --rz-text-display-h2-font-size: clamp(1.75rem, 4vw, 2.25rem);
    --rz-text-display-h2-line-height: 1.2;
    --rz-text-display-h2-font-weight: 700;
    --rz-text-display-h2-letter-spacing: -0.015em;
    --rz-text-display-h3-font-size: clamp(1.5rem, 3.5vw, 1.875rem);
    --rz-text-display-h3-line-height: 1.22;
    --rz-text-display-h3-font-weight: 700;
    --rz-text-display-h3-letter-spacing: -0.01em;
    --rz-text-display-h4-font-size: clamp(1.375rem, 3vw, 1.625rem);
    --rz-text-display-h4-line-height: 1.25;
    --rz-text-display-h4-font-weight: 700;
    --rz-text-display-h4-letter-spacing: -0.01em;
    --rz-text-display-h5-font-size: clamp(1.25rem, 2.5vw, 1.375rem);
    --rz-text-display-h5-line-height: 1.3;
    --rz-text-display-h5-font-weight: 600;
    --rz-text-display-h6-font-size: clamp(1.125rem, 2vw, 1.25rem);
    --rz-text-display-h6-line-height: 1.35;
    --rz-text-display-h6-font-weight: 600;

    --rz-text-h1-font-size: clamp(1.625rem, 3.2vw, 2rem);
    --rz-text-h1-line-height: 1.2;
    --rz-text-h1-font-weight: 700;
    --rz-text-h1-letter-spacing: -0.02em;
    --rz-text-h2-font-size: clamp(1.375rem, 2.6vw, 1.625rem);
    --rz-text-h2-line-height: 1.25;
    --rz-text-h2-font-weight: 700;
    --rz-text-h2-letter-spacing: -0.015em;
    --rz-text-h3-font-size: clamp(1.125rem, 2vw, 1.3125rem);
    --rz-text-h3-line-height: 1.3;
    --rz-text-h3-font-weight: 600;
    --rz-text-h3-letter-spacing: -0.01em;
    --rz-text-h4-font-size: 1.125rem;
    --rz-text-h4-line-height: 1.35;
    --rz-text-h4-font-weight: 600;
    --rz-text-h4-letter-spacing: -0.005em;
    --rz-text-h5-font-size: 1.0625rem;
    --rz-text-h5-line-height: 1.4;
    --rz-text-h5-font-weight: 600;
    --rz-text-h5-letter-spacing: 0;
    --rz-text-h6-font-size: 1rem;
    --rz-text-h6-line-height: 1.4;
    --rz-text-h6-font-weight: 600;
    --rz-text-h6-letter-spacing: 0.01em;

    --rz-text-subtitle1-font-size: 1.0625rem;
    --rz-text-subtitle1-line-height: 1.35;
    --rz-text-subtitle1-font-weight: 600;
    --rz-text-subtitle1-letter-spacing: -0.01em;

    --rz-text-subtitle2-font-size: 0.8125rem;
    --rz-text-subtitle2-line-height: 1.45;
    --rz-text-subtitle2-font-weight: 500;
    --rz-text-subtitle2-letter-spacing: 0.02em;

    --rz-text-body1-font-size: 1rem;
    --rz-text-body1-line-height: 1.55;
    --rz-text-body1-font-weight: 400;
    --rz-text-body1-letter-spacing: 0;
    --rz-text-body2-font-size: 0.875rem;
    --rz-text-body2-line-height: 1.5;
    --rz-text-body2-font-weight: 400;
    --rz-text-body2-letter-spacing: 0.005em;

    --rz-text-caption-font-size: 0.75rem;
    --rz-text-caption-line-height: 1.4;
    --rz-text-caption-font-weight: 400;
    --rz-text-caption-letter-spacing: 0.01em;

    --rz-text-overline-font-size: 0.6875rem;
    --rz-text-overline-line-height: 1.35;
    --rz-text-overline-font-weight: 600;
    --rz-text-overline-letter-spacing: 0.08em;

    --rz-text-button-font-size: 0.9375rem;
    --rz-text-button-line-height: 1.25;
    --rz-text-button-font-weight: 600;
    --rz-text-button-letter-spacing: 0.02em;
    --rz-text-button-text-transform: none;

    --rz-border-radius: 10px;
    --rz-card-border-radius: 26px;
    /* Card top accent — width of border-top (see #PickupPro .rz-card) */
    --pickup-card-top-accent-width: 2px;
    --pickup-card-top-accent-color: #f28c66;
    --rz-panel-border-radius: var(--rz-card-border-radius);
    --rz-button-border-radius: var(--rz-border-radius);
    --rz-input-border-radius: var(--rz-border-radius);

    --rz-progressbar-height: 6px;
    --rz-progressbar-border-radius: 9999px;
}

html[data-theme="dark"] {
    color-scheme: dark;

    --pickup-accent-strong: #ff5722;
    --pickup-tertiary: #a15ab8;
    --pickup-tertiary-light: #b97ece;
    --pickup-tertiary-lighter: rgba(161, 90, 184, 0.18);
    --pickup-tertiary-dark: #8747a0;
    --pickup-tertiary-darker: #6f3b85;

    --pickup-html-gradient: radial-gradient(ellipse 140% 70% at 50% -20%, rgba(161, 90, 184, 0.09), transparent 50%);
    --pickup-body-inset: inset 0 0 0 1px rgba(161, 90, 184, 0.45);
    --pickup-body-glow: 0 0 40px rgba(161, 90, 184, 0.07);

    --rz-white: #ffffff;
    --rz-black: #000000;
    --rz-base-50: #fafafa;
    --rz-base-100: #e0e0e0;
    --rz-base-200: #bdbdbd;
    --rz-base-300: #9e9e9e;
    --rz-base-400: #757575;
    --rz-base-500: #616161;
    --rz-base-600: #424242;
    --rz-base-700: #2c2c2c;
    --rz-base-800: #1e1e1e;
    --rz-base-900: #121212;
    --rz-base: #2c2c2c;
    --rz-base-light: #9e9e9e;
    --rz-base-lighter: #e0e0e0;
    --rz-base-dark: #1e1e1e;
    --rz-base-darker: #0a0a0a;

    --rz-primary: #ff8a65;
    --rz-primary-light: #ffb896;
    --rz-primary-lighter: rgba(255, 138, 101, 0.22);
    --rz-primary-dark: #ff7043;
    --rz-primary-darker: #ff5722;

    --rz-secondary: #2979ff;
    --rz-secondary-light: #5393ff;
    --rz-secondary-lighter: rgba(41, 121, 255, 0.18);
    --rz-secondary-dark: #1e5fd9;
    --rz-secondary-darker: #1854c7;

    --rz-info: #2979ff;
    --rz-info-light: #5393ff;
    --rz-info-lighter: rgba(41, 121, 255, 0.2);
    --rz-info-dark: #1e5fd9;
    --rz-info-darker: #1854c7;

    --rz-on-primary: #121212;
    --rz-on-primary-light: #121212;
    --rz-on-primary-lighter: #d84315;
    --rz-on-primary-dark: #121212;
    --rz-on-primary-darker: #121212;

    --rz-on-secondary: #ffffff;
    --rz-on-secondary-light: #ffffff;
    --rz-on-secondary-lighter: #2979ff;
    --rz-on-secondary-dark: #ffffff;
    --rz-on-secondary-darker: #ffffff;

    --rz-on-info: #ffffff;
    --rz-on-info-light: #ffffff;
    --rz-on-info-lighter: #2979ff;
    --rz-on-info-dark: #ffffff;
    --rz-on-info-darker: #ffffff;

    --rz-on-base: #ffffff;
    --rz-on-base-light: #121212;
    --rz-on-base-lighter: #121212;
    --rz-on-base-dark: #ffffff;
    --rz-on-base-darker: #ffffff;

    --rz-series-1: #ff5722;
    --rz-series-2: #2979ff;
    --rz-series-3: #a15ab8;
    --rz-series-4: #ff8a65;
    --rz-series-5: #ffee58;
    --rz-series-6: #9ccc65;
    --rz-series-7: #26a69a;
    --rz-series-8: #4fc3f7;
    --rz-series-9: #7f5cce;
    --rz-series-10: #ce93d8;

    --rz-text-title-color: #ffffff;
    --rz-text-color: #e0e0e0;
    --rz-text-secondary-color: #9e9e9e;
    --rz-text-tertiary-color: #757575;
    --rz-text-body1-color: #e0e0e0;
    --rz-text-body2-color: #d6d6d6;
    --rz-text-caption-color: #9e9e9e;
    --rz-form-field-label-color: #9e9e9e;
    --rz-text-subtitle1-color: #ffffff;
    --rz-text-subtitle2-color: #9e9e9e;
    --rz-text-overline-color: #9e9e9e;

    --rz-link-color: var(--pickup-accent-strong);
    --rz-link-hover-color: #ffab91;

    --rz-body-background-color: var(--rz-base-900);
    --rz-base-background-color: var(--rz-base-800);

    --rz-input-background-color: var(--rz-base-900);
    --rz-input-hover-background-color: var(--rz-base-900);
    --rz-input-focus-background-color: var(--rz-base-900);
    --rz-input-placeholder-color: #9e9e9e;

    --rz-border-normal: var(--rz-border-width) solid var(--rz-base-600);
    --rz-border-hover: var(--rz-border-width) solid var(--rz-base-400);
    --rz-border-focus: var(--rz-border-width) solid var(--pickup-tertiary);
    --rz-input-focus-shadow: inset 0 0 0 1px var(--pickup-tertiary);
    --rz-outline-color: var(--pickup-tertiary);
    --rz-header-background-color: var(--rz-base-800);
    --rz-progressbar-background-color: var(--rz-base-700);
    --rz-progressbar-value-background-color: var(--rz-primary);
    --rz-card-border: var(--rz-border-width) solid var(--rz-base-600);

    /* Sidebar panel menu: use tertiary accent instead of primary (orange) wash */
    --rz-panel-menu-item-active-background-color: var(--pickup-tertiary-lighter);
    --rz-panel-menu-item-active-color: var(--rz-text-title-color);
    --rz-panel-menu-item-active-indicator: var(--pickup-tertiary-light);
    --rz-panel-menu-item-2nd-level-active-background-color: var(--pickup-tertiary-lighter);
    --rz-panel-menu-item-2nd-level-active-color: var(--rz-text-title-color);
    --rz-panel-menu-item-3rd-level-active-background-color: var(--pickup-tertiary-lighter);
    --rz-panel-menu-item-3rd-level-active-color: var(--rz-text-title-color);
}

html[data-theme="light"] {
    color-scheme: light;

    --pickup-accent-strong: #e64a19;
    --pickup-tertiary: #8e44ad;
    --pickup-tertiary-light: #a569bd;
    --pickup-tertiary-lighter: rgba(142, 68, 173, 0.12);
    --pickup-tertiary-dark: #7d3c98;
    --pickup-tertiary-darker: #6c3483;

    --pickup-html-gradient: radial-gradient(ellipse 140% 70% at 50% -20%, rgba(142, 68, 173, 0.06), transparent 50%);
    --pickup-body-inset: inset 0 0 0 1px rgba(142, 68, 173, 0.22);
    --pickup-body-glow: 0 0 28px rgba(142, 68, 173, 0.05);

    --rz-white: #ffffff;
    --rz-black: #000000;
    --rz-base-50: #fafafa;
    --rz-base-100: #f5f5f5;
    --rz-base-200: #eeeeee;
    --rz-base-300: #e0e0e0;
    --rz-base-400: #bdbdbd;
    --rz-base-500: #9e9e9e;
    --rz-base-600: #757575;
    --rz-base-700: #616161;
    --rz-base-800: #424242;
    --rz-base-900: #212121;
    --rz-base: #e0e0e0;
    --rz-base-light: #9e9e9e;
    --rz-base-lighter: #fafafa;
    --rz-base-dark: #bdbdbd;
    --rz-base-darker: #757575;

    --rz-primary: #ff8a65;
    --rz-primary-light: #ffab91;
    --rz-primary-lighter: rgba(255, 138, 101, 0.2);
    --rz-primary-dark: #ff7043;
    --rz-primary-darker: #ff5722;

    --rz-secondary: #2979ff;
    --rz-secondary-light: #5393ff;
    --rz-secondary-lighter: rgba(41, 121, 255, 0.14);
    --rz-secondary-dark: #1e5fd9;
    --rz-secondary-darker: #1854c7;

    --rz-info: #2979ff;
    --rz-info-light: #5393ff;
    --rz-info-lighter: rgba(41, 121, 255, 0.14);
    --rz-info-dark: #1e5fd9;
    --rz-info-darker: #1854c7;

    --rz-on-primary: #121212;
    --rz-on-primary-light: #121212;
    --rz-on-primary-lighter: #bf360c;
    --rz-on-primary-dark: #121212;
    --rz-on-primary-darker: #121212;

    --rz-on-secondary: #ffffff;
    --rz-on-secondary-light: #ffffff;
    --rz-on-secondary-lighter: #1565c0;
    --rz-on-secondary-dark: #ffffff;
    --rz-on-secondary-darker: #ffffff;

    --rz-on-info: #ffffff;
    --rz-on-info-light: #ffffff;
    --rz-on-info-lighter: #1565c0;
    --rz-on-info-dark: #ffffff;
    --rz-on-info-darker: #ffffff;

    --rz-on-base: #212121;
    --rz-on-base-light: #fafafa;
    --rz-on-base-lighter: var(--rz-on-base);
    --rz-on-base-dark: #212121;
    --rz-on-base-darker: #000000;

    --rz-series-1: #ff5722;
    --rz-series-2: #2979ff;
    --rz-series-3: #8e44ad;
    --rz-series-4: #ff8a65;
    --rz-series-5: #fbc02d;
    --rz-series-6: #7cb342;
    --rz-series-7: #00897b;
    --rz-series-8: #039be5;
    --rz-series-9: #5e35b1;
    --rz-series-10: #ba68c8;

    --rz-text-title-color: #1a1a1a;
    --rz-text-color: #424242;
    --rz-text-secondary-color: #616161;
    --rz-text-tertiary-color: #9e9e9e;
    --rz-text-body1-color: #424242;
    --rz-text-body2-color: #5c5c5c;
    --rz-text-caption-color: #757575;
    --rz-form-field-label-color: #616161;
    --rz-text-subtitle1-color: #1a1a1a;
    --rz-text-subtitle2-color: #616161;
    --rz-text-overline-color: #757575;

    --rz-link-color: var(--pickup-accent-strong);
    --rz-link-hover-color: #bf360c;

    --rz-body-background-color: #f0f0f2;
    --rz-base-background-color: #ffffff;

    --rz-input-background-color: #fafafa;
    --rz-input-hover-background-color: #fafafa;
    --rz-input-focus-background-color: #ffffff;
    --rz-input-placeholder-color: #9e9e9e;

    --rz-border-normal: var(--rz-border-width) solid var(--rz-base-300);
    --rz-border-hover: var(--rz-border-width) solid var(--rz-base-400);
    --rz-border-focus: var(--rz-border-width) solid var(--pickup-tertiary);
    --rz-input-focus-shadow: inset 0 0 0 1px var(--pickup-tertiary);
    --rz-outline-color: var(--pickup-tertiary);
    --rz-header-background-color: #ffffff;
    --rz-progressbar-background-color: var(--rz-base-300);
    --rz-progressbar-value-background-color: var(--rz-primary);
    --rz-card-border: var(--rz-border-width) solid var(--rz-base-300);

    --rz-panel-menu-item-active-background-color: var(--pickup-tertiary-lighter);
    --rz-panel-menu-item-active-color: var(--pickup-tertiary-dark);
    --rz-panel-menu-item-active-indicator: var(--pickup-tertiary);
    --rz-panel-menu-item-2nd-level-active-background-color: var(--pickup-tertiary-lighter);
    --rz-panel-menu-item-2nd-level-active-color: var(--pickup-tertiary-dark);
    --rz-panel-menu-item-3rd-level-active-background-color: var(--pickup-tertiary-lighter);
    --rz-panel-menu-item-3rd-level-active-color: var(--pickup-tertiary-dark);
}

html {
    background-color: var(--rz-body-background-color);
    background-image: var(--pickup-html-gradient);
}

body#PickupPro {
    margin: 0;
    min-height: 100dvh;
    background-color: transparent;
    color: var(--rz-text-color);
    font-family: var(--rz-text-font-family);
    box-shadow: var(--pickup-body-inset), var(--pickup-body-glow);
}

#PickupPro a[href] {
    color: var(--rz-link-color);
}

#PickupPro a[href]:hover {
    color: var(--rz-link-hover-color);
}

/* Panel menu: #PickupPro a[href] wins over Radzen's color:inherit — keep link text aligned with wrapper hover/active */
#PickupPro .rz-panel-menu a[href].rz-navigation-item-link,
#PickupPro .rz-panel-menu a[href].rz-navigation-item-link:hover,
#PickupPro .rz-panel-menu a[href].rz-navigation-item-link:focus,
#PickupPro .rz-panel-menu a[href].rz-navigation-item-link:active {
    color: inherit;
}

#PickupPro #SubNavigation a.rz-link {
    color: var(--rz-text-secondary-color);
}

#PickupPro #SubNavigation a.rz-link:hover,
#PickupPro #SubNavigation a.rz-link:focus {
    color: var(--rz-text-color);
}

#PickupPro #SubNavigation a.rz-link.active,
#PickupPro #SubNavigation a.rz-link.rz-state-active {
    color: var(--pickup-accent-strong);
}

#SubNavigation {
    padding-left: .8rem;
}

    #SubNavigation a {
        padding: .5rem .2rem;
        border-bottom: 2px solid transparent;
    }

        #SubNavigation a:hover, #SubNavigation a.active {
            border-bottom: 2px solid;
            border-bottom-color: var(--pickup-accent-strong);
        }

            #SubNavigation a:hover .rz-link-text {
                text-decoration: none;
            }

#PickupPro .pickup-sidebar-heading {
    margin-left: 56px;
    padding-top: 10px;
    margin-bottom: 0.35rem;
    border-bottom: 1px solid var(--rz-base-600);
    display: block;
}

html[data-theme="light"] #PickupPro .pickup-sidebar-heading {
    border-bottom-color: var(--rz-base-300);
}

#PickupPro .pickup-feed-day {
    display: block;
    margin-top: 0.75rem;
    margin-bottom: 0.35rem;
}

#PickupPro p {
    font-size: var(--rz-text-body1-font-size);
    line-height: var(--rz-text-body1-line-height);
    color: var(--rz-text-color);
}

#PickupPro .lead {
    font-size: 1.125rem;
    line-height: 1.55;
    color: var(--rz-text-secondary-color);
}

/* SEO-only copy in index.html: keep in DOM for crawlers, not shown to users */
.pickup-splash-blurb {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

#PickupPro .rz-link .rzi {
    font-size: 1.3rem;
    margin: 0px 3px;
    vertical-align: sub;
}

.rz-notification {
    bottom: 10px;
    top: unset !important;
}

#PickupPro .rz-panel-titlebar {
    font-weight: bold;
    justify-content: flex-start;
    align-items: center;
    gap: 0.5rem;
}

#PickupPro .rz-panel-titlebar-toggler {
    order: -1;
}

#PickupPro .rz-panel-titlebar-toggler .rzi-plus:before,
#PickupPro .rz-fieldset-toggler.rzi-plus:before,
#PickupPro .rz-datatable-header .rzi-plus:before {
    content: "expand_more";
}

#PickupPro .rz-panel-titlebar-toggler .rzi-minus:before,
#PickupPro .rz-fieldset-toggler.rzi-minus:before,
#PickupPro .rz-datatable-header .rzi-minus:before {
    content: "expand_less";
}

#HeadToHead .rz-grid-table { min-width: 460px; }

/* Peach top edge — border follows the card’s own border-radius */
#PickupPro .rz-card {
    border-top: var(--pickup-card-top-accent-width) solid var(--pickup-card-top-accent-color);
}

.bold { font-weight: bold; }
