.hero{min-height:390px;display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:end;gap:60px;padding:64px 28px 46px}.hero h1{margin:12px 0 19px;font-size:clamp(62px,8.2vw,106px);line-height:.84;letter-spacing:-.072em;font-weight:860}.hero h1 span{background:linear-gradient(95deg,#f8f9ff 0%,#a9b8ff 47%,#b57dff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-copy p{margin:0;max-width:590px;color:var(--muted);font-size:16px;line-height:1.6}
.health-card{border:1px solid var(--border);border-radius:25px;background:linear-gradient(160deg,rgba(255,255,255,.075),rgba(255,255,255,.018));backdrop-filter:blur(22px);box-shadow:0 28px 80px rgba(0,0,0,.3);overflow:hidden}.health-title{display:flex;align-items:center;justify-content:space-between;padding:18px 19px;border-bottom:1px solid var(--border)}.health-title>div{display:flex;align-items:center;gap:9px}.health-title strong{font-size:12px}.health-title>span{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.health-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 15px rgba(97,230,167,.68);animation:pulse 1.9s ease-in-out infinite}@keyframes pulse{50%{opacity:.35;transform:scale(.72)}}.health-metrics{display:grid;grid-template-columns:repeat(3,1fr)}.health-metric{padding:18px 15px;border-right:1px solid var(--border)}.health-metric:nth-child(3){border-right:0}.health-metric.wide{grid-column:1/-1;border-right:0;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.health-metric span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.health-metric strong{display:block;margin-top:7px;font-size:18px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.health-metric.wide strong{margin-top:0}
.quick{padding:28px 0 6px}.manage-link{color:#b2bcff;text-decoration:none;font-size:12px}.link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px}.link-card{min-height:205px;padding:19px;border:1px solid var(--border);border-radius:23px;background:linear-gradient(160deg,rgba(24,29,41,.82),rgba(14,17,24,.7));box-shadow:0 16px 42px rgba(0,0,0,.18);backdrop-filter:blur(17px);text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:.2s ease;overflow:hidden;position:relative}.link-card::after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-130px;top:-120px;background:radial-gradient(circle,rgba(119,136,255,.20),transparent 68%);transition:.25s ease;opacity:.65}.link-card:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.17);box-shadow:0 24px 60px rgba(0,0,0,.28)}.link-card:hover::after{transform:scale(1.35);opacity:1}.card-top{display:flex;align-items:flex-start;justify-content:space-between;position:relative;z-index:1}.service-logo{width:51px;height:51px;border-radius:16px;display:grid;place-items:center;border:1px solid var(--border);background:rgba(255,255,255,.045);font-weight:850;font-size:19px;position:relative;overflow:hidden}.service-logo img{width:100%;height:100%;object-fit:contain;padding:8px;position:absolute;inset:0}.service-logo .logo-fallback{display:grid;place-items:center;width:100%;height:100%}.service-logo.has-logo .logo-fallback{opacity:0}.service-logo.logo-failed img{display:none}.service-logo.logo-failed .logo-fallback{opacity:1}.open-arrow{color:#adb7ff;font-size:19px}.card-copy{margin-top:25px;position:relative;z-index:1}.card-copy h3{margin:0;font-size:20px}.card-copy p{margin:5px 0 0;color:var(--muted);font-size:12px}.card-foot{margin-top:auto;padding-top:18px;display:flex;justify-content:space-between;gap:8px;align-items:center;position:relative;z-index:1}.private-badge,.public-badge{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:800}.private-badge{color:#d8c8ff;background:rgba(174,113,255,.11);border:1px solid rgba(174,113,255,.18)}.public-badge{color:#a6f3cf;background:rgba(97,230,167,.09);border:1px solid rgba(97,230,167,.15)}.service-state{display:flex;align-items:center;gap:6px}.service-state i{width:7px;height:7px;border-radius:50%;background:#7d8799}.service-state b{font-size:9px;color:var(--muted)}.service-state.online i{background:var(--green);box-shadow:0 0 10px rgba(101,230,168,.55)}.service-state.online b{color:#a8eecf}.service-state.offline i{background:var(--red)}.service-state.offline b{color:#ffb1b8}.empty-state{min-height:240px;border:1px dashed var(--border2);border-radius:24px;display:grid;place-items:center;text-align:center;color:var(--muted);background:rgba(255,255,255,.015)}
@media(max-width:920px){.hero{grid-template-columns:1fr;padding-inline:8px;gap:34px}.health-card{max-width:520px;width:100%}}@media(max-width:620px){.hero{min-height:auto;padding-top:48px}.hero h1{font-size:56px}.health-metrics{grid-template-columns:1fr}.health-metric,.health-metric:nth-child(3){border-right:0;border-bottom:1px solid var(--border)}.health-metric.wide{grid-column:1;border-bottom:0}}

.guest-badge{padding:6px 8px;border-radius:999px;border:1px solid rgba(101,230,168,.16);background:rgba(101,230,168,.07);color:#a9efcb;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
@media(min-width:1000px){.guest-badge{font-size:11px;padding:7px 10px}}

.home-presence-strip{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:13px;margin:8px 0 24px}.home-presence-main{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 17px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(150deg,rgba(18,28,31,.82),rgba(11,15,23,.8));color:inherit;text-decoration:none}.home-presence-orb{position:relative;width:64px;height:64px;display:grid;place-items:center;border:1px solid rgba(101,230,168,.18);border-radius:50%;background:rgba(101,230,168,.055)}.home-presence-orb i{position:absolute;width:8px;height:8px;right:5px;top:10px;border-radius:50%;background:#65e6a8;box-shadow:0 0 12px rgba(101,230,168,.65)}.home-presence-orb b{font-size:21px}.home-presence-main small{display:block;color:#7f8c9f;font-size:8px;font-weight:850;letter-spacing:.1em}.home-presence-main strong{display:block;margin-top:4px;font-size:16px}.home-presence-main em{display:block;margin-top:3px;color:var(--muted);font-size:9px;font-style:normal}.home-presence-main>b{color:#aebaff;font-size:9px}.home-presence-people{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.home-presence-person{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--border);border-radius:16px;background:rgba(15,19,29,.75);color:inherit;text-decoration:none}.home-presence-person>span{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;border:1px solid var(--border);border-radius:11px;background:rgba(255,255,255,.025)}.home-presence-person.is-home>span{border-color:rgba(101,230,168,.18);background:rgba(101,230,168,.06)}.home-presence-person.is-recent>span{border-color:rgba(222,186,105,.18);background:rgba(222,186,105,.06)}.home-presence-person strong{display:block;font-size:10px}.home-presence-person small{display:block;margin-top:2px;color:var(--muted);font-size:8px}@media(min-width:1000px){.home-presence-main{padding:19px 20px}.home-presence-main strong{font-size:19px}.home-presence-main em{font-size:10px}.home-presence-person strong{font-size:12px}.home-presence-person small{font-size:9px}}@media(max-width:900px){.home-presence-strip{grid-template-columns:1fr}.home-presence-people{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.home-presence-main{grid-template-columns:56px 1fr}.home-presence-main>b{display:none}.home-presence-orb{width:56px;height:56px}.home-presence-people{grid-template-columns:1fr 1fr}}

/* Shared shopping list on HOME */
.shopping-section{padding:28px 0 6px}.shopping-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.shopping-heading h2{margin:6px 0;font-size:clamp(27px,3vw,39px);letter-spacing:-.045em}.shopping-heading p{margin:0;color:var(--muted);font-size:14px}.shopping-count{font-size:13px;vertical-align:middle;letter-spacing:0;border:1px solid rgba(163,171,255,.24);border-radius:999px;color:#cdd3ff;padding:4px 9px}.shopping-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:#bdc8ff;background:rgba(140,150,255,.12);border:1px solid rgba(164,178,255,.2);font-size:23px}.shopping-shell{border:1px solid var(--border);border-radius:24px;padding:18px;background:linear-gradient(160deg,rgba(23,28,43,.9),rgba(12,15,26,.82));box-shadow:0 18px 48px rgba(0,0,0,.2)}.shopping-add{display:grid;grid-template-columns:minmax(160px,1.15fr) minmax(135px,.85fr) auto;grid-template-rows:auto 44px;gap:7px 10px;align-items:center}.shopping-add label{font-size:11px;color:var(--muted);font-weight:700}.shopping-add label:nth-of-type(1){grid-column:1;grid-row:1}.shopping-add label:nth-of-type(2){grid-column:2;grid-row:1}.shopping-add input:nth-of-type(1){grid-column:1;grid-row:2}.shopping-add input:nth-of-type(2){grid-column:2;grid-row:2}.shopping-add input,.shopping-editor input,.shopping-editor select{min-width:0;width:100%;height:44px;border-radius:13px;border:1px solid rgba(173,188,225,.18);background:#151a29;color:#f1f4ff;padding:0 13px;font:inherit;font-size:14px;outline:none}.shopping-add input:focus,.shopping-editor input:focus,.shopping-editor select:focus{border-color:#9daaff;box-shadow:0 0 0 3px rgba(141,152,255,.16)}.shopping-add button{grid-column:3;grid-row:2;height:44px;border:1px solid rgba(175,179,255,.3);border-radius:13px;color:white;font-size:13px;font-weight:750;background:linear-gradient(110deg,#6c70db,#8d6ed6);padding:0 19px;cursor:pointer}.shopping-add button:disabled,.shopping-actions button:disabled,.shopping-recent button:disabled{opacity:.5;cursor:wait}.shopping-message{margin-top:13px;padding:10px 12px;border:1px solid rgba(159,179,255,.25);border-radius:13px;color:#e0e5ff;background:rgba(121,134,217,.09);font-size:13px}.shopping-message[hidden],.shopping-recent[hidden]{display:none}.shopping-message button{background:none;border:0;color:#bfc5ff;text-decoration:underline;font:inherit;cursor:pointer;margin-left:10px}.shopping-groups{display:grid;gap:10px;margin-top:16px}.shopping-empty{color:var(--muted);font-size:14px;padding:13px 4px}.shopping-group{border:1px solid rgba(171,186,220,.11);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.018)}.shopping-group summary{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none;font-size:14px;font-weight:760}.shopping-group summary::-webkit-details-marker{display:none}.shopping-group summary::after{content:'⌄';color:#a5b0cb;font-size:17px;margin-left:auto;transition:transform .2s}.shopping-group:not([open]) summary::after{transform:rotate(-90deg)}.shopping-group summary small{font-size:11px;color:var(--muted);font-weight:650}.shopping-entries{border-top:1px solid rgba(171,186,220,.1);padding:3px 10px}.shopping-row{display:flex;align-items:center;gap:11px;min-height:54px;padding:8px 3px}.shopping-row+.shopping-row{border-top:1px solid rgba(171,186,220,.08)}.shopping-check{width:28px;height:28px;border-radius:9px;border:1px solid rgba(185,199,238,.36);background:rgba(255,255,255,.04);color:#b7decc;cursor:pointer;flex:none;font-size:18px}.shopping-check:hover{background:rgba(93,198,151,.2)}.shopping-name{display:flex;flex-direction:column;min-width:0;gap:2px;flex:1}.shopping-name strong{overflow-wrap:anywhere;font-size:14px}.shopping-name small{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.shopping-actions{display:flex;gap:6px}.shopping-actions button{border:0;border-radius:9px;background:rgba(255,255,255,.06);color:#cbd3e4;min-height:38px;padding:0 11px;font-size:12px;cursor:pointer}.shopping-actions button:hover{background:rgba(157,169,255,.17)}.shopping-editor{display:grid;grid-template-columns:1fr 1fr minmax(130px,.9fr) auto;gap:8px;align-items:center;width:100%;padding:7px 0}.shopping-editor-actions{display:flex;gap:6px}.shopping-editor button{min-height:44px;border:0;border-radius:10px;background:rgba(150,160,255,.17);color:white;padding:0 12px;cursor:pointer;font-weight:650}.shopping-editor .shopping-danger{background:rgba(255,117,117,.14);color:#ffd0d0}.shopping-recent{margin-top:17px;padding-top:14px;border-top:1px solid rgba(171,186,220,.12)}.shopping-recent strong{display:block;color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}.shopping-recent div{display:flex;flex-wrap:wrap;gap:7px}.shopping-recent button{border:1px solid rgba(165,178,213,.21);background:rgba(255,255,255,.04);color:#e5e9f9;border-radius:999px;padding:8px 12px;font-size:12px;cursor:pointer}.shopping-signin{display:flex;gap:14px;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}.shopping-signin a{color:#c5ccff;text-decoration:none;font-weight:750}@media(max-width:700px){.shopping-add{grid-template-columns:1fr;grid-template-rows:repeat(6,auto)}.shopping-add label:nth-of-type(1),.shopping-add label:nth-of-type(2),.shopping-add input:nth-of-type(1),.shopping-add input:nth-of-type(2),.shopping-add button{grid-column:1;grid-row:auto}.shopping-add button{height:46px}.shopping-editor{grid-template-columns:1fr}.shopping-editor-actions{justify-content:flex-end}.shopping-heading p{font-size:12px}.shopping-shell{padding:13px}.shopping-row{gap:8px}.shopping-actions button{padding:0 8px}}

.shopping-switch{display:flex;align-items:center;gap:8px;margin-bottom:18px}.shopping-lists{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;flex:1}.shopping-lists button,.shopping-create,.shopping-active button{min-height:44px;padding:8px 13px;border-radius:13px;border:1px solid rgba(170,181,225,.19);background:rgba(255,255,255,.04);color:#dfe5f6;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}.shopping-lists button.selected{background:rgba(132,140,240,.2);border-color:rgba(158,173,255,.42);color:#fff}.shopping-create{color:#cbd2ff}.shopping-active{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;color:var(--muted);font-size:12px}.shopping-active[hidden]{display:none}.shopping-active strong{color:#e9ebff;font-size:15px}.shopping-active button{min-height:36px;padding:5px 10px}.shopping-group summary{min-height:44px}.shopping-check{width:44px;height:44px}.shopping-actions button{min-height:44px}@media(max-width:700px){.shopping-switch{align-items:stretch;flex-wrap:wrap}.shopping-lists{width:100%;flex-basis:100%}.shopping-create{width:100%}}

.home-editor .shopping-add{display:grid;grid-template-columns:1fr;gap:14px;margin:0;padding:0;border:0;background:none}.home-editor .shopping-add input{width:100%;margin:0}.shopping-add-trigger{margin:14px 0}.home-editor .shopping-add button[type=submit]{background:linear-gradient(135deg,#7487ff,#a16fff);color:#fff}.home-editor .home-editor-body>form>label{display:grid;gap:8px;margin-bottom:16px}

.home-editor .shopping-add{grid-template-rows:none}.home-editor .shopping-add>label,.home-editor .shopping-add>input,.home-editor .shopping-add button{grid-column:auto;grid-row:auto}.home-editor .shopping-add label{font-size:14px}.home-editor .shopping-add .home-editor-actions button:not([type=submit]){background:var(--home-control);color:var(--home-text)}
