/* Aftershocks plus: extra section types for Aftershocks issues (Issue 02 onward).
   Upload with aftershocks-plus.js on Appearance > Dariche widgets.
   Every rule is scoped under #ash and uses the variables set by the theme's aftershocks.css. */
#ash{--mono:ui-monospace,"SFMono-Regular","JetBrains Mono",Menlo,Consolas,monospace}
#ash .ashp-kicker{font-family:var(--display);font-size:13px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 8px}
#ash .ashp-tech{color:var(--research)}

/* ---- The take ---- */
#ash .ashp-take{border-left:3px solid var(--accent);padding:2px 0 2px clamp(16px,3vw,26px)}
#ash .ashp-take-p{font-size:clamp(18px,2.4vw,21px);line-height:1.55;max-width:58ch;margin-top:10px}
#ash .ashp-take-p:first-of-type{margin-top:0}
#ash .ashp-sign{font-family:var(--display);font-weight:650;font-size:15px;color:var(--ash-muted);margin-top:12px}

/* ---- By the numbers ---- */
#ash .ashp-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px;margin-top:22px}
#ash .ashp-nums li{background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--c);border-radius:14px;padding:16px 18px 14px;display:flex;flex-direction:column;gap:6px}
#ash .ashp-num{font-family:var(--display);font-weight:780;font-size:clamp(28px,4.2vw,36px);letter-spacing:-.025em;line-height:1;color:var(--accent-ink)}
#ash .ashp-numlabel{font-size:15px;line-height:1.45;color:var(--ink)}

/* ---- Under the hood ---- */
#ash .ashp-hood h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
#ash .ashp-deep{background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:clamp(16px,3.5vw,30px);margin-top:22px}
#ash .ashp-deephead h3{font-size:clamp(22px,3.6vw,29px);letter-spacing:-.02em}
#ash .ashp-by{font-family:var(--display);font-size:14px;font-weight:550;color:var(--ash-muted);margin-top:4px}
#ash .ashp-problem{margin-top:14px;max-width:64ch}
#ash .ashp-problem b{font-family:var(--display)}
#ash .ashp-diagram{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:12px 26px;margin:22px 0 4px;padding:18px;border-radius:12px;background:var(--card);border:1px solid var(--rule)}
#ash .ashp-node{position:relative;border:1.5px solid color-mix(in srgb,var(--ink) 28%,transparent);background:var(--card);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:3px;justify-content:center;min-height:64px;transition:opacity .25s,border-color .25s,background .25s,box-shadow .25s;cursor:default}
#ash .ashp-node b{font-family:var(--display);font-weight:700;font-size:14.5px;line-height:1.2}
#ash .ashp-node small{font-family:var(--mono);font-size:11.5px;line-height:1.35;color:var(--ash-muted)}
#ash .ashp-node--data{border-style:dashed}
#ash .ashp-node--model{background:color-mix(in srgb,var(--fig) 10%,var(--card));border-color:color-mix(in srgb,var(--fig) 55%,transparent)}
#ash .ashp-node--gate{border-color:color-mix(in srgb,var(--safety) 60%,transparent)}
#ash .ashp-node--out{border-color:color-mix(in srgb,var(--accent) 70%,transparent)}
#ash .ashp-node[data-arrow]::after{content:"";position:absolute;top:50%;right:-21px;width:16px;height:2px;background:color-mix(in srgb,var(--ink) 40%,transparent)}
#ash .ashp-node[data-arrow]::before{content:"";position:absolute;top:calc(50% - 4px);right:-22px;border:5px solid transparent;border-left:6px solid color-mix(in srgb,var(--ink) 40%,transparent);border-right:0}
#ash.ashp-js .ashp-deep.is-live .ashp-node{opacity:.38}
#ash.ashp-js .ashp-deep.is-live .ashp-node.is-on{opacity:1;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,var(--card));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
#ash .ashp-steps{margin-top:18px;display:grid;gap:14px;counter-reset:s}
#ash .ashp-step h4{font-family:var(--display);font-size:17px;font-weight:700;margin:0;display:flex;align-items:center;gap:10px;color:var(--ink);text-transform:none;letter-spacing:0}
#ash .ashp-step h4 span{flex:none;width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--on-ink);font-size:13px;display:inline-flex;align-items:center;justify-content:center}
#ash .ashp-step p{margin-top:6px;max-width:64ch;font-size:16.5px}
#ash.ashp-js .ashp-step{display:none;min-height:112px}
#ash.ashp-js .ashp-step.is-on{display:block;animation:ash-fade .3s ease both}
#ash.ashp-js .ashp-stepctl.ash-js-only{display:flex}
#ash .ashp-stepctl{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}
#ash .ashp-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;margin-top:22px}
#ash .ashp-specs,#ash .ashp-caveat{background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:16px 18px}
#ash .ashp-grid h4,#ash .ashp-caveat h4{font-family:var(--display);font-size:15px;font-weight:700;margin:0 0 8px;color:var(--ink);text-transform:none;letter-spacing:0}
#ash .ashp-specs dl{display:grid;grid-template-columns:auto 1fr;gap:7px 16px;margin:0}
#ash .ashp-specs dt{font-family:var(--display);font-size:13.5px;font-weight:600;color:var(--ash-muted);margin:0}
#ash .ashp-specs dd{font-family:var(--mono);font-size:13.5px;line-height:1.45;margin:0}
#ash .ashp-specs dd .ash-cite{font-size:12px}
#ash .ashp-caveat{border-left:3px solid var(--safety)}
#ash .ashp-caveat h4{color:var(--safety)}
#ash .ashp-caveat p{font-size:15.5px}
#ash .ashp-code{margin-top:16px}
#ash .ashp-code summary{font-family:var(--display);font-weight:650;font-size:15px;list-style:none;display:inline-flex;border-bottom:2px solid var(--ink)}
#ash .ashp-code summary::-webkit-details-marker{display:none}
#ash .ashp-code pre{margin:12px 0 0;background:var(--stage);color:#e4ebe6;border-radius:12px;padding:16px 18px;overflow:auto;font-family:var(--mono);font-size:13px;line-height:1.55;white-space:pre}
#ash .ashp-code code{font-family:inherit;background:none;color:inherit;padding:0}
#ash .ashp-try{margin-top:14px;font-family:var(--display);font-size:14.5px;color:var(--ash-muted)}

