@font-face{font-family:Instrument;src:url('../../fonts/IBM_Plex_Mono/IBMPlexMono-Regular.ttf')}
/* @font-face{font-family:Instrument;src:url('../../fonts/Space_Mono/SpaceMono-Regular.ttf')} */
@font-face{font-family:Reading;src:url('../../fonts/IBM_Plex_Mono/IBMPlexMono-Regular.ttf');font-weight:100 900;font-display:swap}
/* @font-face{font-family:Reading;src:url('../../fonts/Space_Mono/SpaceMono-Regular.ttf');font-weight:100 900;font-display:swap}  */
/* FIELD PALETTE — change site colors here. Canvas and favicon read these values. */
:root{
 --bg:#101211;
 --panel:#161916;
 --panel-deep:#141813;
 --surface:#242922;
 --surface-hover:#272c23;
 --surface-focus:#20261d;
 --surface-selected:#30372a;
 --photo-mat:#1b201a;
 --photo-stage:#070908;
 --line:#363b33;
 --line-muted:#282e25;
 --line-strong:#68715c;
 --text:#d9dcd1;
 --text-soft:#c9cdbf;
 --dim:#929a8c;
 --dim-muted:#747f70;
 --amber:#e1c295;
 --cyan:#91b8ae;
 --error:#f5bda1;
 --plot-label:#86958c;
 --shadow:#000;
 --mono:Instrument,Consolas,monospace;
 --read:Reading,Arial,sans-serif;
 color-scheme:dark;font-family:var(--mono);background:var(--bg);color:var(--text)
}
/*
 Theme profiles. FIELD above is the default. Select another in the status bar
 or run "theme <name>". Each profile defines every color token; sizing rules
 below are independent, including any local album-size adjustments.
 The legacy token names --amber and --cyan mean primary and secondary signal.
*/
/* mc.png: cobalt panels, turquoise chrome, pale-yellow selection. */
:root[data-theme="mc"]{
 --bg:#305f9a;
 --panel:#29598f;
 --panel-deep:#244e7d;
 --surface:#3974ac;
 --surface-hover:#4382bc;
 --surface-focus:#275d96;
 --surface-selected:#467db4;
 --photo-mat:#254b78;
 --photo-stage:#102b4d;
 --line:#83afd0;
 --line-muted:#5d91bb;
 --line-strong:#b0d4e9;
 --text:#fbfcf7;
 --text-soft:#e6f4f8;
 --dim:#d2e1ea;
 --dim-muted:#b9d4e2;
 --amber:#ffe77d;
 --cyan:#45e0d3;
 --error:#ffc5d9;
 --plot-label:#b4edff;
 --shadow:#061628;
}
/* lazydocker.jpg: near-black, process green, magenta events, blue register. */
:root[data-theme="lazydocker"]{
 --bg:#090c0a;
 --panel:#0e120e;
 --panel-deep:#040605;
 --surface:#19231b;
 --surface-hover:#223528;
 --surface-focus:#142519;
 --surface-selected:#27432d;
 --photo-mat:#101a13;
 --photo-stage:#050806;
 --line:#3b493c;
 --line-muted:#273529;
 --line-strong:#657965;
 --text:#e0e8df;
 --text-soft:#c6d1c4;
 --dim:#a5b2a5;
 --dim-muted:#8b9a8b;
 --amber:#7ddd78;
 --cyan:#e581c8;
 --error:#ef8f82;
 --plot-label:#7aaee2;
 --shadow:#000;
}
/* cool-retro-term.jpg: deep glass and several levels of phosphor green. */
:root[data-theme="retro"]{
 --bg:#06170f;
 --panel:#0b2117;
 --panel-deep:#031009;
 --surface:#10301f;
 --surface-hover:#16402a;
 --surface-focus:#0b3421;
 --surface-selected:#1a5435;
 --photo-mat:#091e14;
 --photo-stage:#03100a;
 --line:#356e4e;
 --line-muted:#234b36;
 --line-strong:#68ba83;
 --text:#d5ffe2;
 --text-soft:#b6edc8;
 --dim:#89cba4;
 --dim-muted:#6bad83;
 --amber:#44f18f;
 --cyan:#a3ffd0;
 --error:#ffb0a9;
 --plot-label:#75e0a2;
 --shadow:#000;
}
/* 2077.png: the supplied black / olive / yellow / sky / teal swatches. */
:root[data-theme="2077"]{
 --bg:#00060e;
 --panel:#07131a;
 --panel-deep:#000309;
 --surface:#333915;
 --surface-hover:#3e4216;
 --surface-focus:#27320c;
 --surface-selected:#4b501a;
 --photo-mat:#0b1f26;
 --photo-stage:#00060e;
 --line:#536b72;
 --line-muted:#2d4348;
 --line-strong:#9a9f17;
 --text:#eaf8f5;
 --text-soft:#c8e7e1;
 --dim:#a3c2c0;
 --dim-muted:#84aba9;
 --amber:#fee801;
 --cyan:#54c1e6;
 --error:#ff9c8d;
 --plot-label:#39c4b6;
 --shadow:#000;
}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{color:inherit;background:none;border:0;cursor:pointer}button:hover,a:hover{color:var(--amber)}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--amber);outline-offset:4px}button{min-height:36px}input{min-width:0;color:var(--text);background:transparent;border:0}input:focus{outline:none}input::placeholder{color:var(--dim)}::selection{background:var(--amber);color:var(--bg)}h1,h2,h3,h4,p{margin:0}img{max-width:100%;display:block}figure{margin:24px 0}figcaption{font:12px/1.5 var(--mono);color:var(--dim);margin-top:10px}kbd{font:12px var(--mono);border:1px solid var(--line);padding:1px 5px;color:var(--amber)}.skip{position:fixed;top:-60px;left:12px;z-index:100;background:var(--amber);color:var(--bg);padding:12px}.skip:focus{top:8px}.instrument{display:grid;grid-template-columns:246px minmax(0,1fr);grid-template-rows:62px minmax(0,1fr) 110px;height:100dvh;min-height:500px;padding:0 24px}.mast{grid-column:1/-1;display:flex;align-items:center;gap:26px;border-bottom:1px solid var(--line);font-size:13px}.wordmark{font:26px var(--mono);color:var(--amber);width:220px;flex:none;letter-spacing:-2px}.wordmark>span:first-child{font-size:20px;color:var(--cyan)}.edition{font-size:12px;color:var(--dim);letter-spacing:0}.owner{letter-spacing:.04em}.mast-note{margin-left:auto;font-size:10px;letter-spacing:.15em;color:var(--dim)}.mast button{padding:0 8px 0 20px;border-left:1px solid var(--line)}.directory{border-right:1px solid var(--line);padding:25px 22px 20px 0;display:flex;flex-direction:column;min-height:0;overflow:auto}.directory-label{display:flex;justify-content:space-between;font-size:11px;color:var(--dim);margin-bottom:30px}.directory-label span{font-size:9px;color:var(--dim-muted)}.directory nav>a{display:flex;align-items:center;gap:13px;padding:12px 8px;font-size:14px;border-left:2px solid transparent}.directory nav>a>span{color:var(--dim);font-size:11px}.directory nav>a>b{font-size:12px;font-weight:400;margin-left:auto;color:var(--dim)}.directory nav>a[aria-current]{background:var(--surface);border-left-color:var(--amber);color:var(--amber)}.subtree{margin:4px 0 19px 21px;font-size:11px;line-height:1.5}.subtree a{display:flex;gap:8px;padding:7px 0;color:var(--dim)}.subtree a:hover{color:var(--amber)}.subtree span{color:var(--line)}.directory-foot{margin-top:auto;padding-top:30px}.eyebrow{font:11px/1.5 var(--mono);letter-spacing:.075em;color:var(--dim)}.directory-foot>a{display:block;margin:12px 0 7px;font-size:16px}.directory-foot p{font-size:12px;line-height:1.7;color:var(--dim)}.directory-foot button{font-size:11px;padding:14px 0 0;text-align:left;color:var(--cyan)}#workspace{overflow:auto;position:relative;min-width:0;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;outline:none}.console{grid-column:1/-1;border-top:1px solid var(--line);display:grid;grid-template-rows:28px 49px 30px}.status{display:flex;align-items:center;font-size:11px;gap:16px;border-bottom:1px solid var(--line)}#mode{align-self:stretch;display:flex;align-items:center;padding:0 14px;background:var(--amber);color:var(--bg)}#location{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--dim)}.status button{font-size:11px;min-height:24px}#effects{margin-left:auto}.status button:last-child{white-space:nowrap}#command-form{display:flex;align-items:center;gap:15px;padding:0 12px}#command-form label{font-size:25px;color:var(--amber)}#command{flex:1;font-size:15px;height:100%}#command-form button{font-size:23px;padding:0 18px;color:var(--amber)}#feedback{font-size:11px;color:var(--dim);padding:0 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-top{display:flex;justify-content:space-between;padding:22px 26px;font-size:10px;letter-spacing:.04em;color:var(--dim)}.observatory{height:100%;min-height:610px;display:flex;flex-direction:column}.field-space{position:relative;min-height:350px;flex:1;overflow:hidden;background:radial-gradient(ellipse at 48% 54%,color-mix(in srgb,var(--surface-hover) 30%,transparent),transparent 60%)}#field-canvas{position:absolute;width:100%;height:100%;inset:0}.field-caption{position:absolute;top:8px;left:36px}.field-caption h1{font:400 29px/1.13 var(--read);letter-spacing:-.03em;margin-top:12px;color:var(--text)}.field-caption p{font:11px/1.65 var(--mono);color:var(--dim);margin-top:13px}.coordinate{position:absolute;display:grid;grid-template-columns:1fr 15px;width:210px;font:15px/1.3 var(--read);padding:12px 16px 13px;background:color-mix(in srgb,var(--bg) 91%,transparent);border-top:1px solid var(--line-strong);box-shadow:0 8px 45px color-mix(in srgb,var(--bg) 50%,transparent)}.coordinate-code{grid-column:1/-1;font:10px var(--mono);letter-spacing:.08em;color:var(--amber);margin-bottom:8px}.coordinate .cross{position:absolute;left:-19px;top:-14px;font:28px var(--mono);color:var(--amber)}.coordinate b{font:17px var(--mono);font-weight:400;align-self:end;color:var(--amber)}.coordinate:hover{background:var(--surface-hover);border-color:var(--amber)}.c0{top:24%;right:6%}.c1{top:61%;left:12%}.c2{top:70%;right:8%}.field-note{position:absolute;left:36px;bottom:56px;display:flex;gap:14px;color:var(--dim);font-size:10px;line-height:1.6}.field-note>span:first-child{color:var(--cyan)}.aperture{position:absolute;top:4px;right:33px;display:flex;flex-direction:column;text-align:right;font-size:9px;color:var(--dim)}.aperture strong{font:56px/.95 var(--read);color:var(--text-soft);font-weight:300;margin:7px 0}.observation{display:grid;grid-template-columns:1.2fr 1fr;border-top:1px solid var(--line);margin:14px 26px 25px;gap:40px;padding-top:19px}.observation p{font:17px/1.5 var(--read);max-width:620px;margin:10px 0 14px}.text-link{font:12px var(--mono);color:var(--amber)}.observation-volumes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.observation-volumes>.eyebrow{grid-column:1/-1}.observation-volumes a{display:flex;align-items:center;gap:11px;font-size:11px}.observation-volumes img{width:75px;height:85px;object-fit:cover;filter:saturate(.5)}.observation-volumes small{display:block;color:var(--dim);font-size:10px;line-height:2}
.buffer-head{display:flex;align-items:center;gap:20px;padding:23px 32px;border-bottom:1px solid var(--line);font-size:10px;color:var(--dim)}.buffer-head h1{font:16px var(--mono);color:var(--text)}.buffer-head>span:last-child{margin-left:auto}.intro{font:22px/1.55 var(--read);max-width:850px;margin:35px 40px}.research-entry{display:grid;grid-template-columns:85px 1fr 30px;gap:25px;border-top:1px solid var(--line);padding:30px 40px}.big-index{font:300 60px var(--read);color:var(--dim-muted)}.research-entry h2{font:400 29px/1.2 var(--read);margin:9px 0 14px}.research-entry p{font:18px/1.5 var(--read);color:var(--dim);max-width:720px}.entry-arrow{font-size:28px;color:var(--amber)}.reading,.dossier{max-width:980px;margin:0 auto;padding:45px 55px 65px;font:19px/1.65 var(--read);overflow-wrap:anywhere}.reading>h2,.identity-main h2{font:400 42px/1.12 var(--read);letter-spacing:-.025em;margin:13px 0 28px}.lead{font:23px/1.6 var(--read);color:var(--text-soft);margin:20px 0 35px}h3{font:12px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--amber);margin:32px 0 17px}.questions{padding-left:28px}.questions li{padding:12px 0 12px 9px;border-bottom:1px solid var(--line)}.questions li::marker{font:13px var(--mono);color:var(--amber)}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags button{font:12px var(--mono);padding:7px 10px;border:1px solid var(--line);color:var(--cyan)}.connections a{display:block;border-top:1px solid var(--line);padding:17px 24px 17px 0;font:19px/1.4 var(--read)}.connections a:before{content:'↳ ';color:var(--amber)}.personal summary{cursor:pointer;min-height:36px}.index-tools{display:flex;align-items:center;justify-content:space-between;margin:20px 32px;color:var(--dim);font-size:11px}.publication-list{padding:0 32px 40px}.publication-row{display:grid;grid-template-columns:25px 94px 1fr 20px;gap:20px;padding:21px 0;border-top:1px solid var(--line)}.publication-row:hover{background:var(--surface-hover)}.line-number{font-size:11px;color:var(--dim-muted)}.publication-row time{font-size:12px;color:var(--dim);padding-top:5px}.publication-row h2{font:400 21px/1.3 var(--read)}.publication-row p{font-size:11px;color:var(--dim);margin-top:8px}.publication-row>span:last-child{color:var(--amber)}.authors{color:var(--dim);font-size:17px}.paper-links,.endpoints{display:flex;flex-wrap:wrap;gap:12px 23px;margin:25px 0;font:14px/1.6 var(--mono);color:var(--amber)}.publication figure img{max-height:350px;object-fit:contain;background:var(--text)}.transmissions{padding:12px 32px}.transmission{display:grid;grid-template-columns:100px 1fr 160px 16px;align-items:center;gap:25px;padding:30px 0;border-bottom:1px solid var(--line)}.transmission time{font-size:12px;color:var(--amber)}.transmission time span{display:block;font-size:9px;color:var(--dim);margin-top:10px}.transmission h2{font:400 24px/1.3 var(--read)}.transmission p{font:15px/1.5 var(--read);color:var(--dim);margin-top:10px}.transmission img{aspect-ratio:16/9;object-fit:cover;filter:grayscale(.6)}.play-link{display:inline-block;border:1px solid var(--amber);padding:10px 20px;color:var(--amber);font:14px var(--mono)}.volumes{padding:10px 35px 35px}.volume{display:grid;grid-template-columns:minmax(0,480px) minmax(0,1fr);gap:45px;min-height:380px;padding:38px 0;border-bottom:1px solid var(--line);align-items:center}.volume-cover{position:relative;overflow:hidden;background:var(--photo-mat)}.volume-cover img{display:block;width:100%;height:320px;object-fit:contain;filter:grayscale(1);transition:filter .3s}.volume:hover img,.volume:focus-visible img{filter:none}.volume-cover>span{position:absolute;bottom:0;left:0;padding:8px 12px;background:var(--bg);font-size:11px;color:var(--amber)}.volume h2{font:400 31px var(--read);margin:12px 0}.volume p{font:17px/1.5 var(--read);color:var(--dim);margin-bottom:12px}.volume .text-link{display:block;margin-top:25px}.album-intro{padding:25px 32px;font:20px/1.5 var(--read)}.album-intro>span{font:11px var(--mono);color:var(--dim)}.contact-sheet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 18px;padding:0 32px 25px}.contact img{width:100%;aspect-ratio:4/3;object-fit:contain;background:var(--photo-mat)}.contact>span{display:flex;align-items:center;gap:8px;font:10px var(--mono);padding:10px 0;overflow-wrap:anywhere}.contact b{color:var(--amber);font-weight:400}.contact i{margin-left:auto;font-style:normal}.image-controls{display:flex;gap:25px;align-items:center;padding:9px 25px;font-size:12px}.image-controls a:first-child{margin-right:auto}.image-stage{height:calc(100dvh - 390px);min-height:240px;background:var(--photo-stage);display:flex;align-items:center;justify-content:center;overflow:auto;margin:0 24px}.full-photo{width:100%;height:100%;object-fit:contain}.image-stage.one-to-one{display:block}.one-to-one .full-photo{width:auto;height:auto;max-width:none;object-fit:none}.image-stage:fullscreen{height:100dvh;margin:0}.image-register{display:flex;justify-content:space-between;gap:20px;padding:20px 28px}.image-register h2{font:400 20px/1.4 var(--read)}.image-register p{font-size:11px;line-height:1.7;color:var(--dim);margin:8px 0}.image-register .muted{font-size:10px}.image-arrows{display:flex;gap:25px;align-items:flex-start;flex:none;font-size:12px}.image-arrows a{padding:8px 0;color:var(--amber)}.identity-main{display:grid;grid-template-columns:1fr 190px;gap:35px}.identity-main p{margin:15px 0}.portrait{margin-top:20px;filter:grayscale(1)}.trajectory>div{display:grid;grid-template-columns:130px 1fr;border-top:1px solid var(--line);padding:20px 0;gap:25px}.trajectory time{font:12px var(--mono);color:var(--dim);padding-top:8px}.trajectory h4{font-weight:450}.trajectory p{font-size:16px;color:var(--dim)}.personal{margin-top:30px;font:13px var(--mono)}.personal>div{display:flex;flex-wrap:wrap;gap:15px}.personal figure{width:130px}.personal img{width:100%;aspect-ratio:1;object-fit:contain}.commands dt{font:14px var(--mono);color:var(--amber);margin-top:20px}.commands dd{margin:5px 0 20px;color:var(--dim)}.muted{color:var(--dim)}.empty{padding:30px;color:var(--dim)}.data-error,.image-error{padding:20px;color:var(--error);display:block}.broken-image{min-height:80px}.no-js{position:fixed;inset:0;padding:50px;background:var(--bg);z-index:100}.no-js a{text-decoration:underline}.loading{padding:50px}
dialog{padding:0;border:1px solid var(--line-strong);background:var(--panel-deep);color:var(--text);width:min(1000px,90vw);max-height:85dvh;box-shadow:0 30px 130px color-mix(in srgb,var(--shadow) 73%,transparent)}dialog::backdrop{background:color-mix(in srgb,var(--photo-stage) 81%,transparent);backdrop-filter:blur(5px)}.dialog-top,.dialog-bottom{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;font-size:11px;color:var(--dim)}.dialog-top{border-bottom:1px solid var(--line);color:var(--amber)}.dialog-top button{min-height:30px}.query{display:flex;align-items:center;padding:10px 20px;gap:15px;border-bottom:1px solid var(--line)}.query>span{font-size:30px;color:var(--amber)}.query input{width:100%;font-size:18px;height:45px}.finder-body{display:grid;grid-template-columns:1.2fr 1fr;height:430px;max-height:52dvh}#results{overflow:auto;padding:8px;border-right:1px solid var(--line)}#results button{display:flex;flex-direction:column;width:100%;text-align:left;padding:12px 15px;gap:5px;border-left:2px solid transparent}#results button>span{font:10px var(--mono);color:var(--dim)}#results strong{font:17px/1.35 var(--read);font-weight:400}#results [aria-selected=true]{background:var(--surface-selected);border-left-color:var(--amber)}#preview{padding:25px;overflow:auto}#preview h2{font:400 26px/1.25 var(--read);margin:15px 0}#preview p{font:18px/1.5 var(--read);color:var(--dim);margin-bottom:20px}#preview img{max-height:160px;margin-bottom:20px}#preview>.muted{font:10px/1.6 var(--mono);overflow-wrap:anywhere;display:block}#preview button{display:block;margin-top:20px;color:var(--amber);font-size:13px}.dialog-bottom{border-top:1px solid var(--line);font-size:10px}
@media(min-width:1700px){.instrument{grid-template-columns:280px 1fr;padding:0 40px}.wordmark{width:254px}.field-caption{top:20px;left:50px}.field-caption h1{font-size:38px}.coordinate{width:250px;font-size:19px}.observation{padding-top:25px;margin-bottom:35px;gap:60px}.observation p{font-size:21px}.observation-volumes img{width:100px;height:100px}.reading,.dossier{max-width:1100px}.field-space{min-height:450px}}
@media(max-width:1100px){.instrument{grid-template-columns:205px 1fr;padding:0 16px}.wordmark{width:180px}.mast{gap:22px}.mast-note{display:none}.mast button{margin-left:auto}.directory{padding-right:15px}.field-top>span:nth-child(2){display:none}.coordinate{width:175px;font-size:14px}.c0{right:4%;top:30%}.c1{left:8%;top:66%}.c2{right:4%;top:73%}.field-caption h1{font-size:25px}.field-note{display:none}.observation{gap:22px}.observation-volumes{grid-template-columns:1fr}.observation-volumes a:last-child{display:none}.observation-volumes img{height:65px;width:65px}.observation p{font-size:16px}.reading,.dossier{padding:35px}.transmission{grid-template-columns:85px 1fr 90px;gap:16px}.transmission>span:last-child{display:none}.transmission h2{font-size:21px}.volume{gap:25px}.volume-cover img{height:300px}.contact-sheet{grid-template-columns:repeat(2,minmax(0,1fr))}.identity-main{grid-template-columns:1fr 130px}.publication-row{gap:12px;grid-template-columns:22px 80px 1fr 12px}}
@media(max-width:800px){.instrument{grid-template-columns:1fr;grid-template-rows:55px 55px minmax(0,1fr) 106px;padding:0 16px}.mast{gap:15px}.wordmark{width:auto;font-size:24px}.edition{display:none}.owner{font-size:12px}.mast button{font-size:11px;padding-left:12px}.directory{grid-row:2;display:block;padding:0;border-right:0;border-bottom:1px solid var(--line);overflow:auto;scrollbar-width:none}.directory-label,.directory-foot,.subtree{display:none}.directory nav{display:flex;width:max-content;min-width:100%;justify-content:space-between}.directory nav>a{padding:17px 12px;font-size:12px;border-left:0;border-bottom:2px solid transparent;gap:6px}.directory nav>a[aria-current]{border-bottom-color:var(--amber)}.directory nav>a>b{display:none}.directory nav>a>span{font-size:9px}#workspace{grid-row:3}.console{grid-row:4}.observatory{min-height:660px}.field-space{min-height:410px}.field-caption{left:20px}.aperture{right:20px}.observation{margin-left:20px;margin-right:20px}.buffer-head{padding:20px;gap:12px}.buffer-head>span:last-child{font-size:9px}.contact-sheet{padding:0 20px 20px}.reading,.dossier{padding:30px}.image-controls{gap:15px;padding:10px 15px}.image-stage{height:calc(100dvh - 425px);margin:0 10px}.image-register{padding:20px 15px}.volume-cover img{height:300px}}
@media(max-width:500px){.instrument{padding:0 10px;grid-template-rows:52px 49px minmax(0,1fr) 106px;min-height:460px}.mast{gap:10px}.wordmark{font-size:23px}.owner{max-width:115px;font-size:10px}.mast button{font-size:11px;padding:0 2px 0 8px}.mast kbd{display:none}.directory nav>a{font-size:11px;padding:14px 9px;gap:5px}.directory nav>a>span{display:none}.directory nav>a:first-child{display:none}.status{gap:8px;font-size:10px}#mode{padding:0 8px}#location{max-width:145px}.status button{font-size:10px}#command{font-size:12px}#command-form{gap:10px;padding:0 6px}#command-form button{padding:0 8px}#feedback{font-size:9px;padding:0 6px}.field-top{padding:16px 10px;font-size:9px}.observatory{min-height:750px}.field-space{min-height:480px}.field-caption{left:12px;top:9px}.field-caption .eyebrow{font-size:9px}.field-caption h1{font-size:26px}.field-caption p{font-size:10px}.aperture{right:10px;top:9px;font-size:7px}.aperture strong{font-size:39px}.coordinate{width:160px;padding:10px 12px;font-size:13px}.c0{right:3%;top:36%}.c1{left:7%;top:64%}.c2{right:3%;top:82%}.coordinate-code{font-size:9px}.observation{grid-template-columns:1fr;margin:15px 12px 25px;gap:22px}.observation p{font-size:17px}.observation-volumes{grid-template-columns:1fr 1fr}.observation-volumes a:last-child{display:flex}.observation-volumes img{width:48px;height:62px}.observation-volumes a{font-size:9px}.observation-volumes small{font-size:8px}.eyebrow{font-size:10px}.buffer-head{padding:18px 12px;flex-wrap:wrap;gap:10px}.buffer-head h1{font-size:15px}.buffer-head>span:first-child{font-size:9px}.buffer-head>span:last-child:empty{display:none}.reading,.dossier{padding:25px 15px;font-size:18px}.reading>h2,.identity-main h2{font-size:32px}.lead{font-size:21px}.intro{margin:25px 15px;font-size:21px}.research-entry{padding:25px 15px;grid-template-columns:35px 1fr;gap:15px}.big-index{font-size:33px}.research-entry h2{font-size:25px}.research-entry p{font-size:17px}.entry-arrow{display:none}.publication-list{padding:0 12px 30px}.publication-row{grid-template-columns:24px 1fr 14px;gap:8px}.publication-row time{grid-column:2;font-size:10px}.publication-row>div{grid-column:2}.publication-row>span:last-child{grid-column:3;grid-row:2}.publication-row h2{font-size:20px}.index-tools{margin:12px;font-size:9px;gap:10px}.index-tools button{font-size:10px}.transmissions{padding:0 12px}.transmission{grid-template-columns:1fr 85px;gap:12px;padding:25px 0}.transmission time{grid-column:1/-1;display:flex;gap:16px;align-items:center}.transmission time span{margin:0}.transmission h2{font-size:20px}.transmission p{font-size:14px}.volumes{padding:0 12px 30px}.volume{grid-template-columns:1fr;gap:18px;padding:30px 0}.volume-cover img{height:260px}.volume h2{font-size:27px}.volume .text-link{margin-top:14px}.album-intro{padding:20px 12px;font-size:18px}.contact-sheet{padding:0 12px;gap:14px 10px}.contact>span{font-size:8px;gap:5px;align-items:flex-start}.contact i{display:none}.image-controls{padding:10px 8px;gap:10px;flex-wrap:wrap;font-size:10px}.image-controls button{font-size:10px;min-height:38px}.image-controls a:first-child{margin-right:0}.image-stage{margin:0;height:calc(100dvh - 425px);min-height:230px}.image-register{display:block;padding:16px 10px}.image-register h2{font-size:19px}.image-arrows{justify-content:space-between;margin-top:15px}.identity-main{display:flex;flex-direction:column-reverse;gap:10px}.portrait{width:100px;margin-top:0}.trajectory>div{grid-template-columns:1fr;gap:8px}.trajectory time{padding:0}.personal figure{width:110px}dialog{width:calc(100vw - 20px);max-height:90dvh}.finder-body{grid-template-columns:1fr;height:50dvh;max-height:50dvh}#preview{display:none}#results{border:0}.dialog-top,.dialog-bottom{padding:10px 12px}.dialog-bottom{font-size:8px;gap:8px}.query{padding:8px 12px}.query input{font-size:15px}#results strong{font-size:17px}.image-inspector .buffer-head{gap:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Review 3: readable plotting labels, focus visibility and touch targets. */
.field-caption{z-index:1;padding:8px 22px 12px 0;background:linear-gradient(90deg,var(--bg) 58%,transparent);pointer-events:none}
#command-form:focus-within,.query:focus-within{background:var(--surface-focus);box-shadow:inset 3px 0 var(--amber)}
.personal figure,.personal img{background:var(--bg)}
.image-controls a{display:inline-flex;align-items:center;min-height:44px}
.endpoints>a,.paper-links>a{max-width:100%;overflow-wrap:anywhere}
@media(max-width:500px){.directory nav>a{padding-left:7px;padding-right:7px}.image-controls button{min-height:44px}.field-caption{padding-right:12px}}


/* Virtual filesystem: sidebar tree, current path, and command output. */
.console{position:relative}
#tree-toggle{display:none}
#directory .directory-tree,#directory ul{list-style:none;padding:0;margin:0}
#directory ul ul{margin-left:10px;padding-left:9px;border-left:1px solid var(--line)}
#directory li{min-width:0}
#directory summary{display:flex;align-items:center;cursor:pointer;list-style:none}
#directory summary::-webkit-details-marker{display:none}
#directory summary:before{content:'▸';font-size:10px;color:var(--dim);width:15px;flex:none}
#directory details[open]>summary:before{content:'▾'}
#directory a{display:flex;gap:8px;align-items:center;min-height:35px;padding:7px 6px;color:var(--dim);font-size:12px;line-height:1.35;border-left:2px solid transparent}
#directory summary>a{flex:1;min-width:0}
#directory .tree-leaf>a{margin-left:15px}
#directory .tree-root{font-size:16px;color:var(--text);margin-bottom:12px;padding-left:8px}
#directory .tree-name{overflow-wrap:anywhere;min-width:0}
#directory small{margin-left:auto;color:var(--dim);font-size:10px;flex:none}
#directory a:hover{color:var(--amber)}
#directory a[aria-current=page]{background:var(--surface);border-left-color:var(--amber);color:var(--amber)}
#directory .tree-root>span{font-size:16px;color:inherit}
#up{flex:none;padding:0 8px;color:var(--amber);white-space:nowrap}
#up:disabled{opacity:.35;cursor:default}
#location{display:flex;align-items:center;flex:1;gap:0;min-width:0;max-width:none;overflow:auto;scrollbar-width:none}
#location a{white-space:nowrap;min-height:26px;display:flex;align-items:center;padding:0 2px}
#location a[aria-current]{color:var(--text)}
#location>span{color:var(--dim)}
#terminal-output{position:absolute;bottom:100%;left:0;right:0;z-index:25;background:var(--panel-deep);border:1px solid var(--line-strong);box-shadow:0 -18px 65px color-mix(in srgb,var(--shadow) 53%,transparent)}
#terminal-output[hidden]{display:none}
.terminal-output-head{display:flex;align-items:center;justify-content:space-between;padding:7px 15px;border-bottom:1px solid var(--line);font:12px var(--mono);color:var(--amber)}
.terminal-output-head button{font-size:24px;min-width:36px}
#terminal-lines{max-height:min(48dvh,420px);overflow:auto;padding:12px 16px;font:13px/1.6 var(--mono)}
#terminal-lines p{padding:8px}
#terminal-lines p button{color:var(--amber);text-decoration:underline}
.terminal-list>a{display:grid;grid-template-columns:45px minmax(110px,1fr) 1.5fr;gap:15px;min-height:34px;align-items:center;padding:5px 6px 5px calc(6px + var(--depth)*16px);border-bottom:1px solid var(--line-muted);overflow-wrap:anywhere}
.terminal-kind{color:var(--cyan);font-size:10px}
.terminal-list small{color:var(--dim);font:12px/1.4 var(--read)}
.page-items{list-style:none;padding:0;margin:0}
.page-items button{display:flex;gap:15px;width:100%;text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);align-items:baseline}
.page-items b{font-weight:400;color:var(--amber);flex:none}
.page-items span{overflow-wrap:anywhere}
.page-items small{margin-left:auto;color:var(--dim);flex:none}
@media(max-width:800px){
 .directory{overflow:visible}
 #tree-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%;font-size:12px;text-align:left;padding:0 10px;color:var(--amber)}
 .directory #directory{display:none}
 .directory.is-open #directory{display:block;position:fixed;top:110px;bottom:112px;left:16px;right:16px;z-index:30;background:var(--panel-deep);border:1px solid var(--line);padding:18px;overflow:auto;width:auto;min-width:0;box-shadow:0 15px 60px color-mix(in srgb,var(--shadow) 73%,transparent)}
 #directory .directory-tree{display:block}
 #directory a{font-size:14px;min-height:40px}
 #directory .tree-root{display:flex}
}
@media(max-width:500px){
 .directory.is-open #directory{top:101px;left:10px;right:10px;bottom:106px}
 .status{gap:4px}#location{font-size:10px}#effects{display:none}
 #terminal-lines{padding:8px;font-size:12px}
 .terminal-list>a{grid-template-columns:30px minmax(0,1fr);gap:8px}
 .terminal-list small{grid-column:2}
 .page-items small{display:none}
 .page-items button{min-height:44px;font-size:12px}
}


@media(max-width:500px){.directory #directory .tree-root>span{display:block}}
#tree-toggle[aria-expanded=true]>span{transform:rotate(180deg)}

/* Palette selector: persistent status instrument, compact on handheld screens. */
#theme-select{
 margin-left:auto;
 width:132px;
 min-height:26px;
 padding:3px 22px 3px 7px;
 border:1px solid var(--line);
 border-radius:0;
 background:var(--panel);
 color:var(--cyan);
 font:11px var(--mono);
 cursor:pointer;
}
#theme-select:hover{border-color:var(--cyan)}
#theme-select:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
#theme-select option{background:var(--panel);color:var(--text)}
#effects{margin-left:0}
.terminal-themes{display:flex;flex-wrap:wrap;gap:8px;padding:8px}
.terminal-themes button{border:1px solid var(--line);padding:5px 9px;text-align:left;font-size:11px}
.terminal-themes button[aria-current="true"]{border-color:var(--amber);color:var(--amber)}
@media(max-width:500px){
 #location{flex:1;min-width:0;max-width:none}
 #theme-select{width:82px;min-height:25px;padding:2px 15px 2px 4px;font-size:9px}
}
/* Long directory paths must yield space to the palette control on handhelds. */
@media(max-width:800px){
 .instrument{grid-template-columns:minmax(0,1fr)}
 .console,.status,#command-form{min-width:0}
 .status{overflow:hidden}
 #mode,#up,#theme-select,.status button:last-child{flex:none}
}
