:root{--surface:#fffaf4;--soft:#f6e8da;--accent-soft:#f1ded0;--forest:#494b35;--forest-text:#f3e9d9;--muted:#7e7569;--red:#a54022;--ink:#302e28;--bg:#f7f1e7;--line:#e8dece;--avatar:#efdfc9;--hero-shade:#44301c;--hero-tint:#bc6d1829}
:root[data-season="haru"]{--red:#a53664;--ink:#3b2b34;--bg:#fcf2f5;--line:#efdde4;--surface:#fffbfd;--soft:#fae8ef;--accent-soft:#f3dce6;--forest:#664652;--forest-text:#fbeaf1;--muted:#82717c;--avatar:#f4dce5;--hero-shade:#422c3d;--hero-tint:#d16b9b26}
:root[data-season="natsu"]{--red:#176a94;--ink:#253c45;--bg:#edf6fa;--line:#d8e7ed;--surface:#fbfeff;--soft:#e2f1f8;--accent-soft:#d3eaf4;--forest:#275c50;--forest-text:#e3f7ec;--muted:#667f89;--avatar:#d4eaf2;--hero-shade:#163e49;--hero-tint:#198cc91c}
:root[data-season="fuyu"]{--red:#456985;--ink:#2c3945;--bg:#f4f7fb;--line:#dfe6ee;--surface:#ffffff;--soft:#edf3fa;--accent-soft:#e0eaf5;--forest:#374d63;--forest-text:#e7f0fa;--muted:#6c7d8d;--avatar:#e3ebf5;--hero-shade:#1d354d;--hero-tint:#b3cbe32b}
header,.card,.right-box,.modal{background:var(--surface)}.search{background:var(--soft)}.search input{color:var(--ink)}.tab{background:var(--surface)}.tab.active{background:var(--red);border-color:var(--red)}.side-item.active{background:var(--accent-soft)}.side-item,.post-body p,.post-bottom button,.sub,.meta,.section-label,.identity small,.social span,.feed-head span,.side-note,.footer,.modal p{color:var(--muted)}.avatar,.post-avatar{background:var(--avatar)}.badge,.mini-label,.day{background:var(--soft)}.day small,.release p,.tags button{color:var(--muted)}.tags button{background:var(--surface)}.post-bottom button.saved,.post-bottom .read{color:var(--red)}.yt{background:var(--forest);color:var(--forest-text)}.yt p,.yt .eyebrow,.yt-icon{color:var(--forest-text)}.yt a{background:var(--surface);color:var(--forest)}.learn-art{background:var(--soft);color:var(--red)}.hero:after{background:linear-gradient(90deg,var(--hero-shade),transparent 95%),linear-gradient(var(--hero-tint),var(--hero-tint))}.season-bar{display:flex;align-items:center;gap:13px;padding:15px 19px;border:1px solid var(--line);border-radius:10px;background:var(--surface);margin-bottom:24px}.season-current{font:600 17px var(--serif);white-space:nowrap;color:var(--red)}.season-copy{display:flex;flex-direction:column;gap:4px;border-left:1px solid var(--line);padding-left:14px}.season-copy p{font-size:11px;margin:0;color:var(--ink)}.season-copy small{font-size:9px;color:var(--muted)}.season-picker{margin-left:auto;display:flex;align-items:center;gap:9px}.season-picker label{font-size:10px;color:var(--muted)}.season-picker select{font:11px 'DM Sans',Arial,sans-serif;border:1px solid var(--line);border-radius:6px;background:var(--soft);color:var(--ink);padding:9px 28px 9px 10px;cursor:pointer;max-width:180px}.season-picker select:focus-visible{outline:3px solid var(--red);outline-offset:3px}@media(max-width:730px){.season-bar{padding:14px;gap:10px;flex-wrap:wrap;margin-bottom:23px}.season-current{font-size:16px}.season-copy{padding-left:10px;flex:1}.season-copy p{font-size:10px}.season-copy small{font-size:8px}.season-picker{width:100%;margin:2px 0 0;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px}.season-picker select{max-width:210px}.search:focus-within{background:var(--soft)}}
/* Motifs give each season its own scenery, beyond a palette swap. */
:root{--motif:url('assets/aki-motif.svg')}
:root[data-season="haru"]{--motif:url('assets/haru-motif.svg')}
:root[data-season="natsu"]{--red:#227b88;--ink:#35413d;--bg:#fbf7e9;--line:#e7dfc6;--surface:#fffdf5;--soft:#f6edcd;--accent-soft:#e3eeea;--forest:#30696b;--forest-text:#f9f1d7;--muted:#747c6c;--avatar:#f4e7b2;--hero-shade:#314c46;--hero-tint:#e5bb3d19;--motif:url('assets/natsu-motif.svg')}
:root[data-season="fuyu"]{--motif:url('assets/fuyu-motif.svg')}
.season-bar{position:relative;min-height:126px;overflow:hidden;padding:24px;gap:22px}.season-art{flex:0 0 230px;height:92px;margin:-12px 0 -12px -12px;background:var(--motif) center/contain no-repeat}.season-current{font-size:20px}.season-copy{border:0;padding-left:0;max-width:310px}.season-copy p{font-size:12px;line-height:1.6}.season-copy small{font-size:9px}.season-current{min-width:106px}.hero-season{position:absolute;z-index:1;right:8px;bottom:23px;width:205px;height:82px;background:var(--motif) center/contain no-repeat;filter:drop-shadow(0 2px 9px #0003);opacity:.95}.hero-tag{bottom:16px}.season-picker{position:relative;z-index:1}.season-art,.hero-season{pointer-events:none}@media(max-width:1150px){.season-art{flex-basis:180px}.season-bar{gap:16px}.season-copy{max-width:240px}.season-copy p{font-size:11px}.season-picker label{display:none}}@media(max-width:940px){.season-art{flex-basis:145px}.season-bar{gap:12px;padding:20px 16px}.season-current{font-size:18px;min-width:95px}.season-copy{max-width:190px}.season-picker select{max-width:150px;font-size:10px}}@media(max-width:730px){.season-bar{min-height:190px;padding:21px 17px 14px;display:block}.season-art{position:absolute;top:8px;right:-2px;width:150px;height:90px;margin:0;opacity:.9}.season-current{position:relative;max-width:calc(100% - 130px);font-size:21px;margin-bottom:10px}.season-copy{position:relative;max-width:calc(100% - 124px);min-height:52px;padding:0}.season-copy p{font-size:11px;line-height:1.7}.season-copy small{display:block;margin-top:5px;font-size:8px;line-height:1.6}.season-picker{margin-top:17px;padding-top:13px;display:flex}.season-picker label{display:block;font-size:10px}.season-picker select{font-size:11px;max-width:210px}.hero-season{width:140px;height:62px;right:0;bottom:23px;opacity:.85}}@media(max-width:360px){.season-art{width:120px}.season-copy{max-width:calc(100% - 96px)}.season-current{max-width:calc(100% - 98px)}}
.hero-season{bottom:38px}@media(max-width:730px){.hero-season{display:none}}
