/* SELEN app pages (explorer, wallet, mine, docs, paper) — soft rounded panels under the glass nav. */
main.wrap { padding-top: 130px; padding-bottom: 40px; min-height: 70vh; }
.inner { padding: 0; }
.page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 34px; flex-wrap: wrap; }
.page-head > div:first-child { max-width: 780px; }
.page-head .h-l { margin-top: 14px; }
.page-head .lead { margin-top: 16px; }
.page-head .side { display: grid; gap: 10px; justify-items: end; text-align: right; }
.page { padding-top: 6px; }
.row2 { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; }
.row2 > * { min-width: 0; border: 1px solid var(--line); background: var(--carbon); border-radius: 20px; overflow: hidden; }
.row2 .blockhead { padding: 15px 20px; }
.row2 .empty { padding: 26px 20px; }
.blockhead { display: flex; align-items: center; gap: 12px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.blockhead h3 { font: 400 10px/1 var(--mono); letter-spacing: .16em; text-transform: uppercase; color: var(--fog); }
.blockhead .r { margin-left: auto; }
.search { display: flex; gap: 10px; margin-top: 22px; max-width: 760px; }
.search .btn { height: 48px; }
.minis { grid-template-columns: repeat(6, 1fr); margin: 26px 0 20px; }
.minis > div { padding: 20px 22px; display: grid; gap: 6px; }
.minis b { font: 500 25px/1.1 var(--display); letter-spacing: -.02em; color: var(--ice); font-variant-numeric: tabular-nums; word-break: break-all; }
.kv { display: grid; grid-template-columns: 220px minmax(0, 1fr); border: 1px solid var(--line); background: var(--carbon); border-radius: 20px; overflow: hidden; }
.kv > div { padding: 13px 20px; border-bottom: 1px solid var(--line); font: 400 13px/1.5 var(--mono); color: var(--fog); overflow-wrap: anywhere; }
.kv > div:nth-last-child(-n+2) { border-bottom: 0; }
.kv > div:nth-child(odd) { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--fog); }
.kv > div:nth-child(even) { color: var(--ice); }
.kv a { color: var(--q); }
.io { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 24px; }
.io > div { padding: 22px; border: 1px solid var(--line); background: var(--carbon); border-radius: 20px; min-width: 0; }
.io h4 { font: 400 10px/1 var(--mono); letter-spacing: .16em; text-transform: uppercase; color: var(--fog); margin-bottom: 16px; display: flex; justify-content: space-between; }
.inp, .outp { border: 1px solid var(--line); padding: 16px; margin-bottom: 12px; background: rgba(4, 5, 3, .6); border-radius: 16px; }
.inp .ki, .outp .pk { font: 400 12px/1.5 var(--mono); color: var(--ice); overflow-wrap: anywhere; }
.inp .lbl, .outp .lbl { font: 400 10px/1 var(--mono); letter-spacing: .14em; text-transform: uppercase; color: var(--steel); margin: 12px 0 6px; display: block; }
.inp .lbl:first-child, .outp .lbl:first-child { margin-top: 0; }
.ringgrid { display: grid; grid-template-columns: repeat(8, 1fr); gap: 5px; }
.ringgrid a { display: block; padding: 7px 0; text-align: center; font: 400 11px/1 var(--mono); color: var(--fog); border: 1px solid var(--line); background: var(--graphite); border-radius: 999px; }
.ringgrid a:hover { color: var(--ice); border-color: var(--hi); }
.hiddenval { font: 400 11px/1 var(--mono); letter-spacing: .1em; color: var(--steel); text-transform: uppercase; }
.verify { margin-top: 24px; border: 1px solid rgba(118, 185, 0, .5); padding: 24px; display: grid; gap: 14px; border-radius: 20px; background: linear-gradient(180deg, rgba(108, 172, 0, .14), rgba(108, 172, 0, .02)); }
.vlist { display: grid; gap: 7px; font: 400 12.5px/1.4 var(--mono); }
.vlist div { display: flex; gap: 10px; align-items: center; color: var(--fog); }
.vlist div::before { content: ""; width: 8px; height: 8px; flex: none; border-radius: 50%; background: var(--iron); }
.vlist div.ok { color: var(--ice); } .vlist div.ok::before { background: var(--ok); box-shadow: 0 0 8px var(--ok); }
.vlist div.bad { color: var(--bad); } .vlist div.bad::before { background: var(--bad); }
.empty { padding: 30px 0; color: var(--steel); font: 400 13px/1.6 var(--mono); }
.pill-live { display: inline-flex; align-items: center; gap: 10px; padding: 8px 16px 8px 10px; border: 1px solid var(--line); border-radius: 999px; background: rgba(228, 236, 217, .05); font: 400 11px/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--fog); }
.pill-live::before { content: ""; width: 14px; height: 14px; border-radius: 50%; background: radial-gradient(circle at 30% 30%, #fff, #76b900 55%, #2c4a00); box-shadow: 0 0 0 3px rgba(118, 185, 0, .2); animation: lpulse 2.4s ease-in-out infinite; }
@keyframes lpulse { 50% { box-shadow: 0 0 0 7px rgba(118, 185, 0, 0); } }
tr.new td { animation: flash 1.6s ease; }
@keyframes flash { 0% { background: rgba(118, 185, 0, .18); } 100% { background: transparent; } }
.term { font: 400 13px/1.8 var(--mono) !important; padding: 18px 20px !important; border: 1px solid var(--line) !important; background: rgba(4, 5, 3, .7) !important; border-radius: 16px; overflow-x: auto; color: var(--ice); }

/* wallet */
.wl { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: 20px; margin-top: 10px; }
.wl > section { padding: clamp(20px, 2.4vw, 32px); border: 1px solid var(--line); background: var(--carbon); border-radius: 24px; min-width: 0; }
.bal { display: grid; gap: 6px; padding-bottom: 22px; border-bottom: 1px solid var(--line); margin-bottom: 22px; }
.bal b { font: 500 clamp(40px, 5vw, 68px)/1 var(--display); letter-spacing: -.03em; font-variant-numeric: tabular-nums; background: linear-gradient(180deg, #fff, #a6d65c); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bal b small { font: 400 14px/1 var(--mono); color: var(--fog); -webkit-text-fill-color: var(--fog); letter-spacing: .1em; margin-left: 8px; }
.tabs { display: flex; gap: 6px; padding: 5px; border: 1px solid var(--line); border-radius: 999px; margin-bottom: 22px; overflow-x: auto; width: max-content; max-width: 100%; background: rgba(4, 5, 3, .5); }
.tabs button { height: 38px; padding: 0 18px; border: 0; background: none; font: 500 14px/1 var(--display); color: var(--fog); cursor: pointer; border-radius: 999px; white-space: nowrap; transition: background .2s, color .2s; }
.tabs button:hover { color: var(--ice); }
.tabs button.on { color: var(--btn-tx); background: var(--ice); }
.tabpane { display: none; } .tabpane.on { display: grid; gap: 16px; }
.addrbox { border: 1px solid var(--line2); background: rgba(4, 5, 3, .7); padding: 14px 16px; border-radius: 14px; font: 400 11.5px/1.55 var(--mono); color: var(--q); overflow-wrap: anywhere; max-height: 150px; overflow-y: auto; }
.addrbox.classic { color: var(--ice); }
.words24 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.words24 span { border: 1px solid var(--line2); padding: 9px 12px; font: 400 13px/1 var(--mono); color: var(--ice); background: rgba(4, 5, 3, .7); border-radius: 999px; }
.words24 span i { color: var(--steel); font-style: normal; margin-right: 6px; font-size: 10px; }
.hist { display: grid; }
.hist .h { display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center; padding: 13px 0; border-bottom: 1px solid var(--line); font: 400 12.5px/1.4 var(--mono); }
.hist .h b { color: var(--ice); font-weight: 500; }
.hist .h .amt { color: var(--ice); text-align: right; }
.hist .h .amt.out { color: var(--fog); }
.progress { height: 3px; background: var(--line); position: relative; overflow: hidden; border-radius: 3px; }
.progress i { position: absolute; left: 0; top: 0; bottom: 0; background: linear-gradient(90deg, var(--hi), var(--hi2)); width: 0; transition: width .3s; border-radius: 3px; }
.gate { max-width: 640px; margin: 20px auto 0; border: 1px solid var(--line); padding: clamp(24px, 3vw, 40px); position: relative; display: grid; gap: 18px; background: linear-gradient(180deg, rgba(228, 236, 217, .06), rgba(228, 236, 217, .015)); border-radius: 28px; }
.gate .btns { display: flex; gap: 10px; flex-wrap: wrap; }
.check { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--fog); cursor: pointer; }
.check input { margin-top: 4px; accent-color: var(--hi); }

/* mine */
.miner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; margin-top: 10px; }
.miner > section { padding: clamp(20px, 2.4vw, 32px); display: grid; gap: 18px; align-content: start; border: 1px solid var(--line); background: var(--carbon); border-radius: 24px; min-width: 0; }
.rate { font: 500 clamp(48px, 6vw, 92px)/1 var(--display); letter-spacing: -.03em; font-variant-numeric: tabular-nums; background: linear-gradient(180deg, #fff, #a6d65c); -webkit-background-clip: text; background-clip: text; color: transparent; }
.rate small { font: 400 16px var(--mono); color: var(--fog); -webkit-text-fill-color: var(--fog); letter-spacing: .1em; margin-left: 6px; }
.threads { display: flex; gap: 6px; flex-wrap: wrap; }
.threads button { width: 42px; height: 38px; border: 1px solid var(--line2); background: rgba(4, 5, 3, .7); color: var(--fog); font: 400 12px var(--mono); cursor: pointer; border-radius: 999px; }
.threads button.on { border-color: var(--hi); color: var(--ice); background: rgba(118, 185, 0, .16); }
.cores { display: grid; grid-template-columns: repeat(auto-fill, minmax(26px, 1fr)); gap: 5px; }
.cores i { height: 26px; border: 1px solid var(--line); background: var(--graphite); position: relative; overflow: hidden; border-radius: 8px; }
.cores i.run::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, var(--hi), var(--hi2)); opacity: .7; animation: core 1s infinite alternate; }
@keyframes core { from { opacity: .25; } to { opacity: .85; } }
.log { font: 400 12px/1.7 var(--mono); color: var(--fog); max-height: 260px; overflow-y: auto; border-top: 1px solid var(--line); padding-top: 12px; }
.log div b { color: var(--q); font-weight: 400; }
.miner .kv { border-radius: 16px; }

/* docs */
.docs { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 40px; }
.docs aside { position: sticky; top: 110px; align-self: start; padding: 14px; border: 1px solid var(--line); border-radius: 20px; background: var(--carbon); max-height: calc(100vh - 130px); overflow-y: auto; }
.docs aside a { display: flex; gap: 10px; padding: 9px 12px; font: 400 14px/1.3 var(--display); color: var(--fog); border-radius: 12px; }
.docs aside a span { font: 400 11px var(--mono); color: var(--steel); width: 22px; padding-top: 2px; }
.docs aside a:hover { color: var(--ice); background: var(--graphite); }
.docs aside a.on { color: var(--ice); background: var(--graphite); }
.docs aside a.on span { color: var(--q); }
.doc { max-width: 860px; }
.doc section { padding: 10px 0 40px; scroll-margin-top: 120px; }
.doc h2 { font: 500 clamp(28px, 2.8vw, 40px)/1.1 var(--display); letter-spacing: -.02em; color: var(--head); margin-bottom: 18px; }
.doc h2 small { display: block; font: 400 11px/1 var(--mono); letter-spacing: .16em; color: var(--q); margin-bottom: 12px; text-transform: uppercase; }
.doc h3 { font: 500 20px/1.3 var(--display); color: var(--head); margin: 28px 0 10px; }
.doc p, .doc li { color: var(--fog); line-height: 1.7; font-size: 16px; font-weight: 300; }
.doc p + p { margin-top: 14px; }
.doc ul, .doc ol { padding-left: 20px; display: grid; gap: 6px; margin: 12px 0; }
.doc b { color: var(--ice); font-weight: 500; }
.doc code { font: 400 13px var(--mono); color: var(--ice); background: var(--graphite); padding: 1px 7px; border-radius: 6px; }
.doc pre { font: 400 12.5px/1.7 var(--mono); padding: 18px 20px; border: 1px solid var(--line); background: var(--carbon); color: var(--ice); overflow-x: auto; margin: 14px 0; white-space: pre; border-radius: 16px; }
.doc pre code { border: 0; background: none; padding: 0; }
.doc table { width: 100%; border-collapse: separate; border-spacing: 0; margin: 14px 0; font-size: 14px; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; background: var(--carbon); }
.doc table th, .doc table td { text-align: left; padding: 12px 16px; border-bottom: 1px solid var(--line); color: var(--fog); vertical-align: top; }
.doc table tr:last-child td { border-bottom: 0; }
.doc table th { font: 400 10px/1 var(--mono); letter-spacing: .16em; text-transform: uppercase; color: var(--fog); }
.doc table td:first-child { color: var(--ice); font-family: var(--mono); font-size: 13px; white-space: nowrap; }
.callout { border: 1px solid rgba(118, 185, 0, .5); padding: 16px 20px; margin: 16px 0; background: linear-gradient(180deg, rgba(108, 172, 0, .14), rgba(108, 172, 0, .02)); color: var(--fog); font-size: 15px; border-radius: 16px; }
.paper { max-width: 800px; margin: 0 auto; }
.paper .meta { font: 400 12px/1.6 var(--mono); color: var(--steel); margin: 18px 0 34px; }
.paper h2 { font: 500 28px/1.2 var(--display); color: var(--head); margin: 50px 0 14px; letter-spacing: -.02em; }
.paper h2 small { font: 400 12px var(--mono); color: var(--q); margin-right: 12px; }
.paper p, .paper li { color: var(--fog); font-size: 17px; line-height: 1.75; font-weight: 300; }
.paper p + p { margin-top: 16px; }
.paper .abstract { border: 1px solid var(--line); padding: 26px 30px; border-radius: 24px; background: linear-gradient(180deg, rgba(228, 236, 217, .06), rgba(228, 236, 217, .015)); }
.paper .abstract p { color: var(--ice); font-size: 16.5px; }
.paper pre { font: 400 13px/1.8 var(--mono); padding: 18px 20px; border: 1px solid var(--line); background: var(--carbon); color: var(--ice); overflow-x: auto; margin: 16px 0; border-radius: 16px; }
.paper code { font: 400 14px var(--mono); color: var(--ice); }
.paper ol, .paper ul { padding-left: 22px; display: grid; gap: 8px; margin: 14px 0; }
.paper b { color: var(--ice); font-weight: 500; }

@media (max-width: 900px) {
  main.wrap { padding-top: 100px; }
  .page-head .side { justify-items: start; text-align: left; }
  .row2, .io, .wl, .miner { grid-template-columns: minmax(0, 1fr); }
  .minis { grid-template-columns: repeat(3, 1fr); }
  .kv { grid-template-columns: minmax(0, 1fr); }
  .kv > div:nth-child(odd) { padding-bottom: 0; border-bottom: 0; }
  .kv > div:nth-last-child(2) { border-bottom: 0; }
  .docs { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .docs aside { position: static; max-height: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .doc table { display: block; overflow-x: auto; }
}
@media (max-width: 560px) {
  .minis { grid-template-columns: repeat(2, 1fr); }
  .words24 { grid-template-columns: repeat(3, 1fr); }
  .ringgrid { grid-template-columns: repeat(4, 1fr); }
  .search { flex-direction: column; }
}
.page-head .side .search { width: min(460px, 100%); margin-top: 6px; }
.page-head .side .note { text-align: right; }
@media (max-width: 900px) { .page-head .side { width: 100%; } .page-head .side .search { width: 100%; } .page-head .side .note { text-align: left; } }
