/* ===== 组件：胶囊按钮 · 细线卡片 · Mono 标签 ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border-radius:var(--pill);
  border:2px solid rgba(255,255,255,.25);background:transparent;color:var(--fg);font:700 13px/1 var(--f-mono);letter-spacing:1px;text-transform:uppercase;
  text-decoration:none;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.btn:hover{border-color:#fff}
.btn:disabled{opacity:.35;cursor:not-allowed}
.btn-ink{background:#fff;border-color:#fff;color:#0E0E10}
.btn-ink:hover{background:#DDD;border-color:#DDD}
.btn-hot,.btn-lime{background:var(--pink);border-color:var(--pink);color:#fff}
.btn-hot:hover,.btn-lime:hover{background:var(--pink-2);border-color:var(--pink-2)}
.btn-sm{min-height:38px;padding:0 18px;font-size:11px}
.btn-ghost{border-color:var(--hair-2);background:transparent;color:var(--fg)}
.btn-ghost:hover{border-color:#fff}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.card{background:var(--bg-2);border:1px solid var(--hair);padding:var(--s5);min-width:0}
.card-pop{border-color:var(--hair-2)}
.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;min-height:28px;border-radius:var(--pill);border:1px solid var(--hair-2);
  font:500 11px/1 var(--f-mono);letter-spacing:1px;text-transform:uppercase;background:transparent;color:var(--fg-2);text-decoration:none;transition:.2s}
button.chip:hover{border-color:#fff;color:#fff}
.chip.on,.chip.on:hover{background:#fff;border-color:#fff;color:#000}
.chip-hot{background:var(--pink);border-color:var(--pink);color:#fff}
.chip-lime{border-color:rgba(232,51,111,.5);color:var(--pink-2)}
.chip-mute{border-color:transparent;background:var(--bg-4);color:var(--fg-2)}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.eyebrow{font:500 12px/1.3 var(--f-mono);letter-spacing:2px;text-transform:uppercase;color:var(--pink)}
.ph{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid var(--hair)}
.ph h1{font:900 clamp(40px,5.6vw,80px)/1 var(--f-body);letter-spacing:-.03em;margin-top:10px}
.ph h1 em,.hero h1 em{font-style:normal;color:var(--pink)}
.ph p{color:var(--fg-2);margin-top:14px;max-width:560px;font-size:17px}
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){.g2,.g3{grid-template-columns:1fr}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sec{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:56px 0 18px;flex-wrap:wrap}
.sec h2{font:900 26px var(--f-body);letter-spacing:-.02em}
.muted{color:var(--fg-2)} .tiny{font-size:12px} .small{font-size:13px}
.big{font:400 clamp(40px,5vw,56px)/1 var(--f-disp)}
.note{font-size:13px;color:var(--fg-2);padding:12px 16px;border:1px dashed var(--hair-2);margin-bottom:16px}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.field label,.lbl{font:500 11px/1.3 var(--f-mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-2)}
.input{min-height:48px;padding:12px 16px;border:1px solid var(--hair-2);background:var(--bg);color:var(--fg);outline:none;width:100%;transition:border-color .15s}
.input::placeholder{color:var(--fg-3)}
.input:focus{border-color:#fff}
select.input{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#A1A1A1 50%),linear-gradient(135deg,#A1A1A1 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
textarea.input{min-height:96px;resize:vertical}
.bar{height:4px;background:var(--bg-4);overflow:hidden}
.bar i{display:block;height:100%;background:var(--pink);transition:width .8s var(--ease)}
.lock{font:700 10px/1 var(--f-mono);letter-spacing:1px;padding:4px 8px;border-radius:var(--pill);border:1px solid var(--hair-2);color:var(--fg-2)}
.empty{padding:56px 40px;text-align:center;color:var(--fg-2);border:1px dashed var(--hair-2)}
