/* Agent Branches — ported from the Claude Design reference (Agent-Git-Lab.dc.html).
   One content column (1180px inside 24px gutters) for header, main, signup and footer.
   Tokens: paper, ink, cobalt, annotation orange, graphite, hairline. No gradients, no shadows, radius 0. */
:root{
  --paper:#FCFCF8;--ink:#1C2027;--blue:#2455ED;--orange:#EF7134;--muted:#656A73;--line:#DADCD9;--body:#33343A;--deck:#4D525B;--fail-tint:#FDF1E6;--hover:#F1F3FC;
  --serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--mono:ui-monospace,Menlo,Consolas,monospace;
  --col:1180px;--gutter:24px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{margin:0;padding:0;background:var(--paper);color:var(--ink)}
body{font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}
img{height:auto;display:block}
a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--ink)}
::selection{background:var(--orange);color:var(--ink)}
a:focus-visible,summary:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #C85018;outline-offset:3px}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;margin:0}
p{margin:0}
.mono{font-family:var(--mono)}
.muted{color:var(--muted)}
.ink{color:var(--ink)}

/* Paper grain: fixed, light, never interactive */
.grain{position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.07;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .09 0 0 0 0 .09 0 0 0 0 .1 0 0 0 1.2 -.35'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.frame{container-type:inline-size;min-height:100vh;background:var(--paper)}
.skip{position:absolute;left:16px;top:-120px;z-index:60;background:var(--paper);color:var(--ink);padding:10px 14px;border:1px solid var(--ink)}
.skip:focus{top:12px}

/* Column: header, main, signup wrapper and footer share x-edges */
.site-header,.page,.column,.site-footer{width:100%;max-width:calc(var(--col) + 2*var(--gutter));margin-left:auto;margin-right:auto;padding-left:var(--gutter);padding-right:var(--gutter)}


/* Header */
.site-header{padding-top:28px}
.header-top{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--ink);padding-bottom:18px}
.header-brand{display:flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none;min-width:0}
.header-brand:hover{color:var(--ink)}
.header-logo{display:flex;width:44px;height:44px;flex:none}
.header-title{font-family:var(--serif);font-size:30px;font-weight:500;letter-spacing:-.015em;line-height:1;white-space:nowrap}
.site-nav{display:flex;flex-wrap:wrap;gap:8px 22px;padding:12px 0;border-bottom:1px solid var(--line)}
.site-nav a{font-size:14px;font-weight:500;line-height:16px;padding:4px 0;border-bottom:1px solid transparent;color:var(--muted);text-decoration:none;min-height:26px}
.site-nav a:hover{color:var(--ink)}
.site-nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--ink)}

/* Main frames */
.page{padding-top:40px;display:flex;flex-direction:column;gap:40px}
.page-home{padding-top:32px;gap:72px}
.page-project{padding-top:32px;gap:36px}
.narrow{width:100%;max-width:980px;margin:0 auto;display:flex;flex-direction:column;gap:36px}

/* Shared type */
.page-intro{display:flex;flex-direction:column;gap:14px;max-width:720px}
.page-intro h1,.proj-title h1{font-size:clamp(34px,5cqi,56px);line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.intro-deck{font-size:18px;line-height:1.6;color:var(--body)}
.mono-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-family:var(--mono);font-size:12px;line-height:1.5;color:var(--muted)}
.mono-meta .ink{color:var(--ink)}
.badge{font-family:var(--mono);font-size:12px;line-height:1.4;letter-spacing:.06em;border:1px solid var(--line);background:var(--hover);color:var(--blue);padding:2px 6px;white-space:nowrap;flex:none}
.status-line{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:500;line-height:1.4;color:var(--ink)}
.status-line svg{flex:none}
.read-more{align-self:flex-start;font-weight:600;font-size:15px;line-height:1.4;color:var(--blue);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;padding:2px 0}
.read-more-sm{display:inline-flex;align-items:center;min-height:24px;font-size:14px;font-weight:600;line-height:1.4;color:var(--blue);text-decoration:none}
.read-more:hover,.read-more-sm:hover{color:var(--ink)}
.src,.src-row{font-family:var(--mono);font-size:12px;line-height:1.5;overflow-wrap:anywhere;word-break:break-word}

