﻿/* CSS Variables for Theme Support */

:root {
    /* Light Mode Default (Comma-separated for RGBA compatibility) */
    --c-paper: 245, 245, 243;
    /* #f5f5f3 */
    --c-ink: 28, 28, 28;
    /* #1c1c1c */
    --c-bamboo: 74, 124, 89;
    /* #4a7c59 */

    /* Logo Accent Color */
    --c-logo-accent: 229, 23, 23;
    /* #E51717 */

    /* Theming Support Extras */
    --c-glass: 255, 255, 255;
    /* #ffffff - For glass highlights */
    --c-text-inverse: 255, 255, 255;
    /* #ffffff - For text on primary buttons */
}

/* Theme: Dark */
html.dark {
    --c-paper: 10, 10, 10;
    /* #0a0a0a */
    --c-ink: 229, 229, 229;
    /* #e5e5e5 */
    /* Bamboo stays same, or slightly brighter if needed */
    --c-bamboo: 74, 124, 89;

    --c-glass: 0, 0, 0;
    /* #000000 - Dark glass */
    --c-text-inverse: 10, 10, 10;
    /* #0a0a0a - Dark text on light buttons */
}

/* Base Styles */
body {
    background-color: rgb(var(--c-paper));
    color: rgb(var(--c-ink));
    overflow: hidden;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    transition: background-color 1s, color 1s;
}

/* Logo Theme Support */
.logo-base {
    fill: rgb(var(--c-ink));
    transition: fill 1s ease;
}

.logo-accent {
    fill: rgb(var(--c-logo-accent));
    transition: fill 1s ease;
}

/* Utility Classes */
.writing-vertical {
    writing-mode: vertical-rl;
    text-orientation: mixed;
}

/* 缁熶竴婊氬姩鏉℃牱寮忥紙绉诲姩绔弸濂斤級 */
.custom-scrollbar::-webkit-scrollbar {
    width: 4px;
    height: 4px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: rgba(var(--c-ink), 0.05);
    border-radius: 2px;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(var(--c-bamboo), 0.3);
    border-radius: 2px;
    transition: background 0.3s ease;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: rgba(var(--c-bamboo), 0.6);
}

/* Firefox 婊氬姩鏉℃牱寮?*/
.custom-scrollbar {
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--c-bamboo), 0.3) rgba(var(--c-ink), 0.05);
}

.hidden-section {
    display: none;
}

.fade-in {
    animation: fadeIn 0.8s ease-out forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        filter: blur(10px);
    }

    to {
        opacity: 1;
        filter: blur(0);
    }
}

/* Static Ink Wash Effect (No Breathing) */
.seal-pulse {
    /* Simulating ink bleeding into paper */
    filter: drop-shadow(0 0 2px rgba(160, 40, 40, 0.4)) drop-shadow(0 0 8px rgba(180, 20, 20, 0.2));
    /* Slightly less opacity to look like ink soaked in */
    opacity: 0.9;
    transition: filter 0.3s ease;
}

.seal-pulse:hover {
    filter: drop-shadow(0 0 3px rgba(160, 40, 40, 0.6)) drop-shadow(0 0 12px rgba(180, 20, 20, 0.3));
}

.cs {
    color: #858585
}

/* Shimmer Glint Animation (Option 1 - Refined) */
@keyframes shimmer-glint {

    0%,
    85% {
        filter: brightness(1);
    }

    92% {
        /* Sharp flash simulating reflection sweep */
        filter: brightness(2.5) contrast(1.5);
    }

    100% {
        filter: brightness(1);
    }
}

.effect-shimmer {
    animation: shimmer-glint 3s cubic-bezier(0.4, 0, 0.2, 1) infinite;
    transform-origin: center;
    will-change: filter;
}
/* =========================================
   四季主题色彩 (Season Themes)
   覆盖 --c-bamboo 以改变主色调
   ========================================= */

/* 春 (Spring) - 嫩绿/青色 */
html[data-season='spring'] {
    --c-bamboo: 122, 168, 116; /* #7aa874 */
}
html[data-season='spring'].dark {
    --c-bamboo: 142, 188, 136;
}

/* 秋 (Autumn) - 金黄/赭石 */
html[data-season='autumn'] {
    --c-bamboo: 217, 140, 42; /* #d98c2a */
}
html[data-season='autumn'].dark {
    --c-bamboo: 237, 160, 62;
}

/* 冬 (Winter) - 墨蓝/灰蓝 */
html[data-season='winter'] {
    --c-bamboo: 92, 124, 138; /* #5c7c8a */
}
html[data-season='winter'].dark {
    --c-bamboo: 112, 144, 158;
}

