:root{--ink:#102437;--ink-soft:#243b53;--paper:#fff;--surface:#eef3f7;--surface-2:#e3ebf2;--accent:#0e7490;--accent-dark:#0a5c72;--accent-soft:#0e74901f;--ok:#0f766e;--ok-soft:#0f766e1f;--warn:#b45309;--warn-soft:#b453091f;--danger:#b91c1c;--danger-soft:#b91c1c1a;--muted:#5b6b7c;--line:#1024371f;--line-strong:#10243733;--shadow:0 1px 0 #1024370a, 0 12px 28px #1024370f;--radius:10px;--radius-sm:6px;--font-ui:"Manrope", "Segoe UI", sans-serif;--font-display:"Source Serif 4", Georgia, serif;font-family:var(--font-ui);color:var(--ink);background:var(--surface);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;line-height:1.45}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(900px 420px at 0% -5%, #0e749024, transparent 55%), radial-gradient(700px 380px at 100% 0%, #0f766e1a, transparent 50%), linear-gradient(165deg, #dfe8f0 0%, var(--surface) 42%, #e8eef4 100%);background-attachment:fixed;min-width:320px}a{color:inherit}h1,h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:0;font-weight:650}button,input{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{background:linear-gradient(180deg, #122a3f 0%, var(--ink) 100%);color:#e8eef4;border-bottom:3px solid var(--accent);flex-wrap:wrap;align-items:center;gap:1.25rem;padding:.85rem 1.5rem;display:flex}.brand-block{border-right:1px solid #e8eef429;flex-direction:column;gap:.1rem;min-width:9rem;padding-right:1.1rem;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.28rem;font-weight:650;line-height:1.15}.brand-sub{letter-spacing:.04em;text-transform:uppercase;opacity:.65;font-size:.72rem}.nav{gap:.25rem;display:flex}.nav-link{border-radius:var(--radius-sm);color:#e8eef4c7;padding:.5rem .95rem;font-size:.92rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s}.nav-link:hover{color:#fff;background:#ffffff14}.nav-link.active{background:var(--accent);color:#fff}.topbar-actions{flex:1;justify-content:space-between;align-items:center;gap:.75rem;min-width:0;display:flex}.main{flex:1;width:min(1140px,100%);margin:0 auto;padding:1.75rem 1.25rem 3.5rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.85rem 1.25rem;margin-bottom:1.15rem;display:flex}.page-head h1{margin-bottom:0;font-size:clamp(1.7rem,2.6vw,2.15rem)}.page-head p{color:var(--muted);max-width:40rem;margin:0;font-size:.95rem}.tabs{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#ffffffb8;flex-wrap:wrap;gap:0;margin-bottom:1rem;padding:.28rem;display:inline-flex}.tab{color:var(--muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:.55rem 1rem;font-size:.9rem;font-weight:560;transition:background .15s,color .15s}.tab:hover{color:var(--ink);background:#1024370a}.tab.active{background:var(--ink);color:#fff}.toolbar{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:.85rem;margin-bottom:1rem;padding:1.05rem 1.15rem;display:flex}.field{letter-spacing:.02em;color:var(--muted);flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;display:flex}.toolbar .field-inline{white-space:nowrap;flex-direction:row;align-items:center;gap:.65rem}.toolbar .field-inline input{height:2.85rem;min-height:2.85rem}.field.grow{flex:1;min-width:12rem}.field-hint{letter-spacing:0;color:var(--muted);font-size:.78rem;font-weight:500;line-height:1.35}.field-hint code{background:var(--surface-2);color:var(--ink-soft);border-radius:4px;padding:.05rem .3rem;font-size:.76rem}.field input,.login-form input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:#fff;min-width:11rem;padding:.68rem .85rem;transition:border-color .15s,box-shadow .15s}.field input:hover,.login-form input:hover{border-color:#0e749073}.field input:focus,.login-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:.72rem 1.2rem;font-size:.92rem;font-weight:650;transition:background .15s,transform .1s}.btn:disabled{opacity:.6;cursor:wait}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-dark)}.btn.primary:active:not(:disabled){transform:translateY(1px)}.btn.ghost{color:#e8eef4;background:0 0;border:1px solid #e8eef447}.btn.ghost:hover{background:#ffffff14}.btn.wide{width:100%}.table-wrap{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto}.table-meta{color:var(--ink-soft);border-bottom:1px solid var(--line);background:#f7fafc;padding:.75rem .9rem .35rem;font-size:.9rem;font-weight:600}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:.72rem .9rem}th{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--surface-2);z-index:1;font-size:.72rem;font-weight:700;position:sticky;top:0}tbody tr{transition:background .12s}tbody tr:hover{background:#0e74900a}tr:last-child td{border-bottom:none}.expand-btn{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--paper);width:1.6rem;height:1.6rem;color:var(--accent);cursor:pointer;vertical-align:middle;justify-content:center;align-items:center;margin-right:.6rem;padding:0;font-size:1.05rem;font-weight:700;line-height:1;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.expand-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.expand-btn[aria-expanded=true]{background:var(--accent);border-color:var(--accent);color:#fff}.expand-row>td{border-bottom:1px solid var(--line);background:linear-gradient(#0e74900f,#0e749008);padding:.55rem .9rem 1rem}.nested-table{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;margin:.2rem 0 0;overflow:hidden}.nested-table th,.nested-table td{border-bottom:1px solid var(--line-strong);padding:.48rem .75rem;font-size:.86rem}.nested-table th{background:#f7fafc;position:static}.nested-table tbody tr:last-child td{border-bottom:none}.results-table .result-value-input{border:1px solid var(--border,#c9d5de);width:min(100%,10rem);min-width:6rem;font:inherit;border-radius:6px;padding:.35rem .5rem}.results-table .actions{white-space:nowrap;width:1%}.empty{text-align:center;color:var(--muted);padding:1.75rem!important}.muted{color:var(--muted);font-size:.88em;font-weight:500}.badge{letter-spacing:.02em;text-transform:uppercase;border-radius:4px;padding:.18rem .5rem;font-size:.72rem;font-weight:700;display:inline-block}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.link{color:var(--accent);font-weight:650;text-decoration:none}.link:hover{color:var(--accent-dark);text-decoration:underline}.link.back{margin-bottom:.85rem;display:inline-block}.error-banner{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius-sm);border:1px solid #b91c1c38;margin:0 0 1rem;padding:.75rem 1rem;font-weight:500}.ok-banner{background:var(--ok-soft);color:var(--ok);border-radius:var(--radius-sm);border:1px solid #0f766e38;margin:0 0 1rem;padding:.75rem 1rem;font-weight:500}.badge.ready{background:var(--accent-soft);color:var(--accent-dark)}.toolbar .grow{flex:1;min-width:12rem}.toolbar label.grow{color:var(--muted);flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;display:flex}.toolbar label.grow.field-inline{flex-direction:row;align-items:center}.toolbar label.grow input{box-sizing:border-box;border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;height:2.85rem;min-height:2.85rem;color:var(--ink);font:inherit;background:#fff;padding:.72rem .85rem;font-size:.92rem;line-height:1.2;transition:border-color .15s,box-shadow .15s}.toolbar label.grow input:hover{border-color:#0e749073}.toolbar label.grow input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.toolbar>.btn{box-sizing:border-box;justify-content:center;align-items:center;height:2.85rem;min-height:2.85rem;padding:0 1.2rem;display:inline-flex}.inline-check{color:var(--ink-soft);align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.col-expand{text-align:center;width:2.6rem}.sort-btn{color:inherit;font:inherit;letter-spacing:.02em;text-transform:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;padding:0;font-weight:700;display:inline-flex}.sort-btn:hover{color:var(--accent-dark)}.cred-value{color:var(--ink);background:#0e74900f;border:1px solid #0e74901f;border-radius:6px;padding:.22rem .45rem;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.88rem;font-weight:650}.patient-name-cell{flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;display:flex}.patient-phone{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.88rem}.internet-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.55rem;display:inline-flex}.toolbar .internet-toggle.field-inline{align-self:center;margin-top:.85rem}.internet-toggle input[type=checkbox]{appearance:none;cursor:pointer;background:#cbd5e1;border:1px solid #94a3b8;border-radius:999px;width:2.6rem;height:1.35rem;transition:background .15s,border-color .15s;position:relative}.internet-toggle input[type=checkbox]:after{content:"";background:#fff;border-radius:50%;width:1rem;height:1rem;transition:transform .15s;position:absolute;top:1px;left:2px;box-shadow:0 1px 3px #10243740}.internet-toggle input[type=checkbox]:checked{background:var(--ok);border-color:#0f766e}.internet-toggle input[type=checkbox]:checked:after{transform:translate(1.15rem)}.internet-toggle input[type=checkbox]:disabled{opacity:.55;cursor:wait}.actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.icon-btn{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--paper);width:2rem;height:2rem;color:var(--ink-soft);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.icon-btn svg{flex-shrink:0;width:1.05rem;height:1.05rem}.icon-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark)}.icon-btn:disabled{opacity:.5;cursor:wait}.icon-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.icon-btn.primary:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}.icon-btn.danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.card-form{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1.1rem;padding:1.15rem 1.2rem 1.25rem}.card-form h2{margin-bottom:.85rem;font-size:1.15rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;margin-bottom:1rem;display:grid}.form-grid label{color:var(--muted);flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;display:flex}.form-grid select{font:inherit;border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:#fff;padding:.55rem .7rem}.hint{color:var(--muted);margin:.65rem .2rem;font-size:.86rem}.pagination-shell{border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffb8;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:0 0 .95rem;padding:.7rem .85rem;display:flex;box-shadow:0 1px #10243708}.pagination-footer{margin-top:.95rem}.pagination-footer .pagination-shell{margin-bottom:0}.pagination-meta{color:var(--muted);align-items:center;gap:.55rem;margin:0;font-size:.86rem;display:flex}.pagination-chip{background:var(--accent-soft);min-width:3.4rem;color:var(--accent-dark);letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;padding:.28rem .55rem;font-size:.78rem;font-weight:700;display:inline-flex}.pagination-muted{color:var(--muted);font-weight:500}.pagination-controls{align-items:center;gap:.35rem;display:flex}.page-numbers{align-items:center;gap:.28rem;margin:0 .2rem;display:flex}.page-nav,.page-number{border:1px solid var(--line);min-width:2.15rem;height:2.15rem;color:var(--ink-soft);font:inherit;cursor:pointer;background:#fff;border-radius:10px;padding:0 .45rem;font-size:.86rem;font-weight:700;transition:background .15s,border-color .15s,color .15s,transform .1s}.page-nav:hover:not(:disabled),.page-number:hover:not(:disabled){color:var(--accent-dark);background:#0e74900f;border-color:#0e749059}.page-number.active{background:linear-gradient(180deg, #1292b0 0%, var(--accent) 100%);color:#fff;border-color:#0000;box-shadow:0 6px 14px #0e749047}.page-nav:disabled,.page-number:disabled{opacity:.45;cursor:not-allowed}.page-ellipsis{text-align:center;min-width:1.4rem;color:var(--muted);font-weight:700}@media (width<=720px){.pagination-shell{justify-content:center}.pagination-controls{flex-wrap:wrap;order:3;justify-content:center;width:100%}}.stat-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-bottom:1.1rem;display:grid}.stat{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:.3rem;padding:1rem 1.05rem;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.72rem;font-weight:700}.stat strong{font-size:1.32rem;font-family:var(--font-display);color:var(--ink);font-weight:650}.subhead{margin:1.35rem 0 .55rem;font-size:1.15rem}.cash-report-table td,.cash-report-table th{vertical-align:middle}.cash-report-table .col-expand{width:2.4rem;padding-right:.25rem}.cash-report-table .expand-btn.muted{color:var(--muted);cursor:default;pointer-events:none;background:0 0;border-color:#0000}.cash-report-table .col-date{white-space:nowrap;letter-spacing:-.01em;width:4.75rem;max-width:4.75rem;font-size:.88rem}.cash-report-table .date-section-row td{background:#0e749012;border-bottom:1px solid #0e749024;padding:.65rem .75rem .4rem}.cash-report-table .date-section-title{letter-spacing:.02em;text-transform:uppercase;color:var(--accent-dark,#0e7490);font-size:.82rem;font-weight:750;display:inline-block}.cash-report-table .col-person{overflow-wrap:anywhere;word-break:break-word;line-height:1.35}.cash-report-table .col-amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;width:7.5rem;font-weight:600}.cash-report-table th.col-amount{font-weight:700}.cash-report-table.pending-orders-table{table-layout:fixed;width:100%}.cash-report-table.pending-orders-table .col-expand{width:2.4rem}.cash-report-table.pending-orders-table .col-person{overflow-wrap:normal;word-break:normal;white-space:nowrap;width:auto}.cash-report-table.pending-orders-table .col-amount{width:5.75rem;max-width:5.75rem;padding-left:.35rem;padding-right:.5rem}.cash-report-table.pending-orders-table .col-status{white-space:nowrap;text-align:center;width:5.25rem;max-width:5.25rem}.order-expand{flex-direction:column;gap:.65rem;display:flex}.order-expand-meta{color:var(--ink-soft);flex-wrap:wrap;gap:.35rem 1rem;font-size:.88rem;display:flex}.login-page{place-items:center;min-height:100vh;padding:1.5rem;display:grid;position:relative}.login-page:before{content:"";z-index:0;background:linear-gradient(135deg,#102437e0 0%,#0e7490b8 55%,#0f766ea6 100%),radial-gradient(circle at 20% 20%,#ffffff1f,#0000 40%);position:absolute;inset:0}.login-panel{z-index:1;background:var(--paper);border:1px solid #ffffff59;border-radius:14px;width:min(440px,100%);padding:2.15rem 1.85rem 1.9rem;position:relative;box-shadow:0 24px 48px #08142047}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin:0 0 .4rem;font-size:.7rem;font-weight:700}.login-brand{color:var(--ink);margin-bottom:.45rem;font-size:clamp(2rem,4vw,2.35rem)}.login-lead{color:var(--muted);margin:0 0 1.55rem;font-size:.95rem;line-height:1.5}.login-form{flex-direction:column;gap:.95rem;display:flex}.login-form label{color:var(--muted);flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;display:flex}.password-field{align-items:stretch;display:flex;position:relative}.password-field input{width:100%;min-width:0;padding-right:4.25rem}.password-toggle{color:var(--accent-dark,#0e7490);letter-spacing:.02em;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:.35rem .55rem;font-size:.78rem;font-weight:700;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.password-toggle:hover{background:var(--accent-soft,#0e74901f)}.password-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.login-form .remember-row{color:var(--ink-soft);cursor:pointer;flex-direction:row;align-items:center;gap:.55rem;font-weight:600}.login-form .remember-row input[type=checkbox]{width:1.05rem;min-width:0;height:1.05rem;accent-color:var(--accent);cursor:pointer;margin:0;padding:0}.saved-logins{flex-direction:column;gap:.4rem;display:flex}.saved-logins-title{color:var(--muted);font-size:.8rem;font-weight:600}.saved-logins-list{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.saved-login{border:1px solid var(--line-strong);background:#fff;border-radius:999px;align-items:center;display:inline-flex;overflow:hidden}.saved-login.active{border-color:var(--accent);background:var(--accent-soft,#0e74901f)}.saved-login button{font:inherit;cursor:pointer;color:var(--ink);background:0 0;border:none}.saved-login .saved-login-pick{padding:.35rem .25rem .35rem .8rem;font-size:.82rem;font-weight:700}.saved-login .saved-login-forget{color:var(--muted);padding:.35rem .65rem .35rem .4rem;font-size:1rem;line-height:1}.saved-login .saved-login-forget:hover{color:var(--danger,#b42318)}.saved-login button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (width<=720px){.topbar{flex-direction:column;align-items:stretch;gap:.75rem}.brand-block{border-right:none;width:100%;padding-right:0}.topbar-actions{width:100%}.toolbar{flex-direction:column;align-items:stretch}.field input{width:100%}.tabs{width:100%;display:flex}.tab{text-align:center;flex:1}}
