
:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,sans-serif;background:#130b1f;color:#f8f4ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% 0,#3b174c 0,#1b0d2c 32%,#100a1b 75%);min-height:100vh}a{color:#d8b9ff;text-decoration:none}a:hover{text-decoration:underline;color:white}.site-wrap{max-width:1240px;margin:auto;padding:0 24px}.site-head{display:flex;align-items:center;justify-content:space-between;padding:24px 0;border-bottom:1px solid #ffffff24}.brand{display:flex;align-items:center;gap:10px;font-weight:750;color:white}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#a650ba;font-size:13px;box-shadow:0 5px 18px #0008}.back-site{font-size:14px}.wiki-top{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:24px 0 12px;flex-wrap:wrap}.wiki-brand{font-size:14px;font-weight:800;letter-spacing:.14em;color:white}.wiki-brand span{color:#d7a4ff}.wiki-nav{display:flex;gap:8px;flex-wrap:wrap}.wiki-nav a{display:inline-block;padding:8px 12px;border-radius:20px;border:1px solid #ffffff28;background:#ffffff0b;color:#f4e8ff;font-size:14px}.wiki-nav a:hover{background:#a650ba45;text-decoration:none}.breadcrumb{font-size:14px;color:#c9b3d4;margin-top:18px}.breadcrumb span{padding:0 8px}.page-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,420px);align-items:center;gap:32px;margin:24px 0 28px;padding:32px;border:1px solid #ffffff20;border-radius:24px;background:linear-gradient(120deg,#61256883,#24142eaa);box-shadow:0 24px 64px #0004}.page-heading .item-icon{margin-right:12px}.eyebrow{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#e5c5f1}.page-heading h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.05;margin:14px 0 0}.hero-img{display:block;width:100%;height:220px;object-fit:cover;border-radius:16px;border:1px solid #ffffff30}.item-icon{display:inline-grid;place-items:center;width:38px;height:38px;flex:none;background:linear-gradient(145deg,#b979e5,#6c319b);border:2px solid #efcaff;border-bottom-color:#54245a;border-right-color:#54245a;border-radius:6px;box-shadow:3px 3px 0 #0005;color:#fff;font-size:25px;font-family:Georgia,serif;font-weight:700;vertical-align:middle}.page-content{max-width:900px;margin:0 auto 56px;font-size:16px;line-height:1.7;color:#eee3f4}.page-content>.lead{font-size:19px}.page-content h1{display:none}.page-content h2{font-size:1.6rem;line-height:1.2;margin:32px 0 12px;color:#fff}.page-content h3{font-size:1.15rem;margin:28px 0 8px;color:#fff}.page-content p,.page-content ul,.page-content ol{margin:12px 0}.page-content li{margin:7px 0}.page-content code{background:#ffffff16;padding:2px 5px;border-radius:4px}.notice{border-left:4px solid #d68cf4;background:#a650ba26;padding:14px 18px;border-radius:0 12px 12px 0;margin:18px 0}.content-image{margin:26px 0}.content-image img{display:block;width:100%;max-height:470px;object-fit:contain;background:#08050e;border-radius:14px;border:1px solid #ffffff22}.machine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 64px}.machine-card{display:block;overflow:hidden;background:#26172fcc;border:1px solid #ffffff24;border-radius:16px;color:white;transition:transform .2s,border-color .2s}.machine-card:hover{transform:translateY(-3px);border-color:#dc9ef3;text-decoration:none}.machine-card>img,.blueprint-preview{display:block;width:100%;height:190px;object-fit:cover;background:#120b1b}.blueprint-preview{display:grid;place-items:center;color:#e5bef5;font-size:64px}.blueprint-preview small{display:block;font-size:13px}.card-copy{display:flex;align-items:flex-start;gap:14px;padding:18px}.card-copy h2{margin:0 0 6px;font-size:1.25rem}.card-copy p{margin:0;color:#d9cadf;font-size:15px;line-height:1.45}.orientation{padding:12px 16px;background:#ffffff10;border-radius:10px}.legend{padding:12px 16px;border:1px solid #ffffff28;border-radius:10px;margin-bottom:24px}.legend summary,.copy-diagram summary{cursor:pointer;color:#dcb7f0}.legend>div{display:flex;gap:7px 16px;flex-wrap:wrap;padding-top:12px}.legend span{font-size:14px}.legend b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:3px;background:#734c91;color:white}.diagram-scroll{overflow-x:auto;padding:12px;background:#0e0b14;border:1px solid #ffffff25;border-radius:12px;width:max-content;max-width:100%}.diagram{width:max-content}.diagram-row{display:flex}.block{display:grid;place-items:center;flex:none;width:43px;height:43px;margin:2px;background:#302a37;border:2px solid #ffffff25;border-radius:4px;font:700 18px ui-monospace,monospace;color:white}.b-A,.b-U{background:#8757a3}.b-G{background:#587c86}.b-I,.b-H{background:#737a87}.b-C,.b-B,.b-O{background:#84613e}.b-D{background:#399b9c}.b-R,.b-x{background:#9d3d47}.b-M{background:#a15d28}.b-Q,.b-T{background:#a76b40}.b-P,.b-S,.b-F{background:#59616d}.b-L{background:#774d41}.b-_,.b-\.{background:#15131b;color:#7c7484}.copy-diagram{font-size:14px;margin:8px 0 20px}.copy-diagram pre,.plain-code,.text-diagram pre{overflow-x:auto;background:#0e0b14;padding:14px;border-radius:10px;font:15px/1.5 ui-monospace,monospace}.fertilizer-hero{padding:18px;border:1px solid #ffffff25;border-radius:14px;background:#24142e}.fertilizer-hero>span{font-size:42px;color:#e5bef5}.fertilizer-hero p{margin:0 0 14px;font-size:14px;color:#c5a7d3}.related{margin-top:35px}.machine-adjacent{display:flex;justify-content:space-between;gap:15px;padding:22px 0;border-top:1px solid #ffffff24}.site-wrap main>.wiki-nav{justify-content:center;margin:50px 0}footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid #ffffff24;padding:25px 0 40px;color:#bca9c8;font-size:14px}@media(max-width:720px){.site-wrap{padding:0 16px}.page-heading{grid-template-columns:1fr;padding:22px;gap:20px}.hero-img{height:200px}.machine-grid{grid-template-columns:1fr}.wiki-top{align-items:flex-start}.wiki-nav a{font-size:13px;padding:7px 10px}.block{width:38px;height:38px}.card-copy{padding:14px}}