/* ---- Signal vs noise ---- */
#ash .ashp-sigwrap{margin-top:22px;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start}
#ash .ashp-plot{position:relative;aspect-ratio:1/0.82;background:var(--card);border:1px solid var(--rule);border-radius:14px;background-image:linear-gradient(var(--rule),var(--rule)),linear-gradient(var(--rule),var(--rule));background-size:1px 100%,100% 1px;background-position:50% 0,0 50%;background-repeat:no-repeat;margin:0 0 26px 26px}
#ash .ashp-quad{position:absolute;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--ash-muted) 80%,transparent);padding:10px 12px;pointer-events:none}
#ash .ashp-quad--tl{left:0;top:0}#ash .ashp-quad--tr{right:0;top:0;text-align:right}#ash .ashp-quad--bl{left:0;bottom:0}#ash .ashp-quad--br{right:0;bottom:0;text-align:right}
#ash .ashp-quad--tl{color:var(--accent-ink)}
#ash .ashp-axis{position:absolute;font-family:var(--display);font-size:12.5px;font-weight:600;color:var(--ash-muted);white-space:nowrap}
#ash .ashp-axis--x{left:0;bottom:-24px}
#ash .ashp-axis--y{left:-24px;bottom:0;transform:rotate(-90deg);transform-origin:0 0;translate:0 0}
#ash .ashp-pt{position:absolute;transform:translate(-50%,50%);display:flex;align-items:center;gap:6px;padding:4px;border-radius:999px;z-index:1}
#ash .ashp-pt i{flex:none;width:14px;height:14px;border-radius:50%;background:var(--c);box-shadow:0 0 0 2px var(--card);transition:transform .15s}
#ash .ashp-pt span{position:absolute;left:24px;top:50%;transform:translateY(-50%);font-family:var(--display);font-size:12.5px;font-weight:650;line-height:1.15;white-space:nowrap;color:var(--ink);background:color-mix(in srgb,var(--card) 82%,transparent);padding:1px 4px;border-radius:4px}
#ash .ashp-pt[data-lab=left] span{left:auto;right:24px}
#ash .ashp-pt:hover i,#ash .ashp-pt.is-on i{transform:scale(1.35)}
#ash .ashp-pt.is-on{z-index:3}
#ash .ashp-pt.is-on i{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--c)}
#ash .ashp-pt.is-on span{background:var(--ink);color:var(--on-ink)}
#ash .ashp-sigdetail{min-height:180px;background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--c,var(--accent));border-radius:14px;padding:16px 18px}
#ash .ashp-verdict{font-family:var(--display);font-size:13px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}
#ash .ashp-sigdetail h3,#ash .ashp-siglist h3{font-size:20px;margin-top:4px}
#ash .ashp-sigdetail p:last-child,#ash .ashp-siglist li>p:last-child{margin-top:6px;font-size:16px}
#ash .ashp-siglist{margin-top:10px;display:grid;gap:14px}
#ash .ashp-siglist li{border-left:3px solid var(--c);padding-left:14px}
#ash.ashp-js .ashp-siglist{display:none}
#ash.ashp-js .ashp-sigdetail.ash-js-only{display:block}

