/* 預設不更動原站主題；只在使用者啟用時調整閱讀。 */
:root[data-friendly-size="115"]{--friendly-size:1.15rem}:root[data-friendly-size="130"]{--friendly-size:1.3rem}:root[data-friendly-size="150"]{--friendly-size:1.5rem}
:root:not([data-friendly-size="100"]) :is(main,.friendly-dialog) :is(p,li,td,dd,label,summary){font-size:var(--friendly-size)!important}
:root[data-friendly-line="wide"] :is(main,.friendly-dialog) :is(p,li,td,dd,label,summary){line-height:2!important}:root[data-friendly-line="wider"] :is(main,.friendly-dialog) :is(p,li,td,dd,label,summary){line-height:2.3!important}
:root[data-friendly-spacing="wide"] :is(main,.friendly-dialog) :is(p,li,td,dd,label,summary){letter-spacing:.08em!important}
.friendly-open,.friendly-dialog button,.friendly-dialog select{font:inherit;min-height:44px;border:1px solid #718373;background:#fffdf7;color:#294733;border-radius:10px;padding:9px 12px;cursor:pointer}
.friendly-open{position:fixed;right:14px;bottom:24px;z-index:1500;white-space:nowrap;font-size:14px;box-shadow:0 4px 16px #0002}
:root[data-site-appearance="dark"] :is(.friendly-open,.friendly-dialog){background:#21372b;color:#e4eee7;border-color:#8ba78e}:root[data-site-appearance="dark"] .friendly-dialog :is(button,select){background:#2c4434;color:#e4eee7;border-color:#8ba78e}
.friendly-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(520px,calc(100vw - 28px));max-height:85dvh;height:fit-content;overflow:auto;padding:24px;border:1px solid #718373;border-radius:20px;background:#fffdf7;color:#294733;overscroll-behavior:contain}.friendly-dialog::backdrop{background:#142b2388}.friendly-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.friendly-head h2{margin:0;font:600 21px/1.5 system-ui;color:inherit}.friendly-dialog p{font:14px/1.85 system-ui;color:inherit}.friendly-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.friendly-field{display:grid;gap:7px;min-width:0}.friendly-field label{font:600 14px/1.6 system-ui;color:inherit}.friendly-field select{width:100%;min-width:0}.friendly-status{min-height:26px}.friendly-reset{width:100%}.friendly-open:focus-visible,.friendly-dialog :is(button,select):focus-visible{outline:3px solid #b16439;outline-offset:4px}
:root[data-friendly-contrast="high"] :is(body,main,.card,.panel,.spot-card,.market-card,.detail,.friendly-dialog){background:#101c14!important;color:#fff!important;border-color:#dce9ce!important}
:root[data-friendly-contrast="high"] :is(main,.friendly-dialog) :is(p,li,td,dd,label,summary,h1,h2,h3,h4,small,span){color:inherit!important}
:root[data-friendly-contrast="high"] :is(main,.friendly-dialog) a{color:#fff0a6!important;text-decoration:underline;text-decoration-thickness:2px}
:root[data-friendly-contrast="high"] :is(main,.friendly-dialog) :is(button,input,select,textarea){background:#101c14!important;color:#fff!important;border-color:#dce9ce!important}
:root[data-friendly-motion="reduce"] *,:root[data-friendly-motion="reduce"] *::before,:root[data-friendly-motion="reduce"] *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
@media(max-width:760px){.friendly-open{bottom:calc(90px + env(safe-area-inset-bottom));right:12px;font-size:13px}}
@media(max-width:420px){.friendly-fields{grid-template-columns:1fr}.friendly-dialog{padding:20px}.friendly-head h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){.friendly-open,.friendly-dialog{animation:none!important;transition:none!important}}
@media print{.friendly-open,.friendly-dialog{display:none!important}}

/* 避開原主題浮動按鈕；窄螢幕置於同一控制列的左側。 */
.friendly-open{right:132px;max-width:calc(100vw - 160px)}
@media(max-width:760px){.friendly-open{bottom:calc(82px + env(safe-area-inset-bottom));right:122px;max-width:calc(100vw - 146px)}}
:root[data-friendly-contrast="high"] main :is(section,article,aside,.module,.resource,.scenario-side,.help-box,.promise,.quote,.beta-grid>article,.lesson-card,.tool-card){background:#101c14!important;color:#fff!important;border-color:#dce9ce!important}
:root[data-friendly-contrast="high"] main :is(th,td){background:#101c14!important;color:#fff!important;border-color:#dce9ce!important}

:root[data-friendly-contrast="high"] main :is(.btn-primary,.primary,.button-primary){background:#101c14!important;color:#fff!important;border-color:#dce9ce!important}
