.voice-fab{position:fixed;right:20px;bottom:20px;z-index:1500;border:none;background:linear-gradient(135deg,#0f766e,#2563eb);color:#fff;padding:14px 18px;border-radius:999px;font-weight:800;box-shadow:0 14px 28px rgba(15,23,42,.18)}
.voice-backdrop{position:fixed;inset:0;background:rgba(2,6,23,.5);display:none;z-index:1600}.voice-backdrop.show{display:block}
.voice-sheet{position:absolute;right:12px;left:12px;bottom:12px;max-width:680px;margin-inline:auto;background:#fff;border:1px solid rgba(148,163,184,.28);border-radius:24px;box-shadow:0 24px 60px rgba(2,6,23,.22);overflow:hidden}
.voice-sheet-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid rgba(148,163,184,.2)}
.voice-sheet-sub{color:var(--muted);font-size:13px;margin-top:4px}.voice-sheet-bd{padding:14px 16px 16px}.voice-transcript{border:1px dashed rgba(59,130,246,.35);background:rgba(59,130,246,.06);color:#0f172a;border-radius:18px;padding:12px 14px;font-weight:700}
.voice-status{font-size:13px;margin-top:10px;color:var(--muted)}.voice-status[data-state="success"]{color:#047857}.voice-status[data-state="warn"]{color:#b45309}
.voice-input-row{display:grid;grid-template-columns:58px 1fr auto;gap:10px;margin-top:12px;align-items:center}.voice-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.voice-chip{border:1px solid rgba(148,163,184,.28);background:#fff;border-radius:999px;padding:8px 12px;font-weight:700}
.voice-result-meta{margin-top:12px;color:var(--muted);font-size:13px}.voice-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;max-height:52vh;overflow:auto}
.voice-item{border:1px solid rgba(148,163,184,.24);border-radius:18px;overflow:hidden;background:#fff}.voice-item-media{height:110px;background:rgba(148,163,184,.08);display:flex;align-items:center;justify-content:center}.voice-item-media img{width:100%;height:100%;object-fit:cover;display:block}
.voice-noimg{font-size:32px;opacity:.6}.voice-item-body{padding:12px}.voice-item-body strong{display:block;margin-bottom:6px}.voice-item-meta{color:var(--muted);font-size:12px}.voice-item-price{font-weight:900;margin-top:8px}.voice-item-actions{margin-top:10px}.voice-item-actions .btn{width:100%;justify-content:center}
.voice-empty{grid-column:1/-1;padding:14px;border-radius:18px;background:rgba(148,163,184,.08);color:var(--muted);text-align:center}#voiceMicBtn{width:58px;height:58px;border-radius:18px;font-size:28px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(37,99,235,.15)}#voiceMicBtn.recording{background:#dc2626;color:#fff;border-color:#dc2626}
.guide-backdrop{position:fixed;inset:0;background:rgba(2,6,23,.42);display:none;z-index:1590}.guide-backdrop.show{display:block}.guide-card{position:absolute;left:12px;right:12px;top:50%;transform:translateY(-50%);max-width:560px;margin-inline:auto;background:#fff;border:1px solid rgba(148,163,184,.24);border-radius:24px;box-shadow:0 24px 60px rgba(2,6,23,.22);overflow:hidden}.guide-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px;border-bottom:1px solid rgba(148,163,184,.2)}.guide-sub{color:var(--muted);font-size:13px;margin-top:4px}.guide-bd{padding:16px}.guide-steps{display:grid;gap:12px}.guide-step{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:12px;border-radius:18px;background:rgba(37,99,235,.05);border:1px solid rgba(37,99,235,.1)}.guide-step-no{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#0f766e,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900}.guide-step p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.7}.guide-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
@media (max-width:640px){.voice-results{grid-template-columns:1fr}.voice-input-row{grid-template-columns:58px 1fr}.voice-input-row .btn{grid-column:1/-1}.voice-sheet{left:10px;right:10px;bottom:10px}.voice-fab{right:14px;bottom:14px}.guide-card{left:10px;right:10px}.guide-step{grid-template-columns:38px 1fr}.guide-step-no{width:38px;height:38px}}

