/* _content/Phasing.Website/Components/Account/Pages/Login.razor.rz.scp.css */
.login-container[b-sy55s6791h]
{
    width: 100%;
    max-width: 100%;
    padding: 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (min-width: 768px)
{
    .login-container[b-sy55s6791h]
    {
        max-width: 500px;
        padding: 2rem;
    }
}

.login-card[b-sy55s6791h]
{
    width: 100%;
    max-width: 100%;
    background: rgba(26, 32, 44, 0.7);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: 24px;
    padding: 2.5rem;
    position: relative;
    box-shadow: 
        0 8px 32px rgba(0, 0, 0, 0.4),
        0 0 0 1px rgba(255, 255, 255, 0.05) inset;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

@media (min-width: 768px)
{
    .login-card[b-sy55s6791h]
    {
        padding: 3rem;
        max-width: 500px;
    }
}

/* Bright blue-white glow on top edge */
.login-card[b-sy55s6791h]::before
{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(135, 206, 250, 0.8) 20%,
        rgba(173, 216, 230, 0.9) 50%,
        rgba(135, 206, 250, 0.8) 80%,
        transparent 100%
    );
    border-radius: 24px 24px 0 0;
    box-shadow: 0 0 20px rgba(173, 216, 230, 0.5);
}

.login-header[b-sy55s6791h]
{
    text-align: center;
    margin-bottom: 2rem;
}

.header-icon[b-sy55s6791h]
{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 1.5rem;
    position: relative;
    width: 48px;
    height: 48px;
    margin-left: auto;
    margin-right: auto;
}

.icon-circle-outer[b-sy55s6791h]
{
    width: 48px;
    height: 48px;
    border: 2px solid rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    position: absolute;
}

.icon-circle-inner[b-sy55s6791h]
{
    width: 16px;
    height: 16px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    position: absolute;
}

.login-title[b-sy55s6791h]
{
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 2rem;
    font-weight: 700;
    color: #E0E0E0;
    margin: 0 0 0.5rem 0;
    letter-spacing: -0.02em;
}

@media (min-width: 768px)
{
    .login-title[b-sy55s6791h]
    {
        font-size: 2.25rem;
    }
}

.login-subtitle[b-sy55s6791h]
{
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 0.9375rem;
    font-weight: 400;
    color: #A0A0A0;
    margin: 0;
    line-height: 1.5;
}

.login-form[b-sy55s6791h]
{
    width: 100%;
}

.form-group[b-sy55s6791h]
{
    margin-bottom: 1.25rem;
}

.form-group:last-of-type[b-sy55s6791h]
{
    margin-bottom: 1.5rem;
}

.form-label[b-sy55s6791h]
{
    display: block;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    color: #E0E0E0;
    margin-bottom: 0.5rem;
    letter-spacing: 0.01em;
}

.form-control[b-sy55s6791h]
{
    width: 100%;
    padding: 0.875rem 1rem;
    background: rgba(26, 32, 44, 0.6);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    color: #E0E0E0;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 1rem;
    box-sizing: border-box;
    transition: all 0.2s ease;
    outline: none;
}

.form-control[b-sy55s6791h]::placeholder
{
    color: #666666;
}

.form-control:focus[b-sy55s6791h]
{
    outline: none;
    border-color: rgba(173, 216, 230, 0.4);
    background: rgba(26, 32, 44, 0.8);
    box-shadow: 
        0 0 0 2px rgba(173, 216, 230, 0.1),
        0 0 0 1px rgba(173, 216, 230, 0.2) inset;
}

/* Subtle blue highlight on top edge of input fields */
.form-control:focus[b-sy55s6791h]::before
{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: rgba(173, 216, 230, 0.3);
    border-radius: 12px 12px 0 0;
}

.form-check-group[b-sy55s6791h]
{
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
}

.form-check-input[b-sy55s6791h]
{
    width: 18px;
    height: 18px;
    margin-right: 0.75rem;
    cursor: pointer;
    background-color: rgba(26, 32, 44, 0.6);
    border: 1.5px solid rgba(255, 255, 255, 0.3);
    border-radius: 4px;
    accent-color: #4A90E2;
    transition: all 0.2s ease;
}

.form-check-input:checked[b-sy55s6791h]
{
    background-color: #4A90E2;
    border-color: #4A90E2;
}

.form-check-input:focus[b-sy55s6791h]
{
    outline: none;
    box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.2);
}

