/* /Components/Habits/ChangeTargetDialog.razor.rz.scp.css */
.dialog-backdrop[b-udsfjz8mw0] {
    align-items: center;
    background: rgba(0, 0, 0, .72);
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 1rem;
    position: fixed;
    z-index: 100;
}

.target-dialog[b-udsfjz8mw0] {
    background: var(--surface);
    border: 1px solid var(--border-strong);
    border-radius: .75rem;
    box-shadow: var(--shadow);
    max-width: 30rem;
    padding: 1.25rem;
    width: 100%;
}

.dialog-heading[b-udsfjz8mw0] {
    align-items: flex-start;
    display: flex;
}

.dialog-heading > div[b-udsfjz8mw0] {
    margin-right: auto;
}

.dialog-heading p[b-udsfjz8mw0] {
    color: var(--accent-bright);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .1em;
    margin: 0 0 .2rem;
    text-transform: uppercase;
}

.dialog-heading h2[b-udsfjz8mw0] {
    font-size: 1.25rem;
    margin: 0;
}

.close-button[b-udsfjz8mw0] {
    background: transparent;
    border: 0;
    border-radius: .35rem;
    color: var(--text-muted);
    font-size: 1.35rem;
    height: 2rem;
    line-height: 1;
    width: 2rem;
}

.dialog-copy[b-udsfjz8mw0] {
    color: var(--text-muted);
    font-size: .82rem;
    margin: .8rem 0 1rem;
}

.field-grid[b-udsfjz8mw0] {
    display: grid;
    gap: .8rem;
    grid-template-columns: 1fr 1fr;
}

label[b-udsfjz8mw0] {
    color: var(--text-muted);
    display: block;
    font-size: .75rem;
    font-weight: 700;
    margin-bottom: .3rem;
}

.dialog-actions[b-udsfjz8mw0] {
    display: flex;
    gap: .55rem;
    justify-content: flex-end;
    margin-top: 1.2rem;
}

.dialog-error[b-udsfjz8mw0] {
    background: color-mix(in srgb, var(--danger) 12%, transparent);
    border: 1px solid color-mix(in srgb, var(--danger) 38%, transparent);
    border-radius: .4rem;
    color: #fda4af;
    font-size: .78rem;
    margin-bottom: .9rem;
    padding: .6rem .7rem;
}

button:focus-visible[b-udsfjz8mw0],
input:focus-visible[b-udsfjz8mw0],
select:focus-visible[b-udsfjz8mw0] {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

@media (max-width: 520px) {
    .field-grid[b-udsfjz8mw0] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Habits/HabitDayHeader.razor.rz.scp.css */
.day-header-shell[b-8cpyvi8swi] {
    background: color-mix(in srgb, var(--background) 94%, transparent);
    border-bottom: 1px solid var(--border);
    color: var(--text-dim);
    position: sticky;
    top: 3.1rem;
    z-index: 8;
}

.header-spacer[b-8cpyvi8swi],
.average-heading[b-8cpyvi8swi] {
    align-items: center;
    display: flex;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .08em;
    padding: .65rem .75rem;
    text-transform: uppercase;
}

.average-heading[b-8cpyvi8swi] {
    justify-content: flex-end;
}

.day-heading[b-8cpyvi8swi] {
    color: var(--text-dim);
    font-variant-numeric: tabular-nums;
    padding: .55rem .08rem;
    text-align: center;
}

.day-heading span[b-8cpyvi8swi],
.day-heading strong[b-8cpyvi8swi] {
    display: block;
}

.day-heading span[b-8cpyvi8swi] {
    font-size: clamp(.56rem, 1.7vw, .68rem);
    font-weight: 750;
    text-transform: uppercase;
}

.day-heading strong[b-8cpyvi8swi] {
    color: var(--text-muted);
    font-size: .72rem;
    margin-top: .08rem;
}

.day-heading.today-column span[b-8cpyvi8swi],
.day-heading.today-column strong[b-8cpyvi8swi] {
    color: var(--accent-bright);
}

@media (max-width: 700px) {
    .day-header-shell[b-8cpyvi8swi] {
        display: block;
        padding-left: 0;
        padding-right: 0;
        top: 3rem;
    }

    .header-spacer[b-8cpyvi8swi],
    .average-heading[b-8cpyvi8swi],
    .day-header-shell > div:last-child[b-8cpyvi8swi] {
        display: none;
    }
}
/* /Components/Habits/HabitEntryCell.razor.rz.scp.css */
.entry-cell[b-crbwnexpx4] {
    align-items: end;
    display: flex;
    justify-content: center;
    min-height: 4.6rem;
    min-width: 0;
    padding: .45rem .12rem;
    position: relative;
}

.entry-cell.today-column[b-crbwnexpx4] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--accent) 7%, transparent), transparent);
    box-shadow: inset 1px 0 color-mix(in srgb, var(--accent) 18%, transparent), inset -1px 0 color-mix(in srgb, var(--accent) 18%, transparent);
}

