/* /Components/ArticleCardList.razor.rz.scp.css */
.card[b-kuyw2y87ot] {
    background: var(--color-surface);
    margin-bottom: 1rem;
    border: 1px solid var(--color-border);
    border-radius: 1rem;

    &:active {
        box-shadow: 0 0 10px rgba(250, 250, 250, 0.2);
    }
}

@media (hover: hover) {
    .card:hover[b-kuyw2y87ot] {
        box-shadow: 0 0 10px rgba(250, 250, 250, 0.2);
    }
}

.card-link[b-kuyw2y87ot] {
    display: block;
    padding: 0.75rem 1rem;
    text-decoration: none;

    &:hover,
    &:active {
        opacity: 1;
    }
}

.card-title[b-kuyw2y87ot] {
    font-size: var(--font-size-lg);
    color: var(--color-text-strong);
    word-break: normal;
    text-wrap: wrap;
    margin: 0 0 0.25rem 0;
}
/* /Components/DateLabel.razor.rz.scp.css */
.date-label[b-vmg7yfdogl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 0.5rem;
    font-size: var(--font-size-sm);
    color: var(--color-text-muted);
}
/* /Components/TagList.razor.rz.scp.css */
.tags[b-rkengyytet] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.tag[b-rkengyytet] {
    background-color: var(--color-surface);
    color: var(--color-accent);
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    font-size: var(--font-size-xs);
    text-decoration: none;
    transition: opacity 0.2s ease;
    border: 1px solid var(--color-border);
    z-index: 1;

    &:active {
        opacity: 0.8;
    }
}

@media (hover: hover) {
    .tag:hover[b-rkengyytet] {
        opacity: 0.8;
    }
}

.tag.highlighted[b-rkengyytet] {
    font-weight: bold;
    box-shadow: 0 0 5px rgba(255, 255, 255, 0.25);
}
/* /Layout/MainLayout.razor.rz.scp.css */
/* Site container */
.site[b-731so8ywmr] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    width: 100%;
}

/* Header */
.site-header[b-731so8ywmr] {
    background-color: #0e0e0e;
    border-bottom: 1px solid #333333;
    padding: 1rem 0;
    top: 0;
    z-index: 100;
    width: 100%;
}

.header-content[b-731so8ywmr] {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.site-title[b-731so8ywmr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: var(--font-size-xl);
    font-weight: bold;
    color: var(--color-text-strong);
    text-decoration: none;
    letter-spacing: -0.05em;

    &:active {
        color: var(--color-accent);
    }
}

@media (hover: hover) {
    .site-title:hover[b-731so8ywmr] {
        color: var(--color-accent);
    }
}

.site-icon[b-731so8ywmr] {
    width: 1.5rem;
    height: 1.5rem;
}

.site-nav[b-731so8ywmr] {
    display: flex;
    gap: 1.5rem;
}

.site-nav[b-731so8ywmr]  a {
    color: var(--color-text-muted);
    text-decoration: none;
    font-size: var(--font-size-base);

    &:active {
        color: var(--color-accent);
    }

}

.site-nav[b-731so8ywmr]  a.active {
    border-bottom: 2px solid var(--color-border);

    &:active {
        border-color: var(--color-accent);
    }
}

@media (hover: hover) {
    .site-nav[b-731so8ywmr]  a:hover {
        color: var(--color-accent);
    }

    .site-nav[b-731so8ywmr]  a.active:hover {
        border-color: var(--color-accent);
    }
}

/* Main content */
.site-main[b-731so8ywmr] {
    flex: 1;
    max-width: var(--max-width);
    width: 100%;
    margin: 0 auto;
    padding: 3rem 1.5rem;
    min-width: 0;
}

/* Footer */
.site-footer[b-731so8ywmr] {
    background-color: #0e0e0e;
    border-top: 1px solid #333333;
    padding: 2rem 0;
    width: 100%;
}

.footer-content[b-731so8ywmr] {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 1.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    text-align: center;
    text-wrap: balance;
    width: 100%;
}

.footer-links[b-731so8ywmr] {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 0;
}

.footer-links a[b-731so8ywmr] {
    color: var(--color-text-muted);
    text-decoration: none;
    font-size: var(--font-size-sm);

    &:active {
        color: var(--color-accent);
    }
}

@media (hover: hover) {
    .footer-links a:hover[b-731so8ywmr] {
        color: var(--color-accent);
    }
}

.footer-separator[b-731so8ywmr] {
    color: var(--color-text-muted);
    font-size: var(--font-size-sm);
}

.footer-content p[b-731so8ywmr] {
    color: var(--color-text-muted);
    font-size: var(--font-size-sm);
    margin: 0;
}

/* Mobile responsive */
@media (max-width: 640px) {
    .header-content[b-731so8ywmr] {
        flex-direction: column;
        gap: 1rem;
    }

    .site-nav[b-731so8ywmr] {
        gap: 1rem;
    }

    .site-main[b-731so8ywmr] {
        padding: 2rem 1rem;
    }

    .footer-content[b-731so8ywmr] {
        gap: 0.75rem;
    }

    .footer-links[b-731so8ywmr] {
        flex-wrap: wrap;
        row-gap: 0.5rem;
    }
}

/* Loading overlay (fixed, does not affect layout) */
.loading-overlay[b-731so8ywmr] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    pointer-events: auto;
    z-index: 1000;
    background: rgba(0, 0, 0, 0.0);
}

