/* Fairbook base — v2 (rebrand R2). Loads after tokens.css.
   Keeps the load-bearing .page/.scroll SPA scaffold untouched in behaviour. */
*{margin:0;padding:0;box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
html,body{height:100%;font-family:var(--sans);background:var(--fog);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;}
.page{display:none;height:100%;flex-direction:column;background:var(--fog);overflow:hidden;}
.page.active{display:flex;}
@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.page.active{animation:fadeIn .3s ease both;}
.scroll{flex:1;overflow-y:auto;}
:focus-visible{outline:2.5px solid var(--fairway);outline-offset:2px;border-radius:4px;}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;}}