/* ---- Since last issue ---- */
#ash .ashp-since{margin-top:22px;border-top:1px solid var(--rule)}
#ash .ashp-since li{display:grid;grid-template-columns:118px 1fr;gap:6px 18px;padding:16px 0;border-bottom:1px solid var(--rule)}
#ash .ashp-since h3{font-size:19px}
#ash .ashp-then,#ash .ashp-now{margin-top:5px;font-size:16px;max-width:64ch}
#ash .ashp-then{color:var(--ash-muted)}
#ash .ashp-then b,#ash .ashp-now b{font-family:var(--display);font-weight:700;font-size:14px}
#ash .ashp-status{align-self:start;justify-self:start;font-family:var(--display);font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px;--s:var(--ash-muted);color:var(--s);background:color-mix(in srgb,var(--s) 12%,transparent);border:1px solid color-mix(in srgb,var(--s) 40%,transparent);margin-top:2px}
#ash .ashp-status--escalated{--s:var(--safety)}
#ash .ashp-status--moving,#ash .ashp-status--in-motion{--s:var(--markets)}
#ash .ashp-status--resolved,#ash .ashp-status--done{--s:var(--models)}
#ash .ashp-status--new-twist,#ash .ashp-status--twist{--s:var(--research)}
#ash .ashp-status--quiet,#ash .ashp-status--still-open{--s:var(--ash-muted)}

/* ---- Calls (predictions) ---- */
#ash .ashp-calls{margin-top:22px;display:grid;gap:16px}
#ash .ashp-calls li{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start;background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:16px 18px}
#ash .ashp-p{width:64px;height:64px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--p)*1%),var(--rule) 0);display:grid;place-items:center;position:relative}
#ash .ashp-p::before{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--card)}
#ash .ashp-p b{position:relative;font-family:var(--display);font-weight:780;font-size:16px;color:var(--accent-ink)}
#ash .ashp-calls h3{font-size:19px}
#ash .ashp-calls p{margin-top:5px;font-size:16px}

/* ---- Reading list tags ---- */
#ash .ashp-tag{display:inline-block;font-family:var(--display);font-size:11.5px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;padding:1px 8px;border-radius:999px;margin-right:6px;vertical-align:1px;--s:var(--models);color:var(--s);border:1px solid color-mix(in srgb,var(--s) 45%,transparent)}
#ash .ashp-tag--technical{--s:var(--research)}
#ash .ashp-tag--report{--s:var(--markets)}
#ash .ashp-tag--essay{--s:var(--tools)}

#ash .ashp-err{font-family:var(--mono);font-size:12px;color:var(--safety)}

@media (max-width:720px){
#ash .ashp-sigwrap,#ash .ashp-grid{grid-template-columns:1fr}
#ash .ashp-diagram{display:flex;flex-direction:column;gap:18px;padding:14px}
#ash .ashp-node{min-height:0}
#ash .ashp-node[data-arrow]::after{top:auto;bottom:-15px;right:auto;left:50%;width:2px;height:12px}
#ash .ashp-node[data-arrow]::before{top:auto;bottom:-17px;right:auto;left:calc(50% - 4px);border:5px solid transparent;border-top:6px solid color-mix(in srgb,var(--ink) 40%,transparent);border-bottom:0}
#ash .ashp-since li{grid-template-columns:1fr}
}
@media (max-width:600px){
#ash .ashp-pt span{display:none}
#ash .ashp-pt.is-on span{display:block}
#ash .ashp-quad{font-size:10.5px;padding:7px 8px}
#ash .ashp-calls li{grid-template-columns:56px 1fr;gap:12px}
#ash .ashp-p{width:52px;height:52px}
#ash .ashp-p b{font-size:14px}
}
@media (prefers-reduced-motion:reduce){#ash .ashp-node,#ash .ashp-pt i{transition:none!important}}

/* ---- For builders ---- */
#ash .ashp-build{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:12px;margin-top:22px}
#ash .ashp-build li{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:16px 18px}
#ash .ashp-btag{font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--research)}
#ash .ashp-build h3{font-size:18px;margin-top:6px}
#ash .ashp-build li>p:last-child{margin-top:6px;font-size:15px;line-height:1.55}
#ash .ashp-build code,#ash .ashp-specs code{font-family:var(--mono);font-size:.88em;background:var(--fog);padding:1px 5px;border-radius:5px}
