/* /Components/Avatar.razor.rz.scp.css */
.avatar[b-lx9za8dsa6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-weight: 700;
    letter-spacing: .02em;
    flex-shrink: 0;
}
.avatar--sm[b-lx9za8dsa6] { width: 22px; height: 22px; font-size: 10px; }
.avatar--md[b-lx9za8dsa6] { width: 32px; height: 32px; font-size: 12px; }
.avatar--lg[b-lx9za8dsa6] { width: 48px; height: 48px; font-size: 16px; }
/* /Components/BulletinCard.razor.rz.scp.css */
.bc[b-w9faprragh] {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-lg);
    min-height: 320px;
    padding: var(--space-5);
    gap: var(--space-4);
    overflow: hidden;
    border: 1px solid transparent;
    transition: transform var(--transition-fast), border-color var(--transition-fast);
}
.bc:hover[b-w9faprragh] { transform: translateY(-1px); }

.bc--red[b-w9faprragh] { background: var(--color-red); color: var(--color-ink-on-red); }
.bc--charcoal[b-w9faprragh] { background: var(--color-charcoal); color: var(--color-ink-on-dark); }
.bc--white[b-w9faprragh] { background: var(--color-surface); color: var(--color-ink); border-color: var(--color-border); }
.bc--white:hover[b-w9faprragh] { border-color: var(--color-border-strong); }

.bc__top[b-w9faprragh] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.bc__eyebrow[b-w9faprragh] {
    font-size: var(--text-xs);
    font-weight: 700;
    opacity: .75;
    letter-spacing: .02em;
    text-transform: uppercase;
}
.bc__title[b-w9faprragh] {
    font-family: var(--font-display);
    font-weight: 900;
    font-size: 2rem;
    line-height: var(--leading-tight);
    letter-spacing: -.015em;
    word-break: break-word;
}
.bc__badge[b-w9faprragh] {
    position: absolute;
    top: 0;
    right: 0;
}