.entry-cell.inactive[b-crbwnexpx4] {
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 5px, rgba(255, 255, 255, .018) 5px, rgba(255, 255, 255, .018) 10px);
}

.entry-cell.entry-completed[b-crbwnexpx4] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--habit-color) 27%, transparent), color-mix(in srgb, var(--habit-color) 10%, transparent));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--habit-color) 48%, transparent),
                inset 0 -3px color-mix(in srgb, var(--habit-color) 82%, transparent);
}

.entry-cell.entry-completed.today-column[b-crbwnexpx4] {
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--habit-color) 58%, transparent),
                inset 0 -3px color-mix(in srgb, var(--habit-color) 92%, transparent);
}

.boolean-target[b-crbwnexpx4] {
    align-items: center;
    background: transparent;
    border: 2px solid color-mix(in srgb, var(--habit-color) 62%, var(--text-dim));
    border-radius: .42rem;
    display: flex;
    height: 2.75rem;
    justify-content: center;
    padding: 0;
    transition: background-color .12s ease, border-color .12s ease, box-shadow .12s ease, transform .12s ease;
    width: 2.75rem;
}

.boolean-target span[b-crbwnexpx4] {
    display: none;
}

.boolean-target.completed[b-crbwnexpx4] {
    background: var(--habit-color);
    border-color: var(--habit-color);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--habit-color) 13%, transparent),
                0 0 14px color-mix(in srgb, var(--habit-color) 38%, transparent);
    transform: scale(1.04);
}

.boolean-target:hover:not(:disabled)[b-crbwnexpx4] {
    transform: scale(1.08);
}

.boolean-target:disabled[b-crbwnexpx4],
.numeric-cell:has(input:disabled)[b-crbwnexpx4] {
    opacity: .28;
}

.boolean-target:focus-visible[b-crbwnexpx4] {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

.numeric-cell[b-crbwnexpx4] {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-width: 0;
    width: 100%;
}

.numeric-cell input[b-crbwnexpx4] {
    appearance: textfield;
    background: transparent;
    border: 0;
    border-radius: .25rem;
    color: var(--text);
    font-size: clamp(.64rem, 1.8vw, .76rem);
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    height: 1.5rem;
    min-width: 0;
    padding: 0 .05rem;
    text-align: center;
    width: 100%;
}

.numeric-cell input[b-crbwnexpx4]::-webkit-inner-spin-button,
.numeric-cell input[b-crbwnexpx4]::-webkit-outer-spin-button {
    appearance: none;
    margin: 0;
}

.numeric-cell input:focus[b-crbwnexpx4] {
    background: var(--surface-hover);
    outline: 2px solid var(--focus);
}

.numeric-cell input[b-crbwnexpx4]::placeholder {
    color: var(--text-dim);
}

.bar-stage[b-crbwnexpx4] {
    align-items: end;
    display: flex;
    height: var(--stage-height);
    justify-content: center;
    max-width: 2.25rem;
    min-height: 48px;
    position: relative;
    width: 68%;
}

.bar-stage[b-crbwnexpx4]::before {
    background: color-mix(in srgb, var(--habit-color) 9%, transparent);
    border: 1px solid color-mix(in srgb, var(--habit-color) 32%, transparent);
    border-radius: .22rem .22rem .08rem .08rem;
    bottom: 0;
    content: "";
    height: 36px;
    left: 0;
    position: absolute;
    right: 0;
}

.target-line[b-crbwnexpx4] {
    border-top: 1px dashed rgba(255, 255, 255, .12);
    bottom: 36px;
    left: -12%;
    position: absolute;
    right: -12%;
    z-index: 2;
}

.numeric-bar[b-crbwnexpx4] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--habit-color) 72%, #fff), var(--habit-color));
    border-radius: .18rem .18rem .08rem .08rem;
    box-shadow: 0 0 10px color-mix(in srgb, var(--habit-color) 16%, transparent);
    height: var(--bar-height);
    min-height: 1px;
    position: relative;
    width: 100%;
    z-index: 1;
}

