@font-face{font-family:Chicago;src:url('/assets/chicago/Chicago.ttf') format('truetype');font-display:swap;font-weight:400 700}
[hidden]{display:none!important}

/* Visual refinements drawn from the source book's modular, monochrome grammar. */
.masthead{border-bottom:0}.sato-mark{display:inline-grid;place-items:center;width:22px;height:22px;margin-left:9px;border:1px solid var(--ink);border-radius:50%;font:8px/1 Monaco,monospace}.sato-eye{display:block;transform:translate(var(--eye-x,0),var(--eye-y,0));transition:transform 120ms steps(2,end)}
.module-ribbon{position:sticky;top:58px;z-index:19;height:22px;display:flex;align-items:center;gap:6px;padding:0 14px;background:var(--ink);color:var(--snow);font:700 8px/1 Monaco,monospace;letter-spacing:.12em}.module-ribbon button{height:16px;padding:1px 5px;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit}.module-ribbon button:hover,.module-ribbon button:focus-visible{outline:1px solid var(--snow);outline-offset:0}.module-ribbon button[aria-pressed="true"]{background:var(--snow);color:var(--ink)}.module-ribbon i{display:block;width:4px;height:4px;background:var(--snow);transform:rotate(45deg)}.module-ribbon .boppers-mode{position:absolute;left:50%;transform:translateX(-50%)}.ribbon-spacer{flex:1}
.controls{top:80px}
.catalog{position:relative;border-top:1px solid var(--ink)}.catalog:before,.catalog:after{content:"";position:absolute;top:0;bottom:0;width:6px;background:repeating-linear-gradient(to bottom,var(--ink) 0 7px,transparent 7px 14px);pointer-events:none}.catalog:before{left:3px}.catalog:after{right:3px}
.card{position:relative}
.card-meta{position:relative}.card-meta:after{content:"";position:absolute;right:7px;bottom:7px;width:14px;height:3px;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 4px);opacity:.55}
.placeholder{background-image:linear-gradient(45deg,#bcbcb6 25%,transparent 25%),linear-gradient(-45deg,#bcbcb6 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#bcbcb6 75%),linear-gradient(-45deg,transparent 75%,#bcbcb6 75%),radial-gradient(circle at center,transparent 0 26%,var(--ink) 26% 27%,transparent 27% 42%,var(--ink) 42% 43%,transparent 43%);background-size:16px 16px,16px 16px,16px 16px,16px 16px,100% 100%;background-position:0 0,0 8px,8px -8px,-8px 0,center}
.record-toolbar{border-bottom:7px solid var(--ink)}.record-toolbar:before{content:"STEP 2";font:700 12px Chicago,Geneva,sans-serif;margin-right:5px;flex:0 0 auto}.record-toolbar .drag{flex:0 1 150px}.record-url{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 7px;border:1px solid var(--line);background:var(--white);font:9px Monaco,monospace}.record-toolbar button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.25;shape-rendering:crispEdges}.record-toolbar [data-copy].copied{background:var(--ink);color:var(--white)}.record-toolbar [data-copy].copied:after{content:"✓";position:absolute;margin:-5px 0 0 -2px;background:var(--white);color:var(--ink);font-size:8px}.record-info h1{max-width:16ch}.record-kicker{display:inline-block;padding:5px 8px;background:var(--ink);color:var(--snow)}
.record-dialog[open]{position:fixed;inset:96px auto auto 50%;margin:0;max-height:calc(100vh - 112px);transform:translateX(-50%)}
.record-toolbar button{display:grid;place-items:center;padding:0;line-height:1}.record-toolbar button svg,.record-toolbar button span{display:block;margin:auto}
@media(max-width:600px){.module-ribbon{padding:0 7px;gap:2px}.module-ribbon button{padding-inline:4px}.module-ribbon .boppers-mode{position:static;transform:none}.controls{top:80px}.record-dialog[open]{inset:0 auto auto 50%;max-height:100vh}.record-toolbar .drag{display:none}.record-url{font-size:8px}}
@media(max-height:700px) and (min-width:601px){.record-dialog[open]{inset-block-start:16px;max-height:calc(100vh - 32px)}}
.bopper-field .bopper-organism::after{content:attr(data-name);width:max-content;max-width:150px}.bopper-field .bopper-organism.inspected{z-index:6;animation-play-state:paused}.bopper-field .bopper-organism.inspected::after{content:attr(data-label);width:190px;max-width:min(190px,80vw);white-space:normal;opacity:1}.bopper-field .bopper-organism.inspected .bopper-body{background:var(--ink);color:var(--white);transform:rotate(0) scale(1.18)}
.bopper-field .bopper-organism[data-weather]{z-index:4;filter:drop-shadow(0 0 5px var(--ink));animation-duration:2s}.bopper-field .bopper-organism[data-weather] .bopper-body{outline:3px double var(--ink);scale:1.12}.bopper-environment[data-weather]{background:var(--ink);color:var(--white)}.bopper-field .bopper-organism[data-life="dying"]::before{content:"";position:absolute;left:12%;right:12%;bottom:-8px;height:3px;background:var(--ink);opacity:.7}
.bopper-field .bopper-organism[data-life="courting"]{animation-name:bopper-court;animation-timing-function:linear}.bopper-field .bopper-organism[data-life="newborn"]{animation-timing-function:cubic-bezier(.2,.9,.4,1)}.bopper-field .bopper-organism[data-life="dying"]{animation-duration:15s}.bopper-field .bopper-organism[data-motion="active"] .bopper-body{box-shadow:4px 4px 0 rgba(23,23,23,.24)}@keyframes bopper-court{0%{translate:0 0}25%{translate:var(--dx) 0}50%{translate:var(--dx) var(--dy)}75%{translate:0 var(--dy)}100%{translate:0 0}}
.bopper-reading{padding:18px 14px 22px;border-top:1px solid var(--ink);font:16px/1.45 Geneva,Arial,sans-serif;max-width:100%}.bopper-reading:before{content:"POND READING";display:block;margin-bottom:8px;font:8px/1 Monaco,monospace;letter-spacing:.12em}
#memory-growth{pointer-events:none}.memory-ring,.memory-root,.memory-branch,.memory-fossil{fill:none;stroke:var(--ink);vector-effect:non-scaling-stroke}.memory-ring{stroke-width:1;opacity:.22}.memory-root{stroke-width:2;opacity:.72}.memory-branch{stroke-width:2.5;opacity:.8}.memory-leaf{fill:var(--snow);stroke:var(--ink);stroke-width:1.5}.memory-blossom{fill:var(--ink);stroke:var(--snow);stroke-width:2}.memory-fossil{stroke-width:1.5;opacity:.55}
.ducks-panel{padding:13px 18px;border-bottom:1px solid var(--ink);background:var(--white)}.ducks-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.ducks-heading>strong{display:block;margin-bottom:9px;font:700 12px Monaco,monospace;letter-spacing:.08em}.ducks-heading button{flex:0 0 auto;padding:6px 9px;box-shadow:2px 2px 0 var(--shadow)}.ducks-tags{display:flex;flex-wrap:wrap;gap:5px 12px;align-items:baseline}.ducks-tags button{padding:1px 0;border:0;border-bottom:1px solid transparent;background:transparent;box-shadow:none;font:calc(9px + var(--tag-weight)*1px)/1.2 Geneva,Arial,sans-serif}.ducks-tags button:hover,.ducks-tags button:focus-visible{border-bottom-color:var(--ink)}.ducks-tags button[aria-pressed="true"]{padding:1px 4px;background:var(--ink);color:var(--white)}.card-duck{position:absolute;z-index:5;right:7px;top:7px;width:38px;height:38px;padding:0;border:1px solid var(--ink);background:var(--white)}.card-duck span{display:grid;place-items:center;font:32px/1 Y2Cairo,sans-serif;-webkit-font-smoothing:none}.card-duck::after{content:"×";position:absolute;inset:0;display:grid;place-items:center;font:700 28px/1 Geneva,Arial,sans-serif;opacity:0}.card-duck:hover,.card-duck:focus-visible{background:var(--ink);color:var(--white)}.card-duck:hover span,.card-duck:focus-visible span{opacity:.35}.card-duck:hover::after,.card-duck:focus-visible::after{opacity:1}

.tile-quotation{width:calc(100% - 18px);margin:auto 9px 9px;padding:9px;border:1px solid var(--ink);background:var(--white);font:12px/1.3 Geneva,Arial,sans-serif;text-align:left}.tile-quotation p{margin:0}.tile-quotation cite{display:block;margin-top:6px;font:8px Monaco,monospace;text-transform:uppercase;font-style:normal;letter-spacing:.06em}.tile-quotation.measuring{position:absolute;visibility:hidden;display:block;margin:0}.list-view .tile-quotation{display:none!important}

.tile-quotation p,.tile-quotation em,.cairo-placeholder blockquote p,.cairo-placeholder blockquote em{font-family:Georgia,"Times New Roman",serif!important;font-style:italic!important;font-synthesis:style}
.cairo-placeholder-empty{grid-template-rows:1fr}.cairo-placeholder-empty .cairo-record-glyph{align-self:center}

/* Record typography: classic Apple role-based hierarchy and readable measure. */
.record-toolbar{font-family:Geneva,"Helvetica Neue",Arial,sans-serif}.record-url{font-family:Monaco,"Courier New",monospace}.record-info{font-family:Geneva,"Helvetica Neue",Arial,sans-serif}.record-info h1{font-family:Chicago,Geneva,"Helvetica Neue",Arial,sans-serif;font-weight:700}.record-image-title{margin:10px 0 0;padding-top:8px;border-top:1px solid var(--line);font:10px/1.35 Monaco,"Courier New",monospace}.record-kicker{font-family:Monaco,"Courier New",monospace}.long-title{max-width:62ch;margin:14px 0 18px;font-size:16px;line-height:1.45}.long-title strong{font-weight:700}.long-title em{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-synthesis:style}.long-title strong em{font-weight:700}.long-title code{font-family:Monaco,"Courier New",monospace;font-size:.9em}.tag{font-family:Chicago,Geneva,"Helvetica Neue",Arial,sans-serif;font-size:13px}.detail summary{font-family:Geneva,"Helvetica Neue",Arial,sans-serif;font-size:15px;line-height:1.25}.detail-body{max-width:68ch;font-family:Geneva,"Helvetica Neue",Arial,sans-serif;font-size:15px;line-height:1.55}.detail-quotation .detail-body{font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1.55;font-style:italic;font-synthesis:style}.related h2{font-family:Chicago,Geneva,"Helvetica Neue",Arial,sans-serif;font-size:24px}.related button{font-family:Geneva,"Helvetica Neue",Arial,sans-serif;line-height:1.25}.related small{font-family:Monaco,"Courier New",monospace}

.record-toolbar:before{content:none}
.record-info .long-title{font-size:17px}
.record-info .detail summary{font-family:Monaco,"Courier New",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.detail-description .detail-body{font-family:Monaco,"Courier New",monospace;font-size:12px}
.related small{display:none}
.wordmark{align-items:center}.wordmark-link{display:flex;align-items:baseline;color:inherit;text-decoration:none}.sato-mark{padding:0;background:transparent;color:inherit;cursor:pointer}.sato-mark:hover,.sato-mark:focus-visible{background:var(--ink);color:var(--snow)}
.system-tree{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;background:var(--snow);color:var(--ink)}.system-tree::backdrop{background:var(--snow)}.system-tree-bar{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:18px;min-height:52px;padding:7px 12px;border-bottom:7px solid var(--ink);background:var(--paper);font-family:Chicago,Geneva,sans-serif}.system-tree-bar strong{font-size:16px;letter-spacing:.06em}.system-tree-bar span{font:9px Monaco,monospace;letter-spacing:.08em}.system-tree-bar button{width:34px;height:34px;font-size:22px}.system-tree-canvas{min-height:calc(100vh - 91px);display:grid;place-items:center;overflow:auto;background-color:var(--snow);background-image:radial-gradient(#a7a7a0 .7px,transparent .7px);background-size:10px 10px}.system-tree svg{display:block;width:min(1200px,100vw);height:auto;min-height:680px;color:var(--ink)}.tree-aura{fill:url(#tree-aura)}.tree-ground,.tree-roots path,.tree-branches path,.tree-vein{fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round}.tree-roots path{stroke-width:3}.tree-trunk>path:first-child{fill:var(--paper);stroke:currentColor;stroke-width:4}.tree-trunk ellipse{fill:url(#tree-dots);stroke:currentColor;stroke-width:3}.tree-trunk circle{fill:var(--snow);stroke:currentColor;stroke-width:3}.tree-trunk .tree-pupil{fill:currentColor}.tree-crowns circle{fill:url(#tree-dots);stroke:currentColor;stroke-width:3}.tree-crowns text,.tree-core-label,.tree-version{font-family:Chicago,Geneva,sans-serif;text-anchor:middle}.tree-crowns text{font-size:15px}.tree-core-label{font-size:15px}.tree-version{font:9px Monaco,monospace}.tree-roots text,.tree-leaves text,.tree-fallen text{font:10px Monaco,monospace;letter-spacing:.05em}.tree-leaves text{font-family:Chicago,Geneva,sans-serif;font-size:13px}.tree-fallen path{fill:var(--paper);stroke:currentColor;stroke-width:2}.system-tree-legend{position:sticky;bottom:0;display:flex;justify-content:center;gap:25px;padding:8px 12px;border-top:1px solid var(--ink);background:var(--paper);font:8px Monaco,monospace;letter-spacing:.05em}
@media(max-width:700px){.system-tree-bar{grid-template-columns:1fr auto}.system-tree-bar span{display:none}.system-tree-canvas{place-items:start center}.system-tree svg{width:900px;max-width:none}.system-tree-legend{justify-content:flex-start;overflow:auto;white-space:nowrap}.system-tree-legend span{flex:none}}
.system-tree{--psych-violet:#6f35ff;--psych-cyan:#00b7c7;--psych-pink:#ef2d83;--psych-gold:#d7a900;background:#e9e7df}.system-tree-bar{background:linear-gradient(90deg,#f4f2e8 0 28%,#d7f0ec 48%,#f0dbe6 73%,#f4f2e8);border-bottom-color:var(--psych-violet)}.system-tree-canvas{background-color:#eceae2;background-image:radial-gradient(circle at 50% 43%,rgba(239,45,131,.1),transparent 28%),radial-gradient(circle at 32% 35%,rgba(0,183,199,.13),transparent 24%),radial-gradient(circle at 72% 38%,rgba(111,53,255,.12),transparent 25%),radial-gradient(#827d72 .7px,transparent .8px);background-size:auto,auto,auto,10px 10px}.system-tree svg{overflow:visible}.psych-field{fill:none;stroke:var(--psych-violet);stroke-width:2;opacity:.32}.psych-field ellipse:nth-child(2){stroke:var(--psych-cyan);stroke-dasharray:4 10}.psych-field ellipse:nth-child(3){stroke:var(--psych-pink);stroke-dasharray:18 7 2 7}.psych-field path{stroke:var(--psych-gold);stroke-width:1.5;opacity:.7}.tree-aura{opacity:.58}.tree-ground{stroke:var(--psych-violet)}.tree-roots path{stroke:var(--psych-violet);filter:drop-shadow(3px 0 rgba(0,183,199,.45))}.tree-branches path{stroke:var(--psych-cyan);stroke-width:6;filter:drop-shadow(4px 1px rgba(239,45,131,.55))}.tree-trunk>path:first-child{fill:rgba(246,244,235,.78);stroke:var(--psych-violet);filter:drop-shadow(6px 2px rgba(0,183,199,.42))}.tree-vein{stroke:var(--psych-pink)}.tree-trunk ellipse{fill:url(#tree-dots);stroke:var(--psych-cyan)}.tree-trunk circle{stroke:var(--psych-violet)}.tree-trunk .tree-pupil{fill:var(--psych-pink);stroke:var(--psych-pink)}.tree-crowns circle{fill:rgba(244,242,232,.68);stroke:var(--psych-violet);filter:drop-shadow(4px 3px rgba(0,183,199,.35))}.tree-crowns>g:nth-child(even) circle{stroke:var(--psych-cyan);filter:drop-shadow(4px 3px rgba(239,45,131,.35))}.tree-crowns>g:nth-child(3n) circle{stroke:var(--psych-pink)}.neural-nodes circle{fill:#f4f2e8;stroke:var(--psych-pink);stroke-width:3}.neural-nodes circle:nth-child(even){stroke:var(--psych-cyan)}.tree-leaves text{fill:var(--psych-violet)}.tree-roots text{fill:#3b236f}.tree-fallen path{fill:rgba(215,169,0,.18);stroke:var(--psych-gold)}.system-tree-legend{background:linear-gradient(90deg,#ede3f8,#d9efec,#f3dce6);border-top-color:var(--psych-violet)}
.system-tree text,.system-tree-bar strong,.system-tree-bar span,.system-tree-legend{display:none}.system-tree-bar{position:absolute;right:8px;top:8px;display:block;min-height:0;padding:0;border:0;background:transparent}.system-tree-bar button{background:rgba(244,242,232,.88);border-color:var(--psych-violet)}.system-tree-canvas{min-height:100vh}
.tree-history{position:absolute;left:18px;bottom:18px;z-index:1;width:min(330px,calc(100vw - 36px));padding:11px 12px;border:1px solid var(--psych-violet);background:rgba(244,242,232,.9);box-shadow:4px 4px 0 rgba(0,183,199,.35);font-family:Monaco,monospace}.tree-history>strong{display:block;margin-bottom:8px;font:10px/1 Monaco,monospace;letter-spacing:.12em}.tree-history ol{display:grid;gap:4px;margin:0;padding:0;list-style:none}.tree-history li{display:grid;grid-template-columns:34px 1fr auto;align-items:baseline;gap:7px;padding-top:4px;border-top:1px dotted rgba(111,53,255,.45);font:9px/1.2 Monaco,monospace}.tree-history li span{color:var(--psych-violet)}.tree-history li b{font-weight:400;letter-spacing:.06em}.tree-history li small{font:7px/1.2 Monaco,monospace;color:#514d46;text-align:right}.tree-history li.current{margin:3px -5px -4px;padding:6px 5px 4px;border-top:0;background:var(--psych-violet);color:#fff}.tree-history li.current span,.tree-history li.current small{color:#fff}.tree-counter{display:block;margin:10px -5px -4px;padding:7px 6px 5px;border:1px dotted rgba(111,53,255,.55);background:rgba(255,255,255,.42);font:9px/1 Monaco,monospace;letter-spacing:.12em;text-align:center;color:#3b236f}
@media(max-width:700px){.tree-history{position:fixed;left:8px;bottom:8px;width:min(310px,calc(100vw - 58px))}.tree-history li{grid-template-columns:30px 1fr}.tree-history li small{display:none}}
.controls .control-row,.controls .filter-panel{display:none!important}.controls{padding-bottom:8px}
.search-wrap{gap:12px}.search-wrap .pixel-icon{position:relative;display:block;flex:0 0 27px;width:27px;height:27px}.search-wrap .pixel-icon:before{content:"";position:absolute;left:2px;top:2px;width:13px;height:13px;border:3px solid var(--ink);border-radius:50%}.search-wrap .pixel-icon:after{content:"";position:absolute;left:16px;top:17px;width:10px;height:3px;background:var(--ink);transform:rotate(45deg);transform-origin:left center}.search-wrap input{min-height:34px;font-size:20px}

/* A pale ResEdit-like desktop layer: cool whites, utility grays, and restrained paint dumps. */
:root{--snow:#f7f7f4;--paper:#ecece8;--white:#fdfdfb;--wash:#deded9;--wash-light:#eeeeea}
body{background-color:var(--snow)}
.catalog{background-color:var(--snow);background-image:radial-gradient(circle at 8% 14%,rgba(214,214,209,.5) 0 34px,transparent 35px),radial-gradient(circle at 11% 17%,rgba(214,214,209,.38) 0 17px,transparent 18px),radial-gradient(circle at 76% 8%,rgba(232,232,227,.75) 0 62px,transparent 63px),radial-gradient(circle at 81% 12%,rgba(232,232,227,.62) 0 24px,transparent 25px),radial-gradient(circle at 31% 72%,rgba(222,222,217,.42) 0 48px,transparent 49px),radial-gradient(circle at 35% 68%,rgba(222,222,217,.3) 0 20px,transparent 21px)}
.controls,.history-strip{background:rgba(236,236,232,.94)}
.ducks-heading>strong{display:flex;flex-wrap:wrap;align-items:center;gap:3px 7px;min-height:38px;margin-bottom:11px;letter-spacing:0}
.ducks-heading>strong span{display:block;font:30px/1 Y2Cairo,sans-serif;-webkit-font-smoothing:none}
.card-meta{flex:1;grid-template-rows:auto minmax(0,1fr) auto;align-content:stretch}.card-meta:after{content:none}.card-title{grid-row:1}.card-meta .tile-quotation{grid-row:2;align-self:center;width:100%;margin:9px 0;border:1px dotted var(--line);background:#f7f7f4}.card-sub{grid-row:3;align-self:end}
.about-dialog{width:min(700px,calc(100vw - 30px));max-width:none;padding:0}.about-record-image{display:block;width:100%;max-height:calc(100vh - 30px);object-fit:contain;background:var(--snow)}
.bopper-fossil{position:absolute;z-index:3;left:calc(var(--x)*1%);bottom:calc(7px + var(--layer)*16px);display:grid;place-items:center;width:var(--size);height:var(--size);padding:0;border:2px solid var(--mid);border-radius:44% 38% 46% 34%;background:var(--paper);color:var(--mid);opacity:.42;transform:translateX(-50%) rotate(var(--turn));filter:grayscale(1)}.bopper-fossil span{font:24px/1 Y2Cairo,sans-serif;-webkit-font-smoothing:none}.bopper-fossil:before{content:"";position:absolute;left:-8px;right:-8px;bottom:-7px;height:2px;background:var(--mid);transform:rotate(8deg)}.bopper-fossil:after{content:attr(data-label);position:absolute;left:50%;bottom:calc(100% + 9px);width:min(270px,72vw);padding:7px;border:1px solid var(--ink);background:var(--white);color:var(--ink);font:10px/1.35 Monaco,monospace;text-align:left;white-space:normal;opacity:0;pointer-events:none;transform:translateX(-50%)}.bopper-fossil:hover{opacity:.7}.bopper-fossil.inspected{z-index:8;opacity:1;border-color:var(--ink);color:var(--ink);filter:none}.bopper-fossil.inspected:after{opacity:1}
#sound-button{display:grid;place-items:center;width:22px;padding:0}.module-ribbon #sound-button svg{width:15px;height:14px;overflow:visible}.sound-speaker{fill:currentColor}.sound-wave,.sound-slash{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:square}.sound-wave{display:none}.sound-slash{display:block}.module-ribbon #sound-button[aria-pressed="true"] .sound-wave{display:block}.module-ribbon #sound-button[aria-pressed="true"] .sound-slash{display:none}
.tree-counter-badge{display:block;width:88px;height:31px;margin:10px auto 0;line-height:0}.tree-counter-badge img{display:block;width:88px;height:31px;image-rendering:pixelated}