/* Home: hero */
.hero{display:flex;flex-direction:column;gap:28px}
.hero-figure{margin:0;display:flex;flex-direction:column;gap:8px}
.hero-figure img{height:min(36vh,340px);width:auto;max-width:100%;object-fit:contain;display:block;background:var(--paper)}
.hero-figure figcaption{font-family:var(--mono);font-size:12px;line-height:1.5;letter-spacing:.04em;color:var(--muted)}
.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:40px 56px;align-items:start}
.feature{display:flex;flex-direction:column;gap:16px;max-width:680px;min-width:0}
.feature h1{font-size:clamp(34px,5.4cqi,60px);line-height:1.04;letter-spacing:-.02em;text-wrap:balance}
.feature h1 a{color:var(--ink);text-decoration:none}
.feature h1 a:hover{color:var(--blue)}
.feature-deck{font-size:19px;line-height:1.55;color:var(--body);text-wrap:pretty}
.feature-byline{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:14px;line-height:1.4;color:var(--muted)}
.chip{font-family:var(--mono);font-size:12px;border:1px solid var(--ink);padding:2px 6px;color:var(--ink)}

/* Status panel: one label column for every row (subgrid sized to the widest number) */
.honest{border:1px solid var(--ink);padding:22px;display:flex;flex-direction:column;gap:14px;background:var(--paper);min-width:0}
.honest-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;align-items:baseline}
.honest-head h2{font-size:24px;font-weight:500;line-height:1.2}
.honest-rows{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:14px;row-gap:12px}
.honest-row{grid-column:1/-1;display:grid;grid-template-columns:subgrid;border-top:1px solid var(--line);padding-top:12px;align-items:baseline}
.honest-n{font-family:var(--serif);font-size:34px;line-height:1;font-weight:500;white-space:nowrap}
.honest-n small{font-family:var(--sans);font-size:15px;font-weight:500;margin-left:2px;letter-spacing:0}
.honest-detail{display:flex;flex-direction:column;gap:2px;min-width:0}
.honest-label{font-size:15px;font-weight:500;line-height:1.35}
.honest-note{font-size:13px;color:var(--muted);line-height:1.45}
.honest-link{font-size:14px;font-weight:600;color:var(--blue);text-decoration:none;align-self:flex-start;min-height:24px;display:inline-flex;align-items:center}

/* Section heads */
.section-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--ink);padding-bottom:10px}
.section-head h2{font-size:34px;letter-spacing:-.01em;line-height:1.15}
.section-head p{font-size:14px;color:var(--muted);line-height:1.5}
.hyp-section{display:flex;flex-direction:column;gap:24px}

/* Hypothesis cards: open cards, 2px ink top rule, nothing else */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:36px 32px}
.hyp-card{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--ink);padding-top:16px;color:var(--ink);text-decoration:none;min-width:0}
a.hyp-card:hover{background:var(--hover);color:var(--ink)}
.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.card-mark{display:flex;width:56px;height:56px;flex:none}
.card-mark svg{width:56px;height:56px;overflow:visible}
.card-head{display:flex;flex-direction:column;gap:4px}
.card-name{font-family:var(--serif);font-size:26px;line-height:1.1;font-weight:500;letter-spacing:-.01em;text-wrap:balance}
.card-short{font-size:15px;line-height:1.55;color:var(--body);text-wrap:pretty}
.card-next{font-size:13px;line-height:1.5;color:var(--muted)}

