:root{--paper:#070a0d;--surface:#0b1015;--ink:#e3e4e8;--muted:#a4adbb;--line:#293744;--accent:#79e5ff;--pink:#ff78b7;--wash:#121c25;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif;--mono:Consolas,'Liberation Mono',monospace;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#080c12;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{touch-action:manipulation;outline-offset:5px}button{cursor:pointer;color:inherit}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent)}button:disabled{opacity:.55;cursor:default}svg{width:20px;height:20px;display:block;flex-shrink:0}p{margin:0}[hidden]{display:none!important}::selection{background:#24627c;color:white}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.room-backdrop{position:fixed;inset:0;z-index:-1;background:linear-gradient(#02050a22,#02050a33),url('/assets/room-night.webp') center top/cover no-repeat;pointer-events:none}.site-shell{width:min(1000px,calc(100% - 80px));min-height:100vh;margin:0 auto;background:linear-gradient(90deg,#06090df8,#070b0ff7 45%,#06090df8);border-inline:1px solid #172029;box-shadow:0 0 50px 18px #000b}.wrap{width:calc(100% - 66px);max-width:none;margin-inline:auto}.eyebrow{font:11px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.skip-link{position:fixed;top:-70px;left:20px;padding:12px 18px;background:var(--accent);color:var(--paper);z-index:1000}.skip-link:focus{top:12px}.site-header{position:relative;padding-top:25px;z-index:5}.header-inner{min-height:95px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:25px}.masthead{min-width:0}.brand{display:flex;align-items:center;text-decoration:none;gap:15px;width:max-content;max-width:100%}.wordmark{width:clamp(240px,32vw,430px);height:auto;display:block;filter:drop-shadow(0 0 5px #2dd5ff77) drop-shadow(0 0 15px #00b7ff33)}.brand-cat{width:53px;height:58px;object-fit:contain;filter:drop-shadow(0 0 6px #3bd6ff66)}.brand-tagline{font:12px/1.7 var(--mono);color:var(--accent);margin-top:7px;letter-spacing:.015em}.header-nav{display:flex;gap:20px;font:12px var(--sans);align-items:center;flex-shrink:0}.header-nav a{position:relative;text-decoration:none;padding:12px 0;color:#b6becc}.header-nav a:hover,.header-nav a[aria-current=page]{color:var(--accent);text-shadow:0 0 12px #46ceff99}.header-nav a[aria-current=page]:after{content:'';position:absolute;bottom:2px;left:-4px;right:-4px;height:1px;background:var(--accent);box-shadow:0 0 10px 1px #27bfff77}.reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;transform-origin:left;transform:scaleX(0);background:var(--accent);box-shadow:0 0 12px #3adfff;z-index:100;pointer-events:none}.about-panel{position:relative;isolation:isolate;display:grid;grid-template-columns:108px minmax(0,1fr);gap:23px;align-items:start;padding:24px;border:1px solid #314354;border-radius:13px;background:linear-gradient(125deg,#0c131ad9,#090e13d9);overflow:hidden;box-shadow:inset 0 1px #ffffff03;margin-bottom:30px}.profile-image{width:108px;height:108px;object-fit:cover;border:1px solid #394956;border-radius:5px;position:relative;z-index:2}.about-copy{position:relative;z-index:2}.about-copy h2{font:600 25px/1.2 var(--serif);color:#bceeff;margin:0 0 10px;text-shadow:0 0 15px #37bfee22}.about-copy p{font:14px/1.7 var(--serif);color:#bbc2ce;margin-bottom:11px}.about-copy p:last-child{margin-bottom:0;color:#8e9aaa}.interest-orbit{position:absolute;right:20px;bottom:20px;z-index:0;display:flex;gap:12px;align-items:center;opacity:.13;pointer-events:none}.interest-orbit ul{border-left:1px solid var(--accent);list-style:none;margin:0;padding:0 0 0 12px;font:8px/1.9 var(--mono);letter-spacing:.08em;color:var(--accent)}.wire-globe{display:block;width:130px;height:130px;border:1px solid var(--accent);border-radius:50%;background:repeating-linear-gradient(0deg,transparent 0 25px,#79e5ff99 25px 26px);transform:rotate(-15deg)}.wire-globe:before,.wire-globe:after{content:'';position:absolute;inset:0 28px;border:1px solid var(--accent);border-radius:50%}.wire-globe:after{inset:0 48px}.home-post{border-top:1px solid var(--line);padding:17px 0 32px}.feature-label{display:flex;align-items:center;justify-content:space-between;gap:18px}.feature-label .eyebrow{color:var(--pink);text-shadow:0 0 10px #ff4fa933}.feature-label time{font:10px var(--mono);letter-spacing:.09em;color:var(--muted);text-transform:uppercase}.home-post h1{font:600 clamp(30px,3.15vw,44px)/1.13 var(--serif);letter-spacing:-1.15px;margin:12px 0 9px}.home-post h1 a{text-decoration:none}.home-post h1 a:hover{text-shadow:0 0 20px #79e5ff22}.article-subtitle{font:21px/1.45 var(--serif);color:#c5cbd6;max-width:900px}.article-art{margin:20px 0 20px}.article-art img{display:block;width:100%;height:auto;aspect-ratio:4.1;object-fit:cover;object-position:center 53%;border:1px solid #344250;border-radius:4px}.article-art figcaption{font:9px/1.5 var(--mono);color:#7f8c9a;text-align:right;margin-top:6px}.prose{font:19px/1.8 var(--serif);overflow-wrap:break-word}.prose p{margin:0 0 23px}.prose>p:first-child{display:flow-root}.prose>p:first-child:first-letter{float:left;font:89px/.8 var(--serif);color:var(--accent);text-shadow:0 0 12px #00c3ff88,0 0 30px #00c3ff33;padding:8px 10px 0 0}.prose h2{font:500 30px/1.3 var(--serif);letter-spacing:-.4px;margin:50px 0 23px;scroll-margin-top:24px}.prose h2:first-letter{color:var(--accent);text-shadow:0 0 15px #51d8ff66}.prose blockquote{font:30px/1.4 var(--serif);color:var(--accent);border-left:2px solid var(--accent);padding:7px 0 7px 22px;margin:32px 0;text-shadow:0 0 25px #35ceff15}.prose .reference{font:11px var(--mono);vertical-align:super;color:var(--accent);padding:2px 4px;background:var(--wash);border-radius:3px;white-space:nowrap;text-decoration:none}.prose .closing{font:26px/1.6 var(--serif);color:#bcefff;border-top:1px solid var(--line);padding-top:29px;margin-top:35px}.home-excerpt{font-size:18px;line-height:1.65}.home-excerpt p{margin-bottom:15px}.continue-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0}.text-link{display:inline-flex;align-items:center;gap:10px;font:12px var(--mono);color:var(--accent);text-decoration:none}.text-link:hover{text-shadow:0 0 14px #5ad6ff88}.text-link svg{width:16px}.read-time{font:10px/1.7 var(--mono);color:var(--muted)}.reaction-row{display:flex;align-items:center;gap:17px;flex-wrap:wrap;margin-top:20px}.like-button,.share-button,.small-share{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #344251;border-radius:8px;background:#0d131a99;min-height:42px;padding:10px 15px;font-size:12px;color:#b7c2d2}.like-button{border-color:transparent;background:transparent;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}
.like-button[aria-pressed=true]{color:var(--pink)}
@media(hover:hover){.like-button:hover{color:var(--pink);border-color:#ff78b788;box-shadow:0 0 18px #ff78b722}}
.like-button:focus-visible{color:var(--pink);border-color:#ff78b788;box-shadow:0 0 18px #ff78b722;outline-color:var(--pink)}.like-button[aria-pressed=true] svg{fill:var(--pink);stroke:var(--pink);filter:drop-shadow(0 0 7px #ff4a9c99)}.like-button .count{font-variant-numeric:tabular-nums}.share-button{margin-left:auto}.share-button:hover,.small-share:hover{border-color:#79e5ff77;color:var(--accent);box-shadow:0 0 17px #79e5ff14}.view-total{display:flex;align-items:center;gap:8px;font-size:12px;color:#a8b4c8}.view-total svg{width:17px;height:17px}.compact-reactions{padding:10px 0 3px}.compact-reactions .like-button{color:var(--pink);font-size:14px}.compact-reactions .like-button svg{width:23px;height:23px}.compact-reactions .view-total{border-left:1px solid var(--line);padding-left:18px}.counter-note{font:10px/1.8 var(--mono);color:#7f8d9c;margin-top:10px}.feedback{font:12px/1.7 var(--sans);color:var(--accent);margin-top:13px}.feedback:empty{display:none}.site-footer{border-top:1px solid var(--line);padding:25px 0 28px}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:10px;color:#97a4b5;line-height:1.8}.footer-mark{font-size:11px;color:#bcc7d5}.footer-tagline{display:block;font:9px/1.8 var(--mono);margin-top:5px}.footer-links{display:flex;gap:18px;align-items:center}.link-button{font:inherit;color:inherit;background:none;border:0;text-decoration:none;padding:0}.link-button:hover{color:var(--accent)}.article-hero{padding-top:12px}.back-link{font-size:12px;display:inline-flex;gap:8px;align-items:center;text-decoration:none;color:var(--muted);margin-bottom:29px}.back-link svg{width:15px}.post-kicker{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.tag{font:10px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--accent);border:1px solid #79e5ff33;border-radius:4px;padding:4px 8px;background:#79e5ff07}.draft-status{font-size:9px;letter-spacing:.06em;color:#b69dae}.article-hero h1{font:600 clamp(34px,3.5vw,48px)/1.14 var(--serif);letter-spacing:-1px;margin:18px 0 16px}.article-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px;color:var(--muted);font-size:11px}.byline{display:flex;align-items:center;gap:10px;text-decoration:none}.byline strong{font-weight:500;color:#d7e9f6}.avatar{border:1px solid #394d60;border-radius:50%;object-fit:cover;width:38px;height:38px;flex-shrink:0}.byline .avatar{width:30px;height:30px}.small-share{margin-left:auto;min-height:34px;padding:7px 10px}.small-share svg{width:15px;height:15px}.article-page>.prose{max-width:760px;margin-inline:auto}.mobile-toc{padding:14px 0 20px;border-bottom:1px solid var(--line);margin-bottom:29px}.mobile-toc summary{font:11px var(--mono);color:var(--accent);cursor:pointer}.toc{margin-top:16px;display:flex;flex-direction:column;border-left:1px solid var(--line)}.toc a{font:12px/1.7 var(--sans);color:var(--muted);text-decoration:none;padding:6px 14px;border-left:2px solid transparent;margin-left:-1px}.toc a:hover,.toc a[aria-current=true]{color:var(--accent);border-left-color:var(--accent)}.article-endmark{font:10px var(--mono);letter-spacing:.1em;color:#8896a7;margin:40px 0 27px}.reaction-panel{padding:27px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:28px}.reaction-heading{font:24px var(--serif);margin:0 0 9px}.reaction-panel>p{font-size:12px;line-height:1.8;color:var(--muted)}.sources{border-bottom:1px solid var(--line);padding-bottom:25px;scroll-margin-top:25px}.sources summary{display:flex;align-items:center;gap:20px;list-style:none;cursor:pointer;font-size:13px}.sources summary::-webkit-details-marker{display:none}.sources summary:after{content:'+';font-size:21px;color:var(--accent)}.sources[open] summary:after{content:'−'}.sources summary small{margin-left:auto;font-size:10px;color:var(--muted)}.sources ol{padding-left:23px;margin:23px 0 0}.sources li{font-size:12px;line-height:1.8;padding-left:6px;margin-bottom:18px;scroll-margin-top:30px;overflow-wrap:anywhere}.sources li::marker{color:var(--accent);font:11px var(--mono)}.sources a{text-decoration:none}.source-publisher{display:block;font:9px/1.8 var(--mono);color:var(--muted);margin-top:4px}.article-author{display:flex;gap:15px;align-items:start;padding:29px 0 44px}.article-author h3{font-size:13px;font-weight:500;margin:0 0 8px;color:var(--accent)}.article-author p{font:13px/1.8 var(--serif);color:var(--muted)}.article-author a{display:inline-block;margin-top:12px;font-size:12px;text-decoration:none;color:var(--accent)}.page-section{padding:25px 0 70px;min-height:65vh}.page-section>h1{font:500 48px var(--serif);margin:14px 0 22px;color:#e6eff9}.page-section .about-panel{margin-top:30px}.page-intro{font:19px/1.7 var(--serif);color:var(--muted);margin-bottom:33px}.archive-entry{display:grid;grid-template-columns:130px 1fr;gap:24px;padding:30px 0;border-block:1px solid var(--line)}.archive-entry>time{font:11px/1.8 var(--mono);color:var(--muted)}.archive-entry h2{font:500 28px/1.3 var(--serif);margin:10px 0 15px}.archive-entry h2 a{text-decoration:none}.archive-entry p{font:16px/1.7 var(--serif);color:var(--muted);margin-bottom:17px}.link-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.link-cards>a{display:block;padding:24px;border:1px solid var(--line);border-radius:10px;background:var(--surface);text-decoration:none}.link-cards>a:hover{border-color:#79e5ff66;box-shadow:0 0 20px #79e5ff0c}.link-cards span{color:var(--accent);font:20px var(--serif)}.link-cards p{margin-top:15px;font-size:13px;line-height:1.8;color:var(--muted)}.icon-button{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:none}.site-dialog{width:calc(100% - 40px);max-width:490px;max-height:85dvh;overflow:auto;padding:28px;border:1px solid #3a5365;border-radius:12px;background:#0b1119;color:var(--ink);box-shadow:0 20px 100px #000b}.site-dialog::backdrop{background:#020509bb;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}.dialog-heading h2{font:24px var(--serif);margin:0;color:#c8f1ff}.site-dialog p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:15px}.share-actions{display:grid;gap:10px;margin-top:23px}.share-actions button{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:6px;background:#111c29;text-align:left;font-size:13px}.share-actions button:hover{border-color:var(--accent)}.site-dialog .dialog-status{font-size:12px;color:var(--accent);margin:15px 0 0}.copy-fallback{width:100%;margin-top:12px;border:1px solid var(--line);background:#070c12;color:var(--ink);padding:10px;font-size:12px}
@media(min-width:1700px){.site-shell{width:1050px}.wordmark{width:460px}.header-nav{gap:24px}.brand-tagline{font-size:13px}}
@media(max-width:1200px){.site-shell{width:calc(100% - 120px)}.wordmark{width:350px}.brand-cat{width:46px;height:50px}.header-nav{gap:16px}.brand-tagline{font-size:10px}}
@media(max-width:1000px){.site-shell{width:calc(100% - 60px)}.wrap{width:calc(100% - 50px)}.header-inner{flex-wrap:wrap;gap:5px;justify-content:flex-start}.header-nav{gap:28px;margin-top:8px}.wordmark{width:390px}.brand-tagline{font-size:12px}.site-header{padding-top:22px}.header-inner{padding-bottom:21px}.about-panel{grid-template-columns:94px 1fr;padding:21px;gap:20px}.profile-image{width:94px;height:94px}.about-copy p{font-size:14px}.home-post h1{font-size:38px}}
@media(max-width:700px){.site-shell{width:100%;border:0;box-shadow:none;background:#070b0ff5}.wrap{width:calc(100% - 38px)}.room-backdrop{background-position:left top;opacity:.25}.header-inner{padding-bottom:22px}.wordmark{width:clamp(235px,65vw,390px)}.brand-cat{width:43px;height:48px}.brand{gap:12px}.brand-tagline{font-size:10px;margin-top:7px;max-width:100%;line-height:1.8}.header-nav{width:100%;gap:26px;font-size:12px;margin-top:10px}.header-nav a{padding:10px 0}.about-panel{padding:20px;gap:16px;grid-template-columns:65px minmax(0,1fr);border-radius:10px;margin-bottom:26px}.profile-image{width:65px;height:65px}.about-copy h2{font-size:24px;margin-bottom:13px}.about-copy p{font-size:14px;line-height:1.8}.interest-orbit{display:none}.home-post h1{font-size:34px;letter-spacing:-.6px;line-height:1.15}.feature-label time{font-size:9px}.feature-label .eyebrow{font-size:10px}.article-subtitle{font-size:19px;line-height:1.5}.article-art{margin-top:20px}.article-art img{aspect-ratio:2.7}.article-art figcaption{font-size:8px;text-align:left}.home-excerpt{font-size:17px}.continue-row{flex-wrap:wrap;gap:15px}.continue-row .read-time{font-size:9px}.reaction-row{gap:12px}.like-button,.share-button{padding:10px 12px;font-size:11px}.view-total{font-size:11px}.compact-reactions .view-total{padding-left:12px}.counter-note{font-size:9px}.footer-inner{flex-wrap:wrap;gap:21px}.footer-links{gap:24px}.article-hero h1{font-size:37px;letter-spacing:-.5px}.article-hero>.article-subtitle{font-size:19px}.article-meta{gap:12px;font-size:10px}.article-meta .read-time{font-size:9px}.prose{font-size:18px;line-height:1.85}.prose h2{font-size:27px}.prose blockquote{font-size:28px}.prose .closing{font-size:24px}.article-author p{font-size:13px}.archive-entry{grid-template-columns:1fr;gap:12px}.archive-entry h2{font-size:26px}.link-cards{grid-template-columns:1fr}.page-section>h1{font-size:40px}.site-dialog{padding:22px}}
@media(max-width:410px){.about-panel{display:block}.profile-image{float:left;margin:0 15px 10px 0}.about-copy{position:static}.about-copy h2{padding-top:3px;margin-bottom:15px}.about-copy p:first-of-type{clear:both;padding-top:7px}.home-post h1{font-size:31px}.article-hero h1{font-size:33px}.brand-tagline{font-size:9px;letter-spacing:-.02em}.brand-cat{width:34px;height:40px}.header-nav{gap:24px}.view-total{gap:5px}.compact-reactions{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.site-header,.site-footer,.room-backdrop,.mobile-toc,.reaction-panel,.article-author,.back-link,.small-share,.site-dialog{display:none!important}.site-shell,.wrap{width:100%;background:white;border:0;box-shadow:none}.prose{font-size:11pt;line-height:1.6}.prose h2{font-size:18pt;break-after:avoid}.prose p{orphans:3;widows:3}.prose>p:first-child:first-letter{float:none;font:inherit;text-shadow:none;padding:0}.sources ol{display:block!important}body{background:white;color:black}:root{--ink:#000;--muted:#444;--accent:#333;--line:#bbb;--wash:#eee}.article-art img{max-height:130px}.sources a:after{content:' (' attr(href) ')';font-size:8pt;overflow-wrap:anywhere}}
/* Header lockup: the cat sits beside both title and strapline. */
.brand{display:grid;grid-template-columns:minmax(0,auto) 76px;grid-template-rows:auto auto;gap:7px 15px;align-items:center}.wordmark{grid-column:1;grid-row:1}.brand-tagline{grid-column:1;grid-row:2;margin:0;display:block}.brand-cat{grid-column:2;grid-row:1 / 3;align-self:center;width:76px;height:82px}.header-nav{gap:24px}
.note-globe{position:absolute;right:12px;top:50%;width:190px;height:190px;transform:translateY(-50%);color:#67bbdf;opacity:.13;pointer-events:none;z-index:-1}.note-globe img{display:block;width:100%;height:100%}.about-panel .note-globe{width:235px;height:235px;right:5px;opacity:.15}.intro-note,.short-note{position:relative;isolation:isolate;overflow:hidden;border:1px solid #2d424f;border-radius:11px;background:linear-gradient(120deg,#0d161dd9,#090f14d9);padding:25px 29px;margin-bottom:29px}.intro-note p,.short-note p{max-width:760px;font:17px/1.85 var(--serif);color:#bcc7d4;position:relative;z-index:1;margin:0}.short-note{display:block;margin:28px 0 40px}.short-note a{position:relative;z-index:1;margin-top:13px}.article-page>.prose{padding-top:15px}.about-panel{isolation:isolate}.about-copy{z-index:1}.older-posts{padding:28px 0 44px;border-top:1px solid var(--line)}.older-posts>h2{color:var(--accent);margin:0 0 14px}.older-post{padding:24px 0;border-bottom:1px solid var(--line)}.older-post time{font:10px var(--mono);color:var(--muted)}.older-post h3{font:500 29px/1.3 var(--serif);margin:11px 0}.older-post h3 a{text-decoration:none}.older-post p{font:17px/1.7 var(--serif);color:var(--muted);margin-bottom:16px}
@media(max-width:1000px){.brand{grid-template-columns:minmax(0,auto) 67px}.brand-cat{width:67px;height:75px}}
@media(max-width:700px){.brand{grid-template-columns:minmax(0,auto) 52px;gap:5px 10px}.brand-cat{width:52px;height:60px}.wordmark{width:clamp(215px,64vw,390px)}.brand-tagline{font-size:9px;letter-spacing:-.025em}.header-nav{gap:28px}.intro-note,.short-note{padding:21px 23px}.intro-note p,.short-note p{font-size:16px;line-height:1.85}.note-globe{width:170px;height:170px;right:-22px;opacity:.16}.about-panel .note-globe{display:block;width:220px;height:220px;right:-40px;top:72%;opacity:.12}.older-post h3{font-size:26px}}
@media(max-width:370px){.brand{grid-template-columns:minmax(0,auto) 44px;gap:5px 7px}.brand-cat{width:44px;height:55px}.wordmark{width:clamp(200px,65vw,240px)}.brand-tagline{font-size:8px}}
@media print{.note-globe{display:none!important}}

/* Selected generated artwork: keep the globe quiet behind the prose. */
.brand-cat{object-fit:contain}
.note-globe{opacity:.2}
.about-panel .note-globe{opacity:.2}
@media(max-width:600px){.note-globe,.about-panel .note-globe{opacity:.14}}

/* Globe extends beyond the lower-right corner of each note panel. */
.note-globe{width:250px;height:250px;right:-48px;top:auto;bottom:-75px;transform:none}
.about-panel .note-globe{width:320px;height:320px;right:-65px;top:auto;bottom:-85px}
@media(max-width:600px){.note-globe{width:250px;height:250px;right:-65px;top:auto;bottom:-65px}.about-panel .note-globe{width:300px;height:300px;right:-75px;top:auto;bottom:-80px}}

.feature-label .eyebrow{display:inline-flex;align-items:center;gap:8px}
.feature-label .featured-star{width:11px;height:11px;flex:none}

/* A small directory of Macjam's online world. */
.directory-page{padding-bottom:70px}.directory-intro{max-width:740px;margin-bottom:42px}.directory-intro .eyebrow{color:var(--accent)}.directory-intro h1{font:500 56px/1.12 var(--serif);letter-spacing:-.035em;margin:14px 0 18px}.directory-intro .page-intro{max-width:690px;font-size:19px;line-height:1.75}.directory-section{--directory-accent:#8de4f4;margin-top:36px}.directory-section-social{--directory-accent:#b8a2ff}.directory-section-communities{--directory-accent:#8bbbe8}.directory-section-contact{--directory-accent:#f2b6ca}.directory-section-heading{display:flex;align-items:center;gap:13px;margin-bottom:18px}.directory-category-mark{color:var(--directory-accent);width:38px;height:38px;display:grid;place-items:center;border:1px solid #34414d;border-radius:10px;background:#101923}.directory-category-mark svg{width:19px;height:19px}.directory-section-heading h2{font:500 25px/1.3 var(--serif);margin:0 0 5px;color:var(--ink)}.directory-section-heading p{font:12px/1.6 var(--sans);color:var(--muted)}.directory-signal{flex:1;min-width:20px;height:1px;background:linear-gradient(90deg,#46515e88,transparent);margin-left:12px;position:relative}.directory-signal:before{content:'';position:absolute;left:0;top:-2px;width:5px;height:5px;background:var(--directory-accent);border-radius:50%;opacity:.65;box-shadow:0 0 8px var(--directory-accent)}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;align-items:stretch}.directory-card{--card-accent:var(--directory-accent);position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid #2c3946;border-radius:13px;background:linear-gradient(145deg,#111b24dd,#0a1017ee 75%);box-shadow:inset 0 1px 0 #ffffff04;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;overflow:hidden}.directory-card:hover,.directory-card:focus-within{border-color:var(--card-accent);box-shadow:0 0 22px -12px var(--card-accent),inset 0 1px 0 #ffffff09;transform:translateY(-2px)}.directory-destination{display:flex;flex:1;flex-direction:column;text-decoration:none;padding:22px 20px 20px;color:var(--ink);border-radius:12px}.directory-destination:hover{color:var(--ink)}.directory-destination:focus-visible{outline-offset:-4px}.directory-card-top{display:flex;align-items:center;gap:12px;margin-bottom:19px;min-height:40px}.directory-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid #3c4b5e88;border-radius:12px;background:#0a101aaa;color:var(--card-accent)}.directory-mark svg{width:24px;height:24px}.directory-outbound{margin-left:auto;color:#718092}.directory-outbound svg{width:15px;height:15px}.directory-card h3{font:600 18px/1.35 var(--sans);margin:0 0 6px;letter-spacing:-.015em}.directory-handle{font:11px/1.65 var(--mono);color:var(--card-accent);overflow-wrap:anywhere;margin:0 0 17px}.directory-description{font:15px/1.75 var(--serif);color:#bac3cf;margin:0 0 24px}.directory-route{margin-top:auto;padding-top:16px;border-top:1px solid #2c394699}.directory-route>span{display:block;font:600 12px/1.6 var(--sans);color:var(--card-accent)}.directory-route small{display:block;font:10px/1.6 var(--mono);color:#a3adbb;margin-top:6px;overflow-wrap:anywhere}.directory-copy{border-top:1px solid #2c394699;margin:0 20px;padding:13px 0 16px}.directory-copy button{display:inline-flex;gap:7px;align-items:center;min-height:36px;padding:6px 10px;border:1px solid #48566b;border-radius:7px;background:#192130;color:#d4dceb;font:12px/1.4 var(--sans)}.directory-copy button:hover{border-color:var(--card-accent);color:var(--card-accent)}.directory-copy button svg{width:14px;height:14px}.copy-status{display:block;font:11px/1.5 var(--sans);color:var(--card-accent)}.copy-status:not(:empty){margin-top:8px}.directory-copy-fallback{width:100%;margin-top:10px;background:#080d15;border:1px solid #52677f;border-radius:5px;padding:8px;color:var(--ink);font:12px/1.4 var(--mono)}.directory-youtube{--card-accent:#ff949d}.directory-quantum{--card-accent:#c1a2ff}.directory-discord{--card-accent:#acb2ff}.directory-bluesky{--card-accent:#85c3ff}.directory-twitter{--card-accent:#cddbe8}.directory-section-communities .directory-grid{grid-template-columns:1fr}.directory-awmc .directory-destination{display:grid;grid-template-columns:1fr 240px;column-gap:36px;padding:26px}.directory-awmc .directory-card-top,.directory-awmc h3,.directory-awmc .directory-handle,.directory-awmc .directory-description{grid-column:1}.directory-awmc .directory-description{margin-bottom:0;max-width:600px}.directory-awmc .directory-route{grid-column:2;grid-row:1 / 5;align-self:center;border-top:0;border-left:1px solid #344356;padding:20px 0 20px 24px;margin:0}.directory-badge{font:9px/1.5 var(--mono);letter-spacing:.07em;color:var(--card-accent);border:1px solid #3a5065;border-radius:4px;padding:5px 7px}.directory-section-contact .directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-sponsors{--card-accent:#f4b5cf;background:radial-gradient(ellipse at 0 0,#63384c33,transparent 75%),linear-gradient(145deg,#1c1822,#0c1119)}.directory-sponsors .directory-mark{color:#f5acc8;border-color:#77516680;background:#3b243144}.directory-email{--card-accent:#edd1ad}.directory-email .directory-route small{font-size:12px;color:#d4c6b6}
@media(max-width:1000px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-awmc .directory-destination{grid-template-columns:1fr 190px;column-gap:20px}.directory-badge{font-size:8px}}
@media(max-width:650px){.directory-intro{margin-bottom:32px}.directory-intro .page-intro{font-size:18px}.directory-section{margin-top:30px}.directory-grid,.directory-section-contact .directory-grid{grid-template-columns:1fr;gap:14px}.directory-section-heading{gap:11px}.directory-section-heading h2{font-size:23px}.directory-section-heading p{font-size:12px}.directory-signal{display:none}.directory-destination{padding:22px}.directory-description{font-size:16px;line-height:1.8;margin-bottom:21px}.directory-card-top{margin-bottom:15px}.directory-card h3{font-size:20px}.directory-handle{font-size:12px}.directory-route>span{font-size:13px}.directory-route small{font-size:11px}.directory-copy{margin-inline:22px}.directory-copy button{min-height:42px}.directory-awmc .directory-destination{display:flex;padding:22px}.directory-awmc .directory-description{margin-bottom:22px}.directory-awmc .directory-route{border-left:0;border-top:1px solid #344356;padding:16px 0 0;align-self:stretch}.directory-badge{font-size:8px}.directory-page{padding-bottom:45px}}
@media(prefers-reduced-motion:reduce){.directory-card{transition:none}.directory-card:hover,.directory-card:focus-within{transform:none}}
@media print{.directory-copy,.directory-outbound,.directory-signal{display:none}.directory-card{break-inside:avoid;background:none!important;box-shadow:none}.directory-grid{grid-template-columns:repeat(2,1fr)}}

@media(max-width:650px){.directory-intro h1{font-size:43px}}

/* Supplied brand artwork; preserve full colour and proportions. */
.directory-logo-mark{width:42px;height:42px;flex:none;padding:6px;overflow:hidden}
.directory-logo-mark img{display:block;width:100%;height:100%;object-fit:contain}
.directory-quantum .directory-logo-mark{background:#eeeae2;border-color:#aca99f}
.directory-awmc .directory-logo-mark{padding:3px;background:#0a101aaa;border:1px solid #3c4b5e88;border-radius:12px}


/* Lavender at the left blends into the existing cyan; the cat stays cyan. */
.brand{--brand-gradient:linear-gradient(90deg,#bd9ff1 0%,#a5c4f7 50%,#89e5ff 100%)}
.wordmark{filter:none;overflow:visible}
@supports (background-clip:text) or (-webkit-background-clip:text){
 .brand-tagline{position:relative;isolation:isolate;background:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}
 .brand-tagline:before{content:attr(data-text);position:absolute;inset:0;background:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;filter:blur(2px);opacity:.5;z-index:-1;pointer-events:none}
}
@media print{.brand-tagline:before{display:none}}

@media(prefers-reduced-motion:reduce){.like-button{transition:none}}

/* Scale with the surrounding type so the float wraps two lines in both excerpts and full posts. */
@media screen{.prose>p:first-child:first-letter{font-size:3.5em;line-height:.8;padding:.05em .12em 0 0}}

/* Artwork covers the viewport; the document stays inside the device's safe area. */
@supports(padding-left:env(safe-area-inset-left)){
 :root{--safe-area-left:env(safe-area-inset-left,0px);--safe-area-right:env(safe-area-inset-right,0px);--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px)}
 body{padding:var(--safe-area-top) var(--safe-area-right) var(--safe-area-bottom) var(--safe-area-left)}
 .skip-link{left:max(20px,var(--safe-area-left));top:calc(-70px - var(--safe-area-top))}
 .skip-link:focus{top:max(12px,var(--safe-area-top))}
}
