/* RATING LAB — terminal / lab readout system */
:root{
  --bg:#05070a; --surface:#0b0f12; --surface2:#10151a;
  --ink:#d7f5df; --ink-dim:#6b8b76; --line:#1a2620; --line-bright:#2d4436;
  --accent:#39ff88; --warn:#ffb238; --fail:#ff5f56;
  --mono:'JetBrains Mono', ui-monospace, Menlo, Consolas, monospace;
  --radius:2px; --maxw:1180px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--bg);color:var(--ink);font-family:var(--mono);line-height:1.65;font-size:15px;-webkit-font-smoothing:antialiased;}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:2;opacity:.035;
  background:repeating-linear-gradient(0deg,#fff 0 1px,transparent 1px 3px);}
a{color:inherit;text-decoration:none;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;position:relative;z-index:1;}

/* top status bar */
.statusbar{border-bottom:1px solid var(--line);font-size:11.5px;color:var(--ink-dim);padding:7px 0;}
.statusbar .wrap{display:flex;justify-content:space-between;}
.statusbar .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:6px;box-shadow:0 0 6px var(--accent);}

/* header */
header{border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(5,7,10,.9);backdrop-filter:blur(8px);z-index:40;}
header .wrap{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;}
.logo{font-size:14px;letter-spacing:.02em;}
.logo b{color:var(--accent);}
nav{display:flex;gap:24px;font-size:13px;color:var(--ink-dim);}
nav a:hover{color:var(--ink);}

/* terminal window hero */
.termwin{border:1px solid var(--line-bright);border-radius:6px;background:var(--surface);margin:48px 0;overflow:hidden;box-shadow:0 40px 80px -30px rgba(57,255,136,.08);}
.termbar{background:var(--surface2);padding:10px 14px;display:flex;gap:7px;border-bottom:1px solid var(--line);}
.termbar span{width:10px;height:10px;border-radius:50%;display:block;}
.termbar span:nth-child(1){background:#ff5f56;} .termbar span:nth-child(2){background:#ffbd2e;} .termbar span:nth-child(3){background:#27c93f;}
.termbody{padding:36px 40px 44px;}
.termbody .prompt{color:var(--accent);}
.termbody h1{font-size:clamp(1.6rem,3.6vw,2.5rem);font-weight:500;line-height:1.25;margin:14px 0 18px;max-width:22ch;}
.termbody .lede{color:var(--ink-dim);max-width:60ch;margin-bottom:28px;font-size:14.5px;}
.cursor{display:inline-block;width:9px;height:1.1em;background:var(--accent);vertical-align:middle;animation:blink 1s steps(2) infinite;}
@keyframes blink{50%{opacity:0;}}
.btnrow{display:flex;gap:14px;flex-wrap:wrap;}
.btn{border:1px solid var(--line-bright);padding:11px 18px;border-radius:2px;font-size:13px;display:inline-flex;gap:8px;align-items:center;}
.btn-p{background:var(--accent);color:#02150a;border-color:var(--accent);font-weight:700;}
.btn-g:hover{border-color:var(--accent);}

/* tldr box */
.tldr{border:1px solid var(--line-bright);background:var(--surface);padding:20px 24px;margin:32px 0;border-radius:2px;}
.tldr-label{font-size:11px;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px;}
.tldr-body{font-size:13.5px;color:var(--ink);}
.tldr-body ul{margin:8px 0 0 18px;}
.tldr-body li{margin-bottom:6px;color:var(--ink-dim);}

/* sections */
section{padding:52px 0;border-bottom:1px solid var(--line);}
.sechead{margin-bottom:28px;}
.sechead .tag{font-size:11px;color:var(--accent);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;}
.sechead h2{font-size:1.5rem;font-weight:500;}

/* data table */
table{width:100%;border-collapse:collapse;font-size:13px;}
th,td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);}
th{color:var(--ink-dim);font-weight:500;text-transform:uppercase;font-size:10.5px;letter-spacing:.06em;}
tr:hover td{background:var(--surface);}
.ok{color:var(--accent);} .no{color:var(--fail);} .mid{color:var(--warn);}

/* article grid */
.readout-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);}
.rd-card{background:var(--bg);padding:22px 24px;transition:background .15s;}
.rd-card:hover{background:var(--surface);}
.rd-card .n{color:var(--ink-dim);font-size:11px;margin-bottom:10px;}
.rd-card h3{font-size:15px;font-weight:600;margin-bottom:8px;line-height:1.4;}
.rd-card p{color:var(--ink-dim);font-size:12.5px;}

/* article page */
.article-header{padding:56px 0 32px;border-bottom:1px solid var(--line);}
.article-header .kicker{font-size:11px;color:var(--accent);text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px;}
.article-header h1{font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.3;max-width:26ch;margin-bottom:14px;font-weight:500;}
.meta-row{font-size:12px;color:var(--ink-dim);display:flex;gap:16px;}
.prose{max-width:70ch;padding:40px 0;font-size:14.5px;}
.prose h2{font-size:1.2rem;margin:34px 0 14px;font-weight:600;color:var(--ink);}
.prose p{margin-bottom:16px;color:#b9d4c0;}
.prose ul,.prose ol{margin:0 0 16px 20px;color:#b9d4c0;}
.prose li{margin-bottom:6px;}
.callout{border-left:2px solid var(--accent);background:var(--surface);padding:14px 18px;margin:22px 0;font-size:12.5px;color:var(--ink-dim);}
.callout b{color:var(--ink);}

footer{padding:44px 0 32px;font-size:12px;color:var(--ink-dim);}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;}
.fcol h4{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-dim);margin-bottom:10px;}
.fcol a{display:block;color:var(--ink-dim);margin-bottom:7px;}
.fcol a:hover{color:var(--accent);}
.fbottom{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);}

@media(max-width:800px){.readout-grid{grid-template-columns:1fr;} nav{display:none;} .termbody{padding:26px 22px 30px;}}

/* In-text links must look like links, not plain text */
.prose a, .related-cocoon a, .tldr-body a, .callout a {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.prose a:hover, .related-cocoon a:hover, .tldr-body a:hover, .callout a:hover {
  opacity: 0.8;
}
