/* ToiletFitGuide: mobile-first, system fonts, no frameworks. Contrast checked to WCAG AA (4.5:1) by tools/sitekit/contrast_check.py with src/contrast_pairs.txt */
:root{--ink:#16212b;--muted:#4f5d69;--line:#d7e0e8;--bg:#fff;--soft:#f3f6f9;--brand:#0d4448;--link:#0a5f8a;--link-d:#07425f;--box:#ebf6f5;--accent:#9fe3dc}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--link);text-underline-offset:2px}
a:hover{color:var(--link-d)}
.wrap{max-width:1100px;margin:0 auto;padding:0 24px}
@media (max-width:600px){.wrap{padding:0 16px}}
.site-header{background:var(--brand);color:#fff}
.site-header .wrap{padding-top:8px;padding-bottom:6px}
.brand{display:inline-flex;align-items:center;min-height:44px;gap:8px;color:#fff;text-decoration:none;font-weight:800;font-size:1.2rem}
.brand:hover{color:#fff}.brand b{color:var(--accent)}
nav{display:flex;flex-wrap:wrap;gap:6px;padding:2px 0 6px}
nav a{flex:none;display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:none;font-size:15px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.14)}
nav a:hover,nav a[aria-current]{background:#fff;color:var(--brand)}
main{padding-top:2px;padding-bottom:18px}
h1{font-size:1.55rem;line-height:1.2;margin:16px 0 4px}
h2{font-size:1.25rem;line-height:1.3;margin:30px 0 10px;padding-top:6px;border-top:1px solid var(--line)}
h3{font-size:1.05rem;margin:20px 0 6px}
p,ul,ol{margin:0 0 13px}
li{margin-bottom:5px}
.meta{font-size:15px;line-height:1.5;color:var(--muted)}
.updated{margin:0 0 8px}
.big{background:var(--box);border:1px solid #bfe0dc;border-left:6px solid var(--link);border-radius:12px;padding:12px 15px;margin:8px 0 16px}
.big .lede{color:var(--brand);font-size:1.12rem;line-height:1.4;font-weight:700;margin:0 0 6px}
.big p{margin:0 0 6px}.big .meta{margin:6px 0 0}
.tablewrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:10px 0;border:1px solid var(--line);border-radius:10px}
table{border-collapse:separate;border-spacing:0;width:100%;font-size:15px;line-height:1.45}
.tablewrap.wide table{min-width:540px}
.pn{white-space:nowrap}
th,td{padding:8px 10px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
tr:last-child td{border-bottom:0}
th{background:var(--soft);font-weight:700}
.tablewrap th:first-child,.tablewrap td:first-child{position:sticky;left:0;background:#fff;box-shadow:1px 0 0 var(--line)}
.tablewrap th:first-child{background:var(--soft)}
ol.src li{word-break:break-word;font-size:15px}
.related{background:var(--soft);border-radius:10px;padding:10px 14px}
.site-footer{background:var(--soft);border-top:1px solid var(--line);margin-top:26px;color:var(--muted);font-size:15px}
.site-footer .wrap{padding-top:16px;padding-bottom:26px}
.site-footer strong{color:var(--ink)}
.site-footer a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px}
.related a{display:inline-block;padding:10px 0}
.tablewrap td a{display:inline-block;padding:12px 0;margin:-12px 0}
main>p:first-child>a:only-child{display:inline-block;padding:10px 0}
@media (min-width:760px){h1{font-size:1.95rem}}
