/* Replace assets/scaffold-background.png with your own image, or change this URL. */
:root{--background-image:url("assets/scaffold-background.png");--background-darkness:.15;--surface:#080808;--text:#ffffff;--accent:#d9272e;--accent-text:#ff6267;--line:#383838;--body-font:Arial,Helvetica,sans-serif;--display-font:Impact,"Arial Narrow","Helvetica Neue",sans-serif;--mono:"Courier New",monospace;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:190px}body{margin:0;background:#191b1b;color:var(--text);font-family:var(--body-font);font-size:16px;line-height:1.5}button,a,input{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer;border:0;border-radius:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button:disabled{cursor:default}a{color:inherit}button{color:inherit}button:hover{filter:brightness(.92)}.backdrop{position:fixed;inset:0;z-index:-1;background-image:linear-gradient(rgb(0 0 0 / var(--background-darkness)),rgb(0 0 0 / var(--background-darkness))),var(--background-image);background-size:cover;background-position:center 38%;filter:grayscale(1)}.topbar{height:66px;background:#080808;color:#ffffff;display:flex;align-items:center;gap:28px;padding:0 32px;border-bottom:1px solid var(--line)}.wordmark{display:block;width:90px;aspect-ratio:3;flex-shrink:0;overflow:hidden}.wordmark img,.title-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.edition,.label,.eyebrow,.demo-status,.order,.feed-footer,.sample-note{font-family:var(--mono);font-size:12px;letter-spacing:.06em}.edition{color:#b5b5b5}.topbar button{margin-left:auto;background:transparent;color:inherit;font-size:14px;text-decoration:underline;text-underline-offset:4px}.layout{display:grid;grid-template-columns:minmax(270px,1fr) minmax(0,850px);max-width:1600px;margin:auto;gap:5vw;padding:42px 38px 0}.identity{position:sticky;top:35px;align-self:start;min-height:calc(100svh - 145px);display:flex;flex-direction:column;justify-content:space-between;color:white;padding:12px 0 30px}.inverse{background:var(--surface);color:var(--text);padding:5px 8px;display:inline-block;font-weight:bold;letter-spacing:.025em}.identity h1{width:100%;max-width:480px;aspect-ratio:3;margin:27px 0 25px;overflow:hidden;line-height:0}.identity-bottom{margin-top:65px}.vertical-rule{display:block;width:42px;height:5px;background:#f1f1eb}.identity-bottom p{font-size:14px}.identity-bottom p span{font-size:12px;color:#deded8}main{min-width:0;background:var(--surface);box-shadow:0 0 0 1px #ffffff22}.feed-heading{padding:28px 30px 24px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-top:6px solid var(--accent)}.eyebrow{margin:0 0 8px;font-weight:bold;font-size:12px}.feed-heading h2{font-size:clamp(27px,3vw,42px);letter-spacing:-.06em;line-height:1.08;margin:0;font-weight:700}.accent{color:var(--accent-text)}.demo-status{display:flex;gap:7px;align-items:center;white-space:nowrap;font-size:11px;padding-top:4px}.status-dot{width:7px;height:7px;background:var(--accent);display:inline-block}.controls{position:sticky;top:0;z-index:5;background:var(--surface);box-shadow:0 1px 0 var(--line)}.groups{padding:0 26px 17px;display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line)}.groups button{padding:8px 10px;background:transparent;border:1px solid #686868;font-size:14px;line-height:1.2;text-align:left}.groups button[aria-pressed=true]{color:white;background:var(--accent);border-color:var(--accent)}.groups button:first-child[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}.character-row{padding:13px 30px;display:flex;gap:16px;align-items:baseline;min-height:58px}.character-row>.label{font-size:11px;color:#b5b5b5}.characters{display:flex;flex-wrap:wrap;gap:6px 15px}.characters button{padding:3px 0;background:none;font-size:14px}.characters button[aria-pressed=true]{color:white;text-decoration-color:var(--accent-text);text-decoration:underline;text-underline-offset:5px;font-weight:bold}.character-hint{font-size:14px;color:#b5b5b5}.feed-toolbar{padding:19px 30px 0;display:flex;justify-content:space-between;gap:12px;align-items:center}.feed-toolbar>div{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.feed-toolbar .label{font-weight:bold}.order{color:#b5b5b5;letter-spacing:0}.feed-toolbar button{font-size:13px;background:none;text-decoration:underline;text-underline-offset:3px;padding:4px 0;white-space:nowrap}.sample-note{font-size:11px;color:#b5b5b5;letter-spacing:0;margin:8px 30px 20px}.arrival-wrap{position:sticky;z-index:6;top:160px;text-align:center;height:0}#arrivals{background:var(--accent);color:white;padding:10px 18px;font-size:14px;box-shadow:0 3px 10px #0003;transform:translateY(-6px)}[hidden]{display:none!important}.message{border-top:1px solid var(--line);margin:0 30px;padding:24px 0 27px;scroll-margin-top:180px}.message-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.message-meta-left{display:flex;gap:10px;align-items:center}.avatar{width:30px;height:30px;display:grid;place-items:center;background:#111111;color:white;border:1px solid #686868;font-family:var(--mono);font-size:12px;flex-shrink:0}.author{font-size:16px;font-weight:bold;text-decoration:none;background:transparent;padding:0;text-align:left}.author:hover{text-decoration:underline}.group-name{display:block;font-family:var(--mono);font-size:11px;color:#b5b5b5;line-height:1.3}.time{font-family:var(--mono);font-size:11px;color:#b5b5b5;white-space:nowrap}.recipient-line{font-family:var(--mono);font-size:12px;color:#b5b5b5;margin-bottom:8px}.recipient{font:inherit;background:none;padding:0;text-decoration:underline;text-underline-offset:3px;color:var(--text)}.message-body{font-size:18px;line-height:1.58;letter-spacing:-.015em;margin:0;overflow-wrap:anywhere}.message-actions{margin-top:14px;display:flex;gap:17px}.message-actions button{font-family:var(--mono);font-size:11px;background:none;padding:0;text-decoration:underline;text-underline-offset:3px;color:#b5b5b5}.message.narrator{background:#111111;color:#ffffff;margin:0;padding:25px 30px;border-top:0;border-bottom:4px solid var(--accent)}.narrator .avatar{background:#111111;color:white;border-color:var(--accent)}.narrator .group-name,.narrator .time{color:#b5b5b5}.narrator .message-body{font-size:17px;color:#ffffff}.narrator h3{font-size:26px;line-height:1.14;letter-spacing:-.04em;margin:0 0 13px}.narrator .author{font-family:var(--mono);font-size:12px;letter-spacing:.06em}.history-end{text-align:center;padding:22px 30px 12px;border-top:1px solid var(--line)}#load-more{background:transparent;border:1px solid #686868;padding:10px 18px;font-size:14px}#history-status{font-family:var(--mono);font-size:12px;color:#b5b5b5;min-height:18px}.feed-footer{padding:20px 30px;display:flex;justify-content:space-between;gap:20px;background:#080808;color:#bdbdbd;letter-spacing:0;font-size:11px}.empty{padding:30px;font-size:16px}.skip-link{position:fixed;top:-100px;left:10px;background:white;color:#080808;padding:12px;z-index:100}.skip-link:focus{top:10px}dialog{width:min(520px,calc(100% - 32px));padding:28px;border:0;border-top:6px solid var(--accent);background:var(--surface);color:var(--text);max-height:90svh;overflow:auto}dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-heading button{font-size:28px;line-height:1;background:none;padding:5px}.dialog-heading .label{font-weight:bold}dialog h2{font-size:36px;line-height:1.1;letter-spacing:-.045em;margin:24px 0 16px}dialog p{font-size:16px;line-height:1.6}.dialog-note{border-top:1px solid var(--line);padding-top:15px;color:#b5b5b5}.primary{background:var(--accent);color:white;padding:12px 18px;display:inline-block;cursor:pointer;margin-top:6px;font-size:16px}.character-group{font-family:var(--mono);color:var(--accent-text);font-size:14px!important}.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}
@media(min-width:1500px){.layout{gap:90px}}
@media(max-width:1100px){.layout{gap:28px;padding:30px 24px 0;grid-template-columns:250px minmax(0,1fr)}.feed-heading{display:block}.demo-status{margin-top:14px}.feed-heading,.message.narrator{padding-left:24px;padding-right:24px}.groups{padding-left:20px;padding-right:20px}.character-row,.feed-toolbar{padding-left:24px;padding-right:24px}.message{margin-left:24px;margin-right:24px}.sample-note{margin-left:24px;margin-right:24px}}
@media(max-width:760px){html{scroll-padding-top:180px}.topbar{height:55px;padding:0 18px;gap:18px}.edition{font-size:10px}.topbar button{font-size:12px}.layout{display:block;padding:0 12px}.identity{position:relative;top:0;min-height:0;padding:28px 10px 25px;display:block}.identity h1{max-width:360px;margin:22px 0}.inverse{font-size:10px}.identity-bottom{display:none}.identity-bottom p,.vertical-rule{display:none}.feed-heading{padding:21px 20px;display:flex}.feed-heading h2{font-size:30px}.eyebrow{font-size:10px}.demo-status{font-size:10px;margin:0}.groups{padding:0 16px 14px;gap:5px}.groups button{font-size:12px;padding:8px}.character-row{padding:12px 20px;gap:12px;align-items:flex-start}.characters{gap:5px 12px}.characters button,.character-hint{font-size:13px}.feed-toolbar{padding:16px 20px 0}.feed-toolbar>div{gap:7px}.feed-toolbar .label{font-size:11px}.order{font-size:11px}.sample-note{margin:10px 20px 17px;line-height:1.4}.message{margin:0 20px;padding:22px 0}.message-body{font-size:17px}.message.narrator{padding:23px 20px}.narrator h3{font-size:24px}.time{font-size:10px}.group-name{font-size:10px}.feed-footer{padding:18px 20px;flex-wrap:wrap}.arrival-wrap{top:185px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.identity-bottom .archive-label{font-family:var(--mono);font-size:12px;font-weight:bold;letter-spacing:.06em}

@font-face{font-family:"Morris Roman";src:url("assets/MorrisRomanBlack.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
.feed-heading h2{font-family:"Morris Roman",Georgia,serif;font-weight:400;letter-spacing:normal}