.numeric-cell.has-value .numeric-bar[b-crbwnexpx4] {
    min-height: 3px;
}

.numeric-cell.empty .numeric-bar[b-crbwnexpx4] {
    background: color-mix(in srgb, var(--habit-color) 34%, transparent);
    box-shadow: none;
    min-height: 2px;
}

.cell-error[b-crbwnexpx4] {
    align-items: center;
    background: var(--danger);
    border-radius: 50%;
    color: white;
    cursor: help;
    display: flex;
    font-size: .6rem;
    font-weight: 850;
    height: .9rem;
    justify-content: center;
    position: absolute;
    right: .05rem;
    top: .2rem;
    width: .9rem;
}

@media (prefers-reduced-motion: reduce) {
    .boolean-target[b-crbwnexpx4] {
        transition: none;
    }
}
/* /Components/Habits/HabitEntryView.razor.rz.scp.css */
.entry-grid[b-oq7bbkitgr] {
    align-items: end;
    min-width: 0;
}
/* /Components/Habits/HabitHeaderActions.razor.rz.scp.css */
.habit-header-actions[b-gowymm11hr] {
    align-items: center;
    display: flex;
    gap: .35rem;
}

.add-habit-icon[b-gowymm11hr] {
    align-items: center;
    background: var(--accent);
    border: 1px solid color-mix(in srgb, var(--accent) 72%, white);
    border-radius: .48rem;
    color: #fff;
    display: inline-flex;
    font-size: 1.05rem;
    font-weight: 750;
    height: 2.15rem;
    justify-content: center;
    text-decoration: none;
    width: 2.15rem;
}

.add-habit-icon:hover[b-gowymm11hr] {
    background: color-mix(in srgb, var(--accent) 88%, white);
    color: #fff;
}

.add-habit-icon:focus-visible[b-gowymm11hr] {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

@media (max-width: 420px) {
    .habit-header-actions[b-gowymm11hr] {
        gap: .2rem;
    }

    .habit-header-actions[b-gowymm11hr]  .segmented-option {
        min-height: 1.85rem;
        padding-inline: .42rem;
    }

    .add-habit-icon[b-gowymm11hr] {
        height: 2rem;
        width: 2rem;
    }
}
/* /Components/Habits/HabitIdentity.razor.rz.scp.css */
.habit-identity[b-oqe41zpubu] {
    align-items: center;
    display: flex;
    gap: .55rem;
    min-width: 0;
}

.habit-marker[b-oqe41zpubu] {
    background: var(--habit-color);
    border-radius: .18rem;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--habit-color) 14%, transparent);
    flex: 0 0 auto;
    height: .65rem;
    width: .65rem;
}

.identity-copy[b-oqe41zpubu] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.habit-name[b-oqe41zpubu] {
    color: var(--text);
    font-size: .88rem;
    font-weight: 720;
}

.identity-separator[b-oqe41zpubu],
.target-label[b-oqe41zpubu] {
    color: var(--text-dim);
    font-size: .74rem;
}

@media (min-width: 701px) {
    .identity-copy span[b-oqe41zpubu] {
        display: block;
    }

    .identity-separator[b-oqe41zpubu] {
        display: none !important;
    }

    .target-label[b-oqe41zpubu] {
        margin-top: .13rem;
    }
}
/* /Components/Habits/HabitPercent.razor.rz.scp.css */
.habit-percent[b-flodahjk7z] {
    color: var(--habit-color);
    font-variant-numeric: tabular-nums;
    font-weight: 750;
    white-space: nowrap;
}
/* /Components/Habits/HabitRow.razor.rz.scp.css */
.habit-row[b-cc5w9shs13] {
    align-items: center;
    border-bottom: 1px solid var(--border-subtle);
    min-height: 6rem;
    position: relative;
}

