:root{color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;font:16px/1.6 'Teko',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Arial,sans-serif;background:#130a0a;color:#ffe8d6}
.jp-wrap{max-width:900px;margin:0 auto;padding:0 18px}
.jp-head{padding:28px 0;background:radial-gradient(circle at 20% 0%,rgba(239,68,68,.18),transparent 40%),linear-gradient(135deg,#0f0a0a,#140b0b);border-bottom:1px solid rgba(239,68,68,.3)}
.jp-head h1{margin:0 0 4px 0;font-size:34px;letter-spacing:.8px}
.jp-sub{margin:0;color:#ffd1a1}
.jp-list{display:grid;gap:12px;padding:20px 0}
.jp-card{display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:flex-start;padding:16px;border:1px solid rgba(239,68,68,.35);border-radius:14px;background:linear-gradient(135deg,#1a0d0d,#210f0f);box-shadow:0 0 20px rgba(239,68,68,.18)}
.jp-ico{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#1a0b0b;border:1px solid rgba(239,68,68,.45)}
.jp-title{margin:0 0 6px 0;font-size:22px}
.jp-title a{color:#ffe8d6;text-decoration:none}
.jp-title a:hover{text-decoration:underline}
.jp-desc{margin:0 0 8px 0;color:#ffd1a1}
.jp-badges{list-style:none;margin:0;padding:0;display:flex;gap:8px}
.jp-badges li{background:#1a0b0b;border:1px solid rgba(245,158,11,.45);color:#ffd999;padding:4px 8px;border-radius:8px}
.jp-foot{padding:22px 0;border-top:1px solid rgba(239,68,68,.3);color:#ffd1a1}

  .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; }
  
