*{box-sizing:border-box;margin:0;padding:0;}
html,body{background:#f5ede3;font-family:-apple-system,"PingFang TC","Noto Sans TC",sans-serif;min-height:100vh;}
.wrap{max-width:480px;margin:0 auto;padding:1rem 1rem 3rem;}

/* ── 頂部 bar ── */
.topbar{background:#2d1f0f;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;border-radius:20px;margin-bottom:12px;}
.topbar-title{font-size:16px;font-weight:500;color:#f0e8dc;letter-spacing:.04em;}
.topbar-sub{font-size:14px;color:#b89d7d;}
.pagehead{margin:6px 2px 14px;}
.pagehead h1{font-size:22px;font-weight:700;color:#2d1f0f;margin-bottom:4px;}
.pagehead p{font-size:15px;color:#7a5636;line-height:1.6;}

/* ── 卡片 ── */
.card{background:#fdf8f3;border-radius:20px;padding:1.25rem;border:0.5px solid #e8ddd2;margin-bottom:.75rem;}
.hdiv{height:0.5px;background:#e8ddd2;margin:10px 0;}

/* ── 角色卡 ── */
.charcard{background:#fff8f4;border:0.5px solid #f0c8b0;border-radius:16px;padding:14px 16px;margin-bottom:12px;}
.charcard-top{display:flex;align-items:center;gap:12px;margin-bottom:10px;}
.char-avatar{width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,#e8734a,#c85830);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;}
.char-info{flex:1;}
.char-role-pill{font-size:14px;color:#9a6b3e;background:#f0e4d4;border-radius:8px;padding:2px 8px;display:inline-block;margin-bottom:4px;}
.char-name{font-size:20px;font-weight:600;color:#2d1f0f;}
.char-slogan{font-size:14px;color:#c26b3a;margin-top:2px;}

/* ── 清單 ── */
.blist{list-style:none;}
.blist li{font-size:15px;color:#4a3220;padding:4px 0 4px 1.3rem;position:relative;line-height:1.65;}
.blist li::before{content:"✓";position:absolute;left:0;color:#e8734a;}
.blist li strong{color:#2d1f0f;font-weight:600;}

/* ── 話術/引用框 ── */
.copybox{background:#fff;border-left:3px solid #e8734a;border-radius:0 12px 12px 0;padding:1rem;font-size:15px;color:#6b4c30;line-height:1.8;margin:10px 0;white-space:pre-line;}
.copybox strong{color:#e8734a;font-weight:600;}

/* ── 時間軸 ── */
.task-tabs{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap;}
.task-tab{flex:1;white-space:nowrap;background:#fff;border:0.5px solid #e8ddd2;border-radius:10px;padding:8px 6px;font-size:15px;color:#7a5636;cursor:pointer;line-height:1.3;font-family:inherit;text-align:center;}
.task-tab.active{background:#e8734a;color:#fff;border-color:#e8734a;font-weight:600;}
.tl{position:relative;padding-left:20px;}
.tl::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:#f0c8b0;border-radius:1px;}
.tl-item{position:relative;padding:0 0 16px 8px;}
.tl-item::before{content:"";position:absolute;left:-19px;top:5px;width:10px;height:10px;border-radius:50%;background:#e8734a;border:2px solid #fdf8f3;}
.tl-item.sub::before{background:#f0c8b0;}
.tl-time{font-size:14px;font-weight:700;color:#e8734a;margin-bottom:2px;}
.tl-name{font-size:16px;font-weight:600;color:#2d1f0f;margin-bottom:2px;}
.tl-desc{font-size:14px;color:#7a5636;line-height:1.6;}
.day-pill{display:inline-block;background:#2d1f0f;color:#f0e8dc;border-radius:20px;padding:4px 14px;font-size:15px;font-weight:600;margin:6px 0 12px;}

/* ── SOP 步驟 ── */
.step{display:flex;gap:12px;margin-bottom:14px;}
.step-num{width:30px;height:30px;border-radius:50%;background:#e8734a;color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.step-body{flex:1;}
.step-name{font-size:16px;font-weight:600;color:#2d1f0f;margin-bottom:3px;line-height:1.5;}
.step-desc{font-size:14px;color:#7a5636;line-height:1.65;}
.warnbox{background:#fff4ec;border:1px solid #f0c9b0;border-radius:12px;padding:12px 14px;font-size:15px;color:#c26b3a;line-height:1.7;margin:10px 0;}
.shot{width:100%;border-radius:12px;border:0.5px solid #e8ddd2;margin:8px 0;display:block;}
.shot-cap{font-size:13px;color:#8a6f52;text-align:center;margin-bottom:10px;}

/* ── 導覽按鈕 ── */
.btnO{display:block;width:100%;background:#e8734a;color:#fff;border:none;border-radius:24px;padding:14px;font-size:17px;font-weight:500;cursor:pointer;text-align:center;margin-bottom:8px;text-decoration:none;}
.btnW{display:block;width:100%;background:#fff;color:#e8734a;border:1px solid #e8734a;border-radius:24px;padding:13px;font-size:16px;font-weight:500;cursor:pointer;text-align:center;margin-bottom:8px;text-decoration:none;}
.navrow{display:flex;gap:8px;margin-top:18px;}
.navrow a{flex:1;}
.foot{text-align:center;font-size:13px;color:#b89d7d;margin-top:20px;line-height:1.6;}

.section-head{display:flex;align-items:center;gap:8px;margin:16px 2px 10px;}
.section-icon{font-size:18px;}
.section-title{font-size:17px;font-weight:600;color:#2d1f0f;flex:1;}
