/* ═══════════════════════════════════════════════════════════════════
   shopping.css  –  Bates PM  Shopping Module Styles
   ═══════════════════════════════════════════════════════════════════ */

/* ── Input row with mic / search-link alongside ─────────────────── */
.sh-input-wrap{position:relative;display:flex;align-items:center;gap:8px;}
.sh-input-wrap input{flex:1;margin-bottom:0;}
.sh-mic-btn{flex-shrink:0;background:var(--card2);border:1px solid var(--bmid);border-radius:var(--rad);padding:10px 13px;font-size:18px;cursor:pointer;line-height:1;}
.sh-mic-btn:active{background:var(--blight);}
.sh-mic-btn.listening{background:var(--rlight);border-color:var(--rtext);animation:sh-pulse 1s ease-in-out infinite;}
@keyframes sh-pulse{0%,100%{opacity:1;}50%{opacity:.5;}}
.sh-search-link{flex-shrink:0;font-size:12px;font-weight:600;color:var(--btext);text-decoration:none;white-space:nowrap;padding:4px 0;}
.sh-search-link:hover{text-decoration:underline;}

/* ── Ghost text (inline autocomplete) ──────────────────────────── */
.sh-ghost-wrap{position:relative;flex:1;}
.sh-ghost-wrap input{width:100%;margin-bottom:0;background:transparent;position:relative;z-index:1;}
.sh-ghost-text{position:absolute;top:0;left:0;right:0;bottom:0;padding:12px 14px;font-size:16px;font-family:inherit;color:var(--text2);opacity:0.45;pointer-events:none;white-space:nowrap;overflow:hidden;}

/* ── Autocomplete suggestions ───────────────────────────────────── */
.sh-suggest-row{display:flex;flex-direction:column;gap:4px;margin-top:6px;margin-bottom:8px;min-height:0;}
.sh-suggest-chip{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:var(--rad);border:1px solid var(--blight);background:var(--card2);cursor:pointer;-webkit-tap-highlight-color:transparent;}
.sh-suggest-chip:active{background:var(--glight);border-color:var(--ch-accent,var(--green));}
.sh-suggest-label{font-size:15px;font-weight:500;color:var(--text);}
.sh-suggest-cat{font-size:11px;color:var(--text2);margin-left:8px;flex-shrink:0;}

/* ── Price hints ────────────────────────────────────────────────── */
.sh-price-hint{font-size:12px;color:var(--text2);margin-top:4px;margin-bottom:8px;min-height:16px;}
.sh-ai-suggestion{font-size:12px;background:var(--purlight);color:var(--pur);border-radius:var(--rad);padding:7px 12px;margin-bottom:8px;display:flex;align-items:center;gap:6px;}
.sh-ai-suggestion::before{content:'✨';font-size:14px;}

/* ── Fund source selector ───────────────────────────────────────── */
.sh-fund-opts{display:flex;flex-direction:column;gap:8px;margin-bottom:4px;}
.sh-fund-opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border:2px solid var(--blight);border-radius:var(--radl);cursor:pointer;background:var(--card2);-webkit-tap-highlight-color:transparent;}
.sh-fund-opt:active{background:var(--glight);}
.sh-fund-opt.selected{border-color:var(--ch-accent,var(--green));background:var(--glight);}
.sh-fund-icon{font-size:22px;flex-shrink:0;}
.sh-fund-label{font-size:15px;font-weight:500;flex:1;}
.sh-fund-bal{font-size:13px;font-weight:700;color:var(--ch-accent,var(--gtext));}
.sh-fund-sub{font-size:12px;color:var(--text2);}

/* ── Request cards ──────────────────────────────────────────────── */
.sh-request-card{background:var(--card);border:1px solid var(--blight);border-radius:var(--radl);padding:14px 16px;margin-bottom:10px;box-shadow:var(--shad);}
.sh-request-card.sh-pending{border-left:3px solid var(--ambt);}
.sh-request-card.sh-approved{border-left:3px solid var(--ch-accent,var(--green));}
.sh-request-card.sh-rejected{border-left:3px solid var(--red);}
.sh-request-card.sh-purchased{border-left:3px solid var(--blue);opacity:.75;}
.sh-req-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:6px;}
.sh-req-name{font-size:16px;font-weight:600;}
.sh-req-price{font-size:15px;font-weight:700;color:var(--ch-accent,var(--gtext));flex-shrink:0;}
.sh-req-meta{font-size:12px;color:var(--text2);display:flex;gap:10px;flex-wrap:wrap;margin-bottom:6px;}
.sh-req-note{font-size:13px;color:var(--text2);font-style:italic;margin-bottom:6px;}
.sh-req-parent-note{font-size:13px;padding:6px 10px;border-radius:var(--rad);margin-bottom:6px;}
.sh-req-parent-note.approved{background:var(--glight);color:var(--ch-accent,var(--gtext));}
.sh-req-parent-note.rejected{background:var(--rlight);color:var(--rtext);}
.sh-req-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
.sh-req-actions .btn{margin-bottom:0;padding:10px 16px;font-size:14px;}

/* ── Status badge ───────────────────────────────────────────────── */
.sh-badge{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;}
.sh-badge-pending{background:var(--amb);color:var(--ambt);}
.sh-badge-approved{background:var(--glight);color:var(--ch-accent,var(--gtext));}
.sh-badge-rejected{background:var(--rlight);color:var(--rtext);}
.sh-badge-purchased{background:var(--blight2);color:var(--btext);}

/* ── Family suggestion card ─────────────────────────────────────── */
.sh-family-card{background:var(--card);border:1px solid var(--blight);border-radius:var(--radl);padding:12px 16px;margin-bottom:8px;display:flex;align-items:center;gap:12px;box-shadow:var(--shad);}
.sh-family-card.sh-checked{opacity:.6;}
.sh-family-check{width:22px;height:22px;border-radius:50%;border:2px solid var(--bmid);flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;}
.sh-family-check.checked{background:var(--ch-accent,var(--green));border-color:var(--ch-accent,var(--green));color:#fff;}
.sh-family-body{flex:1;min-width:0;}
.sh-family-name{font-size:15px;font-weight:500;}
.sh-family-meta{font-size:12px;color:var(--text2);margin-top:2px;}

/* ── Section headers inside shopping screen ─────────────────────── */
.sh-section-hdr{display:flex;align-items:center;justify-content:space-between;margin:16px 0 8px;}
.sh-section-hdr h3{margin:0;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text2);}
.sh-section-clear{font-size:12px;color:var(--rtext);font-weight:600;cursor:pointer;background:none;border:none;padding:0;}

/* ── Parent review area ─────────────────────────────────────────── */
.sh-parent-note-input{width:100%;font-size:15px;padding:10px 12px;border:1px solid var(--bmid);border-radius:var(--rad);background:var(--card);color:var(--text);margin-bottom:10px;font-family:inherit;}
.sh-parent-note-input:focus{outline:2px solid var(--green);outline-offset:1px;}

/* ── Past requests toggle ───────────────────────────────────────── */
.sh-past-toggle{font-size:13px;font-weight:700;color:var(--text2);padding:10px 0 6px;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;}
.sh-past-toggle:hover{color:var(--text);}
.sh-alexa-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;color:var(--btext);background:var(--blight2);border:1px solid var(--blue);border-radius:var(--radl);cursor:pointer;text-decoration:none;margin-top:6px;}
.sh-alexa-btn:active{background:var(--blue);color:#fff;}
