/* v48 互動補強樣式 */
.c50-top{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:60;display:grid;place-items:center;gap:0;width:58px;height:58px;border:3px solid var(--c-ink,#0A2342);border-radius:50%;background:var(--c-yellow,#3FA7C4);color:var(--c-white,#FAF6EC);font:400 17px/1 var(--c-display,Impact,sans-serif);letter-spacing:.06em;box-shadow:3px 3px 0 var(--c-ink,#0A2342);cursor:pointer;transition:transform .15s}
.c50-top span{font-size:15px;margin-top:-6px}
.c50-top:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--c-ink,#0A2342)}
.c50-top:focus-visible{outline:3px solid var(--c-red,#F2A3B8);outline-offset:3px}
@media (max-width:760px){.c50-top{bottom:calc(84px + env(safe-area-inset-bottom,0px));width:50px;height:50px;font-size:15px}}
[id]{scroll-margin-top:16px}
/* 漫畫放大閱讀 */
.c50-viewer{width:min(100vw,920px);max-width:100vw;height:100dvh;max-height:100dvh;margin:0 auto;padding:0;border:0;background:var(--c-ink,#0A2342);color:var(--c-white,#FAF6EC)}
.c50-viewer::backdrop{background:rgba(10,35,66,.82)}
.c50-viewer-bar{position:sticky;top:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px max(14px,env(safe-area-inset-right,0px)) 10px max(14px,env(safe-area-inset-left,0px));background:var(--c-ink,#0A2342);border-bottom:3px solid var(--c-red,#F2A3B8)}
.c50-viewer-bar strong{flex:1 1 12em;font:900 17px/1.3 var(--c-heavy,sans-serif)}
.c50-viewer-nav{display:flex;gap:8px}
.c50-viewer button{min-height:40px;padding:0 12px;border:2.5px solid var(--c-white,#FAF6EC);border-radius:3px;background:transparent;color:inherit;font:900 14px var(--c-heavy,sans-serif);cursor:pointer}
.c50-viewer button:hover,.c50-viewer button:focus-visible{background:var(--c-red,#F2A3B8);color:var(--c-ink,#0A2342);outline:none}
.c50-viewer-close{width:40px;padding:0!important;font-size:18px!important}
.c50-viewer-body{height:calc(100% - 64px);overflow:auto;-webkit-overflow-scrolling:touch}
.c50-viewer-body img{display:block;width:100%;height:auto;max-width:none}
.image-original,.open-original{cursor:zoom-in}
.c50-story-nav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:3px dashed var(--c-ink,#0A2342)}
.c50-story-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:2.5px solid var(--c-ink,#0A2342);border-radius:3px;background:var(--c-white,#FAF6EC);box-shadow:3px 3px 0 var(--c-ink,#0A2342);color:var(--c-ink,#0A2342);font:900 15px var(--c-heavy,sans-serif);text-decoration:none}
.c50-story-nav a:hover,.c50-story-nav a:focus-visible{background:var(--c-red,#F2A3B8);transform:translate(-1px,-1px)}
/* FAQ 搜尋 */
.c50-faq-search{margin:18px 0 22px;padding:14px 16px;border:3px solid var(--c-ink,#0A2342);background:var(--c-white,#FAF6EC);box-shadow:4px 4px 0 var(--c-ink,#0A2342)}
.c50-faq-search label{display:block;margin-bottom:6px;font:900 16px var(--c-heavy,sans-serif)}
.c50-faq-search div{display:flex;gap:8px}
.c50-faq-search input{flex:1;min-width:0;min-height:46px;padding:0 12px;border:2.5px solid var(--c-ink,#0A2342);border-radius:3px;font:16px inherit;background:#fff;color:var(--c-ink,#0A2342)}
.c50-faq-search input:focus{outline:3px solid var(--c-red,#F2A3B8);outline-offset:1px}
.c50-faq-search button{min-height:46px;padding:0 14px;border:2.5px solid var(--c-ink,#0A2342);border-radius:3px;background:var(--c-red,#F2A3B8);font:900 15px var(--c-heavy,sans-serif);cursor:pointer}
.c50-faq-search p{margin:8px 0 0;font-weight:700}
.c50-faq-search p:empty{display:none}
@media (prefers-reduced-motion:reduce){.c50-top,.c50-story-nav a{transition:none}}
.c50-top[hidden],.c50-faq-search [hidden]{display:none!important}
.faq-item[hidden],.faq-cat[hidden],nav.toc[hidden]{display:none!important}
