.xp{gap:16px;margin-bottom:28px;padding-block:clamp(16px,2.2vw,24px);display:grid}.xp .xp-head{font-size:inherit;margin:0}.xp .xp-toggle{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:18px;padding:0;display:flex}.xp .xp-toggle-text{gap:4px;display:grid}.xp .xp-toggle .kicker{margin:0}.xp .xp-title{color:var(--text-0);font-size:clamp(1.3rem,2.4vw,1.6rem);font-weight:700;line-height:1.2}.xp .xp-sub{color:var(--text-1);font-size:.92rem;font-weight:400}.xp .xp-chev{border:1px solid var(--border-1);width:40px;height:40px;transition:border-color var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease);border-radius:50%;flex:none;place-items:center;display:grid}.xp .xp-chev:after{content:"";border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);width:8px;height:8px;transition:transform var(--t-fast) var(--ease);transform:translateY(-2px)rotate(45deg)}.xp .xp-toggle[aria-expanded=true] .xp-chev:after{transform:translateY(2px)rotate(-135deg)}.xp .xp-toggle:hover .xp-chev,.xp .xp-toggle:focus-visible .xp-chev{border-color:rgb(var(--accent-rgb) / .6);box-shadow:var(--glow-soft)}.xp .xp-body[hidden]{display:none}.xp .xp-body{border-top:1px solid var(--border-0);gap:16px;padding-top:16px;display:grid}.xp .xp-intro{color:var(--text-1);max-width:78ch;margin:0}.xp code{font-family:var(--font-mono);color:var(--text-0);font-size:.88em}.xp .xp-form{gap:12px;display:grid}.xp .xp-paste,.xp .xp-star{gap:6px;display:grid}.xp .xp-paste>span,.xp .xp-star>span{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);font-size:.7rem}.xp .xp-star em{text-transform:none;letter-spacing:0;font-style:normal}.xp textarea,.xp input{font:inherit;color:var(--text-0);background:var(--bg-0);border:1px solid var(--border-1);border-radius:var(--radius-s);min-width:0;transition:border-color var(--t-fast), box-shadow var(--t-base);padding:10px 12px}.xp textarea{font-family:var(--font-mono);resize:vertical;min-height:110px;font-size:.78rem;line-height:1.5}.xp textarea:focus,.xp input:focus{border-color:var(--accent);box-shadow:var(--glow-soft);outline:none}.xp .xp-row{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.xp .xp-star{width:min(220px,100%)}.xp .xp-hint{color:var(--text-2);margin:0;font-size:.8rem}.xp .xp-status{font-family:var(--font-mono);color:var(--accent);margin:0;font-size:.8rem}.xp .xp-status:empty,.xp .xp-result[hidden]{display:none}.xp .xp-result{border-top:1px solid var(--border-0);gap:12px;padding-top:16px;display:grid}.xp .xp-res-head h3{margin:0 0 4px;font-size:1.15rem}.xp .xp-res-head p{color:var(--text-2);margin:0;font-size:.85rem}.xp .xp-res-head b{color:var(--text-0);font-weight:600}.xp .xp-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.xp .xp-item{border-radius:var(--radius-s);background:rgb(var(--ink-rgb) / .04);grid-template-columns:minmax(0,1.3fr) minmax(80px,1fr) auto;align-items:center;gap:6px 16px;margin:0;padding:10px 14px;display:grid}.xp .xp-name{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.xp .xp-name a{color:var(--text-0);font-weight:600}.xp .xp-name a:hover{color:var(--accent)}.xp .xp-value{font-family:var(--font-mono);color:var(--text-2);font-size:.74rem}.xp .xp-bar{background:rgb(var(--ink-rgb) / .08);border-radius:999px;height:8px;overflow:hidden}.xp .xp-bar i{border-radius:inherit;background:var(--accent);height:100%;box-shadow:var(--glow-soft);display:block}.xp .xp-num{min-width:64px;font-family:var(--font-mono);justify-items:end;display:grid}.xp .xp-num b{color:var(--accent);font-size:1rem}.xp .xp-num small{color:var(--text-2);white-space:nowrap;font-size:.68rem}.xp .xp-item.is-unlikely .xp-bar i{background:rgb(var(--ink-rgb) / .3);box-shadow:none}.xp .xp-item.is-unlikely .xp-num b{color:var(--text-2)}.xp .xp-reason{color:var(--text-2);grid-column:1/-1;margin:0;font-size:.76rem}.xp .xp-more{background:0 0;border:0;padding:0}.xp .xp-more summary{color:var(--accent);padding:4px 0;font-size:.85rem;display:inline-flex}.xp .xp-more summary:after{content:none}.xp .xp-none,.xp .xp-foot{color:var(--text-2);margin:0;font-size:.8rem}@media (width<=560px){.xp .xp-item{grid-template-columns:minmax(0,1fr) auto}.xp .xp-bar{grid-area:2/1/auto/-1}}.exo{padding-block:8px 72px}.exo-back{color:var(--text-2);margin-bottom:18px;font-size:.9rem;display:table}.exo-back:hover{color:var(--accent)}.exo-head h1{margin:0 0 12px}.exo-howto{color:var(--text-1);align-items:center;gap:14px;margin-top:18px;font-size:.9rem;display:flex}.exo-howto p{margin:0}.exo-howto svg{flex:none}.exo-source{font-family:var(--font-mono);color:var(--text-2);margin:14px 0 0;font-size:.76rem}.exo-controls{z-index:5;background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--radius-m);grid-template-columns:minmax(0,260px) minmax(0,1fr) auto auto;align-items:end;gap:12px 16px;margin-bottom:28px;padding:14px 18px;display:grid;position:sticky;top:70px;box-shadow:0 14px 34px #00000047}.exo-pred[hidden]{display:none}.exo-pred{border-radius:var(--radius-s);background:rgb(var(--accent-rgb) / .1);border:1px solid rgb(var(--accent-rgb) / .35);color:var(--text-0);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px 14px;margin:0;padding:8px 12px;font-size:.88rem;display:flex}.exo-pred button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.exo-pred-badge{background:rgb(var(--accent-rgb) / .14);border:1px solid rgb(var(--accent-rgb) / .4);font-family:var(--font-mono);color:var(--accent);vertical-align:middle;border-radius:999px;margin-left:10px;padding:2px 8px;font-size:.72rem;font-weight:500;display:inline-block}.exo-flash{animation:exo-flash 1.6s var(--ease)}@keyframes exo-flash{0%,40%{box-shadow:0 0 0 2px var(--accent), var(--glow-strong)}to{box-shadow:none}}.exo-controls[hidden],.exo-genus[hidden],.exo-sp[hidden],.exo-cond[hidden],.exo-cond-n[hidden]{display:none}.exo-controls:has(.exo-cond:not([hidden])){position:static}.exo-cond-toggle{font:inherit;color:var(--text-0);background:rgb(var(--ink-rgb) / .04);border:1px solid var(--border-1);cursor:pointer;white-space:nowrap;transition:border-color var(--t-fast), box-shadow var(--t-base);border-radius:999px;align-items:center;gap:8px;margin-bottom:1px;padding:9px 14px;font-size:.9rem;font-weight:600;display:inline-flex}.exo-cond-toggle:after{content:"";width:6px;height:6px;transition:transform var(--t-fast) var(--ease);border-bottom:2px solid;border-right:2px solid;transform:translateY(-2px)rotate(45deg)}.exo-cond-toggle[aria-expanded=true]:after{transform:translateY(1px)rotate(-135deg)}.exo-cond-toggle:hover,.exo-cond-toggle[aria-expanded=true]{border-color:rgb(var(--accent-rgb) / .6);box-shadow:var(--glow-soft)}.exo-cond-n{background:var(--accent);min-width:20px;height:20px;color:var(--on-accent);font-family:var(--font-mono);border-radius:999px;place-items:center;padding:0 6px;font-size:.72rem;display:inline-grid}.exo-cond{border-top:1px solid var(--border-0);grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(min(100%,132px),1fr));align-items:end;gap:12px 14px;padding-top:14px;display:grid}.exo-unit{display:grid;position:relative}.exo-unit input{padding-right:46px}.exo-unit i{font-style:normal;font-family:var(--font-mono);color:var(--text-2);pointer-events:none;font-size:.78rem;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.exo-cond-note{color:var(--text-2);grid-column:1/-1;margin:0;font-size:.8rem}.exo-clear{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:0;font-size:.85rem;font-weight:600}.exo-field{gap:6px;display:grid}.exo-field>span:first-child{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);font-size:.7rem}.exo-field select,.exo-field input{font:inherit;color:var(--text-0);background:var(--bg-0);border:1px solid var(--border-1);border-radius:var(--radius-s);min-width:0;transition:border-color var(--t-fast), box-shadow var(--t-base);padding:9px 12px;font-size:.95rem}.exo-field select:focus,.exo-field input:focus{border-color:var(--accent);box-shadow:var(--glow-soft);outline:none}.exo-count{font-family:var(--font-mono);color:var(--text-2);white-space:nowrap;margin:0 0 10px;font-size:.78rem}.exo-genus{margin-bottom:44px;scroll-margin-top:170px}.exo-genus-head{border-left:3px solid rgb(var(--accent-rgb) / .7);margin-bottom:18px}.exo-genus-title{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.exo-genus-title h2{margin:0;font-size:clamp(1.5rem,3vw,2rem)}.exo-chips{flex-wrap:wrap;gap:6px;display:flex}.exo-gdesc{color:var(--text-1);max-width:80ch;margin:12px 0 0}.exo-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));align-items:start;gap:18px;display:grid}.exo-req{flex-wrap:wrap;gap:6px;margin:12px 0 0;display:flex}.exo-req>div{border:1px solid var(--border-1);background:rgb(var(--ink-rgb) / .03);border-radius:999px;align-items:baseline;gap:7px;padding:4px 11px;font-size:.82rem;line-height:1.35;display:inline-flex}.exo-req dt{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:.66rem}.exo-req dd{color:var(--text-0);margin:0}.exo-sp{flex-direction:column;gap:12px;padding:20px 22px 18px;scroll-margin-top:170px;display:flex}.exo-sp>*{margin:0}.exo-sp>.chip{align-self:flex-start}.exo-sp .exo-req{margin:0}.exo-sp-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.exo-sp-head h3{margin:0;font-size:1.2rem}.exo-value{text-align:right;white-space:nowrap;justify-items:end;gap:2px;display:grid}.exo-value strong{font-family:var(--font-mono);color:var(--accent);text-shadow:var(--glow-text);font-size:1rem}.exo-value span{color:var(--text-2);font-size:.74rem}.exo-desc{color:var(--text-1);font-size:.9rem}.exo-sub{color:var(--text-2);margin:0;font-size:.8rem}.exo-sub b{color:var(--text-0);font-weight:600}.exo-none{border:1px dashed var(--border-1);border-radius:var(--radius-s);color:var(--text-2);padding:12px 14px;font-size:.85rem}.exo-found{border-top:1px solid var(--border-0);gap:10px;padding-top:12px;display:grid}.exo-shares{gap:10px;margin:0;display:grid}.exo-share{grid-template-columns:82px minmax(0,1fr);align-items:start;gap:10px;display:grid}.exo-share dt{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);padding-top:1px;font-size:.66rem}.exo-share dd{gap:6px;margin:0;display:grid}.exo-stack{border-radius:999px;gap:2px;height:7px;display:flex;overflow:hidden}.exo-stack i{min-width:3px;display:block}.exo-legend{color:var(--text-1);flex-wrap:wrap;gap:3px 12px;margin:0;padding:0;font-size:.76rem;list-style:none;display:flex}.exo-legend li{align-items:center;gap:5px;margin:0;display:inline-flex}.exo-legend i,.exo-swatches i{width:9px;height:9px;box-shadow:inset 0 0 0 1px rgb(var(--ink-rgb) / .25);border-radius:50%;flex:none}.exo-legend b{font-family:var(--font-mono);color:var(--text-0);font-weight:500}.exo-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.exo-chart{min-width:0;margin:0}.exo-chart figcaption{gap:1px;margin-bottom:6px;font-size:.78rem;display:grid}.exo-chart-k{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.exo-mode{color:var(--text-2);white-space:nowrap}.exo-mode b{font-family:var(--font-mono);color:var(--accent);font-weight:600}.exo-chart svg{border-bottom:1px solid var(--border-1);width:100%;height:54px;display:block}.exo-bars{fill:rgb(var(--accent-rgb) / .3)}.exo-bars-mode{fill:var(--accent);filter:drop-shadow(0 0 4px rgb(var(--accent-rgb) / calc(.7 * var(--glow-k))))}.exo-mode-line{stroke:var(--accent);stroke-width:1px;stroke-dasharray:2 3;vector-effect:non-scaling-stroke;opacity:.85}.exo-range-track{fill:rgb(var(--accent-rgb) / .22)}.exo-range-note{color:var(--text-2);margin:3px 0 0;font-size:.68rem}.exo-axis{font-family:var(--font-mono);color:var(--text-2);justify-content:space-between;gap:8px;margin-top:4px;font-size:.68rem;display:flex}.exo-more{border:0;border-top:1px solid var(--border-0);background:0 0;border-radius:0;padding:0}.exo-more summary{cursor:pointer;color:var(--accent);justify-content:flex-start;align-items:center;gap:8px;padding:12px 0 0;font-size:.85rem;font-weight:600;list-style:none;display:inline-flex}.exo-more>.exo-more-body{padding-bottom:2px}.exo-more summary::-webkit-details-marker{display:none}.exo-more summary:after{content:"";width:7px;height:7px;transition:transform var(--t-fast) var(--ease);border-bottom:2px solid;border-right:2px solid;transform:translateY(-2px)rotate(45deg)}.exo-more[open] summary:after{transform:translateY(1px)rotate(-135deg)}.exo-more-body{gap:12px;padding-top:14px;display:grid}.exo-more-body h4{margin:6px 0 0;font-size:.9rem}.exo-mats{grid-template-columns:repeat(auto-fill,minmax(164px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.exo-mats li{border-radius:var(--radius-s);background:rgb(var(--ink-rgb) / .04);align-items:baseline;gap:6px;margin:0;padding:5px 9px;font-size:.78rem;display:flex}.exo-mats span{color:var(--text-1);flex:1}.exo-mats b{font-family:var(--font-mono);font-weight:500}.exo-mats small{font-family:var(--font-mono);color:var(--text-2);font-size:.66rem}.exo-colours{gap:7px;margin-top:12px;display:grid}.exo-sp .exo-colours{margin-top:0}.exo-swatches{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.exo-swatches li{border:1px solid var(--border-0);color:var(--text-1);border-radius:999px;align-items:center;gap:6px;margin:0;padding:3px 9px 3px 6px;font-size:.76rem;display:inline-flex}.exo-sw-k{font-family:var(--font-mono);color:var(--text-2);font-size:.7rem}.exo-empty{text-align:center;color:var(--text-1)}.exo-credits{color:var(--text-1);margin-top:24px;font-size:.9rem}.exo-credits h2{margin-bottom:10px;font-size:1.15rem}.exo-credits-lead{max-width:78ch;margin:0 0 18px}.exo-thanks{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 18px;padding:0;list-style:none;display:grid}.exo-thanks li{margin:0}.exo-thanks>li{grid-column:span 2}.exo-thanks>.exo-thanks-half{grid-column:span 3}@media (width<=900px){.exo-thanks>li,.exo-thanks>.exo-thanks-half{grid-column:span 3}}@media (width<=560px){.exo-thanks>li,.exo-thanks>.exo-thanks-half{grid-column:1/-1}}.exo-thanks a,.exo-thanks div{border-radius:var(--radius-m);border:1px solid var(--border-1);background:rgb(var(--ink-rgb) / .03);height:100%;color:var(--text-1);transition:border-color var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease), transform var(--t-fast) var(--ease);align-content:start;gap:5px;padding:16px 18px;text-decoration:none;display:grid}.exo-thanks a:hover{border-color:rgb(var(--accent-rgb) / .6);box-shadow:var(--glow-soft);color:var(--text-1);transform:translateY(-1px)}.exo-thanks-k{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:.66rem}.exo-thanks strong{color:var(--text-0);font-size:1.05rem}.exo-thanks strong:after{content:" ↗";color:var(--text-2);font-size:.8em}.exo-thanks div strong:after{content:none}.exo-thanks :is(a,div)>span:last-child{font-size:.86rem;line-height:1.5}.exo-credits-small{color:var(--text-2);margin:0;font-size:.8rem}@media (width<=900px){.exo-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:12px 14px;top:68px}.exo-count{grid-column:1;align-self:center;margin:0}.exo-cond-toggle{justify-self:end}}@media (width<=480px){.exo-controls{grid-template-columns:minmax(0,1fr);position:static}.exo-sp{padding:16px}.exo-sp-head{flex-direction:column;gap:6px}.exo-value{text-align:left;justify-items:start}.exo-share{grid-template-columns:minmax(0,1fr);gap:5px}.exo-howto svg{display:none}}