.bc__body[b-w9faprragh] {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}
.bc__author[b-w9faprragh] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: var(--text-xs);
    opacity: .82;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 600;
}
.bc__heading[b-w9faprragh] {
    font-size: var(--text-md);
    font-weight: 700;
    line-height: var(--leading-snug);
}
.bc__excerpt[b-w9faprragh] {
    font-size: var(--text-sm);
    line-height: var(--leading-normal);
    opacity: .9;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.bc__cta[b-w9faprragh] { display: flex; }
.bc__cta[b-w9faprragh]  .btn--white { flex: 1; }
/* /Components/Button.razor.rz.scp.css */
.btn[b-tckdynj1xm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid transparent;
    border-radius: var(--radius-md);
    font-weight: 600;
    line-height: 1;
    letter-spacing: .005em;
    cursor: pointer;
    transition: background var(--transition-fast), border-color var(--transition-fast),
                color var(--transition-fast), box-shadow var(--transition-fast);
    text-decoration: none;
    white-space: nowrap;
    user-select: none;
    height: var(--control-h);
    padding: 0 16px;
    font-size: var(--text-sm);
}

.btn:focus-visible[b-tckdynj1xm] { outline: none; box-shadow: var(--focus-red); }
.btn:disabled[b-tckdynj1xm], .btn--busy[b-tckdynj1xm] { opacity: .55; cursor: not-allowed; }
.btn--full[b-tckdynj1xm] { width: 100%; }

.btn__inner[b-tckdynj1xm] { display: inline-flex; align-items: center; gap: 8px; }
.btn__label[b-tckdynj1xm] { display: inline-flex; align-items: center; gap: 6px; }

/* sizes */
.btn--sm[b-tckdynj1xm] { height: 30px; padding: 0 12px; font-size: var(--text-xs); }
.btn--md[b-tckdynj1xm] { /* default */ }
.btn--lg[b-tckdynj1xm] { height: 44px; padding: 0 22px; font-size: var(--text-md); }

/* variants — all flat, no shadows */
.btn--primary[b-tckdynj1xm] {
    background: var(--color-red);
    color: var(--color-ink-on-red);
    border-color: var(--color-red);
}
.btn--primary:hover:not(:disabled)[b-tckdynj1xm] { background: var(--color-red-deep); border-color: var(--color-red-deep); }

.btn--secondary[b-tckdynj1xm] {
    background: var(--color-charcoal);
    color: var(--color-ink-on-dark);
    border-color: var(--color-charcoal);
}
.btn--secondary:hover:not(:disabled)[b-tckdynj1xm] { background: var(--color-charcoal-soft); border-color: var(--color-charcoal-soft); }

.btn--ghost[b-tckdynj1xm] {
    background: transparent;
    color: var(--color-ink);
    border-color: var(--color-border-strong);
}
.btn--ghost:hover:not(:disabled)[b-tckdynj1xm] {
    background: var(--color-surface);
    border-color: var(--color-ink-faint);
}

.btn--white[b-tckdynj1xm] {
    background: var(--color-surface);
    color: var(--color-ink);
    border-color: var(--color-surface);
}
.btn--white:hover:not(:disabled)[b-tckdynj1xm] { background: var(--color-surface-alt); border-color: var(--color-surface-alt); }

.btn--danger[b-tckdynj1xm] {
    background: transparent;
    color: var(--color-red-deep);
    border-color: var(--color-red-line);
}
.btn--danger:hover:not(:disabled)[b-tckdynj1xm] {
    background: var(--color-red-soft);
    border-color: var(--color-red);
}

/* spinner */
.btn__spinner[b-tckdynj1xm] {
    width: 14px; height: 14px;
    border-radius: 50%;
    border: 2px solid currentColor;
    border-right-color: transparent;
    animation: spin-b-tckdynj1xm 700ms linear infinite;
}
@keyframes spin-b-tckdynj1xm { to { transform: rotate(360deg); } }
/* /Components/Card.razor.rz.scp.css */
.card[b-k7wbiv2zdd] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.card--alt[b-k7wbiv2zdd] { background: var(--color-surface-alt); }
.card--sunken[b-k7wbiv2zdd] { background: var(--color-surface-sunken); border-color: transparent; }
.card--ink[b-k7wbiv2zdd] {
    background: var(--color-charcoal);
    color: var(--color-ink-on-dark);
    border-color: var(--color-border-dark);
}

.card__header[b-k7wbiv2zdd] {
    padding: var(--space-3) var(--space-4);
    border-bottom: 1px solid var(--color-border);
    display: flex;
    align-items: center;
    gap: var(--space-2);
    font-size: var(--text-sm);
}
.card--ink .card__header[b-k7wbiv2zdd] { border-bottom-color: var(--color-border-dark); }

.card__footer[b-k7wbiv2zdd] {
    padding: var(--space-3) var(--space-4);
    border-top: 1px solid var(--color-border);
    background: var(--color-surface-alt);
}
.card--ink .card__footer[b-k7wbiv2zdd] { background: var(--color-charcoal-soft); border-top-color: var(--color-border-dark); }

.card--pad-none .card__body[b-k7wbiv2zdd] { padding: 0; }
.card--pad-sm .card__body[b-k7wbiv2zdd] { padding: var(--space-3) var(--space-4); }
.card--pad-md .card__body[b-k7wbiv2zdd] { padding: var(--space-4); }
.card--pad-lg .card__body[b-k7wbiv2zdd] { padding: var(--space-5); }
/* /Components/Drawer.razor.rz.scp.css */
.drawer[b-ockmniy7t6] {
    position: fixed;
    inset: 0;
    z-index: 70;
    background: rgba(20, 23, 31, .42);
    display: flex;
    justify-content: flex-end;
    animation: drawer-fade-b-ockmniy7t6 var(--transition) ease;
}
@keyframes drawer-fade-b-ockmniy7t6 { from { opacity: 0; } to { opacity: 1; } }

.drawer__panel[b-ockmniy7t6] {
    background: var(--color-canvas);
    border-left: 1px solid var(--color-border);
    width: min(560px, 100%);
    height: 100%;
    display: flex;
    flex-direction: column;
    animation: drawer-slide-b-ockmniy7t6 var(--transition) cubic-bezier(.4, 0, .2, 1);
}
@keyframes drawer-slide-b-ockmniy7t6 { from { transform: translateX(24px); } to { transform: translateX(0); } }

.drawer__head[b-ockmniy7t6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--space-4) var(--space-5);
    border-bottom: 1px solid var(--color-border);
    background: var(--color-surface);
}
.drawer__eyebrow[b-ockmniy7t6] {
    font-size: var(--text-xs);
    font-weight: 700;
    color: var(--color-red);
    text-transform: uppercase;
    letter-spacing: .12em;
}
.drawer__close[b-ockmniy7t6] {
    border: 1px solid var(--color-border-strong);
    background: var(--color-surface);
    color: var(--color-ink-muted);
    width: var(--control-h);
    height: var(--control-h);
    border-radius: var(--radius-md);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: border-color var(--transition-fast), color var(--transition-fast);
}
.drawer__close:hover[b-ockmniy7t6] { color: var(--color-ink); border-color: var(--color-ink-faint); }
.drawer__body[b-ockmniy7t6] { padding: var(--space-5); overflow-y: auto; flex: 1; }

