:root { color-scheme: light dark; font-family: system-ui, sans-serif; line-height: 1.5; }
* { box-sizing: border-box; }
body { margin: 0; color: light-dark(#19232d, #e8eef4); background: light-dark(#f5f7fa, #10151b); }
main { max-width: 42rem; margin: auto; padding: 2.5rem 1.25rem; }
a { color: light-dark(#125abd, #9bc2ff); text-underline-offset: .2em; }
h1 { font-size: clamp(2.2rem, 8vw, 3.3rem); line-height: 1.1; letter-spacing: -.04em; margin: 1.25rem 0; }
h1 span { color: light-dark(#586675, #acb9c8); }
h2 { margin: 0 0 .5rem; font-size: 1.1rem; }
p { margin: .5rem 0 1rem; }
.intro { color: light-dark(#586675, #acb9c8); }
.channel { border: 1px solid light-dark(#ced7e3, #405066); border-radius: 999px; font-size: .8rem; padding: .25rem .65rem; }
.versions { display: flex; flex-wrap: wrap; gap: .65rem; margin: 1.5rem 0; }
.version { text-decoration: none; border: 1px solid light-dark(#ced7e3, #405066); border-radius: .75rem; padding: .6rem .9rem; }
.version span { display: block; font-size: .75rem; color: light-dark(#586675, #acb9c8); }
.version strong { font-variant-numeric: tabular-nums; }
.source { padding: 1.25rem; border: 1px solid light-dark(#ced7e3, #405066); border-radius: 1rem; background: light-dark(#fff, #18212c); margin: 1.5rem 0 2rem; }
.source p { font-size: .9rem; }
label { display: block; font-size: .75rem; margin-bottom: .3rem; }
.source-control { display: flex; gap: .5rem; }
input { min-width: 0; width: 100%; font: inherit; font-size: .85rem; color: inherit; background: light-dark(#f5f7fa, #10151b); border: 1px solid light-dark(#ced7e3, #405066); border-radius: .5rem; padding: .75rem; }
button { border: 0; border-radius: .5rem; background: light-dark(#125abd, #9bc2ff); color: light-dark(#fff, #10151b); font: inherit; font-weight: 600; padding: .65rem 1rem; cursor: pointer; }
:focus-visible { outline: 3px solid light-dark(#125abd, #9bc2ff); outline-offset: 3px; }
.status { min-height: 1.3em; margin: .4rem 0 0 !important; color: light-dark(#586675, #acb9c8); }
ol { padding-left: 1.35rem; }
li { margin: .7rem 0; padding-left: .2rem; }
.update { font-size: .9rem; color: light-dark(#586675, #acb9c8); margin-top: 1.5rem; }
details { border-top: 1px solid light-dark(#ced7e3, #405066); padding-top: 1rem; margin-top: 2rem; font-size: .9rem; }
summary { cursor: pointer; font-weight: 600; padding-bottom: .75rem; }
nav { display: flex; flex-wrap: wrap; gap: .75rem 1rem; }
footer { color: light-dark(#586675, #acb9c8); font-size: .75rem; margin-top: 1.5rem; }
@media (max-width: 360px) { main { padding: 1.5rem 1rem; } .source { padding: 1rem; } button { padding: .65rem .75rem; } }