/* Measured pain */
.pain{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:40px;border-top:1px solid var(--ink);padding-top:28px}
.pain-copy{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.pain-copy h2{font-size:clamp(28px,3.6cqi,40px);line-height:1.1;letter-spacing:-.01em;text-wrap:balance}
.pain-copy p{font-size:17px;line-height:1.6;color:var(--body);max-width:560px}
.pain-copy .read-more-sm{margin-top:-4px}
.pain-data{display:flex;flex-direction:column;gap:18px;min-width:0}
.pain-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}
.pain-stat{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--ink);padding-top:10px}
.pain-n{font-family:var(--serif);font-size:clamp(34px,4.6cqi,52px);font-weight:500;line-height:1;letter-spacing:-.02em}
.pain-l{font-size:13px;color:var(--muted);line-height:1.4}
.pain-chart{display:flex;flex-direction:column;gap:6px}
.pain-bar{display:flex;height:34px;border:1px solid var(--ink);background:var(--paper)}
.pain-fill{width:62.1%;background:var(--blue)}
.pain-caps{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;font-size:13px;line-height:1.5}
.pain-unknown{margin-top:8px}

/* Home: field notes and library */
.home-bottom{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:40px;border-top:1px solid var(--ink);padding-top:28px}
.home-col{display:flex;flex-direction:column;gap:12px;min-width:0}
.col-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.col-head h2{font-size:28px;line-height:1.2}
.col-sub{font-size:13px;color:var(--muted);line-height:1.5}
.row-link{border-top:1px solid var(--line);padding-top:10px;color:var(--ink);text-decoration:none;min-width:0}
.row-link:hover{color:var(--blue)}
.field-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px}
.field-time{font-family:var(--mono);font-size:12px;color:var(--muted);line-height:1.8}
.field-title{font-size:15px;line-height:1.45}
.lib-row{display:flex;flex-direction:column;gap:2px}
.lib-title{font-size:15px;font-weight:500;line-height:1.4}
.lib-path{font-family:var(--mono);font-size:12px;color:var(--blue);line-height:1.5;overflow-wrap:anywhere;word-break:break-word}

/* Project landing */
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--muted);align-items:center}
.crumbs a{text-decoration:none;min-height:24px;display:inline-flex;align-items:center}
.proj-head{display:grid;grid-template-columns:minmax(0,1fr);gap:32px}
.proj-title{display:flex;flex-direction:column;gap:16px;min-width:0}
.proj-status{display:flex;gap:10px;align-items:center;font-size:15px;font-weight:500;line-height:1.4;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:10px 0}
.proj-status svg{flex:none}
.proj-figure{margin:0 auto;display:flex;flex-direction:column;gap:6px;min-width:0;width:100%;max-width:640px}
.proj-figure img{width:100%;aspect-ratio:2/1}
.proj-figure figcaption{font-family:var(--mono);font-size:12px;line-height:1.5;letter-spacing:.04em;color:var(--muted)}
.proj-body{width:100%;max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:40px;padding-bottom:16px}
.proj-sec{display:flex;flex-direction:column;gap:12px}
.proj-problem{font-family:var(--serif);font-size:26px;line-height:1.35;text-wrap:pretty}
.proj-who{font-size:15px;line-height:1.55;color:var(--muted)}
.proj-lead{font-size:18px;line-height:1.65;text-wrap:pretty}
.ev-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;border-top:1px solid var(--line);padding-top:12px}
.ev-stance{display:flex;gap:6px;align-items:center;align-self:start;font-family:var(--mono);font-size:12px;letter-spacing:.04em;line-height:1.9}
.ev-stance svg{flex:none}
.ev-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.ev-text{font-size:16px;line-height:1.6;text-wrap:pretty}
.test-box{border:1px solid var(--ink);padding:22px;gap:14px}
.test-box>p{font-size:17px;line-height:1.6}
.test-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px;border-top:1px solid var(--line);padding-top:12px}
.test-grid>div{display:flex;flex-direction:column;gap:2px;font-size:15px;line-height:1.5}
.test-strong{font-weight:500}
.src-row{font-size:13px;border-top:1px solid var(--line);padding-top:8px}
.prev-next{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid var(--ink);padding-top:16px}
.prev-next a{font-size:15px;font-weight:500;text-decoration:none;min-height:24px}

