@import"https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--color-bg: oklch(98% .005 90);--color-surface: oklch(100% 0 0);--color-text: oklch(20% .01 90);--color-muted: oklch(50% .01 90);--color-border: oklch(90% .005 90);--color-recommend: oklch(55% .16 145);--color-watch: oklch(65% .13 70);--color-link: var(--color-text);--font-serif: "PingFang SC", "Source Han Serif SC", "Noto Serif SC", "Noto Serif CJK SC", "Songti SC", Georgia, serif;--font-mono: "SF Mono", "JetBrains Mono", Menlo, Consolas, ui-monospace, monospace;--grid-unit: 8px;--content-max: 680px;--type-h1-size: clamp(40px, 6vw, 56px);--type-h1-weight: 700;--type-h1-leading: 1.25;--type-h2-size: 28px;--type-h2-weight: 700;--type-h2-leading: 1.25;--type-h3-size: 22px;--type-h3-weight: 700;--type-h3-leading: 1.25;--type-body-size: 18px;--type-body-leading: 1.8;--type-body-weight: 400;--type-mono-size: 14px;--type-mono-small: 13px;--motion-fast: .15s;--motion-ease: ease;--radius-md: 10px;--radius-sm: 6px;--shadow-sm: 0 1px 2px oklch(20% .01 90 / .04), 0 4px 12px oklch(20% .01 90 / .04)}:root[data-theme=dark]{--color-bg: oklch(15% .005 250);--color-surface: oklch(18% .005 250);--color-text: oklch(92% .005 90);--color-muted: oklch(60% .01 90);--color-border: oklch(28% .005 250);--color-recommend: oklch(70% .16 145);--color-watch: oklch(75% .13 70);--shadow-sm: 0 1px 2px oklch(0% 0 0 / .25), 0 4px 12px oklch(0% 0 0 / .25)}*{box-sizing:border-box}html{color-scheme:light dark}body,.card,.card__foot,.deploy-surface,.deploy-surface li,.nav,.footer,.nav__brand img,.theme-toggle{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,filter .2s ease}body.local-font{--font-serif: "LXGW WenKai", "PingFang SC", "Source Han Serif SC", "Noto Serif SC", "Noto Serif CJK SC", "Songti SC", Georgia, serif}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-serif);font-size:var(--type-body-size);line-height:var(--type-body-leading);text-wrap:pretty}main{max-width:var(--content-max);margin-inline:auto;padding-inline:clamp(16px,4vw,24px);padding-block:0 48px}h1{font-size:var(--type-h1-size);font-weight:var(--type-h1-weight);line-height:var(--type-h1-leading);margin:0 0 24px}h2{font-size:var(--type-h2-size);font-weight:var(--type-h2-weight);line-height:var(--type-h2-leading);margin:48px 0 16px}h3{font-size:var(--type-h3-size);font-weight:var(--type-h3-weight);line-height:var(--type-h3-leading);margin:24px 0 16px}p{margin:0 0 1.5em}code,.mono{font-family:var(--font-mono);font-size:var(--type-mono-size)}.muted{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--type-mono-small)}a{color:var(--color-link);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:text-decoration-thickness var(--motion-fast) var(--motion-ease),color .2s ease}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{transition:0ms!important}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:18px 20px;margin-bottom:14px}.card--detail{padding:22px 24px}.card__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.card__head-text{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.card__avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--color-border)}.card--standalone .card__avatar,.card--detail .card__avatar{width:36px;height:36px}.card__head a{text-decoration:none}.card__head a:hover h3,.card__head a:hover h1{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.card__head h3{font-family:var(--font-serif);font-size:22px;font-weight:700;line-height:1.25;margin:0;color:var(--color-text)}.card__head h1{font-family:var(--font-serif);font-size:clamp(28px,4vw,36px);font-weight:700;line-height:1.2;margin:0;color:var(--color-text);letter-spacing:-.005em}.card__tagline{font-family:var(--font-serif);font-size:16px;line-height:1.55;color:var(--color-text);margin:6px 0 0}.card:has(.card__avatar) .card__tagline{padding-left:38px}.card--standalone:has(.card__avatar) .card__tagline,.card--detail:has(.card__avatar) .card__tagline{padding-left:46px}.card__callouts{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:6px}.card:has(.card__avatar) .card__callouts{padding-left:38px}.card--standalone:has(.card__avatar) .card__callouts,.card--detail:has(.card__avatar) .card__callouts{padding-left:46px}.callout{font-family:var(--font-mono);font-size:11px;line-height:1;padding:4px 8px;border:1px solid var(--color-border);border-radius:3px;color:var(--color-muted);letter-spacing:.02em;background:transparent}.callout--platform{color:var(--color-recommend);border-color:var(--color-recommend)}.card__deploy{margin:14px 0 0}.card__deploy>dt{font-family:var(--font-mono);font-size:12px;color:var(--color-muted);margin-bottom:8px}.card__deploy>dd{margin:0}.deploy-surface{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.deploy-surface ul{list-style:none;padding:0;margin:0}.deploy-surface li{padding:11px 14px;border-bottom:1px solid oklch(94% .005 90);font-family:var(--font-mono);font-size:13px;line-height:1.55;color:var(--color-text);word-break:break-all;display:flex;align-items:baseline;gap:10px}.deploy-surface li:last-child{border-bottom:0}.method-tag{flex-shrink:0;font-family:var(--font-mono);font-size:10px;color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;min-width:28px}.deploy-line__text{min-width:0;flex:1}.deploy-line--cmd{cursor:copy;transition:background-color .15s ease}.deploy-line--cmd:hover{background:#f3f2ee}[data-theme=dark] .deploy-line--cmd:hover{background:#191b1d}.deploy-line__hint{flex-shrink:0;margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--color-muted);letter-spacing:.04em;opacity:0;transition:opacity .15s ease}.deploy-line--cmd:hover .deploy-line__hint,.deploy-line--cmd.is-copied .deploy-line__hint{opacity:1}.deploy-line--cmd.is-copied .deploy-line__hint{color:var(--color-recommend)}.deploy-line--url a{color:var(--color-text);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;word-break:break-all}.deploy-line--url a:hover{text-decoration-thickness:2px}[data-theme=dark] .deploy-surface li{border-bottom-color:#1d1f22}.card__meta{margin:14px 0 0;display:grid;row-gap:6px}.card__meta>div{display:grid;grid-template-columns:4em 1fr;gap:12px;align-items:baseline}.card__meta dt{margin:0;font-family:var(--font-mono);font-size:12px;color:var(--color-muted);line-height:1.5}.card__meta dd{margin:0;font-family:var(--font-serif);font-size:15px;line-height:1.55;color:var(--color-text)}.card__foot{margin-top:14px;padding-top:12px;border-top:1px solid oklch(94% .005 90);font-family:var(--font-mono);font-size:13px}[data-theme=dark] .card__foot{border-top-color:#1d1f22}.card__foot a{color:var(--color-text);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.card__foot a:hover{text-decoration-thickness:2px}.verdict{font-family:var(--font-mono);font-size:13px;font-weight:500;display:inline-flex;align-items:center;gap:6px;line-height:1;white-space:nowrap;flex-shrink:0}.verdict:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.verdict--recommend{color:var(--color-recommend)}.verdict--recommend:before{background:var(--color-recommend)}.verdict--watch{color:var(--color-watch)}.verdict--watch:before{background:var(--color-watch)}.nav{border-bottom:1px solid var(--color-border);padding:24px 4px 14px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:32px;row-gap:2px;align-items:end;margin-bottom:24px}.nav__brand{display:inline-block;text-decoration:none;line-height:0;grid-column:1;grid-row:1;justify-self:start}.nav__brand img{display:block;height:28px;width:auto}[data-theme=dark] .nav__brand img{filter:invert(1)}.nav__strap{font-family:var(--font-mono);font-size:11px;color:var(--color-muted);letter-spacing:.04em;grid-column:1;grid-row:2;margin-top:4px}.nav__items{grid-column:2;grid-row:1;display:flex;gap:18px;align-items:baseline;flex-wrap:wrap}.nav__items a{font-family:var(--font-mono);font-size:13px;color:var(--color-text);text-decoration:none;padding-bottom:2px;border-bottom:1px solid transparent;white-space:nowrap;transition:border-color var(--motion-fast) var(--motion-ease),color .2s ease}.nav__items a:hover{border-bottom-color:var(--color-muted)}.nav__items a[aria-current=page]{border-bottom:2px solid var(--color-text);padding-bottom:1px;font-weight:500}.theme-toggle{appearance:none;background:none;margin:0;padding:0 0 2px;font-family:var(--font-mono);font-size:13px;line-height:1;color:var(--color-text);cursor:pointer;vertical-align:baseline;border:none;border-bottom:1px solid transparent;transition:border-color var(--motion-fast) var(--motion-ease),color .2s ease}.theme-toggle:hover{border-bottom-color:var(--color-muted)}.theme-toggle:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.footer{border-top:1px solid var(--color-border);padding:22px 4px 20px;margin-top:64px;display:grid;grid-template-columns:auto auto;justify-content:space-between;column-gap:32px;row-gap:10px;align-items:baseline;font-family:var(--font-mono);font-size:14px;color:var(--color-muted)}.footer__links a{color:var(--color-text);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.footer__links a:hover{text-decoration-thickness:2px}.footer__sep{color:var(--color-border);margin:0 4px}.footer__legend{justify-self:end;display:flex;gap:14px;align-items:center}.legend-item{display:inline-flex;align-items:center;gap:6px;line-height:1}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.legend-rec{color:var(--color-recommend)}.legend-rec .legend-dot{background:var(--color-recommend)}.legend-wat{color:var(--color-watch)}.legend-wat .legend-dot{background:var(--color-watch)}.footer__note{grid-column:1 / -1;margin-top:8px;padding-top:12px;border-top:1px dashed var(--color-border);font-size:12px;color:var(--color-muted);letter-spacing:.02em}.issue-block{border-top:1px solid var(--color-border);padding:8px 0;margin-top:32px}.issue-block:first-of-type{margin-top:24px}.issue-block__head{display:flex;justify-content:flex-end;margin-bottom:14px}.issue-block__label{font-family:var(--font-mono);font-size:12px;color:var(--color-muted);letter-spacing:.04em}.issue-block__label a{color:var(--color-muted);text-decoration:none}.issue-block__label a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.issue-block .card:last-child{margin-bottom:0}.index-more{margin-top:32px;text-align:center;font-family:var(--font-mono)}.card-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:baseline;padding-block:10px;border-bottom:1px solid var(--color-border);text-decoration:none;color:inherit}.card-row:hover .card-row__title{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.card-row__title{font-family:var(--font-serif);font-size:17px;color:var(--color-text)}.card-row__tagline{color:var(--color-muted);font-family:var(--font-mono);font-size:12px}body.screenshot{width:750px;--color-bg: oklch(98% .005 90);--color-surface: oklch(100% 0 0);--color-text: oklch(20% .01 90);--color-muted: oklch(50% .01 90);--color-border: oklch(90% .005 90);--color-recommend: oklch(55% .16 145);--color-watch: oklch(65% .13 70);--shadow-sm: 0 1px 2px oklch(20% .01 90 / .04), 0 4px 12px oklch(20% .01 90 / .04);background:var(--color-bg);color:var(--color-text)}body.screenshot main{padding:32px;max-width:none}body.screenshot .nav,body.screenshot .footer,body.screenshot .card__foot{display:none}body.screenshot .screenshot-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:24px;line-height:0}body.screenshot .screenshot-header img{display:block;height:26px;width:auto}body.screenshot .screenshot-header__brand{justify-self:start}body.screenshot .screenshot-header__source{height:22px;opacity:.85;justify-self:end}body.screenshot .screenshot-header__date{justify-self:center;font-family:var(--font-mono);font-size:14px;color:var(--color-muted);letter-spacing:.04em;line-height:1}@media(max-width:640px){main{padding-inline:16px}.nav{grid-template-columns:1fr;grid-template-rows:auto auto auto;row-gap:8px;padding-top:16px;margin-bottom:16px}.nav__brand{grid-column:1;grid-row:1}.nav__strap{grid-column:1;grid-row:2;margin-top:0}.nav__items{grid-column:1;grid-row:3;gap:14px 16px;row-gap:8px}.nav__brand img{height:24px}.card{padding:14px 16px}.card--standalone,.card--detail{padding:18px}.card__head h3{font-size:19px}.card__head h1{font-size:clamp(22px,6vw,28px)}.card__tagline{font-size:15px}.card:has(.card__avatar) .card__tagline{padding-left:0}.card:has(.card__avatar) .card__callouts{padding-left:0}.card__meta>div{grid-template-columns:3.5em 1fr;gap:10px}.card__meta dd{font-size:14px}.deploy-surface li{padding:9px 12px;font-size:12px;gap:8px}.method-tag{min-width:24px}.deploy-line__hint{font-size:10px}.issue-block{margin-top:24px}.issue-block__label{font-size:11px}.footer{row-gap:12px;font-size:13px}.footer__note{font-size:11px}}
