/* MORI University textbook pages (preview build). Plain, large, readable type; works at 390px. */
:root{color-scheme:light;--ink:#1f2f2c;--paper:#fffdf6;--line:#cdc2a4;--accent:#17625c;--soft:#f1ecdc}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:20px/1.65 Georgia,"DejaVu Serif","Noto Serif",serif;overflow-wrap:break-word}
a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
a:focus-visible,summary:focus-visible{outline:3px solid #b57625;outline-offset:3px}
.tb-wrap{max-width:46rem;margin:0 auto;padding:16px 20px 40px}
.tb-nav{font:16px/1.5 system-ui,sans-serif;display:flex;flex-wrap:wrap;gap:6px 18px;padding:10px 0;border-bottom:1px solid var(--line)}
.tb-head h1{font-size:clamp(30px,6.5vw,44px);line-height:1.15;margin:22px 0 6px}
.tb-head .tb-sub{font-size:22px;margin:0 0 6px}
.tb-meta{font:16px/1.5 system-ui,sans-serif;color:#4a5652;margin:6px 0 14px}
.tb-license{font:17px/1.55 system-ui,sans-serif;background:var(--soft);border:1px solid var(--line);border-left:5px solid var(--accent);padding:12px 16px;margin:16px 0}
.tb-license p{margin:0 0 6px}.tb-license p:last-child{margin:0}
.tb-dl{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0;font:600 17px/1.3 system-ui,sans-serif}
.tb-dl a{display:inline-block;padding:12px 16px;border:2px solid var(--accent);border-radius:8px;text-decoration:none;background:#fff;min-height:48px}
.tb-dl small{font-weight:400;color:#4a5652}
details.tb-toc{border:1px solid var(--line);border-radius:8px;padding:10px 16px;margin:18px 0;background:#fff;font:18px/1.5 system-ui,sans-serif}
details.tb-toc summary{cursor:pointer;font-weight:700;min-height:32px}
details.tb-toc ul{padding-left:20px;margin:8px 0}details.tb-toc li{margin:6px 0}
main h1{font-size:clamp(28px,6vw,38px);line-height:1.2;margin:2.2em 0 .5em;padding-top:.6em;border-top:3px double var(--line)}
main h2{font-size:clamp(24px,5vw,30px);line-height:1.25;margin:1.8em 0 .4em}
main h3{font-size:clamp(21px,4.4vw,25px);line-height:1.3;margin:1.5em 0 .4em}
main h4{font-size:21px}
main p,main li{max-width:40em}
main hr{border:0;border-top:1px solid var(--line);margin:2em 0}
main blockquote{margin:1em 0;padding:8px 18px;border-left:4px solid #b68b46;background:var(--soft)}
main figure{margin:1.5em 0;text-align:center}
main img{max-width:100%;height:auto;background:#fff;border:1px solid var(--line)}
main figcaption{font:16px/1.5 system-ui,sans-serif;color:#3f4a47;text-align:left;margin-top:8px}
.tb-table{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1em 0;border:1px solid var(--line)}
main table{border-collapse:collapse;font:17px/1.45 system-ui,sans-serif;min-width:100%}
main th,main td{border:1px solid #ddd3b8;padding:8px 10px;text-align:left;vertical-align:top}
main th{background:var(--soft)}
main code{font-family:"DejaVu Sans Mono",ui-monospace,monospace;font-size:.88em;background:var(--soft);padding:1px 4px;border-radius:3px;overflow-wrap:anywhere}
main pre{overflow-x:auto;background:var(--soft);padding:12px;font-size:16px}
math{font-size:1.05em}
footer.tb-foot{font:16px/1.55 system-ui,sans-serif;border-top:3px double var(--line);margin-top:3em;padding-top:12px}
.tb-list{list-style:none;padding:0}.tb-list li{border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin:14px 0;background:#fff}
.tb-list h2{font-size:24px;margin:0 0 4px;line-height:1.25}.tb-list p{margin:6px 0;font:17px/1.5 system-ui,sans-serif}
@media(max-width:600px){body{font-size:19px}.tb-wrap{padding:12px 16px 32px}main table{font-size:16px}}
@media print{.tb-nav,.tb-dl,#mv-preview-banner{display:none}}
