/* aa-panel.css — EPUB 阅读器「Aa」配置面板
 * 把详情页 assets/css/reader.css 的 Aa 组件（#rdPanel / .rd-speak-box /
 * #rdSpeakBar）通用到原书阅读器；Aa 入口用宿主顶栏 #aaBtn，不再有悬浮 #rdFab。
 * 新增图二风格的控制选项：屏幕方向、区域点击、双栏阅读、方向键/硬件按键。
 * 配色跟随 html[data-theme]，默认夜色。
 */
html[data-theme="dark"]{
  --bg:#17181b;--panel:#202126;--fg:#d8d5ce;--muted:#8a877f;--line:#33353a;
  --accent:#d9a96b;--soft:#24252a;--bar:#1d1e22;
  --head:#93c8a8;--txt:#d8d5ce;--sub:#8a919a;--nl-bg:#262a2f;--nl-bd:#3a3f46;
  --act-bg:#244b40;--act-fg:#dff0e4;--act-bd:#2f5b49;
}
html[data-theme="cream"]{
  --bg:#f7f8f3;--panel:#fffdf6;--fg:#3b453e;--muted:#8d8878;--line:#e8e4d5;
  --accent:#8a6a35;--soft:#fbfaf2;--bar:#f2f1e9;
  --head:#244b40;--txt:#4a4436;--sub:#8d8878;--nl-bg:#fdfbf3;--nl-bd:#e8e2d2;
  --act-bg:#e5efe4;--act-fg:#1b4235;--act-bd:#bcd4bc;
}
html[data-theme="light"]{
  --bg:#fbfaf7;--panel:#ffffff;--fg:#2b2b2b;--muted:#8b8377;--line:#e3ded2;
  --accent:#b07d3c;--soft:#faf6ee;--bar:#f5f2ea;
  --head:#244b40;--txt:#4a4436;--sub:#8d8878;--nl-bg:#fafaf7;--nl-bd:#e7e7e0;
  --act-bg:#e6efe7;--act-fg:#1e4d37;--act-bd:#c3dcc9;
}
html[data-theme="green"]{
  --bg:#cfe8d2;--panel:#eef7ef;--fg:#2f4237;--muted:#5d7c67;--line:#b9dcc0;
  --accent:#1e5c41;--soft:#f6fbf7;--bar:#c9e2cd;
  --head:#1e4d37;--txt:#3b5446;--sub:#5d7c67;--nl-bg:#f4fbf5;--nl-bd:#b4d8bd;
  --act-bg:#bfe3c6;--act-fg:#17422f;--act-bd:#95c8a1;
}

/* ── Aa 入口在顶栏（宿主 #aaBtn，位于下载按钮左侧），此处不再有悬浮方块 ── */

/* ── 面板本体：紧贴顶栏下沿、右对齐展开 ── */
#rdPanel{position:fixed;top:62px;right:8px;z-index:60;
  width:292px;max-width:calc(100vw - 16px);max-height:calc(100vh - 74px);
  overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
  background:var(--panel);border:1px solid var(--line);border-radius:12px;
  padding:12px 14px;box-shadow:0 10px 32px rgba(0,0,0,.28);
  display:grid;gap:9px;color:var(--txt);
  font:12px/1.45 -apple-system,"Segoe UI","Microsoft YaHei",sans-serif;}
#rdPanel[hidden]{display:none;}
#rdPanel,#rdPanel *{-webkit-tap-highlight-color:transparent;touch-action:manipulation;}
#rdPanel .rd-row{display:flex;gap:5px;align-items:center;justify-content:space-between;}
#rdPanel .rd-row>span{font-size:11.5px;color:var(--sub);flex:none;}
#rdPanel .rd-btns{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end;}
#rdPanel button,#rdPanel select,#rdPanel input{font-family:inherit;}
#rdPanel button{font:600 11.5px/1.4 -apple-system,"Segoe UI","Microsoft YaHei",sans-serif;
  color:var(--txt);background:var(--nl-bg);border:1px solid var(--nl-bd);
  border-radius:7px;padding:4px 8px;cursor:pointer;}
#rdPanel button:hover{border-color:var(--head);color:var(--head);}
#rdPanel button.on{color:var(--act-fg);background:var(--act-bg);border-color:var(--act-bd);}
#rdPanel .rd-sec{font:700 10.5px/1.4 -apple-system,"Segoe UI","Microsoft YaHei",sans-serif;
  color:var(--head);letter-spacing:.09em;border-top:1px solid var(--line);
  padding-top:9px;margin-top:2px;}
#rdPanel .rd-opt{display:flex;align-items:center;justify-content:space-between;gap:8px;
  font-size:11.5px;color:var(--txt);min-width:0;}
#rdPanel .rd-opt>span{flex:0 0 auto;color:var(--sub);}
#rdPanel .rd-opt select{flex:1 1 auto;min-width:0;max-width:168px;
  font-size:11.5px;padding:4px 6px;border-radius:7px;cursor:pointer;
  border:1px solid var(--nl-bd);background:var(--nl-bg);color:var(--txt);}
#rdPanel .rd-font-row select{max-width:168px;}
#rdPanel .rd-switch{position:relative;flex:none;width:42px;height:22px;padding:0;
  border-radius:999px;background:var(--nl-bg);border:1px solid var(--nl-bd);cursor:pointer;}
#rdPanel .rd-switch i{position:absolute;top:2px;left:2px;width:16px;height:16px;
  border-radius:50%;background:var(--sub);transition:transform .16s ease,background .16s ease;}