.item-icon svg{width:29px;height:29px;image-rendering:pixelated}
.mini-grid{display:grid;gap:2px;margin-top:9px}.mini-row{display:flex;gap:2px}.mini-row span{display:grid;place-items:center;width:29px;height:29px;border:1px solid #ffffff35;border-radius:2px;font:700 14px ui-monospace,monospace;color:#fff}.blueprint-preview small{align-self:start}
.block{position:relative;overflow:hidden}.block img{display:block;width:32px;height:32px;object-fit:contain;image-rendering:pixelated}.block .tile-letter{position:absolute;right:1px;bottom:1px;display:grid;place-items:center;min-width:14px;height:14px;padding:0 2px;border-radius:2px;background:#130d1de0;border:1px solid #ffffff72;color:#fff;font:700 10px ui-monospace,monospace;line-height:1}.block.is-empty .tile-letter{position:static;background:none;border:0;color:#a99caf;font-size:18px}.legend>div{gap:10px 18px}.legend-entry{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.legend .block{width:32px;height:32px;margin:0;border-width:1px}.legend .block img{width:26px;height:26px}.legend .block .tile-letter{min-width:12px;height:12px;font-size:9px}.mini-row>.block{width:31px;height:31px;margin:0;border-width:1px}.mini-row>.block img{width:23px;height:23px}.mini-row>.block .tile-letter{width:auto;min-width:11px;height:11px;font-size:8px}.mini-row>.block.is-empty .tile-letter{font-size:13px}.blueprint-preview{align-content:center;gap:8px}@media(max-width:720px){.block img{width:28px;height:28px}}

/* Wiki frame */
:root { --panel:#21142d; --line:#ffffff26; --muted:#c5b4d1; --accent:#dda8ff; }
body { background:radial-gradient(circle at 53% -12%,#482058 0,#21102e 35%,#100a19 78%); }
.site-wrap { max-width:1480px; padding:0 28px; }
.wiki-header { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:82px; border-bottom:1px solid var(--line); }
.wiki-brand { display:inline-flex; align-items:center; gap:12px; color:#fff; letter-spacing:0; font-size:16px; }
.wiki-brand:hover { text-decoration:none; }
.wiki-brand .item-icon { width:42px; height:42px; }
.item-icon img { display:block; width:30px; height:30px; object-fit:contain; image-rendering:pixelated; }
.wiki-brand strong,.wiki-brand small { display:block; line-height:1.15; }
.wiki-brand strong { font-size:16px; letter-spacing:.02em; }
.wiki-brand small { margin-top:3px; color:var(--accent); font-size:12px; font-weight:750; letter-spacing:.18em; text-transform:uppercase; }
.header-status { color:#d9c0e6; font-size:13px; font-weight:650; letter-spacing:.03em; }
.wiki-layout { display:grid; grid-template-columns:238px minmax(0,1fr); gap:34px; align-items:start; }
.wiki-sidebar { position:sticky; top:0; align-self:start; max-height:100vh; overflow-y:auto; scrollbar-color:#784a8e transparent; padding:25px 13px 30px 0; border-right:1px solid var(--line); }
.side-group + .side-group { margin-top:26px; }
.side-label { display:block; margin:0 10px 9px; color:#bca9c8; font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.side-link { display:flex; align-items:center; gap:9px; min-height:35px; padding:7px 10px; margin:2px 0; border-radius:8px; color:#d9ccdf; font-size:13px; font-weight:580; line-height:1.25; }
.side-link:hover { color:#fff; background:#ffffff10; text-decoration:none; }
.side-link.is-current { color:#fff; background:#9c54bd3a; box-shadow:inset 3px 0 #dba4ff; }
.machine-link .item-icon { width:23px; height:23px; border-width:1px; border-radius:4px; box-shadow:none; }
.machine-link .item-icon svg { width:18px; height:18px; }
.machine-link .item-icon img { width:18px; height:18px; }
.wiki-main { min-width:0; }
.mobile-sections { display:none; }
.breadcrumb { margin:26px 0 0; color:var(--muted); }
.page-heading { grid-template-columns:minmax(0,1fr) minmax(230px,355px); margin:22px 0 28px; padding:30px 34px; background:linear-gradient(118deg,#5b2a6e7d,#261631 60%,#21132a); border-color:#b77cc34d; box-shadow:0 18px 46px #0003; }
.page-heading:not(:has(.hero-img)) { grid-template-columns:1fr; }
.page-heading .eyebrow { color:#deb7f2; font-weight:750; }
.page-heading h1 { margin:9px 0 0; letter-spacing:-.035em; }
.hero-img { height:195px; object-fit:cover; object-position:center; }
.page-content { max-width:none; margin:0 0 54px; }
.page-content > p,.page-content > ul,.page-content > ol,.page-content > h2,.page-content > h3,.page-content > aside,.page-content > figure,.page-content > pre { max-width:880px; }
.page-content > p:first-child { font-size:17px; color:#f7edfb; }
.page-content > ul { padding-left:24px; }
.page-content li { padding-left:3px; }
.page-content h2 { margin-top:36px; }
.page-content h3 { margin-top:25px; }
.machine-grid { grid-template-columns:repeat(auto-fill,minmax(275px,1fr)); gap:15px; }
.machine-card { background:#25172f; }
.machine-card>img,.blueprint-preview { height:170px; }
.card-copy { padding:16px; }
.card-copy p { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
footer { margin-top:48px; }
.machine-adjacent { max-width:880px; align-items:stretch; }
.machine-adjacent a { display:inline-flex; align-items:center; gap:9px; min-height:58px; padding:8px 12px; border:1px solid var(--line); border-radius:10px; background:#ffffff0a; color:#f4ddff; font-weight:680; }
.machine-adjacent a:hover { background:#8c4fa046; text-decoration:none; }
.machine-adjacent small { display:block; margin-bottom:1px; color:var(--muted); font-size:10px; font-weight:600; text-transform:uppercase; letter-spacing:.08em; }
.machine-adjacent .item-icon { width:25px; height:25px; border-width:1px; box-shadow:none; }
.machine-adjacent .item-icon svg { width:19px; height:19px; }

/* Shared 3D build plan and scrollable layer maps */
.blueprint-workbench { margin:33px 0 37px; padding:22px; border:1px solid #b885ca55; border-radius:20px; background:linear-gradient(145deg,#2b1938,#1a1024 70%); box-shadow:0 22px 55px #0004; }
.workbench-heading { display:flex; align-items:end; justify-content:space-between; gap:22px; margin:0 0 18px; }
.workbench-heading h2 { margin:4px 0 3px; font-size:1.55rem; }
.workbench-heading p { margin:0; color:var(--muted); font-size:14px; line-height:1.45; }
.schem-download { display:inline-flex; align-items:center; justify-content:center; flex:none; min-height:38px; padding:8px 13px; border:1px solid #d0a0e183; border-radius:8px; background:#6a337d5e; color:#f9ebff; font-size:13px; font-weight:700; text-align:center; }
.schem-download:hover { background:#9152a877; text-decoration:none; }
.workbench-grid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr); gap:14px; }
.model-panel,.layer-panel { min-width:0; height:465px; border:1px solid var(--line); border-radius:14px; background:#130d1d; overflow:hidden; }
.model-panel { position:relative; background:radial-gradient(circle at 50% 38%,#413054,#1a1025 58%,#110c1a); }
.model-canvas { display:grid; place-items:center; width:100%; height:100%; color:var(--muted); font-size:14px; text-align:center; }
.model-canvas canvas { display:block; width:100%; height:100%; cursor:grab; }
.model-canvas canvas:active { cursor:grabbing; }
.model-hint { position:absolute; left:12px; right:12px; bottom:11px; pointer-events:none; color:#ead5f4; font-size:11px; text-align:center; text-shadow:0 1px 5px #000; }
.model-animation-toggle { position:absolute; z-index:2; top:12px; right:12px; min-height:34px; padding:7px 11px; border:1px solid #d0a0e183; border-radius:8px; background:#241430e8; color:#f9ebff; font:700 12px/1.2 Inter,ui-sans-serif,system-ui,sans-serif; cursor:pointer; box-shadow:0 4px 14px #0006; }
.model-animation-toggle:hover,.model-animation-toggle:focus-visible { background:#6a337d; border-color:#f1caff; }
.layer-panel { display:flex; flex-direction:column; }
.layer-controls { display:flex; align-items:center; justify-content:space-between; padding:10px 12px; border-bottom:1px solid var(--line); background:#2d1b39; font-size:13px; }
.layer-controls button,.copy-layer { display:inline-grid; place-items:center; min-width:32px; min-height:29px; padding:3px 7px; border:1px solid #ffffff3a; border-radius:6px; background:#ffffff12; color:#f8eaff; font:inherit; cursor:pointer; }
.layer-controls button:hover:not(:disabled),.copy-layer:hover { background:#a461bd5c; }
.layer-controls button:disabled { opacity:.4; cursor:default; }
.layer-tabs { display:flex; flex-wrap:wrap; align-items:center; gap:6px; min-height:48px; padding:8px 12px; border-bottom:1px solid var(--line); }
.layer-tab { display:grid; place-items:center; min-width:29px; height:29px; padding:0 7px; border:1px solid #ffffff3a; border-radius:6px; background:#ffffff10; color:#ead7f2; font:700 13px ui-monospace,monospace; cursor:pointer; }
.layer-tab:hover,.layer-tab:focus-visible,.layer-tab.is-active { color:#fff; background:#9956b3; border-color:#f1caff; }
.layer-scroll { position:relative; flex:1; min-height:0; overflow-y:auto; overflow-x:hidden; scrollbar-color:#a86cc1 #20132c; scroll-snap-type:y mandatory; overscroll-behavior:contain; }
.layer-card { display:flex; flex-direction:column; min-height:100%; padding:14px; scroll-snap-align:start; }
.layer-card-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.layer-card h3 { margin:0; font-size:15px; }
.copy-layer { min-width:0; font-size:11px; }
.layer-card .diagram-scroll { max-height:none; overflow-x:auto; margin:0 auto auto 0; padding:8px; }
.layer-card .block { width:34px; height:34px; margin:1px; }
.layer-card .block img { width:26px; height:26px; }
.layer-card .copy-diagram { margin:9px 0 0; }
.layer-card .copy-diagram pre { max-height:130px; margin:6px 0 0; padding:8px 10px; font-size:12px; }
.blueprint-workbench .legend { margin:14px 0 0; padding:12px 14px; }
.blueprint-workbench .legend summary { font-weight:700; }
.blueprint-workbench .legend summary strong { float:right; margin-right:4px; color:#fff; font-size:13px; }
.blueprint-workbench .legend>div { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:8px 13px; }
.blueprint-workbench .legend-entry { display:flex; align-items:center; gap:8px; min-width:0; font-size:12px; }
.blueprint-workbench .legend-entry>span:not(.block) { flex:1; }
.blueprint-workbench .material-count { margin-left:auto; color:#f1d3ff; white-space:nowrap; font-size:13px; }
.blueprint-workbench .material-note { margin:10px 0 0; color:var(--muted); font-size:12px; line-height:1.4; }
.blueprint-workbench .legend .block { width:27px; height:27px; }
.blueprint-workbench .legend .block img { width:22px; height:22px; }

.video-section { margin:36px 0 42px; padding-top:24px; border-top:1px solid var(--line); }
.video-heading h2 { margin:4px 0 18px; }
.video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.video-grid.is-single { grid-template-columns:minmax(0,620px); }
.video-card { margin:0; overflow:hidden; border:1px solid #ffffff29; border-radius:14px; background:#201728; }
.video-card video { display:block; width:100%; aspect-ratio:16/9; background:#0c0811; object-fit:contain; }
.video-card figcaption { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:5px 12px; padding:11px 14px; font-size:14px; line-height:1.4; }
.video-card figcaption strong { color:#fff; }
.video-card figcaption a { color:#e6b5fa; font-size:12px; white-space:nowrap; }

@media (max-width:1060px) {
  .wiki-layout { grid-template-columns:1fr; }
  .wiki-sidebar { display:none; }
  .mobile-sections { display:block; margin-top:19px; padding:10px 13px; border:1px solid var(--line); border-radius:10px; background:#ffffff0a; }
  .mobile-sections summary { cursor:pointer; color:#f2d9ff; font-size:14px; font-weight:700; }
  .mobile-sections nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; padding-top:15px; }
  .mobile-sections .side-group + .side-group { margin-top:0; }
  .mobile-sections .side-group { min-width:0; }
}
@media (max-width:790px) {
  .site-wrap { padding:0 16px; }
  .wiki-header { min-height:72px; }
  .header-status { font-size:11px; }
  .page-heading { grid-template-columns:1fr; padding:23px; }
  .hero-img { height:200px; }
  .workbench-heading { align-items:start; flex-direction:column; }
  .workbench-grid { grid-template-columns:1fr; }
  .model-panel { height:350px; }
  .layer-panel { height:410px; }
  .blueprint-workbench { padding:15px; }
  .video-grid { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .mobile-sections nav { grid-template-columns:1fr; }
  .wiki-brand strong { font-size:13px; }
  .wiki-brand .item-icon { width:36px; height:36px; }
  .header-status { max-width:92px; text-align:right; }
  .layer-card .block { width:35px; height:35px; }
  .layer-card .block img { width:26px; height:26px; }
  .machine-adjacent { flex-direction:column; }
}
