/* ============================================================================
   Altaha — Chart patterns panel
   Uses the site's existing tokens; adds no colours of its own beyond the
   direction accents.
   ========================================================================== */

.patpanel{max-width:860px;margin:26px auto 40px;padding:0 18px}
.pathdr{border-bottom:1px solid var(--rule);padding-bottom:11px;margin-bottom:18px}
.pathdr h3{font-family:var(--serif);font-size:23px;font-weight:400;margin:0 0 4px}
.pathdr span{font-family:var(--mono);font-size:10px;letter-spacing:.12em;
             text-transform:uppercase;color:var(--mute)}
.patload{font-size:13.5px;line-height:1.75;color:var(--mute);padding:18px 0;max-width:620px}

.patcard{border:1px solid var(--rule-2);border-left:3px solid var(--rule);
         border-radius:var(--r-card);background:#fff;box-shadow:var(--sh-1);
         padding:18px 20px;margin-bottom:16px}
.patcard.bullish{border-left-color:#1f6f43}
.patcard.bearish{border-left-color:#a11}
.patcard.neutral{border-left-color:var(--gold-dp)}

.pathead{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.patname{font-family:var(--serif);font-size:21px;line-height:1.2}
.patstatus{font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;
           border:1px solid var(--rule);border-radius:var(--r-pill);padding:2px 8px;
           margin-left:9px;font-style:normal;white-space:nowrap}
.patstatus.confirmed{border-color:#1f6f43;color:#1f6f43;background:rgba(31,111,67,.07)}
.patstatus.forming{border-color:var(--gold-dp);color:var(--gold-dp)}
.patstatus.failed{border-color:#a11;color:#a11;background:#fdf3f3}
.patconf-n{font-family:var(--serif);font-size:25px;color:var(--gold-dp);flex-shrink:0;text-align:right}
.patconf-n small{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.13em;
                 text-transform:uppercase;color:var(--mute);margin-top:2px}

.patlevels{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:14px 0 0;
           background:var(--rule-2);border:1px solid var(--rule-2);border-radius:7px;overflow:hidden}
.patlevels > div{background:var(--paper);padding:10px 12px;min-width:0}
.patlevels b{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.15em;
             text-transform:uppercase;color:var(--mute);font-weight:400;margin-bottom:3px}
.patlevels span{font-family:var(--serif);font-size:17px;color:var(--ink);
                font-variant-numeric:tabular-nums}
.patlevels i{font-style:normal;font-family:var(--mono);font-size:10px;color:var(--mute)}

.patwhy{font-size:13px;line-height:1.75;color:var(--ink-2);margin:13px 0 0}

.patconf{margin:13px 0 0;padding:9px 12px;border-left:3px solid var(--rule);
         background:var(--paper-2);font-size:12.5px;line-height:1.6}
.patconf b{display:block;color:var(--ink)}
.patconf span{display:block;color:var(--mute);font-size:11.5px;margin-top:3px}
.patconf.ok{border-left-color:#1f6f43}
.patconf.no{border-left-color:#a11;background:#fdf3f3}
.patconf.mix{border-left-color:var(--gold-dp)}

.patchecks{list-style:none;padding:0;margin:13px 0 0}
.patchecks li{font-size:12.5px;line-height:1.65;color:var(--ink-2);padding:3px 0 3px 20px;
              position:relative}
.patchecks li b{position:absolute;left:0;top:3px;font-weight:400}
.patchecks li.ok b{color:#1f6f43}
.patchecks li.no b{color:#a11}
.patchecks li span{color:var(--mute);font-family:var(--mono);font-size:10.5px}

.patrate{margin:15px 0 0;border-top:1px solid var(--rule-2);padding-top:13px}
.patrate.thin{font-size:12.5px;line-height:1.7;color:var(--mute)}
.patrate h5{font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;
            color:var(--mute);margin:0 0 9px;font-weight:400}
.pattable{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:11px}
.pattable th{text-align:left;font-weight:400;color:var(--mute);font-size:8.5px;
             letter-spacing:.13em;text-transform:uppercase;padding:0 8px 5px 0;
             border-bottom:1px solid var(--rule-2)}
.pattable td{padding:5px 8px 5px 0;border-bottom:1px solid var(--rule-2);color:var(--ink-2);
             font-variant-numeric:tabular-nums}
.pattable td b{color:var(--ink);font-weight:500}
.patnote{font-size:11.5px;line-height:1.65;color:var(--mute);margin:8px 0 0}

.patpoints{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}
.patpoints span{font-family:var(--mono);font-size:9px;letter-spacing:.08em;color:var(--mute);
                border:1px solid var(--rule-2);border-radius:var(--r-pill);padding:3px 9px}

.patfwd{border:1px solid var(--rule-2);border-radius:var(--r-card);background:var(--paper-2);
        padding:18px 20px;margin-top:22px}
.patfwd h4{font-family:var(--serif);font-size:19px;font-weight:400;margin:0 0 5px}
.patfwdrow{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:8px 0;
           border-bottom:1px solid var(--rule-2);font-size:12.5px;line-height:1.6}
.patfwdrow:last-child{border-bottom:none}
.patfwdrow b{font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;
             color:var(--ink-2);font-weight:400}
.patfwdrow span{color:var(--mute)}

.patdisc{font-size:11.5px;line-height:1.75;color:var(--mute);margin-top:20px;
         border-top:1px solid var(--rule-2);padding-top:13px}

@media(max-width:620px){
  .patlevels{grid-template-columns:1fr}
  .patfwdrow{grid-template-columns:1fr;gap:2px}
  .pathead{flex-direction:column;gap:6px}
  .patconf-n{text-align:left}
}

/* ── Summary strip, above the chart ────────────────────────────────────────
   The workspace is a full viewport tall, so the panel below it is invisible
   until someone scrolls past an entire screen of chart. This is the pointer. */
.patbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;cursor:pointer;
        margin:0 0 12px;padding:10px 14px;border:1px solid var(--rule-2);
        border-left:3px solid var(--gold);border-radius:var(--r-card);
        background:var(--paper-2);transition:border-color var(--t-fast) var(--ease)}
.patbar:hover{border-color:var(--gold-lt);border-left-color:var(--gold-dp)}
.patbar b{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;
          color:var(--ink);font-weight:500}
.patbar i{font-style:normal;font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;
          border:1px solid var(--rule);border-radius:var(--r-pill);padding:3px 10px;
          color:var(--ink-2);white-space:nowrap}
.patbar i.bullish{border-color:#1f6f43;color:#1f6f43}
.patbar i.bearish{border-color:#a11;color:#a11}
.patbar i em{font-style:normal;text-transform:uppercase;font-size:8px;
             letter-spacing:.12em;color:var(--mute)}
.patbar span{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;
             color:var(--mute);margin-left:auto}
.patbar.quiet{border-left-color:var(--rule)}
@media(max-width:620px){.patbar span{margin-left:0;width:100%}}
