/* Restrained chapter tabs: tinted stock, crisp labels, selected page connection. */
.nv-rail .tab{--tab-stock:#e5ecdc;--tab-edge:#b7c9aa;--tab-ink:#294b3b}
.nv-rail .tab[data-page=self],.nv-rail .tab[data-page=library]{--tab-stock:#f1dce6;--tab-edge:#d3b5c5;--tab-ink:#664b5b}
.nv-rail .tab[data-page=week],.nv-rail .tab[data-page=food]{--tab-stock:#dfeaC0;--tab-edge:#b2c78b;--tab-ink:#385330}
.nv-rail .tab .j39-tab-label{line-height:1.35;min-width:0}
.nv-rail .tab:focus-visible,.nav-bottom button:focus-visible{outline:3px solid #be829f;outline-offset:3px}
html[data-skin=journal] .nv-rail .tab{background:var(--tab-stock);color:var(--tab-ink);border-color:var(--tab-edge);font-size:14px;font-weight:500}
html[data-skin=journal] .nv-rail .tab.active{background:#fffefa;color:#203e30;border-color:#b8c8ac;font-weight:650}
.j35-self .self-tabs{position:relative;display:flex;flex-wrap:wrap;gap:5px;padding:6px;background:#e8eddf80;border:1px solid #d7dfce;border-radius:14px;margin-bottom:24px;overflow:visible}
.j35-self .self-tab{flex:0 1 auto;min-height:46px;border:1px solid transparent;border-radius:9px;background:transparent;padding:10px 13px;font-size:14px;line-height:1.3;gap:8px;white-space:nowrap;color:#536449;transition:background .18s,box-shadow .18s}
.j35-self .self-tab .j32-icon{width:19px;height:19px;opacity:.7}
.j35-self .self-tab.active{background:#fffefa;border-color:#c5d2b9;color:#254a38;box-shadow:0 2px 5px #28432b0d,inset 0 -2px #315b4c}
.j35-self .self-tab.active .j32-icon{filter:none;opacity:1}
@media(min-width:721px){
 html[data-skin=journal] .nv-shell{display:flex;flex-direction:column;max-width:1510px}
 html[data-skin=journal] .nv-rail{position:relative;top:auto;height:auto;max-height:none;overflow:visible;padding:0 12px 0 42px;z-index:1}
 html[data-skin=journal] .nv-rail nav{display:flex;flex-direction:row;align-items:flex-end;gap:7px;overflow-x:auto;overflow-y:hidden;padding:12px 4px 0;scrollbar-width:thin;scrollbar-color:#b5c6a4 transparent;scroll-snap-type:x proximity}
 html[data-skin=journal] .nv-rail .tab{position:relative;flex:0 0 auto;width:auto;min-height:56px;flex-direction:row;gap:10px;margin:0;padding:12px 18px;border:1px solid var(--tab-edge);border-bottom:0;border-radius:17px 17px 0 0;white-space:nowrap;background:linear-gradient(180deg,#ffffff55,transparent 65%),var(--tab-stock);box-shadow:inset 0 1px #ffffffc0,inset 0 -7px 10px -9px #26412b70,0 -2px 5px #29473008;scroll-snap-align:center;transition:background .18s,padding .18s,box-shadow .18s}
 html[data-skin=journal] .nv-rail .tab.active{min-height:65px;padding:16px 20px 18px;background:#fffefa;color:#203e30;border-color:#b8c8ac;box-shadow:inset 0 3px #315b4c,0 -3px 12px #2947300c}
 html[data-skin=journal] .nv-rail .tab .ni{display:flex;width:29px;height:29px;align-items:center;justify-content:center;border-radius:9px;background:#ffffff48;flex-shrink:0}
 html[data-skin=journal] .nv-rail .tab.active .ni{background:#e6efda}
 html[data-skin=journal] .nv-rail .tab[data-page=self].active .ni{background:#f2dfe9}
 html[data-skin=journal] .nv-rail .tab .j32-icon{width:19px;height:19px;filter:none;opacity:.9}
 html[data-skin=journal] .nv-content{min-width:0}
}
@media(min-width:721px) and (max-width:1099px){
 html[data-skin=journal] .nv-rail{padding-left:28px}
 html[data-skin=journal] .nv-rail .tab{padding:11px 14px;min-height:53px}
 html[data-skin=journal] .nv-rail .tab.active{padding:15px 16px 17px;min-height:62px}
}
@media(min-width:1100px){
 html[data-skin=navigator] .nv-rail .tab{font-size:14px;flex-direction:row;gap:12px;min-height:48px;border-radius:10px}
 html[data-skin=navigator] .nv-rail .tab.active{background:#dce9be;color:#203e30;border-color:#dce9be;box-shadow:none}
 html[data-skin=navigator] .nv-rail .tab.active .j32-icon{filter:none}
}
@media(max-width:720px){
 html[data-skin=navigator] .nv-rail{display:none}
 html[data-skin=journal] .nv-rail{display:block;position:relative;top:auto;height:auto;max-height:none;min-width:0;width:100%;box-sizing:border-box;overflow:visible;padding:0 3px 0 15px}
 html[data-skin=journal] .nv-rail nav{display:flex;flex-direction:row;align-items:flex-end;gap:6px;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:9px 3px 0;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain}
 html[data-skin=journal] .nv-rail .tab{flex:0 0 auto;display:flex;flex-direction:row;align-items:center;gap:8px;width:auto;min-height:49px;margin:0;padding:11px 14px;border:1px solid var(--tab-edge);border-bottom:0;border-radius:13px 13px 0 0;background:linear-gradient(180deg,#ffffff55,transparent 70%),var(--tab-stock);color:var(--tab-ink);font-size:14px;white-space:nowrap;scroll-snap-align:center;box-shadow:inset 0 1px #ffffffb0,inset 0 -6px 10px -9px #26412b70}
 html[data-skin=journal] .nv-rail .tab.active{min-height:57px;padding:13px 15px 16px;background:#fffefa;color:#203e30;box-shadow:inset 0 3px #315b4c;font-weight:650}
 html[data-skin=journal] .nv-rail .ni{display:flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:8px;background:#ffffff50;flex-shrink:0}
 html[data-skin=journal] .nv-rail .tab.active .ni{background:#e6efda}
 html[data-skin=journal] .nv-rail .tab[data-page=self].active .ni{background:#f2dfe9}
 html[data-skin=journal] .nv-rail .tab .j32-icon{width:18px;height:18px;filter:none;opacity:1}
 html[data-skin=journal] .nv-shell,html[data-skin=navigator] .nv-shell{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
 .nav-bottom{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:8px;right:8px;bottom:0;gap:2px;padding:8px 5px calc(8px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;background:#203b30f7;border:1px solid #66846d55;box-shadow:0 -6px 28px #203e3020;backdrop-filter:blur(18px)}
 .nav-bottom button{position:relative;min-width:0;min-height:57px;padding:6px 1px;gap:5px;font-size:12px;line-height:1.25;color:#d0dcc7;border-radius:12px;transition:background .18s,color .18s}
 .nav-bottom button.active{background:#dfebc3;color:#213d2d;box-shadow:inset 0 1px #ffffff80}
 .nav-bottom button[data-nav=self].active{background:#efdbe5;color:#4e3543}
 .nav-bottom .j32-icon{width:23px;height:23px;filter:brightness(0) invert(.84)}
 .nav-bottom .active .j32-icon{filter:none}
 .j35-self .self-tabs{display:flex;flex-wrap:nowrap;max-width:100%;overflow-x:auto;overflow-y:hidden;gap:5px;padding:5px 5px 8px;border-radius:12px;scrollbar-width:thin;scrollbar-color:#b4c49c transparent;scroll-padding-inline:5px;overscroll-behavior-x:contain}
 .j35-self .self-tab{flex:0 0 auto;min-height:45px;padding:10px 12px;font-size:14px;white-space:nowrap}
 .j35-self .self-tab .j32-icon{display:block;width:18px;height:18px}
}
@media(hover:hover){.j35-self .self-tab:hover{background:#fffefa}.nv-rail .tab:hover{filter:brightness(1.025)}html[data-skin=journal] .nv-rail .tab:hover{color:#203e30}}
@media(prefers-reduced-motion:reduce){.nv-rail .tab,.j35-self .self-tab,.nav-bottom button{transition:none!important}}

/* The journal uses chapter tabs; the navigator uses the mobile dock. */
html[data-skin=journal] .nav-bottom{display:none!important}
@media(max-width:720px){html[data-skin=journal] .nv-shell{padding-bottom:calc(28px + env(safe-area-inset-bottom))}}