.loading-spinner[b-731so8ywmr] {
    margin-top: 1rem;
    width: 2rem;
    height: 2rem;
    border: 0.2rem solid var(--color-accent);
    border-right-color: transparent;
    border-radius: 50%;
    animation: loading-spin-b-731so8ywmr 0.75s linear infinite;
}

@keyframes loading-spin-b-731so8ywmr {
    to {
        transform: rotate(360deg);
    }
}
/* /Pages/About.razor.rz.scp.css */
.about-content[b-t604hhsvpp] {
    text-align: center;
    text-wrap: balance;
    margin-bottom: 4rem;

    & img {
        width: 100px;
        height: 100px;
    }

    h1[b-t604hhsvpp] {
        font-size: var(--font-size-2xl);
        margin: 0 0 0.5rem 0;
    }

    p[b-t604hhsvpp] {
        margin: 0;
    }
}
/* /Pages/Blog/BlogDetail.razor.rz.scp.css */
.blog-header[b-fspvtf4xor] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--color-border);

    & h1 {
        margin-bottom: 0.5rem;
    }
}

.blog-content[b-fspvtf4xor]  h2,
.blog-content[b-fspvtf4xor]  h3,
.blog-content[b-fspvtf4xor]  h4,
.blog-content[b-fspvtf4xor]  h5,
.blog-content[b-fspvtf4xor]  h6 {
    margin-top: 2.5rem;
    margin-bottom: 1rem;
}

.blog-content[b-fspvtf4xor]  a {
    color: var(--color-text-strong);
}

.blog-content[b-fspvtf4xor]  blockquote {
    border-left: 3px solid var(--color-accent);
    margin-left: 0;
    margin-right: 0;
    padding-left: 1.25rem;
    color: var(--color-text-muted);
    font-style: italic;
}

.blog-content[b-fspvtf4xor]  pre {
    background-color: var(--color-surface);
    padding: 0;
    border-radius: 0.5rem;
    overflow-x: auto;
    border: 1px solid var(--color-border);
    max-width: 100%;
}

.blog-content[b-fspvtf4xor]  code {
    font-family: monospace;
    font-size: 0.9em;
    word-break: normal;
    overflow-wrap: break-word;
}

.blog-content[b-fspvtf4xor]  pre code {
    background-color: transparent;
    padding: 1.25rem;
    border-radius: 0;
    display: block;
    overflow-x: auto;
}

.blog-content[b-fspvtf4xor]  p code {
    background-color: var(--color-surface);
    color: var(--color-text-strong);
    padding: 0.25rem 0.5rem;
    margin: 0 1px;
    border-radius: 0.5rem;
}

.blog-content[b-fspvtf4xor]  blockquote p code {
    opacity: 0.8;
}

.blog-content[b-fspvtf4xor]  img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.blog-content[b-fspvtf4xor]  figure {
    margin: 2rem 0;
    text-align: center;
}

.blog-content[b-fspvtf4xor]  figcaption {
    font-size: var(--font-size-sm);
    color: var(--color-text-muted);
    margin-top: 0.75rem;
    font-style: italic;
}

.blog-content[b-fspvtf4xor]  table {
    border-collapse: collapse;
    width: 100%;
    margin: 1.5rem 0;
    display: block;
    overflow-x: auto;
}

.blog-content[b-fspvtf4xor]  th,
.blog-content[b-fspvtf4xor]  td {
    border: 1px solid var(--color-border);
    padding: 0.75rem 1rem;
    text-align: left;
}

.blog-content[b-fspvtf4xor]  th {
    background-color: var(--color-surface);
    color: var(--color-text-strong);
}

.blog-footer[b-fspvtf4xor] {
    margin-top: 3rem;
    border-top: 1px solid var(--color-border);

    .blog-related,
    .blog-all-tags {
        margin-top: 2rem;
    }

    .blog-related h2[b-fspvtf4xor],
    .blog-all-tags h2[b-fspvtf4xor] {
        margin: 0 0 1rem 0;
        color: var(--color-text-strong);
        font-size: var(--font-size-2xl);
    }
}
/* /Pages/Blog/BlogList.razor.rz.scp.css */
.year[b-vmvaxi4k7y] {
    font-size: var(--font-size-xl);
    color: var(--color-text-strong);
    margin-bottom: 0.5rem;
}