.habit-row:hover[b-cc5w9shs13] {
    background: color-mix(in srgb, var(--habit-color) 2.5%, transparent);
}

.identity-column[b-cc5w9shs13] {
    min-width: 0;
    padding: .8rem .7rem;
}

.data-column[b-cc5w9shs13] {
    min-width: 0;
}

.desktop-percent[b-cc5w9shs13] {
    display: flex;
    justify-content: flex-end;
    padding-right: .65rem;
}

.mobile-percent[b-cc5w9shs13] {
    display: none;
}

.habit-actions[b-cc5w9shs13] {
    justify-self: center;
    position: relative;
}

.habit-actions summary[b-cc5w9shs13] {
    align-items: center;
    border-radius: .35rem;
    color: var(--text-dim);
    cursor: pointer;
    display: flex;
    font-size: .85rem;
    height: 2.2rem;
    justify-content: center;
    list-style: none;
    width: 2.2rem;
}

.habit-actions summary[b-cc5w9shs13]::-webkit-details-marker {
    display: none;
}

.habit-actions summary:hover[b-cc5w9shs13] {
    background: var(--surface-hover);
    color: var(--text);
}

.habit-actions summary:focus-visible[b-cc5w9shs13] {
    outline: 2px solid var(--focus);
}

.action-menu[b-cc5w9shs13] {
    background: var(--surface-raised);
    border: 1px solid var(--border-strong);
    border-radius: .5rem;
    box-shadow: var(--shadow);
    min-width: 9rem;
    padding: .3rem;
    position: absolute;
    right: 0;
    top: 2.25rem;
    z-index: 12;
}

.action-menu button[b-cc5w9shs13] {
    background: transparent;
    border: 0;
    border-radius: .35rem;
    color: var(--text);
    font-size: .78rem;
    padding: .5rem .6rem;
    text-align: left;
    width: 100%;
}

.action-menu button:hover[b-cc5w9shs13],
.action-menu button:focus-visible[b-cc5w9shs13] {
    background: var(--surface-hover);
    outline: none;
}

@media (max-width: 700px) {
    .habit-row[b-cc5w9shs13] {
        display: block;
        min-height: 0;
        padding: .7rem 0 .45rem;
    }

    .identity-column[b-cc5w9shs13] {
        align-items: center;
        display: flex;
        padding: 0 2.3rem .2rem .1rem;
    }

    .mobile-percent[b-cc5w9shs13] {
        display: block;
        margin-left: auto;
        padding-left: .5rem;
    }

    .desktop-percent[b-cc5w9shs13] {
        display: none;
    }

    .habit-actions[b-cc5w9shs13] {
        position: absolute;
        right: 0;
        top: .48rem;
    }

    .action-menu[b-cc5w9shs13] {
        right: 0;
    }
}
/* /Components/Habits/HabitSection.razor.rz.scp.css */
.habit-section[b-hrvkkhmdib] {
    margin-top: 1rem;
}

.section-rows[b-hrvkkhmdib] {
    border-left: 1px solid color-mix(in srgb, var(--section-color) 18%, var(--border-subtle));
}

@media (max-width: 700px) {
    .habit-section[b-hrvkkhmdib] {
        margin-top: .75rem;
    }

    .section-rows[b-hrvkkhmdib] {
        border-left: 0;
    }
}
/* /Components/Habits/HabitToolbar.razor.rz.scp.css */
.habit-toolbar[b-2zbwu03dkw] {
    border-bottom: 1px solid var(--border);
    padding: 1.2rem 0 1rem;
}

.toolbar-primary[b-2zbwu03dkw],
.toolbar-secondary[b-2zbwu03dkw],
.date-navigation[b-2zbwu03dkw] {
    align-items: center;
    display: flex;
}

.toolbar-primary[b-2zbwu03dkw] {
    gap: 1rem;
}