#rdPanel .rd-switch.on{background:#07c160;border-color:#07c160;}
#rdPanel .rd-switch.on i{transform:translateX(20px);background:#fff;}
#rdPanel .rd-note{margin:-3px 0 0;font-size:10.5px;line-height:1.55;color:var(--sub);}

/* ── 听书配置区（详情同款） ── */
.rd-speak-box{width:100%;border-top:1px solid var(--line);padding-top:10px;margin-top:2px;
  display:grid;gap:7px;box-sizing:border-box;}
.rd-sp-hd{font:700 12.5px/1.4 -apple-system,"Segoe UI","Microsoft YaHei",sans-serif;
  color:var(--head);display:flex;align-items:baseline;justify-content:space-between;gap:8px;}
.rd-sp-hd span{font:400 10.5px/1.4 inherit;color:var(--sub);}
.rd-sp-lab{display:block;font-size:11px;color:var(--sub);margin:2px 0 0;}
.rd-sp-lab>span{float:right;color:var(--txt);font-variant-numeric:tabular-nums;}
.rd-sp-voice{display:flex;align-items:flex-end;gap:6px;}
.rd-sp-voice>label{flex:1 1 auto;min-width:0;}
.rd-sp-try{flex:none;font-size:11px;padding:4px 8px;border-radius:7px;
  cursor:pointer;color:var(--txt);background:var(--nl-bg);border:1px solid var(--nl-bd);}
.rd-sp-try:hover{border-color:#07c160;color:#07c160;}
.rd-speak-box select{display:block;width:100%;margin-top:4px;box-sizing:border-box;
  font-size:11.5px;padding:4px 6px;border-radius:7px;
  border:1px solid var(--nl-bd);background:var(--nl-bg);color:var(--txt);}
.rd-sp-chips{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px;}
.rd-sp-chips button{flex:1 1 auto;min-width:50px;font-size:11px;padding:4px 5px;}
.rd-sp-chips button.on{border-color:#07c160;color:#07c160;}
.rd-sp-chips button.na{opacity:.42;border-style:dashed;}
.rd-speak-box input[type=range]{display:block;width:100%;margin:5px 0 0;accent-color:#07c160;}
.rd-sp-foot{display:flex;gap:6px;margin-top:2px;}
.rd-sp-foot button{flex:1;font-size:11px;padding:5px 4px;}
.rd-sp-hint{margin:0;font-size:10.5px;line-height:1.5;color:var(--sub);}
.rd-sp-hint[hidden]{display:none;}
.rd-sp-hint.warn{color:#d98b4a;}
.rd-sp-tip{margin:0;font-size:10.5px;line-height:1.55;color:var(--sub);}
.rd-sp-help{font-size:10.5px;line-height:1.55;color:var(--sub);}
.rd-sp-help summary{cursor:pointer;color:var(--head);font-weight:600;list-style:none;}
.rd-sp-help summary::-webkit-details-marker{display:none;}
.rd-sp-help summary::before{content:"▸ ";}
.rd-sp-help[open] summary::before{content:"▾ ";}
.rd-sp-help p{margin:5px 0 0;}

/* ── 底部听书控制条（详情同款） + 右下角耳机悬浮键（参考图一） ── */
#rdSpeakBar{position:fixed;left:50%;transform:translateX(-50%);z-index:65;
  bottom:calc(12px + env(safe-area-inset-bottom,0px));
  width:min(420px,calc(100vw - 24px));box-sizing:border-box;
  display:flex;align-items:center;gap:6px;padding:7px 9px;
  background:var(--panel);border:1px solid var(--line);border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.3);font-size:11.5px;color:var(--txt);}
#rdSpeakBar[hidden]{display:none;}
#rdSpeakBar,#rdSpeakBar *{-webkit-tap-highlight-color:transparent;}
.rd-sb-txt{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;
  text-overflow:ellipsis;color:var(--sub);}
#rdSpeakBar.rd-sb-warn .rd-sb-txt{white-space:normal;color:#d98b4a;}
#rdSpeakBar button{flex:none;width:32px;height:30px;box-sizing:border-box;padding:0;
  font-size:13px;color:var(--txt);background:var(--nl-bg);
  border:1px solid var(--nl-bd);border-radius:7px;cursor:pointer;}
#rdSpeakBar button:hover{border-color:var(--head);color:var(--head);}
#rdSpeakFab{position:fixed;right:14px;bottom:calc(64px + env(safe-area-inset-bottom,0px));
  z-index:62;width:42px;height:42px;border-radius:50%;padding:0;border:1px solid #e07a9a;
  background:#e87597;color:#fff;font-size:19px;line-height:1;cursor:pointer;
  box-shadow:0 5px 18px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;
  -webkit-tap-highlight-color:transparent;}
#rdSpeakFab.on{background:#c74f77;border-color:#c74f77;}
#rdSpeakFab:active{transform:scale(.92);}

/* ── 屏幕方向：浏览器不支持锁定时，整页旋转 90° 兜底 ── */
html.aa-rotate,html.aa-rotate body{overflow:hidden;}
html.aa-rotate body{position:fixed;top:0;left:100vw;width:100vh;height:100vw;
  margin:0;transform:rotate(90deg);transform-origin:0 0;}

@media(max-width:900px){
  #rdPanel{top:62px;max-height:calc(100vh - 70px);width:min(292px,calc(100vw - 16px));}
  #rdSpeakFab{right:12px;bottom:calc(58px + env(safe-area-inset-bottom,0px));}
}
