@import url('/brand.css');
html,body { font-family:var(--font-body); }
#app { max-width:460px; }
.header-title { font-weight:650; letter-spacing:-.7px; }
.card-title,.sleep-manual-title,.guest-access-name { font-weight:600; }
.card,.timeline-item,.stat-pill { box-shadow:none; }
:root[data-theme="light"] .card { box-shadow:0 5px 18px #24395205; }
.card { border-radius:22px; }
.section-label,.input-label { font-weight:550; letter-spacing:1px; }
.input-label { display:block; }
input[type="text"],input[type="password"],select { font-weight:500; }
.btn-save { background:#4778d4; box-shadow:0 5px 14px #3869ce18; font-weight:600; font-size:1rem; }
.btn-save:hover { background:#3869ce; }
.sleep-quick-btn,.sleep-clear-end { font-family:var(--font-body); font-weight:550; }
.guest-access-form { align-items:start; }
.guest-access-form input,.guest-access-form select { min-height:52px; font-size:16px; text-align:left; }
.guest-access-form input::placeholder { font-size:12px; }
.guest-access-revoke { min-height:44px; }
.btn:focus-visible,a:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
