/* mock6 reference: gold pill, white floating panel; readable mobile labels. */
/* Answers are model text: a kanji outside the page-derived body subset falls to this JIS level-1 face instead of the
   system gothic. Kanji-only range, so it downloads only when such a kanji appears (↗ etc. never trigger it). */
@font-face{font-family:"Zen Kaku Gothic New Ext";src:url("../fonts/zen-kaku-gothic-new-400-ext-sub.woff2?v=20261001a") format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+3005-3007,U+4E00-9FFF}
.mcb-launch,.mcb{--mcb-ink:#593814;--mcb-paper:#fff;--mcb-accent:#593814;font-family:"Zen Kaku Gothic New","Zen Kaku Gothic New Ext","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;line-height:1.7;color:var(--mcb-ink);box-sizing:border-box}
.mcb-launch{position:fixed;right:28px;bottom:28px;z-index:999;display:flex;align-items:center;gap:10px;border:1px solid #76551e;border-radius:999px;padding:13px 20px;background:var(--bh-yellow,#f2c230);color:#493010;box-shadow:0 4px 14px #3c2a1447;cursor:pointer;min-height:50px;font-size:14px;font-weight:700}
.mcb{position:fixed;inset:auto 28px 92px auto;z-index:1000;margin:0;width:440px;max-width:calc(100vw - 32px);height:min(760px,calc(100dvh - 112px));max-height:calc(100dvh - 112px);padding:0;border:1px solid #e6dccc;border-radius:16px;background:#fff;box-shadow:0 4px 10px #3c2a1410,0 10px 30px #3c2a142e;overflow:auto;overscroll-behavior:contain;scrollbar-color:#8b7047 #f9f6f3}
.mcb[open]{display:flex;flex-direction:column}.mcb *{box-sizing:border-box}.mcb button,.mcb input{font:inherit}.mcb button{cursor:pointer}.mcb button:disabled{opacity:.6;cursor:wait}
.mcb-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 6px;gap:8px}.mcb-kicker{display:block;font-size:14px;font-weight:500;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;color:var(--bh-blue,#1f4e9c);margin-bottom:4px}.mcb-kicker::before{content:"";display:inline-block;width:10px;height:10px;margin-right:10px;vertical-align:1px;background:var(--bh-blue,#1f4e9c)}.mcb h2{font-family:var(--font-heading,serif);font-size:20px;font-weight:700;margin:0;line-height:1.5;letter-spacing:.04em;font-feature-settings:"palt" 1;color:var(--ink,#1a1714)}.mcb-close{background:transparent;border:0;border-radius:50%;width:44px;height:44px;color:#593814;font-size:26px!important;flex-shrink:0}
.mcb-intro{font-size:14px;color:#494949;margin:0 18px 10px;padding:10px 12px;background:#f9f6f3;border-radius:12px 12px 12px 4px}.mcb-log{flex:1 0 110px;min-height:110px;overflow:auto;padding:4px 18px;scrollbar-color:#8b7047 #f9f6f3}.mcb-log p{font-size:16px;line-height:1.7;margin:0 0 12px;white-space:pre-wrap;overflow-wrap:anywhere}.mcb-answer{background:#f9f6f3;color:#494949;border-radius:12px 12px 12px 4px;padding:10px 12px}.mcb-question{background:#f3e9bc;color:#493010;border-radius:12px 12px 4px 12px;padding:10px 12px;margin-left:24px!important}.mcb a{color:#593814;text-decoration:underline;text-underline-offset:3px;font-size:14px;display:inline-block;min-height:24px}.mcb-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px}.mcb-suggestions button{background:#fff;border:1px solid #8b7047;color:#593814;border-radius:999px;font-size:14px;min-height:44px;padding:7px 12px}.mcb-status{margin:4px 18px;font-size:14px;color:#593814}.mcb-status:empty{display:none}.mcb-form{padding:10px 18px 4px}.mcb-form label{font-size:14px;display:block}.mcb-input-row{display:flex;gap:8px}.mcb input{min-width:0;width:0;flex:1;border:1px solid #8b7047;border-radius:8px;background:#fff;color:#494949;padding:8px;min-height:44px;font-size:16px}.mcb-form button{background:#593814;color:#fff;border:1px solid #593814;border-radius:8px;padding:8px 12px;min-width:60px;min-height:44px}.mcb-footer{display:flex;flex-direction:column;gap:4px;padding:8px 18px 16px;font-size:14px;line-height:1.6;color:#494949}.mcb-footer small{font-size:14px}.mcb :focus-visible,.mcb-launch:focus-visible{outline:3px solid #593814;outline-offset:2px}.mcb ::selection{background:#f3e9bc;color:#493010}
@media(max-width:768px){.mcb-launch{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:10px 14px;transition:opacity .2s,visibility .2s}.mcb-launch.is-tucked{opacity:0;visibility:hidden;pointer-events:none}.mcb{right:16px;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 62px);height:calc(100dvh - 100px);max-height:calc(100dvh - 100px);width:calc(100vw - 32px)}}
.mcb-launch{width:56px;height:56px;padding:0;justify-content:center}.mcb-launch span{position:absolute;right:0;bottom:calc(100% + 8px);white-space:nowrap;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid #76551e;color:#493010;box-shadow:0 2px 8px #3c2a1433;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}.mcb-launch:hover span,.mcb-launch:focus-visible span{opacity:1;visibility:visible}.mcb-launch[aria-expanded="true"] span{display:none}@media(min-width:769px){.mcb-launch{right:8px}}.mcb input::placeholder{color:#6b625c;opacity:1}
@media(max-width:768px){.mcb-launch span{display:none}.mcb-launch{transition:opacity .2s,visibility .2s,transform .25s}.mcb-launch.is-away{transform:translateY(calc(100% + 24px))}}
@media(prefers-reduced-motion:no-preference){.mcb[open]{animation:mcb-enter .18s ease-out}@keyframes mcb-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}
