/* Industry atlas — extensions on imap3.css */
.hero--atlas{min-height:900px;height:auto;padding-bottom:210px}
.hero--atlas .hero__copy--atlas{position:relative;left:auto;right:auto;top:auto;max-width:820px;margin-inline:var(--gutter);padding-top:calc(var(--nav-h) + clamp(24px,4.5vh,56px))}
.hero__title--atlas{font-size:clamp(34px,4.6vw,64px)}
.hero--atlas .hero__tools{margin-top:20px;gap:10px}
/* applied filters */
.applied{display:flex;flex-wrap:wrap;gap:6px;align-items:center;pointer-events:auto}
.applied__label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-right:4px}
.applied .chip{font-size:11.5px;padding:5px 11px;background:var(--red-soft);border-color:transparent;color:var(--accent)}
.applied .chip[data-ak="mfrs"],.applied .chip[data-ak="flags"]{background:var(--violet-soft);color:var(--violet)}
.applied .chip--clear{background:var(--chip);color:var(--text-2)}
/* sortable register */
.reg th{cursor:pointer;user-select:none;white-space:nowrap}
.reg th:hover{color:var(--text)}
.reg th.is-sort{color:var(--accent)}
.reg th .arr{font-size:9px;margin-left:3px}
.reg .cbar{display:inline-flex;align-items:center;gap:7px;font-variant-numeric:tabular-nums}
.reg .cbar i{width:44px;height:3px;border-radius:2px;background:var(--chip);position:relative;overflow:hidden;display:inline-block}
.reg .cbar i::after{content:"";position:absolute;inset:0;width:var(--w,0%);background:linear-gradient(90deg,var(--accent),var(--violet));border-radius:2px}
.qual{font-size:10px;color:var(--text-3);letter-spacing:.02em}
/* filter tabs */
.ftabs{display:inline-flex;gap:2px;background:var(--glass);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border:1px solid var(--hairline);border-radius:999px;padding:3px;pointer-events:auto;width:fit-content}
.ftab{position:relative;font-size:12.5px;font-weight:600;padding:7px 16px;border-radius:999px;color:var(--text-2);transition:all .25s var(--ease)}
.ftab:hover{color:var(--text)}
.ftab.is-on{background:var(--text);color:var(--bg)}
.ftab__dot{position:absolute;top:5px;right:7px;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.ftab.is-on .ftab__dot{background:var(--accent)}
.fpanel{display:none}
.fpanel.is-on{display:flex}
/* compact filter chips — the atlas hero carries many */
.hero--atlas .chips{gap:6px}
.hero--atlas .chips .chip{font-size:12px;padding:6px 12px}
.hero--atlas .hero__tools{margin-top:20px;gap:8px}
#pulse .stats__grid{grid-template-columns:repeat(6,1fr)}
@media (max-width:900px){#pulse .stats__grid{grid-template-columns:repeat(2,1fr)}}
.sums{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.sum{background:var(--glass);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border:1px solid var(--hairline);border-radius:var(--r-md);padding:10px 16px;display:flex;flex-direction:column;gap:1px;pointer-events:auto;text-align:left;cursor:pointer;transition:border-color .2s,transform .2s}
.sum:hover{border-color:var(--text-3);transform:translateY(-2px)}
.sum.is-on{border-color:var(--accent);background:var(--red-soft)}
.sum.is-on.sum--violet{border-color:var(--violet);background:var(--violet-soft)}
div.sum{cursor:default}div.sum:hover{border-color:var(--hairline);transform:none}
.sum__v{font-family:var(--font-display);font-size:26px;line-height:1;font-variant-numeric:tabular-nums}
.sum--red .sum__v{color:var(--accent)}.sum--violet .sum__v{color:var(--violet)}
.sum__l{font-size:11px;color:var(--text-2);letter-spacing:.04em}
.chip--v.is-on{background:var(--violet);border-color:var(--violet);color:#fff}
.rail__actions{display:flex;gap:8px;align-items:center}
.rail__actions .chip{background:var(--glass)}
/* pulse band reuses .stats grid */
.red-n{color:var(--accent);font-style:italic}
.panel__kv li{display:flex;justify-content:space-between;gap:14px}
.panel__kv b{color:var(--text);font-weight:600}
/* minis */
.minis{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:clamp(32px,4vw,56px)}
.mini{background:var(--card);border:1px solid var(--hairline-2);border-radius:var(--r-lg);padding:22px 24px}
.mini__t{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px}
.mini__t b{font-family:var(--font-display);font-size:20px;font-weight:400;letter-spacing:-.01em}
.mini__t span{font-size:11.5px;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.mini__row{display:grid;grid-template-columns:1fr auto 90px;align-items:center;gap:12px;padding:6px 0;font-size:13.5px;color:var(--text-2)}
.mini__row>b{font-variant-numeric:tabular-nums;color:var(--text)}
.mini__row .bar{height:3px;border-radius:2px;background:var(--chip);overflow:hidden}
.mini__row .bar i{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,var(--accent),var(--violet))}
.mini__row--plain{grid-template-columns:1fr auto}
.mini__none{color:var(--text-3);font-size:13px}
/* register table */
.reg-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.reg-links{display:flex;gap:8px}
.table-wrap{margin-top:clamp(28px,3.5vw,44px);border:1px solid var(--hairline-2);border-radius:var(--r-lg);overflow:auto;max-height:70vh;background:var(--card)}
.reg{width:100%;border-collapse:collapse;font-size:13px;min-width:980px}
.reg th{position:sticky;top:0;z-index:1;background:var(--card-2);text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);padding:12px 14px;border-bottom:1px solid var(--hairline)}
.reg td{padding:11px 14px;border-bottom:1px solid var(--hairline-2);color:var(--text-2);vertical-align:top}
.reg td b{color:var(--text);font-weight:600}
.reg tbody tr{cursor:pointer;transition:background .15s}
.reg tbody tr:hover{background:var(--chip)}
.reg .num{text-align:right;font-variant-numeric:tabular-nums}
.reg .tag{display:inline-block;font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;background:var(--chip);margin:1px 2px 1px 0;white-space:nowrap}
.reg .dim{color:var(--text-3)}
.reg-note{margin-top:12px;font-size:12px;color:var(--text-3)}
/* gate */
.gate{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(28px) saturate(140%);backdrop-filter:blur(28px) saturate(140%);opacity:1;transition:opacity .5s var(--ease)}
.gate.is-out{opacity:0;pointer-events:none}
.gate__card{width:min(420px,calc(100vw - 40px));background:var(--card);border:1px solid var(--hairline);border-radius:28px;padding:40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:0 40px 120px -30px rgba(0,0,0,.6)}
.gate__leaf{width:44px}
.gate__title{font-family:var(--font-display);font-size:34px;font-weight:400;letter-spacing:-.01em}
.gate__sub{font-size:14px;color:var(--text-2);text-wrap:pretty}
.gate__form{display:flex;flex-direction:column;gap:10px;width:100%;margin-top:6px}
.gate__form input{height:46px;border-radius:12px;border:1px solid var(--hairline);background:var(--bg-alt);padding:0 16px;font-size:15px;outline:none;transition:border-color .2s}
.gate__form input:focus{border-color:var(--accent)}
.gate__form .btn{justify-content:center;height:46px;font-size:15px}
.gate__back{font-size:13px;color:var(--text-3);margin-top:4px}
.gate__back:hover{color:var(--text)}
/* toast */
.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);z-index:95;background:var(--card);border:1px solid var(--hairline);border-radius:999px;padding:11px 22px;font-size:13.5px;opacity:0;transition:all .4s var(--ease);pointer-events:none;box-shadow:0 20px 50px -16px rgba(0,0,0,.4)}
.toast.is-on{opacity:1;transform:translate(-50%,0)}
@media (max-width:900px){.hero--atlas{min-height:0;padding-bottom:230px}.rail__actions .chip{display:none}.rail__actions [data-export]{display:inline-flex}}
