.landing-page{--lp-ink:oklch(22% .036 292);--lp-muted:oklch(47% .032 285);--lp-purple:oklch(53% .225 292);--lp-purple-dark:oklch(31% .13 292);--lp-lilac:oklch(91% .048 292);--lp-cloud:oklch(97.5% .008 292);--lp-green:oklch(62% .155 155);--lp-amber:oklch(72% .155 75);--lp-blue:oklch(66% .15 235);background:var(--lp-cloud);min-height:100%;color:var(--lp-ink);font-family:Segoe UI Variable,Segoe UI,system-ui,sans-serif;overflow:hidden}.landing-page *{box-sizing:border-box}.landing-page a{color:inherit}.landing-nav{z-index:10;justify-content:space-between;align-items:center;width:min(1180px,100% - 40px);min-height:82px;margin:auto;display:flex;position:relative}.landing-logo{color:var(--lp-ink);letter-spacing:-.025em;align-items:center;gap:10px;font-weight:800;text-decoration:none;display:inline-flex}.landing-logo img{border-radius:8px;width:34px;height:34px}.landing-nav nav{gap:34px;display:flex}.landing-nav nav a{color:var(--lp-muted);font-size:.88rem;font-weight:600;text-decoration:none}.landing-nav nav a:hover{color:var(--lp-purple)}.landing-nav__cta{background:#fff;border:1px solid oklch(84% .03 292);border-radius:9px;align-items:center;gap:8px;padding:10px 15px;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.landing-page :focus-visible{outline-offset:3px;outline:3px solid oklch(70% .16 292)}.landing-hero{grid-template-columns:minmax(0,.88fr) minmax(480px,1.12fr);align-items:center;gap:clamp(44px,6vw,88px);width:min(1180px,100% - 40px);min-height:700px;margin:auto;padding:64px 0 100px;display:grid;position:relative}.landing-hero:before{z-index:0;content:"";background:oklch(90% .082 292);border-radius:50%;width:840px;height:840px;position:absolute;top:-280px;right:-410px}.landing-hero__copy,.landing-hero__product{z-index:1;position:relative}.landing-hero__signal{color:var(--lp-purple-dark);align-items:center;gap:9px;margin:0 0 28px;font-size:.79rem;font-weight:750;display:flex}.landing-hero__signal span{background:var(--lp-green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px oklch(90% .07 155)}.landing-hero h1{letter-spacing:-.04em;text-wrap:balance;max-width:690px;margin:0;font-size:clamp(3.2rem,5.7vw,5.7rem);font-weight:800;line-height:.98}.landing-hero h1 em{color:var(--lp-purple);font-style:normal}.landing-hero__lede{max-width:650px;color:var(--lp-muted);text-wrap:pretty;margin:28px 0 0;font-size:clamp(1.02rem,1.4vw,1.16rem);line-height:1.72}.landing-hero__actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.landing-button{border-radius:10px;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:0 20px;font-size:.9rem;font-weight:750;text-decoration:none;transition:transform .18s ease-out,background-color .18s ease-out;display:inline-flex}.landing-button:hover{transform:translateY(-2px)}.landing-button--primary{background:var(--lp-purple-dark);color:#fff!important}.landing-button--primary:hover{background:var(--lp-purple)}.landing-button--quiet{background:#fff;border:1px solid oklch(83% .024 292)}.landing-button--light{background:#fff;color:var(--lp-purple-dark)!important}.landing-hero__proof{color:var(--lp-muted);flex-wrap:wrap;align-items:center;gap:7px 14px;margin:28px 0 0;font-size:.72rem;font-weight:650;display:flex}.landing-hero__proof svg{color:var(--lp-green)}.landing-board{color:oklch(96% .01 270);background:oklch(19% .035 270);border-radius:16px;width:min(100%,590px);margin-left:auto;position:relative;overflow:hidden;transform:rotate(1.2deg);box-shadow:0 28px 60px oklch(23% .1 292/.22)}.landing-board:after{border-radius:inherit;pointer-events:none;content:"";border:1px solid oklch(100% 0 0/.11);position:absolute;inset:0}.landing-board__bar{border-bottom:1px solid oklch(100% 0 0/.08);justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.landing-board__identity{align-items:center;gap:11px;display:flex}.landing-board__identity img{width:38px;height:38px}.landing-board__identity div,.landing-board__identity span{display:block}.landing-board__identity strong{font-size:.86rem}.landing-board__identity span{color:oklch(73% .025 270);margin-top:2px;font-size:.65rem}.landing-board__online{color:oklch(82% .12 155);background:oklch(26% .05 155);border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:.64rem;font-weight:700;display:inline-flex}.landing-board__online i{background:oklch(72% .18 155);border-radius:50%;width:6px;height:6px}.landing-board__summary{background:oklch(100% 0 0/.08);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.landing-board__summary div{background:oklch(22% .035 270);padding:14px 12px}.landing-board__summary strong,.landing-board__summary span{display:block}.landing-board__summary strong{font-size:1.35rem}.landing-board__summary span{color:oklch(72% .028 270);margin-top:2px;font-size:.6rem}.landing-board__list{padding:18px 20px 12px}.landing-board__listhead{justify-content:space-between;margin-bottom:10px;font-size:.69rem;display:flex}.landing-board__listhead span{color:oklch(67% .03 270)}.landing-person{border-bottom:1px solid oklch(100% 0 0/.07);align-items:center;gap:10px;padding:10px 0;display:flex}.landing-person__avatar{color:oklch(88% .07 292);background:oklch(31% .055 290);border-radius:9px;flex:none;place-items:center;width:34px;height:34px;font-size:.62rem;font-weight:800;display:grid}.landing-person__name{flex:1;min-width:0}.landing-person__name strong,.landing-person__name small{display:block}.landing-person__name strong{font-size:.72rem}.landing-person__name small{color:oklch(67% .03 270);margin-top:2px;font-size:.58rem}.landing-person__state{text-align:center;border-radius:7px;min-width:58px;padding:6px 8px;font-size:.59rem;font-weight:750}.landing-person__state--in{color:oklch(82% .13 155);background:oklch(31% .08 155)}.landing-person__state--out{color:oklch(86% .13 75);background:oklch(31% .07 75)}.landing-person__state--remote{color:oklch(84% .11 235);background:oklch(31% .08 235)}.landing-person__state--away{color:oklch(84% .1 292);background:oklch(31% .09 292)}.landing-board__rollcall{background:oklch(27% .07 292);border-radius:10px;align-items:center;gap:11px;margin:4px 12px 12px;padding:13px;display:flex}.landing-board__shield{background:oklch(54% .2 292);border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.landing-board__rollcall>span:nth-child(2){flex:1}.landing-board__rollcall strong,.landing-board__rollcall small{display:block}.landing-board__rollcall strong{font-size:.66rem}.landing-board__rollcall small{color:oklch(76% .055 292);margin-top:2px;font-size:.55rem}.landing-board__chevron{color:oklch(79% .07 292)}.landing-trust{background:var(--lp-purple-dark);color:#fff;text-align:center;padding:34px 20px}.landing-trust p{color:oklch(82% .06 292);margin:0 0 14px;font-size:.78rem}.landing-trust div{flex-wrap:wrap;justify-content:center;gap:14px 54px;font-size:clamp(1.15rem,2.2vw,1.6rem);display:flex}.landing-capabilities{width:min(1120px,100% - 40px);margin:auto;padding:120px 0}.landing-section-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:54px;display:flex}.landing-section-heading h2{letter-spacing:-.04em;text-wrap:balance;max-width:640px;margin:0;font-size:clamp(2.3rem,4.3vw,4.1rem);line-height:1.03}.landing-section-heading p{max-width:430px;color:var(--lp-muted);margin:0;font-size:.94rem;line-height:1.7}.landing-capability{border-radius:16px;position:relative;overflow:hidden}.landing-capability--board{background:var(--lp-lilac);grid-template-columns:.9fr 1.1fr;align-items:center;gap:60px;min-height:440px;padding:clamp(32px,6vw,70px);display:grid}.landing-capability__icon{background:var(--lp-purple-dark);color:#fff;border-radius:10px;place-items:center;width:42px;height:42px;margin-bottom:22px;display:grid}.landing-capability h3{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(1.6rem,2.5vw,2.4rem);line-height:1.12}.landing-capability p{color:var(--lp-muted);margin:17px 0 0;font-size:.92rem;line-height:1.7}.landing-capability ul{gap:10px;margin:24px 0 0;padding:0;font-size:.79rem;font-weight:650;list-style:none;display:grid}.landing-capability ul li:before{color:var(--lp-green);content:"✓";margin-right:9px}.landing-status-stack{background:#fff;border-radius:14px;gap:8px;padding:18px;display:grid;transform:rotate(-1.5deg);box-shadow:0 10px 36px oklch(36% .09 292/.12)}.landing-status-stack>div{border-bottom:1px solid oklch(91% .018 292);align-items:center;gap:11px;padding:11px;display:flex}.landing-status-stack>div:last-child{border:0}.landing-status-stack strong{flex:1;font-size:.78rem}.landing-capability-pair{grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;display:grid}.landing-capability-pair .landing-capability{min-height:490px;padding:clamp(30px,5vw,54px)}.landing-capability--visitor{color:#fff;background:oklch(24% .045 270)}.landing-capability--visitor p{color:oklch(75% .025 270)}.landing-capability--visitor .landing-capability__icon{background:oklch(38% .11 292)}.landing-visitor-ticket{color:var(--lp-ink);background:#fff;border-radius:12px 0 0 12px;padding:24px;display:grid;position:absolute;bottom:42px;left:52px;right:-16px;transform:rotate(-2deg)}.landing-visitor-ticket span{background:var(--lp-lilac);width:fit-content;color:var(--lp-purple-dark);letter-spacing:.1em;border-radius:4px;padding:4px 7px;font-size:.58rem;font-weight:800}.landing-visitor-ticket strong{margin-top:17px;font-size:1.25rem}.landing-visitor-ticket small{color:var(--lp-muted);margin-top:3px}.landing-visitor-ticket b{color:var(--lp-green);border-top:1px dashed oklch(82% .02 292);margin-top:21px;padding-top:12px;font-size:.7rem}.landing-capability--availability{background:oklch(90% .07 236)}.landing-capability--availability .landing-capability__icon{background:oklch(43% .14 235)}.landing-week{justify-content:space-between;gap:9px;display:flex;position:absolute;bottom:50px;left:42px;right:42px}.landing-week span{color:oklch(42% .055 235);text-align:center;flex:1;gap:10px;font-size:.66rem;font-weight:700;display:grid}.landing-week i{background:oklch(77% .09 235);border-radius:8px;height:84px}.landing-week i.is-away{background:var(--lp-purple)}.landing-feature-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px;display:grid}.landing-feature-grid article{background:#fff;border:1px solid oklch(84% .025 292);border-radius:16px;padding:28px 24px}.landing-feature-grid article>span{background:var(--lp-lilac);width:38px;height:38px;color:var(--lp-purple-dark);border-radius:10px;place-items:center;margin-bottom:20px;display:grid}.landing-feature-grid h3{letter-spacing:-.02em;margin:0;font-size:1rem}.landing-feature-grid p{color:var(--lp-muted);margin:11px 0 0;font-size:.76rem;line-height:1.65}.landing-safety{color:#fff;background:oklch(18% .04 286);grid-template-columns:1fr .88fr;align-items:center;gap:clamp(50px,8vw,110px);padding:clamp(80px,10vw,130px) max(20px,50vw - 560px);display:grid}.landing-safety__mark{background:var(--lp-purple);border-radius:13px;place-items:center;width:58px;height:58px;margin-bottom:30px;display:grid}.landing-safety h2{letter-spacing:-.04em;text-wrap:balance;max-width:650px;margin:0;font-size:clamp(2.25rem,4vw,4rem);line-height:1.06}.landing-safety__copy>p{color:oklch(76% .035 286);max-width:600px;margin:24px 0 0;font-size:1rem;line-height:1.72}.landing-safety__points{gap:13px;margin-top:32px;display:grid}.landing-safety__points span{color:oklch(88% .02 286);align-items:center;gap:11px;font-size:.8rem;font-weight:650;display:flex}.landing-safety__points svg{color:oklch(76% .11 292)}.landing-rollcall-card{background:oklch(24% .05 286);border-radius:15px;padding:26px;box-shadow:0 18px 50px oklch(10% .03 286/.35)}.landing-rollcall-card>div:first-child{color:oklch(77% .04 286);justify-content:space-between;font-size:.68rem;font-weight:700;display:flex}.landing-rollcall-card>div:first-child b{color:oklch(75% .16 28)}.landing-rollcall-card>strong{margin:25px 0 12px;font-size:1.55rem;display:block}.landing-rollcall-progress{background:oklch(33% .04 286);border-radius:999px;height:7px}.landing-rollcall-progress i{border-radius:inherit;background:var(--lp-green);width:82%;height:100%;display:block}.landing-rollcall-card ul{margin:24px 0 18px;padding:0;list-style:none}.landing-rollcall-card li{border-bottom:1px solid oklch(100% 0 0/.08);align-items:center;gap:10px;padding:12px 0;font-size:.72rem;display:flex}.landing-rollcall-card li>span{color:oklch(76% .03 286);background:oklch(34% .035 286);border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.landing-rollcall-card li>span.is-safe{color:oklch(80% .15 155);background:oklch(31% .09 155)}.landing-rollcall-card li b{flex:1}.landing-rollcall-card li em{color:oklch(70% .035 286);font-style:normal}.landing-rollcall-card>small{color:oklch(68% .035 286);align-items:center;gap:7px;font-size:.62rem;display:flex}.landing-rollcall-card>small i{background:var(--lp-green);border-radius:50%;width:6px;height:6px}.landing-how{width:min(1120px,100% - 40px);margin:auto;padding:120px 0}.landing-how ol{counter-reset:steps;grid-template-columns:repeat(3,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}.landing-how li{border-top:1px solid oklch(82% .025 292);border-bottom:1px solid oklch(82% .025 292);gap:18px;padding:28px 34px;display:flex}.landing-how li+li{border-left:1px solid oklch(82% .025 292)}.landing-how li>span{background:var(--lp-purple-dark);color:#fff;border-radius:50%;flex:none;place-items:center;width:31px;height:31px;font-size:.72rem;font-weight:800;display:grid}.landing-how h3{margin:3px 0 9px;font-size:1rem}.landing-how li p{color:var(--lp-muted);margin:0;font-size:.78rem;line-height:1.65}.landing-pricing{width:min(1180px,100% - 40px);margin:auto;padding:20px 0 120px}.landing-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.landing-plan{background:#fff;border:1px solid oklch(84% .025 292);border-radius:16px;flex-direction:column;min-width:0;padding:30px 25px 25px;display:flex;position:relative}.landing-plan--featured{border:2px solid var(--lp-purple);box-shadow:0 16px 40px oklch(42% .12 292/.14)}.landing-plan__badge{background:var(--lp-purple);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:6px 10px;font-size:.65rem;font-weight:800;position:absolute;top:-13px;left:20px}.landing-plan h3{margin:0;font-size:1.35rem}.landing-plan>p{min-height:64px;color:var(--lp-muted);margin:12px 0 22px;font-size:.78rem;line-height:1.55}.landing-plan__trial{color:oklch(38% .11 155);background:oklch(92% .055 155);border-radius:999px;align-items:center;gap:6px;width:fit-content;margin:-8px 0 16px;padding:6px 9px;font-size:.67rem;font-weight:800;display:inline-flex}.landing-plan__price{align-items:baseline;gap:5px;display:flex}.landing-plan__price strong{letter-spacing:-.04em;font-size:2rem}.landing-plan__price span,.landing-plan>small{color:var(--lp-muted);font-size:.7rem}.landing-plan>small{min-height:22px;margin-top:4px}.landing-plan>b{margin-top:20px;font-size:.78rem}.landing-plan ul{color:var(--lp-muted);gap:8px;margin:18px 0 26px;padding:0;font-size:.72rem;list-style:none;display:grid}.landing-plan li:before{color:var(--lp-green);content:"✓";margin-right:7px}.landing-plan .landing-button{margin-top:auto}.landing-pricing__message{color:var(--lp-muted);text-align:center;background:#fff;border-radius:12px;padding:28px}.landing-final{background:var(--lp-purple);color:#fff;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;width:min(1180px,100% - 40px);margin:0 auto 60px;padding:clamp(34px,5vw,58px);display:grid}.landing-final>img{width:68px;height:68px}.landing-final h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.7rem,3vw,2.7rem)}.landing-final p{color:oklch(89% .055 292);margin:8px 0 0;font-size:.83rem}.landing-footer{width:min(1180px,100% - 40px);color:var(--lp-muted);border-top:1px solid oklch(86% .02 292);justify-content:space-between;align-items:center;gap:24px;margin:auto;padding:28px 0 36px;font-size:.7rem;display:flex}.landing-footer .landing-logo{font-size:.82rem}.landing-footer .landing-logo img{width:25px;height:25px}@media (width<=900px){.landing-nav nav{display:none}.landing-hero{grid-template-columns:1fr;padding-top:52px}.landing-hero:before{right:-560px}.landing-hero__copy{max-width:720px}.landing-board{margin:0 auto;transform:none}.landing-section-heading{flex-direction:column;align-items:start}.landing-capability--board{grid-template-columns:1fr}.landing-feature-grid{grid-template-columns:repeat(2,1fr)}.landing-safety{grid-template-columns:1fr}.landing-rollcall-card{width:min(100%,560px)}.landing-how ol{grid-template-columns:1fr}.landing-plan-grid{grid-template-columns:repeat(2,1fr)}.landing-how li+li{border-top:0;border-left:0}.landing-final{grid-template-columns:auto 1fr}.landing-final .landing-button{grid-column:1/-1}}@media (width<=640px){.landing-nav{width:min(100% - 28px,1180px);min-height:70px}.landing-nav__cta{padding:9px 11px;font-size:0}.landing-nav__cta svg{width:18px;height:18px}.landing-hero{width:min(100% - 28px,1180px);min-height:0;padding:45px 0 72px}.landing-hero h1{font-size:clamp(2.7rem,14vw,4.2rem)}.landing-hero__proof{gap:8px}.landing-board{width:calc(100% + 6px)}.landing-board__summary{grid-template-columns:repeat(2,1fr)}.landing-board__summary div:nth-child(2){border-right:0}.landing-trust div{flex-direction:column;gap:7px}.landing-capabilities,.landing-how,.landing-pricing{width:min(100% - 28px,1120px);padding:84px 0}.landing-plan-grid{grid-template-columns:1fr}.landing-capability--board,.landing-capability-pair .landing-capability{padding:28px 22px}.landing-capability-pair,.landing-feature-grid{grid-template-columns:1fr}.landing-capability-pair .landing-capability{min-height:430px}.landing-visitor-ticket{left:26px}.landing-week{left:22px;right:22px}.landing-safety{padding:80px 20px}.landing-final{grid-template-columns:1fr;width:min(100% - 28px,1180px)}.landing-final>img{width:52px;height:52px}.landing-final .landing-button{grid-column:auto}.landing-footer{flex-direction:column;align-items:flex-start;width:min(100% - 28px,1180px)}}@media (prefers-reduced-motion:reduce){.landing-page *,.landing-page :before,.landing-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.signup-page{color:#241c35;background:#f5f3fa;min-height:100vh;padding:48px 20px}.signup-card{background:#fff;border:1px solid #ddd6eb;border-radius:18px;width:min(620px,100%);margin:0 auto;padding:36px;box-shadow:0 20px 60px #39265a18}.signup-brand{color:inherit;align-items:center;gap:9px;margin-bottom:28px;font-weight:800;text-decoration:none;display:inline-flex}.signup-brand img{width:30px}.signup-eyebrow{color:#69429b;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:800}.signup-card h1{margin:7px 0 10px;font-size:clamp(1.8rem,5vw,2.5rem)}.signup-card>div>p:last-child,.signup-status>p{color:#665d73;line-height:1.6}.signup-card form{gap:17px;margin-top:28px;display:grid}.signup-card form>label{gap:6px;font-size:.83rem;font-weight:700;display:grid}.signup-card input,.signup-card select{width:100%;color:inherit;font:inherit;background:#fff;border:1px solid #cfc7db;border-radius:9px;padding:12px}.signup-card small{color:#71687c;font-weight:400}.signup-card fieldset{border:0;gap:20px;padding:0;display:flex}.signup-card fieldset legend{margin-bottom:7px;font-size:.83rem;font-weight:700}.signup-card fieldset label{align-items:center;gap:7px;display:flex}.signup-card fieldset input{width:auto}.signup-price{color:#69429b;margin:-8px 0 0;font-weight:800}.signup-card button,.signup-action,.signup-contact{color:#fff;font:inherit;text-align:center;cursor:pointer;background:#684199;border:0;border-radius:9px;padding:13px 18px;font-weight:800;text-decoration:none;display:inline-block}.signup-contact{margin-top:18px}.signup-card button:disabled{opacity:.55;cursor:wait}.signup-error{color:#a4263c!important}.signup-legal{color:#71687c;text-align:center;font-size:.72rem}.signup-status{text-align:center;justify-items:center;gap:14px;margin-top:10vh;display:grid}.signup-status__mark{width:64px}.signup-spinner{border:4px solid #ddd3e9;border-top-color:#684199;border-radius:50%;width:44px;height:44px;animation:.8s linear infinite signup-spin}@keyframes signup-spin{to{transform:rotate(360deg)}}@media (width<=600px){.signup-page{padding:20px 12px}.signup-card{padding:24px 18px}}:root{--radius:14px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Segoe UI,system-ui,-apple-system,sans-serif}html[data-theme=midnight],html:not([data-theme]){--bg:#0f1419;--surface:#1a2332;--border:#2d3a4f;--text:#e8eef7;--text-strong:#f8fafc;--muted:#8b9cb3;--in:#2d9d6f;--out:#d9a23a;--away:#7c6cf2;--vacation:#a855f7;--remote:#38bdf8;--sick:#f87171;--accent:#3b82f6;--events-heading:#bfdbfe;--events-count-fg:#dbeafe;--calendar-event-line:#bfdbfe;--calendar-event-when:#e0f2fe;--add-event-fg:#dbeafe;--modal-overlay:#0000008c}html[data-theme=ocean]{--bg:#0a1522;--surface:#111f32;--border:#1e3d52;--text:#e4f4fc;--text-strong:#f8fafc;--muted:#7ba8bd;--in:#14b8a6;--out:#eab308;--away:#6366f1;--vacation:#a78bfa;--remote:#22d3ee;--sick:#fb7185;--accent:#0ea5e9;--events-heading:#a5f3fc;--events-count-fg:#cffafe;--calendar-event-line:#a5f3fc;--calendar-event-when:#ecfeff;--add-event-fg:#cffafe;--modal-overlay:#050c18a6}html[data-theme=rose]{--bg:#18141a;--surface:#231f27;--border:#3d3545;--text:#f3e8ff;--text-strong:#fdf4ff;--muted:#b4a3c4;--in:#34d399;--out:#fbbf24;--away:#a78bfa;--vacation:#e879f9;--remote:#f472b6;--sick:#fb7185;--accent:#ec4899;--events-heading:#fbcfe8;--events-count-fg:#fce7f3;--calendar-event-line:#fbcfe8;--calendar-event-when:#fff1f2;--add-event-fg:#fce7f3;--modal-overlay:#0c080e94}html[data-theme=forest]{--bg:#0c1410;--surface:#152019;--border:#284032;--text:#e8f5ef;--text-strong:#f0fdf4;--muted:#8fb39a;--in:#22c55e;--out:#d4a017;--away:#818cf8;--vacation:#c084fc;--remote:#2dd4bf;--sick:#f87171;--accent:#4ade80;--events-heading:#bbf7d0;--events-count-fg:#dcfce7;--calendar-event-line:#bbf7d0;--calendar-event-when:#ecfccb;--add-event-fg:#dcfce7;--modal-overlay:#060c0899}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f1f5f9;--surface:#fff;--border:#cbd5e1;--text:#1e293b;--text-strong:#0f172a;--muted:#64748b;--in:#059669;--out:#d97706;--away:#4f46e5;--vacation:#9333ea;--remote:#0284c7;--sick:#dc2626;--accent:#2563eb;--events-heading:#1d4ed8;--events-count-fg:#1e40af;--calendar-event-line:#1e40af;--calendar-event-when:#1d4ed8;--add-event-fg:#1d4ed8;--modal-overlay:#0f172a59}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);-webkit-tap-highlight-color:transparent;touch-action:manipulation;margin:0}#root{min-height:100dvh}.board-wrap{box-sizing:border-box;height:100dvh;min-height:100dvh;max-height:100dvh;padding:12px 14px 10px;padding-bottom:calc(10px + env(safe-area-inset-bottom));grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-content:stretch;gap:12px;display:grid;overflow:hidden}.board-wrap.board-wrap--footer{grid-template-rows:auto auto minmax(0,1fr) auto}.board-shell-top{flex-direction:column;gap:8px;min-width:0;display:flex}.board-shell-top .board-header,.board-shell-error{margin-bottom:0}.app-update-notice{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));background:color-mix(in srgb, var(--accent) 7%, var(--surface));width:fit-content;max-width:100%;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;gap:8px;margin:-2px auto 0;padding:5px 9px 5px 11px;font-size:.72rem;line-height:1.25;display:flex}.app-update-notice button{color:var(--accent);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;border-radius:999px;padding:2px 7px;font-weight:700;text-decoration:underline}.app-update-notice button:hover{background:color-mix(in srgb, var(--accent) 10%, transparent)}.app-update-notice button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.presence-reminder{border:1px solid color-mix(in srgb, var(--away) 35%, var(--border));background:color-mix(in srgb, var(--away) 9%, var(--surface));color:var(--text);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:8px 11px;display:flex}.presence-reminder div{align-items:baseline;gap:8px;min-width:0;display:flex}.presence-reminder span{color:var(--muted);font-size:.78rem}.presence-reminder button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;flex:none;padding:5px 9px}@media (width<=699px){.presence-reminder,.presence-reminder div{align-items:flex-start}.presence-reminder div{flex-direction:column;gap:2px}}.board-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.visitor-name-suggestions{border:1px solid var(--border);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.visitor-name-suggestion{text-align:left;background:var(--bg);color:var(--text);border:none;border-bottom:1px solid var(--border);cursor:pointer;padding:9px 14px;font-size:.95rem}.visitor-name-suggestion:last-child{border-bottom:none}.visitor-name-suggestion:hover{background:var(--surface)}.visitor-name-suggestion--new{color:var(--muted);font-style:italic}.visitor-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;margin-left:auto;padding:3px 10px;font-size:.78rem}.visitor-btn:hover{background:var(--surface)}.visitor-card{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 12px;display:flex}.visitor-badge{background:var(--muted);color:var(--bg);letter-spacing:.04em;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.65rem;font-weight:700}.visitor-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.95rem;overflow:hidden}.visitor-meta{color:var(--muted);flex-shrink:0;font-size:.75rem}.visitor-signout-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;padding:3px 9px;font-size:.75rem}.visitor-signout-btn:hover{color:var(--text);border-color:var(--text)}.board-header-left{align-items:center;gap:10px;min-width:0;display:flex}.board-logo{object-fit:contain;flex-shrink:0;width:auto;max-width:120px;height:40px}.purplegopher-mark{border-radius:8px;flex:none;width:36px;height:36px}.board-brand-copy{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.board-header h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.25rem,3.5vw,1.75rem);font-weight:650}.offline-status{min-height:36px;color:var(--muted);background:color-mix(in srgb, var(--surface) 88%, transparent);white-space:nowrap;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:6px;padding:7px 11px;font-family:inherit;font-size:.72rem;font-weight:650;display:inline-flex}.offline-status small{color:var(--muted);font-size:.62rem;font-weight:500}.offline-status strong{color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:.66rem}.offline-status-dot{background:var(--muted);border-radius:50%;width:8px;height:8px}.offline-status--online .offline-status-dot{background:var(--in)}.offline-status--offline{background:color-mix(in srgb, var(--out) 10%, var(--surface))}.offline-status--offline .offline-status-dot{background:var(--out)}.offline-status--degraded{background:color-mix(in srgb, var(--sick) 10%, var(--surface))}.offline-status--degraded .offline-status-dot{background:var(--sick)}.offline-status--attention{background:color-mix(in srgb, var(--sick) 12%, var(--surface))}.offline-status--attention .offline-status-dot{background:var(--sick)}.header-sync-status{flex:none}.pending-sync-badge{background:color-mix(in srgb, var(--accent) 16%, var(--surface));color:var(--accent);letter-spacing:.02em;text-transform:uppercase;border-radius:999px;flex:none;padding:2px 6px;font-size:.6rem;font-weight:750}.sync-status-modal{max-width:680px}.sync-status-header{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:16px;padding:12px 12px 12px 18px;display:flex}.sync-status-header h2{border:0;padding:0}.sync-status-close{border:1px solid var(--border);min-height:36px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:9px;flex:none;padding:7px 12px;font-size:.82rem;font-weight:650}.sync-status-close:hover{border-color:var(--text);color:var(--text);background:var(--bg)}.sync-status-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sync-status-summary{color:var(--muted);margin:0 0 18px}.sync-operation-section+.sync-operation-section{border-top:1px solid var(--border);margin-top:22px;padding-top:18px}.sync-operation-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.sync-operation-heading h3,.sync-operation-section>h3{margin:0 0 10px}.sync-operation-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.sync-operation-list li{background:var(--bg);border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;padding:10px 12px;display:grid}.sync-operation-list li>span{font-weight:650}.sync-operation-list li>small{color:var(--muted);grid-column:1}.sync-operation-list li>button{grid-area:1/2/span 2}.sync-operation-list--attention li{border-left:3px solid var(--sick)}.storage-health{border:1px solid var(--border);border-left:4px solid var(--muted);background:var(--bg);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin:14px 0 20px;padding:12px 14px;display:flex}.storage-health--healthy{border-left-color:var(--in)}.storage-health--warning,.storage-health--unavailable{border-left-color:var(--sick)}.storage-health p{color:var(--muted);margin:3px 0}.storage-health small{color:var(--muted)}.roll-call-notes{border-top:1px solid var(--border);margin-top:24px;padding-top:18px}.roll-call-notes form{align-items:flex-end;gap:10px;display:flex}.roll-call-notes textarea{resize:vertical;flex:1;min-height:76px}.roll-call-notes ul{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.roll-call-notes li{background:var(--bg);border-radius:8px;grid-template-columns:auto 1fr;gap:12px;padding:10px 12px;display:grid}.roll-call-notes time{color:var(--muted);font-size:.8rem}.roll-call-supervisor{text-align:left;gap:6px;width:min(100%,360px);margin:16px auto;display:grid}.roll-call-supervisor span{color:var(--muted);font-size:.85rem;font-weight:650}.product-signature{color:var(--muted);text-align:right;flex-direction:column;flex:none;align-items:flex-end;padding-right:2px;font-size:.72rem;line-height:1.25;text-decoration:none;transition:color .15s;display:flex}.board-header>.product-signature{margin-left:auto}.product-signature span{color:var(--text);font-weight:600}.product-signature small{font-size:.66rem}.product-signature:hover,.product-signature:focus-visible{color:var(--text)}.product-signature:hover small{text-underline-offset:2px;text-decoration:underline}.product-signature:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.header-actions,.desktop-header-actions{align-items:center;gap:10px;display:flex}.mobile-header-menu{display:none}.board-wrap--menu-pending .desktop-header-actions,.board-wrap--menu-pending .mobile-header-menu,.board-wrap--menu-pending .product-signature{visibility:hidden}.board-wrap--desktop-menu .desktop-header-actions{display:none}.board-wrap--desktop-menu .mobile-header-menu{display:block;position:relative}.mobile-menu-toggle{border:1px solid var(--border);background:var(--surface);min-width:82px;min-height:44px;color:var(--text);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:.9rem;display:inline-flex}.mobile-menu-toggle:hover{border-color:color-mix(in srgb, var(--text) 35%, var(--border))}.mobile-menu-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mobile-menu-icon{gap:4px;width:18px;display:grid}.mobile-menu-icon i{background:currentColor;border-radius:2px;width:18px;height:2px;transition:transform .18s,opacity .15s;display:block}.mobile-menu-toggle[aria-expanded=true] .mobile-menu-icon i:first-child{transform:translateY(6px)rotate(45deg)}.mobile-menu-toggle[aria-expanded=true] .mobile-menu-icon i:nth-child(2){opacity:0}.mobile-menu-toggle[aria-expanded=true] .mobile-menu-icon i:last-child{transform:translateY(-6px)rotate(-45deg)}.mobile-menu-panel{z-index:30;border:1px solid var(--border);background:var(--surface);border-radius:12px;gap:6px;width:min(290px,100vw - 16px);padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 8px #00000047}.mobile-menu-panel>:where(button,a,span){text-align:left;white-space:normal;justify-content:space-between;align-items:center;width:100%;min-width:0;min-height:44px;display:flex}.mobile-menu-panel .add-event-btn,.mobile-menu-panel .refresh-btn,.mobile-menu-panel .link-admin,.mobile-menu-panel .toggle-panel-btn{border-radius:8px}.board-clock{-webkit-user-select:none;user-select:none;flex-direction:column;align-items:flex-end;line-height:1;display:flex}.board-clock-time{align-items:flex-start;gap:3px;display:flex}.board-clock-hhmm{letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:350}.board-clock-ss{color:var(--muted);font-variant-numeric:tabular-nums;min-width:2ch;margin-top:5px;font-size:1rem;font-weight:200;display:inline-block}.board-clock-date{letter-spacing:.14em;color:var(--muted);text-transform:uppercase;margin-top:3px;font-size:.62rem;font-weight:300}.refresh-btn,.link-admin{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;padding:10px 14px;font-size:.95rem;text-decoration:none}.refresh-btn:active,.link-admin:active,.toggle-panel-btn:active{transform:scale(.98)}.toggle-panel-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-family:inherit;font-size:.9rem;display:inline-flex}.toggle-panel-btn.on{border-color:var(--vacation);background:#a855f71f}.toggle-panel-btn.toggle-panel-btn--events.on{border-color:color-mix(in srgb, var(--accent) 75%, var(--border));background:color-mix(in srgb, var(--accent) 12%, transparent)}.toggle-panel-badge{color:#f5e6ff;background:#a855f759;border-radius:999px;justify-content:center;align-items:center;min-width:1.35rem;height:1.35rem;padding:0 6px;font-size:.75rem;font-weight:700;display:inline-flex}.toggle-panel-badge--events{background:color-mix(in srgb, var(--accent) 35%, var(--surface));color:var(--events-count-fg)}.board-footer{flex-direction:column;flex-shrink:0;gap:10px;min-height:0;padding-top:0;display:flex}.board-footer-split{grid-template-columns:1fr 1fr;align-items:stretch;gap:10px;display:grid}@media (width<=720px){.board-footer-split{grid-template-columns:1fr}}.board-footer-split--single{grid-template-columns:1fr}.add-event-btn{border:1px solid color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--add-event-fg);cursor:pointer;border-radius:10px;padding:10px 14px;font-family:inherit;font-size:.95rem}.add-event-btn:active{transform:scale(.98)}.modal-event-detail .modal-body.event-detail-body{max-height:min(65dvh,28rem)}.event-detail-title{word-break:break-word}.event-detail-when{color:var(--text-strong);margin:0 0 8px;font-size:.95rem}.event-detail-owner{color:var(--text-strong);margin:0 0 8px;font-size:.88rem}.events-owner-tag{color:var(--muted);font-weight:600}.modal-footer--event-detail{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.event-detail-notes{color:var(--muted);white-space:pre-wrap;word-break:break-word;margin:0 0 14px;font-size:.88rem}.event-detail-target-line{color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:8px;margin:0 0 12px;padding:8px 10px;font-size:.82rem}.event-detail-target-line.events-attendee-pill--below-min{border-color:color-mix(in srgb, #f59e0b 45%, var(--border));background:color-mix(in srgb, #f59e0b 10%, var(--bg))}.event-detail-target-line.events-attendee-pill--min-met{border-color:color-mix(in srgb, #22c55e 40%, var(--border));background:color-mix(in srgb, #22c55e 10%, var(--bg))}.event-detail-target-line.events-attendee-pill--at-max{border-color:color-mix(in srgb, var(--accent) 50%, var(--border));background:color-mix(in srgb, var(--accent) 12%, var(--bg))}.event-detail-cap-remark{font-weight:650}.event-detail-full-msg{margin:0 0 8px}.event-detail-subheading{text-transform:uppercase;letter-spacing:.04em;color:var(--events-heading);margin:0 0 8px;font-size:.8rem;font-weight:700}.event-detail-empty-list{margin:0 0 12px}.event-attendees-list{flex-direction:column;gap:6px;max-height:12rem;margin:0 0 14px;padding:0;list-style:none;display:flex;overflow-y:auto}.event-attendee-row{background:var(--bg);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:.9rem;display:flex}.event-attendee-remove{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;padding:4px 10px;font-family:inherit;font-size:.72rem;font-weight:600}.event-detail-add-form{border-top:1px solid var(--border);flex-direction:column;gap:10px;margin-top:8px;padding-top:12px;display:flex}.event-detail-add-btn{align-self:flex-start}.events-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 75%, var(--bg)) 0%, var(--surface) 100%);border:1px solid var(--border);border-bottom:3px solid var(--accent);border-radius:12px;min-width:0;padding:12px 14px}.events-panel-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.events-panel-hint{color:var(--muted);margin:0 0 10px;font-size:.78rem;display:block}.events-panel-title{letter-spacing:.04em;text-transform:uppercase;color:var(--events-heading);font-size:.95rem;font-weight:700}.events-panel-count{background:color-mix(in srgb, var(--accent) 22%, var(--surface));color:var(--events-count-fg);border-radius:999px;padding:4px 12px;font-size:.85rem;font-weight:700}.events-list{--events-row-slot:2.75rem;--events-visible:3;max-height:calc(var(--events-visible) * var(--events-row-slot) + (var(--events-visible) - 1) * 8px);overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;flex-direction:column;gap:8px;margin:0;padding:0 2px 0 0;list-style:none;display:flex;overflow-y:auto}.events-row{background:var(--bg);border:1px solid var(--border);border-radius:10px;flex-wrap:nowrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;display:flex}.events-row-main{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;margin:0;padding:0;display:block}.events-row-main:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.events-row-main:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.events-attendee-pill{background:color-mix(in srgb, var(--accent) 22%, var(--surface));color:var(--events-count-fg);white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:.72rem;font-weight:700}.events-attendee-pill--below-min{background:color-mix(in srgb, #f59e0b 28%, var(--surface));color:color-mix(in srgb, #f59e0b 90%, var(--text-strong))}.events-attendee-pill--min-met{background:color-mix(in srgb, #22c55e 26%, var(--surface));color:color-mix(in srgb, #22c55e 90%, var(--text-strong))}.events-attendee-pill--at-max{background:color-mix(in srgb, var(--accent) 40%, var(--surface));color:var(--text-strong);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 55%, transparent)}.events-info{flex:1;min-width:0}.events-one-line{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.88rem;line-height:1.35;display:block;overflow:hidden}.events-one-line-title{color:var(--text-strong);font-weight:650}.events-remove{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:6px 12px;font-family:inherit;font-size:.78rem;font-weight:600}.vacation-panel-empty{color:var(--muted);margin:0;font-size:.9rem}.upcoming-leave-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--in) 12%, var(--surface)) 0%, var(--surface) 100%);border:1px solid var(--border);border-bottom:3px solid var(--in);border-radius:12px;padding:12px 14px}.upcoming-leave-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.upcoming-leave-head-left{flex-direction:column;gap:2px;display:flex}.upcoming-leave-title{letter-spacing:.04em;text-transform:uppercase;color:var(--in);align-items:center;gap:7px;font-size:.95rem;font-weight:700;display:flex}.upcoming-leave-count{background:var(--in);color:#fff;letter-spacing:0;text-transform:none;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-flex}.upcoming-leave-hint{color:var(--muted);margin-top:4px;font-size:.78rem;display:block}.upcoming-leave-list{--upcoming-leave-row-slot:3.625rem;--upcoming-leave-visible:3;max-height:calc(var(--upcoming-leave-visible) * var(--upcoming-leave-row-slot) + (var(--upcoming-leave-visible) - 1) * 8px);overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;flex-direction:column;gap:8px;margin:0;padding:0 2px 0 0;list-style:none;display:flex;overflow-y:auto}.upcoming-leave-row{background:var(--bg);border:1px solid var(--border);border-radius:10px;flex-wrap:nowrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.upcoming-leave-info{flex-direction:column;flex:1;align-items:flex-start;gap:4px;min-width:0;display:flex}.upcoming-leave-top{align-items:center;gap:8px;min-width:0;max-width:100%;display:flex}.upcoming-leave-name{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:650;overflow:hidden}.upcoming-leave-kind{text-transform:uppercase;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.65rem;font-weight:800}.upcoming-leave-kind.vacation{background:color-mix(in srgb, var(--vacation) 22%, transparent);color:var(--vacation)}.upcoming-leave-kind.sick{background:color-mix(in srgb, var(--sick) 20%, transparent);color:var(--sick)}.upcoming-leave-kind.remote{background:color-mix(in srgb, var(--remote) 18%, transparent);color:var(--remote)}.upcoming-leave-dates{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.85rem;overflow:hidden}.upcoming-leave-remove{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:6px 12px;font-family:inherit;font-size:.78rem;font-weight:600}.schedule-leave-form{flex-direction:column;gap:12px;display:flex}.field-label{color:var(--muted);flex-direction:column;gap:6px;font-size:.82rem;font-weight:600;display:flex}.field-control{border:1px solid var(--border);background:var(--bg);color:var(--text);accent-color:var(--accent);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:1rem}.field-control:is(input[type=date],input[type=time],input[type=number]){color-scheme:inherit}.field-control::-webkit-datetime-edit{color:var(--text)}.field-control::-webkit-datetime-edit-fields-wrapper{color:var(--text)}.field-control::-webkit-datetime-edit-text{color:var(--text)}.field-control::-webkit-datetime-edit-hour-field{color:var(--text)}.field-control::-webkit-datetime-edit-minute-field{color:var(--text)}.field-control::-webkit-datetime-edit-day-field{color:var(--text)}.field-control::-webkit-datetime-edit-month-field{color:var(--text)}.field-control::-webkit-datetime-edit-year-field{color:var(--text)}.field-control::-webkit-calendar-picker-indicator{opacity:.72;cursor:pointer}.field-control::-webkit-calendar-picker-indicator:hover{opacity:1}.field-textarea{resize:vertical;min-height:4.5rem;line-height:1.4}.field-optional{color:var(--muted);font-weight:500}.field-row-times{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=480px){.field-row-times{grid-template-columns:1fr}}.modal-actions-row{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.schedule-chip-list{flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.schedule-chip-list li{border:1px solid var(--border);background:var(--bg);border-radius:999px;align-items:center;gap:8px;padding:6px 7px 6px 11px;display:inline-flex}.schedule-chip-list button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:3px 7px}.modal-inline-btn{flex:1;min-width:120px}.modal-submit-btn{text-align:center;flex:1;min-width:120px}.modal-leave-manager .modal h2{flex-shrink:0}.leave-manager-body{max-height:min(72dvh,560px);overflow-y:auto}.leave-manager-section{margin-bottom:18px}.leave-manager-section h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;font-size:.85rem;font-weight:600}.leave-manager-section:last-child{margin-bottom:0}.leave-manager-heading{color:var(--text-strong);margin:0 0 6px;font-size:.9rem;font-weight:650}.leave-manager-hint{color:var(--muted);margin:0 0 10px;font-size:.78rem;line-height:1.35}.leave-manager-hint.none-yet{margin:0}.leave-manager-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.leave-manager-row{background:var(--bg);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;display:flex}.leave-manager-dates{color:var(--muted);flex:1;min-width:0;font-size:.85rem}.leave-manager-remove{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:.78rem;font-weight:600}.board-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;min-height:0;display:grid;overflow:hidden}@media (width<=900px){.board-columns{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:1fr}}.column{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 75%, var(--bg)) 0%, var(--surface) 100%);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.column-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.9rem;font-weight:650;display:flex}.column-head.out{border-left:4px solid var(--out)}.column-head.in{border-left:4px solid var(--in)}.column-head.away{border-left:4px solid var(--away)}.count-pill{background:var(--bg);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:.8rem}.column-body{overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:auto;scrollbar-color:color-mix(in srgb, var(--muted) 70%, transparent) #00000047;-webkit-overflow-scrolling:touch;flex:1 1 0;grid-auto-rows:max-content;grid-auto-flow:row;align-content:start;gap:6px;min-width:0;min-height:0;padding:6px;display:grid;overflow:hidden auto}.column-body::-webkit-scrollbar{width:10px}.column-body::-webkit-scrollbar-track{background:#00000038;border-radius:6px}.column-body::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--border) 70%, var(--muted));background-clip:padding-box;border:2px solid #0000;border-radius:6px}.column-body::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--muted) 75%, var(--surface))}.person-card{background:var(--bg);border:1px solid var(--border);text-align:left;color:var(--text);border-radius:8px;min-height:38px;padding:0;font-family:inherit;position:relative;overflow:hidden}.person-card--contact-open{z-index:3;overflow:visible}.person-card-row{background:color-mix(in srgb, var(--border) 40%, transparent);border-bottom:1px solid var(--border);min-width:0;min-height:var(--person-card-height,58px);align-items:center;gap:6px;padding:5px 6px;display:flex}.person-card-ident{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;align-items:center;gap:8px;margin:0;padding:3px 4px;transition:background .12s;display:flex;overflow:hidden}.person-card-ident:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.person-card-ident:active{background:color-mix(in srgb, var(--accent) 14%, transparent)}.person-card-ident:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.person-card-actions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:4px;display:flex}.contact-tool-btn{border:1px solid var(--border);background:var(--surface);width:1.65rem;height:1.65rem;color:var(--muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;font-family:inherit;display:inline-flex}.contact-tool-btn svg{flex-shrink:0;width:13px;height:13px}.contact-tool-btn.active{border-color:var(--accent);color:var(--text-strong);background:#3b82f626}.person-details-btn{border:1px solid var(--border);width:1.65rem;height:1.65rem;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.person-details-btn svg{width:13px;height:13px}.person-pin-btn{border:1px dashed var(--border);width:1.65rem;height:1.65rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;font-family:inherit;display:inline-flex}.person-pin-btn.locked{color:#fcd34d;background:#fbbf2414;border-style:solid;border-color:#fbbf2473}.person-pin-btn svg{width:13px;height:13px}.schedule-leave-btn{text-transform:uppercase;letter-spacing:.04em;border:1px solid color-mix(in srgb, var(--vacation) 50%, transparent);background:color-mix(in srgb, var(--vacation) 12%, transparent);color:var(--vacation);cursor:pointer;border-radius:5px;flex-shrink:0;padding:3px 7px;font-family:inherit;font-size:.6rem;font-weight:700}.contact-reveal{z-index:4;background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 55%, var(--border));word-break:break-all;border-radius:7px;max-width:calc(100% - 12px);padding:7px 10px;font-size:.78rem;position:absolute;top:calc(100% + 2px);right:6px;box-shadow:0 4px 8px #00000059}.contact-reveal a{color:var(--accent)}.person-card-sub{background:0 0;padding:4px 8px 7px}.person-name{letter-spacing:-.02em;min-width:0;color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;-webkit-font-smoothing:antialiased;flex:1 1 0;margin:0;font-size:clamp(.82rem,1.95vw,.92rem);font-weight:700;line-height:1.15;display:block;overflow:hidden}.status-chip{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;margin-bottom:4px;padding:1px 5px;font-size:.55rem;font-weight:700;display:inline-block}.status-chip--row{flex-shrink:0;margin-bottom:0;line-height:1.2}.status-chip.in{background:color-mix(in srgb, var(--in) 22%, transparent);color:var(--in)}.status-chip.out{background:color-mix(in srgb, var(--out) 22%, transparent);color:var(--out)}.status-chip.vacation{background:color-mix(in srgb, var(--vacation) 20%, transparent);color:var(--vacation)}.status-chip.remote{background:color-mix(in srgb, var(--remote) 18%, transparent);color:var(--remote)}.status-chip.sick{background:color-mix(in srgb, var(--sick) 20%, transparent);color:var(--sick)}.reason-line{color:var(--muted);margin:0;font-size:.68rem;line-height:1.25}.contact-row{color:var(--muted);word-break:break-word;flex-direction:column;gap:2px;font-size:.82rem;display:flex}.contact-row a{color:var(--accent);text-decoration:none}.empty-hint{color:var(--muted);text-align:center;padding:16px;font-size:.9rem}.column-body .empty-hint{padding:12px 10px;font-size:.82rem}.modal-backdrop{background:var(--modal-overlay);z-index:50;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=600px){.modal-backdrop{align-items:center}}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:min(520px,100%);max-height:85dvh;display:flex;overflow:hidden}.modal--wide{width:min(680px,100%)}.reason-modal-grid{grid-template-columns:180px 1fr;align-items:center;gap:10px 16px;display:grid}.reason-modal-grid input[type=text],.reason-modal-grid input:not([type=checkbox]):not([type=number]){width:100%}.reason-modal-label{color:var(--muted);text-align:right;padding-right:4px;font-size:.875rem}.reason-recent-setting{min-width:0;color:var(--muted);justify-content:space-between;align-items:center;gap:16px;font-size:.82rem;line-height:1.4;display:flex}.reason-recent-setting-input{flex:none;align-items:center;gap:7px;display:flex}.reason-recent-setting-input input{width:88px;min-width:0}.modal h2{border-bottom:1px solid var(--border);margin:0;padding:16px 18px;font-size:1.1rem}.modal-pin-gate>.leave-manager-hint,.modal-pin-settings>.leave-manager-hint{margin:0;padding:12px 18px 0}.modal-pin-gate>.schedule-leave-form,.modal-pin-settings>.schedule-leave-form{padding:12px 18px 18px}.modal-short-visit{width:min(680px,100%)}.modal-short-visit>.leave-manager-hint{margin:0;padding:14px 18px 4px}.modal-short-visit>.modal-actions-row{flex-wrap:nowrap;margin:0;padding:12px 18px 18px}.modal-short-visit .modal-inline-btn,.modal-short-visit .modal-submit-btn{min-width:0;min-height:52px}.short-visit-error{margin:8px 18px 0}@media (width<=640px){.modal-short-visit>.modal-actions-row{flex-direction:column}.modal-short-visit .modal-inline-btn,.modal-short-visit .modal-submit-btn{width:100%}}.modal-body{flex-direction:column;gap:10px;padding:12px;display:flex;overflow-y:auto}.reason-btn{text-align:left;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);cursor:pointer;border-radius:12px;padding:16px 18px;font-size:1.05rem;display:block}.reason-btn--selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent)}.reason-btn:active{background:color-mix(in srgb, var(--accent) 14%, var(--bg))}.modal-footer{border-top:1px solid var(--border);padding:12px 16px}.modal-footer--split{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.modal-footer--split .cancel-btn,.modal-footer--split .btn{flex:0 auto;width:auto;padding-top:14px;padding-bottom:14px}.modal-footer--split .cancel-btn:first-child{margin-right:auto}.reason-detail-label{color:var(--text);flex-direction:column;gap:8px;font-size:.95rem;display:flex}.reason-detail-input{border:1px solid var(--border);background:var(--bg);width:100%;min-height:72px;color:var(--text);font:inherit;resize:vertical;border-radius:12px;padding:12px}.cancel-btn{border:1px solid var(--border);width:100%;color:var(--muted);cursor:pointer;background:0 0;border-radius:12px;padding:14px;font-size:1rem}.admin-wrap{box-sizing:border-box;width:100%;max-width:1600px;min-height:100dvh;margin:0 auto;padding:clamp(16px,2vw,28px)}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.admin-header h1{margin:0;font-size:1.5rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:16px}.panel h2{margin:0 0 12px;font-size:1.1rem}.form-row{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}input,select{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;min-width:140px;padding:10px 12px;font-size:1rem}.btn{border:1px solid var(--border);background:var(--accent);color:#fff;cursor:pointer;border-radius:10px;padding:10px 16px;font-size:.95rem}.btn.secondary{background:var(--surface);color:var(--text)}.btn.danger{background:#b91c1c;border-color:#991b1b}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}th{color:var(--muted);font-weight:600}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:400px;margin:15dvh auto;padding:24px}.login-card h1{margin:0 0 16px;font-size:1.35rem}.login-card input{width:100%;margin-bottom:12px}.error{color:#fecaca;margin-bottom:8px;font-size:.9rem}.tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.tab{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:10px;padding:10px 14px}.tab.active{border-color:var(--accent);background:#3b82f626}.upgrade-feature{border-style:dashed}.tab.upgrade-feature{color:var(--muted)}.upgrade-badge{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--text);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;align-items:center;margin-left:5px;padding:2px 6px;font-size:.62rem;font-weight:800;display:inline-flex}.upgrade-modal{width:min(460px,100vw - 32px)}.upgrade-modal h2{margin-top:0}.upgrade-modal p{color:var(--muted);line-height:1.6}.upgrade-modal .modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.report-filters{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:12px;display:flex}.report-filter-grow{flex:12rem;min-width:10rem}.report-filter-grow input{box-sizing:border-box;width:100%}.report-filter-narrow input{width:5rem}.report-filters .report-select,.report-filters input[type=number],.report-filters input[type=search]{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:.92rem}.report-filter-checks{flex-wrap:wrap;align-items:center;gap:8px 16px;width:100%;padding:8px 0;display:flex}.report-check{color:var(--muted);cursor:pointer;flex-direction:row;align-items:center;gap:8px;margin:0;font-size:.85rem;display:flex}.report-check input{cursor:pointer;margin:0}.report-filter-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.report-table-wrap{border:1px solid var(--border);border-radius:10px;margin-bottom:4px;overflow-x:auto}.report-table-wrap--wide{max-width:100%}.report-table{border-collapse:collapse;width:100%;font-size:.88rem}.report-table th,.report-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:8px 10px}.report-table thead th{background:color-mix(in srgb, var(--border) 35%, transparent);color:var(--text-strong);font-weight:650}.report-table tbody tr:last-child td{border-bottom:none}.report-table-empty{text-align:center;color:var(--muted);font-style:italic}.report-table--events .report-detail-cell{min-width:14rem;max-width:28rem}.report-nowrap{white-space:nowrap}.panel-subhead-with-meta{flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.report-subhead-meta{color:var(--muted);margin-left:.5rem;font-size:.82rem;font-weight:500}.report-detail-stack{flex-direction:column;gap:6px;display:flex}.report-detail-prompt{color:var(--muted);font-size:.8rem;line-height:1.35}.report-detail-prompt--generic{font-style:italic}.report-detail-prompt-label{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);margin-right:6px;font-size:.68rem;font-weight:700;display:inline-block}.report-detail-answer{color:var(--text);white-space:pre-wrap;word-break:break-word;font-size:.88rem}.report-detail-missing{color:#b45309;font-size:.82rem}.report-detail-empty{color:var(--muted)}.report-filters label{color:var(--muted);flex-direction:column;gap:4px;font-size:.85rem;display:flex}.panel h3{color:var(--text-strong);margin:20px 0 10px;font-size:1rem;font-weight:650}.panel h3:first-of-type{margin-top:0}.admin-note{color:var(--muted);margin:0 0 12px;font-size:.9rem;line-height:1.45}.mono{word-break:break-all;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.88em}.system-table th[scope=row]{width:12rem;max-width:40%;color:var(--muted);vertical-align:top;font-weight:600}.offline-device-table{min-width:760px}.offline-device-id{max-width:190px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:.75rem;overflow:hidden}.device-state{background:color-mix(in srgb, var(--muted) 16%, transparent);border-radius:999px;padding:3px 8px;font-size:.78rem;font-weight:700;display:inline-flex}.device-state--active{background:color-mix(in srgb, var(--in) 18%, transparent);color:var(--in)}.device-state--revoked,.device-state--expired{color:var(--muted)}.link-admin--disabled{cursor:not-allowed;opacity:.5}.admin-system-document{border:1px solid var(--border);background:color-mix(in srgb, var(--accent) 4%, var(--surface));border-radius:10px;justify-content:space-between;align-items:center;gap:18px;margin:0 0 18px;padding:13px 15px;display:flex}.admin-system-document>div{flex-direction:column;gap:3px;min-width:0;display:flex}.admin-system-document strong{color:var(--text-strong);font-size:.86rem}.admin-system-document span{color:var(--muted);font-size:.76rem;line-height:1.4}.admin-system-document a{color:var(--accent);text-underline-offset:3px;flex:none;font-size:.78rem;font-weight:650}.form-grid{border-collapse:collapse;width:100%}.form-grid th[scope=row]{text-align:left;width:11rem;color:var(--muted);vertical-align:middle;white-space:nowrap;padding:6px 12px 6px 0;font-weight:600}.form-grid td{padding:6px 0}.form-grid input,.form-grid select{width:100%}.form-grid input[type=number]{width:80px}.attendance-automation-field{grid-template-columns:minmax(150px,1fr) auto;align-items:center;gap:10px;display:grid}.attendance-automation-actions{white-space:nowrap;align-items:center;gap:8px;display:flex}.security-data-page{background:var(--bg);min-height:100dvh;color:var(--text)}.security-data-hero{border-bottom:1px solid var(--border);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 14%, var(--surface)), var(--surface) 58%);padding:clamp(24px,5vw,68px) max(24px,50vw - 580px)}.security-data-back{color:var(--muted);margin-bottom:28px;font-size:.86rem;text-decoration:none;display:inline-block}.security-data-back:hover{color:var(--accent)}.security-data-brand{color:var(--text-strong);align-items:center;gap:9px;margin-bottom:38px;font-weight:750;display:flex}.security-data-brand img{width:28px;height:28px}.security-data-eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:.76rem;font-weight:800}.security-data-hero h1{max-width:820px;color:var(--text-strong);letter-spacing:-.045em;margin:0;font-size:clamp(2.2rem,5vw,4.8rem);line-height:.98}.security-data-intro{max-width:760px;color:var(--muted);margin:24px 0 0;font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.65}.security-data-summary{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.security-data-summary span{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));background:color-mix(in srgb, var(--accent) 6%, var(--surface));color:var(--text-strong);border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:700}.security-data-reviewed{color:var(--muted);margin:18px 0 0;font-size:.72rem}.security-data-layout{grid-template-columns:210px minmax(0,820px);gap:clamp(30px,6vw,90px);max-width:1160px;margin:0 auto;padding:clamp(36px,6vw,80px) 24px;display:grid}.security-data-nav{flex-direction:column;align-self:start;gap:12px;font-size:.78rem;display:flex;position:sticky;top:24px}.security-data-nav strong{color:var(--text-strong);margin-bottom:4px}.security-data-nav a{color:var(--muted);text-decoration:none}.security-data-nav a:hover{color:var(--accent)}.security-data-content{min-width:0}.security-data-content section{padding:0 0 clamp(42px,7vw,78px);scroll-margin-top:24px;position:relative}.security-data-content section+section{border-top:1px solid var(--border);padding-top:clamp(42px,7vw,78px)}.security-data-number{color:var(--accent);letter-spacing:.14em;margin:0 0 9px;font-size:.72rem;font-weight:850}.security-data-content h2{color:var(--text-strong);letter-spacing:-.025em;margin:0 0 20px;font-size:clamp(1.55rem,3vw,2.25rem)}.security-data-content h3{color:var(--text-strong);margin:0 0 8px;font-size:.96rem}.security-data-content p,.security-data-content li{color:var(--muted);line-height:1.7}.security-data-content strong{color:var(--text-strong)}.security-data-content ul{padding-left:20px}.security-data-content li+li{margin-top:7px}.security-data-content a{color:var(--accent);text-underline-offset:3px}.security-data-callout{border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--surface));margin:24px 0;padding:18px 20px}.security-data-callout p{margin:7px 0 0}.security-data-source{margin-top:22px;font-size:.78rem}.security-data-grid,.security-data-responsibility{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.security-data-grid>div,.security-data-responsibility>div{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:18px}.security-data-grid p,.security-data-responsibility p{margin:0;font-size:.88rem}.security-data-responsibility{grid-template-columns:repeat(3,minmax(0,1fr))}.security-data-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:20px;padding:24px max(24px,50vw - 580px);font-size:.78rem;display:flex}.security-data-footer a{color:var(--accent)}@media (width<=760px){.security-data-layout{grid-template-columns:1fr}.security-data-nav{border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:26px;display:grid;position:static}.security-data-nav strong{grid-column:1/-1}.security-data-grid,.security-data-responsibility{grid-template-columns:1fr}.security-data-footer{flex-direction:column}.admin-system-document{flex-direction:column;align-items:flex-start;gap:10px}}@media (width<=640px){.attendance-automation-field{grid-template-columns:1fr}.attendance-automation-actions{justify-content:flex-start}}.vkb{z-index:2000;padding:10px 10px calc(10px + env(safe-area-inset-bottom,0px));background:var(--panel,#1a2129);border-top:1px solid var(--border,#2a3441);-webkit-user-select:none;user-select:none;touch-action:manipulation;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #00000059}.vkb-bar{justify-content:space-between;align-items:center;width:100%;max-width:720px;display:flex}.vkb-title{color:var(--muted,#8a97a6);font-size:.85em}.vkb-row{justify-content:center;gap:8px;width:100%;max-width:720px;display:flex}.vkb-key{min-width:0;min-height:52px;color:var(--fg,#e6edf3);background:var(--card,#232c36);border:1px solid var(--border,#2a3441);cursor:pointer;border-radius:10px;flex:1 1 0;padding:0 6px;font-size:1.15rem;font-weight:600}.vkb-key:active{background:var(--accent,#2f6feb);color:#fff}.vkb-util{min-width:64px;color:var(--muted,#8a97a6);flex:none}.vkb-active{background:var(--accent,#2f6feb);color:#fff}.vkb-space{flex:auto}.vkb-enter{min-width:96px}.postgres-version{background:var(--bg);border:1px solid var(--border);color:var(--muted);word-break:break-word;white-space:pre-wrap;border-radius:8px;margin:10px 0 0;padding:10px 12px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.78rem;line-height:1.4}.calendar-page{min-height:100dvh;padding:12px clamp(16px,3vw,40px) 24px;padding-bottom:calc(24px + env(safe-area-inset-bottom));box-sizing:border-box;width:100%;max-width:min(1920px,100%);margin:0 auto}.calendar-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.calendar-header-left{align-items:center;gap:14px;min-width:0;display:flex}.calendar-back{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;flex-shrink:0;padding:10px 14px;font-size:.95rem;font-weight:600;text-decoration:none}.calendar-back:active{transform:scale(.98)}.calendar-title{letter-spacing:-.02em;margin:0;font-size:clamp(1.25rem,3.5vw,1.65rem);font-weight:650}.calendar-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.calendar-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.calendar-nav-btn{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text-strong);cursor:pointer;border-radius:10px;font-family:inherit;font-size:1.35rem;line-height:1}.calendar-nav-btn:active{transform:scale(.97)}.calendar-month-label{min-width:10rem;font-size:1.1rem;font-weight:700}.calendar-today-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;margin-left:auto;padding:8px 14px;font-family:inherit;font-size:.9rem}@media (width<=520px){.calendar-today-btn{text-align:center;width:100%;margin-left:0}}.calendar-weekday-row{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;display:grid}.calendar-weekday-cell{text-align:center;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:6px 2px;font-size:.72rem;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:20px;display:grid}.calendar-cell{border:1px solid var(--border);background:var(--surface);border-radius:10px;min-height:4.5rem}.calendar-cell--pad{pointer-events:none;background:0 0;border:none;min-height:4.5rem}.calendar-cell--day{cursor:pointer;color:inherit;text-align:left;flex-direction:column;align-items:stretch;min-width:0;padding:6px 6px 8px;font-family:inherit;display:flex}.calendar-cell--day:hover{background:color-mix(in srgb, var(--accent) 10%, var(--surface))}.calendar-cell--today{border-color:var(--accent);box-shadow:0 0 0 1px #3b82f659}.calendar-cell--selected{background:#3b82f61f;border-color:#3b82f680}.calendar-day-num{color:var(--text-strong);font-size:.95rem;font-weight:700}.calendar-cell-badges{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:4px;margin-top:auto;padding-top:4px;display:flex}.calendar-cell-events{text-align:left;flex-direction:column;flex:auto;gap:2px;min-width:0;min-height:0;margin-top:4px;display:flex;overflow:hidden}.calendar-cell-event-line{min-width:0;display:block}.calendar-cell-event-text{color:var(--calendar-event-line);text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;font-weight:650;line-height:1.25;display:block;overflow:hidden}.calendar-cell-event-sep{color:color-mix(in srgb, var(--calendar-event-line) 45%, var(--muted));font-weight:500}.calendar-cell-event-when{color:var(--calendar-event-when);font-variant-numeric:tabular-nums;font-weight:600}.calendar-cell-more{color:var(--muted);font-size:.62rem;font-weight:600;line-height:1.2}.calendar-cell-leave{flex-direction:column;gap:2px;min-width:0;margin-top:2px;display:flex;overflow:hidden}.calendar-cell-leave-text{text-overflow:ellipsis;white-space:nowrap;border-radius:4px;padding:0 4px;font-size:.65rem;font-weight:650;line-height:1.3;display:block;overflow:hidden}.calendar-cell-leave-text--vacation{background:color-mix(in srgb, var(--vacation) 18%, transparent);color:var(--vacation)}.calendar-cell-leave-text--sick{background:color-mix(in srgb, var(--sick) 18%, transparent);color:var(--sick)}.calendar-cell-leave-text--remote{background:color-mix(in srgb, var(--remote) 18%, transparent);color:var(--remote)}.calendar-badge{text-align:center;border-radius:6px;min-width:1.1rem;padding:2px 6px;font-size:.65rem;font-weight:800}.calendar-badge--leave{color:#86efac;background:#2d9d6f40}.calendar-badge--event{background:color-mix(in srgb, var(--accent) 22%, var(--surface));color:var(--events-count-fg)}.calendar-detail{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px 18px}.calendar-detail-title{margin:0 0 14px;font-size:1.05rem;font-weight:650}.calendar-detail-empty{color:var(--muted);margin:0;font-size:.95rem}.calendar-detail-empty-inline{color:var(--muted);margin:0;font-size:.88rem}.calendar-detail-columns{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=700px){.calendar-detail-columns{grid-template-columns:1fr}}.calendar-detail-block-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 10px;font-size:.78rem;font-weight:800}.calendar-detail-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.calendar-detail-row{background:var(--bg);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.calendar-detail-row>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-detail-name{color:var(--text-strong);font-weight:650}.calendar-kind-pill{text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:.65rem;font-weight:800}.calendar-kind-pill.vacation{background:color-mix(in srgb, var(--vacation) 22%, transparent);color:var(--vacation)}.calendar-kind-pill.sick{background:color-mix(in srgb, var(--sick) 20%, transparent);color:var(--sick)}.calendar-kind-pill.remote{background:color-mix(in srgb, var(--remote) 18%, transparent);color:var(--remote)}.calendar-detail-meta{color:var(--muted);font-size:.82rem}.calendar-event-time{color:var(--events-heading);font-size:.78rem;font-weight:600}.calendar-detail-notes{color:var(--muted);white-space:pre-wrap;word-break:break-word;font-size:.82rem;line-height:1.35}.reason-recent-suggestions{margin-bottom:12px}.reason-recent-label{color:var(--muted);margin:0 0 6px;font-size:.75rem}.reason-recent-chips{flex-wrap:wrap;gap:6px;display:flex}.reason-recent-chip{background:color-mix(in srgb, var(--accent) 15%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);color:var(--text);cursor:pointer;border-radius:20px;padding:4px 12px;font-size:.82rem;transition:background .12s,border-color .12s}.reason-recent-chip:hover{background:color-mix(in srgb, var(--accent) 28%, var(--surface))}.reason-recent-chip--active{background:color-mix(in srgb, var(--accent) 35%, var(--surface));border-color:var(--accent);color:var(--text-strong)}.event-detail-cols{border:1px solid var(--border);border-radius:8px;grid-template-columns:1fr 1fr;gap:0;margin-top:12px;display:grid;overflow:hidden}.event-detail-col{min-height:120px;max-height:260px;padding:10px 12px;overflow-y:auto}.event-detail-col--signed{border-left:1px solid var(--border);background:color-mix(in srgb, var(--surface) 60%, var(--bg))}.event-detail-col-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;margin:0 0 8px;font-size:.72rem;font-weight:700;display:flex}.event-detail-col-count{background:var(--border);color:var(--text);letter-spacing:0;text-transform:none;border-radius:10px;padding:1px 7px;font-size:.7rem;font-weight:600}.event-detail-col-hint{margin:4px 0 0;font-size:.8rem}.event-detail-person-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.event-detail-person-row{border-radius:5px;justify-content:space-between;align-items:center;gap:6px;padding:4px 6px;transition:background .12s;display:flex}.event-detail-person-row:hover{background:color-mix(in srgb, var(--border) 50%, transparent)}.event-detail-person-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.85rem;overflow:hidden}.event-detail-person-btn{cursor:pointer;opacity:.6;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:1rem;line-height:1;transition:opacity .12s,background .12s;display:flex}.event-detail-person-btn:hover:not(:disabled){opacity:1}.event-detail-person-btn:disabled{cursor:default;opacity:.3}.event-detail-person-btn--add{background:color-mix(in srgb, var(--in) 25%, transparent);color:var(--in)}.event-detail-person-btn--add:hover:not(:disabled){background:color-mix(in srgb, var(--in) 40%, transparent)}.event-detail-person-btn--remove{background:color-mix(in srgb, var(--sick) 20%, transparent);color:var(--sick)}.event-detail-person-btn--remove:hover:not(:disabled){background:color-mix(in srgb, var(--sick) 35%, transparent)}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--muted) 60%, transparent) #0003}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0000002e;border-radius:6px}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--border) 70%, var(--muted));background-clip:padding-box;border:2px solid #0000;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--muted) 75%, var(--surface));background-clip:padding-box}.scan-toast{bottom:calc(24px + env(safe-area-inset-bottom));white-space:nowrap;z-index:200;pointer-events:none;border-radius:12px;padding:12px 22px;font-size:1rem;font-weight:650;animation:.18s scan-toast-in,.25s 2.25s forwards scan-toast-out;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000059}.scan-toast--ok{background:color-mix(in srgb, var(--in) 18%, var(--surface));border:1px solid color-mix(in srgb, var(--in) 50%, transparent);color:var(--in)}.scan-toast--err{background:color-mix(in srgb, var(--sick) 15%, var(--surface));border:1px solid color-mix(in srgb, var(--sick) 45%, transparent);color:var(--sick)}@keyframes scan-toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes scan-toast-out{0%{opacity:1}to{opacity:0}}input[type=number]::-webkit-inner-spin-button{opacity:1;cursor:pointer}input[type=number]::-webkit-outer-spin-button{opacity:1;cursor:pointer}.fob-recent-entry{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;border-radius:10px;flex-direction:row;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:10px 14px;transition:background .15s;display:flex;overflow:hidden}.fob-recent-entry:hover{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-color:color-mix(in srgb, var(--accent) 40%, transparent)}.fob-recent-info{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.9rem;overflow:hidden}.fob-recent-person,.fob-recent-sep{color:var(--muted)}.fob-recent-reason{font-weight:600}.fob-recent-detail{color:var(--muted)}.fob-recent-time{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:.78rem}.platform-admin{width:min(1080px,100% - 32px);min-height:100dvh;margin:0 auto;padding:32px 0}.platform-admin--login{place-items:center;display:grid}.platform-login,.platform-create{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;width:min(420px,100%);padding:24px;display:flex}.platform-login{text-align:center;align-items:stretch}.platform-login h1,.platform-login p,.platform-create h2{margin:0}.platform-login p,.platform-header p{color:var(--muted)}.platform-mark{width:52px;height:52px;margin:0 auto}.platform-login input,.platform-create input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:7px;padding:10px 12px}.platform-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.platform-header h1,.platform-header p{margin:0}.platform-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}.platform-tenant-list{flex-direction:column;gap:8px;display:flex}.platform-tenant-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.platform-tenant-row div{flex-direction:column;gap:3px;min-width:0;display:flex}.platform-tenant-row span{color:var(--muted);font-size:.8rem}.platform-tenant-actions{flex-direction:row!important;gap:8px!important;display:flex!important}.platform-modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#02060ce6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.platform-modal{border:1px solid var(--border);background:var(--surface);width:min(620px,100%);max-height:calc(100vh - 40px);color:var(--text);border-radius:16px;padding:22px;overflow:auto;box-shadow:0 8px 8px #00000059}.platform-modal-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.platform-modal-header h2,.platform-modal-header p,.platform-maintenance-section h3,.platform-maintenance-section p{margin:0}.platform-modal-header p,.platform-maintenance-section p{color:var(--muted)}.platform-modal-error{margin:14px 0 0}.platform-maintenance-section{border-top:1px solid var(--line);gap:12px;margin-top:22px;padding-top:20px;display:grid}.platform-maintenance-section label{color:var(--muted);gap:6px;font-size:.86rem;display:grid}.platform-maintenance-section input[type=password],.platform-maintenance-section input:not([type]){border:1px solid var(--line);background:var(--bg);width:100%;color:var(--text);border-radius:8px;padding:10px 12px}.platform-maintenance-section label:has(input[type=radio]){color:var(--text);grid-template-columns:none;align-items:flex-start;gap:9px;display:flex}.platform-danger-zone{border-color:#7f1d1d}.platform-create label{color:var(--muted);flex-direction:column;gap:5px;font-size:.82rem;display:flex}.platform-plans{border:1px solid var(--border);background:var(--surface);border-radius:14px;margin-bottom:24px;padding:20px}.platform-section-header{justify-content:space-between;align-items:start;gap:20px;margin-bottom:14px;display:flex}.platform-section-header h2,.platform-section-header p{margin:0}.platform-section-header p{color:var(--muted);margin-top:4px;font-size:.82rem}.platform-email-test{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.platform-email-test label{color:var(--muted);gap:5px;font-size:.82rem;display:grid}.platform-email-test input{border:1px solid var(--line);background:var(--bg);min-width:min(20rem,70vw);color:var(--text);border-radius:8px;padding:10px 12px}.platform-plan-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.platform-plan{border:1px solid var(--line);background:var(--bg);border-radius:10px;gap:8px;padding:14px;display:grid}.platform-plan>div{justify-content:space-between;gap:8px;display:flex}.platform-plan small{color:var(--accent)}.platform-plan>span{color:var(--muted);font-size:.74rem}.platform-plan-form{gap:18px;width:min(760px,100%);display:grid}.platform-plan-fields{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.platform-plan-fields label{color:var(--muted);gap:5px;font-size:.8rem;display:grid}.platform-plan-fields .wide{grid-column:1/-1}.platform-plan-fields input,.platform-plan-fields textarea,.platform-create select,.platform-maintenance-section select{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--text);border-radius:8px;padding:10px 12px}.platform-plan-fields textarea{resize:vertical;min-height:78px}.platform-plan-options{gap:20px;display:flex}@media (width<=900px){.platform-plan-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.platform-layout{grid-template-columns:1fr}.platform-create{width:100%}.platform-plan-grid,.platform-plan-fields{grid-template-columns:1fr}.platform-plan-fields .wide{grid-column:auto}.platform-section-header{flex-direction:column}.platform-email-test,.platform-email-test label,.platform-email-test input{width:100%}}.board-password-gate{background:var(--bg);z-index:9999;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.board-password-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:360px;padding:3rem 2rem 1.25rem;display:flex;position:relative;box-shadow:0 8px 32px #0000004d}.board-password-title{color:var(--text-strong);text-align:center;margin:0;font-size:1.6rem;font-weight:700}.board-password-mark{border-radius:10px;width:48px;height:48px;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.board-password-credit{color:var(--muted);margin-top:.5rem;font-size:.7rem;line-height:1.2;text-decoration:none}.board-password-credit:hover{color:var(--text);text-underline-offset:2px;text-decoration:underline}.board-password-credit:focus-visible{color:var(--text);outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.board-password-subtitle{color:var(--muted);text-align:center;margin:0 0 .5rem;font-size:.88rem}.board-password-form{flex-direction:column;gap:.75rem;width:100%;display:flex}.board-password-label{color:var(--muted);text-align:left;margin-bottom:-5px;font-size:.75rem;font-weight:650}.board-password-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);box-sizing:border-box;border-radius:7px;outline:none;padding:.65rem .85rem;font-size:1rem}.board-password-input:focus{border-color:var(--accent)}.board-password-error{color:var(--sick);margin:0;font-size:.83rem}.board-password-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:7px;padding:.65rem;font-size:1rem;font-weight:600;transition:opacity .15s}.board-password-btn:disabled{opacity:.5;cursor:not-allowed}.board-command-bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;padding:8px 14px 10px;display:grid}.board-overview-status{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.board-summary-strip{flex-wrap:wrap;gap:6px;margin:0;display:flex}.board-summary-strip button{border:1px solid var(--border);background:var(--surface);min-width:128px;min-height:52px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:10px;grid-template-columns:32px minmax(58px,1fr) auto;align-items:center;gap:8px;padding:7px 10px;display:grid}.board-summary-strip button:hover{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));background:color-mix(in srgb, var(--accent) 7%, var(--surface))}.board-summary-strip button[aria-pressed=true]{border-color:color-mix(in srgb, var(--accent) 70%, var(--border));background:color-mix(in srgb, var(--accent) 17%, var(--surface));box-shadow:inset 0 -2px 0 var(--accent)}.board-summary-strip .summary-card-icon{background:var(--bg);width:32px;height:32px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.board-summary-strip .summary-card-icon svg{width:17px;height:17px}.board-summary-strip .summary-card-copy{gap:1px;min-width:0;display:grid}.board-summary-strip .summary-card-copy strong{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.board-summary-strip .summary-card-copy small{color:var(--muted);font-size:.64rem}.board-summary-strip b{color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:.92rem}.board-summary-strip .summary-card--in .summary-card-icon{background:color-mix(in srgb, var(--in) 14%, var(--surface));color:var(--in)}.board-summary-strip .summary-card--out .summary-card-icon{background:color-mix(in srgb, var(--out) 14%, var(--surface));color:var(--out)}.board-summary-strip .summary-card--away .summary-card-icon{background:color-mix(in srgb, var(--away) 14%, var(--surface));color:var(--away)}.board-summary-strip .summary-card--visitors .summary-card-icon{background:color-mix(in srgb, var(--accent) 14%, var(--surface));color:var(--accent)}.board-view-controls{justify-content:flex-end;align-items:center;gap:8px;display:flex}.active-filter-bar{min-width:0;color:var(--muted);grid-column:1/-1;align-items:center;gap:7px;padding:2px 4px 0;font-size:.72rem;display:flex}.active-filter-bar strong{background:color-mix(in srgb, var(--accent) 13%, var(--surface));max-width:min(320px,45vw);color:var(--text);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:4px 8px;font-weight:650;overflow:hidden}.active-filter-bar button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:2px;padding:4px 6px}.active-filter-bar button:hover{text-decoration:underline}.board-people-search{width:min(260px,26vw);display:block}.board-people-search input{border:1px solid var(--border);background:var(--surface);width:100%;min-height:38px;color:var(--text);font:inherit;border-radius:9px;padding:7px 34px 7px 11px}.board-people-search input::placeholder{color:var(--muted)}.saved-view-control{flex:0 232px;align-items:center;width:min(232px,100%);min-width:210px;display:flex;position:relative}.saved-view-control>svg{z-index:1;width:14px;height:14px;color:var(--muted);pointer-events:none;position:absolute;left:10px}.saved-view-tools{border:1px solid var(--border);background:var(--surface);border-radius:9px;align-items:stretch;min-width:0;display:flex;overflow:hidden}.saved-view-tools:focus-within{border-color:var(--accent);outline:2px solid color-mix(in srgb, var(--accent) 28%, transparent);outline-offset:1px}.saved-view-manage{border:0;border-left:1px solid var(--border);min-height:36px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:0;padding:7px 11px}.saved-view-manage:hover,.saved-view-manage[aria-expanded=true]{background:color-mix(in srgb, var(--accent) 8%, var(--surface));color:var(--accent)}.saved-view-editor{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent) 4%, var(--surface));border-radius:11px;grid-column:1/-1;grid-template-columns:minmax(260px,.7fr) minmax(360px,1.3fr);gap:12px;padding:12px;display:grid}.saved-view-editor form{align-items:end;gap:8px;display:flex}.saved-view-editor form label{min-width:0;color:var(--muted);flex:1;gap:5px;font-size:.7rem;display:grid}.saved-view-editor input{border:1px solid var(--border);background:var(--bg);min-width:0;min-height:36px;color:var(--text);font:inherit;border-radius:8px;padding:7px 9px}.saved-view-editor button{border:1px solid var(--border);min-height:36px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:6px 10px}.saved-view-editor form button{border-color:var(--accent);background:var(--accent);color:#fff}.saved-view-editor button:disabled{opacity:.45;cursor:not-allowed}.saved-view-editor-list{gap:6px;display:grid}.saved-view-editor-list>p{color:var(--muted);align-self:center;margin:0;font-size:.75rem}.saved-view-editor-row{grid-template-columns:18px minmax(120px,1fr) minmax(100px,auto) auto;align-items:center;gap:7px;display:grid}.saved-view-editor-row>svg{width:14px;color:var(--muted)}.saved-view-editor-row small{max-width:190px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.view-switch{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:3px;display:inline-flex}.view-switch button{min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:5px 9px}.view-switch button[aria-pressed=true]{background:var(--accent);color:#fff}.directory-view{border:1px solid var(--border);background:var(--surface);border-radius:14px;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;margin:0;display:grid;overflow:hidden}.directory-toolbar{z-index:2;border-bottom:1px solid var(--border);background:var(--surface);align-items:end;gap:12px;padding:14px;display:flex;position:sticky;top:0}.directory-toolbar>div{margin-right:auto}.directory-toolbar h2,.directory-toolbar p{margin:0}.directory-toolbar p{color:var(--muted);font-size:.82rem}.directory-toolbar label{min-width:150px;color:var(--muted);gap:4px;font-size:.76rem;display:grid}.directory-toolbar input{border:1px solid var(--border);background:var(--bg);min-height:38px;color:var(--text);border-radius:8px;padding:7px 10px}.directory-search{width:min(280px,30vw)}.directory-list{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));grid-auto-rows:max-content;align-content:start;gap:8px;min-height:0;padding:12px;display:grid;overflow:auto}.directory-empty{text-align:center;color:var(--muted);padding:36px}.directory-list .person-card-ident{flex:auto}.directory-list .person-card-actions{flex:none}.directory-list .person-card-icon-action{border:1px solid var(--border);width:36px;min-width:36px;height:36px;min-height:36px;color:var(--muted);font:inherit;text-transform:none;letter-spacing:normal;cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;padding:0;display:inline-flex}.directory-list .person-card-icon-action:hover{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));background:color-mix(in srgb, var(--accent) 8%, var(--surface));color:var(--accent)}.directory-list .person-card-icon-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.directory-list .person-card-icon-action svg{width:17px;height:17px}.directory-list .person-card-icon-action.locked{border-color:color-mix(in srgb, var(--out) 55%, var(--border));color:var(--out)}.presence-avatar{background:color-mix(in srgb, var(--border) 55%, var(--surface));width:42px;height:42px;color:var(--text-strong);letter-spacing:.02em;border-radius:12px;flex:none;place-items:center;font-size:.76rem;font-weight:800;display:grid}.presence-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.person-card-ident .presence-avatar{border-radius:9px;width:34px;height:34px;margin-right:2px;font-size:.64rem}.admin-avatar-control{align-items:center;gap:5px;min-width:118px;display:flex}.admin-person-avatar{background:color-mix(in srgb, var(--accent) 12%, var(--surface));width:42px;height:42px;color:var(--accent);border-radius:10px;flex:none;place-items:center;font-size:.72rem;font-weight:800;display:grid;overflow:hidden}.admin-person-avatar img{object-fit:cover;width:100%;height:100%}.admin-avatar-control label{cursor:pointer;position:relative;overflow:hidden}.admin-avatar-control input[type=file]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.card-height-setting{grid-template-columns:100px minmax(180px,1fr) 64px;align-items:center;gap:12px;max-width:560px;display:grid}.card-height-setting input{width:100%;accent-color:var(--accent)}.card-height-setting output{color:var(--text-strong);font-variant-numeric:tabular-nums;text-align:right}.short-visit-setting{border:1px solid var(--border);background:color-mix(in srgb, var(--accent) 4%, var(--surface));border-radius:10px;gap:12px;max-width:620px;padding:14px;display:grid}.short-visit-setting-toggle{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.short-visit-setting-toggle input{margin-top:3px}.short-visit-setting-toggle span{gap:3px;display:grid}.short-visit-setting-toggle small{color:var(--muted);font-size:.78rem;font-weight:400;line-height:1.4}.short-visit-setting-window{color:var(--muted);align-items:center;gap:8px;padding-left:26px;font-size:.82rem;display:flex}.short-visit-setting-window input{border:1px solid var(--border);background:var(--bg);width:76px;min-height:36px;color:var(--text);font:inherit;border-radius:8px;padding:6px 8px}.short-visit-setting-window input:disabled{opacity:.5}.presence-avatar--in{background:color-mix(in srgb, var(--in) 18%, var(--surface));color:color-mix(in srgb, var(--in) 78%, var(--text))}.presence-avatar--out{background:color-mix(in srgb, var(--out) 18%, var(--surface));color:color-mix(in srgb, var(--out) 82%, var(--text))}.presence-avatar--away{background:color-mix(in srgb, var(--away) 18%, var(--surface));color:color-mix(in srgb, var(--away) 82%, var(--text))}.presence-avatar--visitor{background:color-mix(in srgb, var(--accent) 18%, var(--surface));color:var(--accent)}.view-empty{color:var(--muted);text-align:center;margin:0;padding:24px 16px}.command-view{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) clamp(220px,14vw,250px);gap:10px 14px;height:clamp(360px,100dvh - 170px,900px);min-height:360px;max-height:none;display:grid;overflow:hidden}.command-view-toolbar{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:12px;min-height:36px;display:flex}.command-view-toolbar>strong{margin-right:auto;font-size:.82rem}.command-view-toolbar>div{border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.command-view-toolbar button{border:0;border-right:1px solid var(--border);background:var(--surface);min-height:32px;color:var(--muted);cursor:pointer;padding:5px 10px}.command-view-toolbar button:last-child{border-right:0}.command-view-toolbar button[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 18%, var(--surface));color:var(--text)}.command-view-toolbar label{color:var(--muted);align-items:center;gap:6px;font-size:.75rem;display:flex}.command-lanes{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(4,minmax(190px,1fr));gap:12px;min-width:0;height:100%;min-height:0;display:grid;overflow:auto hidden}.command-lane{border:1px solid color-mix(in srgb, var(--border) 82%, var(--muted));background:color-mix(in srgb, var(--surface) 88%, var(--bg));border-radius:14px;grid-template-rows:auto minmax(0,1fr);min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.command-lane>header{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:15px 14px;display:flex}.command-lane>header>div{min-width:0;margin-right:auto}.command-lane>header h2,.command-lane>header p{margin:0}.command-lane>header h2{color:var(--text-strong);font-size:1.05rem}.command-lane>header p{color:var(--muted);margin-top:2px;font-size:.74rem}.command-lane>header>strong{background:var(--bg);min-width:28px;color:var(--text-strong);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;padding:4px 7px}.command-lane-icon{background:var(--bg);color:currentColor;border-radius:10px;flex:none;place-items:center;width:42px;height:42px;display:grid}.command-icon-svg{width:22px;height:22px}.command-lane--in>header h2{color:var(--in)}.command-lane--in .command-lane-icon{background:color-mix(in srgb, var(--in) 15%, var(--surface));color:var(--in)}.command-lane--out>header h2{color:var(--out)}.command-lane--out .command-lane-icon{background:color-mix(in srgb, var(--out) 15%, var(--surface));color:var(--out)}.command-lane--away>header h2{color:var(--away)}.command-lane--away .command-lane-icon{background:color-mix(in srgb, var(--away) 15%, var(--surface));color:var(--away)}.command-lane--visitors>header h2{color:var(--accent)}.command-lane--visitors .command-lane-icon{background:color-mix(in srgb, var(--accent) 15%, var(--surface));color:var(--accent)}.command-lane-list{overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:color-mix(in srgb, var(--muted) 68%, transparent) color-mix(in srgb, var(--surface) 82%, var(--bg));scrollbar-width:auto;grid-auto-rows:max-content;align-content:start;gap:7px;min-height:0;padding:9px;display:grid;overflow:hidden scroll}.command-lane-list::-webkit-scrollbar{width:12px}.command-lane-list::-webkit-scrollbar-track{background:color-mix(in srgb, var(--surface) 82%, var(--bg))}.command-lane-list::-webkit-scrollbar-thumb{border:3px solid color-mix(in srgb, var(--surface) 82%, var(--bg));background:color-mix(in srgb, var(--muted) 68%, transparent);border-radius:999px}.command-lane-list::-webkit-scrollbar-thumb:hover{background:var(--muted)}.command-person{width:100%;min-width:0;min-height:var(--person-card-height,66px);border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:9px;display:flex}.command-person-shell{min-width:0;min-height:calc(var(--person-card-height,66px) + 35px);border:1px solid var(--border);background:var(--bg);border-radius:10px;overflow:hidden}.command-person-shell .command-person-main{border:0;border-radius:0}.command-person-shell:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.command-view--compact .command-person-shell{min-height:0}.command-view--compact .command-person{min-height:52px;padding-block:5px}.command-view--compact .command-person .presence-avatar{width:38px;height:38px}.command-view--compact .person-view-actions>button{min-height:28px}.is-recent{animation:1.8s ease-out recent-status-highlight}.is-pending{border-color:color-mix(in srgb, var(--accent) 65%, var(--border))!important}@keyframes recent-status-highlight{0%{background-color:color-mix(in srgb, var(--accent) 22%, var(--surface))}to{background-color:#0000}}.command-person:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.command-person:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.command-person>span:not(.presence-avatar){gap:2px;min-width:0;display:grid}.command-person strong,.command-person small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-person small{color:var(--muted)}.command-person .command-presence-meta{color:currentColor;align-items:center;gap:5px;display:flex}.command-person .command-presence-meta .command-icon-svg{width:15px;height:15px}.command-lane--in .command-presence-meta{color:var(--in)}.command-lane--out .command-presence-meta{color:var(--out)}.command-lane--away .command-presence-meta{color:var(--away)}.command-lane--visitors .command-presence-meta{color:var(--accent)}.command-person .command-visitor-company{color:var(--muted);margin:0;font-size:.68rem;font-style:normal}.command-person em{color:var(--muted);margin-left:auto;font-size:.7rem;font-style:normal}.command-person .presence-avatar{border-radius:50%;width:48px;height:48px}.command-visitor{cursor:default}.command-visitor>button{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:7px;margin-left:auto;padding:6px 8px}.person-view-actions{border-top:1px solid var(--border);align-items:stretch;display:flex}.person-view-actions>button{border:0;border-right:1px solid var(--border);min-width:36px;min-height:36px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:0;flex:36px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.person-view-actions>button:last-child{border-right:0}.person-view-actions>button:hover{background:color-mix(in srgb, var(--accent) 8%, var(--surface));color:var(--accent)}.person-view-actions>button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;position:relative}.person-view-actions svg{width:17px;height:17px}.command-actions{grid-template-rows:repeat(4,minmax(108px,1fr));align-content:start;gap:9px;min-height:0;display:grid;overflow:auto}.command-actions>button,.command-actions>a{border:1px solid var(--border);background:var(--surface);min-height:108px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:9px;grid-template-rows:auto auto;grid-template-columns:42px minmax(0,1fr) 18px;column-gap:10px;padding:15px 13px;text-decoration:none;display:grid}.command-actions>:is(button,a):hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.command-actions>:is(button,a)>span{background:color-mix(in srgb, var(--accent) 14%, var(--surface));width:42px;height:42px;color:var(--accent);border-radius:9px;grid-row:1/3;place-items:center;display:grid}.command-actions>:is(button,a)>span.command-action-icon--danger{background:color-mix(in srgb, var(--out) 15%, var(--surface));color:var(--out)}.command-actions>:is(button,a) strong{align-self:end;font-size:.94rem}.command-actions>:is(button,a) small{color:var(--muted);align-self:start;line-height:1.35}.command-actions>:is(button,a)>i{color:var(--muted);grid-area:1/3/3;align-self:center}.command-actions>:is(button,a)>i .command-icon-svg{width:17px;height:17px}.roster-view{grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:12px;min-height:0;display:grid;overflow:hidden}.roster-main{border:1px solid var(--border);background:var(--surface);border-radius:14px;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;overflow:hidden}.roster-main:has(.roster-bulk-bar){grid-template-rows:auto auto minmax(0,1fr) auto}.roster-bulk-bar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--accent) 10%, var(--surface));align-items:center;gap:8px;padding:8px 12px;display:flex}.roster-bulk-bar strong{margin-right:auto;font-size:.8rem}.roster-bulk-bar button{border:1px solid var(--border);background:var(--surface);min-height:32px;color:var(--text);cursor:pointer;border-radius:7px;padding:5px 9px}.roster-bulk-bar button:disabled{opacity:.5;cursor:not-allowed}.roster-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;display:flex}.roster-heading h2,.roster-heading p{margin:0}.roster-heading h2{font-size:1.05rem}.roster-heading p,.roster-heading>span{color:var(--muted);font-size:.78rem}.roster-heading>span{align-items:center;gap:6px;display:inline-flex}.roster-heading>span i{background:var(--in);border-radius:50%;width:8px;height:8px}.roster-scroll{min-height:0;overflow:auto}.roster-view table{border-collapse:collapse;width:100%;font-size:.82rem}.roster-view th{z-index:1;border-bottom:1px solid var(--border);background:var(--bg);color:var(--muted);text-align:left;padding:10px 12px;font-size:.72rem;font-weight:650;position:sticky;top:0}.roster-view td{border-bottom:1px solid var(--border);color:var(--muted);padding:8px 12px}.roster-view tbody tr:hover{background:color-mix(in srgb, var(--accent) 4%, var(--surface))}.roster-view tbody tr{height:var(--person-card-height,58px)}.roster-person{min-width:180px;color:var(--text);align-items:center;gap:9px;display:flex}.roster-person .presence-avatar{border-radius:9px;width:34px;height:34px;font-size:.65rem}.roster-status{background:var(--bg);color:var(--text);white-space:nowrap;border-radius:999px;padding:4px 8px;font-weight:700;display:inline-flex}.roster-status--in{background:color-mix(in srgb, var(--in) 13%, var(--surface));color:color-mix(in srgb, var(--in) 78%, var(--text))}.roster-status--out{background:color-mix(in srgb, var(--out) 13%, var(--surface));color:color-mix(in srgb, var(--out) 82%, var(--text))}.roster-status--away{background:color-mix(in srgb, var(--away) 13%, var(--surface));color:color-mix(in srgb, var(--away) 82%, var(--text))}.roster-status--visitors{background:color-mix(in srgb, var(--accent) 13%, var(--surface));color:var(--accent)}.roster-person-actions{white-space:nowrap;align-items:center;gap:6px;display:flex}.roster-person-actions>button{border:1px solid var(--border);min-height:34px;color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;padding:6px 10px}.roster-person-actions>button:hover{border-color:var(--accent);color:var(--accent)}.roster-person-actions .person-view-actions{border:1px solid var(--border);border-radius:8px;overflow:hidden}.roster-person-actions .person-view-actions>button{flex:0 0 38px;width:38px;min-width:38px}.result-pagination{border-top:1px solid var(--border);background:var(--surface);min-height:46px;color:var(--muted);align-items:center;gap:18px;padding:7px 12px;font-size:.72rem;display:flex}.result-pagination label{align-items:center;gap:7px;display:flex}.result-pagination select{border:1px solid var(--border);background:var(--bg);min-width:64px;color:var(--text);font:inherit;border-radius:7px;padding:5px 24px 5px 8px}.result-pagination>span{font-variant-numeric:tabular-nums;margin-right:auto}.result-pagination nav,.result-pagination nav>span{align-items:center;gap:4px;display:flex}.result-pagination nav button{min-width:30px;min-height:30px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;padding:4px}.result-pagination nav button:hover:not(:disabled){border-color:var(--border);color:var(--text)}.result-pagination nav button[aria-current=page]{border-color:color-mix(in srgb, var(--accent) 65%, var(--border));background:color-mix(in srgb, var(--accent) 20%, var(--surface));color:var(--text)}.result-pagination nav button:disabled{opacity:.35;cursor:not-allowed}.result-pagination nav i{padding:0 2px;font-style:normal}.roster-insights{align-content:start;gap:10px;min-height:0;display:grid;overflow:auto}.roster-insights>section{border:1px solid var(--border);background:var(--surface);border-radius:12px;overflow:hidden}.roster-insights>section>header{justify-content:space-between;align-items:center;gap:8px;padding:11px 12px 8px;display:flex}.roster-insights h3{margin:0;font-size:.88rem}.roster-insights a,.roster-insights header button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:3px;font-size:.72rem;text-decoration:none}.roster-insight-list,.roster-event-list{padding:2px 10px 10px;display:grid}.roster-insight-list article,.roster-event-list article{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);align-items:center;gap:9px;min-width:0;padding:7px 2px;display:flex}.roster-insight-list article:first-child,.roster-event-list article:first-child{border-top:0}.roster-insight-list .presence-avatar{border-radius:9px;width:34px;height:34px;font-size:.62rem}.roster-insight-list article>span,.roster-event-list article>span{gap:1px;min-width:0;display:grid}.roster-insight-list strong,.roster-insight-list small,.roster-event-list strong,.roster-event-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.roster-insight-list small,.roster-event-list small{color:var(--muted);font-size:.7rem}.roster-insight-list em{color:var(--away);text-align:right;margin-left:auto;font-size:.68rem;font-style:normal}.roster-insight-list>p,.roster-event-list>p{color:var(--muted);margin:0;padding:12px 2px;font-size:.76rem}.roster-event-list time{border:1px solid var(--border);text-align:center;border-radius:8px;flex:none;width:38px;display:grid;overflow:hidden}.roster-event-list time strong{padding:2px;font-size:.9rem}.roster-event-list time span{background:var(--accent);color:#fff;text-transform:uppercase;padding:2px;font-size:.58rem}.tiles-view{min-height:0;padding:2px 2px 0;overflow:auto}.tiles-results{display:block}.tiles-results-content{min-height:0}.tile-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.tile-group{min-width:0;margin-bottom:14px}.tile-group>header{align-items:center;gap:9px;padding:8px 2px;display:flex}.tile-group>header h2{color:var(--text-strong);margin:0;font-size:1.2rem}.tile-group>header>strong{background:var(--surface);text-align:center;border-radius:999px;min-width:30px;padding:4px 8px}.tile-group>header>button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;margin-left:auto;padding:7px 10px}.tile-group--in>header h2{color:var(--in)}.tile-group--out>header h2{color:var(--out)}.tile-group--away>header h2{color:var(--away)}.tile-group--visitors>header h2{color:var(--accent)}.tile-group>div{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:9px;display:grid}.presence-tile-shell{border:1px solid var(--border);background:var(--surface);border-radius:14px;min-width:0;overflow:hidden}.presence-tile{width:100%;min-width:0;min-height:calc(var(--person-card-height,58px) + 92px);color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:14px 10px 10px;display:flex}.presence-tile:hover{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));background:color-mix(in srgb, var(--accent) 5%, var(--surface))}.presence-tile:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.presence-tile .presence-avatar{border-radius:50%;width:70px;height:70px;font-size:1rem}.presence-tile>strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.presence-tile>span:not(.presence-avatar){color:var(--muted);font-weight:700}.presence-tile>small{border-top:1px solid var(--border);width:100%;color:var(--text);margin-top:4px;padding-top:8px}.tile-group--in .presence-tile-shell{border-color:color-mix(in srgb, var(--in) 35%, var(--border));background:color-mix(in srgb, var(--in) 7%, var(--surface))}.tile-group--out .presence-tile-shell{border-color:color-mix(in srgb, var(--out) 35%, var(--border));background:color-mix(in srgb, var(--out) 7%, var(--surface))}.tile-group--away .presence-tile-shell{border-color:color-mix(in srgb, var(--away) 35%, var(--border));background:color-mix(in srgb, var(--away) 7%, var(--surface))}.tile-group--visitors .presence-tile{min-height:calc(var(--person-card-height,58px) + 126px);border:1px solid var(--border);background:var(--surface);border-radius:14px}.tiles-availability-panel{border:1px solid color-mix(in srgb, var(--accent) 40%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--surface));border-radius:14px;margin:4px 0 14px;padding:12px 14px}.tiles-availability-panel>header{align-items:center;gap:9px;display:flex}.tiles-availability-panel>header>span{background:color-mix(in srgb, var(--accent) 20%, var(--surface));width:34px;height:34px;color:var(--accent);border-radius:9px;place-items:center;display:grid}.tiles-availability-panel h2{margin:0;font-size:1rem}.tiles-availability-panel header a{color:var(--accent);margin-left:auto;font-size:.75rem;text-decoration:none}.tiles-availability-panel>div{gap:8px;margin-top:10px;display:flex;overflow-x:auto}.tiles-availability-panel article{border-right:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));align-items:center;gap:9px;min-width:190px;padding:8px;display:flex}.tiles-availability-panel article:last-child{border-right:0}.tiles-availability-panel article>span{min-width:0;display:grid}.tiles-availability-panel article small{color:var(--muted)}.tiles-availability-panel article em{color:var(--away);font-size:.72rem;font-style:normal}.tiles-action-dock{z-index:2;padding:10px 0 max(8px, env(safe-area-inset-bottom));background:var(--bg);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid;position:sticky;bottom:0}.tiles-action-dock>a,.tiles-action-dock>button{border:1px solid var(--border);background:var(--surface);min-height:64px;color:var(--text);font:inherit;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:9px;padding:8px 12px;font-weight:700;text-decoration:none;display:flex}.tiles-action-dock>:is(a,button):hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--surface))}.tiles-action-dock span{color:var(--accent);font-size:1.1rem}.saved-view-select{width:100%;min-width:0;min-height:36px;color:var(--text);font:inherit;background:0 0;border:0;border-radius:0;outline:0;padding:7px 30px}.saved-view-select option,.saved-view-select optgroup{background:var(--surface);color:var(--text)}.saved-view-select optgroup{font-weight:700}.saved-view-select option{font-weight:400}.saved-view-select option:disabled{color:var(--muted)}.person-detail-panel{z-index:30;border:1px solid var(--border);background:var(--surface);border-radius:12px;width:min(410px,100vw - 16px);padding:20px;position:fixed;top:8px;bottom:8px;right:8px;overflow:auto;box-shadow:-6px 0 8px #00000038}.person-detail-panel h2,.person-detail-panel h3,.person-detail-panel p{margin:0}.person-detail-profile{border-bottom:1px solid var(--border);grid-template-columns:104px minmax(0,1fr);gap:14px;padding:4px 30px 18px 0;display:grid;position:relative}.person-detail-profile>.presence-avatar{border-radius:50%;width:104px;height:104px;font-size:1.25rem}.person-detail-profile>div{align-content:start;justify-items:start;gap:3px;min-width:0;display:grid}.person-detail-profile h2{color:var(--text-strong);font-size:1.28rem}.person-detail-profile p,.person-detail-profile small{color:var(--muted);font-size:.76rem}.person-detail-profile>button{width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:1.5rem;position:absolute;top:-8px;right:-8px}.person-detail-status{color:var(--text);text-transform:capitalize;align-items:center;gap:6px;margin-top:3px;font-size:.8rem;display:inline-flex}.person-detail-status i{background:var(--muted);border-radius:50%;width:9px;height:9px}.person-detail-status--in{color:var(--in)}.person-detail-status--in i{background:var(--in)}.person-detail-status--out{color:var(--out)}.person-detail-status--out i{background:var(--out)}.person-detail-status--away{color:var(--away)}.person-detail-status--away i{background:var(--away)}.person-detail-edit{border:1px solid var(--border);color:var(--text);border-radius:8px;margin-top:7px;padding:7px 11px;font-size:.78rem;text-decoration:none;display:inline-flex}.person-detail-navigation{align-items:center;gap:7px;margin-top:7px;display:inline-flex}.person-detail-navigation button{border:1px solid var(--border);width:34px;height:34px;color:var(--text);cursor:pointer;background:0 0;border-radius:8px;place-items:center;padding:0;display:grid}.person-detail-navigation button:first-child svg{transform:rotate(180deg)}.person-detail-navigation button:disabled{opacity:.35;cursor:not-allowed}.person-detail-navigation button svg{width:15px;height:15px}.person-detail-navigation span{min-width:44px;color:var(--muted);text-align:center;font-size:.7rem}.icon-tooltip{z-index:100;border:1px solid color-mix(in srgb, var(--border) 75%, #fff);background:color-mix(in srgb, var(--bg) 88%, #000);max-width:220px;color:var(--text-strong);pointer-events:none;white-space:nowrap;border-radius:6px;padding:6px 8px;font-size:.7rem;line-height:1.25;position:fixed;box-shadow:0 4px 12px #00000047}.icon-tooltip--above{transform:translate(-50%,-100%)}.icon-tooltip--below{transform:translate(-50%)}.person-detail-section{border-bottom:1px solid var(--border);padding:18px 0}.person-detail-section>header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px;display:flex}.person-detail-section h3{font-size:.92rem}.person-detail-section>header :is(a,button),.person-security-section>button{border:1px solid var(--border);min-height:34px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:6px 10px;font-size:.72rem;text-decoration:none}.person-activity-timeline{gap:0;margin:0;padding:0;list-style:none;display:grid}.person-activity-timeline li{grid-template-columns:58px 24px minmax(0,1fr);gap:6px;min-height:64px;display:grid;position:relative}.person-activity-timeline li:not(:last-child):after{content:"";background:var(--border);width:1px;position:absolute;top:25px;bottom:-2px;left:75px}.person-activity-timeline time{color:var(--muted);padding-top:4px;font-size:.7rem}.person-activity-timeline--full{max-height:min(52vh,560px);padding-right:5px;overflow-y:auto}.person-activity-timeline--full time{align-content:start;gap:2px;display:grid}.person-activity-timeline--full time strong{color:var(--text);font-size:.72rem;font-weight:650}.person-activity-timeline--full time small{color:var(--muted);font-size:.62rem;line-height:1.25}.person-timeline-message{color:var(--muted);margin:0;padding:14px 0;font-size:.78rem}.person-timeline-error{color:var(--danger);justify-content:space-between;align-items:center;gap:10px;font-size:.76rem;display:flex}.person-timeline-error button{border:1px solid var(--border);min-height:34px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:6px 10px}.person-timeline-empty{padding:12px 0;min-height:0!important;display:block!important}.activity-dot{z-index:1;background:color-mix(in srgb, var(--accent) 22%, var(--surface));width:22px;height:22px;color:var(--accent);border-radius:50%;place-items:center;font-size:.62rem;font-style:normal;display:grid}.activity-dot--in{background:color-mix(in srgb, var(--in) 22%, var(--surface));color:var(--in)}.activity-dot--out{background:color-mix(in srgb, var(--out) 22%, var(--surface));color:var(--out)}.activity-dot--away{background:color-mix(in srgb, var(--away) 22%, var(--surface));color:var(--away)}.person-activity-timeline li>span{align-content:start;gap:2px;display:grid}.person-activity-timeline strong{font-size:.8rem}.person-activity-timeline small{color:var(--muted);font-size:.72rem}.person-availability-list{gap:8px;display:grid}.person-availability-list article{grid-template-columns:36px minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:9px;padding:8px 0;display:grid}.availability-calendar-icon{background:color-mix(in srgb, var(--accent) 16%, var(--surface));width:34px;height:34px;color:var(--accent);border-radius:8px;place-items:center;display:grid}.person-availability-list article>span:not(.availability-calendar-icon){gap:2px;min-width:0;display:grid}.person-availability-list article>span:last-child{text-align:right}.person-availability-list strong,.person-availability-list small{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.person-availability-list small,.person-availability-list>p{color:var(--muted)}.person-security-section{grid-template-columns:32px minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.person-security-icon{width:28px;height:28px;color:var(--accent);place-items:center;font-size:1.15rem;display:grid}.person-security-section p{color:var(--muted);margin-top:5px;font-size:.74rem;line-height:1.45}.person-detail-pending{color:var(--accent)!important;margin-top:8px!important}.person-detail-actions{grid-template-columns:1fr 1fr;gap:8px;padding-top:18px;display:grid}.person-detail-actions button{border:1px solid var(--border);background:var(--bg);min-height:42px;color:var(--text);cursor:pointer;border-radius:9px}.exit-kiosk-button{z-index:40;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;border-radius:9px;padding:8px 14px;position:fixed;bottom:14px;right:14px}.board-wrap--kiosk .kiosk-hidden,.board-wrap--kiosk .view-switch,.board-wrap--kiosk .product-signature{display:none!important}.report-workspace{padding:0;overflow:hidden}.report-workspace-heading{justify-content:space-between;align-items:end;gap:16px;padding:20px 22px 14px;display:flex}.report-workspace-heading h2,.report-workspace-heading p{margin:0}.report-workspace-heading h2{color:var(--text-strong);font-size:1.45rem}.report-workspace-heading p{color:var(--muted);margin-top:4px}.report-section-tabs{border-bottom:1px solid var(--border);gap:4px;padding:0 18px;display:flex;overflow-x:auto}.report-section-tabs button{min-height:46px;color:var(--muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:8px 15px;font-weight:650;position:relative}.report-section-tabs button:after{content:"";background:0 0;border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:12px;right:12px}.report-section-tabs button:hover{color:var(--text)}.report-section-tabs button.active{color:var(--text-strong)}.report-section-tabs button.active:after{background:var(--accent)}.report-global-toolbar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 72%, var(--surface));align-items:end;gap:12px;padding:14px 22px;display:flex}.report-global-toolbar-title{gap:3px;margin-right:auto;display:grid}.report-global-toolbar-title>span,.report-global-toolbar label>span{color:var(--muted);font-size:.74rem}.report-global-toolbar-title strong{color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:.92rem}.report-global-toolbar label{gap:4px;display:grid}.report-global-toolbar input{min-height:38px;padding:7px 10px;font-size:.88rem}.report-tab-panel{min-height:420px;padding:22px}.report-tab-panel>.reason-attendance{margin-top:0}.report-dashboard{margin-bottom:30px}.report-dashboard-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px;display:flex}.report-dashboard-heading h2,.report-dashboard-heading p{margin:0}.report-dashboard-heading p{color:var(--muted);margin-top:3px}.report-summary-strip{border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(6,minmax(120px,1fr));margin:0 0 18px;display:grid;overflow:hidden}.report-summary-strip>div{border-right:1px solid var(--border);background:var(--bg);min-width:0;padding:14px}.report-summary-strip>div:last-child{border-right:0}.report-summary-strip dt{color:var(--muted);font-size:.76rem}.report-summary-strip dd{color:var(--text-strong);font-variant-numeric:tabular-nums;margin:6px 0 3px;font-size:clamp(1.25rem,2vw,1.8rem);font-weight:750}.report-summary-strip small{color:var(--muted);line-height:1.35;display:block}.report-summary-strip .summary-alert{background:color-mix(in srgb, var(--sick) 12%, var(--bg))}.report-summary-strip .summary-alert dd{color:var(--sick)}.report-visuals{grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:14px;display:grid}.report-overview-grid{grid-template-columns:minmax(0,1fr) minmax(230px,280px);align-items:stretch;gap:14px;display:grid}.report-overview-main{gap:14px;min-width:0;display:grid}.report-overview-main .report-visuals{grid-template-columns:repeat(2,minmax(0,1fr))}.report-chart{border:1px solid var(--border);border-radius:12px;min-width:0;padding:16px}.report-chart-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.report-chart-head h3{margin:0}.report-chart-head span,.report-chart-note{color:var(--muted);font-size:.8rem}.occupancy-bars{align-items:end;gap:5px;height:190px;margin-top:14px;display:flex;overflow-x:auto}.occupancy-bar-item{text-align:center;height:100%;color:var(--muted);flex:1 0 30px;grid-template-rows:18px 1fr 20px;font-size:.7rem;display:grid}.occupancy-bar-value{color:var(--text);font-variant-numeric:tabular-nums}.occupancy-bar-track{background:color-mix(in srgb, var(--accent) 10%, var(--bg));border-radius:5px 5px 2px 2px;align-items:end;width:70%;margin:0 auto;display:flex;overflow:hidden}.occupancy-bar-track span{background:var(--accent);border-radius:4px 4px 0 0;width:100%;display:block}.location-comparison{border-radius:10px;min-height:108px;margin-top:24px;display:flex;overflow:hidden}.location-comparison div{background:color-mix(in srgb, var(--in) 25%, var(--surface));text-align:center;place-content:center;min-width:76px;padding:12px;display:grid}.location-comparison .remote{background:color-mix(in srgb, var(--remote) 25%, var(--surface))}.location-comparison strong{font-size:1.55rem}.location-comparison span{font-size:.78rem}.report-chart-note{margin:10px 0 0}.trend-legend{gap:14px;display:flex}.trend-legend span{align-items:center;gap:6px;display:inline-flex}.trend-legend span:before{content:"";background:var(--in);border-radius:3px;width:18px;height:3px}.trend-legend .remote:before{background:var(--remote)}.work-trend-chart{margin-top:13px}.work-trend-chart svg{width:100%;height:190px;display:block;overflow:visible}.work-trend-chart line{stroke:color-mix(in srgb, var(--border) 65%, transparent);stroke-width:1px}.work-trend-chart polyline{fill:none;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.work-trend-chart .office-line{stroke:var(--in)}.work-trend-chart .remote-line{stroke:var(--remote)}.work-trend-axis{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;padding:0 4px;font-size:.7rem;display:flex}.report-overview-summaries{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-mini-summary{border:1px solid var(--border);background:var(--surface);border-radius:12px;min-width:0;padding:16px}.report-mini-summary>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.report-mini-summary h3,.report-mini-summary p{margin:0}.report-mini-summary>div:first-child>span{color:var(--muted);font-size:.78rem}.report-donut-row{align-items:center;gap:clamp(18px,4vw,42px);margin-top:14px;display:flex}.report-donut{isolation:isolate;aspect-ratio:1;text-align:center;border-radius:50%;flex:0 0 126px;place-content:center;width:126px;display:grid;position:relative}.report-donut:before{content:"";z-index:-1;background:var(--surface);border-radius:50%;position:absolute;inset:18px}.report-donut strong{color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:1.45rem}.report-donut small{color:var(--muted)}.report-donut-row ul,.event-rank-list{flex:1;min-width:0;margin:0;padding:0;list-style:none}.report-donut-row ul li,.event-rank-list li{min-height:31px;color:var(--muted);align-items:center;gap:8px;display:flex}.report-donut-row li strong,.event-rank-list li strong{color:var(--text-strong);font-variant-numeric:tabular-nums;margin-left:auto}.report-donut-row i{background:var(--accent);border-radius:50%;width:9px;height:9px}.report-donut-row i.sick{background:var(--sick)}.event-rank-list span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.report-exceptions{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;min-height:100%;display:flex;overflow:hidden}.report-exceptions-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.report-exceptions-head h3,.report-exceptions-head p{margin:0}.report-exceptions-head p{color:var(--muted);margin-top:3px;font-size:.78rem}.report-exceptions-head>strong{background:color-mix(in srgb, var(--sick) 18%, var(--surface));min-width:28px;min-height:28px;color:var(--sick);border-radius:8px;place-content:center;display:grid}.report-exceptions ul{max-height:490px;margin:0;padding:0 14px;list-style:none;overflow:auto}.report-exceptions li{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:11px 0;display:flex}.exception-avatar{aspect-ratio:1;background:color-mix(in srgb, var(--remote) 30%, var(--surface));width:34px;color:var(--text-strong);border-radius:50%;flex:0 0 34px;place-content:center;font-size:.72rem;font-weight:700;display:grid}.report-exceptions li div{min-width:0}.report-exceptions li strong,.report-exceptions li small{display:block}.report-exceptions li small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.68rem;overflow:hidden}.report-exceptions-clear{color:var(--muted);text-align:center;flex:1;place-content:center;padding:36px 16px;display:grid}.report-exceptions-clear strong{color:var(--in);font-size:1.15rem}.report-exceptions-footer{border-top:1px solid var(--border);grid-template-columns:1fr auto;gap:3px 10px;margin-top:auto;padding:14px 16px;display:grid}.report-exceptions-footer span,.report-exceptions-footer small{color:var(--muted);font-size:.72rem}.report-exceptions-footer strong{color:var(--text-strong);text-align:right}.report-exceptions-footer small{grid-column:1/-1}.report-empty{text-align:center;color:var(--muted);margin:54px 0}.missing-signouts{border:1px solid color-mix(in srgb, var(--sick) 50%, var(--border));border-radius:10px;margin-top:14px}.missing-signouts summary{cursor:pointer;min-height:44px;padding:12px 14px;font-weight:650}.missing-signouts ul{margin:0;padding:0 14px 14px;list-style:none}.missing-signouts li{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.missing-signouts li span{color:var(--muted)}.report-audit-heading{border-top:1px solid var(--border);margin-top:28px;padding-top:22px}.report-tab-panel>.report-audit-heading{border-top:0;margin-top:0;padding-top:0}.report-focus-metrics{border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(4,minmax(150px,1fr));margin:0 0 16px;display:grid;overflow:hidden}.report-focus-metrics--compact{grid-template-columns:repeat(3,minmax(170px,1fr))}.report-focus-metrics>div{border-right:1px solid var(--border);background:var(--bg);min-width:0;padding:18px}.report-focus-metrics>div:last-child{border-right:0}.report-focus-metrics dt{color:var(--muted);font-size:.78rem}.report-focus-metrics dd{color:var(--text-strong);font-variant-numeric:tabular-nums;margin:7px 0 4px;font-size:1.8rem;font-weight:750}.report-focus-metrics small{color:var(--muted)}.report-focus-metrics .summary-alert{background:color-mix(in srgb, var(--sick) 11%, var(--bg))}.report-focus-metrics .summary-alert dd{color:var(--sick)}.report-focus-empty{border:1px dashed var(--border);background:color-mix(in srgb, var(--surface) 78%, var(--bg));text-align:center;border-radius:12px;padding:28px}.report-focus-empty h3,.report-focus-empty p{margin:0}.report-focus-empty p{max-width:62ch;color:var(--muted);margin:6px auto 0;line-height:1.5}.feature-switch-list{grid-template-columns:1fr 1fr;gap:8px 16px;display:grid}.feature-switch{border:1px solid var(--border);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:8px 10px;flex-direction:row!important;display:flex!important}.feature-switch>span{flex-direction:column;display:flex}.feature-switch small{color:var(--muted)}.feature-switch input{width:20px;height:20px;accent-color:var(--accent)}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}:where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 82%, white);outline-offset:2px}:where(button,.btn,.link-admin,.add-event-btn,.toggle-panel-btn,.refresh-btn){min-height:36px}@media (width<=900px){.board-command-bar{grid-template-columns:minmax(0,1fr)}.board-view-controls{justify-content:flex-start}.report-summary-strip{grid-template-columns:repeat(2,1fr)}.report-summary-strip>div{border-bottom:1px solid var(--border)}.report-visuals,.report-overview-grid,.report-overview-main .report-visuals{grid-template-columns:1fr}.report-exceptions{min-height:280px}.report-focus-metrics,.report-focus-metrics--compact{grid-template-columns:1fr 1fr}.directory-toolbar{flex-wrap:wrap;align-items:stretch}.directory-toolbar>div{width:100%}.directory-search{flex:220px;width:auto}}@media (width<=620px){.board-command-bar,.report-dashboard-heading{align-items:stretch}.board-view-controls{width:100%}.board-people-search{flex:1;width:auto}.view-switch{align-self:stretch}.view-switch button{flex:1}.report-summary-strip{grid-template-columns:1fr 1fr}.report-overview-summaries{grid-template-columns:1fr}.report-donut-row{align-items:flex-start}.report-workspace-heading{padding:16px}.report-section-tabs{padding-inline:8px}.report-global-toolbar{flex-wrap:wrap;align-items:stretch;padding:12px 16px}.report-global-toolbar-title{width:100%}.report-global-toolbar label{flex:130px}.report-global-toolbar input{width:100%}.report-tab-panel{padding:16px}.report-focus-metrics,.report-focus-metrics--compact{grid-template-columns:1fr}.report-focus-metrics>div{border-right:0;border-bottom:1px solid var(--border)}.feature-switch-list{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.reason-attendance{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:30px 0;padding:22px 0}.report-tab-panel>.reason-attendance{border-top:0;border-bottom:0;padding-top:0}.reason-attendance-heading h2,.reason-attendance-heading p{margin:0}.reason-attendance-heading p{color:var(--muted);margin-top:4px}.reason-attendance-filters{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 72%, var(--surface));border-radius:12px;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(130px,.7fr)) auto;align-items:end;gap:12px;margin-top:16px;padding:14px;display:grid}.reason-attendance-filters label{color:var(--muted);gap:5px;font-size:.78rem;display:grid}.reason-attendance-filters label small{font-weight:400}.reason-attendance-filters input,.reason-attendance-filters select{border:1px solid var(--border);background:var(--bg);width:100%;min-height:42px;color:var(--text);border-radius:8px;padding:8px 10px}.reason-threshold-input{position:relative}.reason-threshold-input input{padding-right:30px}.reason-threshold-input>span{color:var(--muted);pointer-events:none;position:absolute;top:50%;right:10px;translate:0 -50%}.reason-attendance-filter-actions{gap:8px;display:flex}.reason-attendance-definition{max-width:78ch;color:var(--muted);margin:10px 0 0;font-size:.8rem;line-height:1.45}.reason-attendance-results{margin-top:16px}.reason-attendance-summary{border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(4,minmax(150px,1fr));display:grid;overflow:hidden}.reason-attendance-summary>div{border-right:1px solid var(--border);background:var(--bg);grid-template-columns:1fr auto;align-items:baseline;gap:5px 12px;min-width:0;padding:16px;display:grid}.reason-attendance-summary span{color:var(--muted);font-size:.78rem}.reason-attendance-summary strong{color:var(--text-strong);margin-left:auto;font-size:1.35rem}.reason-attendance-summary small{color:var(--muted);grid-column:1/-1;font-size:.72rem}.reason-attendance-summary .below{background:color-mix(in srgb, var(--sick) 11%, var(--surface))}.reason-attendance-summary .below strong{color:var(--sick)}.reason-attendance-result-heading{justify-content:space-between;align-items:baseline;gap:12px;margin:20px 0 8px;display:flex}.reason-attendance-result-heading h3,.reason-attendance-result-heading p{margin:0}.reason-attendance-result-heading p{color:var(--muted);font-size:.8rem}.reason-attendance-table th:not(:first-child),.reason-attendance-table td:not(:first-child){text-align:right}.reason-attendance-table tr.below-threshold{background:color-mix(in srgb, var(--sick) 9%, var(--surface))}.reason-attendance-table tr.selected{box-shadow:inset 3px 0 var(--accent);background:color-mix(in srgb, var(--accent) 11%, var(--surface))}.reason-attendance-table th:last-child,.reason-attendance-table td:last-child{width:118px}.reason-detail-btn{white-space:nowrap;min-height:34px;padding:5px 9px}.threshold-flag{background:color-mix(in srgb, var(--sick) 18%, var(--surface));color:var(--sick);border-radius:999px;margin-left:8px;padding:2px 6px;font-size:.7rem;font-weight:700;display:inline-flex}.reason-attendance-master-detail{grid-template-columns:minmax(500px,.9fr) minmax(560px,1.1fr);align-items:start;gap:14px;display:grid}.reason-attendance-master{max-height:600px;margin:0;overflow:auto}.reason-attendance-master thead{z-index:1;position:sticky;top:0}.reason-person-detail{border:1px solid var(--border);background:var(--bg);border-radius:11px;min-width:0;overflow:hidden}.reason-person-detail>.report-table-wrap{border:0;border-radius:0;max-height:520px;margin:0;overflow:auto}.reason-detail-placeholder{border:1px dashed var(--border);min-height:220px;color:var(--muted);text-align:center;border-radius:11px;place-content:center;padding:28px;display:grid}.reason-detail-placeholder strong{color:var(--text-strong)}.reason-detail-placeholder span{max-width:38ch;margin-top:5px;line-height:1.45}.reason-person-detail-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;display:flex}.reason-person-detail-heading h4,.reason-person-detail-heading p{margin:0}.reason-person-detail-heading h4{color:var(--text-strong);font-size:1.05rem}.reason-person-detail-heading p{color:var(--muted);margin-top:3px;font-size:.78rem}.reason-session-ledger td{vertical-align:middle}.reason-session-ledger td:first-child{font-variant-numeric:tabular-nums}.reason-session-ledger td:first-child small{color:var(--muted);display:block}.reason-session-ledger .missed-session{background:color-mix(in srgb, var(--out) 7%, var(--bg))}.attendance-result{white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:.72rem;font-weight:700;display:inline-flex}.attendance-result--attended{background:color-mix(in srgb, var(--in) 17%, var(--surface));color:color-mix(in srgb, var(--in) 78%, var(--text))}.attendance-result--missed{background:color-mix(in srgb, var(--out) 16%, var(--surface));color:color-mix(in srgb, var(--out) 82%, var(--text))}.reason-session-dates{border:1px solid var(--border);border-radius:9px;margin-top:12px}.reason-session-dates summary{cursor:pointer;min-height:44px;padding:11px 13px}.reason-session-dates>div{flex-wrap:wrap;gap:6px;padding:0 13px 13px;display:flex}.reason-session-dates time{background:var(--bg);color:var(--muted);font-variant-numeric:tabular-nums;border-radius:6px;padding:4px 7px;font-size:.76rem}@media (width<=1000px){.reason-attendance-filters{grid-template-columns:1fr 1fr}.reason-attendance-filter-actions{align-self:end}.reason-attendance-master-detail{grid-template-columns:1fr}.reason-attendance-summary{grid-template-columns:1fr 1fr}}@media (width<=580px){.reason-attendance-filters{grid-template-columns:1fr}.reason-attendance-filter-actions>*{flex:1}.reason-attendance-result-heading{flex-direction:column;align-items:flex-start}.reason-attendance-summary{grid-template-columns:1fr}.reason-attendance-summary>div{border-right:0;border-bottom:1px solid var(--border)}}.roll-call-link{border-color:color-mix(in srgb, var(--sick) 55%, var(--border));color:color-mix(in srgb, var(--sick) 75%, var(--text))}.roll-call-page{background:var(--bg);min-height:100dvh;color:var(--text);padding:clamp(16px,3vw,34px)}.roll-call-header{justify-content:space-between;align-items:end;gap:20px;max-width:1320px;margin:0 auto 16px;display:flex}.roll-call-header h1{color:var(--text-strong);letter-spacing:-.03em;text-wrap:balance;margin:8px 0 2px;font-size:clamp(1.8rem,4vw,3rem)}.roll-call-header p{color:var(--muted);margin:0}.roll-call-back{color:var(--muted);text-decoration:none}.roll-call-back:hover{color:var(--text)}.roll-call-header-actions{gap:8px;display:flex}.roll-call-caution{border:1px solid color-mix(in srgb, var(--out) 55%, var(--border));background:color-mix(in srgb, var(--out) 9%, var(--surface));max-width:1320px;color:var(--text);border-radius:10px;margin:0 auto 18px;padding:11px 14px}.roll-call-local-warning{border:1px solid color-mix(in srgb, var(--sick) 50%, var(--border));background:color-mix(in srgb, var(--sick) 9%, var(--surface));max-width:1320px;color:var(--text);border-radius:10px;margin:-6px auto 18px;padding:11px 14px}.roll-call-page>.error{max-width:1320px;margin-inline:auto}.roll-call-empty{text-align:center;max-width:720px;margin:clamp(50px,12vh,130px) auto}.roll-call-empty h2{margin-bottom:8px}.roll-call-empty p{color:var(--muted);margin:0 auto 22px}.roll-call-summary{border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(5,minmax(120px,1fr));max-width:1320px;margin:0 auto 14px;display:grid;overflow:hidden}.roll-call-summary>*{border:0;border-right:1px solid var(--border);background:var(--surface);min-height:66px;color:var(--text);font:inherit;text-align:left;border-radius:0;justify-content:space-between;align-items:baseline;gap:10px;padding:14px;display:flex}.roll-call-summary>:last-child{border-right:0}.roll-call-summary button{cursor:pointer}.roll-call-summary button[aria-pressed=true]{box-shadow:inset 0 -3px 0 var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--surface))}.roll-call-summary .unconfirmed[aria-pressed=true]{box-shadow:inset 0 -3px 0 var(--out)}.roll-call-summary .safe[aria-pressed=true]{box-shadow:inset 0 -3px 0 var(--in)}.roll-call-summary span{color:var(--muted);font-size:.82rem}.roll-call-summary strong{color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:1.6rem}.roll-call-workspace,.roll-call-history{border:1px solid var(--border);background:var(--surface);border-radius:14px;max-width:1320px;margin:0 auto 18px;overflow:hidden}.roll-call-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:16px;padding:16px;display:flex}.roll-call-toolbar h2,.roll-call-toolbar p{margin:0}.roll-call-toolbar p{color:var(--muted);margin-top:3px;font-size:.82rem}.roll-call-toolbar label{min-width:min(280px,40vw);color:var(--muted);gap:4px;font-size:.78rem;display:grid}.roll-call-toolbar input{border:1px solid var(--border);background:var(--bg);min-height:42px;color:var(--text);border-radius:8px;padding:8px 11px}.roll-call-list{background:var(--border);gap:1px;margin:0;padding:0;list-style:none;display:grid}.roll-call-entry{background:var(--surface);justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:11px 14px;display:flex}.roll-call-entry>div:first-child{gap:3px;display:grid}.roll-call-entry>div:first-child span{color:var(--muted);font-size:.8rem}.roll-call-entry--safe{background:color-mix(in srgb, var(--in) 8%, var(--surface))}.roll-call-entry--not_on_site{background:color-mix(in srgb, var(--muted) 7%, var(--surface))}.roll-call-actions{gap:8px;display:flex}.roll-call-actions button{border:1px solid var(--border);background:var(--bg);min-height:44px;color:var(--text);cursor:pointer;border-radius:8px;padding:8px 13px}.roll-call-actions button[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--surface))}.roll-call-actions .roll-call-safe[aria-pressed=true]{border-color:var(--in);background:color-mix(in srgb, var(--in) 18%, var(--surface))}.roll-call-no-results{color:var(--muted);text-align:center;margin:0;padding:48px 16px}.roll-call-history{padding:16px}.roll-call-history h2{margin:0 0 12px}.roll-call-print{display:none}.roll-call-confirm-backdrop{z-index:100}.roll-call-confirm{border:1px solid color-mix(in srgb, var(--sick) 45%, var(--border));background:var(--surface);width:min(500px,100%);color:var(--text);border-radius:14px;grid-template-columns:auto 1fr;gap:14px;padding:20px;display:grid;box-shadow:0 8px 8px #00000059}.roll-call-confirm-symbol{background:color-mix(in srgb, var(--sick) 18%, var(--surface));width:38px;height:38px;color:var(--sick);border-radius:50%;place-items:center;font-size:1.25rem;font-weight:800;display:grid}.roll-call-confirm h2{color:var(--text-strong);margin:3px 0 7px;font-size:1.25rem}.roll-call-confirm p{max-width:58ch;color:var(--muted);margin:0;line-height:1.5}.roll-call-confirm-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;margin-top:6px;display:flex}@media (width<=760px){.roll-call-header,.roll-call-toolbar{flex-direction:column;align-items:stretch}.roll-call-header-actions{flex-wrap:wrap}.roll-call-header-actions>*{flex:1}.roll-call-summary{grid-template-columns:1fr 1fr}.roll-call-summary>*{border-bottom:1px solid var(--border)}.roll-call-summary>:last-child{grid-column:1/-1}.roll-call-toolbar label{min-width:0}.roll-call-entry{flex-direction:column;align-items:stretch}.roll-call-actions button{flex:1}}@media print{@page{size:A4 portrait;margin:12mm}html,body,#root{min-height:0;background:#fff!important}.roll-call-page{color:#111;min-height:0;padding:0;font-family:Arial,sans-serif;background:#fff!important}.roll-call-page>:not(.roll-call-print){display:none!important}.roll-call-print{color:#111;display:block}.roll-call-print-header{border-bottom:2px solid #111;justify-content:space-between;align-items:flex-start;gap:20mm;padding-bottom:5mm;display:flex}.roll-call-print-product{color:#555;margin:0 0 2mm;font-size:8pt;font-weight:700}.roll-call-print-header h1{color:#111;letter-spacing:-.02em;margin:0;font-size:24pt}.roll-call-print-tenant{margin:1.5mm 0 0;font-size:12pt;font-weight:700}.roll-call-print-meta{text-align:right;min-width:55mm;font-size:8.5pt}.roll-call-print-meta p{margin:0 0 2mm}.roll-call-print-warning{border:1px solid #555;margin:4mm 0;padding:3mm 4mm;font-size:8.5pt;line-height:1.35;background:#f2f2f2!important}.roll-call-print-summary{border:1px solid #777;grid-template-columns:repeat(5,1fr);margin-bottom:5mm;display:grid}.roll-call-print-summary div{border-right:1px solid #aaa;justify-content:space-between;align-items:baseline;gap:2mm;padding:3mm;display:flex}.roll-call-print-summary div:last-child{border-right:0}.roll-call-print-summary span{color:#444;font-size:8pt}.roll-call-print-summary strong{font-size:14pt}.roll-call-print-table{border-collapse:collapse;width:100%;font-size:9pt}.roll-call-print-table thead{display:table-header-group}.roll-call-print-table tr{break-inside:avoid}.roll-call-print-table th{text-align:left;text-transform:uppercase;border:1px solid #555;padding:2.5mm 2mm;font-size:7.5pt;background:#e8e8e8!important}.roll-call-print-table td{vertical-align:middle;border:1px solid #777;height:11mm;padding:2mm}.roll-call-print-table th:first-child,.roll-call-print-table td:first-child{text-align:center;width:12mm}.roll-call-print-table th:nth-child(3),.roll-call-print-table td:nth-child(3){width:18mm}.roll-call-print-table th:nth-child(4),.roll-call-print-table td:nth-child(4){width:26mm}.roll-call-print-table th:nth-child(5),.roll-call-print-table td:nth-child(5){width:20mm}.roll-call-print-table th:nth-child(6),.roll-call-print-table td:nth-child(6){width:40mm}.roll-call-print-check{font-size:16pt}.roll-call-print-footer{break-inside:avoid;grid-template-columns:1.2fr .8fr 1fr;gap:8mm;margin-top:10mm;font-size:8pt;display:grid}.roll-call-print-footer div{gap:5mm;display:grid}.roll-call-print-footer i{border-bottom:1px solid #444;display:block}.roll-call-print-footer p{color:#666;overflow-wrap:anywhere;grid-column:1/-1;margin:2mm 0 0;font-size:7pt}}@media (width>=700px) and (width<=1099px){.board-wrap,.board-wrap.board-wrap--footer{grid-template-rows:auto;height:auto;min-height:100dvh;max-height:none;overflow:visible}.board-header{align-items:flex-start}.header-actions{flex-wrap:wrap;justify-content:flex-end;min-width:0}.desktop-header-actions{flex-wrap:wrap;flex:auto;justify-content:flex-end;min-width:0}.board-columns{grid-template-rows:none;grid-template-columns:1fr;overflow:visible}.column{min-height:240px;max-height:42dvh}.directory-list{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-wrap,.platform-admin{padding-inline:20px}}@media (width<=699px){:where(button,.btn,.link-admin,.add-event-btn,.toggle-panel-btn,.refresh-btn){min-height:44px}.board-wrap,.board-wrap.board-wrap--footer{height:auto;min-height:100dvh;max-height:none;padding:8px max(8px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));flex-direction:column;display:flex;overflow:visible}.board-header{flex-direction:row;align-items:center;gap:10px}.board-header-left{flex:auto;width:auto;min-width:0}.board-header h1{overflow-wrap:anywhere;font-size:clamp(1.25rem,6vw,1.65rem)}.client-logo{max-width:56px;max-height:44px}.product-signature{display:none}.header-actions{flex-direction:row-reverse;flex:none;align-items:center;gap:8px;width:auto;padding:0;display:flex;position:relative;overflow:visible}.desktop-header-actions{display:none}.mobile-header-menu{display:block;position:relative}.board-clock{min-width:0;padding-inline:2px}.board-clock-hhmm{font-size:1.45rem}.board-clock-ss,.board-clock-date{display:none}.board-command-bar{gap:10px;padding:8px 0}.board-overview-status{grid-template-columns:repeat(auto-fit,minmax(62px,1fr));gap:5px;width:100%;display:grid}.board-summary-strip{display:contents}.board-summary-strip>button{justify-content:center;width:100%;min-width:0;padding-inline:5px}.board-summary-strip button{text-align:center;gap:4px;min-height:44px;display:flex}.board-summary-strip .summary-card-icon,.board-summary-strip .summary-card-copy small{display:none}.board-summary-strip .summary-card-copy{min-width:0;display:block}.board-summary-strip .summary-card-copy strong{font-size:.66rem}.board-summary-strip b{font-size:.76rem}.header-sync-status{justify-content:center;width:36px;min-width:36px;min-height:36px;padding:0;font-size:.68rem}.header-sync-status>span:not(.offline-status-dot),.header-sync-status strong,.header-sync-status small{display:none}.board-view-controls{grid-template-columns:1fr;width:100%;display:grid}.board-people-search,.saved-view-control,.view-switch{width:100%;min-width:0}.saved-view-tools{width:100%}.saved-view-control{flex:1}.saved-view-editor{grid-template-columns:1fr}.saved-view-editor form{flex-direction:column;align-items:stretch}.saved-view-editor-row{grid-template-columns:18px minmax(0,1fr) auto}.saved-view-editor-row small{grid-area:2/2/auto/-1}.board-columns{flex-direction:column;gap:10px;display:flex;overflow:visible}.column{min-height:0;max-height:none;overflow:visible}.column-body{flex:none;max-height:none;padding:8px;overflow:visible}.person-card-row{min-height:max(52px, var(--person-card-height,58px));padding:7px 8px}.person-card-ident{min-height:40px}.contact-tool-btn,.person-pin-btn{width:40px;height:40px}.schedule-leave-btn,.visitor-signout-btn{min-height:40px;padding-inline:12px}.visitor-card{flex-wrap:wrap;align-items:stretch}.directory-view{margin:0;overflow:visible}.directory-toolbar{grid-template-columns:1fr;gap:8px;padding:10px;display:grid}.directory-toolbar>div{grid-template-columns:1fr 1fr;width:100%;display:grid}.directory-search,.directory-filter{width:100%;min-width:0;min-height:44px}.result-pagination{flex-wrap:wrap;gap:8px 14px}.result-pagination>span{margin-right:0}.result-pagination nav{justify-content:center;width:100%}.directory-list{grid-template-columns:minmax(0,1fr);gap:8px;padding:8px}.directory-card{min-width:0}.board-footer{flex-direction:column;align-items:stretch;gap:10px;width:100%}.board-footer-split,.events-panel,.upcoming-leave-panel{width:100%;min-width:0;max-width:100%}.events-row,.upcoming-leave-row{min-width:0}.modal-backdrop,.platform-modal-backdrop{align-items:flex-end;padding:0}.modal,.platform-modal{width:100%;max-width:none;max-height:calc(100dvh - env(safe-area-inset-top));border-bottom:0;border-left:0;border-right:0;border-radius:18px 18px 0 0}.modal{padding:18px max(16px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left))}.reason-modal-grid{grid-template-columns:1fr}.reason-modal-label{text-align:left;padding:0}.reason-recent-setting{flex-direction:column;align-items:stretch}.gate,.board-password-gate{padding:max(16px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.gate-card,.board-password-card{width:min(100%,380px);max-width:380px;padding-inline:20px}.admin-wrap,.platform-admin{width:100%;padding:12px}.admin-header,.platform-header{flex-direction:column;align-items:stretch;gap:12px}.tabs{z-index:20;background:var(--bg);scrollbar-width:thin;flex-wrap:nowrap;padding-block:6px;position:sticky;top:0;overflow-x:auto}.tab{flex:none;min-height:44px}.panel,.report-tab-panel{padding:12px}.form-row{flex-direction:column;align-items:stretch}.form-row>:where(input,select,textarea,button,.btn){width:100%;min-width:0}.report-global-toolbar{grid-template-columns:1fr 1fr;display:grid}.report-global-toolbar-title,.report-global-toolbar .btn{grid-column:1/-1}.report-summary-strip{padding-bottom:4px;display:flex;overflow-x:auto}.report-summary-strip>div{border-bottom:0;flex:0 0 150px}.report-donut-row{flex-direction:column}.reason-attendance-master{max-height:none}.platform-layout{grid-template-columns:1fr}.platform-tenant-row{flex-direction:column;align-items:stretch}.platform-tenant-actions{width:100%}.platform-tenant-actions>*{flex:1}.calendar-page{padding:12px}.calendar-header{flex-direction:column;align-items:stretch;gap:12px}.calendar-header-actions{grid-template-columns:1fr 1fr;display:grid}.calendar-toolbar{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;display:grid}.calendar-today-btn{grid-column:1/-1}.calendar-month-label{text-align:center;min-width:0;font-size:1rem}.calendar-weekday-cell{padding-inline:1px;font-size:.68rem}.calendar-cell{border-radius:7px;min-height:50px}.calendar-cell--day{gap:3px;padding:5px 3px}.calendar-cell-events,.calendar-cell-leave{display:none}.calendar-cell-badges{justify-content:center;gap:3px;display:flex}.calendar-cell-count{color:#fff;border-radius:999px;place-items:center;min-width:17px;height:17px;padding-inline:3px;font-size:.62rem;font-weight:750;display:grid}.calendar-cell-count--events{background:var(--accent)}.calendar-cell-count--leave{background:var(--away)}.calendar-detail{padding:14px}.roll-call-page{padding:12px}.roll-call-summary>*{min-height:60px;padding:10px}.roll-call-actions{width:100%}.roll-call-confirm{border-radius:18px 18px 0 0;width:100%}}@media (width<=1099px){.command-view{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);height:auto;max-height:none;overflow:auto}.command-lanes{grid-template-rows:none;grid-template-columns:repeat(2,minmax(220px,1fr));height:auto;overflow:visible}.command-lane{height:auto;min-height:320px}.command-lane-list{max-height:62dvh}.command-actions{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));overflow:visible}.command-actions>button,.command-actions>a{min-height:72px}.roster-view{grid-template-columns:minmax(0,1fr);overflow:auto}.roster-main{min-height:420px}.roster-insights{grid-template-columns:repeat(3,minmax(220px,1fr));overflow:visible}.tile-groups{grid-template-columns:minmax(0,1fr)}}@media (width<=699px){.command-view-toolbar{flex-direction:column;align-items:stretch}.command-view-toolbar>strong{margin:0}.person-detail-panel{width:calc(100vw - 16px);top:8px;bottom:8px;right:8px}.view-switch{grid-template-columns:repeat(3,1fr);display:grid}.view-switch button{min-width:0;padding-inline:5px}.command-lanes,.command-actions{grid-template-columns:minmax(0,1fr)}.roster-view{overflow:auto}.roster-main{min-height:0;overflow:visible}.roster-insights{grid-template-columns:minmax(0,1fr)}.roster-scroll{overflow:visible}.roster-view table,.roster-view tbody{display:block}.roster-view thead{clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.roster-view tr{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;gap:5px 10px;padding:10px;display:grid}.roster-view td{border:0;padding:0;display:block}.roster-view td:first-child,.roster-view td:nth-child(3){grid-column:1}.roster-view td:nth-child(2),.roster-view td:nth-child(5){text-align:right;grid-column:2}.roster-view td:nth-child(4){display:none}.roster-person{min-width:0}.tile-group>div{grid-template-columns:repeat(2,minmax(0,1fr))}.presence-tile{min-height:164px}.tiles-action-dock{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles-action-dock>a,.tiles-action-dock>button{min-height:54px}}@media (width<=419px){.tile-group>div{grid-template-columns:minmax(0,1fr)}}.pwa-install{right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));z-index:1200;position:fixed}.pwa-install-button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#6f3cc3,#9b5de5);border:1px solid #bd97ff8c;border-radius:999px;align-items:center;gap:.5rem;padding:.7rem 1rem;font-weight:700;display:inline-flex;box-shadow:0 10px 30px #2f165761}.pwa-install-button:hover{transform:translateY(-1px)}.pwa-install-button:focus-visible{outline-offset:3px;outline:3px solid #d9c2ff}.pwa-install-help{color:#f8f5ff;background:#171020;border:1px solid #bd97ff59;border-radius:1rem;width:min(22rem,100vw - 2rem);padding:1.25rem;position:absolute;bottom:calc(100% + .75rem);right:0;box-shadow:0 18px 55px #0000007a}.pwa-install-help h2{margin:0 2rem .5rem 0;font-size:1.15rem}.pwa-install-help p{margin:0 0 1rem;line-height:1.55}.pwa-install-close{color:inherit;cursor:pointer;background:0 0;border:0;font-size:1.6rem;position:absolute;top:.65rem;right:.75rem}@media (width<=600px){.pwa-install{right:max(.75rem, env(safe-area-inset-right));bottom:max(.75rem, env(safe-area-inset-bottom))}}
