/* AIQ AI 素養檢測 — 樣式（極簡清爽版：留白、單一主色、細線、扁平卡片） */
  :root{
    --bg:#fafbfd; --panel:#ffffff; --panel2:#f5f7fb; --line:#e9edf3;
    --ink:#1b2330; --muted:#6b7686; --accent:#2f6df0; --accent2:#2f6df0;
    --good:#10a982; --warn:#dd9008; --bad:#e0464f; --gold:#c98f11;
    --radius:14px; --radius-sm:10px;
  }
  *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
  /* 永遠保留垂直捲軸的軌道寬度，避免內容多寡造成版面左右跳動。
     現代瀏覽器用 scrollbar-gutter（保留空間、無捲軸時不顯示空軌道）；
     不支援的舊瀏覽器退回 overflow-y:scroll（恆顯示軌道，同樣不跳） */
  html{overflow-y:scroll}
  @supports (scrollbar-gutter:stable){ html{scrollbar-gutter:stable;overflow-y:auto} }
  html,body{margin:0;background:var(--bg);color:var(--ink);
    font-family:"PingFang TC","Microsoft JhengHei","Noto Sans TC",system-ui,sans-serif;
    line-height:1.65;-webkit-font-smoothing:antialiased}
  /* 防複製：整頁預設不可選取，僅必要處放行 */
  body{user-select:none;-webkit-user-select:none;-moz-user-select:none}
  .wrap{max-width:720px;margin:0 auto;padding:28px 18px 72px}
  .card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);
    padding:30px 28px;margin-bottom:18px}
  h1{font-size:23px;font-weight:800;letter-spacing:-.01em;margin:0 0 8px;line-height:1.25}
  h2{font-size:18px;font-weight:700;margin:0 0 12px;line-height:1.3}
  .sub{color:var(--muted);font-size:14px;line-height:1.7}
  .pill{display:inline-block;background:var(--panel2);border:1px solid var(--line);
    color:var(--muted);font-size:12px;padding:4px 11px;border-radius:999px;margin:0 6px 6px 0}
  .facts{display:flex;flex-wrap:wrap;gap:9px 20px;margin-top:16px;color:var(--muted);font-size:13.5px}
  .facts span{display:inline-flex;align-items:center;gap:6px}
  .notes{margin:0;padding-left:18px;color:var(--muted);font-size:13.5px;line-height:1.85}
  .notes li{margin-bottom:7px}
  .notes b{color:var(--ink);font-weight:600}
  .btn{appearance:none;border:0;border-radius:var(--radius-sm);padding:14px 22px;font-size:16px;
    font-weight:600;cursor:pointer;background:var(--accent);color:#fff;transition:.15s;width:100%}
  .btn:hover{background:#2a61d8}
  .btn:disabled{opacity:.4;cursor:not-allowed}
  .btn.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}
  .btn.ghost:hover{background:var(--panel2)}
  .meta-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
  .progress{height:6px;background:var(--panel2);border-radius:999px;overflow:hidden;flex:1}
  .progress>i{display:block;height:100%;background:var(--accent);width:0;transition:width .3s}
  .timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:15px;min-width:74px;
    text-align:right;transition:.15s;color:var(--muted);transform-origin:right center}
  .timer.low{color:var(--bad)}
  .timer.crit{color:var(--bad);text-shadow:0 0 8px rgba(216,67,79,.5);
    animation:tcrit 1s ease-in-out infinite}
  @keyframes tcrit{0%,100%{text-shadow:0 0 6px rgba(216,67,79,.38);transform:scale(1.06)}
    50%{text-shadow:0 0 16px rgba(216,67,79,.85);transform:scale(1.18)}}
  .timer.bump{animation:timerBump .8s ease}
  @keyframes timerBump{0%{transform:scale(1)}28%{transform:scale(1.25);color:var(--good)}60%{color:var(--good)}100%{transform:scale(1)}}
  .qcount.bump{display:inline-block;transform-origin:left center;animation:qnumBump .8s ease}
  @keyframes qnumBump{0%{transform:scale(1)}28%{transform:scale(1.15);color:var(--good)}60%{color:var(--good)}100%{transform:scale(1)}}
  /* 加時間提示：小型膠囊，浮在最上方（題數軸上方），不壓到題目；短暫彈出後自動消失 */
  .timebonus{position:fixed;left:50%;top:6px;z-index:9999;transform:translateX(-50%);pointer-events:none;
    background:linear-gradient(135deg,#13b083,#0f9d76);color:#fff;padding:6px 16px;border-radius:999px;
    box-shadow:0 6px 18px rgba(15,157,118,.35);text-align:center;white-space:nowrap;
    animation:tbIn .4s cubic-bezier(.2,.9,.3,1.25) both}
  .timebonus.out{animation:tbOut .4s ease forwards}
  .timebonus .tb-main{font-size:14px;font-weight:800;letter-spacing:.3px;display:inline}
  .timebonus .tb-sub{font-size:12px;opacity:.9;font-weight:600;display:inline;margin-left:8px;
    padding-left:8px;border-left:1px solid rgba(255,255,255,.4)}
  @keyframes tbIn{from{opacity:0;transform:translateX(-50%) translateY(0) scale(.9)}
    to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
  @keyframes tbOut{from{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}
    to{opacity:0;transform:translateX(-50%) translateY(0) scale(.97)}}
  .qnum{color:var(--muted);font-size:13px;letter-spacing:.03em;margin-bottom:10px}
  .qhint{margin:0 0 14px;padding:8px 12px;border-radius:var(--radius-sm);font-size:13px;
    color:var(--good);background:rgba(15,157,118,.08)}
  .qhint.hide{display:none}
  .situation{font-size:17px;line-height:1.6;margin:0 0 22px}
  .multitag{display:inline-block;background:var(--warn);color:#fff;font-size:12px;font-weight:700;
    padding:2px 9px;border-radius:6px;margin-right:9px;vertical-align:middle;letter-spacing:.5px}
  /* 作答中的單元主題小標（題號前）＋換單元時的一句提示 */
  .qsec{display:inline-block;background:var(--panel2);color:var(--muted);font-size:11.5px;font-weight:700;
    padding:2px 9px;border-radius:999px;margin-right:8px;letter-spacing:.03em;vertical-align:middle}
  .secintro{display:block;background:rgba(47,109,240,.08);color:var(--accent);font-size:12.5px;font-weight:700;
    padding:6px 11px;border-radius:8px;margin:0 0 12px}
  .opt{display:block;width:100%;text-align:left;background:var(--panel);border:1px solid var(--line);
    color:var(--ink);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:10px;font-size:15px;
    cursor:pointer;transition:.12s;line-height:1.6}
  .opt:hover{border-color:var(--accent);background:#f6f9ff}
  .opt.sel{border-color:var(--accent);background:#eff4ff;box-shadow:0 0 0 1px var(--accent) inset}
  .opt.disabled{opacity:.4;cursor:not-allowed}
  .opt.disabled:hover{border-color:var(--line);background:var(--panel)}
  .opt .k{display:inline-block;width:23px;height:23px;line-height:23px;text-align:center;
    border-radius:6px;background:var(--panel2);color:var(--muted);font-weight:700;margin-right:10px;font-size:12px}
  .foot{display:flex;gap:12px;margin-top:10px}
  .center{text-align:center}
  .muted{color:var(--muted)}
  .small{font-size:13px}
  .divider{height:1px;background:var(--line);margin:20px 0}
  .resultcode{user-select:all;-webkit-user-select:all;background:var(--panel2);border:1px dashed var(--line);
    border-radius:var(--radius-sm);padding:12px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;
    word-break:break-all;color:var(--muted);margin-top:8px}
  .hide{display:none!important}
  .watermark{position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.06;
    background-repeat:repeat;font-size:0}
  .blockmsg{position:fixed;inset:0;background:var(--bg);display:none;align-items:center;
    justify-content:center;z-index:10000;text-align:center;padding:30px}
  /* ── 結果頁：受測者基本資料卡（統一資訊條）── */
  .reportmeta{display:flex;flex-wrap:wrap;justify-content:center;
    background:var(--panel2);border:1px solid var(--line);border-radius:var(--radius);padding:14px 8px}
  .reportmeta .rm-cell{flex:1;min-width:130px;display:flex;flex-direction:column;align-items:center;
    justify-content:center;gap:3px;padding:2px 16px;border-left:1px solid var(--line);text-align:center}
  .reportmeta .rm-cell:first-child{border-left:0}
  .reportmeta .rm-lab{font-size:11.5px;color:var(--muted);letter-spacing:.04em}
  .reportmeta .rm-val{font-size:15.5px;font-weight:700;color:var(--ink);line-height:1.3}
  .reportmeta .rm-sub{font-size:11px;color:var(--muted);font-weight:400}
  /* ── 結果頁：區段標題 ── */
  .sec{display:flex;align-items:baseline;font-size:17px;font-weight:800;margin:0 0 12px;
    padding-bottom:9px;border-bottom:1px solid var(--line);color:#2b3a55}
  .sec .secno{color:inherit;font-weight:800}
  .sec .secqn{margin-left:10px;font-size:12.5px;font-weight:600;color:var(--muted);white-space:nowrap;align-self:center}
  .sechint{display:block;font-size:12.5px;font-weight:400;color:var(--muted);line-height:1.5;margin:-6px 0 14px}
  /* ── 摘要卡（去左側彩條，扁平中性）── */
  .summary{background:var(--panel2);border:1px solid var(--line);border-radius:var(--radius);
    padding:18px 20px;margin:6px 0 20px}
  .sm-row{display:flex;flex-wrap:wrap;gap:16px 28px}
  .sm-cell{min-width:108px}
  .sm-lab{font-size:12px;color:var(--muted);margin-bottom:4px}
  .sm-big{font-size:22px;font-weight:800;line-height:1.15}
  .sm-unit{font-size:13px;color:var(--muted);font-weight:600}
  .sm-mid{font-size:15px;font-weight:700}
  .sm-sub{font-size:12px;color:var(--muted);font-weight:500;margin-left:5px}
  .sm-act{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:14px;line-height:1.65}
  /* ── 統計卡（與摘要同一語言）── */
  .statrow{display:flex;flex-wrap:wrap;gap:12px}
  .stat{flex:1;min-width:150px;background:var(--panel);border:1px solid var(--line);
    border-radius:var(--radius);padding:15px 16px;display:flex;flex-direction:column}
  .stat .slab{font-size:12px;color:var(--muted)}
  .stat .sval{font-size:30px;font-weight:800;line-height:1.1;margin-top:auto;letter-spacing:-.02em}
  .stat .sval2{font-size:19px;font-weight:800;line-height:1.2;margin-top:auto}
  .stat .sunit{font-size:14px;color:var(--muted);font-weight:600}
  .stat .ssub{margin-top:auto;padding-top:7px;font-size:13px}  /* 靠底對齊：三卡等高，底部標籤橫向對齊，中間結果區留更多空間 */
  /* ── 徽章 ── */
  .band{display:inline-block;font-size:12px;font-weight:700;padding:2px 9px;border-radius:999px;
    vertical-align:middle;white-space:nowrap}
  .band.good{background:rgba(16,169,130,.15);color:var(--good)}
  .band.accent{background:rgba(47,109,240,.13);color:var(--accent)}
  .band.warn{background:rgba(221,144,8,.15);color:#976307}  /* 琥珀當文字需夠深才讀得清楚（黃色系亮了反而低對比），背景仍亮 */
  .band.bad{background:rgba(224,70,79,.15);color:var(--bad)}
  .band.adv{background:rgba(201,143,17,.15);color:var(--gold)}  /* 進階加分 chip：單一中性金，不分級不誇張 */
  .band.gold{background:rgba(169,117,15,.08);color:var(--gold);box-shadow:inset 0 0 0 1px rgba(169,117,15,.4)}  /* 進階全到位：金色外框細標，不填色、不搶主結果 */
  .band.big{font-size:14px;padding:5px 14px}
  /* L4 進階挑戰列：收進層級表、視覺接在 L3 之下（虛線分隔＋淡金底） */
  .rpt tr.advrow td{border-top:1px dashed var(--line);background:rgba(169,117,15,.05)}
  .vd-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
  .vd-tags{display:flex;flex-wrap:wrap;gap:6px}
  .vtag{display:inline-flex;align-items:center;background:var(--panel2);border:1px solid var(--line);
    border-radius:8px;padding:3px 10px;font-size:13px}
  .vtag .vk{color:var(--muted);font-size:11px;margin-right:6px}
  /* 去左側彩條 */
  .vd-act{background:var(--panel2);border:1px solid var(--line);border-radius:var(--radius-sm);
    padding:12px 14px;font-size:14px;line-height:1.7}
  .leg{font-size:12px;line-height:1.6}
  /* ── 摺疊 ── */
  .fold{border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 14px;background:var(--panel)}
  .fold>summary{cursor:pointer;padding:12px 0;font-size:14px;color:var(--muted);
    font-weight:600;list-style:none;user-select:none}
  .fold>summary::-webkit-details-marker{display:none}
  .fold>summary::before{content:"▸ ";color:var(--muted)}
  .fold[open]>summary::before{content:"▾ "}
  .fold[open]{padding-bottom:16px}
  /* ── 提示框：淡底細框、輕量化 ── */
  .warnbox{background:rgba(216,67,79,.07);border:1px solid rgba(216,67,79,.25);
    border-radius:var(--radius);padding:16px;margin-top:14px}
  .warnbox h2{color:var(--bad)}
  .okbox{background:rgba(15,157,118,.08);border:1px solid rgba(15,157,118,.25);color:var(--good);
    border-radius:var(--radius-sm);padding:12px 14px;font-size:14px;margin:0}
  .badbox{background:rgba(216,67,79,.07);border:1px solid rgba(216,67,79,.28);color:var(--bad);
    border-radius:var(--radius-sm);padding:12px 14px;font-size:14px;margin:0}
  .badbox b{color:var(--bad)}
  .gapwarn{background:rgba(192,132,22,.08);border:1px solid rgba(192,132,22,.22);
    border-radius:var(--radius-sm);padding:10px 13px;font-size:14px;line-height:1.7;margin:10px 0 0}
  /* ── AI 性格類型（報告主角）── */
  .mbtihero{background:linear-gradient(135deg,rgba(47,109,240,.035),rgba(16,169,130,.03));
    border:1px solid rgba(47,109,240,.15);border-radius:var(--radius);padding:18px 20px;margin:0 0 16px}
  .mbti-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}
  .mbti-kicker{flex:0 0 100%;font-size:12px;color:var(--muted);letter-spacing:.06em}
  .mbti-name{font-size:24px;font-weight:800;color:#1b2a44;letter-spacing:-.01em}
  .mbti-star{color:var(--gold)}
  /* 兩張 hero 圖表並排（後台彈窗注入的是 body 片段、不含 report_v2 的 SUPP，故規則放這裡確保各處一致） */
  .hero-charts{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 16px;margin:6px 0 2px}
  .hero-charts>div{flex:1 1 230px;max-width:275px}
  .hero-charts svg{width:100%;height:auto}
  .mbti-flag{display:inline-block;vertical-align:middle;margin-left:8px;padding:2px 9px;font-size:12px;
    font-weight:700;color:#9a6b00;background:rgba(214,158,46,.16);border:1px solid rgba(214,158,46,.4);border-radius:999px}
  .vtag{display:inline-block;font-size:12px;font-weight:400;color:var(--muted);margin-left:8px;vertical-align:middle;letter-spacing:.02em;background:var(--panel2);border:1px solid var(--line);border-radius:7px;padding:1px 8px}
  .mbti-code{font-size:14px;font-weight:700;color:var(--accent);background:rgba(47,109,240,.1);
    border-radius:7px;padding:2px 10px;letter-spacing:.12em}
  .mbti-mix{font-size:12px;color:var(--warn)}
  .mbti-desc{margin:9px 0 14px;font-size:14.5px;line-height:1.7;color:#2b3a55}
  .mbti-axhint{font-size:12px;color:var(--muted);margin:2px 0 7px}
  .mbti-axes{display:flex;flex-direction:column;gap:9px;margin:0 0 12px}
  .mbax{display:grid;grid-template-columns:5.4em 3.2em 1fr 3.2em 4.2em;align-items:center;gap:12px;font-size:12.5px}
  .mbax-lab{color:var(--muted);font-weight:700}
  .mbax-a{text-align:right;color:var(--ink)}
  .mbax-b{text-align:left;color:var(--ink)}
  .mbax-track{position:relative;height:6px;margin:0 4px;background:rgba(0,0,0,.08);border-radius:999px}
  .mbax-track::before{content:"";position:absolute;left:50%;top:50%;width:1.5px;height:12px;
    background:rgba(0,0,0,.16);transform:translate(-50%,-50%);border-radius:1px}
  .mbax-track i{position:absolute;top:50%;width:13px;height:13px;border-radius:50%;background:var(--accent);
    transform:translate(-50%,-50%);box-shadow:0 1px 3px rgba(47,109,240,.5)}
  .mbax-pct{font-size:12px;color:var(--accent);font-weight:700;white-space:nowrap;min-width:0;text-align:left}
  .mbti-skill{font-size:14px;margin-top:4px}
  .mbti-extra{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 0;margin:0 0 14px;padding:11px 16px;
    background:var(--panel2);border:1px solid var(--line);border-radius:var(--radius-sm)}
  .mbti-extra .me-item{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;padding:0 20px}
  .mbti-extra .me-item + .me-item{border-left:1px solid var(--line)}
  .mbti-extra .me-lab{color:var(--muted)}
  @media(max-width:600px){ .mbti-extra{flex-direction:column;align-items:flex-start;gap:9px}
    .mbti-extra .me-item{padding:0;border-left:0} }
  /* ── 四、資安：面向卡片 ── */
  .facetgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:0 0 4px}
  .facetcard{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 15px;
    border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel2)}
  .facetcard .fc-name{font-size:14px;font-weight:600;color:var(--ink);line-height:1.3}
  /* ── 三、認知力：分數軸 ── */
  .cogtop{display:flex;align-items:baseline;flex-wrap:wrap;gap:9px;margin:0 0 14px}
  .cog-big{font-size:32px;font-weight:800;line-height:1;letter-spacing:-.02em}
  .cog-unit{font-size:14px;color:var(--muted);font-weight:600}
  .scoreaxis{margin:0 0 10px}
  .sa-track{position:relative;height:9px;border-radius:999px;background:var(--panel2);margin:10px 0 0}
  .sa-fill{position:absolute;left:0;top:0;height:100%;border-radius:999px}
  .sa-arrow{position:absolute;top:50%;width:16px;height:16px;border-radius:50%;border:3px solid #fff;
    transform:translate(-50%,-50%);box-shadow:0 1px 5px rgba(0,0,0,.28)}
  .sa-tick{position:absolute;top:-1px;height:11px;width:1.5px;border-radius:1px;background:rgba(0,0,0,.25);transform:translateX(-50%)}
  .sa-scale{position:relative;height:13px;margin-top:5px;font-size:10.5px}
  .sa-scale > span{position:absolute;transform:translateX(-50%);color:var(--muted)}
  .sa-zones{display:flex;margin-top:1px;font-size:12px;color:var(--ink)}
  .sa-zones > span{text-align:center}
  /* 進階達成率：標題獨立一行 ＋ 整列金色長條 */
  .advwrap{margin:14px 0 0}
  .adv-lab{font-size:12.5px;color:var(--gold);margin:0 0 5px}
  .advbar-track{height:7px;border-radius:999px;background:var(--panel2);overflow:hidden}
  .advbar-track i{display:block;height:100%;background:linear-gradient(90deg,#e6b84d,#c2901a);border-radius:999px}
  /* ── 三、能力面向橫條圖 ── */
  .dimchart{margin:18px 0 0}
  .dim-title{font-size:13px;font-weight:700;color:var(--ink);margin:0 0 9px}
  .dimrow{display:grid;grid-template-columns:8em 1fr 3.6em;align-items:center;gap:10px;margin-bottom:8px;font-size:13px}
  .dim-name{color:var(--ink)}
  .dim-track{height:8px;border-radius:999px;background:var(--panel2);overflow:hidden}
  .dim-track i{display:block;height:100%;border-radius:999px}
  .dim-pct{text-align:right;font-weight:700;font-size:12.5px}
  .dim-weak{font-size:10px;color:var(--bad);font-weight:700;margin-left:5px}
  @media(max-width:560px){ .dimrow{grid-template-columns:6.5em 1fr 3.4em;font-size:12px} }
  /* 答錯／次佳題的「正解＋為什麼」客觀說明框 */
  .whybox{margin:6px 0 2px;padding:7px 10px;background:rgba(47,109,240,.05);border:1px solid rgba(47,109,240,.14);
    border-radius:6px;font-size:12px;line-height:1.55}
  .whybox b{color:var(--ink)}
  /* ── 二、適應體質：白話分卡 ── */
  .adoptgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:4px 0 12px}
  .adoptcard{border:1px solid var(--line);border-radius:10px;padding:11px 14px;background:#fff}
  .adoptcard .ac-lab{font-size:12px;color:var(--muted);margin-bottom:3px}
  .adoptcard .ac-val{font-size:15px;font-weight:700;color:var(--ink)}
  .adoptcard .ac-desc{font-size:12.5px;color:var(--muted);margin-top:2px;line-height:1.5}
  @media(max-width:560px){ .mbax{grid-template-columns:4.6em 2.4em 1fr 2.4em 3.4em;gap:6px;font-size:12px}
    .mbax-lab,.mbax-a,.mbax-b{white-space:nowrap}
    .mbax-pct{font-size:11px;text-align:left} }
  .leadbox{background:rgba(47,109,240,.06);border:1px solid rgba(47,109,240,.18);
    border-radius:var(--radius-sm);padding:12px 14px;font-size:14px;line-height:1.65;margin:14px 0 0}
  .leadbox b{color:var(--accent);font-weight:700}
  .leadbox .lead-tag{display:inline-block;font-size:11.5px;font-weight:700;color:var(--accent);
    background:rgba(47,109,240,.1);border-radius:999px;padding:1px 9px;margin:0 6px 0 8px;
    vertical-align:1px;white-space:nowrap}
  /* ── 報告表格 ── */
  table.rpt{width:100%;border-collapse:collapse;font-size:14px;margin-top:4px}
  table.rpt th{text-align:left;font-size:12px;color:var(--muted);font-weight:600;
    padding:8px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
  table.rpt td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.55}
  table.rpt tr.subtot td{padding-top:5px;padding-bottom:5px}   /* 小計列做扁，讀起來像彙總列 */
  table.rpt td.num{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
  table.rpt th.num{text-align:right}
  table.rpt td.rk{color:var(--muted);white-space:nowrap;font-weight:600}
  table.rpt tr.r-warn td{background:rgba(192,132,22,.05)}
  table.rpt tr.r-bad td{background:rgba(216,67,79,.05)}
  /* ── 維度橫條 ── */
  .radarbars{margin-top:10px}
  .rb{display:flex;align-items:center;gap:10px;margin-bottom:11px;font-size:14px}
  .rb .rbname{flex:0 0 9.5em;font-weight:600;font-size:13px}
  .rb .rbtrack{flex:1;height:8px;background:var(--panel2);border-radius:999px;overflow:hidden}
  .rb .rbtrack i{display:block;height:100%;border-radius:999px}
  .rb .rbpct{flex:0 0 3em;text-align:right;color:var(--ink);font-variant-numeric:tabular-nums}
  .rb .rbn{flex:0 0 3.4em;text-align:right;font-size:12px;font-variant-numeric:tabular-nums}
  /* ── 其餘（相容保留）── */
  .lead{font-size:15px;color:var(--muted)}
  ul.clean{margin:8px 0 0;padding-left:20px}
  ul.clean li{margin-bottom:6px}
  .scorebar{margin:10px 0}
  .scorebar .lab{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px}
  .scorebar .track{height:8px;background:var(--panel2);border-radius:999px;overflow:hidden}
  .scorebar .track>i{display:block;height:100%;border-radius:999px}
  .archetype-name{font-size:24px;font-weight:800;margin:6px 0}
  .archetype-en{color:var(--muted);font-size:13px;letter-spacing:.05em;margin-bottom:10px}
  .bignum{font-size:32px;font-weight:800;color:var(--accent);line-height:1}
  .bigunit{font-size:14px;color:var(--muted)}
  .lvlrow{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0}
  .gddist{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:12px 0 0}
  .gddist .gdlab{font-size:13px;color:var(--muted);font-weight:600}
  .gdchip{display:inline-flex;align-items:center;gap:4px;font-size:13px;border:1px solid var(--line);
    border-radius:999px;padding:3px 11px;font-variant-numeric:tabular-nums}
  .gdchip.muted{color:var(--muted)}
  .lvlchip{display:inline-block;background:var(--panel2);border:1px solid var(--line);
    border-radius:var(--radius-sm);padding:6px 12px;font-size:13px;font-variant-numeric:tabular-nums}
  table.dims{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}
  table.dims td{padding:8px 6px;border-bottom:1px solid var(--line)}
  table.dims td:last-child{text-align:right;font-variant-numeric:tabular-nums;color:var(--accent)}
  table.ans{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}
  table.ans td{padding:9px 6px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.55}
  table.ans td.ai{white-space:nowrap;width:1%;text-align:center;color:var(--muted);font-variant-numeric:tabular-nums}
  @media(max-width:560px){
    .wrap{padding:20px 14px 60px}
    .card{padding:22px 18px}
    .rb .rbname{flex:0 0 7.5em;font-size:12px}
    .stat .sval{font-size:26px}
    .sm-big{font-size:20px}
    .sec{font-size:16px}
    table.rpt{font-size:13px}
    table.rpt td,table.rpt th{padding:8px 5px}
    .lvlbar{display:none}   /* 手機：隱藏得分率色條（窄欄會溢出蓋到隔壁），只留百分比數字 */
  }

  /* ===== 列印 / 存成 PDF ===== */
  @media print{
    @page{ margin:14mm }
    *{ -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important }
    html,body{ background:#fff !important }
    body{ font-size:12px }
    .wrap{ max-width:none; margin:0; padding:0 }
    /* 只印報告，其餘畫面與互動元件全部隱藏 */
    #watermark,#blocker,.noprint,.foot,#screen-intro,#screen-quiz,#screen-thanks{ display:none !important }
    .card{ box-shadow:none; border:1px solid #d8dee9; break-inside:avoid; margin-bottom:12px }
    .mbtihero{ break-inside:avoid }
    details.fold{ break-inside:avoid }
    details.fold > summary{ list-style:none }
    details.fold > summary::-webkit-details-marker{ display:none }
    a{ color:inherit; text-decoration:none }
  }
