:root{color-scheme:light;--bg:#f7f4ed;--paper:#fffcf7;--ink:#3e3b4d;--muted:#777180;--accent:#79618d;--line:#ded8dc;--serif:"Noto Serif SC","Songti SC","SimSun",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Segoe UI","Microsoft YaHei",sans-serif;font-size:14px;line-height:1.8;transition:background .4s}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{border:0;background:none}button:hover,a:hover{color:var(--accent)}.selector{position:sticky;top:0;z-index:20;min-height:65px;padding:10px 3vw;display:flex;align-items:center;gap:22px;background:#191824;color:#efecf7;box-shadow:0 2px 12px #0002}.selector-label{font-size:12px;line-height:1.5}.selector-label small{display:block;font-size:8px;letter-spacing:2px;color:#a8a0b9}.choices{display:flex;gap:6px;margin:auto}.choices button{border:1px solid #ffffff24;border-radius:5px;padding:7px 20px;font-size:12px}.choices button[aria-pressed=true]{background:#e4d9ef;color:#322a40;border-color:#e4d9ef}.site{max-width:1600px;margin:auto}header{height:106px;display:flex;align-items:center;gap:35px;padding:0 6%;border-bottom:1px solid var(--line)}.brand{display:flex;gap:14px;align-items:center;font-family:Georgia,serif;font-size:24px;letter-spacing:3px}.brand small{display:block;font:8px/1.5 "Segoe UI",sans-serif;letter-spacing:2px}.emblem{font:italic 28px Georgia,serif;border:1px solid #a690ae;border-radius:50%;width:44px;height:44px;text-align:center;line-height:44px;letter-spacing:0}.header-note{margin-left:auto;font-family:var(--serif);font-size:12px;color:var(--muted)}nav{display:flex;gap:28px;margin-left:50px;font-size:12px}nav button{padding:0}nav .active{border-bottom:1px solid var(--accent)}.hero{position:relative;height:620px;margin:28px 3% 0;isolation:isolate;overflow:hidden}.hero-art,.hero-shade,.particles{position:absolute;inset:0;z-index:-1}.hero-art{background:url('/assets/violet-garden.png') center 44%/cover;animation:arrive 1.2s ease-out}.hero-shade{background:linear-gradient(90deg,#f7f4edf7 0%,#f7f4ede8 23%,#f7f4ed73 47%,transparent 68%)}.hero-copy{position:relative;width:56%;padding:66px 0 0 6.5%}.kicker{font-size:9px;letter-spacing:3px;color:var(--accent);display:flex;align-items:center;gap:10px}.kicker span{width:26px;height:1px;background:currentColor}.kicker b{font-weight:500}.salutation{font-family:var(--serif);font-size:14px;letter-spacing:3px;margin:32px 0 14px}h1{font-family:var(--serif);font-size:clamp(34px,4.2vw,62px);line-height:1.45;letter-spacing:3px;font-weight:500;margin:0 0 20px}h1 span{color:var(--accent)}.intro{color:#696273;font-size:13px;line-height:2.2}.primary{display:inline-flex;align-items:center;gap:36px;background:var(--accent);color:white;padding:12px 22px;margin-top:20px;font-size:12px;transition:transform .2s,box-shadow .2s}.primary:hover{color:white;transform:translateY(-3px);box-shadow:0 8px 20px #4c355630}.signature{display:block;font:italic 20px Georgia,serif;color:#93818f;margin:22px 0}.art-caption{position:absolute;right:4%;bottom:64px;text-align:right;color:#fff;text-shadow:0 1px 8px #20182d}.art-caption span{font-size:9px;letter-spacing:4px}.art-caption small{display:block;font-size:11px;margin-top:4px}.hero-bottom{position:absolute;bottom:0;left:0;width:100%;height:40px;padding:0 7%;display:flex;align-items:center;justify-content:space-between;background:#f7f4edef;font-size:9px;letter-spacing:2px;color:#7e7382}.seal{position:absolute;left:51%;bottom:75px;width:70px;height:70px;background:#84627d;border:5px double #bc92a8;border-radius:50%;color:#f5dde9;text-align:center;font:italic 30px/44px Georgia,serif;transform:rotate(-14deg);box-shadow:3px 6px 14px #30213330}.seal small{display:block;font:6px/1 sans-serif;letter-spacing:2px}.journal{padding:65px 7% 30px}.journal-head{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px}.journal-head h2{font:500 28px var(--serif);letter-spacing:3px;margin:8px 0}.journal-head p{font-size:11px;color:var(--muted)}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 225px;gap:40px}.filters{display:flex;gap:20px;padding:22px 0 28px}.filters button{padding:5px 0;font-size:11px;color:var(--muted);border-bottom:1px solid transparent}.filters .selected{color:var(--accent);border-color:var(--accent)}.filters small{font-size:9px;margin-left:6px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.cards article{border:1px solid var(--line);background:var(--paper);transition:transform .25s,box-shadow .25s}.cards article:hover{transform:translateY(-6px);box-shadow:0 12px 30px #36304413}.cards article[hidden]{display:none}.article-open{text-align:left;padding:0;width:100%;display:block;height:100%}.card-art{height:160px;position:relative;overflow:hidden;display:grid;place-content:center;text-align:center}.card-art>span{font:52px Georgia,serif}.card-art>small{font-size:7px;letter-spacing:3px;display:block;margin-top:10px}.art-code{color:#536775;background:repeating-linear-gradient(0deg,transparent 0 23px,#62758b18 24px 25px),linear-gradient(135deg,#d2d9dd,#eef0e9)}.art-garden{background:linear-gradient(0deg,#342c5560,transparent),url('/assets/violet-garden.png') 80% 37%/cover;color:white;align-content:end;padding-bottom:14px}.art-envelope{background:linear-gradient(145deg,transparent 49.5%,#b9a89930 50%,transparent 50.5%),linear-gradient(35deg,#ede3d3,#e8d9e4);color:#977482}.card-body{padding:22px}.meta{font-size:9px;color:var(--accent);display:flex;justify-content:space-between}.meta span{color:var(--muted)}.card-body h3{font:500 19px/1.6 var(--serif);margin:13px 0 8px}.card-body p{font-size:11px;color:var(--muted);margin:0}.card-foot{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-top:20px;font-size:9px;color:var(--muted)}.card-foot span{color:var(--accent)}.profile{margin-top:70px;padding:25px 18px;height:fit-content;text-align:center;border:1px solid var(--line);background:var(--paper);position:relative}.profile-photo{width:76px;height:76px;border:4px solid var(--paper);outline:1px solid var(--line);border-radius:50%;margin:0 auto 23px;background:url('/assets/violet-garden.png') 77% 27%/320%}.profile .kicker{font-size:7px;letter-spacing:2px;justify-content:center}.profile h3{font:18px var(--serif)}.profile p{font-size:11px;color:var(--muted)}.profile-rule{height:1px;background:var(--line);margin:25px}.profile-motto{font:12px/2.2 var(--serif);color:var(--accent)}.profile button{display:block;margin:23px auto 0;font-size:10px}.specimen{display:block;font-size:9px;color:var(--muted);margin-top:20px}footer{margin:60px 7% 0;padding:25px 0 110px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted)}.brand-footer{font-size:9px;letter-spacing:1px}.design-note{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:10;background:#222030ed;color:#f5f1fa;border:1px solid #ffffff20;border-radius:9px;box-shadow:0 8px 40px #0003;display:flex;gap:18px;align-items:center;padding:12px 20px;max-width:95vw;width:max-content;backdrop-filter:blur(12px);font-size:11px}.design-note small{font-size:9px;color:#bdb5ca}.design-note b{white-space:nowrap}.particles i{position:absolute;top:-30px;left:var(--x);width:7px;height:12px;border-radius:80% 0 80% 0;background:#d9bfea9c;animation:fall var(--duration) linear infinite;animation-delay:var(--delay)}@keyframes fall{to{transform:translate(70px,680px) rotate(450deg)}}@keyframes arrive{from{transform:scale(1.035);opacity:.6}to{transform:scale(1);opacity:1}}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:45px;max-width:560px;width:90%;box-shadow:0 25px 90px #0005}dialog::backdrop{background:#191625a6;backdrop-filter:blur(6px)}dialog h2{font:26px/1.6 var(--serif)}dialog p{white-space:pre-line}dialog small{color:var(--muted)}.close-dialog{position:absolute;right:12px;top:8px;font-size:28px}.no-motion *{animation:none!important;transition:none!important}.no-motion{scroll-behavior:auto}
/* B: full-bleed cinematic garden, luminous cards and a dark palette. */
body[data-theme=garden]{--bg:#12101f;--paper:#201c31;--ink:#eee8fb;--muted:#b1a6c6;--accent:#c0a1f0;--line:#ffffff20;color-scheme:dark}body[data-theme=garden] header{position:absolute;top:65px;left:0;right:0;z-index:3;border-bottom:1px solid #ffffff26;background:linear-gradient(#11101f94,transparent)}body[data-theme=garden] .hero{margin:0;height:740px}body[data-theme=garden] .hero-art{background-position:center 38%;filter:brightness(.68) saturate(.85)}body[data-theme=garden] .hero-shade{background:linear-gradient(90deg,#151025ed,#1b153674 48%,transparent 80%),linear-gradient(0deg,#12101f,transparent 40%)}body[data-theme=garden] .hero-copy{padding:190px 0 0 8%;width:62%}body[data-theme=garden] h1{font-size:clamp(40px,4.8vw,70px);text-shadow:0 0 45px #c5a0fc33}body[data-theme=garden] .salutation{margin-top:25px;color:#daccec}body[data-theme=garden] .intro{color:#c6bcd7}body[data-theme=garden] .primary{border-radius:28px;background:#ae8ddb22;border:1px solid #d1b5f68a;box-shadow:0 0 30px #ba97f522}body[data-theme=garden] .signature{color:#b8a2cb}body[data-theme=garden] .seal{display:none}body[data-theme=garden] .hero-bottom{background:transparent;color:#d4c5e3;bottom:10px}body[data-theme=garden] .journal{padding-top:20px}body[data-theme=garden] .content-layout{display:block}body[data-theme=garden] .cards{grid-template-columns:repeat(3,minmax(0,1fr))}body[data-theme=garden] .cards article{border-radius:14px;overflow:hidden;background:linear-gradient(145deg,#30273c,#1b192b)}body[data-theme=garden] .cards article:hover{box-shadow:0 0 30px #a288f226;border-color:#a58bb6}body[data-theme=garden] .profile{display:none}body[data-theme=garden] .filters{justify-content:center;padding:28px}body[data-theme=garden] .particles i{width:3px;height:3px;background:#e9ceff;box-shadow:0 0 10px 3px #c294ff9c;border-radius:50%}body[data-theme=garden] .art-caption{bottom:100px}
@media(min-width:1600px){body[data-theme=garden] header{left:calc((100% - 1600px)/2);right:calc((100% - 1600px)/2)}}
@media(max-width:850px){.selector-label{display:none}.selector{gap:8px;padding:10px 12px}.choices button{padding:7px 12px}.header-note{display:none}header{padding:0 5%;height:90px;justify-content:space-between}nav{margin:0;gap:20px}.hero{height:590px}.hero-copy{width:70%;padding-top:60px}.hero-shade{background:linear-gradient(90deg,#f7f4edf5,#f7f4edb0 50%,#f7f4ed22)}h1{font-size:42px}.content-layout{grid-template-columns:1fr}.profile{display:none}.journal-head p{display:none}.design-note small{display:none}body[data-theme=garden] .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.seal{left:75%}footer{flex-wrap:wrap}}
@media(max-width:560px){.choices button{font-size:10px;padding:7px 8px}.selector{min-height:58px}.brand{font-size:19px;gap:8px}.brand small{font-size:6px}.emblem{width:32px;height:32px;line-height:30px;font-size:22px}nav{gap:12px;font-size:11px}.hero{margin:0;height:650px}.hero-art{background-position:72% top;background-size:auto 510px;background-repeat:no-repeat}.hero-shade{background:linear-gradient(0deg,var(--bg) 12%,#f7f4edf2 38%,#f7f4ed10 85%)}.hero-copy{width:100%;padding:270px 7% 0}.hero-copy .kicker{font-size:8px}.salutation{margin:16px 0 10px;font-size:11px}h1{font-size:35px;line-height:1.4;margin-bottom:12px}.intro{font-size:11px}.primary{margin-top:12px;padding:9px 18px}.signature,.art-caption,.seal{display:none}.hero-bottom{font-size:7px;letter-spacing:.5px}.journal{padding:32px 6%}.journal-head h2{font-size:25px}.cards{grid-template-columns:1fr}.card-art{height:190px}.filters{gap:18px}.filters button{font-size:10px}.design-note{font-size:10px;gap:10px;padding:10px 13px;bottom:8px}.design-note span{max-width:190px;font-size:9px}.content-layout{gap:0}body[data-theme=garden] header{top:58px}body[data-theme=garden] .hero{height:730px}body[data-theme=garden] .hero-art{background-position:73% top;background-size:auto 590px}body[data-theme=garden] .hero-copy{padding:350px 7% 0;width:100%}body[data-theme=garden] h1{font-size:37px}body[data-theme=garden] .hero-shade{background:linear-gradient(0deg,#12101f 4%,#12101fe8 37%,#12101f18 82%)}body[data-theme=garden] .salutation{margin-top:15px}body[data-theme=garden] .cards{grid-template-columns:1fr}body[data-theme=garden] .filters{padding:24px 0;gap:18px}.card-art small{font-size:6px;letter-spacing:1px}footer{margin-top:15px;font-size:9px}dialog{padding:30px}}
.art-code>span{white-space:nowrap}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
