/* THE HALLS of the Reading Room: one Erowid-style page per dialogue. Black void, white rules, pixel labels, sun-bullet link lists. */
@font-face{font-family:Fraktur;src:url(/static/fonts/UnifrakturMaguntia.ttf) format("truetype");font-display:block}
@font-face{font-family:Pix;src:url(/static/nq/PressStart2P-Regular.ttf) format("truetype");font-display:block}
@font-face{font-family:Anton;src:url(/static/fonts/Anton-400.woff2) format("woff2");font-display:block}
*{box-sizing:border-box}
html,body{margin:0;background:#000;color:#fff;font:16px/1.5 "Times New Roman",serif}
a{color:#9cf}
#stars{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.page{position:relative;z-index:1;max-width:960px;margin:0 auto;padding:0 16px 60px}
/* Erowid-style masthead: wordmark left, art right, a strip of section menus under it */
.mast{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0 10px;border-bottom:1px solid #fff}
.mast .wm{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.mast .wm svg{width:58px;height:58px}
.mast .wm small{display:block;font:9px Pix;letter-spacing:2px;color:#bbb}
.mast .wm b{display:block;font:normal 40px/1 Fraktur}
.mast form input{font:14px "Courier New";background:#000;color:#fff;border:1px solid #fff;padding:6px 8px;width:190px}
.menu{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid #fff}
.menu a{font:9px Pix;color:#fff;text-decoration:none;padding:9px 14px;flex:1 0 auto;text-align:center;border-right:1px solid #444}
.menu a:hover,.menu a.on{background:#fff;color:#000}
/* breadcrumb tabs */
.crumbs{display:flex;align-items:center;gap:0;margin:18px 0 12px}
.crumbs a,.crumbs span{font:10px Pix;padding:6px 10px;border:1px solid #fff;text-decoration:none;color:#fff}
.crumbs span{background:#fff;color:#000}
.crumbs:after{content:"";flex:1;height:1px;background:#fff;opacity:.5}
.mission{border:1px dashed #fff;padding:10px 14px;max-width:560px;font:bold 15px/1.35 "Times New Roman";text-align:center}
h1{text-align:center;font:normal clamp(48px,8vw,78px)/1 Fraktur;margin:22px 0 14px;text-shadow:0 0 18px rgba(255,255,255,.3)}
/* summary card */
.card{border:2px solid #fff;padding:16px 18px;display:grid;grid-template-columns:1fr 230px;gap:18px;background:#000}
.card dl{margin:0}
.card dt{font:10px Pix;letter-spacing:1px;color:#9cf;border-bottom:1px solid #555;padding-bottom:4px;margin-top:12px}
.card dt:first-child{margin-top:0}
.card dd{margin:6px 0 0 14px;font-size:15.5px}
.card figure{margin:0;border:1px solid #fff;padding:6px;align-self:start;text-align:center}
.card figure img{width:100%;image-rendering:pixelated;display:block}
.card figcaption{font:9px/1.5 Pix;color:#aaa;margin-top:6px}
/* the tile row */
.tiles{display:grid;gap:10px;margin-top:16px}
.tile{position:relative;aspect-ratio:1;border:2px solid #fff;overflow:hidden;display:block;text-decoration:none;background:#111}
.tile img{width:100%;height:100%;object-fit:cover;filter:grayscale(.25) contrast(1.1);transition:transform .3s,filter .3s}
.tile b{position:absolute;left:0;right:0;bottom:6px;text-align:center;font:17px/1 Anton,Impact,sans-serif;letter-spacing:1px;color:#fff;text-transform:uppercase;-webkit-text-stroke:1.5px #000;paint-order:stroke fill}
.tile:hover img{transform:scale(1.08);filter:none}
.tile.off{border-style:dashed;opacity:.5}
/* general information lists */
.cols{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;margin-top:30px}
h2{font:12px Pix;letter-spacing:2px;text-align:center;margin:34px 0 12px}
h2:before,h2:after{content:"";display:inline-block;width:46px;height:1px;background:#fff;vertical-align:middle;margin:0 10px}
h3{font:11px Pix;letter-spacing:1px;margin:0 0 8px;color:#ff8;border-bottom:1px solid #555;padding-bottom:5px}
ul.sun{list-style:none;margin:0 0 18px;padding:0}
ul.sun li{margin:5px 0;padding-left:20px;position:relative}
ul.sun li:before{content:"\263C";position:absolute;left:0;top:-1px;color:#ff8}
ul.sun small{font:9px Pix;color:#888;margin-left:6px}
.new{font:8px Pix;background:#f33;color:#fff;padding:2px 4px;margin-left:6px;vertical-align:2px}
.essential{border:2px solid #ff8;padding:12px 16px;margin-top:26px}
.essential .lbl{font:10px Pix;color:#ff8;letter-spacing:2px}
.essential p{margin:6px 0 0}
/* readings vault */
table.readings{width:100%;border-collapse:collapse;font-size:15px}
table.readings th{font:9px Pix;text-align:left;border-bottom:1px solid #fff;padding:6px}
table.readings td{padding:8px 6px;border-bottom:1px dotted #555}
.empty{text-align:center;color:#aaa;font-style:italic;padding:16px}
.file{border:1px solid #fff;padding:14px 16px;margin-top:14px}
.file label{display:block;font:9px Pix;margin:10px 0 4px;color:#ccc}
.file input,.file select,.file textarea{width:100%;font:15px "Times New Roman";background:#000;color:#fff;border:1px solid #888;padding:6px 8px}
.file textarea{min-height:90px}
.file button{margin-top:12px;font:10px Pix;background:#000;color:#fff;border:2px solid #fff;padding:9px 14px;cursor:pointer}
.file button:hover{background:#fff;color:#000}
.foot{text-align:center;margin-top:40px;font:13px "Courier New";color:#999}
.note{font:9px/1.7 Pix;color:#f80;text-align:center;border:1px dashed #f80;padding:8px;margin:12px 0}
@media(max-width:760px){.card{grid-template-columns:1fr}.card figure{max-width:240px}.tiles{grid-template-columns:repeat(4,1fr)}.cols{grid-template-columns:1fr}.mast form{display:none}}
.tiles{grid-template-columns:repeat(var(--n,7),1fr)}
.card figure img.px{image-rendering:pixelated}
.card figure img:not(.px){image-rendering:auto}
.mission{margin:0 auto}
ul.sun li .why{color:#bbb}
.warnbox{border:1px solid #f66;color:#fbb;padding:8px 12px;margin:14px 0 0;font-style:italic}
.readings .rk{font:9px Pix;color:#9cf}
.readings tr.rd td{border-bottom:0;padding-bottom:0}
.readings tr.rb td{color:#ccc;font-size:14.5px;white-space:pre-wrap}
.file .msg{font:9px Pix;margin-left:10px;color:#ff8}
.hp{position:absolute;left:-9999px}
@media(max-width:760px){.tiles{grid-template-columns:repeat(4,1fr)}.menu a{padding:8px 9px;font-size:8px}.crumbs a,.crumbs span{font-size:9px;padding:5px 7px}}
.go{display:block;width:max-content;max-width:100%;margin:16px auto 0;font:12px Pix;letter-spacing:1px;color:#000;background:#fff;border:2px solid #fff;padding:12px 18px;text-decoration:none}
.go:hover{background:#000;color:#fff}
