:root { color-scheme: light dark; }
* { box-sizing: border-box; }
body { margin: 0; font: 16px/1.5 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, sans-serif; background:#0e0e0e; color:#eee; }
.container { max-width: 1100px; margin: 0 auto; padding: 0 16px; }
.site-header { padding: 32px 0; background: linear-gradient(135deg,#121212,#1b1b1b); border-bottom: 1px solid #222; }
.site-header h1 { margin: 0 0 6px 0; font-size: 28px; }
.site-header .desc { color:#bdbdbd; margin: 0; }
.cards { display: grid; gap: 16px; padding: 24px 0; }
.card { display:grid; grid-template-columns:56px 56px 1fr; gap:16px; padding:16px; border:1px solid #2a2a2a; border-radius:12px; background:#141414; }
.card-rank { width:56px; height:56px; background:#1a73e8; color:#fff; border-radius:10px; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:18px; }
.card-logo { width:56px; height:56px; }
.card-title { margin: 2px 0 6px 0; font-size: 20px; }
.card-title a { color:#fff; text-decoration:none; }
.card-title a:hover { text-decoration:underline; }
.card-desc { color:#b0b0b0; margin: 0 0 10px 0; }
.rating { display:flex; align-items:center; gap:10px; margin: 6px 0 10px 0; }
.stars { display:flex; gap:4px; }
.score { color:#ffb703; font-weight:700; }
.lists { display:grid; grid-template-columns: 1fr 1fr; gap:12px; margin: 10px 0; }
.list-title { font-weight:700; margin-bottom: 6px; color:#ddd; }
.list ul { list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.list li { display:flex; align-items:flex-start; gap:8px; color:#cfcfcf; }
.actions { margin-top: 12px; }
.btn { display:inline-block; background:#1a73e8; color:#fff; text-decoration:none; padding:10px 14px; border-radius:8px; font-weight:700; }
.btn:hover { background:#1764c6; }
.site-footer { padding: 24px 0; border-top:1px solid #222; color:#888; }

  .addon { padding: 24px 0; border-top:1px solid #232323; }
  .addon-title { font-size: 20px; margin: 0 0 14px 0; position: relative; display:inline-block; }
  .addon-title:after { content:''; position:absolute; left:0; bottom:-6px; width: 42px; height: 3px; background: linear-gradient(90deg,#1a73e8,#00b4d8); border-radius: 3px; }

  /* Highlight card */
  .highlight { padding: 0; border: none; }
  .highlight-inner { display:flex; gap:14px; align-items:center; padding:16px; background: linear-gradient(135deg, rgba(26,115,232,0.08), rgba(0,180,216,0.08)); border:1px solid #2a2a2a; border-radius: 14px; }
  .highlight-icon { width:42px; height:42px; display:flex; align-items:center; justify-content:center; background:#1a1a1a; border:1px solid #2a2a2a; border-radius:10px; font-size:20px; }
  .highlight-content p { margin: 8px 0 0 0; color:#bdbdbd; }

  .table-wrap { overflow-x: auto; border:1px solid #2a2a2a; border-radius: 12px; background:#131313; }
  .table { width: 100%; border-collapse: collapse; }
  .table thead th { background:#191919; color:#ddd; font-weight:700; }
  .table th, .table td { border-bottom: 1px solid #242424; padding: 10px 12px; text-align: left; }
  .table tr:last-child td { border-bottom: none; }
  .table code { background:#1f1f1f; border:1px solid #2a2a2a; padding: 2px 6px; border-radius:6px; }

  .list { display: grid; gap: 8px; margin: 0; padding-left: 18px; }

  .grid { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
  .grid-card { display: grid; grid-template-columns: 40px 1fr; gap: 12px; padding: 12px; border: 1px solid #2a2a2a; border-radius: 12px; background: #141414; transition: transform .12s ease, border-color .12s ease; }
  .grid-card:hover { transform: translateY(-2px); border-color:#3a3a3a; }
  .grid-rank { width: 40px; height: 40px; background: #1a73e8; color: #fff; border-radius: 10px; display:flex; align-items:center; justify-content:center; font-weight: 800; box-shadow: 0 4px 12px rgba(26,115,232,.25); }
  .grid-title { font-weight: 700; }
  .grid-desc { color: #b0b0b0; }

  .chips { list-style:none; padding:0; margin:0; display:flex; flex-wrap: wrap; gap:10px; }
  .chips li { background:#171717; border:1px solid #2a2a2a; padding:8px 12px; border-radius:999px; color:#ddd; }

  .steps { margin:0; padding-left:18px; }
  .steps li { margin: 0 0 6px 0; }

  .faq details { border:1px solid #2a2a2a; border-radius:12px; padding:10px 14px; background:#151515; }
  .faq details+details { margin-top:10px; }
  .faq summary { cursor:pointer; color:#ddd; }
  
