/* explore page */
.page-explore .mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:-.01em}

/* ---------- two doors band ---------- */
.ex-doors{position:relative;overflow:hidden;background:linear-gradient(90deg,var(--cream) 50%,var(--lilac) 50%);border-bottom:2px solid var(--p900)}
.ex-doors::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:repeating-linear-gradient(180deg,var(--p900) 0 10px,transparent 10px 20px);opacity:.14;transform:translateX(-1px);pointer-events:none}
.ex-doors-in{position:relative;z-index:2;display:grid;grid-template-columns:170px 1fr 170px;gap:40px;align-items:end;padding-top:48px}
.ex-head{text-align:center;padding-bottom:42px;min-width:0}
.ex-kicker{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:13px;color:var(--p700);background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:6px 13px}
.on-tor .ex-kicker{background:var(--p900);color:#fff;border-color:var(--p900)}
.ex-title{margin-top:16px}
.ex-line{max-width:560px;margin:18px auto 0;font-size:17px;line-height:1.5;color:var(--muted);font-weight:500}
.ex-line b{color:var(--ink);font-weight:800}
.ex-onion{display:inline-flex;align-items:center;gap:10px;margin-top:18px;background:var(--p900);color:#fff;border-radius:14px;padding:7px 7px 7px 14px;font-size:13.5px;max-width:100%;box-shadow:0 4px 0 #12061f}
.ex-onion[hidden]{display:none}
.ex-onion-lbl{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p300);white-space:nowrap}
.ex-onion-addr{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;min-width:0}
.ex-onion button{min-height:40px;background:var(--p300);color:var(--p900);border-radius:9px;padding:0 14px;font-weight:800;font-size:12.5px;white-space:nowrap;border:0;cursor:pointer;font-family:inherit}
.ex-onion button:hover{background:#fff}
.ex-stats{display:flex;justify-content:center;gap:12px;margin-top:22px;flex-wrap:wrap}
.ex-stats > div{display:flex;align-items:baseline;gap:7px;background:rgba(255,255,255,.8);border:1.5px solid var(--line);border-radius:12px;padding:8px 13px;font-size:13px;color:var(--muted);font-weight:600}
.ex-stats b{font-size:16px;color:var(--ink);font-weight:900;letter-spacing:-.02em}

.ex-door{position:relative;display:flex;flex-direction:column;align-items:center;transition:opacity .3s,filter .3s}
.ex-door-art{width:100%;height:auto;display:block}
.ex-door .ajar{transform-origin:24px 50%;transition:transform .7s cubic-bezier(.3,1.4,.5,1) .2s}
.ex-door-t .ajar{transform-origin:206px 50%}
.on-surface .ex-door-s .ajar{transform:perspective(600px) rotateY(-34deg)}
.on-tor .ex-door-t .ajar{transform:perspective(600px) rotateY(34deg)}
.on-surface .ex-door-t,.on-tor .ex-door-s{opacity:.85}
.ex-door-txt{position:absolute;top:-14px;left:50%;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;gap:2px;white-space:nowrap;text-align:center}
.ex-door-txt b{font-size:13px;font-weight:800;background:#fff;border:2px solid var(--p900);border-radius:12px;padding:5px 11px;box-shadow:0 3px 0 var(--p900)}
.ex-door-t .ex-door-txt b{background:var(--p900);color:#fff}
.ex-door-txt small{font-size:12px;font-weight:700;color:var(--muted2);margin-top:4px}
.ex-here{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p700);background:var(--sunsoft);border-radius:7px;padding:3px 8px;margin-bottom:4px;visibility:hidden}
.on-surface .ex-door-s .ex-here,.on-tor .ex-door-t .ex-here{visibility:visible}
.ex-ground{position:relative;height:26px;display:flex;border-top:2px solid var(--p900)}
.ex-ground i{flex:1;background:var(--sand)}
.ex-ground i+i{background:var(--lilac2)}

/* ---------- main ---------- */
.ex-main{padding-top:36px;padding-bottom:90px}

/* king of the burrow */
.ex-king{position:relative;display:grid;grid-template-columns:150px 1fr auto;gap:26px;align-items:center;background:var(--p900);color:#fff;border-radius:28px;padding:22px 26px 22px 22px;box-shadow:0 18px 40px -18px rgba(46,21,72,.55);margin-bottom:34px;animation:ex-rise .45s ease both}
.ex-king[hidden]{display:none}
.ex-king-crown{position:absolute;top:-20px;left:76px;width:58px;transform:rotate(-10deg);filter:drop-shadow(0 3px 0 rgba(18,6,31,.35))}
.ex-king-crown svg{width:100%;height:auto;display:block}
.ex-king-img{display:block;width:150px;height:150px;border-radius:22px;overflow:hidden;border:3px solid var(--p300);background:var(--p800)}
.ex-king-img img,.ex-king-img svg{width:100%;height:100%;object-fit:cover;display:block}
.ex-king-body{min-width:0}
.ex-king-tag{display:inline-flex;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p900);background:var(--sun);border-radius:8px;padding:4px 9px}
.ex-king-name{font-size:clamp(26px,3vw,36px);font-weight:900;letter-spacing:-.04em;line-height:1.05;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ex-king-name a{display:inline-block;padding:7px 0;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}
.ex-king-name a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.ex-king-name a.is-sealed{letter-spacing:.02em}
.ex-king-tor{vertical-align:top;margin-left:6px;background:var(--p700);color:#fff;border-color:var(--p500)}
.ex-king-name span{font-size:max(.55em,13px);color:var(--p300);font-weight:800;letter-spacing:-.01em}
.ex-king-sub{font-size:14px;color:var(--p300);margin-top:4px;font-weight:500}
.ex-king-stats{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.ex-king-stats > div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:8px 12px;min-width:96px}
.ex-king-stats span{display:block;font-size:12.5px;font-weight:700;color:var(--p300)}
.ex-king-stats b{display:block;font-size:16px;font-weight:900;letter-spacing:-.02em;margin-top:2px}
.ex-king-stats b.up{color:#8fe0ad}
.ex-king-stats b.down{color:#ff9fb4}
.ex-king-prog{display:flex;align-items:center;gap:12px;margin-top:14px;max-width:520px}
.ex-king-prog .progress{flex:1;background:rgba(255,255,255,.14)}
.ex-king-prog .progress > i{background:linear-gradient(90deg,var(--p300),var(--sun))}
.ex-king-prog small{font-size:12.5px;font-weight:700;color:var(--p300);white-space:nowrap}
.ex-king-acts{display:flex;flex-direction:column;gap:10px;min-width:170px}
.ex-king-acts .btn-ghost{color:#fff;border-color:var(--p300);background:transparent;box-shadow:none}
.ex-king-acts .btn-ghost:hover{border-color:#fff}

/* toolbar */
.ex-bar{position:sticky;top:var(--ex-sticky,70px);z-index:20;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;margin-bottom:18px;background:var(--cream)}
.ex-search{position:relative;flex:1 1 300px;min-width:0;display:flex;align-items:center}
.ex-search > svg{position:absolute;left:15px;width:18px;height:18px;color:var(--muted2);pointer-events:none}
.ex-search input{width:100%;height:48px;border:2px solid var(--p900);border-radius:14px;background:#fff;padding:0 44px 0 44px;font:inherit;font-size:15px;font-weight:600;color:var(--ink);box-shadow:0 3px 0 var(--p900);outline:none;-webkit-appearance:none;appearance:none}
.ex-search input::-webkit-search-cancel-button{display:none}
.ex-search input::placeholder{color:var(--muted2);font-weight:500}
.ex-search input:focus{box-shadow:0 3px 0 var(--p900),0 0 0 4px var(--lilac2)}
.ex-clear{position:absolute;right:8px;width:32px;height:32px;border-radius:9px;background:var(--lilac);color:var(--p700);display:flex;align-items:center;justify-content:center;border:0;cursor:pointer}
.ex-clear[hidden]{display:none}
.ex-clear svg{width:16px;height:16px}
.ex-sorts{display:inline-flex;background:#fff;border:2px solid var(--p900);border-radius:14px;padding:3px;box-shadow:0 3px 0 var(--p900);flex:none}
.ex-sorts button{min-height:40px;padding:9px 15px;border-radius:10px;font-weight:800;font-size:14px;color:var(--muted);background:none;border:0;cursor:pointer;font-family:inherit;white-space:nowrap;transition:background .15s,color .15s}
.ex-sorts button:hover{color:var(--ink)}
.ex-sorts button.is-on{background:var(--ink);color:#fff}
.is-onion .ex-sorts button.is-on{background:var(--p700)}
.ex-chips{display:flex;gap:8px;flex-wrap:wrap}
.ex-chips button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:999px;font-weight:700;font-size:13.5px;color:var(--muted);background:#fff;border:1.5px solid var(--line);cursor:pointer;font-family:inherit;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.ex-chips button svg{width:15px;height:15px}
.ex-chips button:hover{border-color:var(--p500);color:var(--ink)}
.ex-chips button.is-on{background:var(--lilac);border-color:var(--p600);color:var(--p800)}
.ex-chips button[data-filter="sealed"].is-on{background:var(--p900);border-color:var(--p900);color:#fff}
.ex-count{margin-left:auto;font-size:13px;font-weight:700;color:var(--muted2);white-space:nowrap}

/* grid */
.ex-grid{min-height:120px;grid-auto-rows:1fr}
.ex-grid .coin-card[hidden]{display:none}
.ex-grid .coin-card-stats{margin-top:auto}
.ex-grid .coin-card-chips{min-width:0;flex-wrap:nowrap;overflow:hidden}
.ex-grid .coin-card-chips .chip{min-width:0;flex:none;font-size:12px}
.ex-grid .coin-card-hint{font-size:12px}
.ex-grid .coin-card-chips .chip-sealed{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis}
.ex-grid .coin-card-sym{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ex-grid .ex-static{animation:none}
.ex-fresh{animation:ex-slide .6s cubic-bezier(.2,.9,.3,1) both}
@keyframes ex-slide{from{opacity:0;transform:translateY(-18px) scale(.97)}to{opacity:1;transform:none}}
@keyframes ex-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.ex-skel{background:#fff;border:1.5px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.ex-skel i{display:block;border-radius:8px;background:var(--sand)}
.ex-skel .a{aspect-ratio:1.6;border-radius:0;border-bottom:1.5px solid var(--line)}
.ex-skel-body{padding:14px 15px 15px;display:flex;flex-direction:column;gap:12px;flex:1}
.ex-skel-row{display:flex;justify-content:space-between;align-items:center;gap:12px}
.ex-skel .b{height:15px;width:55%}
.ex-skel .c{height:14px;width:35%}
.ex-skel .s{height:11px;width:18%}
.ex-skel .d{height:6px;border-radius:99px;margin-top:auto}
.ex-skel .e{height:10px;width:65%}
.ex-skel .f{height:18px;width:30%;border-radius:7px}

/* king loading */
.ex-king.is-loading{grid-template-columns:150px 1fr;min-height:194px;animation:none}
.ex-king.is-loading .ex-king-img{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.07)}
.ex-king.is-loading i{display:block;height:14px;border-radius:8px;background:rgba(255,255,255,.1);margin-top:12px}
.ex-king.is-loading .k1{width:140px;height:20px;margin-top:0}
.ex-king.is-loading .k2{width:min(340px,80%);height:30px}
.ex-king.is-loading .k3{width:min(460px,90%)}

/* empty */
.ex-empty{text-align:center;padding:30px 20px 10px;display:flex;flex-direction:column;align-items:center}
.ex-empty[hidden]{display:none}
.ex-grid:not(:has(> :not([hidden]))){min-height:0}
.ex-grid:not(:has(> :not([hidden]))) + .ex-empty{padding-top:10px}
.ex-empty img{width:320px;max-width:86%;height:auto;display:block}
.ex-empty h3{font-size:26px;font-weight:900;letter-spacing:-.035em;margin-top:18px}
.ex-empty p{max-width:440px;margin-top:8px;color:var(--muted);font-size:15.5px;line-height:1.5;font-weight:500}
.ex-empty-cta{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.ex-empty.is-error{max-width:520px;margin:0 auto;padding:30px 24px;background:#fff;border:2px solid var(--p900);border-radius:24px;box-shadow:0 5px 0 var(--p900)}
.ex-empty.is-error h3{margin-top:0}
.ex-empty.is-error p{overflow-wrap:anywhere}

/* no javascript */
.ex-noscript{max-width:640px;margin:24px 16px;padding:18px 22px;background:var(--p900);color:#fff;border-radius:18px;font-size:15px;line-height:1.5}
.ex-noscript{box-sizing:border-box}
@media (min-width:673px){.ex-noscript{margin:24px auto}}
.ex-noscript b{color:var(--sunsoft)}
.ex-noscript p + p{margin-top:4px}

/* more */
.ex-more{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:30px}
.ex-sentinel{height:1px;width:100%}
.ex-more .btn[hidden],.ex-end[hidden]{display:none}
.ex-end{font-size:13.5px;font-weight:700}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .ex-doors-in{grid-template-columns:120px 1fr 120px;gap:20px}
  .ex-king,.ex-king.is-loading{grid-template-columns:120px 1fr}
  .ex-king.is-loading{min-height:164px}
  .ex-king-img{width:120px;height:120px}
  .ex-king-crown{left:56px}
  .ex-king-acts{grid-column:1/-1;flex-direction:row}
  .ex-king-acts .btn{flex:1}
  .ex-count{margin-left:0;width:100%}
}
@media (max-width:640px){
  .ex-doors-in{grid-template-columns:1fr 1fr;gap:14px 24px;padding-top:28px}
  .ex-head{grid-column:1/-1;grid-row:1;padding-bottom:18px}
  .ex-door{grid-row:2;width:100px;justify-self:center;margin-top:74px}
  .ex-door-txt b{padding:4px 9px}
  .ex-title{margin-top:14px}
  .ex-line{font-size:15px;margin-top:14px}
  .ex-onion{display:flex;margin-left:auto;margin-right:auto;padding-left:12px;gap:8px}
  .ex-onion[hidden]{display:none}
  .ex-onion-lbl{display:none}
  .ex-stats{margin-top:16px}
  .ex-ground{height:18px}
  .ex-main{padding-top:24px}
  .ex-king.is-loading{grid-template-columns:76px 1fr;min-height:120px}
  .ex-king.is-loading .ex-king-body{display:block}
  .ex-king.is-loading .ex-king-img{grid-row:auto}
  .ex-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;grid-auto-rows:auto}
  .ex-grid .coin-card-body{padding:10px 11px 12px;gap:8px}
  .ex-grid .coin-card-top{flex-direction:column;align-items:flex-start;gap:1px}
  .ex-grid .coin-card-name{font-size:14px;max-width:100%}
  .ex-grid .coin-card-sym{max-width:100%}
  .ex-grid .coin-card-stats{flex-wrap:wrap;gap:2px 8px;font-size:14px}
  .ex-grid .coin-card-meta{display:none}
  .ex-grid .coin-card-chips .chip-sealed .coin-card-hint{display:none}
  .ex-grid .ex-skel-body{padding:10px 11px 12px}
  .ex-search input{font-size:16px}
  .ex-king{grid-template-columns:76px 1fr;column-gap:14px;row-gap:0;padding:18px 16px 16px;border-radius:24px}
  .ex-king-img{width:76px;height:76px;border-radius:16px;border-width:2px;grid-row:1 / span 3;align-self:start}
  .ex-king-crown{width:40px;left:36px;top:-16px}
  .ex-king-name{font-size:24px;margin-top:8px}
  .ex-king-sub{font-size:13px}
  .ex-king-stats,.ex-king-prog{grid-column:1/-1}
  .ex-king-body{display:contents}
  .ex-king-body > .ex-king-tag,.ex-king-body > .ex-king-name,.ex-king-body > .ex-king-sub{grid-column:2}
  .ex-king-tag{justify-self:start;align-self:start;margin-top:2px}
  .ex-king-name{margin-top:6px;font-size:22px}
  .ex-king-sub{align-self:start;margin-top:3px}
  .ex-king-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
  .ex-king-stats > div{min-width:0}
  .ex-king-prog{margin-top:12px}
  .ex-king-acts{min-width:0;margin-top:14px}
  .ex-bar{position:static;gap:10px;padding:4px 0 10px}
  .ex-search{flex-basis:100%}
  .ex-sorts{width:100%}
  .ex-sorts button{flex:1;padding:9px 6px;font-size:13.5px}
  .ex-sorts button{min-height:44px}
  .ex-chips button{min-height:44px}
  .ex-chips{width:100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
  .ex-chips::-webkit-scrollbar{display:none}
}
@media (prefers-reduced-motion:reduce){
  .ex-fresh,.ex-king,.ex-skel i,.ex-grid .coin-card{animation:none}
  .ex-door .ajar{transition:none}
}

@media (max-width:360px){
  .ex-chips{gap:6px}
  .ex-chips button{padding:0 10px}
}
@media (max-width:360px){
  .ex-king-name{white-space:normal}
}
