/* Styles for /profile and /history (layouts: profile, history).
   Tailwind CSS v4 utilities only (no preflight) generated from the markup in layout/_partial/pf/,
   then the minimal resets below, scoped to .pf so that the rest of the theme is not affected. */
.pf {
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  -webkit-text-size-adjust: 100%;
}
.pf *, .pf ::before, .pf ::after {
  box-sizing: border-box;
  border-color: #e5e7eb;
}
.pf h1, .pf h3, .pf p, .pf dl, .pf dt, .pf dd, .pf ul, .pf li, .pf figure {
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-weight: inherit;
}
.pf h1, .pf h3 { background: none; }
.pf ul, .pf li { list-style: none; }
.pf a { color: inherit; text-decoration: inherit; }
.pf u { text-decoration: underline; }
.pf img, .pf svg, .pf embed { display: block; vertical-align: middle; }
.pf img { max-width: 100%; height: auto; }

/* narrow screens: stack the two columns of the profile page (the original layout overflowed).
   Inside @layer utilities: !important declarations in a layer beat unlayered ones. */
@layer utilities {
@media (max-width: 767px) {
  .pf .grid-cols-2 { grid-template-columns: minmax(0, 1fr) !important; }
  .pf .col-span-1, .pf .col-span-2 { grid-column: auto !important; }
  .pf .w-96, .pf .max-w-md { width: 100% !important; max-width: 100% !important; }
  .pf .ml-12, .pf .mr-12 { margin-left: 0 !important; margin-right: 0 !important; }
}
}

