/* The Board · t-j.live — 龙哥审美：纯白底 + 纯黑字 + 一个超彩（电光蓝），4px 圆角，无投影，1px 线，hover=边框变黑 */
:root{--paper:#FFFFFF;--ink:#000000;--accent:#1F3BFF;--line:#E6E6E6;--muted:#6B6B6B;--soft:#F5F5F5;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --tj-bg:#FFFFFF;--tj-ink:#000000;--tj-accent:#1F3BFF;--tj-line:#E6E6E6;--tj-r1:4px;--tj-sh1:none}
html{background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.tj-wrap{max-width:1120px;margin:0 auto;padding:0 20px}
/* header */
.sh-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid var(--ink)}
.sh-brand{display:flex;align-items:baseline;gap:10px;font-family:var(--mono);font-weight:500;letter-spacing:.02em}
.sh-brand img{display:none}
.sh-brand b{font-weight:600}
.sh-brand small{color:var(--muted);font-size:12px;letter-spacing:.12em}
.sh-nav{display:flex;align-items:center;gap:22px;font-size:14px}
.sh-nav a{padding:6px 0;border-bottom:1px solid transparent}
.sh-nav a:hover,.sh-nav a[aria-current]{border-bottom-color:var(--ink)}
.sh-nav .tj-btn{border-bottom:0}
/* buttons */
.tj-btn,.bd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border:1px solid var(--ink);border-radius:4px;background:var(--paper);color:var(--ink);font:inherit;font-weight:500;cursor:pointer;transition:border-color .12s,background .12s,color .12s}
.tj-btn:hover,.bd-btn:hover{background:var(--soft)}
.tj-btn--primary,.bd-btn--accent{background:var(--accent);border-color:var(--accent);color:#fff}
.tj-btn--primary:hover,.bd-btn--accent:hover{background:#1631d6;border-color:#1631d6}
.bd-btn--ghost{border-color:var(--line)}
.bd-btn--ghost:hover{border-color:var(--ink);background:var(--paper)}
.bd-btn--sm{min-height:32px;padding:0 12px;font-size:13px}
.bd-btn[disabled]{opacity:.45;cursor:not-allowed}
.bd-mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.bd-muted{color:var(--muted)}
.bd-accent{color:var(--accent)}
/* hero */
.bd-hero{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;padding:56px 0 40px;border-bottom:1px solid var(--line);align-items:end}
.bd-kicker{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.bd-live{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:bdPulse 1.6s infinite}
@keyframes bdPulse{0%,100%{opacity:1}50%{opacity:.25}}
.bd-total{font-family:var(--mono);font-weight:500;font-size:clamp(56px,9vw,112px);line-height:1;letter-spacing:-.03em;margin:14px 0 8px}
.bd-total i{font-style:normal;color:var(--accent)}
.bd-sub{font-size:15px;color:var(--muted)}
.bd-sub b{color:var(--ink);font-weight:600}
.bd-lede{font-size:18px;line-height:1.45;max-width:520px;margin:0}
.bd-lede b{font-weight:600}
.bd-join{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.bd-join .bd-btn{min-width:72px}
.bd-custom{display:flex;gap:0;margin-top:10px;max-width:320px}
.bd-custom span{display:flex;align-items:center;padding:0 12px;border:1px solid var(--ink);border-inline-end:0;border-start-start-radius:4px;border-end-start-radius:4px;font-family:var(--mono)}
.bd-custom input{flex:1;min-width:0;border:1px solid var(--ink);border-inline-end:0;padding:0 12px;font:inherit;font-family:var(--mono);font-size:15px;outline:none;background:var(--paper);color:var(--ink)}
.bd-custom input:focus{border-color:var(--accent)}
.bd-custom .bd-btn{border-radius:0;border-start-end-radius:4px;border-end-end-radius:4px}
/* crown */
.bd-crown{border:1px solid var(--ink);border-radius:4px;padding:20px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}
.bd-crown-empty{border:1px dashed var(--line);border-radius:4px;padding:26px 20px;color:var(--muted)}
.bd-crown .bd-kicker{margin-bottom:6px}
.bd-av{width:56px;height:56px;border-radius:4px;border:1px solid var(--line);object-fit:cover;background:var(--soft);display:block}
.bd-av--lg{width:72px;height:72px}
.bd-name{font-weight:600;font-size:18px;line-height:1.2}
.bd-tag{color:var(--muted);font-size:13px;margin-top:2px}
.bd-link{font-size:13px;color:var(--accent);word-break:break-all}
.bd-amt{font-family:var(--mono);font-size:28px;font-weight:500;letter-spacing:-.02em;white-space:nowrap}
/* sections */
.bd-sec{padding:40px 0;border-bottom:1px solid var(--line)}
.bd-sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}
.bd-h2{font-size:14px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0}
/* board table */
.bd-table{width:100%;border-collapse:collapse}
.bd-table th{text-align:start;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500;padding:0 8px 10px;border-bottom:1px solid var(--ink)}
.bd-table td{padding:14px 8px;border-bottom:1px solid var(--line);vertical-align:middle}
.bd-table tr:hover td{background:var(--soft)}
.bd-rank{font-family:var(--mono);font-size:18px;width:52px}
.bd-rank.is-1{color:var(--accent);font-weight:600}
.bd-who{display:flex;align-items:center;gap:12px;min-width:0}
.bd-who .bd-av{width:40px;height:40px}
.bd-who .bd-name{font-size:15px}
.bd-badge{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--ink);border-radius:2px;padding:2px 6px;margin-inline-start:8px;vertical-align:middle}
.bd-badge--accent{border-color:var(--accent);color:var(--accent)}
.bd-td-amt{font-family:var(--mono);font-size:17px;text-align:end;white-space:nowrap}
.bd-td-act{text-align:end;white-space:nowrap}
.bd-me td{background:#EEF0FF}
.bd-empty{padding:36px 0;color:var(--muted);text-align:center;border:1px dashed var(--line);border-radius:4px}
/* ticker */
.bd-ticker{display:flex;flex-direction:column;gap:0}
.bd-tick{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.bd-tick .bd-mono{white-space:nowrap}
/* crown history */
.bd-hist{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.bd-hist-item{border:1px solid var(--line);border-radius:4px;padding:12px;display:flex;gap:10px;align-items:center}
.bd-hist-item:hover{border-color:var(--ink)}
.bd-hist-item .bd-av{width:36px;height:36px}
/* two col */
.bd-cols{display:grid;grid-template-columns:2fr 1fr;gap:40px}
/* modal */
.bd-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:center;justify-content:center;padding:20px;z-index:50}
.bd-modal.is-open{display:flex}
.bd-modal-box{background:var(--paper);border:1px solid var(--ink);border-radius:4px;width:min(520px,100%);padding:24px}
.bd-modal h3{margin:0 0 6px;font-size:20px}
.bd-modal p{margin:0 0 16px;color:var(--muted)}
.bd-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}
.bd-steps .bd-btn{flex-direction:column;min-height:64px;gap:2px}
.bd-steps .bd-btn small{color:var(--muted);font-weight:400;font-size:12px}
.bd-steps .bd-btn.is-on{border-color:var(--accent);color:var(--accent)}
.bd-math{font-family:var(--mono);font-size:13px;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:10px 12px;margin-bottom:14px}
.bd-math b{color:var(--ink);font-weight:500}
.bd-modal-actions{display:flex;justify-content:flex-end;gap:8px}
/* profile */
.bd-form{display:grid;gap:14px;max-width:560px}
.bd-field label{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.bd-field input{width:100%;box-sizing:border-box;border:1px solid var(--ink);border-radius:4px;padding:10px 12px;font:inherit;background:var(--paper);color:var(--ink)}
.bd-field input:focus{outline:none;border-color:var(--accent)}
.bd-field small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.bd-stat{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}
.bd-stat div{border:1px solid var(--line);border-radius:4px;padding:14px}
.bd-stat b{display:block;font-family:var(--mono);font-size:24px;font-weight:500}
.bd-stat span{font-size:12px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-family:var(--mono)}
.bd-msg{font-size:13px;min-height:18px}
.bd-msg.ok{color:var(--accent)}.bd-msg.err{color:#C41E1E}
/* wall */
.bd-wall{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}
.bd-tile{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:4px;background:var(--paper);overflow:hidden;text-align:center;padding:6px}
.bd-tile:hover{border-color:var(--ink)}
.bd-tile img{max-width:100%;max-height:100%;object-fit:contain}
.bd-tile span{font-size:12px;line-height:1.2;word-break:break-word}
/* ledger */
.bd-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.bd-tools input{border:1px solid var(--ink);border-radius:4px;padding:8px 12px;font:inherit;min-width:240px;background:var(--paper);color:var(--ink)}
/* rules */
.bd-prose{max-width:720px;font-size:16px;line-height:1.6}
.bd-prose h2{font-size:14px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:34px 0 10px}
.bd-prose p{margin:0 0 14px}
.bd-legal{border:1px solid var(--ink);border-radius:4px;padding:18px 20px;font-size:14px;line-height:1.55;background:var(--soft)}
/* toast */
.bd-toast{position:fixed;inset-inline-end:20px;bottom:20px;background:var(--ink);color:#fff;padding:12px 16px;border-radius:4px;font-size:14px;max-width:360px;display:none;z-index:60}
.bd-toast.is-on{display:block}
.sh-legal{font-size:12px;color:var(--muted);padding:14px 0}
.sh-legal a:hover{color:var(--ink)}
@media (max-width:820px){.bd-hero,.bd-cols{grid-template-columns:1fr;gap:26px}.bd-crown{grid-template-columns:auto 1fr}.bd-crown .bd-amt{grid-column:1/-1}.bd-table th:nth-child(4),.bd-table td:nth-child(4){display:none}.sh-nav{gap:14px;font-size:13px}.bd-steps{grid-template-columns:1fr}}

.bd-h1{font-size:24px;line-height:1.25;margin:0 0 10px;letter-spacing:-.01em;font-weight:600}