.toolbar-title[b-2zbwu03dkw] {
    margin-right: auto;
}

.toolbar-title p[b-2zbwu03dkw] {
    color: var(--text-dim);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .12em;
    margin: 0 0 .15rem;
    text-transform: uppercase;
}

.toolbar-title h1[b-2zbwu03dkw] {
    font-size: clamp(1.55rem, 3vw, 2rem);
    letter-spacing: -.035em;
    margin: 0;
}

.toolbar-secondary[b-2zbwu03dkw] {
    flex-wrap: wrap;
    gap: .65rem;
    margin-top: 1rem;
}

.date-navigation[b-2zbwu03dkw] {
    gap: .35rem;
}

.today-button[b-2zbwu03dkw],
.range-chip[b-2zbwu03dkw],
.range-select select[b-2zbwu03dkw] {
    border: 1px solid var(--border);
    border-radius: .5rem;
    min-height: 2.25rem;
}

.today-button[b-2zbwu03dkw],
.range-select select[b-2zbwu03dkw] {
    background: var(--surface-raised);
    color: var(--text);
    font-size: .78rem;
    font-weight: 700;
    padding: .35rem .7rem;
}

.range-chip[b-2zbwu03dkw] {
    align-items: center;
    background: var(--surface-raised);
    color: var(--text-muted);
    display: inline-flex;
    font-size: .78rem;
    font-weight: 700;
    padding: .35rem .72rem;
}

.range-label[b-2zbwu03dkw] {
    color: var(--text-dim);
    font-size: .78rem;
    font-variant-numeric: tabular-nums;
    margin-left: auto;
}

