@font-face{font-family:Monocraft;src:url('assets/monocraft.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{color-scheme:dark;--bg:#101113;--deep:#0b0c0e;--surface:#1d1f24;--raised:#292d35;--border:#383b43;--text:#f2f3f5;--muted:#afb4c1;--accent:#e8eaf0;--bright:#fff;--green:#65d982;--gold:#ffd363;--font:Monocraft,monospace}
*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.65 var(--font);font-variant-ligatures:none}button,input,select,textarea{font:inherit}a{color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--bright);outline-offset:4px}button{cursor:pointer}.container{max-width:1180px;margin:auto;padding-inline:24px}.site-header{border-bottom:1px solid var(--border);background:var(--deep);position:sticky;top:0;z-index:20}.header-inner{min-height:74px;display:flex;align-items:center;gap:36px}.brand{display:flex;align-items:center;margin-right:auto}nav{display:flex;gap:8px;align-items:center}nav a,.button,button{border:1px solid #08090b;box-shadow:inset 0 0 0 1px var(--border);background:var(--surface);padding:7px 13px;color:var(--text);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;line-height:1.4;border-radius:0;font-weight:400}nav a:hover,.button:hover,button:hover{background:var(--raised);box-shadow:inset 0 0 0 1px var(--muted)}nav a[aria-current=page]{box-shadow:inset 0 0 0 1px var(--bright);color:var(--bright)}nav .download-nav{color:var(--gold);box-shadow:inset 0 0 0 1px #80672d}.edition{font-size:10px;color:var(--muted)}.primary{background:var(--accent);color:var(--bg);box-shadow:inset 0 -3px #aeb2ba,inset 0 0 0 1px var(--bright)}.primary:hover{background:var(--bright);color:var(--bg)}.button.large{padding:12px 19px}.button.green{background:#223a29;color:var(--green);box-shadow:inset 0 0 0 1px #4d9a61}.skip{position:fixed;top:-60px;left:12px;z-index:50;background:white;color:black;padding:10px}.skip:focus{top:10px}h1,h2,h3,h4{font-weight:400;line-height:1.35;margin:0}h1{font-size:36px;letter-spacing:-1px}h2{font-size:23px}h3{font-size:16px}p{margin:13px 0}small,.small{font-size:11px}.muted{color:var(--muted)}.gold{color:var(--gold)}.green-text{color:var(--green)}.tag{display:inline-block;background:var(--accent);color:var(--bg);padding:3px 8px;font-size:10px;line-height:1.4;margin-bottom:17px}.tag.dark{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.tag.green{background:var(--green);color:#101113}.hero{border-bottom:1px solid var(--border);background:var(--deep)}.hero-inner{min-height:535px;display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:40px;padding-block:64px}.hero h1{font-size:46px;line-height:1.3;max-width:650px}.hero .intro{max-width:590px;color:var(--muted);font-size:15px;line-height:1.8;margin:20px 0 27px}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hero-note{font-size:11px;color:var(--muted);margin-top:20px}.hero-note span{color:var(--green)}.compat-strip{border-bottom:1px solid var(--border);background:var(--surface)}.compat-inner{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;padding-block:15px;font-size:12px}.compat-inner strong{font-weight:400;color:var(--bright)}.compat-inner span{color:var(--muted)}.section{padding-block:58px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:26px}.section-head p{color:var(--muted);max-width:640px;margin:10px 0 0}.section-head a{font-size:12px;white-space:nowrap}.feature-table{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);background:var(--surface)}.feature{padding:24px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.feature:nth-child(3n){border-right:0}.feature:nth-last-child(-n+3){border-bottom:0}.feature .number{display:block;color:var(--muted);font-size:11px;margin-bottom:13px}.feature p{font-size:12px;color:var(--muted);margin-bottom:0}.split-section{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:center}.section.alternate{background:var(--deep);border-block:1px solid var(--border)}.chapter-demo{border:1px solid var(--border);background:var(--surface)}.panel-bar{padding:11px 16px;background:var(--raised);border-bottom:1px solid var(--border);font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.chapter-step{display:flex;align-items:center;gap:15px;padding:17px 18px;border-bottom:1px solid var(--border)}.chapter-step:last-child{border-bottom:0}.step-mark{width:30px;height:30px;border:1px solid var(--border);display:grid;place-items:center;color:var(--muted);flex-shrink:0}.chapter-step.done .step-mark{color:var(--green);border-color:var(--green)}.chapter-step.active{background:var(--raised);border-left:2px solid var(--accent)}.chapter-step small{display:block;color:var(--muted);margin-top:3px}.chapter-step>span:last-child{margin-left:auto;font-size:10px;color:var(--muted)}.text-links{display:grid;gap:14px;margin:25px 0 0}.text-links a{text-decoration:none;border-bottom:1px solid var(--border);padding-bottom:12px;display:flex;justify-content:space-between}.text-links a:hover{color:var(--gold)}.page-hero{background:var(--deep);border-bottom:1px solid var(--border)}.page-hero .container{padding-block:45px}.page-hero p{max-width:760px;color:var(--muted);margin-bottom:0}.page-hero .tag{margin-bottom:12px}.callout{padding:18px 20px;border:1px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:24px}.callout p{margin:4px 0;font-size:12px;color:var(--muted)}.callout strong{font-weight:400}.callout.warning{border-color:#80672d}.callout.warning strong{color:var(--gold)}.wiki-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:36px;padding-block:30px}.wiki-sidebar{position:sticky;top:105px;align-self:start;max-height:calc(100vh - 135px);overflow:auto;padding-right:14px}.wiki-sidebar h2{font-size:10px;color:var(--muted);margin:24px 0 8px;text-transform:uppercase}.wiki-sidebar h2:first-child{margin-top:0}.wiki-sidebar a{display:block;text-decoration:none;font-size:12px;padding:7px 10px;border-left:2px solid transparent;color:var(--muted)}.wiki-sidebar a:hover{background:var(--surface);color:var(--text)}.wiki-sidebar a[aria-current=page]{border-left-color:var(--accent);background:var(--surface);color:var(--bright)}input,select{color:var(--text);border:1px solid var(--border);background:var(--deep);padding:11px 13px;border-radius:0;min-width:0}.search-label{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}.wiki-search{width:100%;margin-bottom:24px}.wiki-groups{display:grid;grid-template-columns:1fr 1fr;gap:25px}.wiki-group{border:1px solid var(--border);background:var(--surface)}.wiki-group h2{font-size:16px;padding:18px;border-bottom:1px solid var(--border)}.wiki-item{display:block;text-decoration:none;padding:16px 18px;border-bottom:1px solid var(--border)}.wiki-item:last-child{border:0}.wiki-item:hover{background:var(--raised)}.wiki-item strong{font-size:13px;font-weight:400}.wiki-item p{font-size:11px;color:var(--muted);margin:5px 0 0}.wiki-article{min-width:0}.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:11px;margin-bottom:24px}.wiki-article h1{font-size:30px}.article-lead{color:var(--muted);border-bottom:1px solid var(--border);padding-bottom:25px;margin-bottom:30px}.article-body{font-size:13px;line-height:1.85;overflow-wrap:anywhere}.article-body h2{font-size:20px;margin:32px 0 14px}.article-body h3{font-size:15px;margin:25px 0 10px}.article-body h2:first-child{margin-top:0}.article-body p{margin:14px 0}.article-body ul,.article-body ol{padding-left:26px}.article-body li{margin:9px 0}.article-body a{color:var(--accent);text-underline-offset:4px}.article-body table,.download-table{border-collapse:collapse;width:100%;font-size:11px;background:var(--surface);margin:20px 0}.article-body th,.article-body td,.download-table th,.download-table td{border:1px solid var(--border);padding:12px;text-align:left;vertical-align:top}.article-body th,.download-table th{background:var(--raised);font-weight:400;color:var(--muted)}.table-scroll{overflow:auto}.article-body pre{overflow:auto;white-space:pre;background:var(--deep);border:1px solid var(--border);padding:18px;font:12px/1.8 var(--font)}code{font:inherit;background:var(--deep);border:1px solid var(--border);padding:1px 4px;color:var(--accent)}pre code{border:0;padding:0}.article-body blockquote{border-left:2px solid var(--gold);padding:5px 18px;margin:20px 0;background:var(--surface);color:var(--muted)}.article-nav{border-top:1px solid var(--border);margin-top:35px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:12px}.empty-search{padding:45px;border:1px solid var(--border);color:var(--muted)}.map-connect{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:start;margin-bottom:32px}.map-connect .panel{padding:25px}.panel{border:1px solid var(--border);background:var(--surface)}.panel p{color:var(--muted);font-size:12px}.connect-form label{display:block;font-size:11px;color:var(--muted);margin:15px 0 8px}.connect-form input{width:100%}.connect-form .actions{margin-top:13px}.form-message{font-size:11px;min-height:20px;color:var(--gold)}.map-preview{width:100%;height:900px;border:1px solid var(--border);background:var(--bg);display:block}.demo-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:14px}.demo-head h2{font-size:20px}.demo-head p{font-size:11px;color:var(--muted);margin:5px 0}.download-table .button{white-space:nowrap}.download-table code{font-size:10px}.release-notes{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.release-notes .panel{padding:23px}.release-notes h2{font-size:18px}.release-notes ul{font-size:12px;color:var(--muted);padding-left:20px}.release-notes li{margin:10px 0}.faq details{border:1px solid var(--border);background:var(--surface);margin-top:-1px;padding:0 20px}.faq summary{padding:17px 0;cursor:pointer;font-size:13px}.faq p{color:var(--muted);font-size:12px;padding-bottom:15px}.site-footer{background:var(--deep);border-top:1px solid var(--border);margin-top:15px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:35px;padding-block:40px}.footer-grid p,.footer-grid span{font-size:10px;color:var(--muted)}.footer-grid h2{font-size:10px;color:var(--muted);margin:14px 0}.footer-grid a{font-size:11px;text-decoration:none;display:block;margin:10px 0}.footer-grid a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:25px;font-size:9px;color:var(--muted);border-top:1px solid var(--border);padding-block:20px}.credits{max-width:850px}.credits p{color:var(--muted);font-size:12px}.credits h2{margin:30px 0 12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(max-width:1000px){.edition{display:none}.header-inner{gap:14px}.hero h1{font-size:36px}.hero-inner{gap:20px}.wiki-layout{grid-template-columns:205px minmax(0,1fr);gap:25px}.wiki-groups{grid-template-columns:1fr}.feature-table{grid-template-columns:repeat(2,1fr)}.feature:nth-child(3n){border-right:1px solid var(--border)}.feature:nth-child(2n){border-right:0}.feature:nth-last-child(-n+3){border-bottom:1px solid var(--border)}.feature:nth-last-child(-n+2){border-bottom:0}.split-section{gap:25px}.map-connect{grid-template-columns:1fr}.download-table{min-width:720px}}
@media(max-width:680px){body{font-size:13px}.container{padding-inline:18px}.header-inner{flex-wrap:wrap;justify-content:center;gap:0;padding-top:7px;padding-bottom:12px}.brand{margin:0 auto;flex-basis:100%;justify-content:center}nav{width:100%;justify-content:center;gap:5px}nav a{font-size:10px;padding:7px 10px}.hero-inner{grid-template-columns:1fr;padding-block:36px;gap:32px}.hero h1{font-size:30px;letter-spacing:0}.hero .intro{font-size:12px}.hero-note{font-size:10px}.compat-inner{font-size:10px;gap:8px;justify-content:start;column-gap:20px}.section{padding-block:35px}.section-head{display:block}.section-head a{display:inline-block;margin-top:15px}.feature-table{grid-template-columns:1fr}.feature{padding:20px;border-right:0!important;border-bottom:1px solid var(--border)!important}.feature:last-child{border-bottom:0!important}.split-section{grid-template-columns:1fr}.page-hero .container{padding-block:30px}h1{font-size:27px;letter-spacing:0}.page-hero p{font-size:12px}.wiki-layout{grid-template-columns:1fr;gap:20px}.wiki-sidebar{position:static;max-height:220px;border:1px solid var(--border);padding:15px;background:var(--deep)}.wiki-sidebar h2{margin-top:16px}.wiki-article h1{font-size:25px}.article-body{font-size:12px}.article-body table{display:block;overflow:auto;white-space:normal}.article-body th,.article-body td{min-width:125px}.callout{align-items:start;flex-direction:column;gap:12px}.release-notes{grid-template-columns:1fr}.map-preview{height:1150px}.demo-head{align-items:start}.demo-head h2{font-size:17px}.demo-head button{font-size:10px}.footer-grid{grid-template-columns:1fr 1fr;gap:20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:9px}.article-nav{font-size:10px}}

/* Reading cues use the Default theme's progress/reward colours. */
.pixel-icon{display:inline-block;width:20px;height:20px;flex:none;vertical-align:middle;shape-rendering:crispEdges}.pixel-icon.gold{color:var(--gold)}.pixel-icon.green{color:var(--green)}nav .pixel-icon{width:15px;height:15px}.wiki-sidebar h2{display:flex;align-items:center;gap:9px}.wiki-sidebar h2 .pixel-icon{width:16px;height:16px}.wiki-group h2{display:flex;align-items:center;gap:12px}.wiki-item strong .pixel-icon{width:16px;height:16px;margin-right:8px}.feature .number{display:flex;align-items:center;gap:10px}.feature .number .pixel-icon{width:24px;height:24px}.article-body h2{color:var(--gold);display:flex;gap:12px;align-items:center}.article-body h2 .pixel-icon{width:20px;height:20px}.article-body h3{color:var(--accent);border-left:2px solid var(--green);padding-left:12px}.article-body strong{color:var(--gold);font-weight:400}.article-body .action-term{color:var(--green);font-style:normal}.article-body .warning-text{color:var(--gold);text-decoration:underline;text-decoration-color:#80672d;text-underline-offset:4px}.article-body code,.article-body kbd{color:var(--green)}.article-body kbd{font:inherit;background:var(--raised);border:1px solid var(--border);border-bottom:2px solid var(--muted);padding:2px 6px}.article-body a{color:var(--green);text-decoration-color:#4d9a61}.article-body a:hover{color:var(--bright)}.article-body li::marker{color:var(--gold)}.article-body th{color:var(--gold)}.article-body blockquote{border-left-color:var(--gold)}.article-body pre code{color:var(--text)}.search-label{display:flex;align-items:center;gap:8px}.search-label .pixel-icon{width:14px;height:14px}.release-platforms{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0}.release-platforms .panel{padding:28px;border-top:2px solid var(--gold)}.release-platforms .panel+ .panel{border-top-color:var(--green)}.release-platforms .number{display:block;font-size:10px;color:var(--muted);margin-bottom:15px}.release-platforms h2{display:flex;align-items:center;gap:12px}.release-platforms p{margin:18px 0 22px;max-width:430px}.release-status{display:inline-block;font-size:10px;color:var(--gold);padding:6px 9px;border:1px solid #80672d;background:#29251b}.release-platforms .panel+ .panel .release-status{color:var(--green);border-color:#4d9a61;background:#1b2a20}.section-head h2{display:flex;align-items:center;gap:12px}.release-notes h2{display:flex;align-items:center;gap:12px}.readability-key{display:flex;flex-wrap:wrap;gap:16px;font-size:10px;color:var(--muted);margin:0 0 20px;padding-bottom:15px;border-bottom:1px solid var(--border)}.readability-key span{display:inline-flex;gap:7px;align-items:center}.readability-key i{width:7px;height:7px;background:var(--gold)}.readability-key span+span i{background:var(--green)}
@media(max-width:680px){nav .pixel-icon{width:12px;height:12px}nav a{gap:5px;padding-inline:7px}.release-platforms{grid-template-columns:1fr}.release-platforms .panel{padding:22px}.article-body h2{gap:9px}.article-body h2 .pixel-icon{width:17px;height:17px}}

/* Text branding and the supplied hosting partner artwork. */
.brand{font-size:27px;line-height:1;text-decoration:none;white-space:nowrap;padding-block:20px}
.header-inner{gap:22px}.site-header nav{flex-wrap:wrap}.site-header nav a{white-space:nowrap;font-size:12px;padding-inline:10px;gap:7px}
.hero-brand{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid var(--border);padding:24px 0 24px 32px}
.hero-initial{font-size:200px;line-height:1;color:var(--bright)}.hero-wordmark{font-size:32px;margin-top:17px}.hero-caption{font-size:9px;color:var(--gold);letter-spacing:1px;margin-top:14px}
.footer-grid .footer-brand{font-size:27px;line-height:1.3;margin:0 0 16px;display:inline-block}.footer-grid .footer-partner{font-size:10px;color:var(--gold);max-width:260px;line-height:1.8}
.hosting-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px}.hosting-page .panel{padding:26px}.hosting-page .number{display:block;font-size:10px;color:var(--muted);margin-bottom:16px}.partner-panel{border-top:2px solid var(--gold)}.partner-logo{display:block;width:min(100%,320px);height:auto;margin:5px 0 29px}.hosting-page h2{font-size:23px}.partner-panel h2,.hosting-guides h2{display:flex;align-items:center;gap:12px}.hosting-page p{font-size:12px;color:var(--muted)}.partner-panel .actions{margin-top:23px}.hosting-page .button.large{font-size:12px;padding:11px 14px}.offer-panel{border-top:2px solid var(--green)}.offer-panel strong{font-weight:400;color:var(--gold)}.offer-panel .small{font-size:10px}.promo-label{display:block;font-size:10px;color:var(--muted);margin:21px 0 7px}.promo-copy{display:flex;gap:8px}.promo-copy input{width:100%;color:var(--green);font-size:19px;padding:10px;min-width:0}.promo-copy button{flex-shrink:0;font-size:11px;padding-inline:10px}.offer-panel .form-message{font-size:10px;color:var(--green);margin:10px 0;min-height:34px}.hosting-page .partner-disclosure{font-size:10px;line-height:1.8;margin:16px 0 24px;max-width:940px}.partner-banner{display:block;border:1px solid var(--border)}.partner-banner img{width:100%;height:auto;display:block}.hosting-section{margin-top:50px}.hosting-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--border);background:var(--surface)}.hosting-steps .panel{border:0;border-right:1px solid var(--border);padding:23px}.hosting-steps .panel:last-child{border-right:0}.hosting-steps h3{display:flex;align-items:start;gap:10px;font-size:15px}.hosting-steps h3 .pixel-icon{width:18px;height:18px;margin-top:2px}.hosting-steps p{font-size:11px}.hosting-steps a{font-size:10px;color:var(--green)}.hosting-guides{display:grid;grid-template-columns:1fr 1fr;gap:40px}.hosting-guides .faq h2{margin-bottom:20px}.hosting-guides .text-links{font-size:11px}.hosting-guides .faq summary{font-size:12px}.hosting-guides .faq p{font-size:11px}
@media(max-width:1000px){.site-header nav a{font-size:10px;padding-inline:8px;gap:5px}.header-inner{gap:16px}.brand{font-size:24px}.hero-initial{font-size:155px}.hero-wordmark{font-size:28px}.hosting-intro{grid-template-columns:1.2fr 1fr}.hosting-page .panel{padding:21px}.hosting-steps{grid-template-columns:1fr}.hosting-steps .panel{border-right:0;border-bottom:1px solid var(--border)}.hosting-steps .panel:last-child{border-bottom:0}.hosting-guides{gap:25px}}
@media(max-width:780px){.header-inner{flex-wrap:wrap;justify-content:center;padding-top:7px;padding-bottom:12px;gap:0}.brand{margin:0 auto;flex-basis:100%;justify-content:center;padding-block:13px 17px}.site-header nav{width:100%;justify-content:center;gap:5px}.site-header nav a{font-size:10px;padding:7px;gap:5px}.hosting-intro,.hosting-guides{grid-template-columns:1fr}.hosting-guides{gap:36px}}
@media(max-width:680px){.hero-brand{display:none}.hosting-page h2{font-size:20px}.hosting-page .panel{padding:20px}.hosting-section{margin-top:35px}.partner-logo{width:min(100%,290px)}.site-header nav{row-gap:6px}.site-header nav a{font-size:10px}.partner-banner{margin-inline:-8px}.promo-copy input{font-size:17px}.hosting-page .partner-disclosure{font-size:9px}.footer-grid .footer-brand{font-size:25px}.site-header nav .pixel-icon{width:12px;height:12px}}
