@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:#e8eef6;--on-brand:#fff;--on-brand-soft:#c9d6e6;--text:#0f1720;--muted:#4a5563;--bg:#fff;--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;--font-display:"Literata", Georgia, "Noto Serif", serif;--ease-out:cubic-bezier(.16, 1, .3, 1);color:var(--text);background:var(--bg);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}html:has(.page-done){background:var(--brand)}body{margin:0}.page{max-width:34rem;min-height:100vh;margin:0 auto;padding:12px 16px 40px}.page-done{background: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{background:var(--brand);color:var(--on-brand);box-shadow:0 0 0 100vmax var(--brand);clip-path:inset(0 -100vmax);margin:-12px 0 8px;padding:14px 0}.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);margin:1.3em 0 .4em;font-size:1.05rem;font-weight:700}button,input{font:inherit}button{cursor:pointer;border-radius:12px}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:12px;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);cursor:pointer;border-radius:12px;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)}.here-toggle input{width:30px;height:30px;accent-color:var(--primary);margin:0}.checked-badge{background:var(--done-soft);max-width:48%;color:var(--done-bg);border-radius:12px;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{background:var(--done-soft);color:var(--done-bg);border-radius:12px;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{background:var(--error-bg);color:var(--error-text);border-radius:12px;padding:12px 14px}.notice{background:var(--notice-bg);border-radius:12px;padding:4px 14px}.tick{width:104px;height:104px;margin:40px auto 0}.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}.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}.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}.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 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{background:var(--brand-tint);color:var(--brand);border-radius:12px;margin:4px 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}.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{background:var(--done-soft);color:var(--done-bg);border-radius:12px;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;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{font:inherit;border:2px solid var(--text);background:var(--bg);min-height:48px;color:var(--text);border-radius:12px;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{background:var(--primary-soft);color:var(--primary);border-radius:999px;flex:none;padding:4px 10px;font-size:.85rem;font-weight:600}.status-tag.status-inactive{background:var(--notice-bg);color:var(--text)}.back-link{text-align:left;width:auto;padding-left:0}.button-link{text-align:center;border-radius:12px;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}.tabs{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:14px 0 8px;display:grid}.tab{border:2px solid var(--line-strong);background:var(--bg);min-width:0;min-height:48px;color:var(--text);font-weight:700}.tabs.compact{gap:6px;display:flex}.tabs.compact .tab{flex:auto;min-width:auto;min-height:44px;padding:4px 6px;font-size:.85rem;line-height:1.15}@media (width<=379px){.tabs.compact{grid-template-columns:1fr 1fr;display:grid}}.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}.count-tag{flex:none;font-weight:600}.link.danger{color:var(--error-text);margin-top:32px}.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{border-top:2px solid var(--line);background:var(--bg);margin:16px -16px 0;padding:12px 16px;position:sticky;bottom:0}.save-bar-links{flex-wrap:wrap;justify-content:space-between;gap:0 12px;margin-top:4px;font-size:.9rem;display:flex}.poster{border:2px dashed var(--line);color:#000;text-align:center;background:#fff;max-width:640px;margin:24px auto;padding:24px}.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-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}}