/* external link icon (Font Awesome 5, loaded in layout.ejs for these pages) */
.pf a[href^="http"]::after,
.pf a[href^="//"]::after {
  margin: 0 0 0 3px;
  font-family: "Font Awesome 5 Free";
  content: "\f35d";
  font-weight: 900;
}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, utilities;
@layer theme {
  :root, :host {
    --color-orange-500: oklch(70.5% 0.213 47.604);
    --color-blue-500: oklch(62.3% 0.214 259.815);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-500: oklch(55.1% 0.027 264.364);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-gray-900: oklch(21% 0.034 264.665);
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-md: 28rem;
    --container-2xl: 42rem;
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-medium: 500;
    --radius-lg: 0.5rem;
  }
}
@layer utilities {
  .absolute {
    position: absolute !important;
  }
  .relative {
    position: relative !important;
  }
  .top-5 {
    top: calc(var(--spacing) * 5) !important;
  }
  .left-5 {
    left: calc(var(--spacing) * 5) !important;
  }
  .col-span-1 {
    grid-column: span 1 / span 1 !important;
  }
  .col-span-2 {
    grid-column: span 2 / span 2 !important;
  }
  .row-span-1 {
    grid-row: span 1 / span 1 !important;
  }
  .row-span-3 {
    grid-row: span 3 / span 3 !important;
  }
  .row-span-10 {
    grid-row: span 10 / span 10 !important;
  }
  .row-span-11 {
    grid-row: span 11 / span 11 !important;
  }
  .mx-auto {
    margin-inline: auto !important;
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5) !important;
  }
  .mt-1 {
    margin-top: var(--spacing) !important;
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2) !important;
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6) !important;
  }
  .mt-12 {
    margin-top: calc(var(--spacing) * 12) !important;
  }
  .mr-12 {
    margin-right: calc(var(--spacing) * 12) !important;
  }
  .-mb-8 {
    margin-bottom: calc(var(--spacing) * -8) !important;
  }
  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12) !important;
  }
  .-ml-px {
    margin-left: -1px !important;
  }
  .ml-5 {
    margin-left: calc(var(--spacing) * 5) !important;
  }
  .ml-12 {
    margin-left: calc(var(--spacing) * 12) !important;
  }
  .flex {
    display: flex !important;
  }
  .grid {
    display: grid !important;
  }
  .size-64 {
    width: calc(var(--spacing) * 64) !important;
    height: calc(var(--spacing) * 64) !important;
  }
  .h-5 {
    height: calc(var(--spacing) * 5) !important;
  }
  .h-10 {
    height: calc(var(--spacing) * 10) !important;
  }
  .h-full {
    height: 100% !important;
  }
  .w-0\.5 {
    width: calc(var(--spacing) * 0.5) !important;
  }
  .w-5 {
    width: calc(var(--spacing) * 5) !important;
  }
  .w-10 {
    width: calc(var(--spacing) * 10) !important;
  }
  .w-96 {
    width: calc(var(--spacing) * 96) !important;
  }
  .max-w-2xl {
    max-width: var(--container-2xl) !important;
  }
  .max-w-md {
    max-width: var(--container-md) !important;
  }
  .min-w-0 {
    min-width: 0px !important;
  }
  .flex-1 {
    flex: 1 !important;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,) !important;
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .grid-rows-12 {
    grid-template-rows: repeat(12, minmax(0, 1fr)) !important;
  }
  .items-center {
    align-items: center !important;
  }
  .items-start {
    align-items: flex-start !important;
  }
  .justify-center {
    justify-content: center !important;
  }
  :where(.space-y-8 > :not(:last-child)) {
    --tw-space-y-reverse: 0 !important;
    margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse)) !important;
    margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse))) !important;
  }
  :where(.space-x-3 > :not(:last-child)) {
    --tw-space-x-reverse: 0 !important;
    margin-inline-start: calc(calc(var(--spacing) * 3) * var(--tw-space-x-reverse)) !important;
    margin-inline-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-x-reverse))) !important;
  }
  .justify-self-center {
    justify-self: center !important;
  }
  .overflow-hidden {
    overflow: hidden !important;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px) !important;
  }
  .rounded-lg {
    border-radius: var(--radius-lg) !important;
  }
  .border-t {
    border-top-style: var(--tw-border-style) !important;
    border-top-width: 1px !important;
  }
  .border-gray-200 {
    border-color: var(--color-gray-200) !important;
  }
  .bg-blue-500 {
    background-color: var(--color-blue-500) !important;
  }
  .bg-gray-50 {
    background-color: var(--color-gray-50) !important;
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200) !important;
  }
  .bg-orange-500 {
    background-color: var(--color-orange-500) !important;
  }
  .bg-white {
    background-color: var(--color-white) !important;
  }
  .p-6 {
    padding: calc(var(--spacing) * 6) !important;
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4) !important;
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5) !important;
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8) !important;
  }
  .text-2xl {
    font-size: var(--text-2xl) !important;
    line-height: var(--tw-leading, var(--text-2xl--line-height)) !important;
  }
  .text-lg {
    font-size: var(--text-lg) !important;
    line-height: var(--tw-leading, var(--text-lg--line-height)) !important;
  }
  .text-sm {
    font-size: var(--text-sm) !important;
    line-height: var(--tw-leading, var(--text-sm--line-height)) !important;
  }
  .leading-6 {
    --tw-leading: calc(var(--spacing) * 6) !important;
    line-height: calc(var(--spacing) * 6) !important;
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium) !important;
    font-weight: var(--font-weight-medium) !important;
  }
  .text-gray-500 {
    color: var(--color-gray-500) !important;
  }
  .text-gray-700 {
    color: var(--color-gray-700) !important;
  }
  .text-gray-900 {
    color: var(--color-gray-900) !important;
  }
  .text-white {
    color: var(--color-white) !important;
  }
  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1)) !important;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow) !important;
  }
  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1)) !important;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow) !important;
  }
  .ring-8 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(8px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor) !important;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow) !important;
  }
  .ring-white {
    --tw-ring-color: var(--color-white) !important;
  }
  @media (width >= 40rem) {
    .sm\:col-span-2 {
      grid-column: span 2 / span 2 !important;
    }
    .sm\:mt-0 {
      margin-top: 0px !important;
    }
    .sm\:grid {
      display: grid !important;
    }
    .sm\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    .sm\:gap-4 {
      gap: calc(var(--spacing) * 4) !important;
    }
    .sm\:px-6 {
      padding-inline: calc(var(--spacing) * 6) !important;
    }
  }
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
    }
  }
}