/* Checklist */
.legend{display:flex;flex-wrap:wrap;gap:10px 22px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:12px 0}
.legend-item{display:flex;gap:8px;align-items:center;font-size:13px;line-height:1.4}
.legend-label{font-weight:500}
.legend-count{color:var(--muted)}
.gate-group{display:flex;flex-direction:column}
.gate-group h2{font-size:26px;line-height:1.2;margin:0 0 8px}
.gate{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:6px 24px;border-top:1px solid var(--line);padding:14px 0}
.gate.is-failed{background:var(--fail-tint)}
.gate-main{display:flex;gap:12px;align-items:flex-start;min-width:0}
.gate-mark{display:flex;padding-top:3px;flex:none}
.gate-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.gate-title{font-size:16px;font-weight:500;line-height:1.4;text-wrap:pretty}
.gate-note{font-size:14px;color:var(--muted);line-height:1.5}
.gate-meta{display:flex;flex-direction:column;gap:3px;min-width:0}
.gate-state{font-family:var(--mono);font-size:12px;letter-spacing:.04em;font-weight:500;line-height:1.5}
.closing-note{font-size:14px;color:var(--muted);line-height:1.6;border-top:1px solid var(--ink);padding-top:14px}

/* Field notes timeline */
.tl-legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--muted)}
.tl-key{display:inline-flex;gap:8px;align-items:center}
.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.tl-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px}
.tl-rail{display:flex;flex-direction:column;align-items:center}
.tl-top{width:3px;height:16px;background:var(--ink);flex:none}
.tl-item.is-first .tl-top{background:transparent}
.tl-line{width:3px;flex:1;background:var(--ink)}
.tl-dot{width:14px;height:14px;border-radius:50%;border:1px solid var(--ink);background:var(--paper);flex:none;display:inline-block}
.tl-failed .tl-dot,.tl-dot.k-failed{background:var(--orange)}
.tl-decision .tl-dot,.tl-dot.k-decision{background:var(--blue)}
.tl-milestone .tl-dot,.tl-result .tl-dot,.tl-dot.k-milestone,.tl-dot.k-result{background:var(--ink)}
.tl-body{display:flex;flex-direction:column;gap:4px;padding:10px 0 22px;color:var(--ink);text-decoration:none;min-width:0}
.tl-body:hover .tl-title{color:var(--blue)}
.tl-when{font-size:13px;line-height:1.4;color:var(--muted)}
.tl-title{font-family:var(--serif);font-size:21px;line-height:1.3}
.tl-summary{font-size:14px;line-height:1.55;color:var(--body)}
.tl-path{font-family:var(--mono);font-size:12px;color:var(--blue);line-height:1.5;overflow-wrap:anywhere;word-break:break-word}

/* Field notes pagination */
.tl-pagination{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;border-top:1px solid var(--ink);padding:20px 0 12px;margin-top:16px;font-family:var(--sans);font-size:14px}
.tl-pagination-pages{display:flex;gap:6px;align-items:center}
.tl-pagination-link{color:var(--blue);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;min-height:24px}
.tl-pagination-link:hover{text-decoration:underline}
.tl-pagination-page{color:var(--ink);text-decoration:none;padding:5px 12px;border:1px solid var(--line);border-radius:2px;min-width:32px;text-align:center;font-weight:500}
.tl-pagination-page:hover{border-color:var(--ink);background:var(--hover)}
.tl-pagination-page.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink);font-weight:600}
.tl-pagination-disabled{color:var(--muted);opacity:.45;display:inline-flex;align-items:center;min-height:24px}
.tl-pagination-summary{color:var(--muted);font-size:13px;line-height:1.5;padding-bottom:16px}

