:root{--color-canvas:oklch(100% 0 0);--color-ink:oklch(18% .02 260);--color-muted:oklch(46% .02 260);--color-surface:oklch(97.5% .004 92);--color-signal:oklch(72% .17 91);--color-signal-soft:oklch(96% .045 91);--color-signal-text:oklch(53% .14 79);--color-link:oklch(55% .22 258);--color-border:oklch(90% .01 260);--color-good:oklch(56% .15 150);--color-danger:oklch(56% .2 25);--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--text-caption:.75rem;--text-secondary:.875rem;--text-body:1rem;--text-subheading:1.25rem;--text-heading:1.75rem;--shadow-overlay:0 1rem 2.5rem oklch(18% .02 260/.12);--ease-out:cubic-bezier(.25, 1, .5, 1);--page-gutter:clamp(1rem, 3vw, 3rem);--page-max:96rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;text-rendering:optimizelegibility;font-family:Segoe UI,Microsoft YaHei,PingFang SC,Noto Sans SC,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-canvas);min-width:20rem;color:var(--color-ink);font-size:var(--text-body);margin:0;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{color:var(--color-link)}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit}:focus-visible{outline:.1875rem solid var(--color-link);outline-offset:.1875rem}::selection{background:var(--color-signal);color:var(--color-ink)}.page-shell{width:min(100%, var(--page-max));padding-inline:var(--page-gutter);margin-inline:auto}.skip-link{top:var(--space-md);left:var(--space-md);z-index:100;padding:var(--space-sm) var(--space-md);background:var(--color-ink);color:var(--color-canvas);transition:transform .15s var(--ease-out);position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:var(--color-muted);font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:700}.section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border);display:flex}.section-heading h2,.section-heading h1{font-size:var(--text-heading);letter-spacing:-.04em;margin:0;line-height:1.2}.section-heading h2,.section-heading h1,h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.section-heading a{color:var(--color-link);font-size:var(--text-secondary);font-weight:700}.text-actions{gap:var(--space-lg);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.text-actions a{color:var(--color-link);font-weight:700}.text-actions a:after{content:" →"}.site-header{z-index:20;border-bottom:1px solid var(--color-border);background:var(--color-canvas);position:relative}.header-main{align-items:stretch;gap:var(--space-lg);min-height:4rem;display:flex}.brand{align-items:center;gap:var(--space-sm);min-height:4rem;margin-right:auto;display:flex}.brand:hover{color:var(--color-ink)}.brand-mark{background:linear-gradient(var(--color-ink), var(--color-ink)) left top / .625rem .1875rem no-repeat, linear-gradient(var(--color-ink), var(--color-ink)) left top / .1875rem .625rem no-repeat, linear-gradient(var(--color-ink), var(--color-ink)) right top / .625rem .1875rem no-repeat, linear-gradient(var(--color-ink), var(--color-ink)) right top / .1875rem .625rem no-repeat, linear-gradient(var(--color-ink), var(--color-ink)) left bottom / .625rem .1875rem no-repeat, linear-gradient(var(--color-ink), var(--color-ink)) left bottom / .1875rem .625rem no-repeat, linear-gradient(var(--color-ink), var(--color-ink)) right bottom / .625rem .1875rem no-repeat, linear-gradient(var(--color-ink), var(--color-ink)) right bottom / .1875rem .625rem no-repeat;flex:none;width:2rem;height:2rem;position:relative}.brand-mark span{background:var(--color-signal);position:absolute;inset:.6875rem}.brand-copy{gap:var(--space-2xs);line-height:1;display:grid}.brand-copy strong{letter-spacing:-.02em;font-size:1.125rem;font-weight:800}.brand-copy small{color:var(--color-muted);font-size:var(--text-caption);white-space:nowrap}.desktop-nav{align-items:stretch;display:flex}.desktop-nav a{min-width:3.5rem;min-height:4rem;padding-inline:var(--space-sm);font-size:var(--text-secondary);place-items:center;font-weight:700;display:grid;position:relative}.desktop-nav a:after{content:"";right:var(--space-sm);bottom:0;left:var(--space-sm);background:var(--color-link);height:.1875rem;transition:transform .18s var(--ease-out);position:absolute;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a.active:after{transform:scaleX(1)}.desktop-nav a.active{color:var(--color-link)}.rss-link{align-items:center;gap:var(--space-xs);min-height:2.75rem;padding-inline:var(--space-sm);font-size:var(--text-secondary);align-self:center;font-weight:700;display:flex}.rss-link svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:1.125rem}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;place-content:center;gap:.3125rem;width:2.75rem;height:2.75rem;list-style:none;display:grid}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{width:1.25rem;height:.125rem;transition:transform .18s var(--ease-out), opacity .15s var(--ease-out);background:currentColor}.mobile-menu nav{top:calc(100% + var(--space-xs));min-width:13rem;padding:var(--space-xs);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-canvas);box-shadow:var(--shadow-overlay);position:absolute;right:0}.mobile-menu nav a{min-height:2.75rem;padding-inline:var(--space-md);align-items:center;font-weight:700;display:flex}.mobile-menu nav a.active{color:var(--color-link);background:var(--color-surface)}.mobile-menu[open] summary span:first-child{transform:translateY(.4375rem)rotate(45deg)}.mobile-menu[open] summary span:nth-child(2){opacity:0}.mobile-menu[open] summary span:nth-child(3){transform:translateY(-.4375rem)rotate(-45deg)}.radar-strip{border-bottom:1px solid var(--color-border);background:var(--color-surface)}.radar-strip-inner{align-items:center;gap:var(--space-lg);min-height:3rem;font-size:var(--text-secondary);display:flex}.radar-live{align-items:center;gap:var(--space-xs);color:var(--color-signal-text);white-space:nowrap;display:flex}.radar-live>span{border:.125rem solid var(--color-signal);width:.625rem;height:.625rem;box-shadow:0 0 0 .25rem var(--color-signal-soft);border-radius:50%}.radar-strip dl{align-items:center;gap:var(--space-lg);color:var(--color-muted);margin:0;display:flex}.radar-strip dl div{gap:var(--space-xs);display:flex}.radar-strip dt,.radar-strip dd{margin:0}.radar-strip dd{color:var(--color-ink);font-variant-numeric:tabular-nums}.signal-meter{align-items:flex-end;gap:var(--space-2xs);color:var(--color-muted);margin-left:auto;display:flex}.signal-meter i{background:var(--color-signal);border-radius:.125rem .125rem 0 0;width:.25rem}.signal-meter i:first-of-type{height:.375rem}.signal-meter i:nth-of-type(2){height:.625rem}.signal-meter i:nth-of-type(3){height:.875rem}.signal-meter i:nth-of-type(4){height:1.125rem}.signal-meter i:nth-of-type(5){height:1.375rem}.signal-meter strong{margin-left:var(--space-xs);color:var(--color-ink)}.news-row{align-items:start;gap:var(--space-md);min-height:4.5rem;padding-block:var(--space-md);border-bottom:1px solid var(--color-border);grid-template-columns:6.5rem minmax(0,1fr) 10rem 2.75rem;display:grid}.news-row>time{color:var(--color-muted);font-size:var(--text-secondary);font-variant-numeric:tabular-nums}.news-row-copy{gap:var(--space-xs);display:grid}.news-row-copy>a{font-size:var(--text-subheading);letter-spacing:-.02em;overflow-wrap:anywhere;font-weight:700;line-height:1.4}.news-row-copy p{max-width:68ch;color:var(--color-muted);font-size:var(--text-secondary);margin:0}.news-source{gap:var(--space-2xs);color:var(--color-muted);font-size:var(--text-secondary);display:grid}.news-source b{color:var(--color-ink);font-size:var(--text-caption)}.source-jump{width:2.75rem;height:2.75rem;color:var(--color-muted);place-items:center;display:grid}.source-jump svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1rem}.news-row.compact{min-height:3rem;padding-block:var(--space-sm);grid-template-columns:5.5rem minmax(0,1fr)}.news-row.compact .news-row-copy>a{font-size:var(--text-secondary)}.news-row.compact .news-source,.news-row.compact .source-jump{display:none}.empty-state{justify-content:center;align-items:center;gap:var(--space-3xl);min-height:24rem;padding:var(--space-3xl) var(--space-xl);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(10rem,18rem) minmax(0,34rem);display:grid}.empty-state h2{margin:var(--space-xs) 0 var(--space-md);letter-spacing:-.04em;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.15}.empty-state p:not(.eyebrow){max-width:55ch;color:var(--color-muted);margin:0}.empty-radar{aspect-ratio:1;border:1px solid var(--color-border);background:radial-gradient(circle, transparent 31%, var(--color-border) 31.5%, transparent 32%, transparent 48%, var(--color-border) 48.5%, transparent 49%, transparent 66%, var(--color-border) 66.5%, transparent 67%);border-radius:50%;position:relative;overflow:hidden}.empty-radar:before,.empty-radar:after{content:"";background:var(--color-border);position:absolute}.empty-radar:before{height:1px;top:50%;left:0;right:0}.empty-radar:after{width:1px;top:0;bottom:0;left:50%}.empty-radar span{background:var(--color-signal);clip-path:polygon(0 0,86% 50%,0 100%);opacity:.8;transform-origin:0 0;width:50%;height:50%;animation:6s linear both radar-sweep;position:absolute;top:50%;left:50%}.source-table{font-size:var(--text-secondary)}.source-table-head,.source-table-row{gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);grid-template-columns:minmax(11rem,1.3fr) minmax(9rem,1fr) 6rem 6rem;align-items:center;display:grid}.source-table-head{color:var(--color-muted);font-size:var(--text-caption);font-weight:700}.source-table-row{min-height:3rem}.source-table-row strong{font-weight:700}.source-table-row>span:not(.health){color:var(--color-muted)}.health{align-items:center;gap:var(--space-xs);display:flex}.health i{background:var(--color-muted);border-radius:50%;width:.5rem;height:.5rem}.health.ready{color:var(--color-ink)}.health.ready i{background:var(--color-good)}.site-footer{margin-top:var(--space-4xl);border-top:1px solid var(--color-border);padding-block:var(--space-xl) max(var(--space-xl), env(safe-area-inset-bottom))}.footer-inner{gap:var(--space-xl);font-size:var(--text-secondary);grid-template-columns:1.2fr 1fr auto;align-items:start;display:grid}.footer-inner p{margin:var(--space-xs) 0 0;color:var(--color-muted)}.footer-inner nav{gap:var(--space-lg);flex-wrap:wrap;display:flex}.footer-inner nav a{align-items:center;min-height:2.75rem;font-weight:700;display:inline-flex}.footer-inner small{color:var(--color-muted);white-space:nowrap}@keyframes radar-sweep{to{transform:rotate(1turn)}}@media (width<=72rem){.desktop-nav{display:none}.mobile-menu{align-items:center;display:grid}.rss-link{margin-left:auto}.news-row{grid-template-columns:5.5rem minmax(0,1fr) 8rem 2.75rem}}@media (width<=48rem){.brand-copy small,.rss-link span,.signal-meter,.radar-strip dl div:nth-child(2){display:none}.header-main{gap:var(--space-xs)}.radar-strip-inner{gap:var(--space-md)}.radar-strip dl{margin-left:auto}.news-row{gap:var(--space-sm);grid-template-columns:4.75rem minmax(0,1fr) 2.75rem}.news-row-copy p{display:none}.news-row-copy>a{font-size:var(--text-body)}.news-source{align-items:center;gap:var(--space-xs);grid-column:2;display:flex}.source-jump{grid-area:1/3}.empty-state{gap:var(--space-xl);grid-template-columns:1fr;min-height:28rem;padding-inline:0}.empty-radar{width:min(60vw,14rem);margin-inline:auto}.source-table-head{display:none}.source-table-row{gap:var(--space-xs) var(--space-md);padding-block:var(--space-md);grid-template-columns:minmax(0,1fr) auto}.source-table-row>span:first-of-type{grid-column:1}.source-table-row>span:nth-of-type(2){grid-area:1/2}.source-table-row>span:nth-of-type(3){color:var(--color-muted);grid-column:1}.footer-inner{gap:var(--space-md);grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
