@import url('https://fonts.googleapis.com/css2?family=VT323&family=Press+Start+2P&family=Cinzel:wght@700;900&display=swap');
:root{--wood:#3b2f21;--wood2:#5a4631;--panel:#2a2119;--panel2:#1c1610;--ink:#15100c;--edge:#8a6d3b;--gold:#ff981f;--yel:#ffff00;--grn:#00ff00;--cyan:#00ffff;--red:#ff4d4d;--txt:#f1e3c4;--dim:#b8a98a;--bg:#0f0d0a}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-height:100vh;background:var(--bg) url('assets/bg.jpg?v=1789755095') center top/cover fixed no-repeat;color:var(--txt);font-family:'VT323',monospace;font-size:22px;line-height:1.25}
body::before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.55) 100%);z-index:0}
header,main,footer{position:relative;z-index:1}
a{color:var(--gold)}button,input,select,textarea{font-family:inherit;font-size:20px}
.pix{font-family:'Press Start 2P',monospace;font-size:13px;letter-spacing:.5px}
header{position:sticky;top:0;z-index:20;background:linear-gradient(#4a3a28,#2e241a);border-bottom:3px solid var(--edge);display:flex;align-items:center;gap:14px;padding:8px 16px;flex-wrap:wrap}
header img{height:40px;width:40px;image-rendering:pixelated}
header .brand{font-family:'Press Start 2P',monospace;font-size:16px;color:var(--yel);text-shadow:2px 2px 0 #000}
nav{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}
nav button{background:var(--wood2);border:2px solid var(--edge);color:var(--txt);padding:6px 10px;cursor:pointer}
nav button.on{background:var(--gold);color:#000;border-color:#000}
#wallet{display:flex;gap:8px;align-items:center}
.btn{background:var(--gold);color:#000;border:2px solid #000;padding:6px 12px;cursor:pointer;box-shadow:2px 2px 0 #000}
.btn.sec{background:var(--wood2);color:var(--txt);border-color:var(--edge)}
.btn:disabled{opacity:.5;cursor:default}
main{max-width:none;margin:0;padding:10px 16px}@media(max-width:700px){main{padding:10px}}
section{display:none}section.on{display:block}
.hero{position:relative;border:3px solid var(--edge);background:var(--ink) center 35%/cover url('assets/hero.jpg?v=1789755095');min-height:250px;display:flex;align-items:flex-end;padding:18px 22px;margin-bottom:10px;box-shadow:inset 0 -140px 110px -60px #0e0a07}
.hero h1{font-family:'Press Start 2P',monospace;font-size:26px;color:var(--yel);text-shadow:3px 3px 0 #000;margin:0 0 8px}
.hero p{margin:0;font-size:24px;text-shadow:2px 2px 0 #000;max-width:760px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;margin-bottom:10px}
.stat{background:linear-gradient(var(--panel),var(--panel2));border:2px solid var(--edge);padding:8px 10px}
.stat b{display:block;color:var(--gold);font-size:28px}.stat span{color:var(--dim);font-size:18px}
.grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(360px,1fr);gap:10px}@media(max-width:980px){.grid{grid-template-columns:1fr}}
.panel{background:linear-gradient(var(--panel),var(--panel2));border:3px solid var(--edge);padding:10px 12px;box-shadow:3px 3px 0 #0a0805}
.panel h2{margin:0 0 10px;font-family:'Press Start 2P',monospace;font-size:13px;color:var(--gold);text-shadow:2px 2px 0 #000}
#plazaWrap{position:relative;border:3px solid var(--edge);background:var(--ink);overflow:hidden;line-height:0}
#plaza{display:block;width:100%;height:auto;image-rendering:auto}
#modeTag{position:absolute;top:8px;left:8px;background:#000c;color:var(--yel);padding:4px 8px;font-size:18px}
#chatLog{height:220px;overflow-y:auto;background:var(--ink);border:2px solid var(--edge);padding:6px 8px;font-size:21px}
#chatLog .m{margin:2px 0}.m .n{color:var(--gold)}.m .sys{color:var(--cyan)}.m .t{color:var(--yel)}.m .lvl{color:var(--dim);font-size:16px}
#chatForm{display:flex;gap:6px;margin-top:6px}#chatForm input{flex:1;background:var(--ink);color:var(--yel);border:2px solid var(--edge);padding:6px}
.quick{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.quick button{background:var(--ink);color:var(--grn);border:2px solid var(--edge);padding:3px 8px;cursor:pointer}
.quick button.em{color:var(--cyan)}
#feed{max-height:300px;overflow-y:auto;font-size:19px;line-height:1.15}#feed div{padding:2px 0;border-bottom:1px solid #15100c}
#feed .buy{color:var(--grn)}#feed .sell{color:var(--red)}#feed .transfer{color:var(--dim)}
table{width:100%;border-collapse:collapse;font-size:20px}th{text-align:left;color:var(--gold);border-bottom:2px solid var(--edge);padding:4px 6px}td{padding:4px 6px;border-bottom:1px solid #1a140f}
tr:hover td{background:#1c1610}.mono{font-family:monospace;font-size:16px}
.badge{display:inline-block;background:var(--wood2);border:1px solid var(--edge);padding:0 6px;margin-left:4px;font-size:16px;color:var(--yel)}.badge.bad{color:var(--red)}
.card{display:flex;gap:14px;align-items:center}.card img{width:96px;height:96px;image-rendering:pixelated;border:2px solid var(--edge);background:var(--ink)}
.card .name{font-family:'Press Start 2P',monospace;font-size:14px;color:var(--yel)}
.xpbar{height:14px;background:var(--ink);border:2px solid var(--edge);margin:6px 0}.xpbar i{display:block;height:100%;background:var(--grn)}
.form{display:grid;gap:8px}.form input,.form textarea{background:var(--ink);color:var(--txt);border:2px solid var(--edge);padding:6px}
.count{font-family:'Press Start 2P',monospace;font-size:22px;color:var(--yel);text-shadow:2px 2px 0 #000}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}.gallery img{width:100%;border:2px solid var(--edge);display:block}
.idx{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.idx .stat b{font-size:34px}
#pfpCanvas{max-width:100%;border:2px solid var(--edge);background:var(--ink);touch-action:none}
.note{color:var(--dim);font-size:19px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:900px){.two{grid-template-columns:1fr}}
footer{text-align:center;color:var(--dim);padding:14px;font-size:18px}
#toast{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:var(--ink);border:2px solid var(--gold);color:var(--yel);padding:10px 16px;display:none;z-index:50}

/* ---- visual lists ---- */
.lsum{display:flex;gap:14px;flex-wrap:wrap;margin:4px 0 8px;font-size:19px;color:var(--dim)}.lsum b{color:var(--gold);font-size:22px}
.rows{display:flex;flex-direction:column;gap:3px}
.row{display:grid;grid-template-columns:34px 46px minmax(0,1fr) minmax(120px,180px) 70px auto;gap:8px;align-items:center;padding:3px 6px;background:var(--ink);border:1px solid #2b2119}
.row:nth-child(even){background:#181209}.row:hover{border-color:var(--edge)}
.row .rk{font-family:'Press Start 2P',monospace;font-size:12px;color:var(--dim);text-align:center}.row.r1 .rk{color:#ffd700}.row.r2 .rk{color:#d9d9d9}.row.r3 .rk{color:#cd7f32}
.av{position:relative;width:46px;height:46px}.av img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;image-rendering:auto}.av .hat{left:8px;top:-9px;width:30px;height:30px}
.row .nm{color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row .nm small{color:var(--dim);font-family:monospace;font-size:14px;margin-left:6px}
.bar{height:12px;background:#0a0805;border:1px solid var(--edge);position:relative}.bar i{display:block;height:100%;background:linear-gradient(90deg,#b8860b,#ffd700)}.bar.bad i{background:linear-gradient(90deg,#7a1f1f,#ff4d4d)}
.row .hv{text-align:right;color:var(--gold);font-size:22px}.row.bad .hv{color:var(--red)}
.row .bd{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.row .bd .badge{margin:0;font-size:14px;padding:0 5px}
@media(max-width:700px){.row{grid-template-columns:30px 40px 1fr 60px;}.row .bar,.row .bd{display:none}}

/* ================= AAA+ pass ================= */
:root{--gold1:#fff2c2;--gold2:#ffb347;--gold3:#b8860b;--frame:#6d5430;--frame2:#a8823f}
html{scrollbar-color:#5a4631 #15100c}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#15100c}::-webkit-scrollbar-thumb{background:linear-gradient(#7a5f3a,#4a3823);border:2px solid #15100c;border-radius:6px}
body::after{content:'';position:fixed;inset:-200px 0 0 0;pointer-events:none;z-index:1;opacity:.55;
 background-image:radial-gradient(2px 2px at 20px 30px,#fff,transparent),radial-gradient(1.5px 1.5px at 90px 120px,#fffd,transparent),radial-gradient(2.5px 2.5px at 160px 60px,#fff,transparent),radial-gradient(1.5px 1.5px at 230px 170px,#fffb,transparent),radial-gradient(2px 2px at 300px 90px,#fff,transparent),radial-gradient(1.5px 1.5px at 60px 220px,#fffc,transparent),radial-gradient(2px 2px at 340px 240px,#fffd,transparent);
 background-size:380px 300px;animation:snow 14s linear infinite}
@keyframes snow{from{background-position:0 0}to{background-position:40px 300px}}
header{background:linear-gradient(#3f3122,#241b12);border-bottom:2px solid var(--frame2);box-shadow:0 0 0 1px #0a0805,0 6px 24px rgba(0,0,0,.6);padding:8px 18px}
header .brand{font-family:'Cinzel',serif;font-weight:900;font-size:22px;letter-spacing:1px;color:#ffd06a;text-shadow:0 2px 0 #3a2506,0 3px 10px rgba(0,0,0,.8)}
nav{gap:6px}nav button{border-radius:20px;padding:6px 14px;background:linear-gradient(#4b3a26,#2c2116);border:1px solid var(--frame2);color:var(--txt);box-shadow:inset 0 1px 0 rgba(255,220,150,.12),0 2px 0 #0a0805;transition:transform .12s,box-shadow .12s}
nav button:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,220,150,.2),0 3px 0 #0a0805,0 0 12px rgba(255,180,70,.25)}
nav button.on{background:linear-gradient(var(--gold1),var(--gold2) 60%,#d18a12);color:#2a1a05;border-color:#6b4a10;font-weight:bold;text-shadow:0 1px 0 #fff5}
.btn{background:linear-gradient(var(--gold1),var(--gold2) 60%,#d18a12);color:#2a1a05;border:1px solid #6b4a10;border-radius:4px;box-shadow:0 2px 0 #3d2a0a,0 5px 12px rgba(0,0,0,.45);text-shadow:0 1px 0 #fff5;font-weight:bold;transition:transform .12s,box-shadow .12s}
.btn:hover{transform:translateY(-1px);box-shadow:0 3px 0 #3d2a0a,0 8px 18px rgba(255,180,70,.3)}
.btn.sec{background:linear-gradient(#5a4631,#3b2f21);color:var(--txt);border-color:var(--frame2);text-shadow:0 1px 0 #000}
.hero{min-height:360px;border:2px solid var(--frame2);border-radius:6px;background:var(--ink) center 40%/cover url('assets/hero.jpg?v=1789755095');box-shadow:0 0 0 2px #0a0805,0 12px 40px rgba(0,0,0,.6);overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,8,5,.78) 0%,rgba(10,8,5,.5) 38%,rgba(10,8,5,.05) 65%,rgba(10,8,5,0) 100%),linear-gradient(180deg,transparent 50%,rgba(10,8,5,.7) 100%)}
.hero>div{position:relative}
.hero h1{font-family:'Cinzel',serif;font-weight:900;font-size:48px;line-height:1.05;letter-spacing:1px;margin:0 0 10px;color:#ffd06a;text-shadow:0 2px 0 #3a2506,0 4px 14px rgba(0,0,0,.85),0 0 28px rgba(255,180,70,.35)}
.hero p{font-size:24px;max-width:720px;color:#f4e7cc;text-shadow:0 2px 0 #000,0 0 12px #000}
.stat{border:1px solid var(--frame2);border-radius:6px;box-shadow:0 0 0 2px #0a0805,inset 0 1px 0 rgba(255,220,150,.1),0 6px 16px rgba(0,0,0,.45);position:relative;overflow:hidden}
.stat::after{content:'';position:absolute;right:-30px;top:-30px;width:90px;height:90px;background:radial-gradient(circle,rgba(255,180,70,.18),transparent 65%)}
.stat b{font-family:'Cinzel',serif;font-weight:900;font-size:30px;color:#ffd06a;text-shadow:0 2px 0 #3a2506,0 3px 8px rgba(0,0,0,.7)}
.stat span:first-child{text-transform:uppercase;letter-spacing:1.5px;font-size:15px;color:#c8b48f}
.panel{border:1px solid var(--frame2);border-radius:6px;box-shadow:0 0 0 2px #0a0805,inset 0 1px 0 rgba(255,220,150,.1),0 10px 28px rgba(0,0,0,.5)}
.panel h2{font-family:'Cinzel',serif;font-weight:900;font-size:18px;letter-spacing:1px;color:#ffd76a;text-shadow:0 2px 0 #000;display:flex;align-items:center;gap:8px}
.panel h2::before{content:'';width:18px;height:18px;background:url('assets/hat.png') center/contain no-repeat;filter:drop-shadow(0 1px 0 #000)}
.panel h2::after{content:'';flex:1;height:2px;background:linear-gradient(90deg,var(--frame2),transparent);margin-left:6px}
#plazaWrap{border:1px solid var(--frame2);border-radius:6px;box-shadow:0 0 0 2px #0a0805,0 12px 36px rgba(0,0,0,.6),inset 0 0 60px rgba(0,0,0,.6)}
#plazaWrap::after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 90px rgba(0,0,0,.55);border-radius:6px}
#modeTag{background:linear-gradient(#3f3122,#241b12);border:1px solid var(--frame2);border-radius:4px;color:#ffd76a;box-shadow:0 2px 6px #000;z-index:2}
#chatLog{border-radius:4px}#chatLog .m .n{color:#ffd76a}
.count{font-family:'Cinzel',serif;font-weight:900;font-size:30px;color:#ffd06a;text-shadow:0 2px 0 #3a2506,0 3px 8px rgba(0,0,0,.7)}
.card .name{font-family:'Cinzel',serif;font-weight:900;font-size:18px;color:#ffd76a}
.badge{border-radius:3px;background:linear-gradient(#4b3a26,#2c2116);color:#ffd76a;box-shadow:0 1px 0 #000}
.gallery .panel{padding:6px;transition:transform .15s,box-shadow .15s}.gallery .panel:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 0 0 2px #0a0805,0 14px 34px rgba(0,0,0,.6),0 0 24px rgba(255,180,70,.25)}
.gallery img{border-radius:4px}
.row{border-radius:4px}.row.r1{box-shadow:inset 0 0 0 1px #ffd70066}.rows{gap:4px}
.idx .stat b{font-size:34px}
input:focus,textarea:focus{outline:none;border-color:var(--gold2)!important;box-shadow:0 0 0 2px rgba(255,180,70,.25)}
footer{opacity:.8}

/* ---- mobile header: never floats, nav scrolls sideways ---- */
@media(max-width:820px){
  header{position:static;padding:6px 10px;gap:8px;flex-wrap:wrap}
  header .brand{font-size:18px}
  #wallet{margin-left:auto}#wallet .btn{padding:5px 10px;font-size:18px}
  nav{order:3;width:100%;margin-left:0;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:2px 0 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  nav::-webkit-scrollbar{display:none}
  nav button{white-space:nowrap;padding:5px 12px;font-size:18px;flex:0 0 auto}
  .hero{min-height:220px;padding:14px}.hero h1{font-size:26px}.hero p{font-size:19px}
  .stats{grid-template-columns:repeat(2,1fr);gap:6px}.stat b{font-size:24px}
  main{padding:8px}
}

/* ---- payout strip (top centre) ---- */
.payout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:10px;margin:-2px 0 10px;padding:12px 16px;border:2px solid var(--frame2);border-radius:6px;background:linear-gradient(180deg,#2a2016,#171109);box-shadow:inset 0 1px 0 rgba(255,220,150,.08),0 6px 20px rgba(0,0,0,.45);position:relative;overflow:hidden}
.payout::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 0%,rgba(255,190,80,.16),transparent 55%);pointer-events:none}
.po-main,.po-side{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:2px;padding:6px 8px;min-width:0}
.po-main{border-right:1px solid rgba(255,220,150,.12)}
.po-label{font-family:'Cinzel',serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--dim)}
.po-big{font-family:'Cinzel',serif;font-weight:900;font-size:44px;line-height:1;color:#ffd06a;text-shadow:0 2px 0 #3a2506,0 4px 14px rgba(0,0,0,.8),0 0 28px rgba(255,180,70,.35);font-variant-numeric:tabular-nums}
.po-mid{font-family:'Cinzel',serif;font-weight:900;font-size:26px;line-height:1.05;color:#ffd06a;text-shadow:0 2px 0 #3a2506,0 3px 8px rgba(0,0,0,.7);font-variant-numeric:tabular-nums}
.po-timer{font-family:'VT323',monospace;font-size:40px;line-height:1;color:var(--grn);text-shadow:0 0 12px rgba(0,255,0,.35);font-variant-numeric:tabular-nums}
.po-sub{font-size:18px;color:var(--dim)}
.po-sub .live{color:var(--yel)}
@media(max-width:820px){.payout{grid-template-columns:1fr 1fr}.po-main{grid-column:1/-1;border-right:0;border-bottom:1px solid rgba(255,220,150,.12);padding-bottom:10px}.po-big{font-size:34px}.po-timer{font-size:32px}}
/* ---- yield card ---- */
.ycard{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}
.ycell{background:var(--ink);border:1px solid var(--edge);border-radius:4px;padding:8px 10px}
.ycell span{display:block;color:var(--dim);font-size:16px;letter-spacing:1px;text-transform:uppercase}
.ycell b{display:block;font-family:'Cinzel',serif;font-weight:900;font-size:22px;color:#ffd06a;text-shadow:0 2px 0 #3a2506}
.ycell small{color:var(--dim)}
.ychain{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--dim);font-size:18px;margin:4px 0}
.ychain b{color:var(--yel)}
.ylist{font-size:18px;line-height:1.2;max-height:150px;overflow-y:auto;background:var(--ink);border:1px solid var(--edge);padding:6px 8px}
.ylist div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #1a140f;padding:2px 0}
.ylist .gp{color:var(--grn)}.ylist .gldx{color:#ffd06a}
/* ---- liquidity ---- */
.poolbox{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px;margin:8px 0}
.poolbox div{background:var(--ink);border:1px solid var(--edge);padding:6px 8px}
.poolbox span{display:block;color:var(--dim);font-size:15px;letter-spacing:1px;text-transform:uppercase}
.poolbox b{color:#ffd06a;font-size:20px}
.form label{margin-top:4px}

.payout::after{content:'';position:absolute;top:0;left:-40%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,220,150,.07),transparent);animation:po-sheen 7s ease-in-out infinite;pointer-events:none}
@keyframes po-sheen{0%{left:-40%}60%{left:110%}100%{left:110%}}
@media(prefers-reduced-motion:reduce){.payout::after{animation:none}}

header a.home{display:flex;align-items:center;gap:10px;text-decoration:none;cursor:pointer}
header a.home:hover .brand{filter:brightness(1.15)}

/* wallet line under the character form: no overlap with the Save button, address wraps, one-click copy */
.walletline{display:flex;align-items:center;gap:10px;margin-top:14px;flex-wrap:wrap;clear:both}
.walletline code{flex:1 1 220px;min-width:0;word-break:break-all;overflow-wrap:anywhere;background:var(--ink);border:2px solid var(--edge);padding:6px 8px;color:var(--dim);font-size:15px;line-height:1.3;cursor:text;user-select:all}
.walletline .btn{flex:0 0 auto;padding:6px 12px}
.lp-pool{margin-top:12px;line-height:1.45}

/* clean lines: hero copy is three deliberate lines that never orphan; notes and headings balance their wraps */
.hero p{max-width:none;line-height:1.35}
.hero p .line{display:block;white-space:nowrap}
@media (max-width:560px){.hero p .line{white-space:normal}}
h1,h2,h3,.note,.po-label,.ycell small,.stat span{text-wrap:balance}
p,li,.lp-pool,.card div{text-wrap:pretty}

/* ===== Contract address plaque ===== */
.ca{position:relative;margin:-2px 0 10px;padding:14px 18px 12px;border:2px solid var(--frame2);border-radius:6px;overflow:hidden;
  background:radial-gradient(120% 160% at 0% 0%,rgba(255,200,100,.10),transparent 55%),linear-gradient(180deg,#2c2217,#171109);
  box-shadow:0 0 0 2px #0a0805,inset 0 1px 0 rgba(255,220,150,.10),0 8px 26px rgba(0,0,0,.5)}
.ca::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 30%,rgba(255,230,170,.07) 45%,transparent 60%);transform:translateX(-60%);animation:caSheen 7s ease-in-out infinite}
@keyframes caSheen{0%,55%{transform:translateX(-70%)}85%,100%{transform:translateX(70%)}}
.ca-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.ca-head img{width:22px;height:22px;image-rendering:pixelated;filter:drop-shadow(0 1px 0 #000)}
.ca-label{font-family:'Cinzel',serif;font-weight:900;font-size:15px;letter-spacing:2.5px;text-transform:uppercase;color:#ffd06a;text-shadow:0 1px 0 #3a2506,0 2px 8px rgba(0,0,0,.7)}
.ca-chain{color:var(--dim);font-size:18px;letter-spacing:.3px}
.ca-row{display:flex;gap:10px;align-items:stretch}
.ca-addr{flex:1 1 auto;min-width:0;text-align:left;cursor:copy;background:linear-gradient(180deg,#0f0b08,#181109);border:2px solid var(--frame);border-radius:4px;padding:10px 14px;color:#fff2c2;
  font-family:'VT323',monospace;font-size:30px;letter-spacing:1.2px;line-height:1.1;text-shadow:0 0 10px rgba(255,200,100,.25);box-shadow:inset 0 2px 8px rgba(0,0,0,.7),inset 0 0 0 1px rgba(255,220,150,.06);transition:border-color .15s,box-shadow .15s}
.ca-addr:hover{border-color:var(--frame2);box-shadow:inset 0 2px 8px rgba(0,0,0,.7),0 0 0 1px rgba(255,208,106,.35),0 0 18px rgba(255,180,70,.18)}
.ca-addr .ca-short{display:none}
.ca-copy{flex:0 0 auto;position:relative;min-width:150px;cursor:pointer;border:2px solid #d8a94a;border-radius:4px;padding:0 20px;
  font-family:'Cinzel',serif;font-weight:900;font-size:16px;letter-spacing:1.5px;text-transform:uppercase;color:#2a1a05;
  background:linear-gradient(180deg,#ffe29a,#f0b545 55%,#c98a1e);box-shadow:0 0 0 2px #0a0805,inset 0 1px 0 rgba(255,255,255,.55),0 6px 16px rgba(0,0,0,.45);text-shadow:0 1px 0 rgba(255,255,255,.35);transition:transform .08s,filter .15s}
.ca-copy:hover{filter:brightness(1.06)}.ca-copy:active{transform:translateY(1px)}
.ca-copy .ca-copied{display:none}
.ca-copy.done{background:linear-gradient(180deg,#b9f7a8,#5fd35f 55%,#2f9a3a);border-color:#7be07b;color:#082d0c}
.ca-copy.done .ca-copy-txt{display:none}.ca-copy.done .ca-copied{display:inline}
.ca-links{display:flex;gap:16px;align-items:center;margin-top:9px;flex-wrap:wrap;font-size:18px}
.ca-links a{color:#e6c37a;text-decoration:none;border-bottom:1px dotted rgba(230,195,122,.5)}
.ca-links a:hover{color:#ffd06a;border-bottom-color:#ffd06a}
.ca-warn{margin-left:auto;color:var(--dim);font-size:17px}
@media(max-width:900px){.ca-addr{font-size:24px;letter-spacing:.6px}}
@media(max-width:720px){.ca-addr .ca-full{display:none}.ca-addr .ca-short{display:inline}.ca-addr{font-size:26px}.ca-warn{margin-left:0;flex-basis:100%}}
@media(max-width:480px){.ca-row{flex-direction:column}.ca-copy{min-width:0;padding:10px 20px}}