/* Research library */
.lib-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px 40px;border-top:1px solid var(--ink);padding-top:14px}
.lib-head{display:flex;flex-direction:column;gap:6px}
.lib-head h2{font-size:26px;line-height:1.2}
.lib-head p{font-size:13px;color:var(--muted);line-height:1.5}
.lib-rows{display:flex;flex-direction:column;grid-column:span 2;min-width:0}
.lib-item{display:flex;flex-direction:column;gap:2px;border-bottom:1px solid var(--line);padding:10px 0;color:var(--ink);text-decoration:none;min-width:0}
.lib-item:hover .lib-title{color:var(--blue)}
.lib-item .lib-title{font-size:16px}
.lib-more summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--blue);padding:8px 0;min-height:24px;border-bottom:1px solid var(--line)}
@media(max-width:620px){.lib-rows{grid-column:auto}}

/* Daily journal index */
.journal-list{display:flex;flex-direction:column}
.journal-row{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--ink);padding:16px 0 28px;color:var(--ink);text-decoration:none}
.journal-title{font-family:var(--serif);font-size:clamp(26px,3.4cqi,34px);line-height:1.15;letter-spacing:-.01em;text-wrap:balance}
.journal-row:hover .journal-title{color:var(--blue)}
.journal-summary{font-size:15px;line-height:1.55;color:var(--body);max-width:680px}

/* Articles: daily report, field note, about, privacy */
.article{width:100%;max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:22px}
.article-head{display:flex;flex-direction:column;gap:22px}
.article-head h1{font-size:clamp(34px,5.4cqi,60px);line-height:1.06;letter-spacing:-.03em;text-wrap:balance;overflow-wrap:break-word}
.article-deck{font-size:20px;line-height:1.55;color:var(--deck);text-wrap:pretty}
.byline-block{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:12px 0}
.byline-person{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:14px;line-height:1.4}
.byline-logo{display:flex;width:28px;height:28px;flex:none}
.byline-name{font-weight:600}
.prose{max-width:640px;font-family:var(--serif);font-size:19px;line-height:1.8;overflow-wrap:break-word;display:flex;flex-direction:column;gap:20px}
.prose>*{margin:0}
.prose h2{font-size:32px;line-height:1.15;letter-spacing:-.02em;margin-top:16px}
.prose h3{font-size:24px;line-height:1.25;margin-top:8px}
.prose h4,.prose h5,.prose h6{font-size:20px;line-height:1.3}
.prose ul,.prose ol{padding-left:24px;display:flex;flex-direction:column;gap:8px}
.prose li{margin:0}
.prose figure{margin:8px 0;display:flex;flex-direction:column;gap:8px}
.prose figure img{width:100%}
.prose picture{display:block}
.prose figcaption{font-family:var(--sans);font-size:13px;line-height:1.5;color:var(--muted)}
.prose blockquote{background:var(--hover);padding:14px 20px;color:var(--deck)}
.prose code{font-family:var(--mono);font-size:.8em;background:#F0F0EB;padding:1px 4px;overflow-wrap:anywhere}
.prose pre{font-family:var(--mono);font-size:13px;line-height:1.6;background:#F0F0EB;padding:16px;overflow:auto;max-width:100%;white-space:pre}
.prose pre code{background:none;padding:0;font-size:inherit}
.prose a{overflow-wrap:anywhere}
.prose hr{border:0;border-top:1px solid var(--line);width:100%}
.table-scroll{max-width:100%;overflow-x:auto}
table{border-collapse:collapse;font-family:var(--sans);font-size:13px;line-height:1.5;width:100%}
th,td{padding:8px 10px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
th{border-top:1px solid var(--ink);font-weight:600}
.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:12px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:16px 0;font-family:var(--sans)}
.stat-strip>div{display:flex;flex-direction:column;gap:2px}
.stat-n{font-family:var(--serif);font-size:40px;line-height:1;color:var(--blue)}
.stat-l{font-size:13px;color:var(--muted);line-height:1.4}
.article-sources{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--ink);padding-top:16px;margin-top:12px;font-size:13px}
.source-line{font-size:13px;color:var(--muted);line-height:1.6;margin-top:6px}
.back-link{font-size:15px;font-weight:500;border-top:1px solid var(--ink);padding-top:16px}
.back-link a{text-decoration:none}

/* Signup (kept form; restyled to the reference language) */
.signup-wrap{margin-top:72px}
.email-signup{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:24px 56px;border-top:1px solid var(--ink);padding-top:28px}
.signup-copy{display:flex;flex-direction:column;gap:12px}
.signup-copy h2{font-size:clamp(28px,3cqi,34px);line-height:1.15;letter-spacing:-.01em}
.signup-copy>p{font-size:15px;line-height:1.55;color:var(--body);max-width:520px}
.signup-form{display:flex;flex-direction:column;gap:10px;min-width:0}
.signup-form>label{font-size:14px;font-weight:500}
.signup-controls{display:flex;flex-wrap:wrap;gap:10px}
.signup-form input[type=email]{min-width:0;border:1px solid var(--ink);background:var(--paper);color:var(--ink);padding:11px 12px;font:16px var(--sans);border-radius:0}
.button{background:#1E293B;color:#fff;border:1px solid var(--ink);padding:11px 18px;font:600 15px var(--sans);cursor:pointer;display:inline-flex;gap:12px;align-items:center;border-radius:0;white-space:nowrap}
.button:hover{background:var(--ink);border-color:var(--ink)}
.button:disabled,.signup-form input[type=email]:disabled{opacity:.6;cursor:not-allowed}
.signup-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;padding:4px 0;min-height:24px;cursor:pointer}
.signup-consent input{margin:2px 0 0;width:20px;height:20px;flex:none;accent-color:var(--blue)}
.signup-detail{font-size:13px;line-height:1.6;color:var(--muted)}
.signup-setup-note{font-size:13px;line-height:1.6;color:var(--muted)}
.signup-status{padding:12px 14px;border:1px solid var(--line);background:var(--hover);font-size:14px;line-height:1.6}
.signup-status.is-error{border-color:var(--line);background:var(--fail-tint)}
.signup-form[aria-busy=true]{opacity:.85}
.dedicated-signup{margin-top:0}

/* Footer */
.site-footer{margin-top:80px;padding-top:24px;padding-bottom:48px}
.footer-inner{border-top:1px solid var(--ink);padding-top:14px}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px}
.footer-links a{min-height:24px;display:inline-flex;align-items:center}

