/* Product explanations keep their diagrams and comparisons out of the narrow docs template. */
/* A font-independent slash distinguishes the numeral in Mem0 from a letter o.
   The empty decoration adds nothing to copied text or the accessible name. */
.product-zero{display:inline-block;position:relative;font-variant-numeric:lining-nums;letter-spacing:0}
.product-zero::after{content:"";position:absolute;left:48%;top:24%;height:54%;border-left:.075em solid currentColor;transform:rotate(30deg);pointer-events:none}
.skip-link{position:fixed;left:16px;top:0;z-index:1000;transform:translateY(-150%);background:var(--white);color:var(--midnight);padding:12px 18px;font-size:1rem;font-weight:700;border:2px solid var(--coral-deep)}
.skip-link:focus{top:0;transform:translateY(12px)}
.reference-head,.reference-main{width:min(1440px,100%);margin-inline:auto;padding-inline:clamp(22px,4vw,64px)}
.reference-head{padding-block:44px 36px}
.reference-head h1{font:400 clamp(36px,4.6vw,66px)/1.13 var(--font-display);letter-spacing:-.025em;max-width:1120px;margin:14px 0 24px;text-wrap:balance}
.reference-head .reference-lead{font-size:clamp(18px,1.6vw,23px);line-height:1.6;max-width:1000px;color:var(--fg-2);margin:0}
.reference-kicker{font-size:.875rem!important;line-height:1.45;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--teal-deep);margin:0 0 14px}
.reference-contents{border-block:1px solid var(--border-2);margin:0 0 38px}
.reference-contents summary{cursor:pointer;padding:15px 0;font-size:1rem;font-weight:700;color:var(--midnight);width:fit-content;min-height:48px}
.reference-contents summary:focus-visible{outline:3px solid var(--coral);outline-offset:4px}
.reference-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;padding:0 0 18px;margin:0;font-size:1rem}
.reference-main .reference-contents .reference-nav a{display:block;padding:10px 0;min-height:44px;color:var(--teal-deep);text-decoration:none}
.reference-main .reference-contents .reference-nav a:hover{text-decoration:underline}
.reference-main{padding-bottom:64px;font-size:1.125rem;line-height:1.7}
.reference-main>section{position:relative;padding:52px 0;border-bottom:1px solid var(--border-2);scroll-margin-top:150px}
.reference-main>section:first-of-type{padding-top:0}
.reference-main .anchor-alias{position:absolute;top:0;scroll-margin-top:150px}
.reference-main h2{font:400 clamp(30px,3vw,43px)/1.22 var(--font-display);letter-spacing:-.018em;margin:0 0 30px;max-width:1050px;text-wrap:balance}
.reference-main h3{font-size:1.3rem;line-height:1.4;margin:0 0 14px}
.reference-main p{margin:0 0 20px;color:var(--fg-2)}
.reference-main a:not(.circuit-stage){color:var(--teal-deep);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.reference-main a:hover{color:var(--coral-deep)}
.reference-main a:focus-visible{outline:3px solid var(--coral);outline-offset:5px}
.reference-main code{font: .92em var(--font-mono);overflow-wrap:anywhere;color:var(--coral-deep)}
.reference-main pre{background:var(--midnight);color:var(--white);padding:24px;overflow:auto;line-height:1.8;font-size:1rem;max-width:100%}
.reference-main pre code{color:inherit;white-space:pre-wrap;overflow-wrap:anywhere}
.reference-main .section-intro{max-width:930px;font-size:1.25rem;margin-bottom:30px}
.explain-split{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(30px,5vw,80px);align-items:start}
.reference-note{border-left:3px solid var(--teal);padding:16px 22px;background:var(--teal-wash);margin-top:30px!important}
.memory-circuit{background:var(--midnight);color:var(--white);padding:clamp(20px,3vw,42px);margin:0}
.memory-circuit p,.memory-circuit code{color:var(--white);font-size:1rem;line-height:1.55;margin:8px 0 0}
.memory-circuit .circuit-label,.memory-circuit .circuit-name{font-size:.875rem;color:var(--teal-light);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px}
.circuit-entry{border:1px solid var(--teal-light);padding:20px 24px;text-align:center}
.circuit-entry>p:not(.circuit-label):not(.circuit-tools){font-size:1.25rem}
.circuit-entry .circuit-tools{color:var(--midnight-15)}
.circuit-gate{font-size:.875rem;color:var(--teal-light);padding:15px 0;display:flex;align-items:center;gap:14px;justify-content:center;text-align:center}
.circuit-gate>span{font-size:1.6rem}
.circuit-machine{border:1px solid var(--midnight-50);padding:24px}
.circuit-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.circuit-lane{position:relative;min-width:0}
.circuit-lane+.circuit-lane:before{content:'→';position:absolute;left:-32px;top:65px;color:var(--teal-light);font-size:1.4rem}
.circuit-stage{display:flex;align-items:center;gap:12px;color:var(--white)!important;margin:0 0 22px;text-decoration:none}
.circuit-stage span{font-family:var(--font-mono);font-size:1rem;color:var(--coral-light);border-bottom:2px solid var(--coral);padding-bottom:3px}
.circuit-stage strong{font-size:1.125rem}
.circuit-node{padding:16px;border:1px solid var(--midnight-50);min-width:0}
.circuit-node>strong{font-size:1.05rem;font-weight:700;display:block;line-height:1.4}
.circuit-node>code{font-weight:700;color:var(--coral-light)}
.circuit-node p{color:var(--midnight-15)}
.circuit-store{border-color:var(--teal-light)}
.circuit-arrow{color:var(--teal-light);height:30px;text-align:center;line-height:30px}
.circuit-fork{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.circuit-fork>div{border:1px solid var(--teal-light);padding:14px 10px;min-width:0}
.circuit-fork strong,.circuit-fork span{display:block;font-size:1rem}
.circuit-fork span{color:var(--midnight-15);margin-top:6px}
.memory-circuit .circuit-result{font-size:.875rem;color:var(--teal-light);margin-top:16px}
.memory-circuit .circuit-bridge{border-top:1px solid var(--midnight-50);padding-top:18px;margin-top:24px;font-size:.875rem;color:var(--midnight-15)}
.circuit-work{border:1px solid var(--teal-light);padding:22px 24px}
.circuit-work .circuit-stage{margin-bottom:18px}
.circuit-parts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.circuit-parts b{font-size:1rem;color:var(--teal-light)}
.circuit-parts p{margin-top:4px}
.circuit-return{border-left:2px solid var(--coral);border-bottom:2px solid var(--coral);margin:0 0 0 12px;padding:14px 20px;display:flex;gap:16px;align-items:center}
.circuit-return>span{color:var(--coral-light);font-size:1.6rem}
.circuit-return p{margin:0}
.memory-circuit figcaption{margin:22px 0 0;color:var(--midnight-15);font-size:.875rem;line-height:1.6}
.memory-specimen{border-top:3px solid var(--coral);background:var(--coral-wash);padding:28px}
.memory-specimen h3{font:400 1.8rem/1.3 var(--font-display)}
.memory-specimen dl{margin:24px 0}
.memory-specimen dl>div{display:grid;grid-template-columns:95px 1fr;gap:15px;padding:12px 0;border-top:1px solid var(--midnight-15)}
.memory-specimen dt{font-size:1rem;font-weight:700}
.memory-specimen dd{margin:0;font-size:1rem;line-height:1.6}
.memory-specimen>p:last-child{font-size:1rem;margin:0;color:var(--midnight)}
.process-ledger{max-width:1100px}
.process-ledger article{display:grid;grid-template-columns:46px 1fr;gap:20px;padding:26px 0;border-top:1px solid var(--border-2)}
.process-ledger article>span{color:var(--coral-deep);font-family:var(--font-mono);font-size:1.1rem}
.process-ledger article p:last-child{margin:0}
.search-schematic{text-align:center;padding:24px;border:1px solid var(--teal);background:var(--teal-wash);font-size:1rem}
.search-input{font-weight:700;margin-bottom:24px}
.search-branches{display:grid;grid-template-columns:1fr 1fr;gap:20px;position:relative;margin-bottom:30px}
.search-branches>div{padding:14px 10px;border:1px solid var(--teal-deep);background:var(--white)}
.search-branches:after{content:'';position:absolute;left:25%;right:25%;height:20px;bottom:-20px;border:solid var(--teal-deep);border-width:0 1px 1px}
.search-schematic p{font-size:1rem;margin:8px 0 0}
.search-merge{position:relative;border:1px solid var(--teal);padding:14px;margin-bottom:22px;background:var(--white)}
.search-merge:before{content:'↓';position:absolute;left:calc(50% - 5px);top:-27px;color:var(--teal-deep)}
.search-output{font-weight:700;color:var(--teal-deep)}
.formula-explanation{max-width:1050px;margin-top:36px}
.example-outcome{border-top:3px solid var(--coral);padding:26px 28px;background:var(--coral-wash);margin-top:34px}
.example-outcome p:last-child{font-size:1rem;margin-bottom:0}
.revision-chain{border:1px solid var(--border-2);padding:28px}
.revision-chain>div{border-left:3px solid var(--coral);padding-left:20px}
.revision-chain>div:last-child{border-left-color:var(--teal)}
.revision-chain span{font-size:.875rem;font-weight:700;color:var(--teal-deep)}
.revision-chain h3{margin:8px 0 10px}
.revision-chain p{font-size:1rem}
.revision-chain .revision-edge{color:var(--coral-deep);padding-left:20px;font-family:var(--font-mono)}
.code-route{background:var(--bg-2);padding:26px}
.code-route ol{padding-left:28px;margin:0}
.code-route li{padding:14px 0 14px 8px;border-top:1px solid var(--border-2)}
.code-route li+li{margin-top:8px}
.code-route strong,.code-route span{display:block;font-size:1rem}
.code-route span{color:var(--fg-2);margin-top:4px}
.work-sequence{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:36px}
.work-sequence article{position:relative;border-top:2px solid var(--teal);padding-top:20px}
.work-sequence article+article:before{content:'→';position:absolute;left:-23px;top:18px;color:var(--teal-deep)}
.work-sequence p{font-size:1rem}
.learning-return{border:solid var(--teal);border-width:0 0 2px 2px;margin:0 0 26px 10px;padding:12px 24px}
.learning-return p{margin:0}
.technology-ledger dl{margin:0 0 30px}
.technology-ledger dl>div{display:grid;grid-template-columns:230px 1fr;gap:30px;padding:20px 0;border-top:1px solid var(--border-2)}
.technology-ledger dt{font-weight:700;color:var(--teal-deep)}
.technology-ledger dd{margin:0;color:var(--fg-2);max-width:900px}
.limit-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.limit-columns p{font-size:1rem}
.limit-columns a{font-size:1rem}
.reference-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}
.reference-main .reference-action{background:var(--coral-deep);color:var(--white)!important;padding:14px 24px;border-radius:var(--radius-full);text-decoration:none!important;font-weight:700;font-size:1rem}
.comparison-field{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin:28px 0 34px}
.reference-main .comparison-field-item{display:block;border-top:2px solid var(--teal);padding-top:18px;color:var(--midnight);text-decoration:none}
.comparison-field-item strong{display:block;font-size:1.3rem;margin-bottom:8px}
.comparison-field-item span{display:block;font-size:1rem;line-height:1.5;color:var(--fg-2)}
.reference-main .comparison-self{border-color:var(--coral)}
.comparison-table-wrap{max-width:100%;margin-bottom:24px}
.comparison-table{width:100%;table-layout:fixed;border-collapse:collapse;text-align:left;font-size:1rem;line-height:1.6}
.comparison-table caption{text-align:left;color:var(--fg-2);margin-bottom:18px}
.comparison-table th,.comparison-table td{padding:18px 14px;vertical-align:top;border:1px solid var(--border-2);overflow-wrap:anywhere}
.comparison-table thead th{background:var(--midnight);color:var(--white);font-size:1.05rem}
.reference-main .comparison-table thead a{color:var(--white)}
.comparison-table th[scope=row]{font-weight:700;background:var(--bg-2)}
.comparison-table .korium-column{background:var(--coral-wash)}
.comparison-table thead .korium-column{background:var(--coral-deep)}
.matrix-mobile-label{display:none}
.reference-main .comparison-sources{font-size:.875rem;line-height:1.7}
.vendor-explanation{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,90px)}
.vendor-explanation>div+div{border-left:1px solid var(--border-2);padding-left:clamp(24px,3vw,45px)}
.vendor-explanation .reference-kicker{color:var(--teal-deep)}
.evaluation-ledger{margin-top:32px}
.evaluation-ledger article{display:grid;grid-template-columns:240px 1fr;gap:34px;border-top:1px solid var(--border-2);padding:22px 0}
.evaluation-ledger h3{font-size:1.1rem;color:var(--teal-deep)}
.evaluation-ledger p{margin:0}
@media(max-width:1100px){.comparison-table{font-size:1rem;table-layout:auto}.comparison-table th,.comparison-table td{padding:15px 10px}.comparison-field{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.comparison-table,.comparison-table tbody,.comparison-table tr{display:block}.comparison-table{border:0}.comparison-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.comparison-table tr{border:1px solid var(--border-2);margin-bottom:28px}.comparison-table th[scope=row]{display:block;padding:18px;border:0;border-bottom:1px solid var(--border-2);font-size:1.125rem}.comparison-table td{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;border:0;border-bottom:1px solid var(--border-1);padding:16px 18px}.comparison-table td:last-child{border-bottom:0}.matrix-mobile-label{display:block;font-weight:700;color:var(--teal-deep)}.comparison-table .korium-column .matrix-mobile-label{color:var(--coral-deep)}}
@media(max-width:760px){.comparison-field{grid-template-columns:1fr 1fr}.comparison-field-item span{font-size:1rem}.comparison-table td{grid-template-columns:90px minmax(0,1fr);gap:12px;padding:16px 12px}.vendor-explanation{grid-template-columns:1fr;gap:24px}.vendor-explanation>div+div{border-left:0;border-top:1px solid var(--border-2);padding:24px 0 0}.evaluation-ledger article{grid-template-columns:1fr;gap:10px}}
@media(max-width:1000px){.circuit-lanes{gap:24px}.circuit-machine{padding:20px}.circuit-lane+.circuit-lane:before{left:-20px}.explain-split{grid-template-columns:1fr 1fr;gap:30px}.work-sequence{grid-template-columns:1fr 1fr;gap:30px}.work-sequence article:nth-child(3):before{content:none}.circuit-parts{grid-template-columns:1fr 1fr}.limit-columns{grid-template-columns:1fr}.technology-ledger dl>div{grid-template-columns:190px 1fr}}
@media(max-width:760px){.reference-head{padding-block:30px}.reference-main{font-size:1.0625rem}.reference-main>section{padding-block:36px}.reference-nav{gap:12px 20px;margin-bottom:30px}.reference-nav a{font-size:1rem}.explain-split{grid-template-columns:1fr;gap:28px}.memory-circuit{padding:20px}.circuit-entry{padding:18px}.circuit-gate{text-align:left;justify-content:flex-start}.circuit-machine{padding:18px}.circuit-lanes{grid-template-columns:1fr;gap:38px}.circuit-lane+.circuit-lane:before{content:'↓';left:calc(50% - 7px);top:-32px}.circuit-stage{margin-bottom:16px}.circuit-node{padding:16px}.circuit-work{padding:18px}.circuit-parts{grid-template-columns:1fr;gap:18px}.circuit-parts>div+div{border-top:1px solid var(--midnight-50);padding-top:14px}.memory-specimen{padding:22px}.memory-specimen dl>div{grid-template-columns:85px 1fr;gap:12px}.work-sequence{grid-template-columns:1fr;gap:32px}.work-sequence article+article:before,.work-sequence article:nth-child(3):before{content:'↓';left:0;top:-31px}.technology-ledger dl>div{grid-template-columns:1fr;gap:8px}.reference-main pre{padding:18px;font-size:.875rem}.search-schematic{padding:18px}.reference-main .section-intro{font-size:1.125rem}}
@media(max-width:760px){.reference-nav{grid-template-columns:1fr 1fr;gap:0 18px;margin:0}.reference-contents{margin-bottom:30px}}
@media print{.skip-link,.reference-contents{display:none}.reference-head,.reference-main{width:100%;padding-inline:0}.memory-circuit{-webkit-print-color-adjust:exact;print-color-adjust:exact}.reference-main>section{break-inside:auto}.explain-split{grid-template-columns:1fr 1fr}.reference-main a{overflow-wrap:anywhere}}
