:root{--tv-navy:#20252b;--tv-blue:#3d4550;--tv-amber:#efbd3f;--tv-border:#d8e0ea;--tv-text:#272c34;--tv-bg:#f2f5f8}
.taxi-v2-page{background:var(--tv-bg);color:var(--tv-text)}
.tv-shell{width:min(100% - 32px,1080px);margin:24px auto 64px;font-family:system-ui,-apple-system,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}
.tv-hero{border-radius:18px;color:white;padding:32px;background:linear-gradient(120deg,#1b52a6 15%,#1e5cb9 75%,#205cb6 100%);box-shadow:0 8px 22px #10283b19}
.tv-kicker{display:block;color:#f3cb66;font-size:12px;letter-spacing:.14em;font-weight:800}
.tv-hero h1{margin:12px 0 8px;color:#fff;font-size:clamp(23px,4vw,36px);letter-spacing:.04em;line-height:1.5}
.tv-hero p{margin:0;color:#dfe6f0;font-size:15px;line-height:1.7}
.tv-hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tv-hero-tags span{border:1px solid #b8d2df67;background:#fff1;padding:6px 12px;border-radius:40px;font-size:12px}
.tv-notice{margin:16px 0 20px;padding:16px 20px;border:1px solid #f4e2ad;border-radius:12px;background:#fff9e7;color:#594317;line-height:1.7}
.tv-notice strong{display:block;margin-bottom:3px;color:#78551c}
.tv-notice small{display:block;margin-top:4px;color:#786a4d;font-size:12px}
.tv-error{padding:20px;border:1px solid #d45e5e;border-radius:10px;color:#9b2727;background:#fff0f0}
.tv-control{margin:18px 0;background:#fff;padding:19px 20px;border:1px solid var(--tv-border);border-radius:14px}
.tv-control>strong{display:block;color:var(--tv-navy);font-size:15px;margin-bottom:12px}
.tv-languages,.tv-categories{display:flex;flex-wrap:wrap;gap:8px}
.tv-languages button,.tv-categories button{border:1px solid #cbd4df;border-radius:10px;background:white;color:var(--tv-text);font:inherit;font-size:14px;font-weight:700;padding:10px 14px;cursor:pointer}
.tv-languages .is-selected,.tv-categories .is-selected{border-color:var(--tv-blue);background:var(--tv-blue);color:#fff}
.tv-languages button:focus-visible,.tv-categories button:focus-visible,.tv-play:focus-visible,.tv-customer-reply:focus-visible{outline:3px solid #efbd3e;outline-offset:3px}
.tv-heading{display:flex;align-items:center;gap:12px;margin:28px 0 14px}
.tv-heading span{display:grid;place-items:center;background:var(--tv-navy);color:white;width:45px;height:45px;border-radius:11px;font-weight:800}
.tv-heading h2{margin:0;font-size:23px;color:var(--tv-navy)}
.tv-phrase{background:white;border:1px solid var(--tv-border);border-radius:15px;padding:19px 22px;margin-bottom:14px;box-shadow:0 1px 3px #10283b0c}
.tv-phrase-code{font-size:12px;font-weight:800;letter-spacing:.05em;color:#6e7a8b}
.tv-stopped{margin-left:8px;color:#a05d15;background:#fff7df;border-radius:5px;padding:3px 6px}
.tv-jp{margin:9px 0;font-size:17px;font-weight:700;line-height:1.6}
.tv-foreign-line{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:10px;background:#eaf0f7}
.tv-foreign-line p{margin:0;flex:1;line-height:1.7;font-size:17px;color:var(--tv-navy)}
.tv-play{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:108px;padding:11px 10px;color:white;background:#205cb6;border:0;border-radius:10px;cursor:pointer;font:inherit;font-size:13px;font-weight:700}
.tv-play:hover{background:#1d5ab5}
.tv-caution{font-size:13px;color:#99511b;background:#fffbee;border-radius:6px;padding:10px;margin:11px 0 0}
.tv-reply-tree{margin-top:12px;border-top:1px solid #e3e7ec;padding-top:12px}
.tv-reply-tree>summary{font-weight:700;color:var(--tv-blue);cursor:pointer;padding:6px 1px;list-style:revert}
.tv-reply-tree>summary span{font-size:12px;background:#e1e9f3;border-radius:99px;padding:4px 9px;margin-left:7px}
.tv-reply-guide{padding:10px 0;color:#677282;font-size:13px}
.tv-reply-pair{margin:12px 0}
.tv-customer-reply{display:flex;flex-direction:column;text-align:left;gap:4px;width:100%;padding:14px 15px;border-radius:11px;border:1px solid #b4c4d9;background:#f0f4fa;color:var(--tv-navy);cursor:pointer;font:inherit}
.tv-customer-reply:hover{border-color:#1c509f;background:#e5eefa}
.tv-reply-lang{font-size:17px;font-weight:800;line-height:1.5}
.tv-customer-reply small{font-size:12px;color:#677282}
.tv-customer-reply b{align-self:flex-end;font-size:12px;color:#184588}
.tv-staff-response{padding:14px;border-radius:0 0 11px 11px;border:1px solid #c9decf;border-top:0;background:#f0f8f0}
.tv-staff-response[hidden],.tv-category[hidden],.tv-toast[hidden]{display:none!important}
.tv-staff-label{font-size:12px;color:#27714f;font-weight:800}
.tv-staff-jp{font-size:14px;font-weight:700;margin:8px 0}
.tv-staff-foreign{display:flex;align-items:center;gap:10px}
.tv-staff-foreign>span{flex:1;line-height:1.5}
.tv-back{margin-top:20px;font-size:14px}.tv-back a{color:var(--tv-blue)}
.tv-toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#1b52a4;color:white;padding:12px 18px;border-radius:10px;font-size:13px;box-shadow:0 5px 20px #0003;z-index:1000;width:max-content;max-width:calc(100% - 32px)}
@media(max-width:660px){.tv-shell{width:calc(100% - 20px);margin:12px auto 40px}.tv-hero{padding:22px 18px}.tv-control{padding:14px}.tv-languages button,.tv-categories button{font-size:12px;padding:9px}.tv-phrase{padding:15px}.tv-foreign-line,.tv-staff-foreign{align-items:stretch;flex-direction:column}.tv-play{align-self:flex-end}.tv-heading h2{font-size:19px}}