/* Phones */
@media(max-width:412px){
  .honest-n{font-size:28px}
  .honest-n small{font-size:13px}
  .honest-rows{column-gap:12px}
  .gate{grid-template-columns:minmax(0,1fr)}
  .gate-meta{padding-left:28px}
}
@media(max-width:640px){
  .gate{grid-template-columns:minmax(0,1fr)}
  .gate-meta{padding-left:28px}
  .prose{font-size:18px}
}
.byline-person a{display:inline-flex;align-items:center;min-height:24px}
a.src{display:inline-flex;align-items:center;min-height:24px;align-self:flex-start;max-width:100%}
.back-link a{display:inline-flex;align-items:center;min-height:24px}
/* Arrow glyphs carry their own spacing so flex links never butt them against the label */
.arr{display:inline-block;margin-left:.35em}
.arr-l{display:inline-block;margin-right:.35em}
.button .arr{margin-left:0}
.prose .portrait-fig img{width:100%;max-width:440px}
.ev-stance{flex-direction:column;align-items:flex-start;gap:0}
.ev-label{display:flex;gap:6px;align-items:center}
.ev-when{font-size:12px;color:var(--muted);letter-spacing:.04em;line-height:1.5}
.ev-earlier{font-size:13px;line-height:1.5;color:var(--muted);border-top:1px solid var(--ink);padding-top:10px;margin-top:8px}

