/* Everyday actions remain reachable on a small phone. Brand tokens come
   from index.html. No data, permissions or family colours are changed here. */
html{scroll-padding-bottom:100px}
.wrap{padding-bottom:calc(108px + env(safe-area-inset-bottom))}
button,input,select,textarea{min-height:44px}
input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}
button:disabled{cursor:wait;opacity:.6}
:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--acc);outline-offset:3px}
:where(#calhost,#glancewrap,.switch){scroll-margin-top:12px}
.d,.child .when,.child .loc{font-size:14px;line-height:1.55}
.brief div,.bl .val{font-size:14px;line-height:1.6}
.row,.sug{padding:16px}
.card,.rc{border-radius:16px}
h2,.grp{letter-spacing:.06em}
.card .row+.row{border-top-color:var(--line)}
label:not(.scopechoice):not(.tk label){font-size:12px}
.apphdr-row{gap:12px}
.cell{background:transparent;border:0;min-width:0;min-height:44px;font:inherit;font-weight:400;color:var(--ink)}
.cell .n{font-size:14px}
.calhd button,.chips button,.hsel button,.annot button{min-height:44px}
.drop,.xbtn,.aff,.evctl button{min-height:44px}
.drop{padding:8px 2px;text-underline-offset:3px}
.dz{display:block;width:100%;background:var(--s);color:var(--ink);font-weight:600;line-height:1.6;text-wrap:balance}
.dz:hover{border-color:var(--acc)}
.auth .card{padding:20px!important}
.auth-tag{font-size:24px}
.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-150%);z-index:100;background:var(--g);color:var(--ink);padding:12px}
.skip-link:focus{transform:none}
.appnav{position:fixed;inset:auto 0 0;z-index:20;display:flex;gap:4px;justify-content:center;padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:var(--g);border-top:1px solid var(--line);box-shadow:0 -5px 24px #201e1d0a}
.appnav[hidden]{display:none}
.appnav a{display:flex;align-items:center;justify-content:center;min-height:48px;flex:1 1 0;max-width:118px;min-width:0;padding:8px 3px;border-radius:10px;font-size:12px;font-weight:700;color:var(--mut);text-decoration:none;overflow-wrap:anywhere}
.appnav a:hover,.appnav a[aria-current=page]{background:var(--s);color:var(--acc)}
@media(prefers-color-scheme:dark){.err,.grp.od{color:#ffb6a6}}
@media(min-width:720px){.wrap{padding-top:32px}.row,.sug{padding:18px}.appnav a{font-size:14px}}
@media print{.appnav,.skip-link{display:none}.wrap{padding-bottom:0}}