@media (max-width: 640px) {
    .drawer__panel[b-ockmniy7t6] { width: 100%; }
}
/* /Components/EmptyState.razor.rz.scp.css */
.es[b-azs99gbwsj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: var(--space-3);
    padding: var(--space-7) var(--space-5);
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    color: var(--color-ink-muted);
}
.es__icon[b-azs99gbwsj] {
    width: 44px; height: 44px;
    border-radius: 50%;
    background: var(--color-red-soft);
    color: var(--color-red);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.es__title[b-azs99gbwsj] { font-size: var(--text-lg); font-weight: 700; color: var(--color-ink); }
.es__message[b-azs99gbwsj] { max-width: 44ch; font-size: var(--text-sm); line-height: var(--leading-normal); }
.es__action[b-azs99gbwsj] { margin-top: var(--space-3); }
/* /Components/ErrorBanner.razor.rz.scp.css */
.eb[b-uqvvwiyld2] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    background: var(--color-red-soft);
    border: 1px solid var(--color-red-line);
    border-radius: var(--radius-md);
    color: var(--color-red-deep);
    font-size: var(--text-sm);
}
.eb__icon[b-uqvvwiyld2] { display: inline-flex; }
.eb__text[b-uqvvwiyld2] { flex: 1; }
.eb__close[b-uqvvwiyld2] {
    border: none;
    background: transparent;
    color: inherit;
    padding: 2px;
    cursor: pointer;
    border-radius: var(--radius-sm);
    display: inline-flex;
}
.eb__close:hover[b-uqvvwiyld2] { background: rgba(196,48,43,.12); }
/* /Components/KanbanColumn.razor.rz.scp.css */
.kc[b-fvikwht19n] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    min-width: 0;
    padding: var(--space-3) 0 var(--space-3) var(--space-3);
    border-left: 1px solid var(--color-border);
}
.kc:first-child[b-fvikwht19n] { border-left: none; padding-left: 0; }

.kc__head[b-fvikwht19n] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    padding-right: var(--space-3);
}
.kc__title[b-fvikwht19n] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}
.kc__count[b-fvikwht19n] {
    font-size: var(--text-xs);
    color: var(--color-ink-faint);
    font-variant-numeric: tabular-nums;
}

.kc__body[b-fvikwht19n] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-right: var(--space-3);
}
.kc__empty[b-fvikwht19n] {
    color: var(--color-ink-faint);
    font-size: var(--text-xs);
    font-style: italic;
}
/* /Components/Modal.razor.rz.scp.css */
.modal[b-9drri0v4av] {
    position: fixed;
    inset: 0;
    z-index: 80;
    background: rgba(20, 23, 31, .42);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-5);
    animation: modal-fade-b-9drri0v4av var(--transition) ease;
}
@keyframes modal-fade-b-9drri0v4av { from { opacity: 0; } to { opacity: 1; } }

.modal__panel[b-9drri0v4av] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    width: 100%;
    max-width: 440px;
    max-height: 85vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.modal__head[b-9drri0v4av] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-4);
    border-bottom: 1px solid var(--color-border);
}
.modal__close[b-9drri0v4av] {
    margin-left: auto;
    border: none;
    background: transparent;
    color: var(--color-ink-muted);
    padding: 4px;
    border-radius: var(--radius-sm);
    display: inline-flex;
    cursor: pointer;
    flex-shrink: 0;
}
.modal__close:hover[b-9drri0v4av] { background: var(--color-surface-sunken); color: var(--color-ink); }
.modal__body[b-9drri0v4av] { padding: var(--space-4); overflow-y: auto; }
.modal__foot[b-9drri0v4av] {
    padding: var(--space-3) var(--space-4);
    border-top: 1px solid var(--color-border);
    background: var(--color-surface-alt);
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}
/* /Components/PageHeader.razor.rz.scp.css */
.ph[b-xfkadlet19] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-5);
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-4);
    border-bottom: 1px solid var(--color-border);
}
.ph__text[b-xfkadlet19] { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ph__eyebrow[b-xfkadlet19] {
    font-size: var(--text-xs);
    font-weight: 700;
    color: var(--color-red);
    text-transform: uppercase;
    letter-spacing: .12em;
}
.ph__title[b-xfkadlet19] {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: var(--leading-tight);
}
.ph__subtitle[b-xfkadlet19] {
    color: var(--color-ink-muted);
    font-size: var(--text-sm);
    max-width: 56ch;
}
.ph__actions[b-xfkadlet19] { display: flex; gap: var(--space-2); align-items: center; flex-shrink: 0; }
/* /Components/Pill.razor.rz.scp.css */
.pill[b-2pjkrwkop2] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 8px;
    border-radius: var(--radius-sm);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    line-height: 1;
    white-space: nowrap;
    border: 1px solid transparent;
}
.pill__dot[b-2pjkrwkop2] { width: 5px; height: 5px; border-radius: 50%; background: currentColor; }

