/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
    'Noto Color Emoji';
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
    monospace;
    --spacing: 0.25rem;
    --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);
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --animate-spin: spin 1s linear infinite;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji');
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden='until-found'])) {
    display: none !important;
  }
}
@layer utilities {
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .z-50 {
    z-index: 50;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .hero-academic-cap {
    --hero-academic-cap: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M4.26%2010.147a60.438%2060.438%200%200%200-.491%206.347A48.62%2048.62%200%200%201%2012%2020.904a48.62%2048.62%200%200%201%208.232-4.41%2060.46%2060.46%200%200%200-.491-6.347m-15.482%200a50.636%2050.636%200%200%200-2.658-.813A59.906%2059.906%200%200%201%2012%203.493a59.903%2059.903%200%200%201%2010.399%205.84c-.896.248-1.783.52-2.658.814m-15.482%200A50.717%2050.717%200%200%201%2012%2013.489a50.702%2050.702%200%200%201%207.74-3.342M6.75%2015a.75.75%200%201%200%200-1.5.75.75%200%200%200%200%201.5Zm0%200v-3.675A55.378%2055.378%200%200%201%2012%208.443m-7.007%2011.55A5.981%205.981%200%200%200%206.75%2015.75v-1.5%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-academic-cap);
    mask: var(--hero-academic-cap);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-arrow-path {
    --hero-arrow-path: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M16.023%209.348h4.992v-.001M2.985%2019.644v-4.992m0%200h4.992m-4.993%200%203.181%203.183a8.25%208.25%200%200%200%2013.803-3.7M4.031%209.865a8.25%208.25%200%200%201%2013.803-3.7l3.181%203.182m0-4.991v4.99%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-arrow-path);
    mask: var(--hero-arrow-path);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-arrow-right-start-on-rectangle {
    --hero-arrow-right-start-on-rectangle: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M15.75%209V5.25A2.25%202.25%200%200%200%2013.5%203h-6a2.25%202.25%200%200%200-2.25%202.25v13.5A2.25%202.25%200%200%200%207.5%2021h6a2.25%202.25%200%200%200%202.25-2.25V15m3%200%203-3m0%200-3-3m3%203H9%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-arrow-right-start-on-rectangle);
    mask: var(--hero-arrow-right-start-on-rectangle);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-chart-bar {
    --hero-chart-bar: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M3%2013.125C3%2012.504%203.504%2012%204.125%2012h2.25c.621%200%201.125.504%201.125%201.125v6.75C7.5%2020.496%206.996%2021%206.375%2021h-2.25A1.125%201.125%200%200%201%203%2019.875v-6.75ZM9.75%208.625c0-.621.504-1.125%201.125-1.125h2.25c.621%200%201.125.504%201.125%201.125v11.25c0%20.621-.504%201.125-1.125%201.125h-2.25a1.125%201.125%200%200%201-1.125-1.125V8.625ZM16.5%204.125c0-.621.504-1.125%201.125-1.125h2.25C20.496%203%2021%203.504%2021%204.125v15.75c0%20.621-.504%201.125-1.125%201.125h-2.25a1.125%201.125%200%200%201-1.125-1.125V4.125Z%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-chart-bar);
    mask: var(--hero-chart-bar);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-chat-bubble-left-right {
    --hero-chat-bubble-left-right: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M20.25%208.511c.884.284%201.5%201.128%201.5%202.097v4.286c0%201.136-.847%202.1-1.98%202.193-.34.027-.68.052-1.02.072v3.091l-3-3c-1.354%200-2.694-.055-4.02-.163a2.115%202.115%200%200%201-.825-.242m9.345-8.334a2.126%202.126%200%200%200-.476-.095%2048.64%2048.64%200%200%200-8.048%200c-1.131.094-1.976%201.057-1.976%202.192v4.286c0%20.837.46%201.58%201.155%201.951m9.345-8.334V6.637c0-1.621-1.152-3.026-2.76-3.235A48.455%2048.455%200%200%200%2011.25%203c-2.115%200-4.198.137-6.24.402-1.608.209-2.76%201.614-2.76%203.235v6.226c0%201.621%201.152%203.026%202.76%203.235.577.075%201.157.14%201.74.194V21l4.155-4.155%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-chat-bubble-left-right);
    mask: var(--hero-chat-bubble-left-right);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-circle-stack {
    --hero-circle-stack: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M20.25%206.375c0%202.278-3.694%204.125-8.25%204.125S3.75%208.653%203.75%206.375m16.5%200c0-2.278-3.694-4.125-8.25-4.125S3.75%204.097%203.75%206.375m16.5%200v11.25c0%202.278-3.694%204.125-8.25%204.125s-8.25-1.847-8.25-4.125V6.375m16.5%200v3.75m-16.5-3.75v3.75m16.5%200v3.75C20.25%2016.153%2016.556%2018%2012%2018s-8.25-1.847-8.25-4.125v-3.75m16.5%200c0%202.278-3.694%204.125-8.25%204.125s-8.25-1.847-8.25-4.125%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-circle-stack);
    mask: var(--hero-circle-stack);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-document-text {
    --hero-document-text: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M19.5%2014.25v-2.625a3.375%203.375%200%200%200-3.375-3.375h-1.5A1.125%201.125%200%200%201%2013.5%207.125v-1.5a3.375%203.375%200%200%200-3.375-3.375H8.25m0%2012.75h7.5m-7.5%203H12M10.5%202.25H5.625c-.621%200-1.125.504-1.125%201.125v17.25c0%20.621.504%201.125%201.125%201.125h12.75c.621%200%201.125-.504%201.125-1.125V11.25a9%209%200%200%200-9-9Z%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-document-text);
    mask: var(--hero-document-text);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-exclamation-circle {
    --hero-exclamation-circle: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M12%209v3.75m9-.75a9%209%200%201%201-18%200%209%209%200%200%201%2018%200Zm-9%203.75h.008v.008H12v-.008Z%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-exclamation-circle);
    mask: var(--hero-exclamation-circle);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-flag {
    --hero-flag: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M3%203v1.5M3%2021v-6m0%200%202.77-.693a9%209%200%200%201%206.208.682l.108.054a9%209%200%200%200%206.086.71l3.114-.732a48.524%2048.524%200%200%201-.005-10.499l-3.11.732a9%209%200%200%201-6.085-.711l-.108-.054a9%209%200%200%200-6.208-.682L3%204.5M3%2015V4.5%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-flag);
    mask: var(--hero-flag);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-folder {
    --hero-folder: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M2.25%2012.75V12A2.25%202.25%200%200%201%204.5%209.75h15A2.25%202.25%200%200%201%2021.75%2012v.75m-8.69-6.44-2.12-2.12a1.5%201.5%200%200%200-1.061-.44H4.5A2.25%202.25%200%200%200%202.25%206v12a2.25%202.25%200%200%200%202.25%202.25h15A2.25%202.25%200%200%200%2021.75%2018V9a2.25%202.25%200%200%200-2.25-2.25h-5.379a1.5%201.5%200%200%201-1.06-.44Z%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-folder);
    mask: var(--hero-folder);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-home {
    --hero-home: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22m2.25%2012%208.954-8.955c.44-.439%201.152-.439%201.591%200L21.75%2012M4.5%209.75v10.125c0%20.621.504%201.125%201.125%201.125H9.75v-4.875c0-.621.504-1.125%201.125-1.125h2.25c.621%200%201.125.504%201.125%201.125V21h4.125c.621%200%201.125-.504%201.125-1.125V9.75M8.25%2021h8.25%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-home);
    mask: var(--hero-home);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-information-circle {
    --hero-information-circle: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22m11.25%2011.25.041-.02a.75.75%200%200%201%201.063.852l-.708%202.836a.75.75%200%200%200%201.063.853l.041-.021M21%2012a9%209%200%201%201-18%200%209%209%200%200%201%2018%200Zm-9-3.75h.008v.008H12V8.25Z%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-information-circle);
    mask: var(--hero-information-circle);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-link {
    --hero-link: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M13.19%208.688a4.5%204.5%200%200%201%201.242%207.244l-4.5%204.5a4.5%204.5%200%200%201-6.364-6.364l1.757-1.757m13.35-.622%201.757-1.757a4.5%204.5%200%200%200-6.364-6.364l-4.5%204.5a4.5%204.5%200%200%200%201.242%207.244%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-link);
    mask: var(--hero-link);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-rectangle-group {
    --hero-rectangle-group: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M2.25%207.125C2.25%206.504%202.754%206%203.375%206h6c.621%200%201.125.504%201.125%201.125v3.75c0%20.621-.504%201.125-1.125%201.125h-6a1.125%201.125%200%200%201-1.125-1.125v-3.75ZM14.25%208.625c0-.621.504-1.125%201.125-1.125h5.25c.621%200%201.125.504%201.125%201.125v8.25c0%20.621-.504%201.125-1.125%201.125h-5.25a1.125%201.125%200%200%201-1.125-1.125v-8.25ZM3.75%2016.125c0-.621.504-1.125%201.125-1.125h5.25c.621%200%201.125.504%201.125%201.125v2.25c0%20.621-.504%201.125-1.125%201.125h-5.25a1.125%201.125%200%200%201-1.125-1.125v-2.25Z%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-rectangle-group);
    mask: var(--hero-rectangle-group);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-table-cells {
    --hero-table-cells: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M3.375%2019.5h17.25m-17.25%200a1.125%201.125%200%200%201-1.125-1.125M3.375%2019.5h7.5c.621%200%201.125-.504%201.125-1.125m-9.75%200V5.625m0%2012.75v-1.5c0-.621.504-1.125%201.125-1.125m18.375%202.625V5.625m0%2012.75c0%20.621-.504%201.125-1.125%201.125m1.125-1.125v-1.5c0-.621-.504-1.125-1.125-1.125m0%203.75h-7.5A1.125%201.125%200%200%201%2012%2018.375m9.75-12.75c0-.621-.504-1.125-1.125-1.125H3.375c-.621%200-1.125.504-1.125%201.125m19.5%200v1.5c0%20.621-.504%201.125-1.125%201.125M2.25%205.625v1.5c0%20.621.504%201.125%201.125%201.125m0%200h17.25m-17.25%200h7.5c.621%200%201.125.504%201.125%201.125M3.375%208.25c-.621%200-1.125.504-1.125%201.125v1.5c0%20.621.504%201.125%201.125%201.125m17.25-3.75h-7.5c-.621%200-1.125.504-1.125%201.125m8.625-1.125c.621%200%201.125.504%201.125%201.125v1.5c0%20.621-.504%201.125-1.125%201.125m-17.25%200h7.5m-7.5%200c-.621%200-1.125.504-1.125%201.125v1.5c0%20.621.504%201.125%201.125%201.125M12%2010.875v-1.5m0%201.5c0%20.621-.504%201.125-1.125%201.125M12%2010.875c0%20.621.504%201.125%201.125%201.125m-2.25%200c.621%200%201.125.504%201.125%201.125M13.125%2012h7.5m-7.5%200c-.621%200-1.125.504-1.125%201.125M20.625%2012c.621%200%201.125.504%201.125%201.125v1.5c0%20.621-.504%201.125-1.125%201.125m-17.25%200h7.5M12%2014.625v-1.5m0%201.5c0%20.621-.504%201.125-1.125%201.125M12%2014.625c0%20.621.504%201.125%201.125%201.125m-2.25%200c.621%200%201.125.504%201.125%201.125m0%201.5v-1.5m0%200c0-.621.504-1.125%201.125-1.125m0%200h7.5%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-table-cells);
    mask: var(--hero-table-cells);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .hero-x-mark {
    --hero-x-mark: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M6%2018%2018%206M6%206l12%2012%22%2F%3E%3C%2Fsvg%3E');
    -webkit-mask: var(--hero-x-mark);
    mask: var(--hero-x-mark);
    mask-repeat: no-repeat;
    background-color: currentColor;
    vertical-align: middle;
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .table {
    display: table;
  }
  .size-3 {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .size-5 {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .w-0 {
    width: calc(var(--spacing) * 0);
  }
  .w-80 {
    width: calc(var(--spacing) * 80);
  }
  .w-full {
    width: 100%;
  }
  .max-w-80 {
    max-width: calc(var(--spacing) * 80);
  }
  .flex-1 {
    flex: 1;
  }
  .flex-none {
    flex: none;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .translate-y-0 {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-4 {
    --tw-translate-y: calc(var(--spacing) * 4);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .items-center {
    align-items: center;
  }
  .justify-between {
    justify-content: space-between;
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .self-start {
    align-self: flex-start;
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .leading-8 {
    --tw-leading: calc(var(--spacing) * 8);
    line-height: calc(var(--spacing) * 8);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .text-wrap {
    text-wrap: wrap;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-40 {
    opacity: 40%;
  }
  .opacity-100 {
    opacity: 100%;
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .ease-in {
    --tw-ease: var(--ease-in);
    transition-timing-function: var(--ease-in);
  }
  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .group-hover\:opacity-70 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        opacity: 70%;
      }
    }
  }
  .hover\:cursor-pointer {
    &:hover {
      @media (hover: hover) {
        cursor: pointer;
      }
    }
  }
  .motion-safe\:animate-spin {
    @media (prefers-reduced-motion: no-preference) {
      animation: var(--animate-spin);
    }
  }
  .sm\:w-96 {
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 96);
    }
  }
  .sm\:max-w-96 {
    @media (width >= 40rem) {
      max-width: calc(var(--spacing) * 96);
    }
  }
  .sm\:translate-y-0 {
    @media (width >= 40rem) {
      --tw-translate-y: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .sm\:scale-95 {
    @media (width >= 40rem) {
      --tw-scale-x: 95%;
      --tw-scale-y: 95%;
      --tw-scale-z: 95%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  .sm\:scale-100 {
    @media (width >= 40rem) {
      --tw-scale-x: 100%;
      --tw-scale-y: 100%;
      --tw-scale-z: 100%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
}
:root {
  --darkblue: #08244a;
  --blue: #2365c4;
  --blue-bright: #448bee;
  --blue-pale: #bad2f3;
  --blue-paler: #dce8f9;
  --blue-tint: #eef4fc;
  --green: #4abf4c;
  --green-pale: #c3eac3;
  --yellow: #f7b50f;
  --yellow-soft: #fde7b0;
  --orange: #ed6b0a;
  --red: #ea0f33;
  --red-soft: #fab2be;
  --fg: #08244a;
  --fg-2: #00000080;
  --fg-3: #808080;
  --border: #08244a29;
  --border-subtle: #08244a14;
  --shadow-sm: 0 2px 6px rgba(8,36,74,.08);
  --shadow-md: 0 6px 18px rgba(8,36,74,.10);
  --shadow-lg: 0 18px 40px rgba(8,36,74,.14);
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 20px;
  --side: 248px;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  background: var(--blue-tint);
  color: var(--fg);
  font: 15px/1.5 Inter,system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing: antialiased;
}
a {
  color: var(--blue);
}
a:hover {
  color: var(--darkblue);
}
button,input,select,textarea {
  font: inherit;
  color: inherit;
}
button {
  cursor: pointer;
}
:focus-visible {
  outline: 3px solid var(--blue-bright);
  outline-offset: 2px;
  border-radius: 6px;
}
[tabindex="-1"]:focus {
  outline: none;
}
.sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
.skip {
  position: absolute;
  left: -999px;
  top: 8px;
  background: #fff;
  padding: 8px 12px;
  z-index: 100;
}
.skip:focus {
  left: 8px;
}
.app {
  display: grid;
  grid-template-columns: var(--side) 1fr;
  min-height: 100vh;
}
.side {
  background: var(--darkblue);
  color: #fff;
  padding: 24px 16px;
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.brand small {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  opacity: .7;
  text-transform: uppercase;
}
.brand b {
  font-size: 22px;
  letter-spacing: -.01em;
}
.nav {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.nav-group {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .5;
  margin: 14px 12px 4px;
}
.nav a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  font-size: 15px;
}
.nav a:hover {
  background: rgba(255,255,255,.08);
}
.nav a[aria-current=page] {
  background: rgba(255,255,255,.16);
  font-weight: 600;
}
.nav svg {
  flex: none;
  width: 20px;
  height: 20px;
}
.tag {
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(255,255,255,.16);
  margin-left: auto;
  white-space: nowrap;
}
.tag.new {
  background: var(--green);
  color: var(--darkblue);
}
.side-foot {
  margin-top: auto;
  font-size: 12px;
  opacity: .7;
  padding: 0 12px;
}
.side-foot kbd {
  background: rgba(255,255,255,.16);
  border-radius: 4px;
  padding: 1px 6px;
  font: inherit;
  font-weight: 600;
}
.top {
  position: sticky;
  top: 0;
  z-index: 20;
  background: #fff;
  border-bottom: 1px solid var(--border-subtle);
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 32px;
}
.menu-btn {
  display: none;
  border: 0;
  background: none;
  padding: 6px;
}
.searchbtn {
  flex: 1;
  max-width: 520px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 10px 14px;
  background: #fff;
  color: var(--fg-3);
  text-align: left;
}
.searchbtn:hover {
  border-color: var(--blue);
}
.searchbtn kbd {
  margin-left: auto;
  font: 600 12px Inter;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 1px 6px;
  color: var(--fg-2);
}
.profile {
  display: flex;
  align-items: center;
  gap: 8px;
  background: var(--yellow-soft);
  border-radius: 10px;
  padding: 6px 6px 6px 12px;
  font-size: 12px;
  font-weight: 700;
}
.profile select {
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 6px 8px;
  background: #fff;
  font-size: 14px;
}
.user {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}
.avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--blue-paler);
  display: grid;
  place-items: center;
  font-weight: 700;
  font-size: 13px;
  flex: none;
}
.user b {
  display: block;
  font-size: 14px;
}
.user span {
  font-size: 12px;
  color: var(--fg-2);
}
main {
  padding: 32px;
  max-width: 1240px;
  width: 100%;
}
.crumbs {
  font-size: 13px;
  color: var(--fg-2);
  margin-bottom: 8px;
}
.crumbs a {
  color: inherit;
}
h1 {
  font-size: 32px;
  line-height: 1.15;
  letter-spacing: -.02em;
  margin: 0 0 8px;
}
h2 {
  font-size: 22px;
  letter-spacing: -.01em;
  margin: 32px 0 12px;
}
h3 {
  font-size: 17px;
  margin: 0 0 6px;
}
.lead {
  color: var(--fg-2);
  max-width: 760px;
  margin: 0 0 12px;
  font-size: 16px;
}
.meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 13px;
  color: var(--fg-2);
  align-items: center;
}
.pagehead {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 20px;
}
.card {
  background: #fff;
  border: 1px solid var(--border-subtle);
  border-radius: var(--r-md);
  padding: 20px;
  box-shadow: var(--shadow-sm);
}
.grid {
  display: grid;
  gap: 16px;
}
.g2 {
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.g3 {
  grid-template-columns: repeat(3,minmax(0,1fr));
}
.g4 {
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--darkblue);
  background: var(--darkblue);
  color: #fff;
  border-radius: 10px;
  padding: 10px 16px;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
}
.btn:hover {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
}
.btn.ghost {
  background: #fff;
  color: var(--darkblue);
  border-color: var(--border);
}
.btn.ghost:hover {
  border-color: var(--darkblue);
  color: var(--darkblue);
}
.btn.sm {
  padding: 6px 10px;
  font-size: 13px;
}
.btn.link {
  border: 0;
  background: none;
  color: var(--blue);
  padding: 4px 0;
}
.chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}
.chip::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--dot);
}
.chip.ok {
  background: var(--green-pale);
  --dot: var(--green);
}
.chip.wait {
  background: var(--yellow-soft);
  --dot: var(--yellow);
}
.chip.stop {
  background: var(--red-soft);
  --dot: var(--red);
}
.chip.info {
  background: var(--blue-paler);
  --dot: var(--blue);
}
.chip.none {
  background: var(--blue-tint);
  --dot: #08244a66;
}
.pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0;
}
.pill {
  border: 1px solid var(--border);
  background: #fff;
  border-radius: 999px;
  padding: 6px 14px;
  font-size: 14px;
  font-weight: 500;
}
.pill[aria-pressed=true] {
  background: var(--darkblue);
  border-color: var(--darkblue);
  color: #fff;
}
.tabs {
  display: flex;
  gap: 4px;
  border-bottom: 1px solid var(--border);
  margin: 8px 0 20px;
  overflow-x: auto;
}
.tabs a {
  padding: 10px 14px;
  text-decoration: none;
  color: var(--fg);
  font-weight: 500;
  border-bottom: 3px solid transparent;
  white-space: nowrap;
}
.tabs a[aria-selected=true] {
  border-color: var(--blue);
  font-weight: 700;
}
.field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px;
}
.field label,.label {
  font-size: 13px;
  font-weight: 600;
}
.input,select.input,textarea.input {
  border: 1px solid var(--border);
  border-radius: var(--r-sm);
  padding: 10px 12px;
  background: #fff;
  width: 100%;
}
.input:focus {
  border-color: var(--blue);
  outline: none;
  box-shadow: 0 0 0 3px var(--blue-paler);
}
.hint {
  font-size: 12px;
  color: var(--fg-2);
}
.err {
  background: var(--red-soft);
  border-radius: var(--r-sm);
  padding: 10px 12px;
  font-weight: 600;
  font-size: 14px;
  margin-bottom: 12px;
}
.note {
  background: var(--yellow-soft);
  border-radius: var(--r-sm);
  padding: 10px 14px;
  font-size: 14px;
}
.note.info {
  background: var(--blue-paler);
}
table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
th {
  text-align: left;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--fg-2);
  font-weight: 700;
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
}
td {
  padding: 12px;
  border-bottom: 1px solid var(--border-subtle);
  vertical-align: top;
}
tr.click {
  cursor: pointer;
}
tr.click:hover td {
  background: var(--blue-tint);
}
.tablewrap {
  overflow-x: auto;
  background: #fff;
  border: 1px solid var(--border-subtle);
  border-radius: var(--r-md);
}
.empty {
  text-align: center;
  padding: 40px 20px;
  color: var(--fg-2);
}
.muted {
  color: var(--fg-2);
}
.row {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}
.spacer {
  flex: 1;
}
.hero {
  background: linear-gradient(135deg,#0b2a55 0%,#1a4c94 60%,#2365c4 100%);
  color: #fff;
  border-radius: var(--r-lg);
  padding: 40px;
  position: relative;
  overflow: hidden;
}
.hero small {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  opacity: .8;
}
.hero h1 {
  font-size: 40px;
  max-width: 760px;
  margin: 12px 0;
}
.hero p {
  opacity: .85;
  max-width: 640px;
  font-size: 17px;
  margin: 0 0 20px;
}
.chain {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.chain a {
  color: #fff;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.35);
  background: rgba(255,255,255,.12);
  border-radius: 999px;
  padding: 6px 14px;
  font-weight: 600;
  font-size: 14px;
}
.chain a:hover {
  background: rgba(255,255,255,.25);
}
.chain span {
  opacity: .7;
}
.kpi {
  display: flex;
  flex-direction: column;
  gap: 4px;
  text-decoration: none;
  color: inherit;
}
.kpi .k-label {
  font-size: 13px;
  color: var(--fg-2);
  font-weight: 600;
}
.kpi .k-val {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.1;
}
.kpi .k-val small {
  font-size: 14px;
  font-weight: 600;
  color: var(--fg-2);
}
.kpi .k-foot {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  font-size: 12px;
  color: var(--fg-2);
}
a.card:hover,button.card:hover {
  border-color: var(--blue);
  box-shadow: var(--shadow-md);
}
a.card {
  text-decoration: none;
  color: inherit;
  display: block;
}
.sec-card {
  display: flex;
  gap: 14px;
  align-items: center;
}
.sec-card h3 {
  margin: 0;
}
.sec-card .ico {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--blue-tint);
  display: grid;
  place-items: center;
  flex: none;
}
.sec-card p {
  margin: 0;
  color: var(--fg-2);
  font-size: 14px;
}
.bar {
  height: 8px;
  border-radius: 999px;
  background: var(--blue-paler);
  overflow: hidden;
  position: relative;
}
.bar i {
  display: block;
  height: 100%;
  background: var(--blue);
  border-radius: 999px;
}
.bar b {
  position: absolute;
  top: -3px;
  bottom: -3px;
  width: 2px;
  background: var(--darkblue);
}
.stale {
  border-left: 4px solid var(--yellow);
}
.flowstrip {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 0;
  background: #fff;
  border: 1px solid var(--border-subtle);
  border-radius: var(--r-md);
  overflow: hidden;
}
.flowstrip a {
  padding: 16px;
  text-decoration: none;
  color: inherit;
  border-right: 1px solid var(--border-subtle);
  position: relative;
}
.flowstrip a:last-child {
  border-right: 0;
}
.flowstrip a:hover {
  background: var(--blue-tint);
}
.flowstrip a[aria-current=true] {
  background: var(--blue-paler);
}
.flowstrip .st {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--fg-2);
}
.flowstrip .v {
  font-size: 22px;
  font-weight: 800;
  margin-top: 4px;
}
.flowstrip .s {
  font-size: 12px;
  color: var(--fg-2);
}
.src {
  font-size: 12px;
  color: var(--fg-2);
  border-top: 1px dashed var(--border);
  margin-top: 12px;
  padding-top: 10px;
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  align-items: center;
}
.alert {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px 0;
  border-bottom: 1px solid var(--border-subtle);
}
.alert:last-child {
  border-bottom: 0;
}
.proc {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 20px;
  align-items: start;
}
.mlist {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mitem {
  text-align: left;
  background: #fff;
  border: 1px solid var(--border-subtle);
  border-radius: var(--r-md);
  padding: 12px 14px;
  width: 100%;
}
.mitem[aria-current=true] {
  border-color: var(--blue);
  background: var(--blue-paler);
}
.mitem:hover {
  border-color: var(--blue);
}
.mitem b {
  display: block;
  font-size: 15px;
}
.mitem span {
  font-size: 13px;
  color: var(--fg-2);
}
.teampill {
  display: inline-block;
  border-radius: 999px;
  padding: 1px 8px;
  font-size: 11px;
  font-weight: 700;
  background: var(--tbg);
  color: var(--tfg);
}
.steps {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 4px 2px 12px;
  scroll-snap-type: x mandatory;
}
.step {
  flex: 0 0 180px;
  scroll-snap-align: start;
  text-align: left;
  border: 1px solid var(--border);
  background: #fff;
  border-radius: var(--r-md);
  padding: 12px;
  position: relative;
}
.step[aria-current=true] {
  background: var(--darkblue);
  color: #fff;
  border-color: var(--darkblue);
}
.step .n {
  font-size: 12px;
  font-weight: 700;
  opacity: .7;
}
.step b {
  display: block;
  font-size: 14px;
  margin: 2px 0 8px;
  line-height: 1.3;
}
.step .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--tbg);
  margin-right: 6px;
  vertical-align: middle;
}
.step small {
  font-size: 12px;
  opacity: .8;
}
.kv {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 10px 16px;
  font-size: 14px;
}
.kv dt {
  font-weight: 600;
  color: var(--fg-2);
}
.kv dd {
  margin: 0;
}
.kv ul {
  margin: 0;
  padding-left: 18px;
}
.vazio {
  color: var(--fg-3);
  font-style: italic;
}
.timeline {
  list-style: none;
  padding: 0;
  margin: 0;
}
.timeline li {
  padding: 10px 0 10px 18px;
  border-left: 2px solid var(--blue-paler);
  position: relative;
  font-size: 14px;
}
.timeline li::before {
  content: "";
  position: absolute;
  left: -6px;
  top: 15px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--blue);
}
.org-area {
  margin-bottom: 20px;
}
.org-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
  border-bottom: 2px solid var(--darkblue);
  padding-bottom: 8px;
  margin-bottom: 12px;
}
.team {
  background: var(--blue-tint);
  border-radius: var(--r-sm);
  padding: 10px 12px;
  font-size: 14px;
}
.team b {
  display: block;
  font-size: 13px;
}
.person {
  display: flex;
  gap: 12px;
  align-items: center;
}
.pal-back {
  position: fixed;
  inset: 0;
  background: #08244a99;
  z-index: 50;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding: 10vh 16px;
}
.pal {
  background: #fff;
  border-radius: var(--r-lg);
  width: 100%;
  max-width: 640px;
  box-shadow: var(--shadow-lg);
  overflow: hidden;
}
.pal input {
  border: 0;
  border-bottom: 1px solid var(--border);
  width: 100%;
  padding: 18px 20px;
  font-size: 17px;
  outline: none;
}
.pal ul {
  list-style: none;
  margin: 0;
  padding: 8px;
  max-height: 56vh;
  overflow: auto;
}
.pal li a {
  display: block;
  padding: 10px 12px;
  border-radius: 10px;
  text-decoration: none;
  color: inherit;
}
.pal li a[aria-selected=true] {
  background: var(--blue-paler);
}
.pal li small {
  display: block;
  font-size: 12px;
  color: var(--fg-2);
}
.pal li mark {
  background: var(--yellow-soft);
  color: inherit;
  border-radius: 3px;
}
.pal .foot {
  display: flex;
  gap: 16px;
  font-size: 12px;
  color: var(--fg-2);
  padding: 10px 20px;
  border-top: 1px solid var(--border-subtle);
}
.toast {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--darkblue);
  color: #fff;
  padding: 12px 20px;
  border-radius: 12px;
  box-shadow: var(--shadow-lg);
  z-index: 60;
  font-weight: 600;
  font-size: 14px;
  display: flex;
  gap: 12px;
  align-items: center;
}
.toast button {
  background: none;
  border: 0;
  color: var(--blue-pale);
  font-weight: 700;
  padding: 0;
}
.fab {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 30;
  border-radius: 999px;
  box-shadow: var(--shadow-lg);
}
@media (max-width:1100px) {
  .g4 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .proc {
    grid-template-columns: 1fr;
  }
  .flowstrip {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .flowstrip a {
    border-bottom: 1px solid var(--border-subtle);
  }
}
@media (max-width:860px) {
  .app {
    grid-template-columns: 1fr;
  }
  .side {
    position: fixed;
    inset: 0 auto 0 0;
    width: 280px;
    z-index: 40;
    transform: translateX(-100%);
    transition: transform .2s;
  }
  .app.open .side {
    transform: none;
  }
  .app.open::after {
    content: "";
    position: fixed;
    inset: 0;
    background: #08244a66;
    z-index: 35;
  }
  .menu-btn {
    display: block;
  }
  .top {
    padding: 12px 16px;
    flex-wrap: wrap;
  }
  .profile {
    order: 3;
    width: 100%;
    justify-content: space-between;
  }
  .user div {
    display: none;
  }
  main {
    padding: 20px 16px;
  }
  .g2,.g3,.g4 {
    grid-template-columns: 1fr;
  }
  .hero {
    padding: 28px 20px;
  }
  .hero h1 {
    font-size: 28px;
  }
  .kv {
    grid-template-columns: 1fr;
  }
  .pagehead {
    flex-direction: column;
  }
}
@media (prefers-reduced-motion:reduce) {
  * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}
.kpi .k-label {
  display: flex;
  align-items: center;
  gap: 8px;
}
.kpi .k-src {
  margin-left: auto;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid var(--border);
  display: grid;
  place-items: center;
  font: 700 11px Inter;
  color: var(--fg-3);
  text-decoration: none;
  cursor: help;
  flex: none;
}
.kpi .k-src:hover {
  border-color: var(--blue);
  color: var(--blue);
}
.dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex: none;
  background: #08244a66;
}
.dot.ok {
  background: var(--green);
}
.dot.wait {
  background: var(--yellow);
}
.dot.stop {
  background: var(--red);
}
.dot.info {
  background: var(--blue);
}
.alert {
  align-items: center;
  padding: 12px 0;
}
a.alert {
  text-decoration: none;
  color: inherit;
}
a.alert:hover b {
  color: var(--blue);
}
.flowstrip .s {
  display: none;
}
.filters {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin: 16px 0;
}
.filter {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  background: #fff;
  border: 1px solid var(--border-subtle);
  border-radius: 10px;
  padding: 6px 6px 6px 12px;
}
.filter select {
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 6px 8px;
  background: #fff;
  font-size: 14px;
  font-weight: 600;
}
.org-top {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}
.org-node {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 14px 20px;
}
.org-node small {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--fg-2);
}
.org-node b {
  font-size: 18px;
}
.org-node.dark {
  background: var(--darkblue);
  border-color: var(--darkblue);
  color: #fff;
}
.org-node.dark small {
  color: #ffffffb3;
}
.org-areas {
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(320px,1fr));
  gap: 20px;
  align-items: start;
}
.org-card {
  border-radius: var(--r-lg);
  padding: 24px;
}
.org-area-name {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--blue);
}
.org-lead {
  font-size: 22px;
  margin: 4px 0 2px;
}
.org-group {
  border-top: 1px solid var(--border-subtle);
  margin-top: 16px;
  padding-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.org-group h4 {
  margin: 0;
  font-size: 17px;
}
.org-group p {
  margin: 0;
  font-size: 14px;
}
.org-group .team b {
  color: var(--blue);
}
.segmented {
  display: flex;
  gap: 4px;
  background: #fff;
  border: 1px solid var(--border-subtle);
  border-radius: 12px;
  padding: 4px;
  overflow-x: auto;
  margin-bottom: 12px;
}
.segmented a {
  flex: 1;
  text-align: center;
  white-space: nowrap;
  padding: 10px 14px;
  border-radius: 9px;
  text-decoration: none;
  color: var(--fg);
  font-weight: 600;
  font-size: 14px;
}
.segmented a:hover {
  background: var(--blue-tint);
}
.segmented a[aria-selected=true] {
  background: var(--darkblue);
  color: #fff;
}
.legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 12px;
  color: var(--fg-2);
  margin: 0 0 12px;
}
.legend>span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.kpi .k-date {
  font-size: 12px;
  color: var(--fg-3);
}
.app>div {
  min-width: 0;
}
.hw-banner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 32px;
  border-radius: 32px;
  background: var(--darkblue);
  color: #fff;
  margin-bottom: 24px;
}
.hw-banner>div {
  flex: 1 1 360px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.hw-banner h2 {
  margin: 0;
  font-size: 28px;
  letter-spacing: -.02em;
  color: #fff;
}
.hw-banner p {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(255,255,255,.88);
}
.hw-banner-cta {
  background: #fff;
  color: var(--darkblue);
  border-color: #fff;
  min-height: 48px;
  padding: 0 24px;
  font-size: 15px;
}
.hw-banner-cta:hover {
  background: var(--blue-tint);
  color: var(--darkblue);
}
h1, h2, h3, h4 {
  font-weight: 700;
}
a.mitem, a.step {
  display: block;
  color: inherit;
  text-decoration: none;
}
a.step[aria-current=true] {
  color: #fff;
}
[data-phx-session], [data-phx-teleported-src] {
  display: contents;
}
main.login {
  min-height: 100vh;
  max-width: none;
  padding: 24px;
  display: grid;
  place-content: center;
  justify-items: center;
}
.login-card {
  width: min(100%, 400px);
  padding: 36px 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}
.login-card .brand b {
  display: block;
  font-size: 28px;
}
.login-card .hint {
  margin: 0;
  font-size: 14px;
}
.gbtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  color: var(--fg);
  font-weight: 600;
  font-size: 15px;
  text-decoration: none;
}
.gbtn:hover {
  border-color: var(--blue);
  box-shadow: var(--shadow-sm);
  color: var(--fg);
}
.gbtn svg {
  width: 20px;
  height: 20px;
  flex: none;
}
.login-foot {
  margin: 16px 0 0;
  font-size: 12px;
  color: var(--fg-3);
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@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-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}