.form-check-label[b-sy55s6791h]
{
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 0.9375rem;
    font-weight: 400;
    color: #E0E0E0;
    cursor: pointer;
    user-select: none;
}

.login-button[b-sy55s6791h]
{
    width: 100%;
    padding: 0.875rem 1.5rem;
    background: rgba(74, 144, 226, 0.9);
    border: none;
    border-radius: 12px;
    color: #FFFFFF;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(74, 144, 226, 0.3);
}

.login-button:hover[b-sy55s6791h]
{
    background: rgba(74, 144, 226, 1);
    box-shadow: 0 6px 16px rgba(74, 144, 226, 0.4);
    transform: translateY(-1px);
}

.login-button:active[b-sy55s6791h]
{
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(74, 144, 226, 0.3);
}

.login-button:focus[b-sy55s6791h]
{
    outline: none;
    box-shadow: 
        0 0 0 3px rgba(74, 144, 226, 0.2),
        0 4px 12px rgba(74, 144, 226, 0.3);
}

.status-message[b-sy55s6791h],
.validation-message[b-sy55s6791h]
{
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 0.875rem;
    color: #FF6B6B;
    margin-top: 0.5rem;
    display: block;
}

.validation-message[role="alert"][b-sy55s6791h]
{
    margin-bottom: 1rem;
    padding: 0.75rem;
    background: rgba(255, 107, 107, 0.1);
    border: 1px solid rgba(255, 107, 107, 0.2);
    border-radius: 8px;
}
/* _content/Phasing.Website/Components/Layout/AuthLayout.razor.rz.scp.css */
.auth-layout[b-jyn3x2tmeb]
{
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #1A202C;
    background-image: 
        radial-gradient(circle at 20% 50%, rgba(120, 119, 198, 0.03) 0%, transparent 50%),
        radial-gradient(circle at 80% 80%, rgba(120, 119, 198, 0.03) 0%, transparent 50%);
    position: relative;
}

.auth-layout[b-jyn3x2tmeb]::before
{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.02'/%3E%3C/svg%3E");
    pointer-events: none;
    opacity: 0.3;
}

.auth-layout main[b-jyn3x2tmeb]
{
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    position: relative;
    z-index: 1;
}

@media (min-width: 768px)
{
    .auth-layout main[b-jyn3x2tmeb]
    {
        padding: 2rem;
    }
}

.auth-content[b-jyn3x2tmeb]
{
    width: 100%;
    max-width: 100%;
}

@media (min-width: 768px)
{
    .auth-content[b-jyn3x2tmeb]
    {
        max-width: 600px;
    }
}

#blazor-error-ui[b-jyn3x2tmeb]
{
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-jyn3x2tmeb]
{
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* _content/Phasing.Website/Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-9qlh08gm2u] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--app-bg);
}

.sidebar[b-9qlh08gm2u] {
    width: 100%;
    background: var(--nav-bg);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

main[b-9qlh08gm2u] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: radial-gradient(circle at 20% 30%, rgba(139, 92, 246, 0.08), transparent 40%),
                var(--app-bg);
}

.top-row[b-9qlh08gm2u] {
    position: sticky;
    top: 0;
    z-index: 50;
    height: 4.5rem;
    padding: 0 1.75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(26, 30, 51, 0.9);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
    backdrop-filter: blur(12px);
}

.top-row[b-9qlh08gm2u]  label {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.7rem;
    color: var(--text-muted);
}

.content[b-9qlh08gm2u] {
    flex: 1;
}

@media (min-width: 960px) {
    .page[b-9qlh08gm2u] {
        flex-direction: row;
    }

    .sidebar[b-9qlh08gm2u] {
        width: 260px;
        height: 100vh;
        border-right: 1px solid rgba(255, 255, 255, 0.08);
        border-bottom: none;
        position: sticky;
        top: 0;
    }

    main[b-9qlh08gm2u] {
        flex: 1;
    }
}

@media (max-width: 959.98px) {
    .top-row[b-9qlh08gm2u] {
        flex-wrap: wrap;
        gap: 1rem;
        padding: 1rem;
    }
}

