@font-face{font-display:swap;font-family:Raisty OCR-B;font-style:normal;font-weight:400 700;src:url(/fonts/OCR-B.otf)format("opentype")}@font-face{font-display:swap;font-family:HanChan Shouzhuo;font-style:normal;font-weight:400 700;src:url(/fonts/hanchan-shouzhuo.ttf)format("truetype")}@font-face{font-display:swap;font-family:LXGW WenKai Lite;font-style:normal;font-weight:400;src:url(/fonts/LXGWWenKaiLite-Regular.ttf)format("truetype")}@font-face{font-display:swap;font-family:Xiaolai;font-style:normal;font-weight:400;src:url(/fonts/Xiaolai-Regular.ttf)format("truetype")}@font-face{font-display:swap;font-family:Snell Roundhand Local;font-style:normal;font-weight:400 700;src:url(/fonts/SnellRoundhand.ttc)format("truetype-collection")}:root{--color-bg:oklch(98.2% .003 225);--color-ink:oklch(28.5% .035 58);--color-muted:oklch(45.5% .026 58);--color-archive-blue:oklch(73% .045 227.5);--color-soft-blue:oklch(81% .035 225.6);--color-pale-blue:oklch(88.9% .022 223);--color-mist:oklch(94% .004 197.1);--color-warm-paper:oklch(88.6% .016 58.6);--color-paper:oklch(95.5% .012 70);--color-line:oklch(79% .016 225);--color-red-stamp:oklch(52% .15 25);--font-display:"OPPO Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-body:"OPPO Sans", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-meta:"OPPO Sans", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", sans-serif;--font-hand:"LXGW WenKai Lite", "HanziPen SC", "Hannotate SC", "Kaiti SC", "STKaiti", "KaiTi", cursive;--font-script:"Snell Roundhand Local", "Snell Roundhand", "Apple Chancery", "Times New Roman", serif;--max-page:1180px}*{box-sizing:border-box}html{color:var(--color-ink);background:radial-gradient(circle at 78% -8%, color-mix(in oklch, var(--color-pale-blue), transparent 30%), transparent 36vw), linear-gradient(180deg, var(--color-bg), color-mix(in oklch, var(--color-mist), white 42%) 62%, var(--color-bg));font-family:var(--font-body);scroll-behavior:smooth}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}a:hover{color:oklch(43% .07 228)}:focus-visible{outline:3px solid var(--color-archive-blue);outline-offset:3px}img{max-width:100%;display:block}.page-shell{min-height:100vh}.section{max-width:var(--max-page);margin-inline:auto;padding:clamp(44px,5.8vw,78px) clamp(20px,4vw,44px)}.section+.section{border-top:1px solid color-mix(in oklch, var(--color-line), transparent 55%)}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(18px,3vw,30px);display:flex}.section-heading h2{font-family:var(--font-display);letter-spacing:.01em;text-wrap:balance;margin:0;font-size:clamp(1.08rem,1.7vw,1.55rem);font-weight:600;line-height:1.12}.section-heading p{color:var(--color-muted);max-width:40rem;margin:0;line-height:1.8}.meta{color:var(--color-muted);font-family:var(--font-meta);font-size:.9rem}.pill-list{flex-wrap:wrap;gap:8px;display:flex}.pill{border:1px solid color-mix(in oklch, var(--color-archive-blue), transparent 40%);color:oklch(33% .05 228);border-radius:999px;padding:8px 11px;font-size:.86rem;line-height:1;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.pill:hover{background:color-mix(in oklch, var(--color-pale-blue), white 46%);border-color:color-mix(in oklch, var(--color-archive-blue), transparent 16%)}.text-link{color:oklch(38% .065 228);font-weight:650}.handdrawn-stars{--star-overlap:-7px;--star-size:24px;white-space:nowrap;align-items:center;gap:0;line-height:1;display:inline-flex}.handdrawn-stars img{height:var(--star-size);margin-right:var(--star-overlap);object-fit:contain;width:var(--star-size);flex:none}.handdrawn-stars img:last-child{margin-right:0}.handdrawn-stars--large{--star-overlap:-14px;--star-size:50px}.handdrawn-stars--slip{--star-overlap:-11px;--star-size:39px}.handdrawn-stars--compact{--star-overlap:-7px;--star-size:24px}.poster{aspect-ratio:1;background:linear-gradient(160deg, color-mix(in oklch, var(--poster-color), white 8%), transparent 62%), linear-gradient(30deg, color-mix(in oklch, var(--poster-color), black 14%), var(--poster-color));border-radius:inherit;border:0;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.poster:after{content:none}.poster span{color:oklch(98.5% 0 0);font-family:var(--font-display);text-align:center;text-shadow:0 2px 10px oklch(0% none none/.45);z-index:1;padding:22px;font-size:clamp(1.35rem,2.7vw,2.4rem);font-weight:600;line-height:1.25;position:relative}.poster img{width:100%;height:100%;position:absolute;inset:0}.poster-blur{filter:blur(18px)saturate(1.08);object-fit:cover;opacity:.62;transform:scale(1.16)}.poster-art{object-fit:contain;z-index:2}.poster-interactive{touch-action:manipulation}.poster-open-hitbox{cursor:zoom-in;z-index:4;background:0 0;border:0;padding:0;position:absolute;inset:0}.poster-nav{background:color-mix(in oklch, var(--color-paper), transparent 12%);border:1px solid color-mix(in oklch, var(--color-ink), transparent 74%);color:var(--color-ink);cursor:pointer;opacity:0;z-index:6;justify-content:center;align-items:center;width:30px;height:30px;font-size:1.45rem;transition:opacity .16s,background-color .16s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.poster-interactive:hover .poster-nav,.poster-interactive:focus-within .poster-nav{opacity:1}.poster-nav:hover{background:var(--color-paper)}.poster-nav-prev{left:8px}.poster-nav-next{right:8px}.poster-dots{pointer-events:none;z-index:7;justify-content:center;align-items:center;gap:7px;display:flex;position:absolute;bottom:10px;left:0;right:0}.poster-dot{background:color-mix(in oklch, var(--color-ink), transparent 72%);cursor:pointer;pointer-events:auto;border:0;border-radius:999px;width:20px;height:7px;padding:0;transition:transform .18s,background-color .18s;transform:scaleX(.35)}.poster-dot.is-active{background:color-mix(in oklch, var(--color-ink), transparent 18%);transform:scaleX(1)}.poster-lightbox{z-index:50;justify-content:center;align-items:center;padding:clamp(18px,4vw,52px);display:none;position:fixed;inset:0}.poster-lightbox.is-open{display:flex}.poster-lightbox-backdrop{background:color-mix(in oklch, var(--color-ink), transparent 14%);cursor:zoom-out;border:0;position:absolute;inset:0}.poster-lightbox-frame{z-index:1;justify-content:center;align-items:center;width:100%;max-width:min(88vw,980px);max-height:min(88vh,900px);display:flex;position:relative}.poster-lightbox-image-slot{display:contents}.poster-lightbox-img{background:var(--color-paper);object-fit:contain;border:1px solid oklch(100% 5.96046e-8 none/.36);border-color:oklch(100% 5.96046e-8 none/.36) oklch(100% 5.96046e-8 none/.36) oklch(100% 5.96046e-8 none/.36) oklch(100% 5.96046e-8 none/.36);max-width:min(88vw,980px);max-height:min(88vh,900px)}.poster-lightbox-close,.poster-lightbox-nav{background:color-mix(in oklch, var(--color-paper), transparent 6%);border:1px solid color-mix(in oklch, var(--color-line), transparent 22%);color:var(--color-ink);cursor:pointer;z-index:2;justify-content:center;align-items:center;display:flex;position:absolute}.poster-lightbox-close{width:42px;height:42px;font-size:1.8rem;top:-52px;right:-8px}.poster-lightbox-nav{border-radius:999px;width:52px;height:52px;font-size:2.2rem;top:50%;transform:translateY(-50%)}.poster-lightbox-prev{left:-70px}.poster-lightbox-next{right:-70px}.poster-lightbox-count{background:color-mix(in oklch, var(--color-paper), transparent 8%);border:1px solid color-mix(in oklch, var(--color-line), transparent 28%);color:var(--color-muted);font-family:var(--font-meta);padding:7px 11px;font-size:.9rem;position:absolute;bottom:-44px}.poster:has(img):after{border-color:oklch(100% 5.96046e-8 none/.28) oklch(100% 5.96046e-8 none/.28) oklch(100% 5.96046e-8 none/.28) oklch(100% 5.96046e-8 none/.28)}.poster[data-tone=blue]{--poster-color:var(--color-archive-blue)}.poster[data-tone=pale]{--poster-color:var(--color-soft-blue)}.poster[data-tone=paper]{--poster-color:var(--color-warm-paper)}.poster[data-tone=mist]{--poster-color:var(--color-pale-blue)}.card-link{transition:transform .18s,color .18s,border-color .18s,background-color .18s}.card-link:hover{transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=760px){.poster-nav{opacity:1}.poster-lightbox-nav{width:44px;height:44px}.poster-lightbox-prev{left:8px}.poster-lightbox-next{right:8px}.poster-lightbox-close{right:0}.section{padding-block:clamp(34px,9vw,54px)}.section-heading{flex-direction:column;align-items:start;margin-bottom:16px}}.site-header[data-astro-cid-rutobish]{background:color-mix(in oklch, var(--color-bg), transparent 5%);backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in oklch, var(--color-line), transparent 45%);z-index:20;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;min-height:72px;padding:0 clamp(20px,4vw,44px);display:grid;position:sticky;top:0}.brand[data-astro-cid-rutobish]{color:var(--color-ink);white-space:nowrap;justify-self:start;align-items:center;gap:6px;display:inline-flex}.brand-mark[data-astro-cid-rutobish]{border-radius:50%;flex:none;width:50px;height:50px;overflow:hidden}.brand-mark[data-astro-cid-rutobish] img[data-astro-cid-rutobish]{object-fit:cover;object-position:center;width:100%;height:100%}.brand-word[data-astro-cid-rutobish]{font-family:var(--font-display);letter-spacing:.02em;font-size:clamp(1.02rem,1.8vw,1.26rem);font-weight:700}.pill-nav[data-astro-cid-rutobish]{background:color-mix(in oklch, white, var(--color-pale-blue) 18%);border:1px solid color-mix(in oklch, var(--color-soft-blue), transparent 38%);border-radius:999px;justify-self:center;align-items:center;gap:3px;padding:4px;display:flex}.pill-nav-item[data-astro-cid-rutobish]{color:var(--color-ink);white-space:nowrap;border-radius:999px;align-items:center;min-height:34px;padding:0 clamp(9px,1vw,14px);font-size:.88rem;font-weight:650;transition:background-color .18s,color .18s,transform .18s;display:inline-flex;position:relative}.pill-nav-item[data-astro-cid-rutobish]:hover,.pill-nav-item[data-astro-cid-rutobish]:focus-visible{background:color-mix(in oklch, var(--color-pale-blue), white 20%);color:oklch(26% .055 228);transform:translateY(-1px)}.pill-nav-item[data-astro-cid-rutobish].is-active{background:color-mix(in oklch, var(--color-archive-blue), #6f9fb4 36%);color:#fff}@media (width<=760px){.site-header[data-astro-cid-rutobish]{grid-template-columns:1fr;align-items:start;gap:10px;padding-block:12px;position:static}.brand[data-astro-cid-rutobish],.pill-nav[data-astro-cid-rutobish]{justify-content:flex-start;justify-self:start;min-width:0}.pill-nav[data-astro-cid-rutobish]{scrollbar-width:none;border-radius:999px;flex-wrap:nowrap;width:100%;max-width:100%;overflow-x:auto}.pill-nav[data-astro-cid-rutobish]::-webkit-scrollbar{display:none}.pill-nav-item[data-astro-cid-rutobish]{min-height:32px;padding-inline:11px;font-size:.86rem}}
