/* XAU Setups - Live Liquidity Alerts v21. Uses the liquidity-map panel tokens (--pn, --pn2, --ln, --tx, --mu) from lfm.css.
   Step states: done = gold, in progress = gold outline, waiting = grey, invalidated/expired = red, not reached = faded.
   Direction: bullish = green, bearish = red (chip, chart marker and zone box only). */
.la-shell,.lm{--bull:#4ADE80;--bear:#F87171;--bull-a:rgba(74,222,128,.13);--bear-a:rgba(248,113,113,.13)}
.la-shell{--pn:#0E1A2D;--pn2:#13233B;--ln:rgba(255,255,255,.10);--tx:#E8EDF5;--mu:#A9B5C8;background:var(--pn);color:var(--tx);border-radius:24px;border:1px solid var(--ln);box-shadow:0 40px 80px -50px rgba(11,20,35,.6);overflow:hidden}
.la-panel{border-top:1px solid var(--ln);padding:18px 18px 20px}
.la-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:12px}
.la-top h3,.la-top h2{display:flex;align-items:center;gap:10px;margin:0;font:800 18px/1.2 'Inter',system-ui,sans-serif;color:var(--tx)}
.la-live{display:inline-flex;align-items:center;gap:7px;font:700 12.5px/1.2 'Inter',system-ui,sans-serif;color:var(--mu);letter-spacing:.02em}
.la-live i{width:8px;height:8px;border-radius:50%;background:var(--x-gd);box-shadow:0 0 0 3px rgba(217,181,109,.2)}
.la-sub{margin:0 0 14px;font-size:13.5px;line-height:1.5;color:var(--mu)}
.la-sub a,.la-foot a{color:var(--x-gd2);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.la-list{display:grid;gap:12px}
.la-list.cols{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));align-items:start}
.la-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;margin-top:12px;font-size:13px;color:var(--mu)}
.la-load{margin:0;padding:14px;border:1px dashed var(--ln);border-radius:14px;color:var(--mu);font-size:14px}
.la-empty{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px dashed var(--ln);border-radius:14px;background:var(--pn2)}
.la-empty p{margin:0;font-size:14.5px;line-height:1.55;color:var(--tx)}
.la-pulse{flex:none;width:10px;height:10px;margin-top:6px;border-radius:50%;background:var(--mu)}
.la-card{position:relative;padding:14px 16px 12px;border-radius:16px;background:var(--pn2);border:1px solid var(--ln);min-width:0}
.la-card.s-confirmed{border-color:rgba(217,181,109,.55)}
.la-ch{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px}
.la-dir{font:800 12px/1.2 'Inter',system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.la-card.bull .la-dir{color:var(--bull)}.la-card.bear .la-dir{color:var(--bear)}
.la-badge{padding:4px 9px;border-radius:999px;font:800 11.5px/1.2 'Inter',system-ui,sans-serif;letter-spacing:.03em;border:1px solid var(--ln);color:var(--mu)}
.s-confirmed .la-badge{background:var(--x-gd);border-color:var(--x-gd);color:#0B1423}
.s-sweep .la-badge,.s-choch .la-badge{border-color:var(--x-gd);color:var(--x-gd2)}
.s-invalidated .la-badge,.s-expired .la-badge{border-color:rgba(248,113,113,.5);color:#FCA5A5}
.la-h{margin:8px 0 10px;font:800 16px/1.3 'Inter',system-ui,sans-serif;color:var(--tx);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.la-steps{list-style:none;margin:0;padding:0;display:grid;gap:0}
.la-st{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:0 0 12px}
.la-st:last-child{padding-bottom:4px}
.la-st:not(:last-child)::before{content:"";position:absolute;left:13px;top:28px;bottom:2px;width:2px;background:var(--ln);border-radius:2px}
.la-st.done:not(:last-child)::before{background:var(--x-gd)}
.la-st i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font:800 13px/1 'Inter',system-ui,sans-serif;font-style:normal;border:2px solid var(--ln);color:var(--mu);background:var(--pn)}
.la-st.done i{background:var(--x-gd);border-color:var(--x-gd);color:#0B1423}
.la-st.active i{border-color:var(--x-gd);color:var(--x-gd2);box-shadow:0 0 0 4px rgba(217,181,109,.18)}
.la-st.fail i{border-color:var(--bear);color:var(--bear)}
.la-st.off i{border-style:dashed}.la-st.off b{color:var(--mu)}
.la-st b{display:block;font:800 14px/1.3 'Inter',system-ui,sans-serif;color:var(--tx);padding-top:4px}
.la-st span{display:block;font-size:13.5px;line-height:1.45;color:var(--mu);font-variant-numeric:tabular-nums}
.la-st.fail span{color:#FCA5A5}
.la-st b .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0}
.la-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin:8px 0 0;padding-top:10px;border-top:1px solid var(--ln);font-size:12.5px;color:var(--mu);font-variant-numeric:tabular-nums}
.la-meta b{color:var(--tx)}
.la-note{margin:6px 0 0;font-size:12.5px;line-height:1.45;color:var(--mu)}
/* chart overlay (inside the liquidity map SVG) */
.la-zone{stroke-width:1.2;stroke-dasharray:4 3}
.la-zone.bull{fill:var(--bull-a);stroke:var(--bull)}.la-zone.bear{fill:var(--bear-a);stroke:var(--bear)}
.la-mark{stroke-width:2.2;fill:var(--pn)}.la-mark.bull{stroke:var(--bull)}.la-mark.bear{stroke:var(--bear)}.la-mark.off{opacity:.55}
.lm-legend .k-la{width:11px;height:11px;border:2px solid var(--bull);transform:rotate(45deg);border-radius:1px}
.lm-legend .k-laz{width:20px;height:11px;border:1px dashed var(--bull);background:var(--bull-a);border-radius:2px}
/* history page */
.la-filters{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--ln)}
.la-fg{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.la-fg>span{font:700 12px/1.2 'Inter',system-ui,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--mu);margin-right:4px}
.la-fb{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--ln);background:transparent;color:var(--tx);font:700 14px/1 'Inter',system-ui,sans-serif;cursor:pointer}
.la-fb:hover{border-color:var(--x-gd)}
.la-fb[aria-pressed="true"]{background:var(--x-gd);border-color:var(--x-gd);color:#0B1423}
.la-fb:focus-visible{outline:3px solid var(--x-gd);outline-offset:2px}
.la-count{margin-left:auto;font-size:13.5px;color:var(--mu)}
.la-hist{padding:18px}
.la-rule{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;counter-reset:r}
.la-rule li{position:relative;padding:20px 18px 18px;border-radius:18px;background:#fff;border:1px solid var(--x-ln)}
.la-rule li b{display:flex;align-items:center;gap:10px;font:800 17px/1.25 'Inter',system-ui,sans-serif;color:var(--x-tx);margin-bottom:6px}
.la-rule li b i{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--x-ink);color:var(--x-gd);font:800 14px/1 'Inter',system-ui,sans-serif;font-style:normal}
.la-rule li p{margin:0;font-size:15px;line-height:1.55;color:var(--x-mu)}
.la-rule svg{display:block;width:100%;height:auto;margin:0 0 12px;border-radius:12px;background:#F5F7FA}
.la-nob{margin-top:16px;padding:16px 18px;border-radius:16px;border:1px solid rgba(185,28,28,.25);background:#FEF2F2;color:#7F1D1D;font-size:15.5px;line-height:1.55}
.la-nob b{color:#7F1D1D}
.la-pcta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:16px;padding:20px 22px;border-radius:20px;background:var(--x-ink);color:#E8EDF5}
.la-pcta h2{margin:0 0 4px;font:800 21px/1.25 'Inter',system-ui,sans-serif;color:#fff}
.la-pcta p{margin:0;color:#C9D3E2;font-size:15px;line-height:1.5}
@media (max-width:900px){.la-rule{grid-template-columns:1fr}}
@media (max-width:720px){.la-panel{padding:14px 12px 16px}.la-filters{padding:12px}.la-hist{padding:12px}.la-count{margin-left:0;flex-basis:100%}.la-shell{border-radius:18px}.la-card{padding:12px 12px 10px}}
@media (prefers-reduced-motion:no-preference){.la-st.active i{animation:la-p 2.4s ease-in-out infinite}@keyframes la-p{50%{box-shadow:0 0 0 7px rgba(217,181,109,.06)}}}
