*{box-sizing:border-box}body{margin:0;font-family:Noto Sans TC,system-ui,sans-serif;background:#f4f2fa;color:#2a2438}.wrap{max-width:520px;margin:0 auto;padding:16px}header{text-align:center}header h1{margin:8px 0 0;color:#6b46c1}.tagline{color:#8b84a0;margin:4px 0 12px}.card{background:#fff;border-radius:14px;padding:16px;margin:12px 0;box-shadow:0 1px 4px #503c8c1a}.card h2{font-size:.95rem;margin:0 0 10px;color:#6b46c1}.card.center{text-align:center}.merchant-list{display:flex;flex-direction:column;gap:6px}.merchant-row{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border:1px solid #eee9f8;border-radius:10px}.merchant-row .kind{font-size:.72rem;padding:2px 8px;border-radius:999px}.kind.native{background:#e6f4ea;color:#1a7f37}.kind.adapter{background:#fdf3e3;color:#b26a00}button{border:none;border-radius:10px;padding:13px 16px;font-size:1rem;cursor:pointer;font-family:inherit}.talk{background:#6b46c1;color:#fff;font-weight:800;font-size:1.3rem;width:160px;height:160px;border-radius:50%;box-shadow:0 4px 14px #6b46c166;margin:8px auto;display:block;line-height:1.5}.talk.recording{background:#d0342c;box-shadow:0 4px 14px #d0342c80}.primary{background:#ded5f5;color:#4c3a86;width:30%}.pay{background:#1a7f5a;color:#fff;font-weight:700;font-size:1.05rem;width:100%;margin:5px 0}.ghost{background:#eee;color:#444;width:100%;margin:5px 0}.hint{color:#a29ab8;font-size:.8rem}input{width:66%;padding:12px;border:1px solid #ddd4f0;border-radius:10px;margin:6px 2% 6px 0;font-size:1rem}form{display:flex;align-items:center}.routed{color:#6b46c1;font-weight:700;margin-bottom:6px}.readback{font-size:1.15rem;font-weight:700}.quote-line{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed #eee9f8;font-size:.95rem}.error{background:#fdecea;color:#b3261e;padding:10px 14px;border-radius:10px;margin:8px 0}.info{background:#ede9fb;color:#4c3a86;padding:10px 14px;border-radius:10px;margin:8px 0}.ok{background:#e6f4ea;color:#1a7f37;padding:10px 14px;border-radius:10px;margin:8px 0}.hidden{display:none}footer{text-align:center;color:#b9b2cc;font-size:.75rem;margin:20px 0}code{word-break:break-all;background:#f0ecfa;border-radius:4px;padding:1px 4px}a{color:#6b46c1}.center{text-align:center}.bigicon{font-size:44px}.accent{color:#6b46c1}.bullet{font-size:.85rem;color:#4a4460;margin:4px 0}.fineprint{color:#a29ab8;font-size:.72rem;text-align:center;margin-top:8px}.primary.wide{width:100%}.micwrap{text-align:center;padding:14px 0 6px}.mic.live{animation:pulse 1.6s infinite}@keyframes pulse{0%{box-shadow:0 4px 14px #6b46c166,0 0 0 10px #6b46c12e}50%{box-shadow:0 4px 14px #6b46c166,0 0 0 28px #6b46c10d}to{box-shadow:0 4px 14px #6b46c166,0 0 0 10px #6b46c12e}}.mic{width:150px;height:150px;font-size:52px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.listening{color:#6b46c1;font-weight:800;font-size:.95rem;margin-top:10px}.transcript{margin:10px 0;max-height:44vh;overflow-y:auto}.bubble{max-width:85%;padding:9px 13px;border-radius:15px;font-size:.9rem;margin:7px 0;line-height:1.5}.bubble.agent{background:#fff;color:#2a2438;border-top-left-radius:4px;box-shadow:0 1px 3px #503c8c1f;text-align:left}.bubble.agent:before{content:"🤖 Chui Agent（語音）";display:block;font-size:.62rem;color:#a29ab8;margin-bottom:2px}.bubble.user{background:#6b46c1;color:#fff;margin-left:auto;border-top-right-radius:4px;text-align:left}.bubble.user:before{content:"🗣️ 你（語音）";display:block;font-size:.62rem;color:#d5c8f5;margin-bottom:2px}.progress-card{background:#fff;border-radius:12px;padding:10px 14px;margin:8px 0;box-shadow:0 1px 3px #503c8c1f;text-align:left}.step{font-size:.82rem;color:#4a4460;margin:4px 0}.txlink{color:#6b46c1;font-size:.78rem;word-break:break-all}.fallback{margin:8px 0;color:#a29ab8;font-size:.8rem;text-align:left}.fallback summary{cursor:pointer}.merchant-cards{display:flex;flex-direction:column;gap:10px}.merchant-card{display:flex;align-items:center;gap:10px;padding:14px;border-radius:12px;text-decoration:none;border:1px solid #eee9f8;background:#fbfaff}.merchant-card .mname{font-size:1.05rem;font-weight:800;color:#2a2438}.merchant-card .go{margin-left:auto;color:#6b46c1;font-weight:700;font-size:.85rem}.merchant-card.native:hover{border-color:#6b46c1}.menu-list{display:flex;flex-direction:column;gap:4px}.menu-row{display:flex;justify-content:space-between;border-bottom:1px dashed #eee9f8;padding:6px 0;font-size:.9rem}.menu-row .price{color:#6b46c1;font-weight:700}