.pill--neutral[b-2pjkrwkop2] { background: var(--color-surface-sunken); color: var(--color-ink-muted); }
.pill--red[b-2pjkrwkop2]     { background: var(--color-red-soft); color: var(--color-red-deep); }
.pill--amber[b-2pjkrwkop2]   { background: var(--color-amber-soft); color: #8a5a04; }
.pill--emerald[b-2pjkrwkop2] { background: var(--color-emerald-soft); color: #126b41; }
.pill--indigo[b-2pjkrwkop2]  { background: var(--color-indigo-soft); color: #2a3fb0; }
.pill--ink[b-2pjkrwkop2]     { background: var(--color-charcoal); color: var(--color-ink-on-dark); }
/* /Components/SectionTitle.razor.rz.scp.css */
.st[b-4hqepyxlmv] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-width: 0;
}
.st__icon[b-4hqepyxlmv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px; height: 22px;
    border-radius: var(--radius-sm);
    background: var(--color-red-soft);
    color: var(--color-red);
    flex-shrink: 0;
}
.st__title[b-4hqepyxlmv] {
    font-weight: 700;
    color: var(--color-ink);
    font-size: var(--text-sm);
    letter-spacing: .005em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.st__trailing[b-4hqepyxlmv] {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--color-ink-muted);
    font-size: var(--text-xs);
    font-weight: 600;
}
/* /Components/Segmented.razor.rz.scp.css */
.seg[b-87dct5i2io] {
    display: inline-flex;
    background: var(--color-surface-sunken);
    border-radius: var(--radius-md);
    padding: 3px;
    gap: 2px;
    height: var(--control-h);
}
.seg__btn[b-87dct5i2io] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: none;
    background: transparent;
    color: var(--color-ink-muted);
    font-size: var(--text-sm);
    font-weight: 600;
    padding: 0 14px;
    border-radius: var(--radius-sm);
    cursor: pointer;
    transition: background var(--transition-fast), color var(--transition-fast);
}
.seg__btn:hover[b-87dct5i2io] { color: var(--color-ink); }
.seg__btn.is-active[b-87dct5i2io] {
    background: var(--color-surface);
    color: var(--color-ink);
}
/* /Components/SelectField.razor.rz.scp.css */
/* Select-specific styling layered on top of the shared .field rules in app.css. */
/* /Components/StatusBadge.razor.rz.scp.css */
.sb-badge[b-wsw9pax377] {
    background: var(--color-surface);
    color: var(--color-ink);
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    padding: 4px 10px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .12em;
    line-height: 1;
}
/* /Components/Tag.razor.rz.scp.css */
.tag[b-vs2kss39h5] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 4px 8px 4px 6px;
    border-radius: var(--radius-pill);
    background: var(--color-surface-sunken);
    border: 1px solid var(--color-border);
    color: var(--color-ink);
    font-size: var(--text-xs);
    font-weight: 600;
    line-height: 1;
}
.tag__hash[b-vs2kss39h5] { color: var(--color-red); font-weight: 800; }
.tag__label[b-vs2kss39h5] { letter-spacing: .01em; }
.tag__close[b-vs2kss39h5] {
    margin-left: 4px;
    border: none;
    background: transparent;
    color: var(--color-ink-muted);
    cursor: pointer;
    padding: 2px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    transition: background var(--transition-fast), color var(--transition-fast);
}
.tag__close:hover[b-vs2kss39h5] { background: var(--color-red-soft); color: var(--color-red-deep); }
/* /Components/TaskCard.razor.rz.scp.css */
.tc[b-roofciwikm] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-3);
    cursor: pointer;
    text-align: left;
    font: inherit;
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    width: 100%;
    transition: border-color var(--transition-fast);
}
.tc:hover[b-roofciwikm] { border-color: var(--color-red); }
.tc__title[b-roofciwikm] { font-weight: 600; font-size: var(--text-sm); line-height: var(--leading-snug); }
.tc__meta[b-roofciwikm] { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); }
.tc__tags[b-roofciwikm] { display: flex; flex-wrap: wrap; gap: 4px; }
/* /Components/TaskPanel.razor.rz.scp.css */
.tp-loading[b-br6protplh] { color: var(--color-ink-muted); }
.tp[b-br6protplh] { display: flex; flex-direction: column; gap: var(--space-5); }

