@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_9c6cb61b-module__8NX9hq__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_9c6cb61b-module__8NX9hq__variable{--font-geist:"Geist", "Geist Fallback"}
:root{--blue:#2563eb;--blue-dark:#1e3a8a;--blue-soft:#eff6ff;--canvas:#f8fafc;--surface:#fff;--text:#0f172a;--muted:#64748b;--line:#dce5f0;--success:#15803d;--success-soft:#ecfdf3;--danger:#b42318;--danger-soft:#fef3f2;--radius-lg:24px;--radius-md:16px;--shadow:0 12px 40px #1e3a8a12}*{box-sizing:border-box}html{background:var(--canvas);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{color:var(--text);background:var(--canvas);font-family:var(--font-geist), ui-sans-serif, system-ui, sans-serif;margin:0;font-size:16px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}:focus-visible{outline:3px solid color-mix(in srgb, var(--blue) 42%, transparent);outline-offset:3px}.app-shell{min-height:100dvh}.sidebar{z-index:10;border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:color-mix(in srgb, var(--surface) 96%, transparent);width:244px;box-shadow:var(--shadow);border-radius:28px;flex-direction:column;padding:18px;display:flex;position:fixed;inset:18px auto 18px 18px}.sidebar-brand{align-items:center;gap:12px;padding:4px 4px 22px;text-decoration:none;display:flex}.sidebar-brand strong,.sidebar-brand small{text-overflow:ellipsis;white-space:nowrap;max-width:150px;display:block;overflow:hidden}.sidebar-brand strong{font-size:.94rem}.sidebar-brand small{color:var(--muted);margin-top:2px;font-size:.76rem}.brand-mark{color:#fff;background:var(--blue);letter-spacing:-.04em;border-radius:18px;flex:none;place-items:center;width:52px;height:52px;font-weight:760;display:grid;box-shadow:0 8px 24px #2563eb38}.brand-mark.small{border-radius:14px;width:42px;height:42px;font-size:.8rem}.sidebar nav{gap:6px;display:grid}.sidebar nav a{min-height:48px;color:var(--muted);border-radius:14px;align-items:center;gap:13px;padding:0 14px;font-weight:600;text-decoration:none;transition:transform .24s cubic-bezier(.32,.72,0,1),background .24s cubic-bezier(.32,.72,0,1),color .24s cubic-bezier(.32,.72,0,1);display:flex}.sidebar nav a:hover{color:var(--blue-dark);background:var(--blue-soft);transform:translate(2px)}.sidebar nav a.active{color:#fff;background:var(--blue)}.sidebar-user{border-top:1px solid var(--line);grid-template-columns:38px 1fr auto;align-items:center;gap:10px;margin-top:auto;padding-top:18px;display:grid}.sidebar-user strong,.sidebar-user small{text-overflow:ellipsis;white-space:nowrap;max-width:112px;display:block;overflow:hidden}.sidebar-user strong{font-size:.82rem}.sidebar-user small{color:var(--muted);font-size:.72rem}.sidebar-user button{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:14px}.sidebar-user button:hover{color:var(--danger);background:var(--danger-soft)}.avatar{color:#334155;text-transform:uppercase;background:#e2e8f0;border-radius:13px;place-items:center;width:38px;height:38px;font-size:.75rem;font-weight:750;display:grid}.avatar.blue{color:var(--blue-dark);background:var(--blue-soft)}.mobile-nav{display:none}.main-content{width:min(1280px,100% - 298px);margin-left:280px;padding:64px 36px 80px}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px;display:flex}.page-header h1{letter-spacing:-.052em;margin:7px 0;font-size:clamp(2rem,4vw,3.15rem);line-height:1.02}.page-header>div>p:last-child{color:var(--muted);margin:0;font-size:1.05rem}.eyebrow{color:var(--blue);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:780}.header-actions{flex-wrap:wrap;gap:8px;display:flex}.button{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 18px;font-weight:680;text-decoration:none;transition:transform .22s cubic-bezier(.32,.72,0,1),background .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1),opacity .22s cubic-bezier(.32,.72,0,1);display:inline-flex}.button:hover{transform:translateY(-1px)}.button:active{transform:scale(.98)}.button:disabled{opacity:.46;cursor:not-allowed;transform:none}.button.primary{color:#fff;background:var(--blue);box-shadow:0 8px 22px #2563eb2e}.button.primary:hover{background:#1d4ed8}.button.secondary{color:var(--blue-dark);background:var(--blue-soft)}.button.secondary:hover{background:#dbeafe}.button.ghost{color:var(--muted);background:0 0}.button.ghost:hover{color:var(--text);background:color-mix(in srgb, var(--line) 55%, transparent)}.button.danger{color:var(--danger);background:var(--danger-soft)}.success-tone{color:var(--success)!important;background:var(--success-soft)!important}.content-grid{grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr);align-items:start;gap:22px;display:grid}.panel,.checkin-card{border:1px solid color-mix(in srgb, var(--line) 84%, transparent);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.panel{padding:26px}.checkin-card{padding:clamp(22px,4vw,38px)}.panel-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.panel-heading h2{letter-spacing:-.025em;margin:5px 0 0;font-size:1.3rem}.panel-total{font-size:1.35rem}.count-badge{min-width:34px;height:34px;color:var(--blue-dark);background:var(--blue-soft);border-radius:999px;place-items:center;padding:0 8px;font-weight:750;display:grid}.form-stack{gap:22px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.span-2{grid-column:1/-1}label{color:#334155;gap:8px;font-size:.88rem;font-weight:680;display:grid}label small,.optional{color:var(--muted);font-weight:450}input,select,textarea{border:1px solid var(--line);width:100%;min-height:46px;color:var(--text);background:color-mix(in srgb, var(--surface) 96%, var(--canvas));border-radius:12px;padding:11px 13px;transition:border .18s cubic-bezier(.32,.72,0,1),box-shadow .18s cubic-bezier(.32,.72,0,1)}textarea{resize:vertical}input:hover,select:hover,textarea:hover{border-color:#b9c8db}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue) 13%, transparent);outline:none}.large-label select{border-radius:16px;min-height:60px;padding:0 17px;font-size:1.04rem}.selection-summary{background:var(--canvas);border-radius:18px;grid-template-columns:repeat(3,1fr);gap:10px;padding:7px;display:grid}.selection-summary>div,.selection-summary>label{background:var(--surface);border-radius:13px;align-content:start;min-height:94px;padding:14px}.selection-summary span,.selection-summary strong{display:block}.selection-summary span{color:var(--muted);margin-bottom:5px;font-size:.72rem}.selection-summary strong{font-size:.94rem}.editable-summary select,.editable-summary input{min-height:42px;padding:8px 10px}.editable-summary small{color:var(--muted);margin-top:1px;font-size:.68rem;line-height:1.35}.attendance-time input{min-height:54px;font-size:1rem}.confirm{width:100%;min-height:58px;font-size:1rem}.advanced summary{min-height:44px;color:var(--blue-dark);cursor:pointer;align-items:center;gap:8px;font-size:.84rem;font-weight:650;display:flex}.advanced summary::marker{display:none}.segmented{gap:8px;margin-top:8px;display:flex}.segmented label{flex:1;position:relative}.segmented input{opacity:0;position:absolute}.segmented span{border:1px solid var(--line);text-align:center;cursor:pointer;border-radius:12px;place-items:center;min-height:44px;padding:8px;display:grid}.segmented input:checked+span{color:var(--blue-dark);border-color:var(--blue);background:var(--blue-soft)}.patient-modal{border:1px solid var(--line);width:min(760px,100vw - 32px);max-height:min(860px,100dvh - 32px);color:var(--text);background:var(--surface);border-radius:26px;padding:0;box-shadow:0 30px 90px #0f172a47}.patient-modal::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08101f94}.modal-shell{padding:28px}.modal-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.modal-header h2{letter-spacing:-.04em;margin:5px 0 0;font-size:1.75rem}.modal-close{width:44px;height:44px;color:var(--muted);background:var(--canvas);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.modal-form{max-height:calc(100dvh - 180px);padding-right:4px;overflow-y:auto}.modal-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.confirmation-modal{width:min(580px,100vw - 32px)}.warning-eyebrow,.warning-icon{color:#b45309}.confirmation-copy{background:#fffbeb;border-radius:16px;gap:12px;margin-bottom:24px;padding:18px;display:grid}.confirmation-copy p{color:#78350f;margin:0;line-height:1.55}.confirmation-copy small{color:#92400e;line-height:1.5}.today-list,.patient-list,.charge-list,.team-list,.audit-list,.settlement-list{display:grid}.today-list article{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding:17px 0;display:flex}.today-list article:first-child{border-top:0}.today-list strong,.today-list span,.today-list small{display:block}.today-list span{color:var(--muted);margin-top:4px;font-size:.85rem}.today-list small{color:var(--muted);margin-top:3px;font-size:.76rem}.today-list details{text-align:right}.today-list summary{min-height:44px;color:var(--blue);cursor:pointer;font-size:.82rem;font-weight:650;list-style:none}.inline-correction{background:var(--canvas);text-align:left;border-radius:14px;gap:12px;width:min(310px,70vw);margin-top:8px;padding:14px;display:grid}.empty{border:1px dashed var(--line);text-align:center;border-radius:16px;padding:44px 20px}.empty strong{font-size:1rem}.empty p{color:var(--muted);margin:7px 0 0;font-size:.88rem}.notice{border-radius:13px;margin:-14px 0 22px;padding:13px 16px;font-weight:620}.notice.success{color:var(--success);background:var(--success-soft)}.notice.error{color:var(--danger);background:var(--danger-soft)}.search-form{color:var(--muted);background:var(--canvas);border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:18px;padding:6px 6px 6px 15px;display:grid}.search-form input{box-shadow:none;background:0 0;border:0}.patient-list article{border-top:1px solid var(--line);grid-template-columns:minmax(260px,.75fr) 1fr;align-items:center;gap:20px;padding:20px 0;display:grid}.patient-list article:first-child{border-top:0}.patient-list article.inactive{opacity:.58}.patient-primary{align-items:center;gap:13px;text-decoration:none;display:flex}.patient-primary h2{margin:0;font-size:1rem}.patient-primary p{color:var(--muted);margin:4px 0 0;font-size:.83rem}.patient-list dl{grid-template-columns:repeat(3,1fr);gap:12px;margin:0;display:grid}.patient-list dt,.settlement-list dt{color:var(--muted);font-size:.7rem}.patient-list dd,.settlement-list dd{margin:4px 0 0;font-size:.82rem;font-weight:620}.form-panel fieldset{border:0;padding:0}.form-panel legend{margin-bottom:18px;font-size:1.08rem;font-weight:720}.service-choice{border:1px solid var(--line);border-radius:16px;gap:10px;padding:15px;display:grid}.check-label{align-items:center;gap:10px;display:flex}.check-label input{width:22px;min-height:22px;accent-color:var(--blue)}.filter-bar,.form-row{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:18px;display:flex}.filter-bar label{min-width:185px}.filter-bar .button{margin-bottom:0}.tabs{gap:7px;margin-bottom:18px;display:flex}.tabs a{min-height:44px;color:var(--muted);border-radius:999px;place-items:center;padding:0 18px;font-weight:650;text-decoration:none;display:grid}.tabs a.active{color:#fff;background:var(--blue-dark)}.summary-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.summary-grid article{border:1px solid var(--line);background:var(--surface);border-radius:18px;min-height:112px;padding:20px}.summary-grid span,.summary-grid strong{display:block}.summary-grid span{color:var(--muted);font-size:.78rem}.summary-grid strong{letter-spacing:-.03em;margin-top:15px;font-size:1.28rem}.summary-grid .accent{color:#fff;border-color:var(--blue);background:var(--blue)}.summary-grid .accent span{color:#dbeafe}.charge-list>article{border-top:1px solid var(--line);padding:24px 0}.charge-list>article:first-child{border-top:0}.charge-top{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.charge-top h3{margin:9px 0 2px;font-size:1.08rem}.charge-top p,.charge-top small{color:var(--muted);margin:4px 0 0;font-size:.8rem}.charge-top>strong{font-size:1.15rem}.status{color:#92400e;text-transform:uppercase;letter-spacing:.05em;background:#fffbeb;border-radius:999px;align-items:center;min-height:26px;padding:0 9px;font-size:.68rem;font-weight:750;display:inline-flex}.status.whatsapp_opened{color:var(--blue-dark);background:var(--blue-soft)}.status.sent{color:#5b21b6;background:#f5f3ff}.status.paid{color:var(--success);background:var(--success-soft)}.session-lines{flex-wrap:wrap;gap:10px;margin:16px 0;display:flex}.session-lines p{background:var(--canvas);border-radius:13px;min-width:210px;margin:0;padding:12px 14px}.session-lines strong,.session-lines span,.session-lines small{display:block}.session-lines strong{font-size:.82rem}.session-lines span,.session-lines small{color:var(--muted);margin-top:4px;font-size:.76rem}.charge-actions{flex-wrap:wrap;gap:8px;display:flex}.timestamp{color:var(--muted);margin-top:12px;display:block}.settlement-list article{border-top:1px solid var(--line);grid-template-columns:1fr 1.4fr;align-items:center;gap:20px;padding:20px 0;display:grid}.settlement-list article:first-child{border-top:0}.settlement-list article>div>span{color:var(--muted);margin-top:5px;font-size:.8rem;display:block}.settlement-list dl{grid-template-columns:repeat(3,1fr);margin:0;display:grid}.settings-stack{gap:20px;display:grid}.invite-box{background:var(--blue-soft);border-radius:16px;margin-bottom:18px;padding:16px}.invite-box .form-row{margin:0}.invite-box label{flex:1;min-width:190px}.invite-result{border-top:1px solid #bfdbfe;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding-top:14px;display:flex}.invite-result p{color:var(--blue-dark);margin:0;font-size:.84rem}.team-list article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:13px;padding:15px 0;display:grid}.team-list article:first-child{border-top:0}.team-list article>div strong,.team-list article>div span{display:block}.team-list article>div span{color:var(--muted);margin-top:4px;font-size:.8rem}.danger-zone{background:var(--danger-soft);border-radius:16px;margin-top:18px;padding:15px}.danger-zone label{flex:1}.audit-list article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:14px 0;display:grid}.audit-list article:first-child{border-top:0}.audit-dot{background:var(--blue);border-radius:50%;width:8px;height:8px;margin-top:6px}.audit-list strong{font-size:.87rem}.audit-list p,.audit-list time{color:var(--muted);margin:4px 0 0;font-size:.76rem}.fine-print{color:var(--muted);font-size:.78rem}.fine-print a{color:var(--blue);font-weight:650}.auth-page{background:var(--canvas);grid-template-columns:1.12fr .88fr;align-items:center;gap:clamp(50px,9vw,150px);min-height:100dvh;padding:clamp(28px,7vw,100px);display:grid}.auth-brand{max-width:650px}.auth-brand .brand-mark{margin-bottom:54px}.auth-brand h1{letter-spacing:-.068em;max-width:620px;margin:12px 0 22px;font-size:clamp(3rem,6vw,6rem);line-height:.94}.auth-brand>p:last-child{max-width:520px;color:var(--muted);font-size:1.12rem;line-height:1.65}.auth-card{border:1px solid var(--line);background:var(--surface);width:100%;max-width:500px;box-shadow:var(--shadow);border-radius:30px;justify-self:end;padding:clamp(26px,4vw,44px)}.auth-card.wide{max-width:620px}.auth-card h2{letter-spacing:-.04em;margin:7px 0 8px;font-size:2rem}.auth-card .muted{color:var(--muted);margin:0 0 28px}.auth-card .notice{margin:18px 0}@media (prefers-color-scheme:dark){:root{--blue:#60a5fa;--blue-dark:#bfdbfe;--blue-soft:#172554;--canvas:#08101f;--surface:#0f1b2d;--text:#f1f5f9;--muted:#94a3b8;--line:#26364d;--success:#4ade80;--success-soft:#0d2b20;--danger:#fda4af;--danger-soft:#35151d;--shadow:0 12px 44px #0000002e}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}label{color:#cbd5e1}.button.primary{color:#08101f;background:var(--blue)}.sidebar nav a.active,.summary-grid .accent{color:#08101f}.summary-grid .accent span{color:#172554}.status.sent{color:#c4b5fd;background:#2e1065}.status.pending{color:#fcd34d;background:#422006}.confirmation-copy{background:#422006}.confirmation-copy p,.confirmation-copy small,.warning-eyebrow,.warning-icon{color:#fcd34d}}@media (max-width:960px){.sidebar{display:none}.main-content{width:100%;margin:0;padding:42px 24px 110px}.mobile-nav{z-index:20;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:20px;justify-content:space-around;padding:7px;display:flex;position:fixed;inset:auto 14px 14px;box-shadow:0 14px 44px #0f172a2e}.mobile-nav a{min-width:68px;min-height:50px;color:var(--muted);border-radius:14px;place-items:center;gap:2px;font-size:.66rem;text-decoration:none;display:grid}.mobile-nav a.active{color:var(--blue-dark);background:var(--blue-soft)}.content-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.auth-page{grid-template-columns:1fr;gap:40px}.auth-brand .brand-mark{margin-bottom:34px}.auth-brand h1{font-size:clamp(2.8rem,10vw,5rem)}.auth-card{justify-self:start;max-width:620px}}@media (max-width:640px){.main-content{padding:30px 16px 104px}.page-header{flex-direction:column;align-items:flex-start;margin-bottom:26px}.page-header .button{width:100%}.page-header h1{font-size:2.25rem}.panel,.checkin-card{border-radius:20px;padding:20px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.selection-summary{grid-template-columns:1fr 1fr}.selection-summary>:last-child{grid-column:1/-1}.patient-list article{grid-template-columns:1fr}.patient-list dl,.summary-grid{grid-template-columns:1fr 1fr}.summary-grid article{min-height:100px;padding:16px}.charge-actions .button,.charge-actions form,.charge-actions form .button{width:100%}.team-list article{grid-template-columns:auto 1fr auto}.team-list article form{grid-column:2/-1}.settlement-list article{grid-template-columns:1fr}.patient-modal{border-radius:20px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.modal-shell{padding:20px}.modal-form{max-height:calc(100dvh - 145px)}.modal-actions{flex-direction:column-reverse}.modal-actions .button{width:100%}.auth-page{padding:28px 16px 46px}.auth-brand h1{font-size:3rem}.auth-brand>p:last-child{font-size:1rem}.auth-card{border-radius:22px;padding:24px}.auth-card .form-grid{grid-template-columns:1fr}.invite-result{flex-direction:column;align-items:stretch}.header-actions{width:100%}.header-actions .button{flex:1}.mobile-nav span{font-size:.62rem}}@media print{:root{--canvas:white;--surface:white;--text:black;--muted:#444;--line:#bbb}.sidebar,.mobile-nav,.no-print{display:none!important}.main-content{width:100%;margin:0;padding:0}.panel{box-shadow:none;border:0;padding:0}.page-header h1{font-size:24pt}.charge-list>article{break-inside:avoid}.status{border:1px solid #777}}
