/* ═══════════════════════════════════════════
   AI플랫마켓 Framework · 공통 CSS
   모든 독립 모듈(platform/, commerce/ 등)이 공유
   버전: 1.0.0
═══════════════════════════════════════════ */

:root{
  --navy:#0d1f35;
  --navy2:#1a3556;
  --red:#c0392b;
  --gold:#c9a84c;
  --grn:#2e7d32;
  --g1:#f5f6f8;
  --g2:#e8eaed;
  --g3:#c4c8cd;
  --g4:#8a8f98;
  --text:#1a1a1a;
  --bd:1px solid var(--g2);
  --r:10px;
  --sh:0 4px 16px rgba(13,31,53,.1);
  --fs:'Pretendard','Noto Sans KR',sans-serif;
}

*{box-sizing:border-box}
body{margin:0;font-family:var(--fs);color:var(--text);background:#fff}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}

/* ── Framework Header (모든 모듈 공통) ── */
.fw-header{background:var(--navy);color:#fff;padding:12px 20px;display:flex;align-items:center;justify-content:space-between}
.fw-header .brand{font-weight:900;font-size:1.1rem}
.fw-header .brand em{color:var(--gold);font-style:normal}
.fw-header .back{font-size:.78rem;color:rgba(255,255,255,.7);cursor:pointer}
.fw-header .back:hover{color:#fff}

/* ── Framework Footer (모든 모듈 공통) ── */
.fw-footer{background:var(--g1);border-top:var(--bd);padding:20px;text-align:center;font-size:.72rem;color:var(--g4);margin-top:40px}

/* ── 공통 컴포넌트 ── */
.fi{width:100%;border:var(--bd);border-radius:7px;padding:9px 11px;font-size:.84rem;font-family:inherit;background:#fff}
.fi:focus{outline:none;border-color:var(--navy)}
.btn-primary{background:var(--navy);color:#fff;border:none;padding:10px 18px;border-radius:7px;font-size:.84rem;font-weight:700;cursor:pointer;transition:background .15s}
.btn-primary:hover{background:var(--navy2)}
.card{border:var(--bd);border-radius:var(--r);background:#fff;overflow:hidden;transition:box-shadow .2s}
.card:hover{box-shadow:var(--sh)}
.badge{display:inline-block;font-size:.62rem;padding:2px 8px;border-radius:20px;font-weight:700}
.badge.upgrade{background:var(--navy);color:#fff}

/* ── 반응형 컨테이너 ── */
.fw-container{max-width:960px;margin:0 auto;padding:0 16px}
@media(max-width:700px){.fw-container{padding:0 12px}}