.tp-headline[b-br6protplh] { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-3); }
.tp-title[b-br6protplh] { font-family: var(--font-display); font-weight: 800; font-size: var(--text-xl); letter-spacing: -.01em; line-height: var(--leading-snug); }

.tp-controls[b-br6protplh] { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }

.tp-section[b-br6protplh] { display: flex; flex-direction: column; gap: var(--space-3); padding-top: var(--space-5); border-top: 1px solid var(--color-border); }
.tp-actions[b-br6protplh] { display: flex; justify-content: flex-end; }
.tp-inline[b-br6protplh] { display: grid; grid-template-columns: 1fr auto; gap: var(--space-2); align-items: end; }
.tp-tags[b-br6protplh] { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; min-height: 22px; }
.tp-empty[b-br6protplh] { color: var(--color-ink-faint); font-size: var(--text-sm); font-style: italic; }

.tp-comments[b-br6protplh] { display: flex; flex-direction: column; gap: var(--space-2); }
.tp-comment[b-br6protplh] { padding: var(--space-3); background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); display: flex; flex-direction: column; gap: var(--space-2); }
.tp-comment__head[b-br6protplh] { display: flex; align-items: center; gap: var(--space-2); }
.tp-comment__author[b-br6protplh] { font-weight: 600; font-size: var(--text-sm); }
.tp-comment__time[b-br6protplh] { color: var(--color-ink-muted); font-size: var(--text-xs); margin-left: auto; }
.tp-comment__body[b-br6protplh] { font-size: var(--text-sm); line-height: var(--leading-normal); }