/* Phones: compact, composed homepage */
.only-phone{display:none}
@media(max-width:600px){
  .only-phone{display:inline}
  .page-home{gap:44px}
  .hyp-section{gap:6px}
  .section-head{border-bottom:0;padding-bottom:0}
  .card-grid{gap:0}
  .hyp-card{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;row-gap:6px;align-items:start;border-top:1px solid var(--ink);padding:14px 0 18px}
  .hyp-card:first-child{margin-top:10px}
  .card-top{display:contents}
  .card-mark,.card-mark svg{width:40px;height:40px}
  .card-mark{grid-column:1;grid-row:1}
  .hyp-card .badge{display:none}
  .card-head{grid-column:2;grid-row:1;gap:2px}
  .card-name{font-size:22px;line-height:1.15}
  .hyp-card .status-line,.card-short,.card-next{grid-column:2}
  .card-short{font-size:15px;line-height:1.5}
  .pain,.home-bottom{padding-top:20px;gap:28px}
  .pain-copy{gap:12px}
  .pain-data{gap:14px}
  .pain-stats{gap:14px 20px}
  .home-col{gap:10px}
  .signup-wrap{margin-top:44px}
  .email-signup{padding-top:20px}
  .site-footer{margin-top:36px;padding-top:0;padding-bottom:32px}
  .hero{gap:20px}
  .hero-figure img{height:min(26vh,210px)}
  .hero-grid{gap:32px}
  .honest{padding:18px;gap:12px}
  .honest-rows{row-gap:10px}
  .honest-row{padding-top:10px}
  .field-row{grid-template-columns:minmax(0,1fr);gap:2px}
  .field-time{line-height:1.5}
}

/* Plain headings and date lines that replace the old mono eyebrows */
.proj-h{font-size:22px;line-height:1.25;letter-spacing:-.01em}
.test-box .proj-h{font-size:20px}
.sources-h{font-size:20px;line-height:1.25}
.field-label{font-size:13px;color:var(--muted)}
.journal-date{font-size:13px;line-height:1.5;color:var(--muted)}
.proj-title .mono-meta{font-family:var(--sans);font-size:13px}
.proj-num{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--blue);font-weight:600;margin:0;line-height:1.5}

