:root{--blue:#ccff00;--pink:#ff00b8;--acid:#ccff00;--ink:#090909;--paper:#f7f7f2;--line:#9d9d98;--mono:ui-monospace,'SFMono-Regular',Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--mono);font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}button,input{font:inherit}button{color:inherit}.skip{position:absolute;top:-100px}.skip:focus{top:8px;left:8px;background:var(--acid);z-index:50;padding:10px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--pink);outline-offset:4px}header{height:84px;padding:14px 2%;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;border-bottom:1px solid;position:relative;z-index:20;background:var(--paper)}.brand{display:flex;gap:15px;font-weight:800;font-size:36px;line-height:.8;letter-spacing:-.08em}.brand span{font-size:11px;line-height:1.35;letter-spacing:0;text-transform:uppercase;font-weight:400}nav{display:flex;gap:8px}nav a{border:1px solid;padding:7px 10px;text-transform:uppercase;font-size:12px}nav a:hover,nav a[aria-current]{background:var(--blue);color:#fff}.issue{font-size:11px;line-height:1.4;text-align:right;justify-self:end}main{padding:0 2%}footer{min-height:80px;padding:22px 2%;border-top:1px solid;display:flex;justify-content:space-between;gap:30px;font-size:11px;text-transform:uppercase}.field-page main{padding:0}.field-page footer{background:var(--ink);color:white}.field-intro{height:auto;min-height:380px;position:relative;overflow:hidden;border-bottom:1px solid;padding:20px 2%}.field-intro h1{font-size:clamp(68px,15vw,230px);line-height:.9;letter-spacing:-.105em;margin:3vh 0 0;font-weight:500;white-space:nowrap}.field-intro h1 span{display:block}.field-intro h1 span:last-child{margin-left:14vw;margin-top:0;color:var(--blue)}.field-intro p{position:static;text-align:right;margin:24px 0 36px;line-height:1.35;font-size:12px}.field-intro>span{position:absolute;right:3%;bottom:24px;font-size:12px}.field-tools,.index-filters{display:flex;gap:0;border-bottom:1px solid;overflow:auto;scrollbar-width:none}.field-tools{padding:0 2%;height:48px}.field-tools button,.index-filters button{border:0;border-right:1px solid;background:transparent;padding:0 16px;white-space:nowrap;font-size:11px;cursor:pointer}.field-tools button:first-child,.index-filters button:first-child{border-left:1px solid}.field-tools button:hover,.field-tools button.active,.index-filters button:hover,.index-filters button.active{background:var(--pink);color:#000}.field{height:115vh;min-height:850px;position:relative;overflow:hidden;background:var(--ink);color:white}.field::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:5vw 5vw}.field-centers span{position:absolute;font-size:10px;color:var(--acid);padding:4px;background:#090909;z-index:1}.center-publishing{left:17%;top:17%}.center-bodies{left:72%;top:14%}.center-technology{left:48%;top:43%}.center-ecologies{left:17%;top:70%}.center-politics{left:72%;top:69%}.field-node{position:absolute;left:var(--x);top:var(--y);width:160px;transform:translate(-50%,-50%);font-size:11px;line-height:1.45;padding:7px;background:var(--paper);color:var(--ink);border:1px solid white;z-index:3;transition:opacity .2s,transform .2s,background .2s,color .2s}.field-node>span{display:block;color:var(--blue);margin-bottom:4px}.field-node:hover,.field-node:focus{transform:translate(-50%,-50%) scale(1.16);background:var(--acid);color:var(--ink);z-index:6}.field-node.dim{opacity:.1}.field-node.related{background:var(--pink)}.field-lines{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.field-lines line{stroke:var(--pink);stroke-width:1.2;vector-effect:non-scaling-stroke}.field-note{position:absolute;right:2%;bottom:3%;width:min(390px,32vw);padding:16px;background:var(--blue);color:white;z-index:5}.field-note>span{font-size:10px}.field-note h2{font-size:25px;line-height:1.25;letter-spacing:-.04em;margin:22px 0 10px}.field-note p{font-size:12px;line-height:1.45}.field-note a{font-size:11px;display:inline-block;margin-top:15px;border-bottom:1px solid}.field-note a:hover{color:var(--acid)}.field-mobile{display:none}.page-head{padding:60px 0 45px;border-bottom:1px solid}.eyebrow{text-transform:uppercase;font-size:11px}.page-head h1{font-size:clamp(64px,10vw,150px);font-weight:500;line-height:.96;letter-spacing:-.085em;margin:52px 0 40px}.page-head>p:not(.eyebrow){max-width:650px;line-height:1.5}.search{display:block;font-size:11px;margin:50px 0 15px;max-width:760px}.search input{display:block;width:100%;border:0;border-bottom:2px solid;padding:14px 0;background:transparent;border-radius:0;font-size:22px;text-transform:uppercase}.page-head #count{font-size:11px}.index-filters{height:54px;position:sticky;top:0;background:var(--paper);z-index:9}.entry{display:grid;grid-template-columns:55px minmax(0,1fr) 190px 140px;gap:15px;border-top:1px solid var(--line);padding:20px 0;align-items:start}.search-row:first-child .entry,.year .entry:first-child{border-top:0}.entry-no{font-size:11px;color:#666;padding-top:4px}.entry h2{overflow-wrap:anywhere;font-size:clamp(20px,2.2vw,32px);font-weight:400;line-height:1.16;letter-spacing:-.035em;margin:0}.entry-theme,.entry-meta{font-size:10px;line-height:1.35;padding-top:5px}.entry-meta{text-align:right}.entry:hover h2{color:var(--blue)}.search-row[hidden]{display:none}.year{display:grid;grid-template-columns:22% 78%;border-top:1px solid;padding:30px 0 60px}.year>h2{font-size:clamp(48px,8vw,115px);font-weight:400;letter-spacing:-.08em;line-height:.8;margin:0;position:sticky;top:20px;align-self:start}.about-grid{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding:40px 0 80px}.prose{font-size:18px;line-height:1.72;overflow-wrap:anywhere}.prose p{margin:0 0 1.5em}.prose h1,.prose h2,.prose h3,.prose h4{font-size:1.2em;line-height:1.4;margin:2.4em 0 .8em;text-transform:uppercase}.prose a{text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:4px}.prose img{max-width:100%;height:auto;display:block;margin:35px auto}.prose figure{margin:35px 0}.prose figcaption{font-size:11px;line-height:1.5;color:#555}.prose blockquote{border-left:10px solid var(--blue);margin:2em -7vw;padding:5px 0 5px 7vw;font-size:1.25em}.prose iframe{max-width:100%}.prose pre{white-space:pre-wrap;font-size:14px}.prose table{display:block;overflow:auto;max-width:100%}.article-top{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;margin-top:28px;font-size:11px}.article-top>span{text-align:center}.languages{display:flex;gap:15px;justify-self:end}.languages>span{background:var(--blue);color:#fff;padding:2px 5px}.article-title{font-size:clamp(45px,7vw,110px);font-weight:500;line-height:1;letter-spacing:-.075em;max-width:1300px;margin:90px 0 50px;text-wrap:balance}.article-rule{border-top:1px solid;border-bottom:1px solid;display:flex;justify-content:space-between;padding:12px 0;font-size:10px}.article-body{max-width:760px;margin:70px auto 100px}.article-body>p:first-of-type::first-letter{font-size:5em;float:left;line-height:.75;color:var(--blue);margin:10px 12px 0 0}section.related{background:var(--pink);margin:0 -2.05%;padding:25px 2%;display:grid;grid-template-columns:1fr repeat(3,1.5fr);gap:22px}section.related p{font-size:10px;margin:0}section.related a{font-size:18px;line-height:1.4}section.related a:hover{text-decoration:underline;color:var(--ink)}.article-end{padding:28px 0 50px;display:flex;justify-content:space-between;font-size:11px}.article-end a{color:var(--blue)}[hidden]{display:none!important}@media(max-width:900px){header{grid-template-columns:1fr auto;height:auto;min-height:76px}.issue{display:none}nav{flex-wrap:wrap;justify-content:flex-end}.field-intro{height:auto}.field-node{width:130px;font-size:9px}.field-note{width:270px}.entry{grid-template-columns:40px minmax(0,1fr) 120px}.entry-theme{display:none}.year{grid-template-columns:1fr}.year>h2{position:static;margin-bottom:35px}section.related{grid-template-columns:1fr}section.related p{margin-bottom:10px}}@media(max-width:650px){main{padding:0 4%}.article-title{overflow-wrap:anywhere}body{font-size:14px}header{padding:12px 4%;grid-template-columns:auto 1fr}.brand{font-size:30px}.brand span{display:none}nav{gap:3px}nav a{font-size:9px;padding:6px}.field-intro{height:auto;min-height:310px;padding:20px 4%}.field-intro h1{font-size:17vw;line-height:.9;margin-top:7vh}.field-intro h1 span:last-child{margin-left:0}.field-intro p{top:20px;right:4%;font-size:9px}.field-intro>span{right:4%;font-size:9px}.field-tools{padding:0 4%;height:44px}.field{display:none}.field-mobile{display:block;padding:20px 4%}.field-mobile .entry{border-color:#777}.page-head{padding:38px 0}.page-head h1{font-size:17vw;margin:45px 0 35px}.index-filters{margin:0 -4.35%;padding-left:4%}.entry{grid-template-columns:29px minmax(0,1fr);gap:10px;padding:18px 0}.entry h2{font-size:21px}.entry-meta{grid-column:2;text-align:left;font-size:9px}.year{padding-bottom:40px}.year>h2{font-size:70px}.about-grid{grid-template-columns:1fr}.prose{font-size:16px;line-height:1.75}.article-top{grid-template-columns:1fr auto}.article-top>span{grid-column:1/3;grid-row:2;text-align:left}.article-title{font-size:12vw;margin:60px 0 35px}.article-body{margin:45px auto 70px}.prose blockquote{margin:2em 0;padding-left:20px}section.related{margin:0 -4.35%;padding:24px 4%}.article-end{align-items:flex-start;gap:20px}.article-end p{margin:0}footer{padding:22px 4%;flex-direction:column;gap:10px}}@media print{header,footer,.article-top,.article-end,section.related,.skip{display:none}main{padding:0}.article-title{font-size:36px}.article-body{margin:30px auto;font-size:11pt;max-width:none}.article-rule{font-size:9pt}}

/* Language selection remains visible at every viewport width. */
.site-languages{display:flex;gap:4px;justify-self:end;font-size:12px;line-height:1.5}.site-languages a{padding:5px 8px;border:1px solid}.site-languages a[aria-current]{background:var(--ink);color:var(--paper)}.language-notice{font-size:14px;line-height:1.5;padding:12px 0;border-bottom:1px solid var(--line)}
@media(max-width:900px){header{grid-template-columns:1fr auto;gap:12px}.site-languages{grid-column:2}}
@media(max-width:650px){header{grid-template-columns:auto 1fr auto;gap:8px;align-items:start}.site-languages{grid-column:3;font-size:12px}.site-languages a{padding:4px}nav{gap:4px}nav a{font-size:10px}.site-languages{gap:3px}}

/* Field cards must not inherit the article recommendations grid. */
.field-node{display:block;overflow-wrap:anywhere;word-break:normal;min-width:0;height:auto}.field-note{overflow-wrap:anywhere}.field-note h2{line-height:1.15}.brand{letter-spacing:0;line-height:1.35}
@media(max-width:650px){header{grid-template-columns:minmax(0,1fr) auto}.brand{display:none}header nav{justify-content:flex-start}.site-languages{grid-column:2}}

/* Local colour exploration: stable palette across page navigation. */
.palette-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;padding:10px 2%;border-bottom:1px solid;font-size:12px;background:var(--paper);color:var(--ink)}
.palette-controls label{display:flex;align-items:center;gap:8px}.palette-controls select,.palette-controls button{font:inherit;background:var(--paper);color:var(--ink);border:1px solid;padding:6px 8px;border-radius:0}.palette-controls button{cursor:pointer}.palette-controls button:hover{background:var(--pink)}.palette-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.field-node.related>span,.field-node:hover>span,.field-node:focus>span{color:var(--ink)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 5px var(--paper)}
@media(max-width:650px){.palette-controls{padding:8px 4%;font-size:12px}}

