/* Scoped workflow controls; inherit the clinic's theme and typography. */
.sf-overlay{position:fixed;inset:0;z-index:11000;display:flex;align-items:flex-end;justify-content:center;background:rgba(10,25,35,.46);padding:12px;box-sizing:border-box}
.sf-overlay .sf-panel{width:min(520px,100%);max-height:90dvh;overflow:auto;overscroll-behavior:contain;background:var(--paper,#fff);color:var(--ink-800,#193b42);border:1px solid var(--border,#d7e3e8);border-radius:20px;padding:18px 16px max(18px,env(safe-area-inset-bottom));font:inherit;direction:rtl;box-sizing:border-box}
.sf-panel header,.sf-panel footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.sf-panel h3{margin:0;font-size:18px}.sf-panel footer{margin-top:18px}.sf-panel label{display:block;font-weight:700;margin:16px 0 7px;font-size:13px}
.sf-panel button,.sf-panel .sf-wa,.sf-money button{font:inherit;min-height:44px;min-width:44px;border:1px solid var(--border,#d4e1e6);border-radius:11px;background:var(--paper,#fff);color:inherit;padding:8px 12px;cursor:pointer;box-sizing:border-box}
.sf-panel textarea,.sf-panel input,.sf-panel select{font:inherit;font-size:16px;width:100%;min-width:0;padding:10px;border:1px solid var(--border,#cbdce2);border-radius:10px;box-sizing:border-box;background:var(--paper,#fff);color:inherit}.sf-panel textarea{resize:vertical}
.sf-choices{display:flex;flex-wrap:wrap;gap:7px}.sf-panel .selected,.sf-panel .sf-primary{background:var(--teal-700,#176b70);color:#fff;border-color:transparent}.sf-panel .sf-wa{display:block;text-align:center;text-decoration:none;margin-top:16px}
.sf-dates{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:8px;margin-top:10px;direction:ltr}.sf-hint{display:block;font-size:12px;line-height:1.7;color:var(--ink-500,#617980);margin:4px 0 0}.sf-panel .sf-hint:empty{display:none}
.sf-money{position:relative;min-width:0}.sf-money-row{display:flex;align-items:stretch;gap:6px}.sf-money-row .qf-amt-input{flex:1;width:0;min-width:0;font-size:20px}.sf-money-row>button{flex:none;font-size:22px}
.sf-keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px;padding:8px;border:1px solid var(--border,#d4e1e6);border-radius:12px;background:var(--paper,#fff)}.sf-keypad button{padding:5px;font-size:12px;white-space:nowrap}.sf-keypad button:last-child{grid-column:span 2}
.sf-filling-kind{display:flex;align-items:center;gap:8px;margin:8px 0}.sf-filling-kind select{font:inherit;min-height:44px;max-width:100%;border:1px solid var(--border,#d4e1e6);border-radius:10px;padding:7px;background:var(--paper,#fff);color:inherit}.sf-filling-kind label{font-size:12px}
.sf-money [aria-invalid=true]{border-color:var(--danger,#b53b3b)}.sf-panel button:focus-visible,.sf-money button:focus-visible,.sf-panel a:focus-visible{outline:3px solid var(--teal-500,#339ba0);outline-offset:2px}
.sf-summary,.sf-procedure-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.sf-summary{padding:12px;margin-top:12px;border-radius:12px;background:var(--ink-50,#eff6f5);font-size:13px}.sf-summary b{display:block;font-size:20px}.sf-procedure-list{padding:8px 0;font-size:12px}.sf-procedure-list>div{padding:5px 0;border-bottom:1px solid var(--border,#dce5e8)}
@media(min-width:600px){.sf-overlay{align-items:center}}
.sf-money-row>input{flex:1;width:0;min-width:0}
