/* Généré par vendor/littlefoot/core/bin/legacy-css.mjs depuis app.css : ne pas modifier.
   Anciens navigateurs seulement (iOS 12 / Safari 12…) ; les navigateurs récents ignorent ce fichier. */
@supports not (color: color-mix(in srgb, red, red)) {
    *, ::before, ::after {
        --tw-space-y-reverse: 0;
        --tw-divide-y-reverse: 0;
        --tw-border-style: solid;
        --tw-font-weight: initial;
        --tw-outline-style: solid;
        --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;
        --tw-leading: initial;
        --tw-tracking: initial;
        --tw-duration: initial;
        --tw-ordinal: initial;
        --tw-slashed-zero: initial;
        --tw-numeric-figure: initial;
        --tw-numeric-spacing: initial;
        --tw-numeric-fraction: initial
    }
    :root, :host {
        --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
      "Noto Sans", Arial, 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;
        --color-white: #fff;
        --spacing: 0.25rem;
        --container-sm: 24rem;
        --container-md: 28rem;
        --text-xs: 0.75rem;
        --text-xs--line-height: calc(1 / 0.75);
        --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-xl: 1.25rem;
        --text-xl--line-height: calc(1.75 / 1.25);
        --text-2xl: 1.5rem;
        --text-2xl--line-height: calc(2 / 1.5);
        --text-3xl: 1.875rem;
        --text-3xl--line-height: calc(2.25 / 1.875);
        --font-weight-normal: 400;
        --font-weight-medium: 500;
        --font-weight-semibold: 600;
        --tracking-wide: 0.025em;
        --tracking-widest: 0.1em;
        --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);
        --color-page: #f8fafc;
        --color-surface: #ffffff;
        --color-surface-sunk: #f1f5f9;
        --color-ink: #0f172a;
        --color-ink-muted: #475569;
        --color-ink-subtle: #94a3b8;
        --color-line: #e2e8f0;
        --color-line-strong: #cbd5e1;
        --color-primary: #ae6400;
        --color-primary-strong: #8f5200;
        --color-primary-soft: #f9eede;
        --color-on-primary: #ffffff;
        --color-brand: #d47a00;
        --color-on-brand: var(--color-on-primary);
        --color-success: #047857;
        --color-success-soft: #d1fae5;
        --color-warning: #b45309;
        --color-warning-soft: #fef3c7;
        --color-danger: #b91c1c;
        --color-danger-soft: #fee2e2;
        --color-info: #1d4ed8;
        --color-info-soft: #dbeafe;
        --color-amount-positive: var(--color-success);
        --color-amount-negative: var(--color-ink);
        --color-nav: var(--color-surface);
        --color-nav-ink: var(--color-ink);
        --color-nav-muted: var(--color-ink-muted);
        --color-nav-hover: var(--color-surface-sunk);
        --color-nav-section: #f7fafc;
        --color-nav-active: var(--color-primary-soft);
        --color-nav-active-ink: var(--color-primary-strong);
        --color-nav-line: var(--color-line);
        --color-auth-button: var(--color-primary);
        --color-auth-button-strong: var(--color-primary-strong);
        --color-on-auth-button: var(--color-on-primary);
        --color-auth-accent: var(--color-primary);
        --spacing-sidebar: 15rem;
        --radius-box: 0.75rem;
        --radius-control: 0.5rem
    }
    *:not(#\#), :not(#\#)::after, :not(#\#)::before {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        border: 0 solid
    }
    html:not(#\#), :host:not(#\#) {
        line-height: 1.5;
        -webkit-text-size-adjust: 100%;
        tab-size: 4;
        font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:not(#\#) {
        height: 0;
        color: inherit;
        border-top-width: 1px
    }
    abbr[title]:not(#\#) {
        -webkit-text-decoration: underline dotted;
        text-decoration: underline dotted
    }
    h1:not(#\#), h2:not(#\#), h3:not(#\#), h4:not(#\#), h5:not(#\#), h6:not(#\#) {
        font-size: inherit;
        font-weight: inherit
    }
    a:not(#\#) {
        color: inherit;
        -webkit-text-decoration: inherit;
        text-decoration: inherit
    }
    b:not(#\#), strong:not(#\#) {
        font-weight: bolder
    }
    code:not(#\#), kbd:not(#\#), samp:not(#\#), pre:not(#\#) {
        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:not(#\#) {
        font-size: 80%
    }
    sub:not(#\#), sup:not(#\#) {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: baseline
    }
    sub:not(#\#) {
        bottom: -0.25em
    }
    sup:not(#\#) {
        top: -0.5em
    }
    table:not(#\#) {
        text-indent: 0;
        border-color: inherit;
        border-collapse: collapse
    }
    progress:not(#\#) {
        vertical-align: baseline
    }
    summary:not(#\#) {
        display: list-item
    }
    ol:not(#\#), ul:not(#\#), menu:not(#\#) {
        list-style: none
    }
    img:not(#\#), svg:not(#\#), video:not(#\#), canvas:not(#\#), audio:not(#\#), iframe:not(#\#), embed:not(#\#), object:not(#\#) {
        display: block;
        vertical-align: middle
    }
    img:not(#\#), video:not(#\#) {
        max-width: 100%;
        height: auto
    }
    button:not(#\#), input:not(#\#), select:not(#\#), optgroup:not(#\#), textarea:not(#\#) {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        border-radius: 0;
        background-color: transparent;
        opacity: 1
    }
    select:matches([multiple], [size]) optgroup:not(#\#) {
        font-weight: bolder
    }
    select:matches([multiple], [size]) optgroup option:not(#\#) {
        padding-left: 20px
    }
    :not(#\#)::placeholder {
        opacity: 1
    }
    @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
        :not(#\#)::placeholder {
            color: currentcolor
        }
    }
    textarea:not(#\#) {
        resize: vertical
    }
    :not(#\#)::-webkit-search-decoration {
        -webkit-appearance: none
    }
    :not(#\#)::-webkit-date-and-time-value {
        min-height: 1lh;
        text-align: inherit
    }
    :not(#\#)::-webkit-datetime-edit {
        display: inline-flex
    }
    :not(#\#)::-webkit-datetime-edit-fields-wrapper {
        padding: 0
    }
    :not(#\#)::-webkit-datetime-edit, :not(#\#)::-webkit-datetime-edit-year-field, :not(#\#)::-webkit-datetime-edit-month-field, :not(#\#)::-webkit-datetime-edit-day-field, :not(#\#)::-webkit-datetime-edit-hour-field, :not(#\#)::-webkit-datetime-edit-minute-field, :not(#\#)::-webkit-datetime-edit-second-field, :not(#\#)::-webkit-datetime-edit-millisecond-field, :not(#\#)::-webkit-datetime-edit-meridiem-field {
        padding-top: 0;
        padding-bottom: 0
    }
    :not(#\#)::-webkit-calendar-picker-indicator {
        line-height: 1
    }
    button:not(#\#), input:matches([type="button"], [type="reset"], [type="submit"]):not(#\#) {
    -webkit-appearance: button;
            appearance: button
    }
    :not(#\#)::-webkit-inner-spin-button, :not(#\#)::-webkit-outer-spin-button {
        height: auto
    }
    [hidden]:not([hidden="until-found"]):not(#\#) {
        display: none !important
    }
    .sr-only:not(#\#):not(#\#):not(#\#) {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
    -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
        white-space: nowrap;
        border-width: 0
    }
    .static:not(#\#):not(#\#):not(#\#) {
        position: static
    }
    .mt-3:not(#\#):not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * 3)
    }
    .mt-5:not(#\#):not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * 5)
    }
    .mr-1:not(#\#):not(#\#):not(#\#) {
        margin-right: var(--spacing)
    }
    .mb-1:not(#\#):not(#\#):not(#\#) {
        margin-bottom: var(--spacing)
    }
    .mb-2:not(#\#):not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 2)
    }
    .mb-3:not(#\#):not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 3)
    }
    .mb-4:not(#\#):not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 4)
    }
    .mb-5:not(#\#):not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 5)
    }
    .block:not(#\#):not(#\#):not(#\#) {
        display: block
    }
    .flex:not(#\#):not(#\#):not(#\#) {
        display: flex
    }
    .grid:not(#\#):not(#\#):not(#\#) {
        display: grid
    }
    .hidden:not(#\#):not(#\#):not(#\#) {
        display: none
    }
    .inline:not(#\#):not(#\#):not(#\#) {
        display: inline
    }
    .table:not(#\#):not(#\#):not(#\#) {
        display: table
    }
    .w-auto:not(#\#):not(#\#):not(#\#) {
        width: auto
    }
    .min-w-0:not(#\#):not(#\#):not(#\#) {
        min-width: 0px
    }
    .flex-1:not(#\#):not(#\#):not(#\#) {
        flex: 1
    }
    .list-decimal:not(#\#):not(#\#):not(#\#) {
        list-style-type: decimal
    }
    .flex-col:not(#\#):not(#\#):not(#\#) {
        flex-direction: column
    }
    .flex-wrap:not(#\#):not(#\#):not(#\#) {
        flex-wrap: wrap
    }
    .items-center:not(#\#):not(#\#):not(#\#) {
        align-items: center
    }
    .items-start:not(#\#):not(#\#):not(#\#) {
        align-items: flex-start
    }
    .justify-between:not(#\#):not(#\#):not(#\#) {
        justify-content: space-between
    }
    .gap-2:not(#\#):not(#\#):not(#\#) {
        gap: calc(var(--spacing) * 2)
    }
    .gap-3:not(#\#):not(#\#):not(#\#) {
        gap: calc(var(--spacing) * 3)
    }
    .gap-4:not(#\#):not(#\#):not(#\#) {
        gap: calc(var(--spacing) * 4)
    }
    .gap-5:not(#\#):not(#\#):not(#\#) {
        gap: calc(var(--spacing) * 5)
    }
    .gap-6:not(#\#):not(#\#):not(#\#) {
        gap: calc(var(--spacing) * 6)
    }
    .space-y-1 > :not(:last-child):not(#\#):not(#\#):not(#\#) {
        --tw-space-y-reverse: 0;
        margin-top: calc(var(--spacing) * var(--tw-space-y-reverse));
        margin-bottom: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))
    }
    .space-y-2 > :not(:last-child):not(#\#):not(#\#):not(#\#) {
        --tw-space-y-reverse: 0;
        margin-top: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
        margin-bottom: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))
    }
    .space-y-3 > :not(:last-child):not(#\#):not(#\#):not(#\#) {
        --tw-space-y-reverse: 0;
        margin-top: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
        margin-bottom: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))
    }
    .space-y-4 > :not(:last-child):not(#\#):not(#\#):not(#\#) {
        --tw-space-y-reverse: 0;
        margin-top: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
        margin-bottom: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))
    }
    .divide-y > :not(:last-child):not(#\#):not(#\#):not(#\#) {
        --tw-divide-y-reverse: 0;
        border-bottom-style: var(--tw-border-style);
        border-top-style: var(--tw-border-style);
        border-top-width: calc(1px * var(--tw-divide-y-reverse));
        border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)))
    }
    .divide-line > :not(:last-child):not(#\#):not(#\#):not(#\#) {
        border-color: var(--color-line)
    }
    .self-center:not(#\#):not(#\#):not(#\#) {
        align-self: center
    }
    .border-t:not(#\#):not(#\#):not(#\#) {
        border-top-style: var(--tw-border-style);
        border-top-width: 1px
    }
    .border-line:not(#\#):not(#\#):not(#\#) {
        border-color: var(--color-line)
    }
    .bg-\(--card-bg\):not(#\#):not(#\#):not(#\#) {
        background-color: var(--card-bg)
    }
    .px-4:not(#\#):not(#\#):not(#\#) {
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4)
    }
    .py-2:not(#\#):not(#\#):not(#\#) {
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2)
    }
    .py-3:not(#\#):not(#\#):not(#\#) {
        padding-top: calc(var(--spacing) * 3);
        padding-bottom: calc(var(--spacing) * 3)
    }
    .pt-4:not(#\#):not(#\#):not(#\#) {
        padding-top: calc(var(--spacing) * 4)
    }
    .pl-5:not(#\#):not(#\#):not(#\#) {
        padding-left: calc(var(--spacing) * 5)
    }
    .text-right:not(#\#):not(#\#):not(#\#) {
        text-align: right
    }
    .text-sm:not(#\#):not(#\#):not(#\#) {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }
    .text-xs:not(#\#):not(#\#):not(#\#) {
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height))
    }
    .font-medium:not(#\#):not(#\#):not(#\#) {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium)
    }
    .font-normal:not(#\#):not(#\#):not(#\#) {
        --tw-font-weight: var(--font-weight-normal);
        font-weight: var(--font-weight-normal)
    }
    .font-semibold:not(#\#):not(#\#):not(#\#) {
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold)
    }
    .text-\(--card-fg\):not(#\#):not(#\#):not(#\#) {
        color: var(--card-fg)
    }
    .text-ink-muted:not(#\#):not(#\#):not(#\#) {
        color: var(--color-ink-muted)
    }
    .text-ink-subtle:not(#\#):not(#\#):not(#\#) {
        color: var(--color-ink-subtle)
    }
    .text-success:not(#\#):not(#\#):not(#\#) {
        color: var(--color-success)
    }
    .text-warning:not(#\#):not(#\#):not(#\#) {
        color: var(--color-warning)
    }
    @media (min-width: 40rem) {
        .sm\:flex-row:not(#\#):not(#\#):not(#\#) {
            flex-direction: row
        }
        .sm\:items-start:not(#\#):not(#\#):not(#\#) {
            align-items: flex-start
        }
    }
    @media (min-width: 48rem) {
        .md\:grid-cols-2:not(#\#):not(#\#):not(#\#) {
            grid-template-columns: repeat(2, minmax(0, 1fr))
        }
    }
    @media (min-width: 64rem) {
        .lg\:col-span-2:not(#\#):not(#\#):not(#\#) {
            grid-column: span 2 / span 2
        }
        .lg\:w-1\/2:not(#\#):not(#\#):not(#\#) {
            width: calc(1 / 2 * 100%)
        }
        .lg\:grid-cols-2:not(#\#):not(#\#):not(#\#) {
            grid-template-columns: repeat(2, minmax(0, 1fr))
        }
    }
    @media (min-width: 80rem) {
        .xl\:grid-cols-3:not(#\#):not(#\#):not(#\#) {
            grid-template-columns: repeat(3, minmax(0, 1fr))
        }
    }
    html:not(#\#) {
        -webkit-text-size-adjust: 100%
    }
    body:not(#\#) {
        background-color: var(--color-page);
        color: var(--color-ink);
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale
    }
    a:not(#\#) {
        color: var(--color-primary)
    }
    @media (hover: hover) {
        a:hover:not(#\#) {
            color: var(--color-primary-strong)
        }
    }
    :focus:not(#\#) {
        outline-style: var(--tw-outline-style);
        outline-width: 2px;
        outline-offset: 2px;
        outline-color: var(--color-primary)
    }
    :not(#\#)::selection {
        background-color: var(--color-primary-soft)
    }
    .wrap:not(#\#):not(#\#) {
        width: 100%;
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4)
    }
    @media (min-width: 48rem) {
        .wrap:not(#\#):not(#\#) {
            padding-left: calc(var(--spacing) * 8);
            padding-right: calc(var(--spacing) * 8)
        }
    }
    .page-head:not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 6);
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        justify-content: space-between;
        gap: calc(var(--spacing) * 3)
    }
    .page-title:not(#\#):not(#\#) {
        font-size: var(--text-2xl);
        line-height: var(--tw-leading, var(--text-2xl--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold)
    }
    @media (min-width: 40rem) {
        .page-title:not(#\#):not(#\#) {
            font-size: var(--text-3xl);
            line-height: var(--tw-leading, var(--text-3xl--line-height))
        }
    }
    .section-title:not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 3);
        font-size: var(--text-lg);
        line-height: var(--tw-leading, var(--text-lg--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold)
    }
    .muted:not(#\#):not(#\#) {
        color: var(--color-ink-muted)
    }
    .app-body:not(#\#):not(#\#) {
        min-height: 100vh;
        background-color: var(--color-page)
    }
    .skip-link:not(#\#):not(#\#) {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
    -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
        white-space: nowrap;
        border-width: 0
    }
    .skip-link:focus:not(#\#):not(#\#) {
        position: static;
        width: auto;
        height: auto;
        padding: 0;
        margin: 0;
        overflow: visible;
    -webkit-clip-path: none;
            clip-path: none;
        white-space: normal
    }
    .skip-link:focus:not(#\#):not(#\#) {
        position: fixed
    }
    .skip-link:focus:not(#\#):not(#\#) {
        top: calc(var(--spacing) * 2)
    }
    .skip-link:focus:not(#\#):not(#\#) {
        left: calc(var(--spacing) * 2)
    }
    .skip-link:focus:not(#\#):not(#\#) {
        z-index: 50
    }
    .skip-link:focus:not(#\#):not(#\#) {
        border-radius: var(--radius-control)
    }
    .skip-link:focus:not(#\#):not(#\#) {
        background-color: var(--color-surface)
    }
    .skip-link:focus:not(#\#):not(#\#) {
        padding: calc(var(--spacing) * 2)
    }
    .app-shell:not(#\#):not(#\#) {
        display: flex;
        min-height: 100vh
    }
    .app-sidebar:not(#\#):not(#\#) {
        position: -webkit-sticky;
        position: sticky;
        top: 0px;
        display: none;
        height: 100vh;
        width: var(--spacing-sidebar);
        flex-shrink: 0;
        flex-direction: column;
        border-right-style: var(--tw-border-style);
        border-right-width: 1px;
        border-color: var(--color-nav-line);
        background-color: var(--color-nav);
        color: var(--color-nav-ink)
    }
    @media (min-width: 48rem) {
        .app-sidebar:not(#\#):not(#\#) {
            display: flex
        }
    }
    .app-brand:not(#\#):not(#\#) {
        display: block;
        padding-left: calc(var(--spacing) * 5);
        padding-right: calc(var(--spacing) * 5);
        padding-top: calc(var(--spacing) * 5);
        padding-bottom: calc(var(--spacing) * 4);
        font-size: var(--text-lg);
        line-height: var(--tw-leading, var(--text-lg--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        color: var(--color-nav-ink);
    -webkit-text-decoration-line: none;
            text-decoration-line: none
    }
    @media (hover: hover) {
        .app-brand:hover:not(#\#):not(#\#) {
            color: var(--color-nav-ink)
        }
    }
    .brand-logo:not(#\#):not(#\#) {
        display: inline-flex;
        align-items: center;
        gap: calc(var(--spacing) * 2.5);
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold)
    }
    .brand-icon:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 8);
        height: calc(var(--spacing) * 8);
        flex-shrink: 0
    }
    .app-nav:not(#\#):not(#\#) {
        display: flex;
        flex: 1;
        flex-direction: column;
        gap: calc(var(--spacing) * 0.5);
        overflow-y: auto;
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-bottom: calc(var(--spacing) * 4)
    }
    .nav-link:not(#\#):not(#\#) {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: calc(var(--spacing) * 2);
        border-radius: var(--radius-control);
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-nav-muted);
    -webkit-text-decoration-line: none;
            text-decoration-line: none
    }
    @media (hover: hover) {
        .nav-link:hover:not(#\#):not(#\#) {
            background-color: var(--color-nav-hover)
        }
        .nav-link:hover:not(#\#):not(#\#) {
            color: var(--color-nav-ink)
        }
    }
    .nav-link-active:not(#\#):not(#\#) {
        background-color: var(--color-nav-active);
        color: var(--color-nav-active-ink);
        --tw-shadow: inset 3px 0 0 var(--tw-shadow-color, var(--color-brand));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    @media (hover: hover) {
        .nav-link-active:hover:not(#\#):not(#\#) {
            background-color: var(--color-nav-active)
        }
        .nav-link-active:hover:not(#\#):not(#\#) {
            color: var(--color-nav-active-ink)
        }
    }
    .nav-section:not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * 2);
        border-radius: var(--radius-control)
    }
    .nav-section:first-child:not(#\#):not(#\#) {
        margin-top: 0px
    }
    .nav-section[open]:not(#\#):not(#\#) {
        background-color: var(--color-nav-section);
        padding-bottom: var(--spacing)
    }
    .nav-section-title:not(#\#):not(#\#) {
        display: flex;
        cursor: pointer;
        list-style-type: none;
        align-items: center;
        gap: calc(var(--spacing) * 2);
        border-radius: var(--radius-control);
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        --tw-leading: calc(var(--spacing) * 5);
        line-height: calc(var(--spacing) * 5);
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        --tw-tracking: var(--tracking-wide);
        letter-spacing: var(--tracking-wide);
        color: var(--color-nav-muted);
        text-transform: uppercase
    }
    @media (hover: hover) {
        .nav-section-title:hover:not(#\#):not(#\#) {
            color: var(--color-nav-ink)
        }
    }
    .nav-section-title:not(#\#):not(#\#)::-webkit-details-marker {
        display: none
    }
    .nav-section-title > span:first-child:not(#\#):not(#\#) {
        flex: 1
    }
    .nav-section:not([open]) > .nav-section-title .menu-caret:not(#\#):not(#\#) {
        transform: rotate(calc(90deg * -1))
    }
    .nav-section[open] > .nav-section-title .menu-caret:not(#\#):not(#\#) {
        transform: rotate(0deg)
    }
    .nav-section[open] > .nav-section-title .nav-section-badge:not(#\#):not(#\#) {
        display: none
    }
    .nav-section-items:not(#\#):not(#\#) {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing) * 0.5)
    }
    .menu-section-title:not(#\#):not(#\#) {
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 3);
        padding-bottom: var(--spacing);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        --tw-tracking: var(--tracking-wide);
        letter-spacing: var(--tracking-wide);
        color: var(--color-ink-subtle);
        text-transform: uppercase
    }
    .nav-label:not(#\#):not(#\#) {
        display: flex;
        min-width: 0px;
        align-items: center;
        gap: calc(var(--spacing) * 3)
    }
    .nav-icon:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 6);
        height: calc(var(--spacing) * 6);
        flex-shrink: 0;
        object-fit: contain
    }
    .nav-badge:not(#\#):not(#\#) {
        display: inline-flex;
        min-width: calc(var(--spacing) * 5);
        align-items: center;
        justify-content: center;
        border-radius: 9999px;
        background-color: var(--color-danger);
        padding-left: calc(var(--spacing) * 1.5);
        padding-right: calc(var(--spacing) * 1.5);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        color: var(--color-white)
    }
    .app-nav-pinned:not(#\#):not(#\#) {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing) * 0.5);
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
        border-color: var(--color-nav-line);
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2)
    }
    .menu-separator:not(#\#):not(#\#) {
        margin-top: var(--spacing);
        margin-bottom: var(--spacing);
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
        border-color: var(--color-line)
    }
    .app-account:not(#\#):not(#\#) {
        position: relative;
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
        border-color: var(--color-nav-line);
        padding: calc(var(--spacing) * 3)
    }
    .account-trigger:not(#\#):not(#\#) {
        display: flex;
        cursor: pointer;
        list-style-type: none;
        align-items: center;
        gap: calc(var(--spacing) * 3);
        border-radius: var(--radius-control);
        padding-left: calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 2);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        color: var(--color-nav-ink)
    }
    @media (hover: hover) {
        .account-trigger:hover:not(#\#):not(#\#) {
            background-color: var(--color-nav-hover)
        }
    }
    .account-trigger:not(#\#):not(#\#)::-webkit-details-marker {
        display: none
    }
    .account-text:not(#\#):not(#\#) {
        display: flex;
        min-width: 0px;
        flex: 1;
        flex-direction: column;
        text-align: left
    }
    .account-name:not(#\#):not(#\#) {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium)
    }
    .account-detail:not(#\#):not(#\#) {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        color: var(--color-nav-muted)
    }
    .menu-caret:not(#\#):not(#\#) {
        display: inline-block;
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        color: var(--color-nav-muted);
        transition-property: transform, translate, scale, rotate;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration))
    }
    details[open] > summary .menu-caret:not(#\#):not(#\#) {
        transform: rotate(180deg)
    }
    .avatar:not(#\#):not(#\#) {
        display: flex;
        width: calc(var(--spacing) * 8);
        height: calc(var(--spacing) * 8);
        flex-shrink: 0;
        align-items: center;
        justify-content: center;
        border-radius: 9999px;
        background-color: var(--color-brand);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        color: var(--color-on-brand)
    }
    .app-main:not(#\#):not(#\#) {
        display: flex;
        min-width: 0px;
        flex: 1;
        flex-direction: column;
        padding-bottom: calc(var(--spacing) * 16)
    }
    @media (min-width: 48rem) {
        .app-main:not(#\#):not(#\#) {
            padding-bottom: 0px
        }
    }
    .app-content:not(#\#):not(#\#) {
        width: 100%;
        flex: 1;
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 5);
        padding-bottom: calc(var(--spacing) * 5)
    }
    @media (min-width: 48rem) {
        .app-content:not(#\#):not(#\#) {
            padding-left: calc(var(--spacing) * 8);
            padding-right: calc(var(--spacing) * 8)
        }
        .app-content:not(#\#):not(#\#) {
            padding-top: calc(var(--spacing) * 8);
            padding-bottom: calc(var(--spacing) * 8)
        }
    }
    .app-footer:not(#\#):not(#\#) {
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 4);
        padding-bottom: calc(var(--spacing) * 4);
        text-align: center;
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        color: var(--color-ink-subtle)
    }
    .app-body-full .app-shell:not(#\#):not(#\#) {
        height: 100vh;
        overflow: hidden
    }
    .app-body-full .app-main:not(#\#):not(#\#) {
        min-height: 0px
    }
    .app-body-full .app-content:not(#\#):not(#\#) {
        position: relative;
        min-height: 0px;
        padding: 0px
    }
    @media (min-width: 48rem) {
        .app-body-full .app-content:not(#\#):not(#\#) {
            padding: 0px
        }
    }
    .app-body-full .app-footer:not(#\#):not(#\#) {
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2)
    }
    .app-tabs:not(#\#):not(#\#) {
        position: -webkit-sticky;
        position: sticky;
        top: 0px;
        z-index: 30;
        display: flex;
        flex-shrink: 0;
        gap: var(--spacing);
        overflow-x: auto;
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
        border-color: var(--color-line);
        background-color: var(--color-page);
        padding-left: calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 2);
        padding-top: calc(var(--spacing) * 2)
    }
    @media (min-width: 48rem) {
        .app-tabs:not(#\#):not(#\#) {
            padding-left: calc(var(--spacing) * 4);
            padding-right: calc(var(--spacing) * 4)
        }
    }
    .app-tab:not(#\#):not(#\#) {
        display: flex;
        max-width: calc(var(--spacing) * 60);
        flex-shrink: 0;
        align-items: center;
        border-top-left-radius: var(--radius-control);
        border-top-right-radius: var(--radius-control);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 0px;
        border-color: var(--color-line);
        background-color: var(--color-surface-sunk);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        color: var(--color-ink-muted)
    }
    .app-tab-active:not(#\#):not(#\#) {
        background-color: var(--color-surface);
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-ink)
    }
    .app-tab-label:not(#\#):not(#\#) {
        cursor: pointer;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        padding-top: calc(var(--spacing) * 1.5);
        padding-bottom: calc(var(--spacing) * 1.5);
        padding-right: var(--spacing);
        padding-left: calc(var(--spacing) * 3);
        text-align: left
    }
    .app-tab-close:not(#\#):not(#\#) {
        cursor: pointer;
        border-radius: var(--radius-control);
        padding-left: calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 2);
        padding-top: var(--spacing);
        padding-bottom: var(--spacing);
        --tw-leading: 1;
        line-height: 1;
        color: var(--color-ink-subtle)
    }
    @media (hover: hover) {
        .app-tab-close:hover:not(#\#):not(#\#) {
            color: var(--color-danger)
        }
    }
    .app-frames:not(#\#):not(#\#) {
        min-height: 0px;
        flex: 1
    }
    .app-frame:not(#\#):not(#\#) {
        display: block;
        width: 100%;
        height: 100%;
        border-style: var(--tw-border-style);
        border-width: 0px
    }
    .app-body-tab-frame .app-shell:not(#\#):not(#\#) {
        height: 100vh;
        overflow: hidden
    }
    .app-body-tab-frame .app-main:not(#\#):not(#\#) {
        min-height: 0px
    }
    .app-body-tab-frame .app-footer:not(#\#):not(#\#) {
        display: none
    }
    .app-shell-framed .app-main:not(#\#):not(#\#) {
        padding-bottom: 0px
    }
    .app-framed .app-sidebar:not(#\#):not(#\#), .app-framed .app-bottombar:not(#\#):not(#\#), .app-framed .app-footer:not(#\#):not(#\#), .app-framed .app-tabs:not(#\#):not(#\#) {
        display: none
    }
    .app-bottombar:not(#\#):not(#\#) {
        position: fixed;
        left: 0px;
        right: 0px;
        bottom: 0px;
        z-index: 40;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: calc(var(--spacing) * 2);
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
        border-color: var(--color-nav-line);
        background-color: var(--color-nav);
        padding-left: calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 2);
        padding-top: calc(var(--spacing) * 1.5);
        padding-bottom: max(0.375rem, env(safe-area-inset-bottom));
        color: var(--color-nav-ink)
    }
    @media (min-width: 48rem) {
        .app-bottombar:not(#\#):not(#\#) {
            display: none
        }
    }
    .bottombar-slot:not(#\#):not(#\#) {
        position: relative
    }
    .bottombar-button:not(#\#):not(#\#) {
        display: flex;
        cursor: pointer;
        list-style-type: none;
        align-items: center;
        gap: calc(var(--spacing) * 2);
        border-radius: var(--radius-control);
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-nav-ink)
    }
    @media (hover: hover) {
        .bottombar-button:hover:not(#\#):not(#\#) {
            background-color: var(--color-nav-hover)
        }
    }
    .bottombar-button:not(#\#):not(#\#)::-webkit-details-marker {
        display: none
    }
    details[open] > .bottombar-button:not(#\#):not(#\#) {
        background-color: var(--color-nav-hover)
    }
    .bottombar-icon:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 5);
        height: calc(var(--spacing) * 5);
        fill: none;
        stroke: currentcolor;
        stroke-width: 2;
        stroke-linecap: round
    }
    .bottombar-login:not(#\#):not(#\#) {
        color: var(--color-primary)
    }
    @media (hover: hover) {
        .bottombar-login:hover:not(#\#):not(#\#) {
            color: var(--color-primary-strong)
        }
    }
    .account-login:not(#\#):not(#\#) {
        display: flex;
        width: 100%;
        align-items: center;
        justify-content: center;
        border-radius: var(--radius-control);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: var(--color-line-strong);
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-ink);
    -webkit-text-decoration-line: none;
            text-decoration-line: none
    }
    @media (hover: hover) {
        .account-login:hover:not(#\#):not(#\#) {
            background-color: var(--color-nav-hover)
        }
        .account-login:hover:not(#\#):not(#\#) {
            color: var(--color-ink)
        }
    }
    .bottombar-brand:not(#\#):not(#\#) {
        min-width: 0px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        color: var(--color-nav-ink);
    -webkit-text-decoration-line: none;
            text-decoration-line: none
    }
    @media (hover: hover) {
        .bottombar-brand:hover:not(#\#):not(#\#) {
            color: var(--color-nav-ink)
        }
    }
    .menu-panel:not(#\#):not(#\#) {
        position: absolute;
        z-index: 50;
        display: flex;
        max-height: 70vh;
        min-width: calc(var(--spacing) * 56);
        flex-direction: column;
        overflow-y: auto;
        border-radius: var(--radius-box);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: var(--color-line);
        background-color: var(--color-surface);
        padding: var(--spacing);
        color: var(--color-ink);
        --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgba(0, 0, 0, 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgba(0, 0, 0, 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .menu-panel-up:not(#\#):not(#\#) {
        bottom: 100%;
        margin-bottom: calc(var(--spacing) * 2)
    }
    .app-account .menu-panel:not(#\#):not(#\#) {
        left: calc(var(--spacing) * 3);
        right: calc(var(--spacing) * 3)
    }
    .menu-panel-start:not(#\#):not(#\#) {
        left: 0px
    }
    .menu-panel-end:not(#\#):not(#\#) {
        right: 0px
    }
    .menu-head:not(#\#):not(#\#) {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
        border-color: var(--color-line);
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2)
    }
    .menu-head-name:not(#\#):not(#\#) {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-ink)
    }
    .menu-head-detail:not(#\#):not(#\#) {
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        color: var(--color-ink-subtle)
    }
    .menu-item:not(#\#):not(#\#) {
        display: flex;
        width: 100%;
        cursor: pointer;
        align-items: center;
        justify-content: space-between;
        gap: calc(var(--spacing) * 2);
        border-radius: var(--radius-control);
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 2.5);
        padding-bottom: calc(var(--spacing) * 2.5);
        text-align: left;
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        color: var(--color-ink);
    -webkit-text-decoration-line: none;
            text-decoration-line: none
    }
    @media (hover: hover) {
        .menu-item:hover:not(#\#):not(#\#) {
            background-color: var(--color-surface-sunk)
        }
        .menu-item:hover:not(#\#):not(#\#) {
            color: var(--color-ink)
        }
    }
    .menu-item-active:not(#\#):not(#\#) {
        background-color: var(--color-primary-soft);
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-primary-strong)
    }
    @media (hover: hover) {
        .menu-item-active:hover:not(#\#):not(#\#) {
            background-color: var(--color-primary-soft)
        }
        .menu-item-active:hover:not(#\#):not(#\#) {
            color: var(--color-primary-strong)
        }
    }
    .menu-item-danger:not(#\#):not(#\#) {
        color: var(--color-danger)
    }
    @media (hover: hover) {
        .menu-item-danger:hover:not(#\#):not(#\#) {
            background-color: var(--color-danger-soft)
        }
        .menu-item-danger:hover:not(#\#):not(#\#) {
            color: var(--color-danger)
        }
    }
    .menu-form:not(#\#):not(#\#) {
        margin-top: var(--spacing);
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
        border-color: var(--color-line);
        padding-top: var(--spacing)
    }
    .auth-body:not(#\#):not(#\#) {
        display: flex;
        min-height: 100vh;
        flex-direction: column;
        background-color: var(--color-page)
    }
    .auth-accent:not(#\#):not(#\#) {
        height: calc(var(--spacing) * 1.5);
        background-color: var(--color-auth-accent)
    }
    .auth-main:not(#\#):not(#\#) {
        display: flex;
        flex: 1;
        align-items: flex-start;
        justify-content: center;
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 10);
        padding-bottom: calc(var(--spacing) * 10)
    }
    @media (min-width: 40rem) {
        .auth-main:not(#\#):not(#\#) {
            align-items: center
        }
        .auth-main:not(#\#):not(#\#) {
            padding-top: calc(var(--spacing) * 16);
            padding-bottom: calc(var(--spacing) * 16)
        }
    }
    .auth-box:not(#\#):not(#\#) {
        width: 100%;
        max-width: var(--container-sm)
    }
    .auth-brand:not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 8);
        font-size: var(--text-xl);
        line-height: var(--tw-leading, var(--text-xl--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        color: var(--color-ink)
    }
    .auth-title:not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 2);
        font-size: var(--text-2xl);
        line-height: var(--tw-leading, var(--text-2xl--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold)
    }
    @media (min-width: 40rem) {
        .auth-title:not(#\#):not(#\#) {
            font-size: var(--text-3xl);
            line-height: var(--tw-leading, var(--text-3xl--line-height))
        }
    }
    .auth-card:not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * 6)
    }
    .auth-body .btn-primary:not(#\#):not(#\#) {
        border-color: var(--color-auth-button);
        background-color: var(--color-auth-button);
        color: var(--color-on-auth-button)
    }
    @media (hover: hover) {
        .auth-body .btn-primary:hover:not(#\#):not(#\#) {
            border-color: var(--color-auth-button-strong)
        }
        .auth-body .btn-primary:hover:not(#\#):not(#\#) {
            background-color: var(--color-auth-button-strong)
        }
        .auth-body .btn-primary:hover:not(#\#):not(#\#) {
            color: var(--color-on-auth-button)
        }
    }
    .auth-brand-logo-only:not(#\#):not(#\#) {
        display: flex;
        justify-content: center
    }
    .auth-brand-logo-only .brand-name:not(#\#):not(#\#) {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
    -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
        white-space: nowrap;
        border-width: 0
    }
    .table-wrap:not(#\#):not(#\#) {
        margin-left: calc(var(--spacing) * -4);
        margin-right: calc(var(--spacing) * -4);
        overflow-x: auto;
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4)
    }
    @media (min-width: 48rem) {
        .table-wrap:not(#\#):not(#\#) {
            margin-left: 0px;
            margin-right: 0px
        }
        .table-wrap:not(#\#):not(#\#) {
            padding-left: 0px;
            padding-right: 0px
        }
    }
    .auth-links:not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * 4);
        text-align: center;
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }
    .auth-choices:not(#\#):not(#\#) {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing) * 2)
    }
    .auth-choice:not(#\#):not(#\#) {
        height: auto;
        width: 100%;
        flex-direction: column;
        align-items: flex-start;
        gap: calc(var(--spacing) * 0.5);
        padding-top: calc(var(--spacing) * 3);
        padding-bottom: calc(var(--spacing) * 3);
        text-align: left
    }
    .auth-choice-label:not(#\#):not(#\#) {
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold)
    }
    .auth-choice-detail:not(#\#):not(#\#) {
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        --tw-font-weight: var(--font-weight-normal);
        font-weight: var(--font-weight-normal);
        opacity: 80%
    }
    .input-otp:not(#\#):not(#\#) {
        text-align: center;
        font-family: var(--font-mono);
        font-size: var(--text-2xl);
        line-height: var(--tw-leading, var(--text-2xl--line-height));
        --tw-tracking: 0.3em;
        letter-spacing: 0.3em
    }
    .qr-code:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 44);
        height: calc(var(--spacing) * 44);
        flex-shrink: 0;
        border-radius: var(--radius-control);
        background-color: var(--color-white);
        padding: var(--spacing);
        --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
        --tw-ring-color: var(--color-line)
    }
    .qr-code svg:not(#\#):not(#\#) {
        width: 100%;
        height: 100%
    }
    .code-box:not(#\#):not(#\#) {
        display: block;
        border-radius: var(--radius-control);
        background-color: var(--color-surface-sunk);
        padding-left: calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 2);
        padding-top: var(--spacing);
        padding-bottom: var(--spacing);
        font-family: var(--font-mono);
        word-break: break-all;
        color: var(--color-ink);
        -webkit-user-select: all;
        user-select: all
    }
    .dot:not(#\#):not(#\#) {
        display: inline-block;
        flex-shrink: 0;
        vertical-align: middle
    }
    .dot-sm:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 2.5);
        height: calc(var(--spacing) * 2.5)
    }
    .dot-md:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 3);
        height: calc(var(--spacing) * 3)
    }
    .dot-lg:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 4);
        height: calc(var(--spacing) * 4)
    }
    .dot-empty:not(#\#):not(#\#) {
        color: var(--color-line-strong)
    }
    .progress:not(#\#):not(#\#) {
        display: block;
        height: calc(var(--spacing) * 2);
        width: 100%;
    -webkit-appearance: none;
            appearance: none;
        overflow: hidden;
        border-radius: 9999px;
        border-style: var(--tw-border-style);
        border-width: 0px;
        background-color: var(--color-surface-sunk)
    }
    .progress:not(#\#):not(#\#)::-webkit-progress-bar {
        border-radius: 9999px;
        background-color: var(--color-surface-sunk)
    }
    .progress:not(#\#):not(#\#)::-webkit-progress-value {
        border-radius: 9999px;
        background-color: var(--progress-color)
    }
    .progress-primary:not(#\#):not(#\#) {
        --progress-color: var(--color-brand)
    }
    .progress-success:not(#\#):not(#\#) {
        --progress-color: var(--color-success)
    }
    .progress-warning:not(#\#):not(#\#) {
        --progress-color: var(--color-warning)
    }
    .progress-danger:not(#\#):not(#\#) {
        --progress-color: var(--color-danger)
    }
    .toast-stack:not(#\#):not(#\#) {
        pointer-events: none;
        position: fixed;
        right: calc(var(--spacing) * 4);
        bottom: calc(var(--spacing) * 20);
        left: calc(var(--spacing) * 4);
        z-index: 50;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        gap: calc(var(--spacing) * 2)
    }
    @media (min-width: 48rem) {
        .toast-stack:not(#\#):not(#\#) {
            bottom: calc(var(--spacing) * 4)
        }
        .toast-stack:not(#\#):not(#\#) {
            left: auto
        }
        .toast-stack:not(#\#):not(#\#) {
            max-width: var(--container-md)
        }
    }
    .toast:not(#\#):not(#\#) {
        pointer-events: auto;
        display: flex;
        width: 100%;
        align-items: flex-start;
        gap: calc(var(--spacing) * 3);
        border-radius: var(--radius-control);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: rgba(29, 78, 216, 0.3);
        background-color: var(--color-info-soft);
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 3);
        padding-bottom: calc(var(--spacing) * 3);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        color: var(--color-info);
        --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgba(0, 0, 0, 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgba(0, 0, 0, 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
        transition-property: opacity;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));
        --tw-duration: 500ms;
        transition-duration: 500ms
    }
    @media (min-width: 48rem) {
        .toast:not(#\#):not(#\#) {
            width: auto
        }
    }
    .toast-text:not(#\#):not(#\#) {
        margin: 0px;
        min-width: 0px;
        flex: 1
    }
    .toast-close:not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * -1);
        margin-bottom: calc(var(--spacing) * -1);
        margin-right: calc(var(--spacing) * -2);
        flex-shrink: 0;
        cursor: pointer;
        border-radius: var(--radius-control);
        padding-left: calc(var(--spacing) * 1.5);
        padding-right: calc(var(--spacing) * 1.5);
        font-size: var(--text-lg);
        line-height: var(--tw-leading, var(--text-lg--line-height));
        --tw-leading: 1;
        line-height: 1;
        opacity: 60%
    }
    @media (hover: hover) {
        .toast-close:hover:not(#\#):not(#\#) {
            opacity: 100%
        }
    }
    .toast-close:focus:not(#\#):not(#\#) {
        opacity: 100%
    }
    .toast-success:not(#\#):not(#\#) {
        border-color: rgba(4, 120, 87, 0.3);
        background-color: var(--color-success-soft);
        color: var(--color-success)
    }
    .toast-warning:not(#\#):not(#\#) {
        border-color: rgba(180, 83, 9, 0.3);
        background-color: var(--color-warning-soft);
        color: var(--color-warning)
    }
    .toast-error:not(#\#):not(#\#) {
        border-color: rgba(185, 28, 28, 0.3);
        background-color: var(--color-danger-soft);
        color: var(--color-danger)
    }
    .toast-hiding:not(#\#):not(#\#) {
        opacity: 0%
    }
    .card:not(#\#):not(#\#) {
        border-radius: var(--radius-box);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: var(--color-line);
        background-color: var(--color-surface);
        padding: calc(var(--spacing) * 5);
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgba(0, 0, 0, 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .card-flush:not(#\#):not(#\#) {
        overflow: hidden;
        padding: 0px
    }
    .btn:not(#\#):not(#\#) {
        display: inline-flex;
        cursor: pointer;
        align-items: center;
        justify-content: center;
        gap: calc(var(--spacing) * 2);
        border-radius: var(--radius-control);
        border-style: var(--tw-border-style);
        border-width: 1px;
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
    -webkit-text-decoration-line: none;
            text-decoration-line: none;
        transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));
        -webkit-user-select: none;
        user-select: none
    }
    .btn:disabled:not(#\#):not(#\#) {
        cursor: not-allowed
    }
    .btn:disabled:not(#\#):not(#\#) {
        opacity: 50%
    }
    .btn-primary:not(#\#):not(#\#) {
        border-color: var(--color-primary);
        background-color: var(--color-primary);
        color: var(--color-on-primary)
    }
    @media (hover: hover) {
        .btn-primary:hover:not(#\#):not(#\#) {
            border-color: var(--color-primary-strong)
        }
        .btn-primary:hover:not(#\#):not(#\#) {
            background-color: var(--color-primary-strong)
        }
        .btn-primary:hover:not(#\#):not(#\#) {
            color: var(--color-on-primary)
        }
    }
    .btn-secondary:not(#\#):not(#\#) {
        border-color: var(--color-line-strong);
        background-color: var(--color-surface);
        color: var(--color-ink)
    }
    @media (hover: hover) {
        .btn-secondary:hover:not(#\#):not(#\#) {
            background-color: var(--color-surface-sunk)
        }
        .btn-secondary:hover:not(#\#):not(#\#) {
            color: var(--color-ink)
        }
    }
    .btn-ghost:not(#\#):not(#\#) {
        border-color: transparent;
        background-color: transparent;
        padding-left: calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 2);
        color: var(--color-ink-muted)
    }
    @media (hover: hover) {
        .btn-ghost:hover:not(#\#):not(#\#) {
            color: var(--color-ink)
        }
    }
    .btn-danger:not(#\#):not(#\#) {
        border-color: var(--color-danger);
        background-color: var(--color-surface);
        color: var(--color-danger)
    }
    @media (hover: hover) {
        .btn-danger:hover:not(#\#):not(#\#) {
            background-color: var(--color-danger-soft)
        }
        .btn-danger:hover:not(#\#):not(#\#) {
            color: var(--color-danger)
        }
    }
    .btn-sm:not(#\#):not(#\#) {
        padding-left: calc(var(--spacing) * 2.5);
        padding-right: calc(var(--spacing) * 2.5);
        padding-top: var(--spacing);
        padding-bottom: var(--spacing);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height))
    }
    .btn-block:not(#\#):not(#\#) {
        width: 100%
    }
    .field:not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 4);
        display: flex;
        flex-direction: column
    }
    .label:not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 1.5);
        display: block;
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-ink)
    }
    .hint:not(#\#):not(#\#) {
        margin-top: var(--spacing);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        color: var(--color-ink-subtle)
    }
    .input:not(#\#):not(#\#), .select:not(#\#):not(#\#) {
        width: 100%;
        border-radius: var(--radius-control);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: var(--color-line-strong);
        background-color: var(--color-surface);
        padding-left: calc(var(--spacing) * 3);
        padding-right: calc(var(--spacing) * 3);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        color: var(--color-ink)
    }
    .input:not(#\#):not(#\#)::placeholder, .select:not(#\#):not(#\#)::placeholder {
        color: var(--color-ink-subtle)
    }
    .input:focus:not(#\#):not(#\#), .select:focus:not(#\#):not(#\#) {
        border-color: var(--color-primary)
    }
    .input:focus:not(#\#):not(#\#), .select:focus:not(#\#):not(#\#) {
        --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }
    .input:focus:not(#\#):not(#\#), .select:focus:not(#\#):not(#\#) {
        --tw-ring-color: var(--color-primary-soft)
    }
    .input:focus:not(#\#):not(#\#), .select:focus:not(#\#):not(#\#) {
        --tw-outline-style: none;
        outline-style: none
    }
    .input:disabled:not(#\#):not(#\#), .select:disabled:not(#\#):not(#\#) {
        cursor: not-allowed
    }
    .input:disabled:not(#\#):not(#\#), .select:disabled:not(#\#):not(#\#) {
        background-color: var(--color-surface-sunk)
    }
    .input:disabled:not(#\#):not(#\#), .select:disabled:not(#\#):not(#\#) {
        color: var(--color-ink-subtle)
    }
    .input-error:not(#\#):not(#\#) {
        border-color: var(--color-danger)
    }
    .field-error:not(#\#):not(#\#) {
        margin-top: var(--spacing);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-danger)
    }
    .field-disabled:not(#\#):not(#\#) {
        opacity: 50%
    }
    .check:not(#\#):not(#\#) {
        display: flex;
        align-items: flex-start;
        gap: calc(var(--spacing) * 2.5);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }
    .check input:not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * 0.5);
        width: calc(var(--spacing) * 4);
        height: calc(var(--spacing) * 4);
        accent-color: var(--color-primary)
    }
    .table:not(#\#):not(#\#) {
        width: 100%;
        border-collapse: collapse;
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }
    .table th:not(#\#):not(#\#) {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
        border-color: var(--color-line-strong);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 4);
        text-align: left;
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        --tw-tracking: var(--tracking-wide);
        letter-spacing: var(--tracking-wide);
        color: var(--color-ink-muted);
        text-transform: uppercase
    }
    .table td:not(#\#):not(#\#) {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
        border-color: var(--color-line);
        padding-top: calc(var(--spacing) * 2.5);
        padding-bottom: calc(var(--spacing) * 2.5);
        padding-right: calc(var(--spacing) * 4);
        vertical-align: top
    }
    .table tr:last-child td:not(#\#):not(#\#) {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 0px
    }
    .badge:not(#\#):not(#\#) {
        display: inline-flex;
        align-items: center;
        gap: var(--spacing);
        border-radius: 9999px;
        border-style: var(--tw-border-style);
        border-width: 1px;
        padding-left: calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 2);
        padding-top: calc(var(--spacing) * 0.5);
        padding-bottom: calc(var(--spacing) * 0.5);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium)
    }
    .badge-neutral:not(#\#):not(#\#) {
        border-color: var(--color-line-strong);
        background-color: var(--color-surface-sunk);
        color: var(--color-ink-muted)
    }
    .badge-primary:not(#\#):not(#\#) {
        border-color: rgba(174, 100, 0, 0.3);
        background-color: var(--color-primary-soft);
        color: var(--color-primary-strong)
    }
    .badge-success:not(#\#):not(#\#) {
        border-color: rgba(4, 120, 87, 0.3);
        background-color: var(--color-success-soft);
        color: var(--color-success)
    }
    .badge-warning:not(#\#):not(#\#) {
        border-color: rgba(180, 83, 9, 0.3);
        background-color: var(--color-warning-soft);
        color: var(--color-warning)
    }
    .badge-danger:not(#\#):not(#\#) {
        border-color: rgba(185, 28, 28, 0.3);
        background-color: var(--color-danger-soft);
        color: var(--color-danger)
    }
    .flash:not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 4);
        border-radius: var(--radius-control);
        border-style: var(--tw-border-style);
        border-width: 1px;
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 3);
        padding-bottom: calc(var(--spacing) * 3);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }
    .flash-success:not(#\#):not(#\#) {
        border-color: rgba(4, 120, 87, 0.3);
        background-color: var(--color-success-soft);
        color: var(--color-success)
    }
    .flash-error:not(#\#):not(#\#) {
        border-color: rgba(185, 28, 28, 0.3);
        background-color: var(--color-danger-soft);
        color: var(--color-danger)
    }
    .flash-warning:not(#\#):not(#\#) {
        border-color: rgba(180, 83, 9, 0.3);
        background-color: var(--color-warning-soft);
        color: var(--color-warning)
    }
    .flash-info:not(#\#):not(#\#) {
        border-color: rgba(29, 78, 216, 0.3);
        background-color: var(--color-info-soft);
        color: var(--color-info)
    }
    .amount:not(#\#):not(#\#) {
        white-space: nowrap;
        --tw-numeric-spacing: tabular-nums;
        font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, )
    }
    .amount-positive:not(#\#):not(#\#) {
        color: var(--color-amount-positive)
    }
    .amount-negative:not(#\#):not(#\#) {
        color: var(--color-amount-negative)
    }
    .error-page:not(#\#):not(#\#) {
        display: flex;
        min-height: 100vh;
        align-items: center;
        justify-content: center;
        padding: calc(var(--spacing) * 6)
    }
    .error-box:not(#\#):not(#\#) {
        max-width: var(--container-md);
        text-align: center
    }
    .error-code:not(#\#):not(#\#) {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        --tw-tracking: var(--tracking-widest);
        letter-spacing: var(--tracking-widest);
        color: var(--color-ink-subtle)
    }
    .error-message:not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * 4);
        margin-bottom: calc(var(--spacing) * 4);
        color: var(--color-ink-muted)
    }
    .day-title:not(#\#):not(#\#) {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
        border-color: var(--color-line);
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 3);
        padding-bottom: calc(var(--spacing) * 3);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        color: var(--color-ink)
    }
    .lesson-list > li + li:not(#\#):not(#\#), .change-list > li + li:not(#\#):not(#\#) {
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
        border-top-color: var(--color-line)
    }
    .lesson:not(#\#):not(#\#) {
        --subject: var(--color-line-strong);
        display: flex;
        gap: calc(var(--spacing) * 3);
        border-left-style: var(--tw-border-style);
        border-left-width: 4px;
        border-color: var(--subject);
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 3);
        padding-bottom: calc(var(--spacing) * 3)
    }
    .lesson-gap:not(#\#):not(#\#) {
        display: flex;
        gap: calc(var(--spacing) * 3);
        border-left-style: var(--tw-border-style);
        border-left-width: 4px;
        border-left-color: transparent;
        background-color: var(--color-surface-sunk);
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 2);
        padding-bottom: calc(var(--spacing) * 2);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        color: var(--color-ink-subtle);
        font-style: italic
    }
    .lesson-time:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 14);
        flex-shrink: 0;
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-leading: calc(var(--spacing) * 5);
        line-height: calc(var(--spacing) * 5);
        color: var(--color-ink-muted);
        --tw-numeric-spacing: tabular-nums;
        font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, )
    }
    .lesson-subject:not(#\#):not(#\#) {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        color: var(--color-ink)
    }
    .lesson-meta:not(#\#):not(#\#) {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        color: var(--color-ink-muted)
    }
    .lesson-badges:not(#\#):not(#\#) {
        margin-top: var(--spacing);
        display: flex;
        flex-wrap: wrap;
        gap: var(--spacing)
    }
    .lesson.is-canceled:not(#\#):not(#\#) {
        background-color: var(--color-surface-sunk)
    }
    .lesson.is-canceled .lesson-subject:not(#\#):not(#\#), .lesson.is-canceled .lesson-meta:not(#\#):not(#\#) {
        color: var(--color-ink-subtle);
    -webkit-text-decoration-line: line-through;
            text-decoration-line: line-through
    }
    .week-nav:not(#\#):not(#\#) {
        margin-bottom: calc(var(--spacing) * 5);
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: calc(var(--spacing) * 2)
    }
    .week-label:not(#\#):not(#\#) {
        padding-left: var(--spacing);
        padding-right: var(--spacing);
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        color: var(--color-ink)
    }
    .change-item:not(#\#):not(#\#) {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        column-gap: calc(var(--spacing) * 3);
        row-gap: var(--spacing);
        padding-left: calc(var(--spacing) * 4);
        padding-right: calc(var(--spacing) * 4);
        padding-top: calc(var(--spacing) * 3);
        padding-bottom: calc(var(--spacing) * 3)
    }
    .change-item .badge:not(#\#):not(#\#) {
        margin-top: calc(var(--spacing) * 0.5);
        flex-shrink: 0
    }
    .channel-table .channel:not(#\#):not(#\#) {
        width: calc(var(--spacing) * 28);
        text-align: center
    }
    @supports ((-webkit-hyphens: none) and (not (margin-trim: block))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
        *, ::before, ::after {
            --tw-space-y-reverse: 0;
            --tw-divide-y-reverse: 0;
            --tw-border-style: solid;
            --tw-font-weight: initial;
            --tw-outline-style: solid;
            --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;
            --tw-leading: initial;
            --tw-tracking: initial;
            --tw-duration: initial;
            --tw-ordinal: initial;
            --tw-slashed-zero: initial;
            --tw-numeric-figure: initial;
            --tw-numeric-spacing: initial;
            --tw-numeric-fraction: initial
        }
    }
}
