@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}html{-webkit-tap-highlight-color:transparent}:root{--surface-tag:#eff3fa;--surface-tag-columbina:#ecf0fc;--border-tag-columbina:#6e7cc63d;--text-tag-columbina:#4a5898;--surface-tag-sandrone:#f9eff3;--border-tag-sandrone:#bd7a8e3d;--text-tag-sandrone:#98586b;--surface-tag-duo-start:#edeafc;--surface-tag-duo-end:#f7eef7;--border-tag-duo:#8e80c640;--text-tag-duo:#615896}:root[data-theme=lavender]{--surface-tag:#f2f0fb;--surface-tag-columbina:#ece8fc;--border-tag-columbina:#7a6ad440;--text-tag-columbina:#554ba2;--surface-tag-sandrone:#faeff4;--border-tag-sandrone:#c07a9240;--text-tag-sandrone:#9a576d;--surface-tag-duo-start:#eae7fc;--surface-tag-duo-end:#f8edf6;--border-tag-duo:#9282c642;--text-tag-duo:#645b96}:root[data-theme=sky]{--surface-tag:#f0f7fc;--surface-tag-columbina:#eaf0fc;--border-tag-columbina:#6682bd38;--text-tag-columbina:#4f699f;--surface-tag-sandrone:#f8eeee;--border-tag-sandrone:#bd797f3b;--text-tag-sandrone:#9c5961;--surface-tag-duo-start:#eaf0fc;--surface-tag-duo-end:#f7eff3;--border-tag-duo:#8f8bb13b;--text-tag-duo:#6c7195}@font-face{font-family:Nunito Variable;src:url(/assets/fonts/Nunito%5Bwght%5D.woff2)format("woff2"),url(/assets/fonts/Nunito%5Bwght%5D.ttf)format("truetype");font-style:normal;font-weight:200 1000;font-display:swap;unicode-range:U+20-7E,U+A0-B6,U+B8-24F,U+2013,U+20AC}@font-face{font-family:ChillRoundM;src:url(/assets/fonts/ChillRoundM.woff2)format("woff2"),url(/assets/fonts/ChillRoundM.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:ChillRoundF;src:url(/assets/fonts/ChillRoundFRegular.woff2)format("woff2"),url(/assets/fonts/ChillRoundFRegular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:LXGWNeoZhiSong;src:url(/assets/fonts/LXGWNeoZhiSong.woff2)format("woff2"),url(/assets/fonts/LXGWNeoZhiSong.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:LXGWNeoZhiSongScreen;src:url(/assets/fonts/LXGWNeoZhiSongScreen.woff2)format("woff2"),url(/assets/fonts/LXGWNeoZhiSongScreen.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Fraunces;src:url(/assets/fonts/Fraunces--latin_basic.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+20-7E,U+A0-B6,U+B8-24F,U+2013,U+20AC}@font-face{font-family:Fraunces;src:url(/assets/fonts/Fraunces-Italic--latin_basic.woff2)format("woff2");font-style:italic;font-weight:100 900;font-display:swap;unicode-range:U+20-7E,U+A0-B6,U+B8-24F,U+2013,U+20AC}:root{--font-en-sans:"Nunito Variable";--font-en-display:"Fraunces";--font-zh-body:"ChillRoundM";--font-zh-ui:"ChillRoundF";--font-zh-reading-heading:"LXGWNeoZhiSong";--font-zh-reading:"LXGWNeoZhiSongScreen";--font-fallback-sans:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans CJK SC", system-ui, -apple-system, sans-serif;--font-fallback-serif:"Songti SC", "SimSun", "STSong", "Source Han Serif SC", "Noto Serif CJK SC", serif;--font-body:var(--font-en-sans), var(--font-zh-body), var(--font-fallback-sans);--font-ui:var(--font-en-sans), var(--font-zh-ui), var(--font-fallback-sans);--font-heading:var(--font-en-sans), var(--font-zh-ui), var(--font-fallback-sans);--font-brand:var(--font-en-sans), var(--font-zh-ui), var(--font-fallback-sans);--font-reading:var(--font-en-sans), var(--font-zh-reading), var(--font-fallback-serif);--font-reading-heading:var(--font-en-display), var(--font-zh-reading-heading), var(--font-fallback-serif);--font-display:var(--font-en-display), var(--font-zh-reading-heading), var(--font-fallback-serif)}:where(.reading-scope,[data-reading-scope]){--font-body:var(--font-reading);--font-heading:var(--font-reading-heading)}:root{--page:#edf4fc;--page-grid-line:#48508a0c;--page-grid-size:28px;--surface-card:#fcfdff;--surface-hero:#e4eefb;--page-tint:#a89cf208;--surface-discovery:#eaeffb;--text-primary:#27324c;--text-muted:#5f6d8b;--hero-title:#a4a6fab0;--text-heading:#434a8d;--text-brand:#38517e;--text-footer-brand:#495676;--text-hero-lead:#444779;--text-hero-edge:#7c8cecd1;--hero-kicker-mark:#9188df;--hero-edge-divider:#7d80c8;--hero-scroll-hint-hover:#5154a0;--shadow-hero-title-color:#7888ec75;--nav-surface-top:transparent;--nav-border-top:#686ebc1a;--nav-surface-scrolled:color-mix(in srgb, var(--surface-card) 72%, transparent);--nav-border-scrolled:color-mix(in srgb, var(--text-muted) 12%, transparent);--nav-shadow-scrolled:color-mix(in srgb, var(--text-primary) 5%, transparent);--nav-hover:#7072d016;--nav-text-hover:#4a4e96;--nav-text-active:#444892;--nav-active-indicator:#7a74dc;--nav-segment-track:#eff1fcb8;--hero-bottom-tint:#e9f2fc66;--hero-bottom-clear:#e9f2fc00;--hero-glow:#ffffff0f;--hero-scrim-start:#f8fbffa3;--hero-scrim-middle:#f8fbff61;--hero-scrim-end:#f8fbff00;--shadow-hero-title-on-light:#ffffff38;--text-hero-on-dark:#c0d4ffcc;--text-hero-on-dark-soft:#d4e2ffde;--shadow-hero-title-on-dark:#050a1c8c;--hero-mobile-overlay-start:#e9f2fc0a;--hero-mobile-overlay-upper:#e4effc21;--hero-mobile-overlay-lower:#e7f0fcc7;--hero-mobile-overlay-end:#edf4fcf5;--border-subtle:#3e4e7e1b;--shadow-card:0 2px 6px #3446740d, 0 10px 26px #444e880d;--shadow-card-hover:0 4px 12px #34467413, 0 16px 34px #4e549818;--surface-card-placeholder:#eaeff9;--surface-card-badge:#151d3470;--border-card-badge:#ffffff3d;--text-card-badge:#f5f8ff;--border-retry-button:#7274ca40;--text-retry-button:#4c4f98;--surface-retry-button-hover:#eff0fc;--text-footer-link-hover:#4c4f98;--text-info-link:#4c4f98;--border-info-notice:#8284d8;--text-not-found-status:#7d80d0;--focus-ring:#5c62bc;--motion-page-leave-duration:.18s;--motion-page-enter-duration:.3s;--motion-page-enter-easing:cubic-bezier(.25, .46, .45, .94);--motion-page-leave-easing:cubic-bezier(.55, .055, .675, .19);--motion-page-enter-x:4px;--motion-page-enter-y:12px;--motion-page-leave-y:-6px;--overlay-backdrop:#131b2e8a;--surface-media-panel:#080a13;--surface-media-center:#161d36;--surface-media-mid:#0c1122;--shadow-media-panel:#0a0f1c73;--shadow-media-panel-soft:#24304e0f;--media-glow-accent:#8e98e81f;--media-glow-decoration:#6c7ecc16;--shadow-media-image:#00000073;--surface-overlay-close:#fffffff2;--border-overlay-close:#ffffff4d;--surface-dots-bar:#090c1885;--border-dots-bar:#ffffff26;--dot-indicator:#ffffff59;--dot-indicator-hover:#ffffffb3;--dot-indicator-active:#fff;--glow-dot-active:#969cf2f2;--text-on-dark:#fff;--focus-ring-on-dark:#fff;--surface-arrow:#0e142685;--border-arrow:#ffffff38;--text-arrow:#f2f5fd;--surface-arrow-hover:#525ea8e0;--border-arrow-hover:#fff9;--glow-arrow-hover:#8e98e88c;--lightbox-backdrop:#000000e6;--lightbox-toolbar-fade:#000000b3;--surface-lightbox-control:#00000080;--surface-lightbox-control-hover:#000000b3;--border-lightbox-control:#ffffff1a;--border-lightbox-control-hover:#ffffff80;--surface-lightbox-thumbs:#000000b3;--surface-lightbox-thumb:#ffffff1a;--surface-lightbox-status:#000000bf;--surface-detail-info:#fdfeff;--border-detail-divider:#3e4e7e16;--text-detail-author:#1e2740;--text-detail-description:#4a5672;--text-detail-value:#26314c;--border-detail-card:#5260901c;--surface-detail-card:#f6f8fc;--text-detail-link:#4c4f98;--border-detail-link:#7272ca36;--surface-detail-link:#f2f2fc;--surface-detail-link-hover:#e8e7fa;--text-detail-link-hover:#3e4188;--surface-detail-retry:#eceff9}:root[data-theme=lavender]{--page:#edf3fb;--page-grid-line:#544e920d;--surface-card:#fcfbff;--surface-hero:#e4ecfa;--page-tint:#a898f00d;--surface-discovery:#eceafa;--text-primary:#2a324e;--text-muted:#656e8f;--hero-title:#aea7fcac;--text-heading:#46488e;--text-brand:#3d4e80;--text-footer-brand:#4c5578;--text-hero-lead:#45447a;--text-hero-edge:#7d89fa;--hero-kicker-mark:#9688e0;--hero-edge-divider:#7c76c6;--hero-scroll-hint-hover:#5852a4;--shadow-hero-title-color:#7c84ec7a;--nav-border-top:#766ac41a;--nav-hover:#7a6ad417;--nav-text-hover:#534ba0;--nav-text-active:#4c449a;--nav-active-indicator:#7b6ce0;--nav-segment-track:#f0ecfcad;--hero-bottom-tint:#ebeefc66;--hero-bottom-clear:#ebeefc00;--hero-scrim-start:#fafaffa6;--hero-scrim-middle:#fafaff66;--hero-scrim-end:#fafaff00;--shadow-hero-title-on-light:#fff3;--text-hero-on-dark:#c4d2ffcc;--text-hero-on-dark-soft:#d8e0ffde;--shadow-hero-title-on-dark:#06091c8c;--hero-mobile-overlay-start:#ebeefc0a;--hero-mobile-overlay-upper:#e6ebfc24;--hero-mobile-overlay-lower:#e8ecfcc7;--hero-mobile-overlay-end:#edf3fbf5;--border-subtle:#4e4a881c;--shadow-card:0 2px 6px #4440800d, 0 10px 26px #4e46910d;--shadow-card-hover:0 4px 12px #44408014, 0 16px 34px #584ca01a;--surface-card-placeholder:#ede9fb;--surface-card-badge:#171c3470;--text-card-badge:#f5f7ff;--border-retry-button:#7a6ad442;--text-retry-button:#554ba2;--surface-retry-button-hover:#eeeafc;--text-footer-link-hover:#554ba2;--text-info-link:#554ba2;--border-info-notice:#8b7ce0;--text-not-found-status:#8677dc;--focus-ring:#645ac0;--overlay-backdrop:#141a2e8a;--surface-media-panel:#080a14;--surface-media-center:#171d36;--surface-media-mid:#0d1122;--shadow-media-panel:#0a0e1c73;--shadow-media-panel-soft:#262e4e0f;--media-glow-accent:#9c8ceb21;--media-glow-decoration:#7870cc17;--glow-dot-active:#a292f6f2;--surface-arrow:#0f142685;--text-arrow:#f2f4fd;--surface-arrow-hover:#5c54a8e0;--glow-arrow-hover:#9c8ceb8c;--surface-detail-info:#fdfcff;--border-detail-divider:#4e4a8817;--text-detail-author:#202642;--text-detail-description:#4d5675;--text-detail-value:#28314e;--border-detail-card:#6860a81f;--surface-detail-card:#f7f5fc;--text-detail-link:#554ba2;--border-detail-link:#7a6ad438;--surface-detail-link:#f3f0fc;--surface-detail-link-hover:#e8e3fa;--text-detail-link-hover:#433a90;--surface-detail-retry:#ede9fb}:root[data-theme=sky]{--page:#eaf5fc;--page-grid-line:#2f42680d;--surface-card:#fbfdff;--surface-hero:#dfeffa;--page-tint:transparent;--surface-discovery:#e4f2fa;--text-primary:#25314b;--text-muted:#66758f;--hero-title:#92b0f6b8;--text-heading:#434f98;--text-brand:#345b7c;--text-footer-brand:#46536f;--text-hero-lead:#404276;--text-hero-edge:#7898e0c7;--hero-kicker-mark:#829cd0;--hero-edge-divider:#6682bd;--hero-scroll-hint-hover:#4f699f;--shadow-hero-title-color:#7694f582;--nav-border-top:#4f699f1a;--nav-hover:#6682bd14;--nav-text-hover:#466094;--nav-text-active:#3d5689;--nav-active-indicator:#6682bd;--nav-segment-track:#ebf4fcb8;--hero-bottom-tint:#e5f3fc61;--hero-bottom-clear:#e5f3fc00;--hero-scrim-start:#f6fbffa3;--hero-scrim-middle:#f6fbff61;--hero-scrim-end:#f6fbff00;--shadow-hero-title-on-light:#ffffff38;--text-hero-on-dark:#b9d2ffc1;--text-hero-on-dark-soft:#d1e0ffd9;--shadow-hero-title-on-dark:#04091a8c;--hero-mobile-overlay-start:#e5f3fc0a;--hero-mobile-overlay-upper:#def0fb1f;--hero-mobile-overlay-lower:#def0fbc4;--hero-mobile-overlay-end:#eaf5fcf5;--border-subtle:#2f42681c;--shadow-card:0 2px 6px #2f42680d, 0 10px 26px #2f42680d;--shadow-card-hover:0 4px 12px #2f426814, 0 16px 34px #3a528417;--surface-card-placeholder:#eaf0fc;--surface-card-badge:#151f346b;--text-card-badge:#f4f8ff;--border-retry-button:#6682bd40;--text-retry-button:#4f699f;--surface-retry-button-hover:#eaf0fc;--text-footer-link-hover:#4f699f;--text-info-link:#4f699f;--border-info-notice:#6682bd;--text-not-found-status:#6682bd;--focus-ring:#526fae;--overlay-backdrop:#131d2e8a;--surface-media-panel:#070a12;--surface-media-center:#151f34;--surface-media-mid:#0c1220;--shadow-media-panel:#0a101c73;--shadow-media-panel-soft:#23314b0f;--media-glow-accent:#829cd01f;--media-glow-decoration:#6682bd14;--glow-dot-active:#829cd0f2;--surface-arrow:#0e152485;--text-arrow:#f1f5fd;--surface-arrow-hover:#4f699fe0;--glow-arrow-hover:#829cd08c;--surface-detail-info:#fff;--border-detail-divider:#2f426814;--text-detail-author:#1a243a;--text-detail-description:#4a5772;--text-detail-value:#243048;--border-detail-card:#eef2f6;--surface-detail-card:#f8fafc;--text-detail-link:#4f699f;--border-detail-link:#e2e8f0;--surface-detail-link:#f4f8fc;--surface-detail-link-hover:#eaf0fc;--text-detail-link-hover:#3d5689;--surface-detail-retry:#eaf0fc}*{box-sizing:border-box}html{scrollbar-gutter:stable;background-color:var(--page);background-image:linear-gradient(var(--page-tint), var(--page-tint)), linear-gradient(var(--page-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--page-grid-line) 1px, transparent 1px);background-size:auto, var(--page-grid-size) var(--page-grid-size), var(--page-grid-size) var(--page-grid-size)}body{min-height:100vh;font-family:var(--font-body);flex-direction:column;margin:0;display:flex}main{flex:1}[hidden]{display:none!important}:where(.site-header,.site-footer) a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:4px}.site-header{--nav-card-top:max(14px, env(safe-area-inset-top));z-index:20;top:var(--nav-card-top);width:min(1160px,100% - 48px);min-height:60px;margin:var(--nav-card-top) auto 0;padding:6px max(18px, env(safe-area-inset-right)) 6px max(18px, env(safe-area-inset-left));background:var(--nav-surface-top);box-shadow:none;backdrop-filter:none;font-family:var(--font-ui);border:0;border-radius:16px;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;transition:background-color .18s,box-shadow .18s,-webkit-backdrop-filter .18s,backdrop-filter .18s;display:grid;position:sticky}.site-header.is-scrolled{background:var(--surface-card);box-shadow:0 1px 0 var(--nav-border-scrolled), 0 3px 12px var(--nav-shadow-scrolled)}@supports (backdrop-filter:blur(1px)){.site-header.is-scrolled{background:var(--nav-surface-scrolled);backdrop-filter:blur(8px)saturate(110%)}}.page-home .site-header{top:var(--nav-card-top);margin:0;position:fixed;left:50%;transform:translate(-50%)}.brand__short{font-family:var(--font-ui);font-weight:400;display:none}.brand{color:var(--text-brand);font-family:var(--font-brand);letter-spacing:.02em;white-space:nowrap;justify-self:start;width:max-content;font-size:15px;font-weight:800;text-decoration:none;display:inline-flex}.primary-nav{justify-content:center;align-items:center;gap:6px;display:flex}.nav-tab{min-width:44px;min-height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0 14px;font-family:inherit;font-size:13px;text-decoration:none;transition:color .16s,background-color .16s;display:inline-flex;position:relative}.nav-tab:hover{background:var(--nav-hover);color:var(--nav-text-hover)}.nav-tab:active{background:var(--nav-hover);color:var(--nav-text-active)}.nav-tab.is-active{color:var(--nav-text-active);background:0 0;font-weight:700}.nav-tab.is-active:after{content:"";background:var(--nav-active-indicator);border-radius:999px;height:2.5px;position:absolute;bottom:6px;left:13px;right:13px}@media (width<=850px){:is(.page-home,.page-illustrations,.page-section) .site-header{width:calc(100% - 34px);min-height:58px;padding-inline:max(15px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right));grid-template-columns:auto minmax(0,1fr);gap:15px}:is(.page-home,.page-illustrations,.page-section) .primary-nav{justify-self:end;gap:4px}:is(.page-home,.page-illustrations,.page-section) .nav-tab{padding:0 13px;font-size:12px}}@media (width<=560px){:is(.page-home,.page-illustrations,.page-section) .site-header{--nav-card-top:max(9px, env(safe-area-inset-top));width:calc(100% - 20px);min-height:56px;padding-inline:max(12px, env(safe-area-inset-left)) max(8px, env(safe-area-inset-right));border-radius:15px;grid-template-columns:auto minmax(0,1fr);gap:8px}:is(.page-home,.page-illustrations,.page-section) .brand{letter-spacing:0;font-size:12px}:is(.page-home,.page-illustrations,.page-section) .brand__full{display:none}:is(.page-home,.page-illustrations,.page-section) .brand__short{display:inline}:is(.page-home,.page-illustrations,.page-section) .primary-nav{scrollbar-width:none;background:0 0;justify-content:flex-start;gap:2px;width:max-content;min-width:0;max-width:100%;padding:3px;overflow-x:auto}:is(.page-home,.page-illustrations,.page-section) .primary-nav::-webkit-scrollbar{display:none}:is(.page-home,.page-illustrations,.page-section) .nav-tab{border-radius:10px;flex:none;min-width:44px;min-height:44px;padding:0 12px;font-size:12px}:is(.page-home,.page-illustrations,.page-section) .nav-tab.is-active{background:var(--nav-hover)}:is(.page-home,.page-illustrations,.page-section) .nav-tab.is-active:after{height:2px;bottom:5px;left:11px;right:11px}}@media (prefers-reduced-motion:reduce){.site-header,.nav-tab{transition:none}}.site-footer{border-top:1px solid var(--border-subtle);width:min(1160px,100% - 56px);color:var(--text-muted);font-family:var(--font-body);flex-direction:column;gap:8px;margin:0 auto;padding:18px 0 22px;font-size:12px;display:flex}.site-footer__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 22px;display:flex}.footer-brand{color:var(--text-footer-brand);font-family:var(--font-brand);letter-spacing:.08em;flex:none;font-weight:700;text-decoration:none}.site-footer__links{flex-wrap:wrap;display:flex}.site-footer__links a{min-height:44px;color:inherit;font-family:var(--font-ui);align-items:center;padding:2px 10px;text-decoration:none;transition:color .16s;display:inline-flex}.site-footer__links a+a{border-left:1px solid var(--border-subtle)}.site-footer__links a:hover{color:var(--text-footer-link-hover)}.site-footer p{margin:0}.site-footer__icp{color:inherit;font-variant-numeric:tabular-nums;opacity:.82;text-decoration:none}@media (width<=560px){.site-footer{width:calc(100% - 30px);padding:16px 0 22px}.site-footer__row{flex-direction:column;align-items:flex-start;gap:7px}.site-footer__links a:first-child{padding-left:0}.site-footer p{font-size:10px;line-height:1.7}}@media (prefers-reduced-motion:reduce){.site-footer__links a{transition:none}}.page-home{color:var(--text-primary);font-family:var(--font-body);line-height:1.65}.page-home .home-view{--hero-blend-height:240px;--hero-wallpaper:url(/assets/desktop-banner/desktop.png);--hero-wallpaper-positions:center;background-color:var(--surface-hero);background-image:linear-gradient(90deg, var(--hero-scrim-start) 0%, var(--hero-scrim-middle) 38%, var(--hero-scrim-end) 70%), linear-gradient(0deg, var(--hero-bottom-tint), var(--hero-bottom-clear) 30%), var(--hero-wallpaper);background-position:center, center, var(--hero-wallpaper-positions);isolation:isolate;background-size:cover;align-items:center;min-height:100svh;padding:126px max(50vw - 555px,7vw) 82px;display:flex;position:relative;overflow:hidden}.page-home .home-view:after{z-index:0;height:var(--hero-blend-height);background:linear-gradient(180deg, transparent, var(--page) 85%, var(--page));content:"";pointer-events:none;position:absolute;bottom:0;left:0;right:0}.page-home .home-view:before{z-index:1;height:var(--hero-blend-height);background-image:linear-gradient(var(--page-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--page-grid-line) 1px, transparent 1px);background-size:var(--page-grid-size) var(--page-grid-size);content:"";pointer-events:none;background-position:0 100%;position:absolute;inset:auto 0 0;-webkit-mask-image:linear-gradient(#0000 30%,#000);mask-image:linear-gradient(#0000 30%,#000)}.page-home .home-view__shade{z-index:0;background:radial-gradient(ellipse at 17% 50%, var(--hero-glow), transparent 5%);pointer-events:none;position:absolute;inset:0}.page-home .home-copy{z-index:1;width:min(620px,56vw);margin-top:5px;position:relative}.page-home .home-kicker{color:var(--text-hero-lead);font-family:var(--font-ui);letter-spacing:.19em;align-items:center;gap:10px;margin:0 0 21px;font-size:10px;font-weight:700;display:flex}.page-home .home-kicker__mark{color:var(--hero-kicker-mark);font-size:17px}.page-home .home-view h1{color:var(--hero-title);font-family:var(--font-heading);letter-spacing:-.045em;text-shadow:0 1px 12px var(--shadow-hero-title-on-light);margin:0;font-size:clamp(40px,5.4vw,69px);font-weight:650;line-height:1.2}.page-home .home-lead{color:var(--text-hero-lead);letter-spacing:.035em;margin:21px 0 0;font-size:15px}.page-home .home-view__scroll-hint{z-index:1;min-height:44px;color:var(--text-muted);font-family:var(--font-ui);flex-direction:column;align-items:center;gap:5px;padding:8px 14px;font-size:10px;text-decoration:none;transition:color .16s,transform .18s;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.page-home .home-view__scroll-hint:hover{color:var(--hero-scroll-hint-hover)}.page-home .home-view__scroll-hint:is(:hover,:focus-visible){transform:translate(-50%)translateY(3px)}.page-home .home-view__scroll-hint:active{transform:translate(-50%)translateY(5px)scale(.96)}.page-home .home-view__scroll-hint:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:8px}.page-home .home-view__scroll-hint-text{letter-spacing:.22em;margin-right:-.22em}.page-home .home-view__scroll-hint-icon{display:block}@media (height<=500px) and (orientation:landscape){.page-home .home-view__scroll-hint{display:none}}.page-home .home-view__edge{z-index:1;color:var(--text-hero-edge);font-family:var(--font-ui);letter-spacing:.2em;writing-mode:vertical-rl;font-size:8px;position:absolute;top:50%;right:26px}.page-home .home-view__edge span{color:var(--hero-edge-divider);padding:7px 0}.page-home .view-panel{min-height:100svh;padding-inline:max(28px,50vw - 580px)}.page-home .discovery-view{padding-block:142px 90px;scroll-margin-top:104px}@media (width<=850px){.page-home .home-view{padding-inline:7vw}.page-home .home-copy{width:min(590px,70vw)}.page-home .home-view h1{font-size:clamp(42px,7vw,60px)}.page-home .home-view__edge{right:16px}}@media (width<=560px){.page-home .home-view{--hero-blend-height:160px;--hero-wallpaper-positions:63% center;background-image:linear-gradient(180deg, var(--hero-mobile-overlay-start) 0%, var(--hero-mobile-overlay-upper) 28%, var(--hero-mobile-overlay-lower) 61%, var(--hero-mobile-overlay-end) 100%), var(--hero-wallpaper);background-position:center, var(--hero-wallpaper-positions);align-items:end;padding:130px 22px 76px}.page-home .home-copy{width:100%;margin:0}.page-home .home-kicker{letter-spacing:.15em;gap:8px;margin-bottom:15px;font-size:8px}.page-home .home-view h1{color:var(--hero-title);text-shadow:0 1px 12px var(--shadow-hero-title-on-light);font-size:clamp(30px,9vw,42px)}.page-home .home-kicker{color:var(--text-hero-lead)}.page-home .home-lead{max-width:340px;color:var(--text-hero-lead);margin-top:13px;font-size:12px}.page-home .home-view__edge{display:none}.page-home .home-view__scroll-hint{bottom:14px}.page-home .view-panel{padding-inline:15px}.page-home .discovery-view{padding-block:107px 60px;scroll-margin-top:82px}}@media (orientation:portrait){.page-home .home-view{--hero-wallpaper:url(/assets/mobile-banner/mobile.png), url(/assets/desktop-banner/desktop.png);--hero-wallpaper-positions:center, center}}@media (orientation:portrait) and (width<=560px){.page-home .home-view{--hero-wallpaper-positions:center, 63% center}}.page-home:not(.page-client-navigation) .home-copy{animation:.52s cubic-bezier(.2,.7,.2,1) both home-copy-arrive}@media (width<561px){:root{--motion-page-enter-x:0px;--motion-page-enter-y:6px;--motion-page-leave-y:-3px}}@keyframes home-copy-arrive{0%{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}.page-home .home-view__scroll-hint-icon{animation:1.9s ease-in-out infinite home-scroll-hint-drift}@keyframes home-scroll-hint-drift{0%,to{opacity:.65;transform:translateY(0)}50%{opacity:1;transform:translateY(5px)}}@media (prefers-reduced-motion:reduce){.page-home .home-copy{animation:none}.page-home .home-view__scroll-hint{transition:none}.page-home .home-view__scroll-hint:is(:hover,:focus-visible,:active){transform:translate(-50%)}.page-home .home-view__scroll-hint-icon{animation:none}}.tag-chip{border:1px solid var(--border-subtle);background:var(--surface-tag);min-height:23px;color:var(--text-muted);font-family:var(--font-ui);border-radius:999px;align-items:center;padding:3px 9px;font-size:10px;line-height:1.35;display:inline-flex}.tag-chip[data-tone=columbina]{border-color:var(--border-tag-columbina);background:var(--surface-tag-columbina);color:var(--text-tag-columbina)}.tag-chip[data-tone=sandrone]{border-color:var(--border-tag-sandrone);background:var(--surface-tag-sandrone);color:var(--text-tag-sandrone)}.tag-chip[data-tone=duo]{border-color:var(--border-tag-duo);background:linear-gradient(100deg, var(--surface-tag-duo-start), var(--surface-tag-duo-end));color:var(--text-tag-duo)}html:has([data-works-gallery]){overflow-anchor:none}.works-gallery{--gallery-columns:4}.works-gallery .works-list{grid-template-columns:repeat(var(--rendered-columns,var(--gallery-columns)), minmax(0, 1fr));overflow-anchor:none;align-items:start;gap:16px;display:grid}.works-gallery .works-column{flex-direction:column;align-self:start;gap:16px;min-width:0;display:flex}.works-gallery .work-card{width:100%;aspect-ratio:var(--image-ratio,4 / 5);border:1px solid var(--border-subtle);background:var(--surface-card);box-shadow:var(--shadow-card);border-radius:12px;transition:box-shadow .18s;display:block;position:relative;overflow:hidden}.works-gallery .work-card__link{height:100%;color:inherit;text-decoration:none;display:block;position:absolute;inset:0}.works-gallery .work-card__image{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .16s,transform .3s;display:block;position:absolute;inset:0}.works-gallery .work-card.is-loaded .work-card__image{opacity:1}.works-gallery .work-card--unknown-size .work-card__image{object-fit:contain}.works-gallery .work-card__placeholder{background:var(--surface-card-placeholder);color:var(--text-muted);place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.works-gallery .work-card__badge{z-index:2;border:1px solid var(--border-card-badge);background:var(--surface-card-badge);-webkit-backdrop-filter:blur(6px)saturate(140%);height:22px;color:var(--text-card-badge);font-family:var(--font-ui);font-variant-numeric:tabular-nums;pointer-events:none;opacity:0;visibility:hidden;border-radius:999px;align-items:center;gap:3.5px;padding:0 7px 0 6px;font-size:11px;font-weight:600;line-height:1;transition:opacity .16s;display:inline-flex;position:absolute;top:8px;right:8px}.works-gallery .work-card__badge-icon{flex:none;width:12px;height:12px;display:block}.works-gallery .work-card.is-loaded:not(.is-image-error) .work-card__badge{opacity:1;visibility:visible}.works-gallery .tag-list{opacity:0;visibility:hidden;pointer-events:none;flex-wrap:wrap;gap:7px;transition:opacity .16s;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.works-gallery .work-card__link:focus-visible .tag-list{opacity:1;visibility:visible}@media (hover:hover) and (pointer:fine) and (width>=768px){.works-gallery .work-card:hover{box-shadow:var(--shadow-card-hover)}.works-gallery .work-card:hover .tag-list{opacity:1;visibility:visible}.works-gallery .work-card.is-loaded:not(.is-image-error):hover .work-card__badge{opacity:.78}.works-gallery .work-card:hover .work-card__image{transform:scale(1.02)}}.work-card__retry{border:1px solid var(--border-subtle);background:var(--surface-card);min-height:44px;color:var(--text-primary);font:inherit;font-family:var(--font-ui);white-space:nowrap;cursor:pointer;border-radius:8px;padding:8px 16px;font-size:13px;position:absolute;top:calc(50% + 20px);left:50%;transform:translate(-50%)}.work-card__retry:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.works-gallery .work-card.is-image-error .tag-list{visibility:hidden}.works-gallery .works-pagination{text-align:center;min-height:48px;padding-top:12px}.works-gallery .works-status{color:var(--text-muted);margin:0;font-size:12px}.works-gallery .works-retry{border:1px solid var(--border-retry-button);background:var(--surface-card);min-height:44px;color:var(--text-retry-button);font:inherit;font-family:var(--font-ui);cursor:pointer;border-radius:999px;margin-top:10px;padding:8px 20px;font-size:13px;transition:background-color .16s}.works-gallery .works-retry:hover{background:var(--surface-retry-button-hover)}.works-gallery .work-card__link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-4px}.works-gallery .works-retry:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}@media (width<1024px){.works-gallery{--gallery-columns:3}}@media (width<768px){.works-gallery{--gallery-columns:2}}@media (width<561px){.works-gallery .works-list,.works-gallery .works-column{gap:10px}.works-gallery .work-card__badge{top:6px;right:6px}.works-gallery .tag-list{gap:5px;bottom:8px;left:8px;right:8px}}@media (prefers-reduced-motion:reduce){.works-gallery .work-card,.works-gallery .work-card__image,.works-gallery .work-card__badge,.works-gallery .tag-list,.works-gallery .works-retry{transition:none}.works-gallery .work-card:hover .work-card__image{transform:none}}.page-illustrations,.page-section{color:var(--text-primary);font-family:var(--font-body);overflow-anchor:none;line-height:1.65}.illustration-page,.section-page{width:min(1160px,100% - 56px);margin:0 auto;padding:48px 0 90px}.illustration-page h1,.section-page h1{font-family:var(--font-heading);margin:0 0 24px;font-size:30px;font-weight:400}.discovery-summary{color:var(--text-muted);margin:0 0 24px;font-size:13px}@media (width<561px){.illustration-page,.section-page{width:calc(100% - 30px);padding-block:32px 60px}}.illustration-filters{--filter-include-text:#35664f;--filter-include-surface:#edf5ef;--filter-include-border:#c9ddcf;color:var(--text-primary);margin-bottom:22px}.illustration-filters__header{align-items:center;gap:16px;min-height:32px;margin-bottom:4px;display:flex}.illustration-filters h2{font-family:var(--font-ui);margin:0;font-size:14px;font-weight:600}.illustration-filters__groups{gap:2px;display:grid}.illustration-filters__row{--filter-text:var(--filter-include-text);--filter-surface:var(--filter-include-surface);--filter-border:var(--filter-include-border);align-items:start;gap:14px;min-height:44px;display:flex}.illustration-filters__row[data-filter-group=exclude]{--filter-text:var(--text-tag-sandrone);--filter-surface:var(--surface-tag-sandrone);--filter-border:var(--border-tag-sandrone)}.illustration-filters__label{min-height:44px;color:var(--filter-text);font-family:var(--font-ui);flex:0 0 28px;align-items:center;font-size:13px;font-weight:600;display:flex}.illustration-filters__values,.illustration-filters [data-filter-selected]{flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;display:flex}.illustration-filters [data-filter-selected]:empty{display:none}.illustration-filters button{min-height:44px;color:inherit;font:inherit;font-family:var(--font-ui);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:13px}.illustration-filters button:hover{background:var(--nav-hover)}.illustration-filters .illustration-filters__add{width:44px;color:var(--text-muted);background:0 0;border:0;border-radius:8px;flex:0 0 44px;place-items:center;padding:0;font-size:16px;line-height:1;display:inline-grid}.illustration-filters .illustration-filters__add>span{border-radius:50%;place-items:center;width:30px;height:30px;transition:background-color .14s;display:inline-grid}.illustration-filters .illustration-filters__add:hover{background:0 0}.illustration-filters .illustration-filters__add>span>svg{display:block}.illustration-filters .illustration-filters__add:hover>span{background:var(--nav-hover)}@media (prefers-reduced-motion:reduce){.illustration-filters .illustration-filters__add>span{transition:none}}.illustration-filters .illustration-filters__chip{border:1px solid var(--filter-border);background:var(--filter-surface);color:var(--filter-text);overflow-wrap:anywhere;text-align:left;border-radius:999px;align-items:center;max-width:100%;padding-inline:13px;display:inline-flex}.illustration-filters .illustration-filters__chip:hover{background:var(--filter-surface);filter:brightness(.97);box-shadow:inset 0 0 0 1px var(--filter-border)}.illustration-filters .illustration-filters__clear{color:var(--text-muted)}.illustration-filters button:focus-visible,.illustration-filters input:focus-visible,.work-detail a.tag-chip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.illustration-filters__menu{box-sizing:border-box;border:1px solid var(--border-subtle);background:var(--surface-card);width:min(300px,100vw - 24px);color:var(--text-primary);box-shadow:0 8px 24px var(--nav-shadow-scrolled);font:inherit;border-radius:10px;margin:0;padding:12px;position:fixed;inset:auto}.illustration-filters__menu:popover-open{flex-direction:column;gap:8px;display:flex}.illustration-filters__menu-title{font-family:var(--font-ui);font-size:13px;font-weight:600}.illustration-filters__search-label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.illustration-filters input{box-sizing:border-box;border:1px solid var(--border-subtle);background:var(--page);width:100%;min-height:44px;color:inherit;font:inherit;border-radius:6px;flex-shrink:0;padding:8px 10px;font-size:16px}.illustration-filters__options{overscroll-behavior:contain;min-height:0;max-height:220px;overflow-y:auto}.illustration-filters__options button{text-align:left;overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.illustration-filters__options button:focus-visible{outline-offset:-2px;background:var(--nav-hover)}.illustration-filters__options small{color:var(--text-muted);flex-shrink:0;font-size:11px}.illustration-filters__empty{color:var(--text-muted);margin:0;font-size:13px}.illustration-filters__empty:empty{display:none}.illustration-filters__feedback{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.illustration-filters [data-filter-message]{color:var(--text-muted);margin:4px 0 0;font-size:12px}.illustration-filters [data-filter-message]:empty{display:none}.work-detail a.tag-chip{text-decoration:none}@media (width<561px){.illustration-filters{margin-bottom:16px}.illustration-filters__row{gap:8px}}.work-image-arrow{border:1px solid var(--border-arrow);background:var(--surface-arrow);backdrop-filter:blur(10px);width:44px;height:44px;color:var(--text-arrow);cursor:pointer;opacity:.85;pointer-events:auto;border-radius:50%;place-items:center;padding:0;transition:opacity .28s,transform .2s,background .2s,box-shadow .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.work-image-arrow--previous{left:14px}.work-image-arrow--next{right:14px}.work-image-arrow:not(:disabled):hover{opacity:1;background:var(--surface-arrow-hover);border-color:var(--border-arrow-hover);box-shadow:0 0 18px var(--glow-arrow-hover);transform:translateY(-50%)scale(1.08)}.work-image-arrow:disabled{opacity:.16;cursor:default}.work-image-arrow:focus-visible{opacity:1;outline:2px solid var(--focus-ring-on-dark);outline-offset:4px}@media (prefers-reduced-motion:reduce){.work-image-arrow{transition:none}}:root{--pi-duration:.15s;--pi-easing:cubic-bezier(.4, 0, .2, 1);--pi-x-fg:#1e2638;--pi-x-stroke:#1e2638ad;--pi-x-fill:#182030;--pi-pixiv-fg:#1271b5;--pi-pixiv-stroke:#1271b5a8;--pi-pixiv-fill:#0086e0;--pi-rednote-fg:#be3248;--pi-rednote-stroke:#be3248a8;--pi-rednote-fill:#d62842;--pi-lofter-fg:#1c7c6b;--pi-lofter-stroke:#1c7c6ba8;--pi-lofter-fill:#1a8a76;--pi-generic-fg:var(--text-detail-link);--pi-generic-stroke:var(--border-retry-button);--pi-generic-fill:var(--text-heading)}.pi-badge{--_fg:var(--pi-x-fg);--_stroke:var(--pi-x-stroke);--_fill:var(--pi-x-fill);--_box-size:32px;--_icon-size:20px;--_radius:8px;--_border-width:1.25px;width:var(--_box-size);height:var(--_box-size);border:var(--_border-width) solid var(--_stroke);border-radius:var(--_radius);color:var(--_fg);cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition-property:color,background-color,border-color,box-shadow;transition-duration:var(--pi-duration);transition-timing-function:var(--pi-easing);background-color:#0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex;position:relative}.pi-badge:is([data-platform=x],[data-icon-platform=x]){--_fg:var(--pi-x-fg);--_stroke:var(--pi-x-stroke);--_fill:var(--pi-x-fill)}.pi-badge:is([data-platform=pixiv],[data-icon-platform=pixiv]){--_fg:var(--pi-pixiv-fg);--_stroke:var(--pi-pixiv-stroke);--_fill:var(--pi-pixiv-fill)}.pi-badge:is([data-platform=rednote],[data-icon-platform=rednote]){--_fg:var(--pi-rednote-fg);--_stroke:var(--pi-rednote-stroke);--_fill:var(--pi-rednote-fill)}.pi-badge:is([data-platform=lofter],[data-icon-platform=lofter]){--_fg:var(--pi-lofter-fg);--_stroke:var(--pi-lofter-stroke);--_fill:var(--pi-lofter-fill)}.pi-badge:is([data-platform=generic],[data-icon-platform=generic]){--_fg:var(--pi-generic-fg);--_stroke:var(--pi-generic-stroke);--_fill:var(--pi-generic-fill)}.pi-badge svg{width:var(--_icon-size);height:var(--_icon-size);pointer-events:none;flex-shrink:0;display:block}.pi-badge:is([data-platform=rednote],[data-icon-platform=rednote]) svg{width:calc(var(--_box-size) - 5px);height:calc(var(--_box-size) - 5px)}.pi-badge[data-size="24"]{--_box-size:38px;--_icon-size:22px;--_radius:9px;--_border-width:1.35px}.pi-badge[data-size="20"]{--_box-size:32px;--_icon-size:19px;--_radius:8px;--_border-width:1.25px}.pi-badge[data-size="16"]{--_box-size:26px;--_icon-size:15.5px;--_radius:6px;--_border-width:1.15px}.pi-badge .pi-svg-active{display:none}@media (hover:hover) and (pointer:fine) and (width>=768px){.pi-badge:hover:not([data-touch-released]){background-color:var(--_fill);border-color:var(--_fill);color:#fff}.pi-badge:is([data-platform=pixiv],[data-icon-platform=pixiv]):hover:not([data-touch-released]) .pi-svg-default{display:none!important}.pi-badge:is([data-platform=pixiv],[data-icon-platform=pixiv]):hover:not([data-touch-released]) .pi-svg-active{display:block!important}}.pi-badge:active,.pi-badge.is-pressing{background-color:var(--_fill);border-color:var(--_fill);color:#fff}.pi-badge:is([data-platform=pixiv],[data-icon-platform=pixiv]):is(:active,.is-pressing) .pi-svg-default{display:none!important}.pi-badge:is([data-platform=pixiv],[data-icon-platform=pixiv]):is(:active,.is-pressing) .pi-svg-active{display:block!important}.pi-badge:focus-visible{outline:2.5px solid var(--focus-ring);outline-offset:2.5px}@media (prefers-reduced-motion:reduce){.pi-badge{transition:none!important}}html.has-work-overlay{overflow:hidden}.work-overlay{--stage-width:530px;--detail-height:min(740px, calc(100dvh - 64px));width:min(calc(var(--stage-width) + 360px), calc(100vw - 128px));max-width:none;max-height:calc(100dvh - 64px);color:var(--text-primary);background:0 0;border:0;padding:0;font-family:inherit;overflow:visible}.work-overlay::backdrop{background:var(--overlay-backdrop);backdrop-filter:blur(3px)}.work-overlay__panel{height:var(--detail-height);background:var(--surface-media-panel);box-shadow:0 32px 96px -16px var(--shadow-media-panel), 0 2px 8px var(--shadow-media-panel-soft);border:0;border-radius:22px;position:relative}.work-overlay__close{z-index:5;border:1px solid var(--border-overlay-close);background:var(--surface-overlay-close);width:44px;height:44px;color:var(--text-primary);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:0;left:-56px}.work-overlay__feedback{border-radius:inherit;background:var(--surface-card);flex-direction:column;justify-content:center;align-items:center;gap:16px;height:100%;padding:32px;display:flex}.work-overlay__feedback.is-update-error{z-index:6;background:var(--surface-card);border-radius:0 0 22px 22px;height:auto;padding:12px;position:absolute;inset:auto 0 0}.work-detail{border-radius:inherit;grid-template-columns:minmax(0,1fr) 360px;height:100%;line-height:1.7;display:grid;overflow:hidden}.work-detail__media{background:radial-gradient(ellipse at center, var(--surface-media-center) 0%, var(--surface-media-mid) 70%, var(--surface-media-panel) 100%);min-width:0;min-height:0;position:relative;overflow:hidden}.work-detail__media:before{content:"";background:radial-gradient(circle at 20% 20%, var(--media-glow-accent), transparent 45%), radial-gradient(circle at 80% 80%, var(--media-glow-decoration), transparent 50%);pointer-events:none;position:absolute;inset:0}.work-detail__stage{place-items:center;height:100%;display:grid;position:relative}.work-detail__image-open{z-index:1;cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;min-height:0;padding:0;position:relative}.work-detail__image-outgoing{object-fit:contain;width:100%;height:100%;filter:drop-shadow(0 14px 32px var(--shadow-media-image));pointer-events:none;position:absolute;inset:0}.work-detail__image-open img{object-fit:contain;width:100%;height:100%;filter:drop-shadow(0 14px 32px var(--shadow-media-image));display:block}.work-detail__image-feedback{z-index:2;pointer-events:none;justify-items:center;gap:12px;max-width:80%;display:grid;position:absolute}.work-detail__image-feedback button{pointer-events:auto}.work-detail__image-message{background:var(--surface-card);color:var(--text-primary);text-align:center;border-radius:12px;margin:0;padding:12px 16px}.work-detail__image-controls{z-index:3;pointer-events:none;position:absolute;inset:0}.work-detail__image-count{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.work-detail__dots{z-index:3;border:1px solid var(--border-dots-bar);background:var(--surface-dots-bar);backdrop-filter:blur(10px);scrollbar-width:thin;border-radius:999px;align-items:center;max-width:calc(100% - 24px);padding:0 5px;transition:opacity .32s;display:flex;position:absolute;bottom:12px;left:50%;overflow-x:auto;transform:translate(-50%)}.work-detail__dot{cursor:pointer;background:0 0;border:0;flex:0 0 18px;place-items:center;width:18px;height:22px;padding:0;display:grid}.work-detail__dot:before{content:"";background:var(--dot-indicator);border-radius:50%;width:6px;height:6px;transition:width .24s,background .24s}.work-detail__dot:hover:before{background:var(--dot-indicator-hover)}.work-detail__dot.is-active:before{background:var(--dot-indicator-active);width:16px;box-shadow:0 0 10px var(--glow-dot-active);border-radius:999px}@media (hover:hover) and (pointer:fine){.work-detail__media:not(:hover):not(:focus-within) .work-image-arrow,.work-detail__media.is-idle:not(:focus-within) .work-image-arrow{opacity:0;pointer-events:none}.work-detail__media.is-idle:not(:focus-within) .work-detail__dots{opacity:.18}.work-detail__dots:hover{opacity:1}}.work-detail__info{overscroll-behavior:contain;border-left:1px solid var(--border-detail-divider);background:var(--surface-detail-info);overflow-wrap:anywhere;flex-direction:column;gap:16px;min-width:0;min-height:0;padding:30px;display:flex;position:relative;overflow-y:auto}.work-detail__author{border-bottom:1px solid var(--border-subtle);padding-bottom:14px}.work-detail__author p{margin:0}.work-detail__author-name{color:var(--text-detail-author);letter-spacing:-.01em;font-size:16px;font-weight:700}.work-detail__author .work-detail__author-home{margin-top:4px;font-size:12px}.work-detail__text{flex-direction:column;flex:1;gap:14px;display:flex}.work-detail h1{font-family:var(--font-heading);color:var(--text-heading);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:400;line-height:1.35}.work-detail__description{white-space:pre-wrap;color:var(--text-detail-description);margin:0;font-size:14px;line-height:1.8}.work-detail__tags{flex-wrap:wrap;gap:8px;display:flex}.work-detail .tag-chip{font-size:12px}.work-detail__metadata{flex-direction:column;margin:4px 0 0;padding:0;display:flex}.work-detail__metadata>div{border-top:1px solid var(--border-detail-card);background:0 0;justify-content:space-between;align-items:baseline;gap:14px;padding:9px 2px;display:flex}.work-detail__metadata dt{font-family:var(--font-ui);color:var(--text-muted);letter-spacing:.04em;margin:0;font-size:11.5px;font-weight:600}.work-detail__metadata dd{font-variant-numeric:tabular-nums;color:var(--text-detail-value);text-align:right;margin:0;font-size:12.5px;font-weight:600}.work-detail__credit{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:14px;padding:14px 2px 0;display:flex}.work-detail__credit-label{font-family:var(--font-ui);color:var(--text-muted);letter-spacing:.04em;font-size:11.5px;font-weight:600}.work-detail__credit-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.work-detail__credit-icon:after{content:"";position:absolute;inset:-6px}.work-detail a:not(.pi-badge){color:var(--text-detail-link);text-decoration:none}.work-detail__retry{border:1px solid var(--border-subtle);background:var(--surface-detail-retry);min-height:44px;color:var(--text-primary);font-family:var(--font-ui);cursor:pointer;border-radius:999px;padding:8px 18px}.work-overlay :focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px}.work-overlay .work-overlay__panel:focus{outline:none}.work-detail.is-loading .work-detail__info>*{visibility:hidden}.work-detail.is-loading .work-detail__dots{display:none}.work-detail.is-loading .work-detail__info:after{content:"正在加载作品……";color:var(--text-muted);position:absolute;top:30px;left:30px}@media (width<=760px){.work-overlay{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.work-overlay__panel{border-radius:16px;height:calc(100dvh - 24px)}.work-overlay__close{top:10px;left:auto;right:10px}.work-detail{overscroll-behavior:contain;flex-direction:column;display:flex;overflow-y:auto}.work-detail__media{flex:none;height:min(52dvh,460px);min-height:260px}.work-detail__info{border-left:0;flex:none;padding:22px;overflow:visible}}@media (prefers-reduced-motion:reduce){.work-overlay::backdrop{backdrop-filter:none}.work-detail__dots,.work-detail__dot:before{transition:none}}html.has-work-overlay{scrollbar-gutter:auto}.work-lightbox{--lightbox-thumb:64px;width:100%;max-width:none;height:100dvh;max-height:none;color:var(--text-on-dark);background:0 0;border:0;margin:0;padding:0;font-family:inherit;position:fixed;inset:0;overflow:hidden}.work-lightbox::backdrop{background:var(--lightbox-backdrop);backdrop-filter:blur(4px);transition:background .24s,backdrop-filter .24s;@starting-style{backdrop-filter:blur();background:0 0}}.work-lightbox.is-closing::backdrop{backdrop-filter:blur();background:0 0}.work-lightbox__toolbar{z-index:3;padding:max(8px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left));background:linear-gradient(var(--lightbox-toolbar-fade), transparent);pointer-events:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:absolute;inset:0 0 auto}.work-lightbox__toolbar p{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:14px;overflow:hidden}.work-lightbox__toolbar>div{pointer-events:auto;flex:none;align-items:center;gap:8px;display:flex}.work-lightbox__toolbar button{border:1px solid var(--border-lightbox-control);background:var(--surface-lightbox-control);min-width:44px;min-height:44px;color:var(--text-on-dark);backdrop-filter:blur(4px);font:inherit;font-family:var(--font-ui);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:13px;text-decoration:none;transition:background .18s,border-color .18s;display:inline-flex}.work-lightbox__toolbar [data-lightbox-zoom]{border-radius:24px;padding-inline:14px}.work-lightbox__toolbar button:hover{background:var(--surface-lightbox-control-hover);border-color:var(--border-lightbox-control-hover)}.work-lightbox__toolbar button:disabled{opacity:.45;cursor:default}.work-lightbox :focus-visible{outline:2px solid var(--focus-ring-on-dark);outline-offset:3px}.work-lightbox__viewport{touch-action:none;cursor:zoom-out;user-select:none;position:absolute;inset:64px 56px 28px;overflow:hidden}.has-thumbnails .work-lightbox__viewport{bottom:calc(var(--lightbox-thumb) + 40px + env(safe-area-inset-bottom))}.work-lightbox__viewport.is-opening{overflow:visible}.work-lightbox__slide{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.work-lightbox__slide img{object-fit:contain;cursor:zoom-in;-webkit-user-drag:none;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.work-lightbox__viewport.is-zoomed img{cursor:grab}.work-lightbox__viewport.is-dragging img{cursor:grabbing}.work-lightbox__gallery{z-index:2;pointer-events:none;position:absolute;inset:64px 0 28px}.has-thumbnails .work-lightbox__gallery{bottom:calc(var(--lightbox-thumb) + 40px + env(safe-area-inset-bottom))}.work-lightbox__gallery [data-lightbox-count]{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.work-lightbox__thumbnails{bottom:max(12px, env(safe-area-inset-bottom));z-index:3;background:var(--surface-lightbox-thumbs);backdrop-filter:blur(4px);overscroll-behavior:contain;scrollbar-width:thin;border-radius:8px;gap:4px;max-width:calc(100% - 32px);padding:6px;display:flex;position:absolute;left:50%;overflow-x:auto;transform:translate(-50%)}.work-lightbox__thumb-btn{flex:0 0 var(--lightbox-thumb);width:var(--lightbox-thumb);height:var(--lightbox-thumb);background:var(--surface-lightbox-thumb);color:var(--text-on-dark);opacity:.65;cursor:pointer;border:2px solid #0000;border-radius:4px;padding:0;transition:border-color .2s,opacity .2s;overflow:hidden}.work-lightbox__thumb-btn img{object-fit:cover;width:100%;height:100%;display:block}.work-lightbox__thumb-btn:hover{border-color:var(--border-lightbox-control-hover);opacity:1}.work-lightbox__thumb-btn.is-active{border-color:var(--text-on-dark);opacity:1}.work-lightbox__status{z-index:3;background:var(--surface-lightbox-status);text-align:center;pointer-events:none;border-radius:8px;max-width:calc(100% - 32px);margin:0;padding:10px 16px;font-size:13px;position:absolute;top:72px;left:50%;transform:translate(-50%)}@media (width<=768px){.work-lightbox{--lightbox-thumb:48px}.work-lightbox__viewport{left:12px;right:12px}.work-lightbox__toolbar p{font-size:12px}}@media (width<=480px){.work-lightbox{--lightbox-thumb:44px}.work-lightbox__toolbar{gap:6px}.work-lightbox__toolbar>div{gap:4px}.work-lightbox__toolbar [data-lightbox-zoom],.work-lightbox__toolbar a{padding-inline:10px}}@media (prefers-reduced-motion:reduce){.work-lightbox *,.work-lightbox::backdrop{transition:none!important}}
