:root{--bg: #ffffff;--paper: #ffffff;--on-ink: #ffffff;--glass: rgba(255, 255, 255, .9);--surface: #f2f2f2;--surface-2: #e9e9e9;--line: #e2e2e2;--ink: #0f0f0f;--text: #0f0f0f;--muted: #808080;--charcoal: #2e2e2e;--lime: #c7ff2e;--lime-ink: #0f0f0f;--red: #e5483b;--red-bg: #ffe7e4;--amber: #b97a00;--amber-bg: #fff1cf;--violet: #7a4fd6;--violet-bg: #eee6ff;--r-xl: 32px;--r-lg: 26px;--r-md: 18px;--display: "Manjari", "Inter", system-ui, sans-serif;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);color-scheme:light}:root[data-theme=dark]{--bg: #0b0b0b;--paper: #262626;--on-ink: #ffffff;--glass: rgba(28, 28, 28, .88);--surface: #181818;--surface-2: #262626;--line: #2c2c2c;--ink: #2e2e2e;--text: #f2f2f2;--muted: #8f8f8f;--red: #ff6b5e;--red-bg: #3a1714;--amber: #ffc04d;--amber-bg: #3a2c0d;--violet: #b99bff;--violet-bg: #2a2140;color-scheme:dark}:root[data-theme=dark] .chip.on,:root[data-theme=dark] .seg button.on{background:#f2f2f2;color:#0f0f0f;border-color:#f2f2f2}:root[data-theme=dark] .chip.on em{color:#0f0f0f}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--bg);color:var(--text);font:15px/1.4 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:0;padding:0;cursor:pointer;text-align:left}h1,h2,p{margin:0}h2{font-size:17px;font-weight:700;letter-spacing:-.02em}.muted{color:var(--muted)}.grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.grow strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:650}main{max-width:640px;margin:0 auto}.page{padding:calc(var(--safe-t) + 14px) 16px calc(112px + var(--safe-b));display:flex;flex-direction:column;gap:18px}section{display:flex;flex-direction:column;gap:10px}.splash{min-height:100vh;background:var(--ink) url(/brand/brave-white.png) center / 140px auto no-repeat}.top{display:flex;align-items:center;gap:10px;min-height:48px}.top-title{flex:1;min-width:0}.top h1,.home-head h1,.profile h1{font-family:var(--display);font-weight:700;letter-spacing:-.035em;line-height:1}.top h1{font-size:34px;padding-top:6px}.top p{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.top p:first-letter,.home-head p:first-letter{text-transform:uppercase}.brand-row{display:flex;align-items:center;justify-content:space-between}.brand-row .wordmark{height:34px;width:auto;display:block}.home-head p{font-size:13px;color:var(--muted)}.home-head h1{font-size:40px;padding-top:8px}.icon-btn{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--text)}.icon-btn.accent{background:var(--lime);color:var(--lime-ink)}.icon-btn.wa{background:var(--ink);color:var(--lime)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:52px;padding:0 22px;border-radius:999px;font-weight:650;text-decoration:none;text-align:center;white-space:nowrap}.btn.primary{background:var(--lime);color:var(--lime-ink)}.btn.primary:disabled{background:var(--surface);color:var(--muted)}.btn.ghost{background:var(--surface);color:var(--text)}.btn.wa{background:var(--ink);color:var(--on-ink)}.btn.small{min-height:38px;padding:0 16px;font-size:14px}.btn.block{width:100%}.btn:active,.icon-btn:active,.row:active,.roll-row:active,.hero:active{transform:scale(.98)}.link{color:var(--text);font-weight:600;text-decoration:underline;text-underline-offset:3px;align-self:flex-start}.link.danger{color:var(--red);font-size:14px}.hero{display:flex;align-items:center;gap:12px;padding:22px 18px 22px 24px;min-height:120px;border-radius:var(--r-xl);background:var(--lime);color:var(--lime-ink)}.hero div{flex:1;display:flex;flex-direction:column;gap:4px}.hero-k{font-size:13px;font-weight:600;opacity:.6}.hero strong{font-family:var(--display);font-size:30px;font-weight:700;letter-spacing:-.03em;line-height:1.05}.hero-ic{width:60px;height:60px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--lime)}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.kpi{background:var(--surface);border-radius:var(--r-lg);padding:16px 14px 14px;display:flex;flex-direction:column;gap:2px;min-width:0}.kpi:first-child{background:var(--ink);color:var(--on-ink)}.kpi:first-child strong{color:var(--lime)}.kpi span{font-size:12px;color:var(--muted)}.kpi strong{font-family:var(--display);font-size:38px;font-weight:700;letter-spacing:-.04em;line-height:1;padding-top:8px;font-variant-numeric:tabular-nums}.kpi strong.sm{font-size:26px}.kpi em{font-style:normal;font-size:12px;color:var(--muted)}.kpi.warn strong{color:var(--red)}.sec-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.sec-head h2{font-size:19px}.sec-sub{color:var(--muted);font-size:13px;margin-top:-4px}.count{min-width:30px;text-align:center;background:var(--ink);color:var(--lime);font-size:13px;font-weight:700;padding:4px 10px;border-radius:999px}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;min-height:66px;background:var(--surface);border-radius:var(--r-md)}.list.compact .row{min-height:52px;padding:8px 12px}.row.static{cursor:default}.row .muted,.care .muted{font-size:13px}.clamp{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.avatar{flex:none;border-radius:50%;display:grid;place-items:center;font-weight:700;letter-spacing:.02em}.badge,.role{display:inline-block;align-self:flex-start;flex:none;font-size:11px;font-weight:650;padding:4px 9px;border-radius:999px}.b-novo{background:var(--lime);color:var(--lime-ink)}.b-sumido{background:var(--red-bg);color:var(--red)}.b-atencao{background:var(--amber-bg);color:var(--amber)}.b-firme{background:var(--surface-2);color:var(--text)}.b-inativo{background:var(--surface-2);color:var(--muted)}.b-visitante{background:var(--violet-bg);color:var(--violet)}.r-admin{background:var(--ink);color:var(--lime)}.r-conexao{background:var(--lime);color:var(--lime-ink)}.r-gestao{background:var(--surface-2);color:var(--text)}.r-hub{background:var(--paper);color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}.care{display:flex;align-items:center;gap:8px;padding:12px 10px 12px 14px;background:var(--surface);border-radius:var(--r-lg)}.care-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.care-act{display:flex;gap:6px}.care-act .icon-btn{width:44px;height:44px;background:var(--paper)}.care-act .icon-btn.wa{background:var(--ink)}.tag-pending,.tag-ok{font-size:12px;font-weight:600}.tag-pending{color:var(--red)}.tag-ok{color:var(--text)}.tag-ok:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#8fcf00;margin-right:6px;vertical-align:1px}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:30px 20px;background:var(--surface);border-radius:var(--r-lg);color:var(--muted)}.empty strong{color:var(--text);font-family:var(--display);font-size:18px;padding-top:6px}.empty p{font-size:14px;max-width:280px}.search{display:flex;align-items:center;gap:8px;background:var(--surface);border-radius:999px;padding:0 18px;color:var(--muted)}.search input{flex:1;border:0;outline:0;background:none;height:50px;color:var(--text);min-width:0}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips.scroll{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:0 16px;scrollbar-width:none}.chips.scroll::-webkit-scrollbar{display:none}.chip{flex:none;min-height:38px;padding:0 16px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.chip em{font-style:normal;color:var(--muted);font-weight:500}.chip.on{background:var(--ink);color:var(--on-ink);border-color:var(--text)}.chip.on em{color:var(--lime)}.chip.static{cursor:default;background:var(--surface);border-color:transparent}.chip:disabled{opacity:.5}.seg{display:grid;grid-template-columns:repeat(3,1fr);background:var(--surface);border-radius:999px;padding:4px}.seg button{text-align:center;min-height:40px;border-radius:999px;font-size:14px;font-weight:600;color:var(--muted)}.seg button.on{background:var(--ink);color:var(--on-ink)}.sticky{position:sticky;top:0;z-index:5;margin:0 -16px;padding:calc(var(--safe-t) + 8px) 16px 12px;background:linear-gradient(var(--bg) 88%,transparent);display:flex;flex-direction:column;gap:10px}.counter{display:flex;align-items:center;gap:10px}.counter strong{font-family:var(--display);font-size:56px;font-weight:700;letter-spacing:-.05em;line-height:.9;padding-top:8px;font-variant-numeric:tabular-nums}.counter span{flex:1;font-weight:600;line-height:1.2}.counter em{display:block;font-style:normal;color:var(--muted);font-weight:500;font-size:13px}.roll{list-style:none;margin:-8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.roll-row{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 12px;border-radius:var(--r-md);background:var(--surface);transition:background .12s}.roll-row .grow{flex-direction:row;align-items:center;gap:8px}.roll-row.on{background:var(--lime)}.roll-row.on .avatar{background:var(--ink)!important;color:var(--lime)!important}.tick{width:34px;height:34px;flex:none;border-radius:50%;background:var(--paper);display:grid;place-items:center}.roll-row.on .tick{background:var(--ink);color:var(--lime)}.roll-miss{padding:16px 4px;color:var(--muted)}.note-strip{background:var(--ink);color:var(--on-ink);font-size:14px;padding:12px 16px;border-radius:var(--r-md);margin-bottom:-8px}.profile{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;margin-top:-40px}.profile h1{font-size:34px;padding-top:8px}.profile-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center;font-size:13px}.profile-act{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap;justify-content:center}.dots{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.dot{aspect-ratio:1;border-radius:50%;background:var(--surface);color:var(--muted);display:grid;place-items:center;font-size:12px;font-weight:700;text-align:center}.dot.on{background:var(--lime);color:var(--lime-ink)}.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.timeline li{background:var(--surface);border-radius:var(--r-md);padding:14px 16px;display:flex;flex-direction:column;gap:4px;font-size:14px}.timeline .link{font-size:12px}.notes{white-space:pre-wrap;background:var(--surface);padding:14px 16px;border-radius:var(--r-md)}.danger-zone{border-top:1px solid var(--line);padding-top:18px;align-items:flex-start}.card{background:var(--surface);border-radius:var(--r-xl);padding:20px 18px}.card h2{font-size:19px}.card .row,.card.form input,.card.form textarea,.card.form select,.card .form input,.card .form textarea,.card .form select{background:var(--paper)}.bars{display:flex;align-items:flex-end;gap:6px;height:180px;padding-top:8px}.bar{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;min-width:0}.bar-n{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.bar-fill{width:100%;max-width:30px;min-height:6px;border-radius:999px;background:var(--ink)}.bar-fill.noted,.legend-noted{background:var(--lime)}.legend-noted{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:-1px;margin-right:4px}.bar-d{font-size:10px;color:var(--muted);white-space:nowrap}.date-box{width:50px;height:50px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--paper);border-radius:50%;line-height:1}.date-box strong{font-family:var(--display);font-size:19px;padding-top:4px}.date-box span{font-size:10px;color:var(--muted);text-transform:uppercase}.num{display:flex;flex-direction:column;align-items:flex-end}.num strong{font-family:var(--display);font-size:28px;font-weight:700;letter-spacing:-.03em;line-height:1;padding-top:6px}.num em{font-style:normal;font-size:12px;font-weight:700}.up{color:#5a8f00}.down{color:var(--red)}.note-card{background:var(--ink);color:var(--on-ink);border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:6px;font-size:15px;white-space:pre-wrap}.note-card .muted{color:var(--lime);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.form{display:flex;flex-direction:column;gap:14px}.form label,.field>span{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}.field{display:flex;flex-direction:column;gap:8px}.form input,.form textarea,.form select{width:100%;min-width:0;background:var(--surface);border:1.5px solid transparent;border-radius:var(--r-md);padding:14px 16px;font-size:16px;color:var(--text);outline:none;min-height:52px}.form input[type=date]{-webkit-appearance:none;-moz-appearance:none;appearance:none}.form textarea{resize:vertical}.form input:focus,.form textarea:focus,.form select:focus{border-color:var(--text);background:var(--paper)}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.row2>*{min-width:0}.actions{display:flex;gap:10px;justify-content:flex-end}.actions .btn{flex:1}.actions.wrap{flex-wrap:wrap}.file input{display:none}.warn{color:var(--red);font-size:13px;margin-top:-6px}.banner{background:var(--ink);color:var(--on-ink);border-radius:var(--r-lg);padding:16px 18px;font-size:14px;display:flex;flex-direction:column;gap:4px;text-align:left}.banner strong{color:var(--lime)}.yesno{display:grid;grid-template-columns:1fr 1fr;gap:8px}.yesno button{min-height:52px;border-radius:999px;background:var(--surface);text-align:center;font-weight:650}.yesno button.on{background:var(--ink);color:var(--lime)}.more{display:flex;flex-direction:column}.more summary{cursor:pointer;color:var(--text);font-weight:600;font-size:14px;list-style:none;padding:4px 0}.more summary::-webkit-details-marker{display:none}.more summary:before{content:"+ "}.more[open] summary:before{content:"− "}.more[open]>*+*{margin-top:14px}.toggles{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.form label.toggle{flex-direction:row;align-items:center;gap:12px;padding:12px 14px;background:var(--surface);border-radius:var(--r-md);color:var(--text);font-size:15px;cursor:pointer}.toggle .muted{font-size:12px;font-weight:400}.form .toggle input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:50px;min-width:50px;height:30px;min-height:30px;padding:0;border-radius:999px;background:var(--surface-2);border:0;position:relative;transition:background .15s;cursor:pointer}.form .toggle input[type=checkbox]:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000026;transition:transform .15s}.form .toggle input[type=checkbox]:checked{background:var(--ink)}.form .toggle input[type=checkbox]:checked:after{background:var(--lime);transform:translate(20px)}.me-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.scope-tag{align-self:flex-start;background:var(--ink);color:var(--lime);font-size:13px;font-weight:650;padding:8px 14px;border-radius:999px;margin-top:-6px}.sheet-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0f0f0f73;display:flex;align-items:flex-end;justify-content:center;animation:fade .15s ease-out}.sheet{width:100%;max-width:640px;max-height:92vh;overflow-y:auto;background:var(--paper);border-radius:var(--r-xl) var(--r-xl) 0 0;padding:10px 18px calc(22px + var(--safe-b));animation:up .22s ease-out}.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:10px 0 16px}.sheet-head h2{font-family:var(--display);font-size:26px;letter-spacing:-.03em;padding-top:6px}.sheet-head .icon-btn{width:40px;height:40px}.sheet-note{color:var(--muted);font-size:14px;margin:-6px 0 14px}@keyframes up{0%{transform:translateY(40px);opacity:0}}@keyframes fade{0%{opacity:0}}.tabs{position:fixed;left:50%;bottom:calc(12px + var(--safe-b));transform:translate(-50%);z-index:20;display:flex;gap:8px;padding:8px;background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:999px;box-shadow:0 10px 30px #0000001f}.tabs button{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--text)}.tabs button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tabs button.on{background:var(--lime)}.toast{position:fixed;left:50%;bottom:calc(100px + var(--safe-b));transform:translate(-50%);z-index:60;background:var(--ink);color:var(--on-ink);padding:14px 20px;border-radius:999px;font-size:14px;font-weight:600;max-width:calc(100% - 32px);box-shadow:0 8px 30px #00000040;animation:up .2s ease-out}.login{min-height:100vh;max-width:420px;margin:0 auto;padding:48px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}body:has(.login){background:var(--ink);color:#fff}.login h1{font-family:var(--display);font-size:36px;letter-spacing:-.03em;padding-top:8px}.login .muted{color:#9a9a9a}.login .wordmark{width:180px;height:auto;margin-bottom:18px}.login .form{width:100%;margin-top:4px}.login .form input{background:var(--charcoal);color:#fff}.login .form input:focus{background:var(--charcoal);border-color:var(--lime)}.login .form input::placeholder{color:#8a8a8a}.login .link{align-self:center;color:#fff}.login .church{margin-top:18px}.login .church span{color:#8a8a8a}.login .warn{color:var(--lime)}.btn.google{background:#fff;color:#1f1f1f;gap:10px}.or{width:100%;display:flex;align-items:center;gap:12px;color:#8a8a8a;font-size:13px;margin-top:4px}.or:before,.or:after{content:"";flex:1;height:1px;background:var(--charcoal)}.church{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}.church img{height:36px;width:auto}.home-foot{padding:8px 0 4px}@media (min-width: 700px){.page{padding-top:28px}}.avatar{background:var(--paper);color:var(--text)}.card .avatar,.profile .avatar,.roll-row.on .badge{background:var(--ink);color:var(--lime)}.top-actions{display:flex;gap:8px}.hero-ic,.roll-row.on .tick,.roll-row.on .badge{background:#0f0f0f}.roll-row.on .avatar{background:#0f0f0f!important}.roll-row.on .grow strong,.roll-row.on,.tabs button.on,.chip.on.lime,.hero{color:#0f0f0f}.rule{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface);border-radius:999px;padding:6px 6px 6px 18px}.rule span{font-size:13px;font-weight:600;color:var(--muted)}.rule-opts{display:flex;gap:4px}.rule-opts button{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-size:18px;font-weight:700;padding-top:4px;color:var(--text)}.rule-opts button.on{background:var(--lime);color:#0f0f0f}.how ol{margin:4px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:14px}.import-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.import-sum div{background:var(--surface);border-radius:var(--r-lg);padding:14px;display:flex;flex-direction:column}.import-sum div:first-child{background:var(--lime);color:#0f0f0f}.import-sum strong{font-family:var(--display);font-size:34px;line-height:1;padding-top:6px}.import-sum span{font-size:12px;opacity:.7}.imp{background:var(--surface);border-radius:var(--r-md);padding:12px 14px;display:flex;flex-direction:column;gap:8px}.imp.skip{opacity:.55}.imp-top{display:flex;align-items:center;gap:10px}.imp select{max-width:48%;min-height:40px;border-radius:999px;border:0;padding:0 12px;background:var(--paper);color:var(--text);font-size:13px;font-weight:600}.imp.update select{background:var(--lime);color:#0f0f0f}.imp.new select{background:var(--ink);color:var(--on-ink)}.imp-note{font-size:12px;color:var(--amber);font-weight:600}.imp-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.imp-check input{width:18px;height:18px;accent-color:#0f0f0f}.sticky-actions{position:sticky;bottom:calc(96px + var(--safe-b));z-index:4}.form label.btn{flex-direction:row;gap:6px;font-size:15px;font-weight:650;color:var(--text)}