/* Telemetry & Task Tracker */
.epistemic-callout{border:1px solid var(--line);background:var(--fail-tint);padding:18px 22px;display:flex;flex-direction:column;gap:8px}
.callout-badge{font-family:var(--mono);font-size:11px;letter-spacing:.06em;font-weight:700;color:var(--orange)}
.callout-text{font-size:14px;line-height:1.55;color:var(--body)}
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.kpi-card{border:1px solid var(--line);background:var(--paper);padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.kpi-card.is-highlight{border-color:var(--line);background:var(--hover)}
.kpi-num{font-family:var(--serif);font-size:32px;font-weight:500;line-height:1.1;color:var(--ink)}
.kpi-label{font-size:14px;font-weight:600;color:var(--ink)}
.kpi-note{font-size:12px;color:var(--muted);line-height:1.4}
.telemetry-chart-section{display:flex;flex-direction:column;gap:18px;min-width:0;max-width:100%}
.chart-wrapper{border:1px solid var(--line);background:#FFFFFF;padding:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;min-width:0;max-width:100%}
.telemetry-chart-svg{width:100%;height:auto;min-width:0;display:block;max-width:100%}
.telemetry-table-section{display:flex;flex-direction:column;gap:18px;min-width:0;max-width:100%}
.table-responsive{width:100%;max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line)}
.telemetry-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.4;text-align:left;background:var(--paper)}
.telemetry-table th{background:#F4F5F0;padding:10px 12px;font-family:var(--sans);font-weight:600;border-bottom:1px solid var(--ink);color:var(--ink);white-space:nowrap}
.telemetry-table td{padding:8px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.telemetry-table tr:hover td{background:var(--hover)}
.col-time{font-family:var(--mono);font-size:12px;white-space:nowrap}
.sub-utc{font-size:11px;color:var(--muted)}
.prod-cell{display:flex;flex-direction:column;gap:2px}
.cell-work{font-weight:600;color:var(--blue)}
.cell-pres{font-size:11px;color:var(--muted)}
.cell-tok{font-family:var(--mono);font-size:11px;color:var(--orange);font-weight:600}
.col-tok{font-family:var(--mono);font-size:12px;font-weight:600;white-space:nowrap}
.row-unobserved td{background:#F9FAF7}
.cell-unobserved{color:var(--muted);font-style:italic;padding:12px}
.badge-unobserved{font-family:var(--mono);font-size:10px;padding:2px 5px;background:var(--line);color:var(--ink);font-weight:600;letter-spacing:.04em;margin-right:6px;font-style:normal}
.task-tracker-section{display:flex;flex-direction:column;gap:20px}
.tracker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:20px}
.tracker-card{border:1px solid var(--ink);background:var(--paper);padding:20px;display:flex;flex-direction:column;gap:12px}
.tracker-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:8px}
.tracker-prod-name{font-family:var(--serif);font-size:20px;font-weight:600;color:var(--ink)}
.status-badge{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.06em;padding:2px 6px}
.status-badge.is-active{background:#EAF0FD;color:var(--blue);border:1px solid var(--line)}
.status-badge.is-progress{background:var(--fail-tint);color:var(--orange);border:1px solid var(--line)}
.tracker-desc{font-size:14px;color:var(--body);line-height:1.45}
.tracker-meta{display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.4;border-top:1px solid var(--line);padding-top:10px}
.meta-row{display:grid;grid-template-columns:90px 1fr;gap:8px}
.meta-label{color:var(--muted);font-weight:500}
.meta-val{color:var(--ink)}
.tracker-sources{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}

/* History filters: product chips + half-open Berlin hour bounds */
.history-page{min-width:0;max-width:100%;overflow-x:clip}
.history-filters{display:flex;flex-direction:column;gap:12px;min-width:0;max-width:100%;border:1px solid var(--line);background:var(--paper);padding:14px 16px}
.history-chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.history-chip{font-family:var(--mono);font-size:12px;letter-spacing:.04em;border:1px solid var(--ink);background:var(--paper);color:var(--ink);padding:6px 10px;cursor:pointer;border-radius:0;line-height:1.2;min-height:32px}
.history-chip[aria-pressed="true"]{background:var(--blue);color:#fff;border-color:var(--ink)}
.history-chip:hover{background:var(--hover);color:var(--ink);border-color:var(--ink)}
.history-chip[aria-pressed="true"]:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.history-range{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;min-width:0}
.history-bound{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 160px}
.history-bound label{font-size:13px;font-weight:500;color:var(--ink)}
.history-bound select{max-width:100%;min-width:0;width:100%;border:1px solid var(--ink);background:var(--paper);color:var(--ink);padding:8px 10px;font:14px var(--sans);border-radius:0}
.history-bound-utc{font-family:var(--mono);font-size:11px;color:var(--muted);line-height:1.4}
.history-reset{font:600 14px var(--sans);background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:8px 14px;cursor:pointer;border-radius:0;min-height:36px;align-self:flex-end}
.history-reset:hover{background:var(--hover)}
.history-source,.history-noscript{font-size:13px;color:var(--muted);line-height:1.5;max-width:100%;overflow-wrap:anywhere}
.history-empty{border:1px solid var(--line);background:var(--fail-tint);padding:16px 18px;font-size:15px;line-height:1.5;color:var(--ink)}
.history-page [hidden]{display:none !important}
.kpi-grid,.telemetry-chart-section,.telemetry-table-section,.tracker-grid,.chart-wrapper,.table-responsive{min-width:0;max-width:100%}
.tracker-card{min-width:0}
.tracker-card-head{flex-wrap:wrap}
.meta-val{overflow-wrap:anywhere;word-break:break-word}

@media(max-width:640px){
  .history-filters{padding:12px}
  .history-range{flex-direction:column;align-items:stretch}
  .history-bound{flex:1 1 auto}
  .history-reset{align-self:stretch;width:100%}
  .kpi-num{font-size:28px}
  .kpi-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .section-head h2{font-size:26px}
  .meta-row{grid-template-columns:minmax(0,1fr);gap:2px}
  .telemetry-table th,.telemetry-table td{padding:8px}
}