/* Fluorescent pairs use dark type on bright surfaces. */
.field-intro{background:var(--paper);color:var(--ink)}
.field-intro h1 span:last-child{display:block;background:transparent;color:var(--pink);padding:0}
nav a:hover,nav a[aria-current],.languages>span,.field-note{color:var(--ink)}
.field-note a:hover{color:var(--ink);text-decoration:underline}
a:hover,.entry:hover h2,.article-end a,.article-body>p:first-of-type::first-letter,.field-node>span{color:var(--ink)}
.entry:hover h2{text-decoration:underline;text-decoration-color:var(--pink);text-decoration-thickness:3px;text-underline-offset:4px}
.field-page footer a:hover{color:var(--blue)}

/* Readable text on the blue secondary surface. */
.field-tools button:hover,.field-tools button.active,.index-filters button:hover,.index-filters button.active,section.related,section.related a:hover,.field-node.related,.field-node.related>span,.palette-controls button:hover{color:var(--on-secondary,var(--ink))}
.field-node.related:hover,.field-node.related:focus,.field-node.related:hover>span,.field-node.related:focus>span{color:var(--ink)}

.image-text-head{padding:36px 0 24px;border-bottom:1px solid}.image-text-head h1{font-size:clamp(36px,6vw,80px);line-height:1;letter-spacing:-.06em;font-weight:500;margin:0 0 20px}.image-text-head p{max-width:760px}.image-text-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:32px;padding:28px 0 60px}.image-text-controls{display:flex;flex-direction:column;gap:20px;min-width:0}.image-text-controls label{display:flex;flex-direction:column;gap:7px;font-size:14px}.image-text-controls select,.image-text-controls input,.image-text-controls button{max-width:100%;min-width:0;font:inherit}.image-text-controls select,.image-text-controls button{padding:9px;border:1px solid;background:var(--paper);color:var(--ink)}.image-text-controls button:not(:disabled){cursor:pointer;background:var(--blue)}.image-text-controls button:disabled{opacity:.5}.image-text-controls .ascii-check{flex-direction:row;align-items:center}.image-text-controls p,.ascii-hint{font-size:13px;line-height:1.5}.ascii-stage{overflow:auto;max-height:75vh;min-height:240px;border:1px solid var(--line);background:#e8e8e4;display:grid;align-items:start}.ascii-stage>p{padding:40px 24px;text-align:center}.ascii-stage canvas{display:block;max-width:none}#ascii-sources summary{cursor:pointer;padding:14px 0}#ascii-citations{overflow-wrap:anywhere}#ascii-citations>div{padding:16px 0;border-top:1px solid var(--line)}#ascii-citations a{text-decoration:underline}#ascii-citations blockquote{margin:12px 0;font-size:14px;line-height:1.6}nav{flex-wrap:wrap}header{height:auto;min-height:84px}
@media(max-width:750px){.image-text-layout{grid-template-columns:1fr}.image-text-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.image-text-controls label:first-child,.image-text-controls label:nth-child(3),#ascii-status{grid-column:1/-1}.ascii-stage{max-height:65vh}}
.image-text-layout>div{min-width:0}.ascii-stage{width:100%;min-width:0}

.ascii-stage canvas{max-width:100%;height:auto}.ascii-stage canvas.actual-size{max-width:none}.ascii-zoom{display:block;margin-top:14px;font-size:14px}
.field-node{cursor:grab;touch-action:none;user-select:none}.field-node.dragging{cursor:grabbing;transition:none;transform:translate(-50%,-50%);z-index:10}
.ascii-stage canvas{cursor:grab;touch-action:none}.ascii-stage.panning canvas{cursor:grabbing}.ascii-stage:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

/* Keep the spatial archive on touch screens; pan the canvas instead of replacing it. */
.field-touch-hint{display:none}.field-viewport{min-width:0}.field-viewport:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}
@media(max-width:650px){
 .field-touch-hint{display:block;margin:0;padding:12px 4%;font-size:12px;line-height:1.5;border-bottom:1px solid}
 .field-viewport{width:100%;height:72svh;min-height:380px;overflow:auto;touch-action:pan-x pan-y;overscroll-behavior-x:contain;background:var(--ink)}
 .field-viewport .field{display:block;width:1100px;height:1100px;min-height:1100px;overflow:hidden}
 .field-mobile{display:none}
 .field-node{width:160px;font-size:12px}.field-centers span{font-size:12px}
 .field::before{background-size:55px 55px}.field-note{width:300px}
 .field-node:hover,.field-node:focus{transform:translate(-50%,-50%)}
}
/* Magnetic interactions retain the original spatial composition. */
.field-lines line{pointer-events:stroke;cursor:pointer;stroke-width:1.2}
.field-lines line:focus,.field-lines line.selected{stroke:var(--acid);stroke-width:3;outline:none}
.field-node.dragging{transform:translate(-50%,-50%)}
.field-note{max-height:65%;overflow:auto}
.field-note blockquote{margin:12px 0;font-size:12px;line-height:1.5}
.magnetic-connections{padding:12px 2%;font-size:11px}
.magnetic-connections summary{cursor:pointer}
.magnetic-connections button{display:block;width:100%;text-align:left;background:transparent;color:inherit;border:0;border-bottom:1px solid;padding:10px;font:inherit;cursor:pointer}
.magnetic-connections button[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.field-node{transition:none}}

.field-lines line.tension{stroke-dasharray:6 5}

/* Reasons are readable before opting into movement. */
.field-relation-guide{font-size:12px;line-height:1.6;margin:0;padding:12px 2%;border-bottom:1px solid}
.magnetic-connections[open]{max-height:40vh;overflow:auto}
.field-note button,.relation-inspector button{display:block;font:inherit;font-size:12px;text-align:left;padding:10px;margin:8px 0;border:1px solid;background:var(--paper);color:var(--ink);cursor:pointer;width:100%}
.field-note h3{font-size:12px;line-height:1.5}
.relation-inspector{position:fixed;right:18px;bottom:18px;width:min(420px,calc(100vw - 36px));max-height:75svh;overflow:auto;padding:20px;background:var(--paper);color:var(--ink);border:2px solid var(--ink);z-index:100;box-shadow:0 4px 24px #0005;font-size:13px;line-height:1.5}
.relation-inspector[hidden]{display:none}
.relation-inspector h2{font-size:20px;line-height:1.2;overflow-wrap:anywhere}
.relation-inspector blockquote{margin:12px 0;padding-left:12px;border-left:2px solid}
.relation-inspector a{text-decoration:underline}
.publication-app{padding:28px 0 60px;max-width:1100px;overflow-wrap:anywhere}.publication-nav,.publication-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.publication-app a{display:inline-block;text-decoration:underline;margin:8px 14px 8px 0}.publication-app button,.publication-app select,.publication-app input,.publication-app textarea{font:inherit;max-width:100%;border:1px solid var(--ink);background:var(--paper);color:var(--ink);padding:10px}.publication-app button{cursor:pointer;margin:8px 8px 8px 0}.publication-app button:hover{background:var(--blue)}.publication-app button:disabled{opacity:.5;cursor:not-allowed}.publication-app h2{font-size:clamp(24px,4vw,46px);line-height:1.15;letter-spacing:-.04em}.publication-app h3{font-size:20px;line-height:1.3}.publication-app p,.publication-app blockquote{line-height:1.65;max-width:80ch}.publication-app blockquote{margin:16px 0;padding:0 16px;border-left:3px solid}.relation-reading,.contribution{border-top:1px solid;padding:20px 0}.relation-reading summary{cursor:pointer;line-height:1.6}.contribution-form{display:grid;gap:18px;max-width:760px;padding:24px 0}.contribution-form label{display:grid;gap:8px;font-size:14px}.contribution-form textarea{min-height:160px;resize:vertical}.contribution-form label.consent{display:flex;align-items:flex-start;line-height:1.5}.participation-notice{padding:12px;border:1px solid;font-size:12px}.contribution-body{white-space:pre-wrap}.drift-history li{padding:8px}.publication-app :focus-visible{outline:3px solid var(--pink);outline-offset:3px}.publication-app ul{padding-left:22px}@media(max-width:650px){.publication-app{padding:20px 0}.publication-app select{width:100%}.publication-app ul ul{padding-left:12px}}

.publication-page .page-head h1{font-size:clamp(32px,7vw,96px);overflow-wrap:anywhere;line-height:1.05}

.annotation-tools{border:1px solid;padding:16px;margin:20px 0;font-size:13px;line-height:1.5;max-width:760px}.annotation-tools button,.annotation-selection{font:inherit;padding:10px 14px;background:var(--blue);color:var(--ink);border:1px solid;cursor:pointer}.annotation-selection{position:fixed;z-index:110;font-size:13px;box-shadow:0 3px 12px #0003}.annotation-selection[hidden]{display:none}.article-body p{position:relative}.annotation-paragraph{display:none;float:right;margin:0 0 6px 10px;width:36px;height:36px;border:1px solid;background:var(--blue);color:var(--ink);font:inherit;cursor:pointer;user-select:none}.annotation-paragraph::before{content:'+'}.annotation-mode .annotation-paragraph{display:block}.annotation-dialog{width:min(640px,calc(100vw - 24px));max-height:85svh;overflow:auto;padding:24px;background:var(--paper);color:var(--ink);border:2px solid;margin:auto}.annotation-dialog::backdrop{background:#0008}.annotation-dialog textarea[name=quote]{min-height:80px}.annotation-dialog .contribution-form{padding-bottom:0}.annotation-dialog h2{margin-top:0}@media(max-width:650px){.annotation-dialog{padding:16px}}

.annotation-exit{position:sticky;top:-24px;background:var(--paper);padding:8px 0;z-index:2;display:flex;justify-content:flex-end;border-bottom:1px solid}.annotation-exit button{font-weight:bold}.annotation-dialog .annotation-exit button{margin:0}@media(max-width:650px){.annotation-exit{top:-16px}}

.margins-entry{border-top:1px solid;border-bottom:1px solid;padding:16px 0;margin:22px 0;font-size:14px;line-height:1.5}.margins-entry a{font-weight:bold;text-decoration:underline}.margin-note{border:1px solid;padding:20px;margin:18px 0;background:var(--paper)}.margin-note h3{margin:0}.margin-date{font-size:12px}.margin-replies{border-left:3px solid var(--blue);padding-left:18px}.margin-text-choices{max-height:250px;overflow:auto;padding:10px;border:1px solid}.margin-text-choices label{display:flex;align-items:start;gap:10px;margin:10px 0}.margin-text-choices input{flex:0 0 auto}.margin-compose summary{cursor:pointer;padding:10px 0}.margin-compose code{word-break:break-all}.margin-reports{border-top:2px solid;padding-top:24px}@media(max-width:650px){.margin-note{padding:12px}.margin-replies{padding-left:8px}.margin-note .publication-actions{gap:4px}}

/* Notes belong to reading; Margins is their collective map. */
.margin-paper{position:fixed;margin:0;width:min(350px,calc(100vw - 24px));max-height:78svh;overflow:auto;padding:40px 18px 18px;background:var(--paper);color:var(--ink);border:2px solid var(--ink);box-shadow:0 6px 30px #0004;z-index:120;font:13px/1.5 monospace}.margin-paper:not([open]){display:none}.margin-paper h2{font-size:20px;line-height:1.2;margin:0 0 12px}.margin-paper button,.margin-paper input,.margin-paper textarea{font:inherit;padding:8px;border:1px solid;background:var(--paper);color:var(--ink);max-width:100%}.margin-paper textarea{width:100%;min-height:100px;resize:vertical}.margin-paper button{cursor:pointer;margin:6px 4px 6px 0}.margin-paper button[type=submit]{background:var(--blue);width:100%}.margin-paper-close{position:absolute;top:3px;right:6px;font-size:23px!important}.margin-paper blockquote{margin:12px 0;padding-left:10px;border-left:3px solid var(--blue);max-height:130px;overflow:auto}.margin-paper a{display:block;margin:12px 0;text-decoration:underline}.margin-paper small{display:block;font-size:11px}.margin-paper code{word-break:break-all}.margin-paper label{display:block;font-size:12px}.margin-paper-tools{display:flex;align-items:center;gap:8px;margin:10px 0}.margin-upload input{width:100%;font-size:11px}.margin-image-preview,.margin-note-image{display:block;max-width:100%;max-height:240px;object-fit:contain}.margin-image-preview[hidden]{display:none}.margin-note-body{white-space:pre-wrap}.margin-selection{position:fixed;z-index:115;padding:10px;background:var(--blue);color:var(--ink);border:1px solid;font:13px monospace;cursor:pointer}.margin-selection[hidden]{display:none}.reader-margin{background:transparent;color:inherit;border-bottom:3px solid var(--pink);cursor:pointer}.reader-margin:hover,.reader-margin:focus{background:var(--blue);color:var(--ink)}.margins-entry button{display:block;margin:12px 0;padding:8px;background:var(--paper);color:var(--ink);border:1px solid;font:12px monospace;cursor:pointer}.margin-source{font-size:11px}.margin-board-controls{display:flex;flex-wrap:wrap;gap:12px}.margin-board{display:grid;gap:36px}.margin-map-group{position:relative;padding:24px;background:var(--ink);color:var(--paper);border:1px solid;isolation:isolate}.margin-map-source{position:relative;z-index:1;display:block!important;width:fit-content;max-width:600px;padding:12px;background:var(--blue);color:var(--ink);font-weight:bold}.margin-map-cards{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:start;gap:42px 26px;padding-top:32px}.publication-app .margin-map-card{position:relative;z-index:1;display:block;width:100%;margin:0;text-align:left;background:var(--paper);color:var(--ink);padding:16px;font-size:13px;line-height:1.5;border:1px solid}.margin-map-card:nth-child(even){margin-top:28px}.margin-map-card blockquote{font-size:12px;line-height:1.4;margin:0 0 12px;padding-left:8px}.margin-map-card img{width:100%;max-height:200px;object-fit:contain}.margin-map-card small{display:block}.margin-map-lines{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;stroke:var(--pink);stroke-width:1.5}.margin-paper :focus-visible,.margin-selection:focus-visible{outline:3px solid var(--pink);outline-offset:2px}@media(max-width:650px){.margin-paper{left:12px;right:12px;width:auto;max-height:70svh}.margin-map-group{padding:14px}.margin-map-cards{grid-template-columns:1fr}.margin-map-card:nth-child(even){margin-top:0}}
/* A single spatial field for the entire margins archive. */
.cosmos-app{max-width:none;padding-top:0}.publication-page:has(.cosmos-app) .page-head{padding-top:24px;padding-bottom:18px}.publication-page:has(.cosmos-app) .page-head h1{font-size:clamp(36px,5vw,68px);margin-bottom:12px}.publication-page:has(.cosmos-app) .page-head p{margin:0;font-size:13px;max-width:90ch}.cosmos-app .publication-nav{display:none}.cosmos-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cosmos-controls select{width:min(380px,100%);font-size:12px}.cosmos-controls button{font-size:12px}.cosmos-viewport{position:relative;height:72svh;min-height:440px;overflow:hidden;background:var(--ink);border:1px solid;touch-action:none;cursor:grab;background-image:radial-gradient(#ffffff28 1px,transparent 1px);background-size:28px 28px}.cosmos-viewport:active{cursor:grabbing}.cosmos-world{position:absolute;top:0;left:0;width:2400px;height:1900px;transform-origin:0 0}.cosmos-lines{position:absolute;overflow:visible;width:2400px;height:1900px;pointer-events:none;stroke:var(--pink);stroke-width:2}.cosmos-app .cosmos-text,.cosmos-app .cosmos-note{position:absolute;display:block;width:200px;margin:0;padding:14px;text-align:left;font:14px/1.4 monospace;text-decoration:none;overflow-wrap:anywhere;border:1px solid var(--paper);background:var(--ink);color:var(--paper);cursor:pointer}.cosmos-app .cosmos-note{background:var(--paper);color:var(--ink);border:2px solid var(--pink)}.cosmos-text small,.cosmos-note small{display:block;font-size:10px;margin-bottom:8px;color:var(--pink)}.cosmos-note small{color:inherit}.cosmos-note img{width:100%;max-height:110px;object-fit:contain;pointer-events:none}.cosmos-app .cosmos-text:hover,.cosmos-app .cosmos-text:focus{background:var(--paper);color:var(--ink)}.cosmos-hint{font-size:12px;line-height:1.5}.cosmos-app>details{font-size:12px;margin-top:24px}@media(max-width:650px){.cosmos-controls select{width:100%}.cosmos-viewport{height:65svh;min-height:380px}}
.secondary-nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:22px;padding:10px 2%;font:11px/1.5 monospace;border-bottom:1px solid}.secondary-nav a{text-decoration:none}.secondary-nav a:hover,.secondary-nav a[aria-current]{text-decoration:underline}.index-order{display:flex;align-items:center;gap:12px;margin:20px 2%;font:13px monospace}.index-order select{font:inherit;padding:10px;background:var(--paper);color:var(--ink);border:1px solid}
