/* Pill Warning Check — harm-reduction lookup tool on the ASSC / THE KEY system.
   Inherits tokens from /styles.css (--bg/--panel/--text/--muted/--accent/--mono/--sans). */

.pc-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:1rem;
  padding:.85rem clamp(1rem,4vw,2rem);background:rgba(4,3,5,.86);backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(239,233,221,.08)}
.pc-top__brand{display:flex;align-items:center;gap:.55rem}
.pc-top__key{height:24px;width:auto}
.pc-top__word{font-family:var(--mono);font-weight:700;letter-spacing:.16em;font-size:12px;text-transform:uppercase;color:var(--text)}
.pc-top__links{margin-left:auto;display:flex;gap:1.2rem;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pc-top__links a:hover{color:var(--text)}

.pc-wrap{max-width:720px;margin:0 auto;padding:0 clamp(1rem,4vw,2rem) 4rem}
.pc-screen{display:none}
.pc-screen.is-active{display:block;animation:pcfade .25s ease}
@keyframes pcfade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* age gate */
.pc-gate{position:fixed;inset:0;z-index:60;background:rgba(4,3,5,.95);display:flex;align-items:center;justify-content:center;padding:1.4rem}
.pc-gate[hidden]{display:none}
.pc-gate__box{max-width:430px;text-align:center;background:var(--panel);border:1px solid rgba(239,233,221,.1);border-radius:18px;padding:2.2rem 2rem}
.pc-gate__18{display:inline-block;font-family:var(--mono);font-weight:700;font-size:1.4rem;letter-spacing:.1em;color:#fff;background:var(--accent);border-radius:100px;padding:.3rem 1.1rem;margin-bottom:1.2rem}
.pc-gate__box p{color:var(--muted);line-height:1.6;margin-bottom:.8rem;font-size:15px}
.pc-gate__box strong{color:var(--text)}

/* hero */
.pc-hero{text-align:center;padding:clamp(2rem,7vw,4rem) 0 1.5rem}
.pc-hero__key{height:64px;margin:0 auto 1.2rem;filter:drop-shadow(0 0 26px rgba(255,255,255,.06))}
.pc-hero h1{font-size:clamp(1.9rem,6vw,3rem);line-height:1.05;letter-spacing:-.02em}
.pc-hero p{color:var(--muted);max-width:44ch;margin:1rem auto 0;line-height:1.6}
.pc-actions{display:flex;flex-direction:column;gap:.7rem;max-width:340px;margin:2rem auto 0}

/* generic section/card */
.pc-card{background:var(--panel);border:1px solid rgba(239,233,221,.08);border-radius:16px;padding:1.4rem 1.4rem 1.5rem;margin:1.1rem 0}
.pc-card h2{font-size:1.15rem;margin-bottom:.3rem}
.pc-card>.pc-hint{color:var(--muted);font-size:13.5px;line-height:1.55;margin-bottom:1rem}
.pc-label{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:1.1rem 0 .55rem}
.pc-label:first-child{margin-top:0}

/* chips */
.pc-chips{display:flex;flex-wrap:wrap;gap:.45rem}
.pc-chip{font-family:var(--sans);font-size:14px;color:var(--text);background:transparent;cursor:pointer;
  border:1px solid rgba(239,233,221,.16);border-radius:100px;padding:.5rem .9rem;transition:.15s}
.pc-chip:hover{border-color:rgba(239,233,221,.4)}
.pc-chip[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}

/* inputs */
.pc-input,.pc-select{width:100%;background:var(--bg);color:var(--text);border:1px solid rgba(239,233,221,.16);
  border-radius:12px;padding:.85rem 1rem;font-family:var(--sans);font-size:15px}
.pc-input:focus,.pc-select:focus{outline:none;border-color:var(--accent)}

/* photo */
.pc-photo{display:flex;flex-direction:column;align-items:center;gap:.9rem;border:1px dashed rgba(239,233,221,.2);
  border-radius:14px;padding:1.5rem;text-align:center}
.pc-photo__preview{max-width:200px;max-height:220px;border-radius:12px;display:none}
.pc-photo__preview.is-shown{display:block}
.pc-beta{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);
  border:1px solid rgba(182,9,18,.4);border-radius:100px;padding:.2rem .6rem}
.pc-note{font-size:13px;line-height:1.55;color:var(--muted);background:rgba(182,9,18,.08);
  border:1px solid rgba(182,9,18,.25);border-radius:10px;padding:.75rem .9rem;margin-top:.9rem;display:none}
.pc-note.is-shown{display:block}

/* results */
.pc-query{font-family:var(--mono);font-size:14px;color:var(--text);background:var(--panel2);
  border:1px solid rgba(239,233,221,.1);border-radius:10px;padding:.7rem 1rem;margin:.4rem 0 1.3rem;word-break:break-word}
.pc-source{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--panel);
  border:1px solid rgba(239,233,221,.08);border-radius:14px;padding:1.1rem 1.3rem;margin:.7rem 0;transition:border-color .2s}
.pc-source:hover{border-color:rgba(182,9,18,.4)}
.pc-source__name{font-weight:700;font-size:15.5px}
.pc-source__desc{color:var(--muted);font-size:12.5px;margin-top:.2rem;font-family:var(--mono);letter-spacing:.04em}
.pc-source__go{flex-shrink:0;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--text);border:1px solid rgba(239,233,221,.2);border-radius:100px;padding:.55rem .9rem;white-space:nowrap}
.pc-source__go:hover{border-color:var(--accent);color:#fff}

/* safety — always present, never dismissable */
.pc-safety{background:rgba(234,9,21,.07);border:1px solid rgba(234,9,21,.3);border-radius:14px;
  padding:1.2rem 1.3rem;margin:1.6rem 0}
.pc-safety h3{font-size:14px;letter-spacing:.02em;margin-bottom:.5rem;color:var(--text)}
.pc-safety p{color:var(--muted);font-size:13.5px;line-height:1.6;margin:0 0 .4rem}
.pc-safety strong{color:var(--text)}

.pc-foot{border-top:1px solid rgba(239,233,221,.08);margin-top:2.5rem;padding:1.8rem clamp(1rem,4vw,2rem);
  font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--muted);text-align:center;line-height:1.7}
.pc-foot a{color:var(--muted);text-decoration:underline;text-decoration-color:rgba(239,233,221,.2)}
.pc-back{background:none;border:none;color:var(--muted);font-family:var(--mono);font-size:12px;letter-spacing:.08em;cursor:pointer;margin-top:1.4rem}
.pc-back:hover{color:var(--text)}
