body.home .home-friends { box-sizing:border-box; width:min(1120px,calc(100% - 80px)); margin:12px auto 4px; padding:8px 0 7px; color:var(--t-fg); }
.home-friends header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.home-friends h2 { font-size:16px; margin:0; letter-spacing:-.025em; }
.home-friend-count { color:var(--t-fg2); font-weight:500; }
.home-friends header a { padding:4px 8px; border-radius:7px; font-size:11px; font-weight:600; color:var(--t-fg2); text-decoration:none; }
.home-friends header a:hover { background:color-mix(in srgb,var(--t-fg) 7%,transparent); color:var(--t-fg); }
.home-friend-list { display:flex; gap:14px; overflow-x:auto; padding:2px 1px 5px; scrollbar-width:thin; }
.home-friend { flex:0 0 86px; width:86px; display:flex; flex-direction:column; align-items:center; gap:4px; padding:3px; border-radius:11px; text-decoration:none; color:var(--t-fg); text-align:center; text-shadow:0 1px 8px var(--t-bg); transition:background .16s ease,transform .16s ease; }
.home-friend-avatar { position:relative; display:grid; place-items:center; width:64px; height:64px; border-radius:50%; background:color-mix(in srgb,var(--t-fg) 7%,var(--t-bg2,#20242b)); border:2px solid color-mix(in srgb,var(--t-fg) 12%,transparent); box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--t-bg) 88%,transparent); font-size:23px; font-weight:600; }
.home-friend-avatar img { position:absolute!important; inset:2px!important; width:calc(100% - 4px)!important; height:calc(100% - 4px)!important; max-width:none!important; max-height:none!important; margin:0!important; border:0!important; border-radius:50%!important; object-fit:cover!important; clip-path:circle(50%)!important; }
.home-friend.online .home-friend-avatar::after { content:''; position:absolute; right:0; bottom:1px; width:11px; height:11px; border-radius:50%; background:#39b978; border:3px solid var(--t-bg2,#20242b); }
.home-friend strong { font-size:11px; line-height:1.25; max-width:82px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.home-friend small { display:flex; align-items:center; justify-content:center; gap:3px; min-height:13px; font-size:9px; line-height:1.25; color:var(--t-fg2); max-width:84px; white-space:nowrap; overflow:hidden; }
.home-friend small i { color:var(--t-ac); font-size:7px; font-style:normal; }
.home-friend small span { overflow:hidden; text-overflow:ellipsis; }
.home-friend:hover { background:color-mix(in srgb,var(--t-fg) 6%,transparent); transform:translateY(-2px); }
.home-friend:hover .home-friend-avatar { border-color:color-mix(in srgb,var(--t-ac) 65%,var(--t-bd)); }
.home-friends-empty { display:flex; align-items:center; gap:12px; min-height:68px; padding:2px 0; }
.home-friend-add { display:grid; flex:none; place-items:center; width:58px; height:58px; border-radius:50%; background:color-mix(in srgb,var(--t-fg) 7%,var(--t-bg2)); border:2px dashed color-mix(in srgb,var(--t-fg2) 55%,transparent); color:var(--t-fg); text-decoration:none; font-size:27px; }
.home-friend-add:hover { border-color:var(--t-ac); background:color-mix(in srgb,var(--t-ac) 11%,var(--t-bg2)); }
.home-friends-empty div { display:flex; flex-direction:column; gap:4px; }
.home-friends-empty strong { font-size:13px; }
.home-friends-empty small { color:var(--t-fg2); font-size:11px; }
body.home #_agree_footer { font-size:10px!important; line-height:1.6!important; color:var(--t-fg2,#a0a7b4)!important; opacity:.65; padding:14px 16px!important; max-width:760px; margin:25px auto 10px; text-align:center; }
body.home #_agree_footer { position:static!important; width:auto!important; background:none!important; z-index:auto!important; border:0!important; }
body.home #_agree_footer a { color:inherit!important; text-decoration:none; }
body.home #_agree_footer a:hover { text-decoration:underline; }
body.home .home-dayboard-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:14px; }
body.home .home-day-card { min-height:0!important; }
.home-schedule-button { grid-column:1/-1; display:flex; align-items:center; flex-wrap:wrap; gap:7px; padding:16px 20px; border:1px solid var(--t-bd,#ffffff25); border-radius:14px; background:color-mix(in srgb,var(--t-bg2,#20242b) 88%,transparent); color:var(--t-fg); text-decoration:none; font-size:14px; font-weight:700; }
.home-schedule-button span { color:var(--t-fg2); font-size:12px; font-weight:400; }
.home-schedule-button b { margin-left:auto; color:var(--t-ac); }
body.home .hud-container { max-width:1240px; }
body.home .hud-title { font-size:clamp(23px,3vw,36px)!important; }
body.home .hud-panel { border-radius:16px; }
html body.home .home-features .home-feature { box-sizing:border-box; min-height:185px!important; padding:20px!important; border-radius:18px!important; background:linear-gradient(125deg,color-mix(in srgb,var(--t-ac,#9ab4c3) 18%,var(--t-bg2,#20242b)),var(--t-bg2,#20242b))!important; color:var(--t-fg)!important; }
html body.home .home-features .home-feature h2 { font-size:32px!important; margin:14px 0!important; }
html body.home .hud-topbar { padding-block:12px!important; gap:14px!important; margin-bottom:20px!important; }
html body.home #greeting-email { font-size:15px!important; overflow-wrap:anywhere; }
html body.home .home-main { padding-top:10px!important; }
html body.home .home-friends { margin-bottom:10px; }
#sw-notif-btn { min-width:42px!important; height:38px!important; border-radius:12px!important; position:relative; display:flex!important; align-items:center; justify-content:center; gap:7px; }
#sw-notif-btn svg { width:20px; height:20px; flex:none; }
#sw-notif-btn:has(#sw-notif-count:not([style*="none"])) { box-shadow:0 0 0 3px color-mix(in srgb,var(--t-ac,#8aa4bf) 14%,transparent)!important; }
#sw-notif-panel { max-height:min(620px,calc(100dvh - 90px))!important; border-radius:18px!important; }
.guest-clock { position:fixed; right:16px; bottom:16px; z-index:9000; padding:10px 15px; background:var(--t-bg2,#20242b); color:var(--t-fg,#fff); border:1px solid var(--t-bd,#ffffff30); border-radius:30px; font:600 12px system-ui; box-shadow:0 6px 25px #0005; }
.guest-signup { box-sizing:border-box; width:min(440px,calc(100vw - 32px)); padding:30px; border:1px solid var(--t-bd,#ffffff30); border-radius:24px; background:var(--t-bg2,#20242b); color:var(--t-fg,#fff); font-family:inherit; box-shadow:0 30px 100px #0008; }
.guest-signup::backdrop { background:#080b12bf; backdrop-filter:blur(9px); }
.guest-signup img { width:48px; height:48px; border-radius:14px; }
.guest-signup h2 { font-size:28px; letter-spacing:-.05em; margin:18px 0 10px; }
.guest-signup p { color:var(--t-fg2,#b6beca); line-height:1.6; font-size:14px; }
.guest-signup a { display:block; padding:13px; text-align:center; margin-top:12px; border-radius:12px; text-decoration:none; color:var(--t-fg,#fff); border:1px solid var(--t-bd,#ffffff30); }
.guest-signup a:first-of-type { background:var(--t-ac,#bed4e3); color:var(--t-bg,#10151c); font-weight:700; }
html.guest-preview .home-account-link,html.guest-preview #auth-warning { display:none!important; }
.owner-account-tools { padding:20px; border:1px solid var(--t-bd,#ffffff25); border-radius:18px; margin:16px 0; background:var(--t-bg2,#20242b); }
.owner-account-tools p { color:var(--t-fg2); font-size:13px; line-height:1.6; }
.owner-account-tools .owner-account-list { max-height:300px; overflow:auto; margin:12px 0; }
.owner-account-tools label { display:flex; align-items:center; gap:10px; padding:10px; overflow-wrap:anywhere; font-size:13px; }
.owner-account-tools input[type=checkbox] { width:17px; height:17px; flex:none; }
.owner-account-tools input[type=text],.owner-account-tools input[type=search] { width:100%; box-sizing:border-box; padding:11px; margin:8px 0; background:var(--t-bg); color:var(--t-fg); border:1px solid var(--t-bd); border-radius:9px; }
.owner-account-tools button { margin:4px; padding:10px 14px; border-radius:9px; }
.owner-account-tools [data-danger] { border:1px solid #d47777; }
body.enroll-page { background:linear-gradient(#111821b8,#111821ed),url('/backgrounds/wallhaven-black-mountain.webp') center/cover fixed!important; }
body.enroll-page .auth-aurora { display:none; }
body.enroll-page .enroll-main { max-width:900px; gap:32px; padding:24px; }
body.enroll-page .enroll-hero { padding:24px!important; background:none!important; border:none!important; box-shadow:none!important; }
body.enroll-page .enroll-hero h1 { font-size:clamp(30px,4vw,46px)!important; line-height:1.12!important; letter-spacing:-.05em; }
body.enroll-page .auth-panel { border-radius:20px!important; background:#171e29ed!important; padding:24px!important; box-shadow:0 16px 60px #0004!important; }
body.enroll-page .auth-panel::before { display:none; }
body.enroll-page .auth-panel input:not([type=checkbox]) { min-height:44px!important; border-radius:10px!important; background:#ffffff07!important; }
body.enroll-page .auth-panel .btn-primary { background:#c6d5df!important; color:#15212a!important; box-shadow:none!important; border-radius:10px!important; }
body.enroll-page .auth-eyebrow { color:#b5c6d5!important; }
html body.enroll-page.mitch-design .enroll-hero h1 { font:650 clamp(30px,4vw,46px)/1.15 'DM Sans',system-ui,sans-serif!important; text-transform:none!important; max-width:none!important; letter-spacing:-.04em!important; }
html body.enroll-page .enroll-hero { animation:none!important; }
html body.enroll-page .enroll-main { gap:30px!important; padding-top:20px!important; min-height:0!important; }
html body.enroll-page .enroll-brand { display:none!important; }
html body.enroll-page #mobile-dock { display:none!important; }
@media(max-width:700px) { html body.enroll-page.mitch-design .enroll-hero h1 { font-size:28px!important; margin:0 0 12px!important; } html body.enroll-page .enroll-hero h1 br { display:none; } html body.enroll-page .enroll-main { width:100%!important; margin-top:16px!important; } html body.home .home-features .home-feature { min-height:165px!important; } }
@media(max-width:700px) { body.enroll-page .enroll-main { display:block!important; padding:16px; } body.enroll-page .enroll-hero { padding:8px 8px 20px!important; } body.enroll-page .enroll-hero h1 { font-size:26px!important; } body.enroll-page .enroll-hero p,body.enroll-page .auth-eyebrow { display:none; } body.enroll-page .enroll-brand img { width:44px; height:44px; } }
@media(max-width:700px) { body.home .home-dayboard-grid { grid-template-columns:1fr!important; } body.home .home-friends { width:calc(100% - 28px); margin:10px 14px 2px; padding:7px 0; } .home-friend { flex-basis:75px; width:75px; } .home-friend-avatar { width:57px; height:57px; } .home-friend-list { gap:8px; } #sw-notif-panel { width:min(380px,calc(100vw - 24px))!important; } .guest-clock { bottom:calc(12px + env(safe-area-inset-bottom)); } }
