/* ═══ BCS Scanner Pro v2 — Dual Photo System ═══ */
.bcs-scanner { --bg:#070a06;--card:rgba(255,255,255,0.025);--border:#1a2e22;--text:#d4d0c8;--muted:#4a6a52;--accent:#4ade80;--accent2:#16a34a;--danger:#ef4444;--warn:#f97316;--good:#22c55e;--r:12px; max-width:620px;margin:0 auto;font-family:'Segoe UI',system-ui,sans-serif;color:var(--text);line-height:1.5 }
.bcs-light { --bg:#f5f3ee;--card:#fff;--border:#d4cfc6;--text:#1a1a1a;--muted:#6b7280;--accent:#16a34a;--accent2:#15803d }

.bcs-header { background:linear-gradient(155deg,#040804,#0d2216 35%,#0a1c12 65%,#050a06);padding:26px 20px 22px;text-align:center;border-bottom:1px solid var(--border);border-radius:var(--r) var(--r) 0 0 }
.bcs-light .bcs-header { background:linear-gradient(155deg,#e8f5e9,#c8e6c9 50%,#e8f5e9);border-color:#a5d6a7 }
.bcs-badge { display:inline-flex;align-items:center;gap:7px;background:rgba(34,197,94,0.1);border:1px solid rgba(34,197,94,0.2);border-radius:26px;padding:3px 12px;margin-bottom:10px;font-size:.63rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent) }
.bcs-dot { width:6px;height:6px;border-radius:50%;background:var(--accent);animation:bcsPulse 2s infinite }
.bcs-title { font-size:1.8rem;font-weight:800;letter-spacing:-.04em;background:linear-gradient(135deg,#e8e4dc,#4ade80);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 3px }
.bcs-light .bcs-title { background:linear-gradient(135deg,#1a1a1a,#16a34a);-webkit-background-clip:text;background-clip:text }
.bcs-sub { font-size:.73rem;color:var(--muted);margin:0 }
.bcs-body { padding:14px }

/* ─── Dual Upload ─── */
.bcs-dual-upload { display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px }
@media(max-width:400px){ .bcs-dual-upload{grid-template-columns:1fr} }

.bcs-upload-box { border:2px dashed var(--border);border-radius:var(--r);padding:0;text-align:center;cursor:pointer;transition:all .25s;position:relative;overflow:hidden;min-height:160px;display:flex;align-items:center;justify-content:center }
.bcs-upload-box:hover { border-color:var(--accent);background:rgba(34,197,94,.04) }
.bcs-upload-box.has-image { border-style:solid;border-color:var(--accent);padding:0 }
.bcs-upload-box input[type=file] { display:none }

.bcs-upload-placeholder { padding:20px 12px }
.bcs-upload-emoji { font-size:2rem;margin-bottom:6px }
.bcs-upload-label { font-size:.88rem;font-weight:700;color:var(--text);margin-bottom:3px }
.bcs-upload-hint { font-size:.68rem;color:var(--muted);margin-bottom:8px }
.bcs-required { font-size:.6rem;padding:2px 8px;border-radius:10px;background:rgba(34,197,94,.1);color:var(--accent);border:1px solid rgba(34,197,94,.2);display:inline-block }
.bcs-optional { font-size:.6rem;padding:2px 8px;border-radius:10px;background:rgba(251,191,36,.08);color:#c9a84c;border:1px solid rgba(251,191,36,.15);display:inline-block }

.bcs-upload-preview { width:100%;height:100%;object-fit:cover;display:block;min-height:160px }
.bcs-remove-btn { position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.15);color:#ccc;font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2 }

/* ─── Buttons ─── */
.bcs-analyze-btn { width:100%;padding:14px;background:linear-gradient(135deg,#0f5132,#16a34a);border:1px solid rgba(34,197,94,.25);border-radius:var(--r);color:#fff;font-family:inherit;font-size:.92rem;font-weight:800;cursor:pointer;transition:all .2s }
.bcs-analyze-btn:hover:not(:disabled) { filter:brightness(1.1) }
.bcs-analyze-btn:disabled { opacity:.4;cursor:not-allowed }
.bcs-upload-tip { text-align:center;font-size:.7rem;color:var(--muted);margin-top:8px }

/* ─── Loading ─── */
#bcsLoading { padding:28px 20px;text-align:center;background:var(--card);border:1px solid var(--border);border-radius:var(--r) }
.bcs-spinner { width:40px;height:40px;margin:0 auto 14px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:bcsSpin .7s linear infinite }
.bcs-load-text { font-weight:700;font-size:.84rem;margin-bottom:10px }
.bcs-load-dots { display:flex;gap:3px;justify-content:center }
.bcs-load-dot { width:5px;height:5px;border-radius:50%;background:var(--border);transition:background .4s }
.bcs-load-dot.on { background:var(--accent) }

/* ─── Error ─── */
.bcs-error { padding:13px 16px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:var(--r);font-size:.82rem;color:#fca5a5;margin-bottom:10px }
.bcs-light .bcs-error { background:#fef2f2;border-color:#fecaca;color:#dc2626 }

/* ─── Result Cards ─── */
.bcs-r-score { background:linear-gradient(145deg,#0a150f,#122a1a 50%,#0a150f);border:1px solid var(--border);border-radius:16px;padding:22px 18px 18px;text-align:center;margin-bottom:12px }
.bcs-light .bcs-r-score { background:linear-gradient(145deg,#f0fdf4,#dcfce7 50%,#f0fdf4) }
.bcs-r-cat { display:inline-block;padding:3px 12px;border-radius:16px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px }
.bcs-r-big { font-size:3rem;font-weight:900;line-height:1;margin-bottom:2px }
.bcs-r-label { font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px }
.bcs-r-photos { font-size:.7rem;color:var(--muted);margin-bottom:8px }
.bcs-r-photos strong { color:var(--accent) }

.bcs-bar { position:relative;margin:0 4px }
.bcs-bar-track { height:10px;border-radius:5px;position:relative;background:linear-gradient(to right,#ef4444 0%,#f97316 17%,#22c55e 32%,#22c55e 62%,#f97316 78%,#ef4444 100%) }
.bcs-bar-marker { position:absolute;top:-6px;width:22px;height:22px;border-radius:50%;background:#fff;transform:translateX(-50%);transition:left .9s cubic-bezier(.34,1.56,.64,1) }
.bcs-bar-labels { display:flex;justify-content:space-between;margin-top:6px;font-size:.6rem;color:var(--muted) }
.bcs-r-meta { display:flex;justify-content:center;gap:16px;margin-top:12px;font-size:.7rem;color:var(--muted) }

.bcs-r-alert { padding:10px 14px;margin-bottom:10px;background:rgba(239,68,68,.06);border:1px solid #7f1d1d;border-radius:var(--r);font-size:.74rem;color:#fca5a5 }
.bcs-r-info { display:flex;gap:9px;padding:10px 13px;margin-bottom:8px;background:var(--card);border:1px solid var(--border);border-radius:var(--r) }
.bcs-r-info-icon { flex-shrink:0 }
.bcs-r-info-label { font-size:.62rem;font-weight:800;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1px }
.bcs-r-info-text { font-size:.76rem;color:#9a9690;line-height:1.5 }
.bcs-light .bcs-r-info-text { color:#4b5563 }

.bcs-tabs { display:flex;gap:2px;margin-bottom:10px;background:rgba(255,255,255,.015);border-radius:10px;padding:3px }
.bcs-light .bcs-tabs { background:#f3f4f6 }
.bcs-tab { flex:1;padding:8px 3px;border:none;border-radius:8px;background:transparent;color:var(--muted);font-family:inherit;font-size:.72rem;font-weight:700;cursor:pointer }
.bcs-tab.on { background:#0f2518;color:var(--accent) }
.bcs-light .bcs-tab.on { background:#dcfce7;color:#16a34a }
.bcs-panel { display:none;flex-direction:column;gap:5px }
.bcs-panel.on { display:flex }

.bcs-r-card { background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:11px 13px }
.bcs-r-card.icon { display:flex;gap:10px;align-items:flex-start }
.bcs-r-card .ic { font-size:1.05rem;flex-shrink:0;margin-top:1px }
.bcs-r-card .lb { font-size:.66rem;font-weight:800;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1px }
.bcs-r-card .tx { font-size:.78rem;color:#9a9690;line-height:1.5 }
.bcs-light .bcs-r-card .tx { color:#4b5563 }
.bcs-r-card p { font-size:.82rem;line-height:1.7;color:#b8b2a6;margin:0 }
.bcs-light .bcs-r-card p { color:#374151 }

.bcs-stg-hd { display:flex;justify-content:space-between;align-items:center;margin-bottom:5px }
.bcs-stg-nm { font-size:.82rem;font-weight:700 }
.bcs-stg-tg { font-size:.6rem;padding:2px 7px;border-radius:10px;background:rgba(74,222,128,.08);color:var(--accent);border:1px solid rgba(74,222,128,.12) }

.bcs-r-reset { width:100%;margin-top:14px;padding:12px;background:linear-gradient(135deg,#0f5132,#16a34a);border:1px solid rgba(34,197,94,.25);border-radius:var(--r);color:#fff;font-family:inherit;font-size:.86rem;font-weight:800;cursor:pointer }

.bcs-disclaimer { padding:12px 14px;margin:14px;border-radius:10px;background:rgba(255,255,255,.012);border:1px solid #111a14;font-size:.68rem;color:var(--muted);line-height:1.6;text-align:center }
.bcs-light .bcs-disclaimer { background:#f9fafb;border-color:#e5e7eb }

@keyframes bcsSpin{to{transform:rotate(360deg)}}
@keyframes bcsPulse{0%,100%{opacity:1}50%{opacity:.3}}
@keyframes bcsSlide{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
#bcsResults { animation:bcsSlide .4s ease-out }
