html,body{min-height:100%}

[hidden]{display:none!important}

/* Accessible source CSS rules */
:root{--bg:#fff;--text:#0f1419;--muted:#536471;--line:#eff3f4;--blue:#1d9bf0;--blue2:#1a8cd8}
*{box-sizing:border-box}html,body{margin:0;min-height:100%}
body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased}
.card{width:min(100%,600px);margin:0 auto;min-height:100vh;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.cover{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#f2f4f5}
.body{padding:16px}
.author{display:flex;align-items:center;gap:12px;padding:4px 0 14px}
.avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;background:#e1e8ed;flex:0 0 48px}
.avatar.ph{background:linear-gradient(135deg,#cfd9de,#aab8c2)}
.aname{font-weight:800;font-size:15px;line-height:1.2}
.ahandle{color:var(--muted);font-size:14px;margin-top:2px}
.title{font-size:29px;font-weight:800;line-height:1.25;margin:6px 0 14px;letter-spacing:-.01em}
.banner{width:100%;border-radius:16px;border:1px solid var(--line);display:block;margin:0 0 16px}
.blk{margin:14px 0}
.blk p,.blk{font-size:17px;line-height:1.6;word-wrap:break-word}
.blk.text{white-space:pre-wrap}
.blk img{width:100%;border-radius:16px;border:1px solid var(--line);display:block}
.videobox{position:relative;width:100%;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#000;aspect-ratio:16/9;cursor:pointer}
.videobox video{width:100%;height:100%;display:block;object-fit:contain;background:#000}
.blk img,.videobox,.videobox video,.cover,.banner{-webkit-touch-callout:none !important;-webkit-user-select:none;user-select:none;pointer-events:auto}
video::-webkit-media-controls-download-button,video::-internal-media-controls-download-button{display:none !important}
video::-webkit-media-controls-enclosure{overflow:hidden}
.videobox .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.videobox .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.28)}
.videobox .play::after{content:"";width:0;height:0;border-style:solid;border-width:16px 0 16px 28px;border-color:transparent transparent transparent #fff;margin-left:6px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}
.videobox .lock{position:absolute;left:10px;bottom:10px;background:rgba(0,0,0,.6);color:#fff;font-size:12px;padding:5px 9px;border-radius:99px;display:flex;align-items:center;gap:5px}
.empty{padding:60px 20px;text-align:center;color:var(--muted)}
.footer{padding:24px 16px;color:var(--muted);font-size:13px;border-top:1px solid var(--line);margin-top:10px}
/* 支付层 */
.modal{display:none;position:fixed;inset:0;z-index:60;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.4)}
.modal.show{display:flex}
.sheet{width:min(100%,600px);background:#fff;border-radius:20px 20px 0 0;padding:22px 20px calc(24px + env(safe-area-inset-bottom));max-height:90vh;overflow:auto}
.sheet h2{margin:2px 0 6px;font-size:20px}
.sheet .desc{color:var(--muted);font-size:14px;line-height:1.6;margin:0 0 16px}
.addr-row{display:flex;gap:8px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f7f9f9;margin-bottom:14px}
.addr-row .addr{flex:1;font-family:ui-monospace,Menlo,monospace;font-size:13px;word-break:break-all;color:#0f1419}
.pay-label{display:block;font-size:13px;color:var(--muted);margin:10px 0 6px}
.pay-input{width:100%;padding:13px;border:1px solid #cfd9de;border-radius:12px;font:inherit;outline:none}
.pay-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(29,155,240,.15)}
.pay-err{min-height:20px;margin:8px 0 0;color:#f4212e;font-size:13px}
.btn{width:100%;margin-top:14px;padding:14px;border:0;border-radius:99px;font:inherit;font-weight:800;font-size:16px;cursor:pointer}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:disabled{opacity:.6}
.btn-ghost{background:transparent;color:var(--muted);margin-top:4px}
.btn-copy{border:1px solid var(--blue);background:#fff;color:var(--blue);border-radius:99px;padding:8px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