#blazor-error-ui[b-9qlh08gm2u] {
    background: rgba(248, 113, 113, 0.15);
    border: 1px solid rgba(248, 113, 113, 0.3);
    color: var(--text-primary);
    bottom: 1rem;
    left: 1rem;
    right: 1rem;
    padding: 1rem;
    position: fixed;
    border-radius: 12px;
    display: none;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-9qlh08gm2u] {
        cursor: pointer;
        position: absolute;
        right: 1rem;
        top: 0.75rem;
    }

/* _content/Phasing.Website/Components/Layout/NavMenu.razor.rz.scp.css */
.nav-shell[b-q6qsakecvd] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1.0rem;
    background: var(--nav-bg);
    color: var(--text-primary);
    border-radius: 20px;
}

.nav-brand-block[b-q6qsakecvd] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.brand-title[b-q6qsakecvd] {
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.1em;
}

.brand-subtitle[b-q6qsakecvd] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    color: var(--text-muted);
}

.navbar-toggler[b-q6qsakecvd] {
    display: none;
}

.nav-scrollable[b-q6qsakecvd] {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.primary-nav .nav-item[b-q6qsakecvd] {
    margin-bottom: 0.35rem;
}

.primary-nav[b-q6qsakecvd]  .nav-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: var(--text-primary);
    font-size: 0.95rem;
    padding: 0.55rem 0.85rem;
    border-radius: 12px;
    opacity: 0.8;
    transition: background 0.2s ease, opacity 0.2s ease;
}

.primary-nav[b-q6qsakecvd]  .nav-link:hover {
    opacity: 1;
    background: rgba(255, 255, 255, 0.05);
}

.primary-nav[b-q6qsakecvd]  a.active {
    background: rgba(255, 255, 255, 0.08);
    opacity: 1;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05);
}

.icon[b-q6qsakecvd] {
    width: 1.25rem;
    height: 1.25rem;
    display: inline-block;
    background-size: cover;
    filter: brightness(1.2);
}

