@font-face{font-family:Literata;src:url(/assets/literata-700-DYBWKELl.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--brand:#022b54;--brand-pressed:#0b3f78;--brand-tint:#dfe8f3;--on-brand:#fff;--on-brand-soft:#c9d6e6;--text:#0f1720;--muted:#4a5563;--bg:#fff;--canvas:#f2f6fa;--line:#c8d0da;--line-strong:#848f9e;--primary:var(--brand);--primary-text:var(--on-brand);--primary-soft:var(--brand-tint);--done-soft:#e3f3e8;--done-bg:#146c34;--done-text:#fff;--error-bg:#fde7e7;--error-text:#8a1111;--notice-bg:#fff4d6;--radius:4px;--radius-sm:2px;--weave-light:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><defs><pattern id='w' width='20' height='20' patternUnits='userSpaceOnUse' patternTransform='rotate(45)'><g fill='white' fill-opacity='.03'><rect y='1' width='10' height='3.5'/><rect y='5.5' width='10' height='3.5'/><rect x='10' y='11' width='10' height='3.5'/><rect x='10' y='15.5' width='10' height='3.5'/></g><g fill='white' fill-opacity='.014'><rect x='11' width='3.5' height='10'/><rect x='15.5' width='3.5' height='10'/><rect x='1' y='10' width='3.5' height='10'/><rect x='5.5' y='10' width='3.5' height='10'/></g></pattern></defs><rect width='100%' height='100%' fill='url(%23w)'/></svg>");--weave-ink:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><defs><pattern id='w' width='20' height='20' patternUnits='userSpaceOnUse' patternTransform='rotate(45)'><g fill='%23022b54' fill-opacity='.07'><rect y='1' width='10' height='3.5'/><rect y='5.5' width='10' height='3.5'/><rect x='10' y='11' width='10' height='3.5'/><rect x='10' y='15.5' width='10' height='3.5'/></g><g fill='%23022b54' fill-opacity='.03'><rect x='11' width='3.5' height='10'/><rect x='15.5' width='3.5' height='10'/><rect x='1' y='10' width='3.5' height='10'/><rect x='5.5' y='10' width='3.5' height='10'/></g></pattern></defs><rect width='100%' height='100%' fill='url(%23w)'/></svg>");--weave-print:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><defs><pattern id='w' width='20' height='20' patternUnits='userSpaceOnUse' patternTransform='rotate(45)'><g fill='black' fill-opacity='.9'><rect y='1' width='10' height='3.5'/><rect y='5.5' width='10' height='3.5'/><rect x='10' y='11' width='10' height='3.5'/><rect x='10' y='15.5' width='10' height='3.5'/></g><g fill='black' fill-opacity='.45'><rect x='11' width='3.5' height='10'/><rect x='15.5' width='3.5' height='10'/><rect x='1' y='10' width='3.5' height='10'/><rect x='5.5' y='10' width='3.5' height='10'/></g></pattern></defs><rect width='100%' height='100%' fill='url(%23w)'/></svg>");--font-display:"Literata", Georgia, "Noto Serif", serif;--ease-out:cubic-bezier(.16, 1, .3, 1);color:var(--text);background:var(--canvas);accent-color:var(--brand);caret-color:var(--brand);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:20px;line-height:1.4}::selection{background:var(--brand-tint);color:var(--brand)}:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.brand-bar :focus-visible,.page-done :focus-visible{outline-color:var(--on-brand)}*{box-sizing:border-box}html{scrollbar-gutter:stable;-webkit-tap-highlight-color:transparent}html:has(.page-done){background:var(--weave-light), var(--brand)}body{margin:0;overflow-x:hidden}.page{max-width:34rem;min-height:100vh;margin:0 auto;padding:12px 16px 40px}.page-done{background:var(--weave-light), var(--brand);max-width:none;color:var(--on-brand)}.page-done main{text-align:center;max-width:32rem;margin:0 auto}header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.brand-bar{isolation:isolate;color:var(--on-brand);margin:-12px 0 8px;padding:14px 0 18px;position:relative}.brand-bar:before{content:"";z-index:-1;background:var(--weave-light), var(--brand);border-bottom:5px double #c9d6e673;position:absolute;inset:0 -100vmax}.church{flex-direction:column;min-width:0;display:flex}.church-name{font-family:var(--font-display);letter-spacing:.005em;font-size:1.15rem;font-weight:700;line-height:1.2}.church-sub{color:var(--on-brand-soft);font-size:.85rem}.brand-bar .lang{border-color:var(--on-brand);color:var(--on-brand);background:0 0;flex:none}h1{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;margin:.7em 0 .45em;font-size:1.75rem;font-weight:700;line-height:1.2}p{text-wrap:pretty}h2{color:var(--brand);text-wrap:balance;margin:1.3em 0 .4em;font-size:1.15rem;font-weight:700}button,input{font:inherit}button{cursor:pointer;border-radius:var(--radius)}button:disabled{opacity:.5;cursor:default}button[aria-busy=true]{opacity:1;cursor:progress}.primary:disabled:not([aria-busy=true]){opacity:1;color:#3a4654;background:#dde3ea}h1:focus{outline:none}.primary,.secondary{width:100%;min-height:64px;margin:16px 0 8px;padding:12px 16px;font-size:1.3rem;font-weight:700;display:block}.primary{background:var(--primary);color:var(--primary-text);border:none}.secondary{border:2px solid var(--primary);background:var(--bg);color:var(--primary)}.primary:active:not(:disabled){background:var(--brand-pressed)}.secondary:active:not(:disabled){background:var(--brand-tint)}.primary.on-brand{background:var(--on-brand);color:var(--brand)}.primary.on-brand:active:not(:disabled){background:var(--brand-tint)}.link.on-brand{color:var(--on-brand);text-underline-offset:4px}.undo{margin-top:40px}.link{width:100%;min-height:48px;color:var(--primary);background:0 0;border:none;margin:4px 0;text-decoration:underline;display:block}.lang{border:2px solid var(--text);background:var(--bg);min-height:44px;color:var(--text);padding:6px 14px;font-weight:600}.big-input{border:2px solid var(--text);border-radius:var(--radius);width:100%;min-height:60px;margin:8px 0;padding:10px 14px;font-size:1.3rem;display:block}.people,.matches,.done-list{margin:0;padding:0;list-style:none}.person{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:72px;padding:8px 0;display:flex}.person>.name{overflow-wrap:break-word;flex:1;min-width:0}.match,.confirm-name,.done-list li{overflow-wrap:break-word}.confirm-name{margin:.4em 0 .8em;font-size:1.6rem;font-weight:700}.field-error{color:var(--error-text);margin:0 0 8px;font-weight:600}.big-input[aria-invalid=true]{border-color:var(--error-text)}.here-toggle{border:2px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);cursor:pointer;flex:none;align-items:center;gap:10px;min-height:56px;padding:6px 14px 6px 10px;font-weight:600;display:flex}.here-toggle.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.tickbox{flex:none;display:flex;position:relative}.here-toggle input{appearance:none;border:2px solid var(--text);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;width:30px;height:30px;margin:0}.here-toggle input:checked{border-color:var(--primary);background:var(--primary)}.tickbox-mark{pointer-events:none;stroke:var(--on-brand);stroke-dasharray:16;stroke-dashoffset:16px;opacity:0;position:absolute;inset:4px}.here-toggle input:checked+.tickbox-mark{stroke-dashoffset:0;opacity:1}@media (forced-colors:active){.here-toggle input{appearance:auto;-webkit-appearance:checkbox}.tickbox-mark{display:none}}.checked-badge{border-radius:var(--radius);background:var(--done-soft);max-width:48%;color:var(--done-bg);flex:0 auto;align-items:center;gap:6px;padding:8px 12px;font-weight:600;display:inline-flex}.check-mark{flex:none}.secondary.quiet{border-color:var(--line-strong);min-height:56px;font-size:1.1rem;font-weight:600}.plus{vertical-align:-.05em;width:.9em;height:.9em;margin-right:.35em;display:inline-block}.name{flex-direction:column;display:flex}.name.plain{justify-content:center}.note{font-size:.85rem}.remove{border:2px solid var(--error-text);background:var(--bg);min-height:48px;color:var(--error-text);padding:6px 12px}.confirm-remove{flex-direction:column;align-items:stretch;gap:0;padding:12px 0}.confirm-remove p{margin:0 0 10px;font-weight:600}.confirm-actions{gap:10px;display:flex}.confirm-actions button{flex:1;font-weight:600}.keep{border:2px solid var(--text);background:var(--bg);min-height:48px;color:var(--text);padding:6px 12px;font-weight:600}.all-set{border-radius:var(--radius);background:var(--done-soft);color:var(--done-bg);margin:20px 0 8px;padding:14px 16px;font-weight:600}.all-set p{margin:0}.all-set .all-set-hint{color:var(--text);margin-top:6px;font-weight:400}.match{border:2px solid var(--line-strong);background:var(--bg);width:100%;min-height:60px;color:var(--text);text-align:left;margin:6px 0;padding:10px 14px;font-size:1.2rem;display:block}.muted{color:var(--muted)}.page-done .muted{color:inherit}.error{border-radius:var(--radius);background:var(--error-bg);color:var(--error-text);padding:12px 14px}.notice{border-radius:var(--radius);background:var(--notice-bg);padding:4px 14px}.tick{isolation:isolate;width:104px;height:104px;margin:40px auto 0;position:relative}.tick:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#fff3,#ffffff0f 55%,#0000);border-radius:50%;position:absolute;inset:-96px}.tick svg{width:100%;height:100%;display:block}.tick path{stroke:var(--brand)}.done-date{color:var(--on-brand-soft);margin:0 0 .6em}.page-done h1{margin-top:.5em;font-size:2rem}.done-list li{padding:6px 0;font-size:1.3rem;font-weight:600;line-height:1.35}.done-list .check-mark{vertical-align:-.05em;width:.85em;height:.85em;margin-right:.35em}.see-you{font-family:var(--font-display);margin:.6em 0 0;font-size:1.15rem;font-weight:700}.done-button{margin-top:32px}@media (prefers-reduced-motion:no-preference){.tick circle{transform-box:fill-box;transform-origin:50%;animation:tick-swell .46s var(--ease-out) both}.tick path{stroke-dasharray:64;animation:.36s cubic-bezier(.65,0,.35,1) .24s both tick-draw}.tick:before{animation:tick-glow .9s .16s var(--ease-out) both}.page-done h1,.done-date,.done-list li,.see-you,.page-done .primary,.page-done .undo{animation:arrive .36s var(--ease-out) both}.page-done h1{animation-delay:.3s}.done-date{animation-delay:.34s}.done-list li{animation-delay:.38s}.done-list li:nth-child(2){animation-delay:.42s}.done-list li:nth-child(n+3){animation-delay:.46s}.see-you{animation-delay:.5s}.done-list .check-mark path{stroke-dasharray:16;animation:.3s cubic-bezier(.65,0,.35,1) .48s both check-draw}.done-list li:nth-child(2) .check-mark path{animation-delay:.52s}.done-list li:nth-child(n+3) .check-mark path{animation-delay:.56s}.here-toggle input{transition:background-color .16s ease-out,border-color .16s ease-out}.tickbox-mark{transition:stroke-dashoffset .14s ease-in,opacity 0s .14s}.here-toggle input:checked+.tickbox-mark{transition:stroke-dashoffset .26s cubic-bezier(.65,0,.35,1) 60ms,opacity}.page-done .primary,.page-done .undo{animation-delay:.52s}.primary,.secondary,.here-toggle,.match,.keep,.remove,.tab,.mark,.small,.person-row{transition:transform .12s var(--ease-out), background-color .16s ease-out, border-color .16s ease-out, color .16s ease-out}.primary:active:not(:disabled),.secondary:active:not(:disabled),.match:active:not(:disabled),.here-toggle:active,.tab:active,.mark:active:not(:disabled),.small:active:not(:disabled),.person-row:active{transform:scale(.98)}.view{animation:screen-in .28s var(--ease-out) both}.door-notice{animation:arrive .24s var(--ease-out) both}.door-notice .check-mark path{stroke-dasharray:16;animation:.3s cubic-bezier(.65,0,.35,1) .1s both check-draw}.door-count{animation:count-step .32s var(--ease-out) both}.person{transition:background-color .2s ease-out}.save-bar:not(.saved-bar){animation:bar-up .26s var(--ease-out) both}.save-bar .notice,.save-bar .success{animation:arrive .22s var(--ease-out) both}.door-notice[data-played],.door-notice[data-played] .check-mark path,.door-count[data-played],.save-bar[data-played]{animation:none}.all-set{animation:arrive .32s var(--ease-out) both}.screen-in{animation:screen-in .28s var(--ease-out) both}.page{transition:background-color .32s ease-out,color .32s ease-out}.confirm-remove,.error,.field-error{animation:arrive .22s var(--ease-out) both}}@media (prefers-reduced-motion:reduce){.tick,.page-done h1,.done-date,.done-list,.see-you{animation:.2s ease-out both fade}.screen-in,.view,.door-notice,.door-count,.save-bar:not(.saved-bar),.save-bar .notice,.save-bar .success,.confirm-remove,.error,.field-error{animation:.16s ease-out both fade}}@keyframes tick-swell{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes tick-draw{0%{opacity:0;stroke-dashoffset:64px}1%{opacity:1}to{stroke-dashoffset:0}}@keyframes tick-glow{0%{opacity:0;transform:scale(.5)}}@keyframes arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes screen-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes check-draw{0%{opacity:0;stroke-dashoffset:16px}1%{opacity:1}to{stroke-dashoffset:0}}@keyframes count-step{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes bar-up{0%{transform:translateY(100%)}to{transform:none}}@keyframes fade{0%{opacity:0}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.door-status{border-top:3px solid var(--brand);background:var(--weave-ink), var(--brand-tint);color:var(--brand);border-radius:0;margin:16px 0 12px;padding:12px 16px}.door-status p{margin:2px 0 0}.door-service{margin:0;font-size:1.3rem}.door-count{font-variant-numeric:tabular-nums;font-weight:700}.services-section{border-top:2px solid var(--line);margin-top:32px;padding-top:4px}.door-list .person{flex-wrap:wrap;column-gap:12px}.door-list .person>.name{flex:6rem}.door-list .person>button{margin-left:auto}.present-note{color:var(--done-bg);align-items:flex-start;gap:6px;font-weight:600;display:flex}.present-note .check-mark{margin-top:.22em}.door-notice{align-items:flex-start;gap:8px;display:flex}.door-notice .check-mark{margin-top:.22em}.signed-in{color:var(--muted);margin-top:40px;font-size:.85rem}.inline-link{min-height:44px;color:var(--primary);background:0 0;border:none;padding:0 4px;font-weight:600;text-decoration:underline}.success{border-radius:var(--radius);background:var(--done-soft);color:var(--done-bg);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-weight:600;display:flex}.find-label{margin-top:12px;font-weight:600;display:block}.mark{background:var(--primary);min-height:52px;color:var(--primary-text);border:none;flex:none;padding:8px 16px;font-weight:700}.small{border:2px solid var(--line-strong);background:var(--bg);min-height:44px;color:var(--text);padding:6px 12px}.filters{flex-wrap:wrap;gap:12px;margin:8px 0 12px;display:flex}.filters label{flex-direction:column;flex:12rem;min-width:0;font-size:.85rem;font-weight:600;display:flex}.filters.time-fields label{font-size:inherit}.row-action{color:var(--primary);text-underline-offset:3px;flex:none;font-weight:600;text-decoration:underline}select{max-width:100%;font:inherit;border:2px solid var(--text);border-radius:var(--radius);background:var(--bg);min-height:48px;color:var(--text);margin-top:4px;padding:6px 10px}.person-row{border:none;border-bottom:1px solid var(--line);width:100%;min-height:72px;color:var(--text);text-align:left;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.status-tag{border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary);flex:none;padding:4px 10px;font-size:.85rem;font-weight:600}.back-link{text-align:left;width:auto;padding-left:0}.button-link{text-align:center;border-radius:var(--radius);text-decoration:none}.history{margin:0;padding:0;list-style:none}.history li{border-bottom:1px solid var(--line);flex-direction:column;padding:10px 0;display:flex}.hint{margin-top:0;font-size:.85rem}.tab{border:2px solid var(--line-strong);background:var(--bg);min-width:0;min-height:48px;color:var(--text);font-weight:700}.tab.on{border-color:var(--primary);background:var(--primary);color:var(--primary-text)}.show-choice{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 4px;display:grid}.add-link{justify-content:center;align-items:center;gap:8px;display:flex}.link.danger,.danger-zone{margin-top:32px;margin-bottom:24px}.link.danger{color:var(--error-text)}.subtitle{color:var(--muted);font-size:1rem;font-weight:400;display:block}.person.changed{background:var(--notice-bg)}.change-note{font-weight:700}.save-bar{bottom:var(--nav-h,0px);border-top:2px solid var(--line);background:var(--bg);margin:16px -16px 0;padding:12px 16px;position:sticky}.pending-tools{flex-wrap:wrap;justify-content:space-between;gap:0 12px;margin:4px 0 8px;font-size:.9rem;display:flex}.pending-tools .find-label,.pending-tools .big-input{flex-basis:100%}@media (width<=359px){.save-bar .primary{font-size:1.1rem}}.save-bar .primary{margin-block:0}.save-bar .notice+.primary{margin-top:8px}.save-bar .link{min-height:48px}.poster{border:2px dashed var(--line);color:#000;text-align:center;background:#fff;max-width:640px;margin:24px auto;padding:24px}.poster:before,.poster:after{content:"";background:var(--weave-print);-webkit-print-color-adjust:exact;print-color-adjust:exact;height:14px;display:block}.poster:before{margin:-8px -8px 20px}.poster:after{margin:20px -8px -8px}.poster span[lang=fil]{display:block}.poster-church{margin:0;font-size:1.4rem;font-weight:700}.poster-title{color:inherit;margin:8px 0 16px;font-size:2.6rem;line-height:1.1}.poster-title span[lang=fil]{font-size:1.8rem}.poster-qr svg{width:70%;max-width:11cm;height:auto;margin:0 auto;display:block}.poster-steps{text-align:left;gap:24px;margin:16px 0;font-size:1.15rem;display:flex}.poster-steps ol{flex:1;margin:0;padding-left:1.4em}.poster-note{margin:8px 0}.poster-note span[lang=fil]{color:#333}.poster-address{margin:16px 0 8px;font-size:1.2rem}@media print{@page{margin:1.5cm}.poster-controls{display:none}html,body{background:#fff}.poster{break-inside:avoid;border:none;max-width:none;margin:0;padding:0;font-size:13pt}.poster:before{margin:0 0 .4cm}.poster:after{margin:.4cm 0 0}.poster-church{font-size:16pt}.poster-title{margin:.2cm 0 .4cm;font-size:30pt}.poster-title span[lang=fil]{font-size:20pt}.poster-qr svg{width:9cm;max-width:none}.poster-steps{margin:.4cm 0;font-size:13pt}.poster-note{margin:.2cm 0}.poster-address{margin:.4cm 0 .2cm;font-size:14pt}}.show-choice.three{grid-template-columns:repeat(3,1fr)}.dash-card{border-bottom:1px solid var(--line);padding:4px 0 20px}.dash-card:last-child{border-bottom:0}.dash-main>.dash-card:last-child{border-bottom:1px solid var(--line)}@media (width>=1120px){.dashboard{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;column-gap:56px;display:grid}.dashboard>:not(.dash-main,.dash-side){grid-column:1/-1}.dash-main>.dash-card:last-child{border-bottom:0}}.dash-card h3{text-wrap:balance;margin:1em 0 .2em;font-size:1rem;font-weight:700}.dash-sub{margin:0}.dash-hero{color:var(--brand);flex-wrap:wrap;align-items:baseline;gap:0 10px;margin:4px 0;font-weight:700;display:flex}.dash-empty{color:var(--brand);margin:8px 0;font-weight:700}.dash-trend{transition:opacity .16s var(--ease-out)}.dash-trend.is-loading{opacity:.4}.dash-hero-number{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:3.5rem;line-height:1}.dash-figures{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 12px;margin:16px 0 8px;display:grid}@supports (grid-template-rows:subgrid){.dash-figures>div{grid-row:span 2;grid-template-rows:subgrid;align-items:end;display:grid}.dash-figures dd{align-self:start}}.dash-figures dt{color:var(--muted);font-size:.85rem;font-weight:600;line-height:1.3}.dash-figures dd{color:var(--brand);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:1.5rem;font-weight:700;line-height:1.2}.dash-figures dd span{color:var(--muted);font-size:.85rem;font-weight:600;display:block}.dash-figures .dash-avg-key{vertical-align:middle;border-top:2px dashed var(--muted);width:22px;margin-left:8px;display:inline-block}.dash-chart{margin:0 0 8px}.dash-tip{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font-variant-numeric:tabular-nums;padding:6px 10px;font-size:.9rem}.dash-list summary,.fold summary{min-height:48px;color:var(--brand);cursor:pointer;align-items:center;gap:8px;font-weight:600;list-style:none;display:flex}.dash-list summary::-webkit-details-marker{display:none}.fold summary::-webkit-details-marker{display:none}.dash-list summary .chevron,.fold summary .chevron{transition:transform .16s var(--ease-out);flex:none}.dash-list[open] summary .chevron,.fold[open]>summary .chevron{transform:rotate(90deg)}.person-row .chevron{color:var(--muted);flex:none}.dash-list .person-row .name,.service-rows .person-row .name{font-weight:600}.dash-gap{border-bottom:1px solid var(--line);align-items:center;min-height:72px;padding:8px 0;display:flex}.dash-bars{margin:8px 0 0;padding:0;list-style:none}.dash-bars li{margin:0 0 12px}.dash-bar-label{justify-content:space-between;gap:12px;display:flex}.dash-bar-value{font-variant-numeric:tabular-nums;flex:none;font-weight:700}.dash-bar-track{border-radius:var(--radius-sm);background:var(--brand-tint);height:12px;margin-top:4px;display:block;overflow:hidden}.dash-bar-fill{border-radius:var(--radius-sm);background:var(--brand);height:100%;display:block}.page:has(.bottom-nav){padding-bottom:calc(var(--nav-h,72px) + 24px)}.bottom-nav{z-index:10;padding:4px 4px max(4px, env(safe-area-inset-bottom));border-top:2px solid var(--line);background:var(--bg);position:fixed;inset:auto 0 0}.bottom-nav-row{gap:2px;max-width:34rem;margin:0 auto;display:flex}.nav-item{border-radius:var(--radius);min-height:56px;color:var(--muted);text-align:center;background:0 0;border:0;flex-direction:column;flex:auto;align-items:center;gap:2px;padding:6px 2px 5px;font-size:.8rem;font-weight:700;line-height:1.15;display:flex}.nav-label{text-wrap:balance;min-width:44px}.nav-icon{flex:none}.nav-item.on{background:var(--primary);color:var(--primary-text)}.nav-item:not(.on):active{background:var(--brand-tint);color:var(--brand)}@media (width>=360px){.nav-item{padding-inline:4px;font-size:.85rem}}@media (prefers-reduced-motion:no-preference){.nav-item{transition:background-color .15s var(--ease-out), color .15s var(--ease-out)}}.strip-row{gap:4px;margin:8px 0 0;padding:0;list-style:none;display:flex}.strip-row li{aspect-ratio:1;border:2px solid var(--line-strong);border-radius:var(--radius-sm);flex:1 1 0;max-width:36px}.strip-row li.came{border-color:var(--brand);background:var(--brand)}.strip-ends{max-width:476px;color:var(--muted);justify-content:space-between;margin:4px 0 0;font-size:.85rem;display:flex}.strip-key{flex-wrap:wrap;gap:4px 20px;margin:8px 0 0;font-size:.85rem;display:flex}.strip-key span{align-items:center;gap:8px;display:inline-flex}.strip-key i{border:2px solid var(--line-strong);border-radius:var(--radius-sm);width:16px;height:16px}.strip-key i.came{border-color:var(--brand);background:var(--brand)}.dash-today .link{text-align:left;padding:0}@media (width>=1024px){.page:has(>.desk){padding-inline:32px;max-width:1424px;padding-bottom:40px}.desk{grid-template-columns:200px minmax(0,1fr);align-items:start;column-gap:40px;display:grid}.desk>*{grid-column:2}.desk>.bottom-nav{z-index:auto;background:0 0;border-top:0;grid-area:1/1/span 4;margin-top:16px;padding:0;position:sticky;inset:16px auto auto}.bottom-nav-row{flex-direction:column;gap:4px;max-width:none}.nav-item{text-align:left;flex-direction:row;flex:none;gap:12px;padding:0 14px;font-size:1rem}.nav-label{min-width:0}.desk>[data-tab]{max-width:34rem}.desk>[data-tab=dashboard]{max-width:none}.save-bar{bottom:0}@media (hover:hover){.person-row:hover{background:var(--bg);box-shadow:-12px 0 var(--bg), 12px 0 var(--bg)}.nav-item:not(.on):hover{background:var(--bg);color:var(--brand)}}}@media (width>=1120px){:is(.desk>[data-tab=people],.desk>[data-tab=attendance]:has(>.door-panes:not([hidden]))){max-width:none}.people-panes:not([hidden]){grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:48px;display:grid}.person-pane{max-height:100vh;margin:0 -8px;padding:16px 8px;position:sticky;top:0;overflow-y:auto}.pick-person{margin-top:0;padding-top:calc(1.225rem + 8px)}.person-row[aria-current],.person-row[aria-current]:hover{background:var(--brand-tint);box-shadow:-12px 0 var(--brand-tint), 12px 0 var(--brand-tint);color:var(--brand)}.door-panes:not([hidden]){grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;column-gap:48px;display:grid}.door-panes>.services-section{border-top:0;margin-top:16px;padding-top:0}.door-panes>.services-section>h2{margin-top:0}}