.tp-events[b-br6protplh] { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.tp-event[b-br6protplh] { display: flex; gap: var(--space-3); align-items: flex-start; }
.tp-event__dot[b-br6protplh] { width: 7px; height: 7px; border-radius: 50%; background: var(--color-red); margin-top: 6px; flex-shrink: 0; }
.tp-event__body[b-br6protplh] { display: flex; flex-direction: column; gap: 2px; font-size: var(--text-sm); }
.tp-event__kind[b-br6protplh] { color: var(--color-ink-muted); }
.tp-event__time[b-br6protplh] { color: var(--color-ink-faint); font-size: var(--text-xs); }
/* /Components/TextAreaField.razor.rz.scp.css */
/* Textarea-specific styling layered on top of the shared .field rules in app.css. */
/* /Components/TextField.razor.rz.scp.css */
/* Field primitives live in wwwroot/css/app.css so all field components
   (TextField, TextAreaField, SelectField) share the same look. */
/* /Layout/AppShell.razor.rz.scp.css */
/* Full-bleed grid: sidebar + main, no floating card, no shadows. */
.shell[b-65r599zeeo] {
    min-height: 100vh;
    display: grid;
    grid-template-columns: var(--sidebar-w) 1fr;
    background: var(--color-canvas);
}
.shell__main[b-65r599zeeo] {
    min-width: 0;
    padding: var(--page-pad-y) var(--page-pad-x);
    overflow-y: auto;
    max-height: 100vh;
}

@media (max-width: 900px) {
    .shell[b-65r599zeeo] { grid-template-columns: 1fr; }
    .shell > aside[b-65r599zeeo] { display: none; }
    .shell__main[b-65r599zeeo] { padding: var(--space-5); }
}
/* /Layout/AuthShell.razor.rz.scp.css */
.auth[b-085fg3mab2] {
    min-height: 100vh;
    padding: var(--space-6);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-canvas);
}
.auth__panel[b-085fg3mab2] {
    width: 100%;
    max-width: 880px;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    overflow: hidden;
    min-height: 480px;
}
.auth__hero[b-085fg3mab2] {
    background: var(--color-red);
    color: var(--color-ink-on-red);
    padding: var(--space-6);
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
}
.auth__brand[b-085fg3mab2] {
    display: flex;
    align-items: center;
    gap: 10px;
}
.auth__brandmark[b-085fg3mab2] {
    width: 22px; height: 22px;
    border-radius: var(--radius-sm);
    background: var(--color-ink-on-red);
}
.auth__brandname[b-085fg3mab2] {
    font-family: var(--font-display);
    font-weight: 800;
    font-size: var(--text-md);
    letter-spacing: -.01em;
}
.auth__hero-text[b-085fg3mab2] { margin-top: auto; display: flex; flex-direction: column; gap: var(--space-3); }
.auth__hero-title[b-085fg3mab2] {
    font-family: var(--font-display);
    font-weight: 900;
    font-size: var(--text-3xl);
    line-height: var(--leading-tight);
    letter-spacing: -.02em;
}
.auth__hero-sub[b-085fg3mab2] {
    font-size: var(--text-sm);
    line-height: var(--leading-normal);
    opacity: .88;
    max-width: 38ch;
}
.auth__hero-dots[b-085fg3mab2] { display: flex; gap: 6px; margin-top: var(--space-3); }
.auth__hero-dots span[b-085fg3mab2] {
    width: 24px; height: 3px; border-radius: var(--radius-pill);
    background: rgba(255,255,255,.32);
}
.auth__hero-dots span:first-child[b-085fg3mab2] { background: #fff; }

.auth__form[b-085fg3mab2] {
    padding: var(--space-6);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (max-width: 760px) {
    .auth[b-085fg3mab2] { padding: 0; align-items: stretch; }
    .auth__panel[b-085fg3mab2] { border-radius: 0; border: none; grid-template-columns: 1fr; min-height: 100vh; }
    .auth__hero[b-085fg3mab2] { padding: var(--space-5); min-height: 200px; }
    .auth__form[b-085fg3mab2] { padding: var(--space-5); }
}
/* /Layout/Sidebar.razor.rz.scp.css */
/* Sidebar styles live in wwwroot/css/app.css because the nav uses <NavLink>,
   a child component whose rendered <a> does not receive Blazor's scoped-CSS
   attribute — so scoped rules here would not reach those items. */
/* /Pages/Account.razor.rz.scp.css */
.ac-grid[b-39qa7tkpsg] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--space-4);
    align-items: start;
}
.ac-stack[b-39qa7tkpsg] { display: flex; flex-direction: column; gap: var(--space-3); }
.ac-identity[b-39qa7tkpsg] { display: flex; align-items: center; gap: var(--space-4); }
.ac-identity__meta[b-39qa7tkpsg] { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ac-identity__name[b-39qa7tkpsg] { font-family: var(--font-display); font-weight: 800; font-size: var(--text-xl); }
.ac-helper[b-39qa7tkpsg] { color: var(--color-ink-muted); font-size: var(--text-sm); margin: 0; }
.ac-actions[b-39qa7tkpsg] { display: flex; gap: var(--space-2); flex-wrap: wrap; }

@media (max-width: 900px) { .ac-grid[b-39qa7tkpsg] { grid-template-columns: 1fr; } }
/* /Pages/BoardKanban.razor.rz.scp.css */
.bk-loading[b-kqy7ptvhch] { color: var(--color-ink-muted); }
.bk-grid[b-kqy7ptvhch] {
    display: grid;
    grid-template-columns: repeat(6, minmax(180px, 1fr));
    gap: 0;
    overflow-x: auto;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    padding: var(--space-4);
}
/* /Pages/BoardList.razor.rz.scp.css */
.bl-loading[b-g6qdmd2hx2] { color: var(--color-ink-muted); }
.bl-new[b-g6qdmd2hx2] { display: grid; grid-template-columns: 1fr auto; gap: var(--space-3); align-items: end; }
.bl-new__error:not(:empty)[b-g6qdmd2hx2] { margin-top: var(--space-3); }
.bl-empty[b-g6qdmd2hx2] { margin-top: var(--space-4); }
.bl-groups[b-g6qdmd2hx2] { display: flex; flex-direction: column; gap: var(--space-5); margin-top: var(--space-5); }
.bl-group__head[b-g6qdmd2hx2] { margin-bottom: var(--space-3); }
.bl-rows[b-g6qdmd2hx2] { display: flex; flex-direction: column; gap: var(--space-2); }
.bl-row[b-g6qdmd2hx2] {
    display: grid;
    grid-template-columns: 1fr auto 18px;
    gap: var(--space-3);
    align-items: center;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-3) var(--space-4);
    cursor: pointer;
    text-align: left;
    font: inherit;
    color: inherit;
    transition: border-color var(--transition-fast);
}
.bl-row:hover[b-g6qdmd2hx2] { border-color: var(--color-red); }
.bl-row__main[b-g6qdmd2hx2] { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.bl-row__title[b-g6qdmd2hx2] { font-weight: 600; }
.bl-row__tags[b-g6qdmd2hx2] { display: flex; flex-wrap: wrap; gap: 4px; }
.bl-row__assignee[b-g6qdmd2hx2] { display: inline-flex; align-items: center; }
.bl-row__open[b-g6qdmd2hx2] { color: var(--color-ink-faint); display: inline-flex; justify-content: center; }
/* /Pages/ChangePassword.razor.rz.scp.css */
.cp[b-4nml8ex2xw] { max-width: 520px; }
.cp__stack[b-4nml8ex2xw] { display: flex; flex-direction: column; gap: var(--space-3); }
.cp__actions[b-4nml8ex2xw] { display: flex; justify-content: flex-end; }
/* /Pages/CreateAccount.razor.rz.scp.css */
.auth-page[b-idbb9f5y8h] { display: flex; flex-direction: column; gap: var(--space-5); }
.auth-page__head[b-idbb9f5y8h] { display: flex; flex-direction: column; gap: 4px; }
.auth-page__eyebrow[b-idbb9f5y8h] { font-size: var(--text-xs); font-weight: 700; color: var(--color-red); text-transform: uppercase; letter-spacing: .12em; }
.auth-page__title[b-idbb9f5y8h] { font-family: var(--font-display); font-weight: 800; font-size: var(--text-2xl); letter-spacing: -.02em; }
.auth-page__sub[b-idbb9f5y8h] { color: var(--color-ink-muted); font-size: var(--text-sm); }
.auth-page__stack[b-idbb9f5y8h] { display: flex; flex-direction: column; gap: var(--space-3); }
.auth-page__alt[b-idbb9f5y8h] { font-size: var(--text-sm); color: var(--color-ink-muted); text-align: center; }
.auth-page__alt a[b-idbb9f5y8h] { color: var(--color-red); font-weight: 600; }
/* /Pages/Dashboard.razor.rz.scp.css */
.dash-create[b-7zrw2syg7q] { margin-bottom: var(--space-4); }
.dash-create__row[b-7zrw2syg7q] {
    display: grid;
    grid-template-columns: 1fr 2fr auto;
    gap: var(--space-3);
    align-items: end;
}
.dash-create__error:not(:empty)[b-7zrw2syg7q] { margin-top: var(--space-3); }
.dash-loading[b-7zrw2syg7q] { color: var(--color-ink-muted); padding: var(--space-4) 0; }
.dash-grid[b-7zrw2syg7q] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: var(--space-3);
}
@media (max-width: 720px) {
    .dash-create__row[b-7zrw2syg7q] { grid-template-columns: 1fr; }
}
/* /Pages/Invites.razor.rz.scp.css */
.iv-locked[b-8p8imc0gy6] { display: flex; gap: var(--space-3); align-items: center; color: var(--color-ink-muted); }
.iv-locked strong[b-8p8imc0gy6] { color: var(--color-ink); }
.iv-locked p[b-8p8imc0gy6] { margin: 4px 0 0; font-size: var(--text-sm); }

