
  :root{
    --bg:#f6f7fb;
    --card:#ffffff;
    --text:#0f172a;
    --muted:#64748b;
    --line:#e5e7eb;
    --brand2:#0b57d0;
    --brand3:#111827;
    --danger:#b30000;
    --shadow:0 10px 28px rgba(15, 23, 42, .08);
    --shadow2:0 2px 10px rgba(0,0,0,.06);
    --radius:14px;
  }
  body{ background:var(--bg); color:var(--text); }

  .page{max-width:1200px;margin:0 auto;padding:18px;}
  .wrap{display:grid;grid-template-columns: 1.8fr .9fr;gap:18px;align-items:start;}
  @media (max-width: 980px){ .wrap{ grid-template-columns:1fr; } }

  .card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow2);border:1px solid rgba(226,232,240,.9);overflow:hidden;}
  .card-pad{padding:16px;}
  .card-head{padding:16px;border-bottom:1px solid var(--line);background:linear-gradient(180deg, #ffffff, #fbfcff);}

  /* breadcrumb */
  .crumbs{margin:0 0 12px;color:var(--muted);font-size:13px;}
  .crumbs a{color:var(--brand2);text-decoration:none;}
  .crumbs a:hover{text-decoration:underline;}

  .hero{
    width:100%;
    max-height:420px;
    object-fit:cover;
    display:block;
    border-bottom:1px solid var(--line);
    background:#fff;
  }

  .title{margin:0 0 10px;font-size:28px;line-height:1.25;letter-spacing:-.02em;}
  .muted{color:var(--muted);font-size:13px;}
  .badges{display:flex;flex-wrap:wrap;gap:8px;}
  .badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;background:#eef5ff;color:var(--brand);border:1px solid #dbe6ff;line-height:1;}
  .badge.gray{background:#f8fafc;border-color:#e2e8f0;color:#334155;}

  .btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:12px;font-weight:600;font-size:14px;text-decoration:none;border:1px solid transparent;transition:transform .08s ease, box-shadow .12s ease;white-space:nowrap;}
  .btn:hover{transform:translateY(-1px);box-shadow:var(--shadow);}
  .btn.primary{background:var(--brand3);color:#fff;}
  .btn.dark{background:var(--brand2);color:#fff;}
  .btn.danger{background:var(--danger);color:#fff;}
  .btn.outline{background:#fff;color:var(--brand2);border-color:#e2e8f0;}

  .section-title{margin:0 0 10px;font-size:16px;letter-spacing:-.01em;}

  .summary{padding:0;}
  .summary .tbl{width:100%;border-collapse:separate;border-spacing:0;}
  .summary .tbl tr td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top;font-size:14px;}
  .summary .tbl tr:last-child td{border-bottom:0;}
  .summary .tbl td:first-child{width:36%;font-weight:700;color:#0f172a;background:linear-gradient(90deg, #fbfcff, #ffffff);}
  .summary .tbl td:last-child{color:#1f2937;}
  .summary .tbl .submuted{color:var(--muted);font-size:13px;line-height:1.6;}
  .summary .tbl tr:hover td{background:rgba(2, 6, 23, .02);}

  .imp-links{padding:16px;border-top:1px solid var(--line);background:#fbfcff;}
  .chips{display:flex;flex-wrap:wrap;gap:8px;}
  .chip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-size:13px;}

  .content{padding:16px;line-height:1.85;font-size:15px;color:#0f172a;}
  .content :where(h2){font-size:20px;margin:22px 0 10px;padding-left:10px;border-left:4px solid var(--brand2);}
  .content :where(h3){font-size:18px;margin:18px 0 8px;}
  .content :where(h4){font-size:16px;margin:14px 0 6px;}
  .content :where(p){margin:10px 0;}
  .content :where(a){color:var(--brand2);text-decoration:underline;text-underline-offset:3px;}
  .content :where(ul,ol){margin:10px 0 10px 20px;}
  .content :where(blockquote){margin:14px 0;padding:12px 14px;border-left:4px solid #93c5fd;background:#f1f5ff;border-radius:12px;color:#1f2937;}
  .content :where(hr){border:0;border-top:1px solid var(--line);margin:16px 0;}
  .content img{max-width:100%;height:auto;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 8px 22px rgba(0,0,0,.08);margin:10px 0;}

  .content :where(table){width:100%;border-collapse:separate;border-spacing:0;margin:14px 0;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;background:#fff;}
  .content :where(th){text-align:left;font-weight:800;font-size:13px;color:#0f172a;background:linear-gradient(180deg, #f8fafc, #ffffff);border-bottom:1px solid #e2e8f0;}
  .content :where(th, td){padding:12px 12px;border-right:1px solid #e2e8f0;vertical-align:top;}
  .content :where(tr td:last-child, tr th:last-child){border-right:0;}
  .content :where(tr td){font-size:14px;color:#111827;border-bottom:1px solid #e2e8f0;}
  .content :where(tr:last-child td){border-bottom:0;}
  .content :where(tbody tr:hover td){background:#fbfdff;}

  /* sidebar */
  .side-head{padding:16px;border-bottom:1px solid var(--line);background:#fbfcff;}
  .side-body{padding:10px 16px 16px;}
  .list{list-style:none;padding:0;margin:0;}
  .list li{padding:12px 0;border-bottom:1px solid var(--line);}
  .list li:last-child{border-bottom:0;}
  .list a{color:#0f172a;text-decoration:none;font-weight:700;}
  .list a:hover{text-decoration:underline;text-underline-offset:3px;}
  .share a{color:var(--brand2);text-decoration:none;font-weight:700;}
  .share a:hover{text-decoration:underline;}