button:focus-visible[b-2zbwu03dkw],
select:focus-visible[b-2zbwu03dkw] {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

@media (max-width: 700px) {
    .habit-toolbar[b-2zbwu03dkw] {
        padding-top: .8rem;
    }

    .toolbar-primary[b-2zbwu03dkw] {
        align-items: flex-end;
        flex-wrap: wrap;
    }

    .toolbar-title[b-2zbwu03dkw] {
        flex: 1 0 7rem;
    }

    .toolbar-secondary[b-2zbwu03dkw] {
        display: grid;
        grid-template-columns: auto 1fr;
    }

    .date-navigation[b-2zbwu03dkw] {
        grid-column: 2;
        justify-self: end;
    }

    .range-label[b-2zbwu03dkw] {
        grid-column: 1 / -1;
        margin: 0;
    }
}
/* /Components/Habits/HabitTrendView.razor.rz.scp.css */
.trend-view[b-06whkop3ke] {
    min-width: 0;
    padding: .25rem .5rem;
}

@media (max-width: 700px) {
    .trend-view[b-06whkop3ke] {
        padding: .15rem 0 0;
    }
}
/* /Components/Habits/SectionHeader.razor.rz.scp.css */
.section-header[b-srtqqpa1bs] {
    align-items: center;
    background: transparent;
    border: 0;
    border-bottom: 1px solid color-mix(in srgb, var(--section-color) 28%, var(--border));
    color: var(--section-color);
    display: flex;
    min-height: 2.8rem;
    padding: .65rem .5rem;
    text-align: left;
    width: 100%;
}

.collapse-mark[b-srtqqpa1bs] {
    color: var(--text-dim);
    font-size: .75rem;
    margin-right: .4rem;
    width: .7rem;
}

.section-name[b-srtqqpa1bs] {
    font-size: .74rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.section-count[b-srtqqpa1bs] {
    color: var(--text-dim);
    font-size: .72rem;
    margin-left: .3rem;
}

.section-header[b-srtqqpa1bs]  .habit-percent {
    margin-left: auto;
}

.section-header:hover[b-srtqqpa1bs] {
    background: color-mix(in srgb, var(--section-color) 5%, transparent);
}

.section-header:focus-visible[b-srtqqpa1bs] {
    outline: 2px solid var(--focus);
    outline-offset: -2px;
}

@media (max-width: 700px) {
    .section-header[b-srtqqpa1bs] {
        padding-inline: .15rem;
    }

    .section-count[b-srtqqpa1bs] {
        font-size: .68rem;
    }
}
/* /Components/Habits/Sparkline.razor.rz.scp.css */
.sparkline[b-toyleor5ls] {
    display: block;
    height: 5rem;
    overflow: visible;
    width: 100%;
}

.reference-line[b-toyleor5ls] {
    stroke: rgba(255, 255, 255, .11);
    stroke-dasharray: 2 2;
    stroke-width: .45;
}

.spark-path[b-toyleor5ls] {
    fill: none;
    filter: drop-shadow(0 0 3px color-mix(in srgb, var(--spark-color) 22%, transparent));
    stroke: var(--spark-color);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.spark-point[b-toyleor5ls] {
    fill: var(--spark-color);
    filter: drop-shadow(0 0 3px color-mix(in srgb, var(--spark-color) 30%, transparent));
    stroke: color-mix(in srgb, var(--spark-color) 45%, white);
    stroke-width: .65;
}

@media (max-width: 700px) {
    .sparkline[b-toyleor5ls] {
        height: 4.4rem;
    }
}
/* /Components/Shared/IconButton.razor.rz.scp.css */
.icon-button[b-m8bpumuoa1] {
    align-items: center;
    background: var(--surface-raised);
    border: 1px solid var(--border);
    border-radius: .5rem;
    color: var(--text);
    display: inline-flex;
    font-size: 1rem;
    height: 2.25rem;
    justify-content: center;
    width: 2.25rem;
}

.icon-button:hover:not(:disabled)[b-m8bpumuoa1] {
    background: var(--surface-hover);
    border-color: var(--border-strong);
}

.icon-button:disabled[b-m8bpumuoa1] {
    cursor: not-allowed;
    opacity: .35;
}

.icon-button:focus-visible[b-m8bpumuoa1] {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}
/* /Components/Shared/SegmentedControl.razor.rz.scp.css */
.segmented-control[b-dknzxbrxl2] {
    align-items: center;
    background: var(--surface-raised);
    border: 1px solid var(--border);
    border-radius: .55rem;
    display: inline-flex;
    gap: .15rem;
    padding: .18rem;
}

.segmented-option[b-dknzxbrxl2] {
    background: transparent;
    border: 0;
    border-radius: .38rem;
    color: var(--text-muted);
    font-size: .78rem;
    font-weight: 700;
    min-height: 2rem;
    padding: .3rem .72rem;
}

.segmented-option:hover[b-dknzxbrxl2] {
    color: var(--text);
}

.segmented-option.active[b-dknzxbrxl2] {
    background: var(--accent-soft);
    color: var(--accent-bright);
}

.segmented-option:focus-visible[b-dknzxbrxl2] {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

@media (max-width: 700px) {
    .segmented-option[b-dknzxbrxl2] {
        padding-inline: .58rem;
    }
}
/* /Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-ugicni5dgz] {
    min-height: 100vh;
}

.app-header[b-ugicni5dgz] {
    align-items: center;
    backdrop-filter: blur(18px);
    background: color-mix(in srgb, var(--background) 88%, transparent);
    border-bottom: 1px solid var(--border);
    display: flex;
    height: 3.1rem;
    inset: 0 0 auto;
    padding: 0 max(1rem, calc((100vw - 1280px) / 2));
    position: sticky;
    z-index: 30;
}

.brand[b-ugicni5dgz] {
    align-items: center;
    color: var(--text);
    display: inline-flex;
    font-size: .82rem;
    font-weight: 800;
    gap: .42rem;
    letter-spacing: -.01em;
    text-decoration: none;
}

.brand span[b-ugicni5dgz] {
    color: var(--accent-bright);
    font-size: .62rem;
}

nav[b-ugicni5dgz] {
    align-items: center;
    display: flex;
    gap: .2rem;
    margin-left: .35rem;
}

.header-actions[b-ugicni5dgz] {
    align-items: center;
    display: flex;
    margin-left: auto;
}

nav[b-ugicni5dgz]  a,
nav button[b-ugicni5dgz] {
    background: transparent;
    border: 0;
    border-radius: .35rem;
    color: var(--text-dim);
    font-size: .72rem;
    font-weight: 700;
    padding: .38rem .58rem;
    text-decoration: none;
}

nav[b-ugicni5dgz]  a:hover,
nav[b-ugicni5dgz]  a.active,
nav button:hover[b-ugicni5dgz] {
    background: var(--surface-hover);
    color: var(--text);
}

nav[b-ugicni5dgz]  a:focus-visible,
nav button:focus-visible[b-ugicni5dgz],
.brand:focus-visible[b-ugicni5dgz] {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

.app-main[b-ugicni5dgz] {
    margin: 0 auto;
    max-width: 1280px;
    padding: 0 1rem;
}

@media (max-width: 700px) {
    .app-header[b-ugicni5dgz] {
        padding-inline: .75rem;
    }

    nav[b-ugicni5dgz] {
        margin-left: .15rem;
    }

    nav button[b-ugicni5dgz] {
        padding-inline: .4rem;
    }

    .app-main[b-ugicni5dgz] {
        padding-inline: .65rem;
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-r8x083wz40] {
    background-color: rgba(255, 255, 255, 0.1);
}

.top-row[b-r8x083wz40] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-r8x083wz40] {
    font-size: 1.1rem;
}

.bi[b-r8x083wz40] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-r8x083wz40] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-r8x083wz40] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-r8x083wz40] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-r8x083wz40] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-r8x083wz40] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-r8x083wz40] {
        padding-bottom: 1rem;
    }

    .nav-item[b-r8x083wz40]  a {
        color: #d7d7d7;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
    }

.nav-item[b-r8x083wz40]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-r8x083wz40]  a:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

@media (min-width: 641px) {
    .navbar-toggler[b-r8x083wz40] {
        display: none;
    }

    .collapse[b-r8x083wz40] {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }

    .nav-scrollable[b-r8x083wz40] {
        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Pages/Habits.razor.rz.scp.css */
.dashboard-content[b-nggrrhbbgz] {
    margin-bottom: 3rem;
    transition: opacity .15s ease;
}

.dashboard-content[aria-busy="true"][b-nggrrhbbgz] {
    opacity: .62;
}

.dashboard-status[b-nggrrhbbgz],
.dashboard-empty[b-nggrrhbbgz] {
    color: var(--text-muted);
    min-height: 18rem;
    text-align: center;
}

.dashboard-status[b-nggrrhbbgz] {
    align-items: center;
    display: flex;
    gap: .6rem;
    justify-content: center;
}

.status-pulse[b-nggrrhbbgz] {
    animation: pulse-b-nggrrhbbgz 1.2s ease-in-out infinite;
    background: var(--accent-bright);
    border-radius: 50%;
    height: .55rem;
    width: .55rem;
}

.dashboard-empty[b-nggrrhbbgz] {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.dashboard-empty h2[b-nggrrhbbgz] {
    color: var(--text);
    font-size: 1.2rem;
    margin: .65rem 0 .25rem;
}

.dashboard-empty p[b-nggrrhbbgz] {
    font-size: .85rem;
    margin: 0 0 1rem;
}

.empty-mark[b-nggrrhbbgz] {
    color: var(--accent-bright);
    font-size: 2rem;
}

.dashboard-alert[b-nggrrhbbgz] {
    align-items: center;
    background: color-mix(in srgb, var(--danger) 10%, transparent);
    border: 1px solid color-mix(in srgb, var(--danger) 32%, transparent);
    border-radius: .5rem;
    color: #fda4af;
    display: flex;
    font-size: .8rem;
    gap: 1rem;
    justify-content: space-between;
    margin: .8rem 0;
    padding: .65rem .75rem;
}

.dashboard-alert button[b-nggrrhbbgz] {
    background: transparent;
    border: 1px solid currentColor;
    border-radius: .35rem;
    color: inherit;
    font-size: .72rem;
    font-weight: 700;
    padding: .3rem .5rem;
}

@keyframes pulse-b-nggrrhbbgz {
    50% { opacity: .3; transform: scale(.8); }
}

@media (prefers-reduced-motion: reduce) {
    .dashboard-content[b-nggrrhbbgz] {
        transition: none;
    }

    .status-pulse[b-nggrrhbbgz] {
        animation: none;
    }
}