.iv-grid[b-8p8imc0gy6] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--space-4);
    align-items: start;
}
.iv-stack[b-8p8imc0gy6] { display: flex; flex-direction: column; gap: var(--space-3); }
.iv-actions[b-8p8imc0gy6] { display: flex; justify-content: flex-end; }
.iv-error:not(:empty)[b-8p8imc0gy6] { margin-top: 0; }
.iv-helper[b-8p8imc0gy6] { font-size: var(--text-sm); color: var(--color-ink-muted); margin: 0; }
.iv-secret[b-8p8imc0gy6] { display: flex; gap: var(--space-2); align-items: center; }
.iv-code[b-8p8imc0gy6] {
    font-family: var(--font-mono);
    font-size: var(--text-md);
    padding: 0 var(--space-3);
    height: var(--control-h);
    display: inline-flex;
    align-items: center;
    background: var(--color-charcoal);
    color: var(--color-ink-on-dark);
    border-radius: var(--radius-md);
    flex: 1;
    letter-spacing: .04em;
    font-weight: 600;
}
.iv-copied[b-8p8imc0gy6] { font-size: var(--text-xs); color: var(--color-emerald); font-weight: 600; }

@media (max-width: 900px) { .iv-grid[b-8p8imc0gy6] { grid-template-columns: 1fr; } }
/* /Pages/Members.razor.rz.scp.css */
.mb-loading[b-qtnaaeh8zx] { color: var(--color-ink-muted); }
.mb-table[b-qtnaaeh8zx] { width: 100%; border-collapse: collapse; }
.mb-table thead th[b-qtnaaeh8zx] {
    text-align: left;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
    padding: var(--space-3) var(--space-4);
    border-bottom: 1px solid var(--color-border);
    background: var(--color-surface-alt);
}
.mb-table tbody td[b-qtnaaeh8zx] {
    padding: var(--space-4);
    border-bottom: 1px solid var(--color-border);
    vertical-align: middle;
}
.mb-table tbody tr:last-child td[b-qtnaaeh8zx] { border-bottom: none; }
.mb-person[b-qtnaaeh8zx] { display: flex; align-items: center; gap: var(--space-3); }
.mb-person__meta[b-qtnaaeh8zx] { display: flex; flex-direction: column; gap: 4px; }
.mb-person__name[b-qtnaaeh8zx] { font-weight: 600; }
.mb-all[b-qtnaaeh8zx] { color: var(--color-ink-muted); font-size: var(--text-sm); }
.mb-last[b-qtnaaeh8zx] { color: var(--color-ink-muted); font-size: var(--text-sm); font-variant-numeric: tabular-nums; }
.mb-access[b-qtnaaeh8zx] { display: inline-flex; align-items: center; gap: var(--space-3); }
.mb-access__count[b-qtnaaeh8zx] { font-size: var(--text-sm); color: var(--color-ink-muted); }

