:root { color-scheme: light; font: 16px/1.55 system-ui, "Microsoft YaHei", sans-serif; color:#20252c; background:#f3f4f6; }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
body { margin:0; }
main { max-width:520px; min-height:100svh; margin:auto; padding:16px 16px max(20px,env(safe-area-inset-bottom)); display:flex; flex-direction:column; }
header { text-align:center; margin:4px 0 17px; }
h1 { font-size:17px; margin:0; }
section { border-radius:18px; background:white; padding:17px; margin:0 0 14px; box-shadow:0 5px 16px #2432520c; }
h2 { color:#606976; font-weight:500; font-size:15px; margin:0 0 9px; }
.field { display:block; background:#eff1f4; border-radius:12px; padding:12px; overflow-wrap:anywhere; }
strong + .field { margin-top:8px; background:#eef1f8; }
.mono { font:14px/1.6 ui-monospace,monospace; }
button,input { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:default; }
.amount-row { display:flex; align-items:center; gap:10px; border-bottom:1px solid #e4e7eb; padding-bottom:7px; margin-bottom:14px; }
.amount-row input { border:0; background:transparent; min-width:0; width:100%; font-size:34px; }
.max,.back { border:0; border-radius:8px; padding:7px 10px; background:#eef1f8; color:#2155a6; font-weight:650; }
.token { background:#eef1fb; border-radius:12px; display:flex; gap:11px; align-items:center; padding:12px; }
.token-icon { display:grid; place-items:center; width:28px; height:28px; background:#278979; color:#fff; border-radius:8px; font-weight:700; }
#balance { margin-left:auto; overflow-wrap:anywhere; color:#586271; }
.resources { display:flex; flex-wrap:wrap; gap:6px 18px; }
.note { color:#4f5966; margin:0 4px 13px; }
footer { margin-top:auto; padding-top:22px; }
#status { color:#4f5966; text-align:center; font-size:14px; margin:0 0 10px; overflow-wrap:anywhere; }
.primary { width:100%; min-height:51px; border:0; border-radius:14px; background:#2161d0; color:white; font-weight:650; padding:8px 14px; }
.primary:disabled { background:#d6d8dc; color:#434851; }
.admin-form { display:grid; gap:14px; }
.admin-form label { display:grid; gap:4px; }
.admin-form input,.admin-form textarea { width:100%; border:1px solid #bbc0cc; border-radius:8px; padding:8px; font:inherit; }
.admin-form img { width:170px; height:170px; }
