*{box-sizing:border-box}body{margin:0;background:#e9edf2;font-family:Inter,system-ui,-apple-system,sans-serif;color:#17202a}.phone{max-width:480px;min-height:100vh;margin:auto;background:#f7f8fa;position:relative;padding-bottom:82px}header{background:#111c2d;color:white;padding:28px 22px 24px;display:flex;justify-content:space-between;align-items:center}header small{letter-spacing:2px;color:#70e1bd;font-weight:800}h1{font-size:24px;margin:6px 0}header p{margin:0;color:#b8c2d1}.avatar{width:46px;height:46px;border-radius:50%;border:0;background:#70e1bd;font-weight:800}.view{display:none;padding:18px}.view.active{display:block}.hero{background:linear-gradient(135deg,#17263d,#203b57);color:white;border-radius:20px;padding:20px;box-shadow:0 8px 24px #17263d25}.hero span,.tag{font-size:11px;font-weight:900;letter-spacing:1px;color:#70e1bd}.hero h2{margin:8px 0}.hero p{color:#d6deea}.hero button,article button,.title button{border:0;border-radius:10px;padding:10px 14px;font-weight:700;background:#70e1bd;color:#122033}.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.grid button{border:0;background:white;border-radius:16px;padding:16px;text-align:left;font-size:22px;box-shadow:0 3px 12px #1b263310}.grid b,.grid small{display:block;font-size:14px;margin-top:6px}.grid small{font-size:12px;color:#75808e}article{background:white;border-radius:17px;padding:17px;margin:12px 0;box-shadow:0 3px 12px #1b263310}article h2{font-size:19px}.meta,article small{color:#7b8794;font-size:12px}.poll button{display:flex;width:100%;justify-content:space-between;margin:8px 0;background:#eef2f5}.title{display:flex;justify-content:space-between;align-items:center}.days{display:flex;justify-content:space-between;background:white;border-radius:15px;padding:12px;margin:12px 0}.days b{text-align:center;font-size:10px;color:#788391}.days i{font-style:normal;font-size:18px;color:#17202a}.days .sel{background:#17263d;color:white;border-radius:10px;padding:8px}.days .sel i{color:white}.shift{display:flex;gap:16px}.shift>span{font-weight:900;color:#3c7565}.open{border:1px solid #70e1bd}.progress{height:8px;background:#e7ecef;border-radius:9px;overflow:hidden}.progress i{display:block;width:78%;height:100%;background:#70e1bd}.chatrow{display:flex;align-items:center;gap:12px;padding:15px 4px;border-bottom:1px solid #e5e9ed}.chatrow>b{background:#dce4ea;border-radius:50%;width:44px;height:44px;display:grid;place-items:center}.chatrow div{flex:1}.chatrow h3,.chatrow p{margin:2px}.chatrow p,time{font-size:12px;color:#7b8794}.chatrow em{font-style:normal;background:#70e1bd;border-radius:12px;padding:2px 7px;font-size:11px}.menu{display:grid;gap:8px}.menu button{border:0;background:white;border-radius:13px;padding:15px;text-align:left;font-weight:700;font-size:14px}.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stats div{background:white;padding:15px;border-radius:15px}.stats b,.stats small{display:block}.stats b{font-size:28px}.stats small{color:#7b8794}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);max-width:480px;width:100%;height:72px;background:white;border-top:1px solid #e3e7eb;display:flex;z-index:4}nav button{flex:1;border:0;background:white;color:#8b95a2;font-size:22px}nav small{display:block;font-size:10px}nav .on{color:#1c6c57}#toast{position:fixed;bottom:88px;left:50%;transform:translateX(-50%);background:#17263d;color:white;padding:10px 16px;border-radius:12px;opacity:0;pointer-events:none;transition:.2s;white-space:nowrap}#toast.show{opacity:1}@media(min-width:600px){.phone{margin-top:20px;min-height:calc(100vh - 40px);border-radius:28px;overflow:hidden;box-shadow:0 20px 60px #1a253333}nav{bottom:20px;border-radius:0 0 28px 28px}}
.picked{outline:2px solid #70e1bd!important;background:#eafff8!important}.row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid #e8edf3}.row small,.task small{display:block;color:#6c7686;margin-top:5px}.pill{font-size:12px;padding:6px 9px;border-radius:999px;background:#fff2c6}.pill.draft{background:#e9eef7}.muted{color:#7a8494}.task{padding:16px 0;border-bottom:1px solid #e8edf3;cursor:pointer}.task.done{opacity:.55;text-decoration:line-through}.thread{min-height:430px;max-height:58vh;overflow:auto;padding:12px 0}.bubble{background:#fff;padding:12px 14px;border-radius:16px 16px 16px 4px;margin:8px 42px 8px 0;box-shadow:0 3px 12px #0c193014}.bubble.me{background:#dff8ef;margin-left:42px;margin-right:0;border-radius:16px 16px 4px 16px}.composer{display:flex;gap:8px;position:sticky;bottom:78px;background:#f5f7fb;padding:10px 0}.composer input{flex:1;border:1px solid #dce3ed;border-radius:14px;padding:13px;font-size:16px}.composer button{border:0;border-radius:14px;padding:0 15px;background:#101a32;color:#fff;font-weight:700}.chatrow{cursor:pointer}
form{display:grid;gap:10px}input,select{width:100%;border:1px solid #dce3ed;border-radius:12px;padding:12px;background:#fff;font:inherit}label{font-size:12px;color:#667386;display:grid;gap:5px}main>button,.view>button{border:0;border-radius:10px;padding:10px 14px;font-weight:700;background:#dfe7ee;color:#122033}.view>button#publish{width:100%;background:#70e1bd;margin-top:12px}.rota-card .title h3{font-size:15px;margin:0}.rota-card button{margin-top:10px}
textarea{width:100%;min-height:92px;border:1px solid #dce3ed;border-radius:12px;padding:12px;background:#fff;font:inherit;resize:vertical}.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.status-grid article{margin:0}.status-grid b,.status-grid small{display:block}.status-grid b{font-size:16px;margin-top:5px}.notice{border-left:4px solid #70e1bd}.quick button{cursor:pointer}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.actions button,.request-card button,.notification button,.announcement button{border:0;border-radius:10px;padding:9px 12px;font-weight:700;background:#70e1bd;color:#122033}.actions .secondary,.secondary{background:#e9eef4;color:#334155}.request-card{padding:14px 0;border-bottom:1px solid #e6ebf1}.request-card:last-child{border-bottom:0}.danger{border:1px solid #f2b8b5;background:#fff7f6}.notification,.announcement{padding:14px 0;border-bottom:1px solid #e6ebf1}.notification.read{opacity:.65}.dot{display:inline-block;width:9px;height:9px;background:#1c9b78;border-radius:50%}.person{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #e6ebf1}.person-avatar{width:42px;height:42px;border-radius:50%;background:#dff8ef;display:grid;place-items:center;font-weight:900}.person small{display:block;color:#718096}.chat-layout{display:block}.channel-list{display:flex;gap:8px;overflow:auto;padding:4px 0 10px}.channel-list h3{display:none}.channel{border:0;background:#fff;padding:10px 12px;border-radius:12px;min-width:120px;text-align:left}.channel.selected{outline:2px solid #70e1bd}.channel small{display:block;color:#788391}.chat-panel{margin-top:0}.check{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:8px}.check input{width:auto}.business-switcher{margin-bottom:12px}.menu button{cursor:pointer}.view .hero+article{margin-top:14px}@media(min-width:900px){.phone{max-width:760px}.chat-layout{display:grid;grid-template-columns:200px 1fr;gap:12px}.channel-list{display:block}.channel-list h3{display:block}.channel{display:block;width:100%;margin:6px 0}}
.community-card,.recognition-card,.activity-card{padding:14px 0;border-bottom:1px solid #e6ebf1}.community-card:last-child,.recognition-card:last-child,.activity-card:last-child{border-bottom:0}.community-card .poll button{border:1px solid #e1e8ee;background:#f8fafb;color:#263445;border-radius:11px;padding:10px 12px}.community-card .poll button.picked{border-color:#70e1bd;background:#eafff8}.community-card .poll button:disabled{opacity:.65}.activity-card .progress{margin:10px 0}.activity-card button,.community-card>button{border:0;border-radius:10px;padding:9px 12px;font-weight:700;background:#70e1bd;color:#122033;margin-top:8px}details{border-top:1px solid #e8edf3;padding:11px 0}details:first-of-type{border-top:0}summary{font-weight:800;cursor:pointer;margin-bottom:10px}.birthday-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}hr{border:0;border-top:1px solid #e8edf3;margin:16px 0}
.brand-head{display:flex;align-items:center;gap:12px}.tenant-logo{width:58px;height:58px;border-radius:16px;object-fit:cover;border:1px solid rgba(255,255,255,.18)}
.powered-by{text-align:center;padding:14px 18px 22px;color:#7b8794;font-size:11px;font-weight:700;letter-spacing:.3px}

/* 0032 premium system: energetic, calm and mobile-first. */
:root{--navy:#0e1b2b;--navy-2:#18324a;--ivory:#fbf7ef;--mint:#68ddb8;--mint-dark:#0f6b52;--ink:#102033;--muted:#5b6573;--line:#e6e7e2;--danger:#9f2d28;--shadow:0 14px 38px rgba(14,27,43,.10)}
html{background:var(--navy);-webkit-text-size-adjust:100%}body{background:linear-gradient(145deg,#dce7e5,#f2ece1);color:var(--ink)}
button,input,select,textarea{min-height:48px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.62}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid rgba(104,221,184,.65);outline-offset:2px}
.phone{background:var(--ivory);padding-bottom:calc(82px + env(safe-area-inset-bottom));box-shadow:0 24px 80px rgba(14,27,43,.18)}
header{background:linear-gradient(145deg,var(--navy),var(--navy-2));padding-top:calc(26px + env(safe-area-inset-top));border-radius:0 0 24px 24px}
header small{color:var(--mint)}article,.stats div,.grid button,.menu button,.days{border:1px solid rgba(14,27,43,.06);box-shadow:var(--shadow)}
.hero{background:radial-gradient(circle at 90% 5%,rgba(104,221,184,.22),transparent 34%),linear-gradient(145deg,var(--navy),var(--navy-2));box-shadow:0 18px 38px rgba(14,27,43,.18)}
.hero button,article button,.title button,.actions button{min-height:44px}.grid button,.menu button{transition:transform .16s ease,box-shadow .16s ease}.grid button:active,.menu button:active{transform:scale(.98)}
nav{height:calc(72px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -10px 28px rgba(14,27,43,.06)}nav button{min-height:56px}.powered-by{padding-bottom:calc(22px + env(safe-area-inset-bottom))}
#toast{white-space:normal;width:min(calc(100% - 32px),440px);text-align:center;bottom:calc(88px + env(safe-area-inset-bottom))}

.access-shell{max-width:520px;min-height:100dvh;padding-bottom:0;background:linear-gradient(180deg,var(--navy) 0 30%,var(--ivory) 30%)}
.access-header{min-height:74px;padding:calc(14px + env(safe-area-inset-top)) 22px 14px;border-radius:0;align-items:center}
.wordmark{display:flex;align-items:center;gap:10px;color:white;text-decoration:none;font-weight:850;font-size:18px;letter-spacing:-.3px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--mint);color:var(--navy);font-weight:950}
.secure-pill{color:#dce9e6;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:750}
.access-main{padding:18px 18px 30px}.access-intro{color:white;padding:8px 5px 26px}.access-intro small,.access-title small{font-size:11px;font-weight:900;letter-spacing:1.8px;color:var(--mint)}.access-intro h1{font-size:clamp(34px,10vw,48px);line-height:.98;letter-spacing:-2px;margin:10px 0 14px}.access-intro h1 em{font-style:normal;color:var(--mint)}.access-intro p{color:#c7d1da;line-height:1.5;margin:0;max-width:410px}
.access-card{margin:0;padding:24px;border-radius:24px;border:1px solid rgba(14,27,43,.07);box-shadow:0 22px 60px rgba(14,27,43,.19);background:rgba(255,255,255,.98)}
.access-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}.access-title h2{font-size:25px;letter-spacing:-.7px;margin:0 0 5px}.access-title p{margin:0;color:var(--muted);line-height:1.45}.step-dot{width:11px;height:11px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 6px rgba(104,221,184,.2);margin:9px 5px 0}
.access-card form{gap:15px}.access-card label{font-size:13px;font-weight:760;color:var(--ink)}.access-card label small{font-size:11px;font-weight:500;color:var(--muted);line-height:1.35}.access-card input{border:1.5px solid #d9dfdf;border-radius:13px;padding:13px 14px;background:#fff;color:var(--ink)}.access-card input:hover{border-color:#b8c8c4}.access-card input:focus{border-color:var(--mint-dark)}
.primary{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:14px;padding:0 17px;background:var(--mint);color:var(--navy);font-weight:850;font-size:15px;box-shadow:0 9px 20px rgba(15,107,82,.17)}.primary:hover{background:#7ae4c2}.text-button{border:0;background:transparent;color:var(--mint-dark);font-weight:800;padding:10px 0}.setup-callout{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.setup-callout p{color:var(--muted);margin:4px 0}.form-alert{border:1px solid #e8aaa5;background:#fff4f2;color:#78241f;padding:12px 14px;border-radius:13px;margin:0 0 16px;line-height:1.4}
.stepper{display:grid;grid-template-columns:28px 1fr 28px 1fr 28px;align-items:center;margin:0 0 22px}.stepper span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#e7ece9;color:#718079;font-weight:850;font-size:12px}.stepper span.active{background:var(--mint);color:var(--navy)}.stepper i{height:2px;background:var(--mint)}.consent{grid-template-columns:auto 1fr!important;display:grid!important;align-items:center!important;gap:9px!important}.consent input{width:20px;min-height:20px;height:20px}.loading-card{text-align:center}.spinner{width:34px;height:34px;margin:4px auto 18px;border:3px solid #dae6e2;border-top-color:var(--mint-dark);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:600px){.access-shell{margin-top:0;min-height:100dvh;border-radius:0}.access-card{padding:30px}.access-main{padding-inline:28px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