.mb-modal__empty[b-qtnaaeh8zx] { color: var(--color-ink-muted); font-size: var(--text-sm); }
.mb-modal__list[b-qtnaaeh8zx] { display: flex; flex-direction: column; gap: 2px; }
.mb-modal__row[b-qtnaaeh8zx] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    cursor: pointer;
}
.mb-modal__row:hover[b-qtnaaeh8zx] { background: var(--color-surface-alt); }
/* /Pages/MyTasks.razor.rz.scp.css */
.mt-loading[b-z85y0ek8tk] { color: var(--color-ink-muted); }
.mt-groups[b-z85y0ek8tk] { display: flex; flex-direction: column; gap: var(--space-5); }
.mt-group__head[b-z85y0ek8tk] { margin-bottom: var(--space-3); }
.mt-rows[b-z85y0ek8tk] { display: flex; flex-direction: column; gap: var(--space-2); }
.mt-row[b-z85y0ek8tk] {
    display: grid;
    grid-template-columns: 1fr auto 18px;
    gap: var(--space-3);
    align-items: center;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-3) var(--space-4);
    cursor: pointer;
    text-align: left;
    font: inherit;
    color: inherit;
    transition: border-color var(--transition-fast);
}
.mt-row:hover[b-z85y0ek8tk] { border-color: var(--color-red); }
.mt-row__main[b-z85y0ek8tk] { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.mt-row__title[b-z85y0ek8tk] { font-weight: 600; }
.mt-row__board[b-z85y0ek8tk] { display: inline-flex; align-items: center; gap: 5px; font-size: var(--text-xs); color: var(--color-ink-muted); }
.mt-row__tags[b-z85y0ek8tk] { display: flex; flex-wrap: wrap; gap: 4px; }
.mt-row__open[b-z85y0ek8tk] { color: var(--color-ink-faint); display: inline-flex; justify-content: center; }
/* /Pages/SignIn.razor.rz.scp.css */
.auth-page[b-y0c8yi3fyg] { display: flex; flex-direction: column; gap: var(--space-5); }
.auth-page__head[b-y0c8yi3fyg] { display: flex; flex-direction: column; gap: 4px; }
.auth-page__eyebrow[b-y0c8yi3fyg] { font-size: var(--text-xs); font-weight: 700; color: var(--color-red); text-transform: uppercase; letter-spacing: .12em; }
.auth-page__title[b-y0c8yi3fyg] { font-family: var(--font-display); font-weight: 800; font-size: var(--text-2xl); letter-spacing: -.02em; }
.auth-page__sub[b-y0c8yi3fyg] { color: var(--color-ink-muted); font-size: var(--text-sm); }
.auth-page__stack[b-y0c8yi3fyg] { display: flex; flex-direction: column; gap: var(--space-3); }
.auth-page__alt[b-y0c8yi3fyg] { font-size: var(--text-sm); color: var(--color-ink-muted); text-align: center; }
.auth-page__alt a[b-y0c8yi3fyg] { color: var(--color-red); font-weight: 600; }
/* /Pages/TaskDetail.razor.rz.scp.css */
.task-page[b-g4bon727r3] { max-width: 640px; }
