/* V2：活动相册与付费报名 */
.v2-hero{margin:12px 16px 0;padding:18px;border-radius:20px;background:#0b2637;color:#f7fbfe;position:relative;overflow:hidden}
.v2-hero::after{content:"";position:absolute;right:-32px;top:-52px;width:150px;height:150px;border:28px solid rgba(1,173,250,.14);border-radius:50%}
.v2-hero h1{font-size:25px;line-height:1.12;letter-spacing:-.02em;margin:8px 0;max-width:12em}
.v2-hero p{font-size:13px;line-height:1.55;color:rgba(247,251,254,.7);max-width:26em}
.v2-kicker{font-size:11px;letter-spacing:.08em;color:#67d4ff;font-weight:600}
.v2-toolbar{display:flex;gap:8px;padding:14px 16px 4px}
.v2-search{height:44px;border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:0 14px;flex:1;min-width:0}
.v2-list{display:grid;gap:12px;padding:12px 16px 22px}
.v2-card{display:block;padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}
.v2-cover{height:116px;border-radius:12px;background:#0e5d63;position:relative;overflow:hidden;margin-bottom:12px;color:#fff}
.v2-cover::before,.v2-cover::after{content:"";position:absolute;border:1.5px solid rgba(255,255,255,.5);border-radius:50%}
.v2-cover::before{width:190px;height:92px;left:-24px;top:44px;transform:rotate(-13deg)}
.v2-cover::after{width:138px;height:70px;right:-18px;top:-16px;transform:rotate(18deg)}
.v2-cover span{position:absolute;left:14px;bottom:12px;font-size:11px;letter-spacing:.08em}
.v2-card h2{font-size:16px;letter-spacing:-.01em;margin-bottom:5px}
.v2-meta{font-size:12px;color:var(--muted);line-height:1.55}
.v2-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.v2-status{font-size:11px;padding:5px 8px;border-radius:999px;background:#e9f7f0;color:var(--success);white-space:nowrap}
.v2-status.success{background:#e9f7f0;color:var(--success)}
.v2-status.pending{background:#fff4df;color:var(--warn)}
.v2-status.refund{background:#eaf4f8;color:#24637f}
.v2-status.closed{background:#eef2f5;color:var(--muted)}
.v2-panel{margin:12px 16px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:16px}
.v2-panel h2{font-size:16px;letter-spacing:-.01em;margin-bottom:12px}
.v2-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.v2-fact{padding:10px 8px;background:var(--bg);border-radius:12px;text-align:center}
.v2-fact strong{display:block;font-size:15px;font-variant-numeric:tabular-nums}
.v2-fact span{font-size:10px;color:var(--muted)}
.v2-field{margin-bottom:14px}
.v2-field label{display:block;font-size:12px;font-weight:550;letter-spacing:.02em;margin-bottom:7px}
.v2-field input,.v2-field select,.v2-field textarea{width:100%;min-height:46px;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:11px 12px;font-size:14px;outline:none}
.v2-field textarea{min-height:86px;resize:vertical;line-height:1.5}
.v2-field input:focus,.v2-field select:focus,.v2-field textarea:focus{border-color:var(--brand-deep);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 14%,transparent)}
.v2-check{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;color:var(--muted);margin:10px 0}
.v2-check input{width:18px;height:18px;margin-top:1px;accent-color:var(--brand-deep)}
.v2-sticky{position:absolute;left:0;right:0;bottom:0;padding:10px 16px calc(var(--safe-bottom) + 8px);background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-top:1px solid var(--border);z-index:24}
.v2-price{font-size:25px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.v2-price small{font-size:12px;font-weight:500;color:var(--muted)}
.v2-line{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--border);font-size:13px}
.v2-line:last-child{border-bottom:0}.v2-line span:first-child{color:var(--muted)}
.v2-notice{padding:12px;border-radius:12px;background:#f0f8fb;color:#315567;font-size:12px;line-height:1.55}
.v2-empty{padding:34px 20px;text-align:center;border:1px dashed var(--border);border-radius:16px;background:var(--surface)}
.v2-empty strong{display:block;font-size:16px;margin-bottom:6px}.v2-empty p{font-size:12px;color:var(--muted);line-height:1.55}
.v2-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.v2-thumb{aspect-ratio:1;border-radius:10px;overflow:hidden;background:#dce9ef;position:relative}.v2-thumb img{width:100%;height:100%;object-fit:cover}
.v2-thumb small{position:absolute;left:5px;bottom:5px;padding:3px 5px;border-radius:5px;background:rgba(8,24,35,.75);color:#fff;font-size:9px}
.v2-progress{height:5px;background:#e7eef2;border-radius:999px;overflow:hidden;margin-top:8px}.v2-progress i{display:block;height:100%;background:var(--trail);width:0;transition:width .45s ease}
.v2-result{padding:36px 22px;text-align:center}.v2-result-mark{width:64px;height:64px;border-radius:50%;margin:0 auto 16px;display:grid;place-items:center;background:#e8f7ef;color:var(--success);font-size:30px}.v2-result h1{font-size:24px;letter-spacing:-.02em;margin-bottom:8px}.v2-result p{font-size:13px;color:var(--muted);line-height:1.6}
.v2-order{padding:15px;background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-bottom:12px;box-shadow:0 6px 20px rgba(11,31,44,.05)}
.v2-order h3{font-size:16px;line-height:1.35;letter-spacing:-.01em;margin:10px 0 5px}
.v2-order-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.v2-order-id{font:11px/1.4 var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums}
.v2-order-state{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:11px;padding-top:11px;border-top:1px solid var(--border)}
.v2-order-state span{font-size:11px;color:var(--muted)}
.v2-order-state strong{font-size:11px;font-weight:550;padding:4px 7px;border-radius:7px;background:#eef3f6;color:var(--fg)}
.v2-order-state strong.success{background:#e9f7f0;color:var(--success)}
.v2-order-state strong.pending{background:#fff4df;color:var(--warn)}
.v2-order-state strong.refund{background:#eaf4f8;color:#24637f}
.v2-order-state strong.closed{background:#eef2f5;color:var(--muted)}
.v2-order-next{margin-top:10px;font-size:12px;line-height:1.5;color:#315567}
.v2-order-actions{display:flex;gap:8px;margin-top:13px}.v2-order-actions .btn{flex:1;min-height:42px}
.v2-orders-summary{margin:12px 16px 0;padding:12px 14px;border-radius:14px;background:#0b2637;color:#f7fbfe;display:flex;align-items:center;justify-content:space-between;gap:12px}
.v2-orders-summary strong{display:block;font-size:14px}.v2-orders-summary span{font-size:11px;color:rgba(247,251,254,.66)}
.v2-orders-summary b{font:600 22px/1 var(--font-mono);font-variant-numeric:tabular-nums;color:#67d4ff}
.v2-sheet-title{font-size:18px;letter-spacing:-.01em;margin-bottom:4px}.v2-sheet-copy{font-size:12px;color:var(--muted);line-height:1.55;margin-bottom:14px}
.v2-credential{padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--bg);text-align:center;margin:12px 0}
.v2-credential-code{font:600 30px/1 var(--font-mono);letter-spacing:.12em;font-variant-numeric:tabular-nums;margin:10px 0 6px}
.v2-credential small{font-size:11px;color:var(--muted)}
.v2-refund-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:13px 0}.v2-refund-steps span{padding:8px 4px;border-radius:8px;background:#eef3f6;color:var(--muted);font-size:10px;text-align:center}.v2-refund-steps span.active{background:#eaf4f8;color:#24637f;font-weight:550}
.v2-seg{display:grid;grid-template-columns:repeat(2,1fr);margin:12px 16px 0;background:#e7eef2;border-radius:12px;padding:3px}.v2-seg button{height:38px;border:0;background:transparent;border-radius:9px;font-size:13px;color:var(--muted)}.v2-seg button.active{background:#fff;color:var(--fg);box-shadow:0 1px 5px rgba(11,31,44,.09)}
.v2-hidden{display:none!important}
@media (prefers-reduced-motion:reduce){.v2-progress i{transition:none}}