.icon-dashboard[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5f6ff'%3E%3Cpath d='M4 13h6V3H4v10zm0 8h6v-6H4v6zm8 0h6V11h-6v10zm0-18v6h6V3h-6z'/%3E%3C/svg%3E"); }
.icon-weights[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5f6ff'%3E%3Cpath d='M5 5h2v14H5zm12 0h2v14h-2zM9 8h6v8H9z'/%3E%3C/svg%3E"); }
.icon-flame[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5f6ff'%3E%3Cpath d='M13.5 3s.5 2-1.5 4c-2 2-1 4 0 5s1 3-1 5c0 0 5-1 6-5 1.25-4.5-3.5-9-3.5-9z'/%3E%3C/svg%3E"); }
.icon-nutrition[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5f6ff'%3E%3Cpath d='M12 2C8 7 5 9 5 13s3 7 7 7 7-3 7-7-3-6-7-11z'/%3E%3C/svg%3E"); }
.icon-graph[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5f6ff'%3E%3Cpath d='M5 18h4v-7H5v7zm5 0h4V6h-4v12zm5 0h4v-4h-4v4z'/%3E%3C/svg%3E"); }
.icon-correlation[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5f6ff'%3E%3Cpath d='M3 13h8L7 7l4 10 4-16 4 13h2'/%3E%3Cpath fill='none' stroke='%23f5f6ff' stroke-width='2' d='M3 13h8L7 7l4 10 4-16 4 13h2'/%3E%3C/svg%3E"); }
.icon-settings[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5f6ff'%3E%3Cpath d='M19.14 12.936a7.952 7.952 0 000-1.872l2.036-1.582a.5.5 0 00.12-.638l-1.928-3.338a.5.5 0 00-.607-.22l-2.397.96a7.992 7.992 0 00-1.62-.94L14.5 2.5h-5l-.245 2.006a7.992 7.992 0 00-1.62.94l-2.397-.96a.5.5 0 00-.607.22L2.703 6.846a.5.5 0 00.12.638l2.036 1.582a7.952 7.952 0 000 1.872l-2.036 1.582a.5.5 0 00-.12.638l1.928 3.338a.5.5 0 00.607.22l2.397-.96a7.992 7.992 0 001.62.94L9.5 21.5h5l.245-2.006a7.992 7.992 0 001.62-.94l2.397.96a.5.5 0 00.607-.22l1.928-3.338a.5.5 0 00-.12-.638l-2.036-1.582zM12 15a3 3 0 110-6 3 3 0 010 6z'/%3E%3C/svg%3E"); }
.icon-logout[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230f1324'%3E%3Cpath d='M16 13v-2H7V8l-5 4 5 4v-3h9zm3-10H9v3h10v14H9v3h10c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z'/%3E%3C/svg%3E"); }
.icon-login[b-q6qsakecvd] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5f6ff'%3E%3Cpath d='M10 17l1.41-1.41L8.83 13H20v-2H8.83l2.58-2.59L10 7l-5 5 5 5zm9-15H9c-1.1 0-2 .9-2 2v4h2V4h10v16H9v-4H7v4c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2z'/%3E%3C/svg%3E"); }

/* _content/Phasing.Website/Components/Pages/CorrelationGraph.razor.rz.scp.css */
.correlation-graph-card[b-p074qirqer] {
    margin-bottom: 2rem;
}

.correlation-chart-wrapper[b-p074qirqer] {
    width: 100%;
    height: 600px;
    margin-top: 1rem;
}

.correlation-chart-canvas[b-p074qirqer] {
    width: 100%;
    height: 100%;
    padding: 1rem;
}

.glass-panel[b-p074qirqer] {
    background: rgba(31, 36, 60, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    backdrop-filter: blur(10px);
}

/* _content/Phasing.Website/Components/Pages/WeeklySummary.razor.rz.scp.css */
.weekly-summary-page[b-ijp6vxly0t]
{
    color: #f4f4f5;
}

.weekly-summary-card[b-ijp6vxly0t]
{
    background-color: #1e1e1e;
    border-radius: 16px;
}

.weekly-summary-table[b-ijp6vxly0t]
{
    color: #f4f4f5;
}

.weekly-summary-table thead th[b-ijp6vxly0t]
{
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.05rem;
    color: #9ca3af;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.weekly-summary-table tbody td[b-ijp6vxly0t],
.weekly-summary-table tfoot td[b-ijp6vxly0t]
{
    border-color: rgba(255, 255, 255, 0.06);
}

.weekly-summary-table .totals-row[b-ijp6vxly0t]
{
    background-color: rgba(34, 197, 94, 0.08);
    font-weight: 600;
}

.weekly-summary-stats[b-ijp6vxly0t]
{
    margin-top: 1.5rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.weekly-summary-stats .stat-card[b-ijp6vxly0t]
{
    background-color: rgba(15, 23, 42, 0.5);
    border-radius: 12px;
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.weekly-summary-stats .label[b-ijp6vxly0t]
{
    display: block;
    font-size: 0.85rem;
    letter-spacing: 0.04rem;
    text-transform: uppercase;
    color: #9ca3af;
}

.weekly-summary-stats .value[b-ijp6vxly0t]
{
    font-size: 1.5rem;
    font-weight: 600;
    color: #f4f4f5;
}

.deficit-neutral[b-ijp6vxly0t]
{
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
}

.deficit-light[b-ijp6vxly0t]
{
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.05), rgba(34, 197, 94, 0.25));
}

.deficit-medium[b-ijp6vxly0t]
{
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.05), rgba(34, 197, 94, 0.4));
}

.deficit-strong[b-ijp6vxly0t]
{
    background: linear-gradient(90deg, rgba(34, 197, 94, 0.15), rgba(34, 197, 94, 0.65));
    color: #0f172a;
    font-weight: 600;
}

/* _content/Phasing.Website/Components/Pages/WeightGraph.razor.rz.scp.css */
.weight-chart-wrapper[b-xm4ud5sgpt]
{
    width: 100%;
    margin-top: 1.5rem;
}

/* Aspect ratio is locked at 2:1 so the plot mirrors the shared reference image. */
.weight-chart-canvas[b-xm4ud5sgpt]
{
    position: relative;
    width: 100%;
    aspect-ratio: 2 / 1;
    border-radius: 18px;
}

.weight-chart-canvas > div[b-xm4ud5sgpt]
{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

/* ApexCharts recalculates dimensions automatically when the parent size changes. */
.weight-chart-wrapper .apexcharts-canvas[b-xm4ud5sgpt]
{
    width: 100% !important;
    height: 100% !important;
}

.weight-graph-card .form-check-input[b-xm4ud5sgpt]
{
    background-color: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.15);
}

.weight-graph-card .form-check-input:checked[b-xm4ud5sgpt]
{
    background-color: var(--accent);
    border-color: var(--accent);
}

