/* learn.dky.tw 站級暖色學習介面：既有靜態頁共用，勿複製成第二套主題。 */
:root { --warm-bg:#fefaf6; --warm-surface:#fef9f4; --warm-surface-strong:#f8efe5; --warm-border:#e6d5c0; --warm-text:#3b2a1a; --warm-muted:#8b6f50; --warm-accent:#a0522d; --warm-accent-dark:#71391f; --warm-code:#faf4ed; --warm-success:#5f7b50; --warm-warning:#9a671e; --warm-danger:#a6463b; }
.lesson-pager { display:flex; justify-content:space-between; align-items:center; gap:.8rem; margin:1rem 0 1.5rem; padding:.65rem .85rem; background:#fef9f4!important; border:1px solid var(--warm-border); border-radius:10px; font-size:.84rem; }
.lesson-pager a { color:var(--warm-accent-dark)!important; text-decoration:none; font-weight:600; padding:.25rem .45rem; border-radius:6px; }
.lesson-pager a:hover { background:var(--warm-surface-strong); color:var(--warm-accent)!important; }
.lesson-pager__pos { color:var(--warm-muted); font-size:.78rem; text-align:center; flex:1; }
* { scrollbar-color:var(--warm-border) var(--warm-bg); }
html { scroll-behavior:smooth; background:var(--warm-bg); }
body { background:var(--warm-bg)!important; color:var(--warm-text)!important; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans TC","PingFang TC",sans-serif!important; line-height:1.8; padding-bottom:5rem!important; }
body.has-study-sidebar { margin-left:264px!important; max-width:980px; }
a { color:var(--warm-accent)!important; text-decoration-thickness:.08em; text-underline-offset:.16em; }
a:hover { color:var(--warm-accent-dark)!important; }
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible { outline:3px solid #d79567!important; outline-offset:3px; }
h1,h2,h3,h4,h5,h6,strong { color:var(--warm-text)!important; }
h1,header h1 { color:var(--warm-accent-dark)!important; line-height:1.35; }
h2,h3,h4 { color:var(--warm-accent-dark)!important; border-color:var(--warm-border)!important; }
header { border-color:var(--warm-border)!important; }.meta,.subtitle,.authors,.muted { color:var(--warm-muted)!important; }
.card,.course-card,.resource-card,.paper-card,.lesson-card,.book-banner,.section-nav,.callout,.ref-box,.scenario-box,.pros-cons>div,.key-quote,.hermes-insight,.soon { background:var(--warm-surface)!important; border-color:var(--warm-border)!important; color:var(--warm-text)!important; box-shadow:none!important; }
.course-card:hover,.resource-card:hover,.paper-card:hover,.lesson-card:hover { border-color:var(--warm-accent)!important; }
.course-card h3,.resource-card h4,.paper-card h3,.lesson-card h4,.book-banner h3 { color:var(--warm-accent-dark)!important; }
.tag,.tags .tag,.tag-cloud .tag,.colab-badge { background:var(--warm-surface-strong)!important; border-color:var(--warm-border)!important; color:var(--warm-accent-dark)!important; }
.status,.difficulty,.pros h4,.one-liner,.oneliner { color:var(--warm-success)!important; }.one-liner,.oneliner { border-color:var(--warm-success)!important; }
blockquote { background:#fff6e6!important; border-color:var(--warm-warning)!important; color:var(--warm-text)!important; }
pre,code { background:var(--warm-code)!important; color:#513621!important; border-color:var(--warm-border)!important; }pre { border:1px solid var(--warm-border)!important; }.hljs { background:var(--warm-code)!important; color:#513621!important; }
th { background:var(--warm-surface-strong)!important; color:var(--warm-accent-dark)!important; border-color:var(--warm-border)!important; }td { border-color:var(--warm-border)!important; color:var(--warm-text)!important; }tr:nth-child(even),.comparison-table tr:nth-child(even) { background:#fffdf9!important; }footer { border-color:var(--warm-border)!important; color:var(--warm-muted)!important; }
.study-utility { display:flex; flex-wrap:wrap; gap:.55rem; align-items:center; margin:1rem 0 1.35rem; padding:.7rem .8rem; background:var(--warm-surface)!important; border:1px solid var(--warm-border); border-radius:10px; color:var(--warm-muted); font-size:.85rem; }
.study-utility button,.study-utility a,.study-menu-toggle,.study-shortcuts-toggle { appearance:none; border:1px solid var(--warm-border); border-radius:7px; background:#fffdf9; color:var(--warm-accent-dark)!important; padding:.42rem .65rem; cursor:pointer; font:inherit; text-decoration:none; }
.study-utility button:hover,.study-menu-toggle:hover,.study-shortcuts-toggle:hover { border-color:var(--warm-accent); background:var(--warm-surface-strong); }.study-utility label { display:flex; align-items:center; gap:.35rem; cursor:pointer; }.study-utility input { accent-color:var(--warm-accent); width:1.05rem; height:1.05rem; }.study-reading-progress { flex:1 1 140px; min-width:120px; height:7px; border-radius:999px; background:var(--warm-border); overflow:hidden; }.study-reading-progress>span { display:block; height:100%; background:var(--warm-accent); width:0; transition:width .15s linear; }
.study-toc { position:fixed; right:1.25rem; top:1.2rem; width:210px; max-height:calc(100vh - 2.4rem); overflow:auto; padding:.8rem; background:rgba(254,249,244,.97); border:1px solid var(--warm-border); border-radius:10px; z-index:40; }.study-toc h2 { font-size:.85rem!important; border:0!important; margin:0 0 .45rem!important; padding:0!important; }.study-toc a { display:block; padding:.25rem .3rem; font-size:.78rem; line-height:1.45; border-left:2px solid transparent; text-decoration:none; }.study-toc a:hover,.study-toc a.active { border-left-color:var(--warm-accent); background:var(--warm-surface-strong); }.study-toc a.level-3 { margin-left:.55rem; font-size:.74rem; }
.study-sidebar { width:264px; position:fixed; inset:0 auto 0 0; z-index:100; display:flex; flex-direction:column; overflow:hidden; background:var(--warm-surface)!important; border-right:1px solid var(--warm-border); color:var(--warm-text); }.study-sidebar__brand { display:block; padding:1rem; border-bottom:1px solid var(--warm-border); color:var(--warm-accent-dark)!important; text-decoration:none; font-weight:750; font-size:1.05rem; }.study-sidebar__brand small { display:block; margin-top:.15rem; color:var(--warm-muted); font-size:.7rem; font-weight:400; }.study-sidebar__scroll { overflow:auto; flex:1; padding:.55rem 0 .9rem; }.study-sidebar__section { margin:.55rem 0 .2rem; padding:.25rem 1rem; color:var(--warm-muted); font-size:.7rem; font-weight:700; letter-spacing:.04em; }.study-sidebar a.study-nav-link { display:block; padding:.34rem .8rem .34rem 1rem; font-size:.79rem; line-height:1.35; color:var(--warm-text)!important; text-decoration:none; border-left:3px solid transparent; }.study-sidebar a.study-nav-link:hover,.study-sidebar a.study-nav-link[aria-current="page"] { border-left-color:var(--warm-accent); background:var(--warm-surface-strong); color:var(--warm-accent-dark)!important; }.study-sidebar a.study-nav-link[aria-current="page"] { font-weight:700; }.study-sidebar__footer { padding:.7rem 1rem; border-top:1px solid var(--warm-border); display:flex; flex-wrap:wrap; gap:.7rem; font-size:.75rem; }
.study-menu-toggle { position:fixed; left:1rem; bottom:1rem; z-index:120; display:none; }.study-shortcuts-toggle { position:fixed; right:1rem; bottom:1rem; z-index:110; }.study-shortcuts { position:fixed; right:1rem; bottom:4.1rem; z-index:120; width:260px; padding:.9rem 1rem; background:var(--warm-surface); border:1px solid var(--warm-border); border-radius:10px; box-shadow:0 8px 28px rgba(59,42,26,.12); color:var(--warm-text); font-size:.82rem; }.study-shortcuts[hidden],.study-search[hidden] { display:none; }.study-shortcuts h2 { margin:0 0 .4rem!important; padding:0!important; border:0!important; font-size:1rem!important; }.study-shortcuts kbd { padding:.08rem .3rem; background:#fffdf9; border:1px solid var(--warm-border); border-radius:4px; color:var(--warm-accent-dark); }.study-search { position:fixed; inset:0; z-index:200; display:grid; place-items:start center; padding-top:10vh; background:rgba(59,42,26,.28); }.study-search__box { width:min(620px,calc(100vw - 2rem)); max-height:72vh; overflow:auto; padding:1rem; border-radius:12px; border:1px solid var(--warm-border); background:var(--warm-surface); box-shadow:0 14px 50px rgba(59,42,26,.22); }.study-search input { width:100%; padding:.75rem .85rem; font:inherit; color:var(--warm-text); border:1px solid var(--warm-border); border-radius:8px; background:#fffdf9; }.study-search a { display:block; margin-top:.45rem; padding:.55rem .65rem; border-radius:7px; text-decoration:none; }.study-search a:hover { background:var(--warm-surface-strong); }
@media (max-width:1240px) {.study-toc { display:none; }}
@media (max-width:768px) { body.has-study-sidebar { margin-left:0!important; padding:1.1rem!important; }.study-sidebar { transform:translateX(-105%); width:min(86vw,310px); box-shadow:8px 0 24px rgba(59,42,26,.16); transition:transform .18s ease; }.study-sidebar.is-open { transform:translateX(0); }.study-menu-toggle { display:block; }.study-shortcuts-toggle { right:.75rem; bottom:.75rem; }.study-shortcuts { right:.75rem; bottom:3.75rem; width:min(280px,calc(100vw - 1.5rem)); }.study-utility { margin-top:3.3rem; }}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }*,*::before,*::after { transition-duration:.01ms!important; animation-duration:.01ms!important; }}
