:root{--ink:#172b3a;--muted:#6c7c88;--line:#dfe8eb;--canvas:#f4f8f8;--brand:#087f79;--brand-dark:#05635f;--white:#fff;--shadow:0 18px 50px rgba(28,66,76,.09)}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--canvas);font-family:Inter,Segoe UI,sans-serif}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;padding:30px 20px;background:#0e2931;color:#fff;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:750;letter-spacing:-.4px;padding:0 8px 32px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#18a49c}.brand-mark svg{width:24px}.brand small{display:block;margin-top:2px;color:#83a3ab;font-size:10px;letter-spacing:1.8px;text-transform:uppercase}.sidebar nav{display:grid;grid-gap:7px;gap:7px}.sidebar nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;color:#a9bec3;font-size:14px;text-decoration:none}.sidebar nav a svg{width:19px}.sidebar nav a.active{color:#fff;background:#17424b}.secure{margin-top:auto;display:flex;gap:10px;align-items:center;padding:14px;background:#123941;border:1px solid #24515a;border-radius:12px}.secure svg{width:20px;color:#63d1c8}.secure small,.secure strong{display:block;font-size:12px}.secure small{color:#83a3ab;margin-top:3px}.content{padding:38px 44px;min-width:0}.content>header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.eyebrow{font-size:11px;color:var(--brand);font-weight:800;letter-spacing:1.7px}.content h1{font-size:32px;letter-spacing:-1px;margin:7px 0}.content header p,.toolbar p{color:var(--muted);margin:0;font-size:14px}button{font:inherit;border:0;cursor:pointer}.primary{height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;background:var(--brand);color:#fff;padding:0 18px;font-weight:700;box-shadow:0 7px 18px rgba(8,127,121,.2)}.primary:hover{background:var(--brand-dark)}.primary svg{width:18px}.stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-bottom:20px}.stats article{position:relative;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 5px 20px rgba(28,66,76,.04)}.stat-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px}.stat-icon svg{width:21px}.teal{background:#e5f7f5;color:#087f79}.blue{background:#e9f1ff;color:#3679d7}.rose{background:#ffebee;color:#d55065}.stats small,.stats strong{display:block}.stats small{color:var(--muted);font-size:12px}.stats strong{font-size:22px;margin-top:4px}.stats em{margin-left:auto;font-style:normal;color:#789099;font-size:11px}.panel{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);overflow:hidden}.toolbar{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.toolbar h2{margin:0 0 4px;font-size:18px}.tools{display:flex;gap:9px}.search{width:290px;height:41px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:#f9fbfb}.search svg{width:17px;color:#82949b}.search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink)}.icon-button{width:41px;height:41px;display:grid;place-items:center;border:1px solid var(--line);background:#fff;border-radius:9px;color:#688089}.icon-button svg{width:18px}.table-wrap{overflow:auto;max-height:calc(100vh - 350px)}table{width:100%;border-collapse:collapse;min-width:820px}th{position:-webkit-sticky;position:sticky;top:0;background:#f8fbfb;text-align:left;padding:12px 18px;font-size:11px;color:#71858d;text-transform:uppercase;letter-spacing:.7px}td{border-top:1px solid #edf2f3;padding:13px 18px;font-size:13px}.patient{display:flex;align-items:center;gap:11px}.patient>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#daf1ef;color:var(--brand);font-weight:800}.patient small,.patient strong{display:block}.patient small{color:var(--muted);font-size:11px;margin-top:3px}code{font:12px ui-monospace;color:#526a73}.link-button{color:var(--brand);background:none;font-weight:750}.empty{text-align:center!important;height:250px;color:var(--muted)}.empty span,.empty strong,.empty svg{display:block;margin:6px auto}.empty svg{width:35px;height:35px;color:#a6b6bb}.alert{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;margin-bottom:16px;border-radius:10px;font-size:13px}.alert.error{background:#fff0f1;color:#a83243;border:1px solid #ffd4da}.alert.success{background:#eaf8f2;color:#176a50;border:1px solid #ccebdd}.alert button{background:transparent;color:inherit}.alert svg{width:16px}.modal-backdrop{position:fixed;inset:0;background:rgba(6,27,34,.62);display:grid;place-items:center;padding:24px;z-index:20}.modal{width:min(900px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.3)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:24px 26px;border-bottom:1px solid var(--line)}.modal-head h2{margin:5px 0 0;font-size:23px}.modal form{padding:24px 26px}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:17px;gap:17px}.form-grid label{display:grid;grid-gap:7px;gap:7px}.form-grid label.wide{grid-column:span 2}.form-grid label>span{font-size:12px;font-weight:700;color:#526872}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #d7e3e6;border-radius:9px;padding:10px 11px;outline:0;color:var(--ink);background:#fff}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#42aaa4;box-shadow:0 0 0 3px #e2f5f3}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:24px;margin-top:23px;border-top:1px solid var(--line)}.secondary{height:44px;padding:0 18px;border-radius:10px;background:#edf3f4;color:#38515a;font-weight:700}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:18px}.secure,.sidebar nav{display:none}.brand{padding:0}.content{padding:25px 18px}.stats{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.search,.tools{width:100%}.form-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.content>header{align-items:stretch;flex-direction:column}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}.modal-backdrop{padding:0}.modal{height:100vh;max-height:none;border-radius:0}}.patient-modal{width:min(1180px,96vw)}.stats.stats-two{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-alert{position:-webkit-sticky;position:sticky;top:0;z-index:3;margin:0 0 18px;box-shadow:0 5px 18px rgba(168,50,67,.12)}.form-row,.patient-form{display:grid;grid-gap:15px;gap:15px}.form-row{align-items:end}.form-row.row-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-row.row-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-row.row-4{grid-template-columns:repeat(4,minmax(0,1fr))}.patient-form label{min-width:0}.patient-form .material-field{position:relative;display:block;padding-top:7px}.patient-form .material-field>span,.patient-form legend{color:#526872;font-size:12px;font-weight:700}.patient-form .material-field>span{position:absolute;z-index:1;top:0;left:12px;padding:0 5px;line-height:14px;background:#fff;transition:color .18s ease}.patient-form .material-field>span b{color:#d3465a}.patient-form input,.patient-form select{width:100%;height:48px;padding:0 14px;border:1px solid #9babb0;border-radius:5px;outline:0;color:var(--ink);background:#fff;font-size:14px;transition:border-color .18s ease,box-shadow .18s ease}.patient-form input:focus,.patient-form select:focus{border:2px solid var(--brand);padding-left:13px;box-shadow:none}.patient-form .material-field:focus-within>span{color:var(--brand)}.patient-form input.readonly{color:#71858d;background:#eef3f4;cursor:not-allowed}.demographics{grid-template-columns:1.05fr 1.15fr 1.15fr}.age-group{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.patient-form fieldset{min-width:0;height:55px;margin:0;padding:7px 11px 5px;border:1px solid #9babb0;border-radius:5px}.patient-form legend{padding:0 5px}.radio-group{display:flex;align-items:center;gap:15px;min-height:30px}.radio-group label{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:6px;color:#344e58;font-size:13px;white-space:nowrap}.radio-group input{width:15px;height:15px;padding:0;accent-color:var(--brand)}.referral-row{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr)}.required-note{margin:13px 0 0;color:#d3465a;font-size:11px;font-weight:700}.pagination{justify-content:space-between;gap:16px;padding:14px 18px;border-top:1px solid #e3eaec;color:#657b84;font-size:13px}.pagination,.pagination>div{display:flex;align-items:center}.pagination>div{gap:12px}.pagination strong{color:#344e58;font-size:13px}.pagination .secondary{min-width:88px;padding:8px 12px}.pagination button:disabled{cursor:not-allowed;opacity:.45}.sidebar nav a{cursor:pointer}.brand{min-width:0}.brand-name{min-width:0;overflow-wrap:anywhere;white-space:normal;font-size:14px;line-height:1.25;letter-spacing:0}.brand-name small{margin-top:5px;line-height:1.2}.brand-mark.hospital-logo{flex:0 0 48px;width:48px;height:48px;overflow:hidden;background:#fff;border:2px solid hsla(0,0%,100%,.2)}.hospital-logo img{width:100%;height:100%;object-fit:contain}.hospital-panel{padding:0 24px 24px;overflow:visible}.hospital-title{display:flex;align-items:center;gap:13px;margin:0 -24px 24px;padding:20px 24px;border-bottom:1px solid var(--line)}.hospital-title h2{margin:0 0 4px;font-size:18px}.hospital-title p{margin:0;color:var(--muted);font-size:13px}.hospital-form{max-width:1200px}.logo-upload{display:flex;min-height:55px;flex-direction:column;justify-content:center;padding:7px 13px;border:1px dashed #9babb0;border-radius:5px;cursor:pointer}.logo-upload>span{display:flex;align-items:center;gap:7px;color:#526872;font-size:12px;font-weight:700}.logo-upload svg{width:16px}.logo-upload input{display:none}.logo-upload small{margin-top:3px;color:var(--muted);font-size:11px}.settings-panel{max-width:760px;padding:0 24px 24px;overflow:visible}.settings-panel .hospital-title{margin-bottom:28px}.settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.settings-form .modal-actions{grid-column:1/-1}.number-with-icon,.number-with-suffix{position:relative}.number-with-icon>svg{position:absolute;z-index:1;top:14px;left:13px;width:18px;color:#71858d}.patient-form .number-with-icon input{padding-left:40px}.number-with-suffix em{position:absolute;top:15px;right:13px;color:#71858d;font-size:12px;font-style:normal;font-weight:700}.patient-form .number-with-suffix input{padding-right:52px}@media (max-width:900px){.form-row.row-4{grid-template-columns:repeat(2,minmax(0,1fr))}.demographics{grid-template-columns:1fr}}@media (max-width:620px){.form-row.row-2,.form-row.row-3,.form-row.row-4,.referral-row{grid-template-columns:1fr}.radio-group{flex-wrap:wrap}.pagination{align-items:flex-start;flex-direction:column}.settings-form{grid-template-columns:1fr}}.registration-workspace{display:grid;grid-gap:18px;gap:18px}.registration-workspace .panel{overflow:visible}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}.section-heading h2{margin:0 0 3px}.section-heading p{margin:0;color:var(--muted)}.step-number{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e5f7f3;color:#087f6d;font-weight:800}.patient-lookup{position:relative;display:flex;align-items:center;gap:10px;border:2px solid #d5e2e0;border-radius:12px;padding:0 14px;background:#fff}.patient-lookup:focus-within{border-color:#159783;box-shadow:0 0 0 3px #15978318}.patient-lookup svg{color:#68817d;width:20px}.patient-lookup input{width:100%;height:52px;border:0;outline:0;font-size:16px}.patient-lookup>span{white-space:nowrap;color:var(--muted);font-size:13px}.patient-results{position:absolute;z-index:20;left:24px;right:24px;margin-top:6px;border:1px solid #d9e4e2;border-radius:12px;background:#fff;box-shadow:0 18px 40px #173b3526;max-height:330px;overflow:auto}.registration-search{position:relative}.patient-results button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:12px 14px;border:0;border-bottom:1px solid #edf2f1;background:#fff;cursor:pointer}.patient-results button:hover{background:#f1faf8}.patient-results button>span:nth-child(2){display:grid;grid-gap:3px;gap:3px;flex:1 1}.patient-results small{color:var(--muted)}.patient-results em{font-style:normal;color:#087f6d;font-weight:700}.result-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e5f7f3;color:#087f6d;font-weight:800}.selected-patient{display:flex;align-items:flex-start;gap:14px;margin-top:16px;padding:16px;border:1px solid #bde4dc;border-radius:12px;background:#f3fbf9}.selected-patient>div{flex:1 1}.selected-patient h3{margin:2px 0 7px}.selected-patient p{margin:3px 0;color:#506560}.selected-patient p b{margin-left:13px}.selected-patient p b:first-child{margin-left:0}.selected-patient small{font-weight:800;color:#087f6d}.selected-check{color:#0b947b}.registration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.field-icon{position:relative}.field-icon svg{position:absolute;left:12px;top:12px;width:18px;color:#66807a}.field-icon input{padding-left:40px!important}.fee-input{font-weight:800;color:#087f6d!important}.payment-type{display:flex;align-items:center;gap:10px;margin-bottom:16px}.payment-type>span{font-weight:700;margin-right:6px}.payment-type label{display:flex;gap:7px;padding:9px 16px;border:1px solid #d5e0de;border-radius:9px;cursor:pointer;font-weight:700}.payment-type label.checked{border-color:#159783;background:#edf9f6;color:#087f6d}.payment-head,.payment-row{display:grid;grid-template-columns:180px 180px 1fr;grid-gap:12px;gap:12px;align-items:center}.payment-head{padding:8px 12px;color:#637772;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.05em}.payment-row{padding:10px 12px;border-top:1px solid #e5eceb}.payment-row strong{display:flex;align-items:center;gap:8px}.payment-row strong svg{width:18px;color:#0d8c77}.payment-row input{height:42px;border:1px solid #cedbd8;border-radius:8px;padding:0 11px;outline:none}.amount-field{position:relative}.amount-field span{position:absolute;left:11px;top:10px;color:#657a75}.amount-field input{width:100%;padding-left:28px}.payment-table{border:1px solid #dfe8e6;border-radius:12px;overflow:hidden}.payment-summary{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.payment-summary>div{min-width:150px;padding:12px 14px;border-radius:10px;background:#f4f7f6;display:grid;grid-gap:4px;gap:4px}.payment-summary span{font-size:12px;color:#60736f}.payment-summary strong{font-size:17px}.payment-summary .balanced{background:#e8f8f3;color:#087f6d}.payment-summary .difference{background:#fff1ed;color:#b94828}.payment-summary .balanced strong{display:flex;align-items:center;gap:5px;font-size:14px}.payment-summary svg{width:17px}.credit-note{padding:18px;border-radius:10px;background:#fff8e8;color:#71571b}.registration-actions{position:-webkit-sticky;position:sticky;bottom:0;z-index:10;display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:15px 20px;border:1px solid #dfe8e6;border-radius:14px;background:#fffffff2;box-shadow:0 -8px 30px #1f493f12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.registration-actions span{color:var(--muted);font-size:13px}.save-registration{min-width:180px;justify-content:center}@media(max-width:900px){.registration-grid{grid-template-columns:1fr 1fr}.payment-head,.payment-row{grid-template-columns:130px 150px 1fr}}@media(max-width:640px){.registration-grid{grid-template-columns:1fr}.selected-patient{flex-wrap:wrap}.payment-head{display:none}.payment-row{grid-template-columns:1fr}.payment-summary{flex-direction:column}.payment-summary>div{min-width:0}.registration-actions{justify-content:space-between}.registration-actions span{display:none}}.registration-workspace>.panel{overflow:visible;padding:10px 14px}.registration-grid.patient-form{display:grid}.content:has(.registration-workspace){padding-top:12px;padding-bottom:10px}.content:has(.registration-workspace)>header{margin-bottom:8px}.content:has(.registration-workspace)>header h1{margin:1px 0;font-size:22px}.content:has(.registration-workspace)>header p{font-size:12px}.content:has(.registration-workspace) .eyebrow{font-size:9px}.registration-workspace{gap:8px}.registration-workspace .section-heading{gap:9px;margin-bottom:7px}.registration-workspace .section-heading h2{font-size:18px;margin-bottom:1px}.registration-workspace .section-heading p{font-size:11px}.registration-workspace .step-number{width:29px;height:29px;border-radius:8px;font-size:13px}.registration-workspace .patient-lookup input{height:36px;font-size:14px}.registration-workspace .registration-grid{gap:7px 12px}.registration-workspace .patient-form input,.registration-workspace .patient-form select{height:36px}.registration-workspace .payment-type{margin-bottom:10px}.registration-workspace .payment-type label{padding:7px 14px;font-size:13px}.registration-workspace .payment-head{padding-top:6px;padding-bottom:6px}.registration-workspace .payment-row{padding-top:7px;padding-bottom:7px}.registration-workspace .payment-row input{height:36px}.registration-workspace .amount-field span{top:7px}.registration-workspace .payment-summary{margin-top:9px}.registration-workspace .payment-summary>div{padding:8px 12px}.registration-workspace .registration-actions{padding:6px 14px}@media (min-width:901px){.registration-search{display:grid;grid-template-columns:260px minmax(0,1fr);align-items:center;grid-gap:14px;gap:14px}.registration-search .section-heading{margin-bottom:0}.registration-search .selected-patient{grid-column:1/-1}.registration-payment{display:grid;grid-template-columns:1fr auto;align-items:center;grid-column-gap:18px;column-gap:18px}.registration-payment .payment-type,.registration-payment .section-heading{margin-bottom:8px}.registration-payment .credit-note,.registration-payment .payment-summary,.registration-payment .payment-table{grid-column:1/-1}.registration-workspace .payment-row{padding-top:5px;padding-bottom:5px}.registration-workspace .payment-row input{height:32px}.registration-workspace .amount-field span{top:5px}}@media (max-width:640px){.registration-workspace>.panel{padding:18px}}.content:has(.billing-workspace){padding-top:18px;padding-bottom:14px}.billing-header{margin-bottom:10px!important}.billing-header h1{font-size:25px;margin:2px 0}.billing-header p{font-size:12px}.billing-workspace{display:grid;grid-gap:10px;gap:10px}.billing-workspace>.panel{padding:14px;overflow:visible}.billing-patient{position:relative;display:grid;grid-template-columns:150px minmax(240px,1.3fr) minmax(220px,1fr) minmax(220px,1fr);grid-gap:11px;gap:11px;align-items:end}.billing-workspace .material-field{display:grid;grid-gap:4px;gap:4px}.billing-workspace label>span,.service-entry label>span{font-size:11px;font-weight:700;color:#526872}.billing-workspace input{height:38px;border:1px solid #aab9bd;border-radius:7px;padding:0 11px;outline:none}.billing-workspace input:focus{border-color:var(--brand);box-shadow:0 0 0 2px #087f7920}.bill-patient-search{display:flex;align-items:center;gap:8px;height:38px;border:1px solid #aab9bd;border-radius:7px;padding:0 10px}.bill-patient-search svg{width:17px;color:#71858d}.bill-patient-search input{width:100%;height:34px;border:0;padding:0;box-shadow:none!important}.bill-results{position:absolute;z-index:30;left:175px;top:57px;width:420px;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:var(--shadow)}.bill-results button{display:grid;width:100%;grid-gap:2px;gap:2px;padding:10px 12px;text-align:left;background:#fff;border-bottom:1px solid var(--line)}.bill-results small{color:var(--muted)}.bill-selected{grid-column:1/3;display:flex;align-items:center;gap:9px;min-height:44px;padding:7px 11px;border-radius:8px;background:#edf9f6;color:#087f6d}.bill-selected svg{width:19px}.bill-selected span{display:grid}.bill-selected small{color:#526d67}.bill-selected.muted{color:var(--muted);background:#f4f7f7;font-size:12px}.service-entry{display:grid;grid-template-columns:minmax(250px,2fr) 120px 70px 110px 120px auto;grid-gap:9px;gap:9px;align-items:end}.service-entry label{display:grid;grid-gap:4px;gap:4px}.service-entry .primary{height:38px}.bill-grid{margin-top:11px;border:1px solid var(--line);border-radius:9px;overflow:hidden}.bill-grid-head,.bill-grid-row{display:grid;grid-template-columns:110px minmax(250px,1fr) 65px 100px 110px 35px;align-items:center;grid-gap:9px;gap:9px;padding:7px 11px}.bill-grid-head{background:#f5f9f8;color:#6b7f7a;font-size:10px;font-weight:800;text-transform:uppercase}.bill-grid-row{border-top:1px solid var(--line);font-size:12px}.bill-grid-row button{background:transparent;color:#c24c5d}.bill-grid-row svg{width:16px}.bill-empty{padding:15px;text-align:center;color:var(--muted);font-size:12px}.bill-settlement{display:grid;grid-template-columns:1fr auto;grid-gap:10px 20px;gap:10px 20px}.bill-totals{display:flex;gap:9px}.bill-totals label{display:flex;align-items:center;gap:10px;height:42px;padding:0 12px;border-radius:8px;background:#f4f7f7;font-size:11px}.bill-totals strong{font-size:16px}.bill-totals input{width:100px;height:32px}.bill-totals .net{background:#e8f8f3;color:#087f6d}.bill-payment-type{display:flex;align-items:center;gap:12px;font-size:12px}.bill-payment-type label{display:flex;align-items:center;gap:5px}.bill-payment-type input{height:auto}.bill-payments{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:9px;gap:9px}.bill-payments>div{display:grid;grid-template-columns:85px 100px 1fr;grid-gap:7px;gap:7px;align-items:center}.bill-payments strong{display:flex;align-items:center;gap:5px;font-size:12px}.bill-payments svg{width:16px;color:var(--brand)}.bill-payments input{height:34px}.bill-balance{grid-column:1/-1;display:flex;justify-content:flex-end;gap:18px;font-size:12px}.bill-balance.ok strong{color:#087f6d}.bill-balance.bad strong{color:#c34e48}.billing-actions{position:-webkit-sticky;position:sticky;bottom:0;z-index:10;display:flex;justify-content:flex-end;align-items:center;gap:15px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;background:#fffffff2;box-shadow:0 -5px 20px #173b3514}.billing-actions span{font-size:11px;color:var(--muted)}@media(max-width:1050px){.billing-patient{grid-template-columns:1fr 2fr}.bill-selected{grid-column:1/-1}.service-entry{grid-template-columns:2fr 1fr 70px 1fr 1fr auto}.bill-settlement{grid-template-columns:1fr}.bill-payment-type{justify-content:flex-start}.bill-payments{grid-template-columns:1fr}}@media(max-width:700px){.billing-patient,.service-entry{grid-template-columns:1fr}.bill-results{left:14px;right:14px;top:100px;width:auto}.bill-grid{overflow:auto}.bill-grid-head,.bill-grid-row{min-width:650px}.bill-totals{flex-direction:column}.bill-payments>div{grid-template-columns:75px 90px 1fr}}.bill-payments>div{grid-template-columns:72px 86px minmax(0,1fr);gap:6px;min-width:0}.bill-payments input{width:100%;min-width:0}.billing-workspace .material-field,.billing-workspace label,.service-entry>label{min-width:0}.billing-workspace input,.billing-workspace select{width:100%;min-width:0}.billing-workspace .bill-ward-type select{height:38px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #aab9bd;border-radius:7px;padding:0 38px 0 11px;color:var(--ink);background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#087f79 0),linear-gradient(135deg,#087f79 50%,transparent 0);background-position:calc(100% - 17px) 16px,calc(100% - 12px) 16px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;font:inherit;cursor:pointer;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.billing-workspace .bill-ward-type select:hover{border-color:#6baaa5;background-color:#fbfefd}.billing-workspace .bill-ward-type select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #087f7920}.billing-workspace .bill-ward-type select:valid{color:#075f5a;font-weight:650;background-color:#f5fbfa}.billing-patient,.service-entry{column-gap:12px}.service-entry input.readonly{color:#087f6d;background:#eef4f3;cursor:not-allowed;font-weight:700}.selected-service-meta{margin-top:6px;color:#71817e;font-size:10px}.bill-grid-row .service-unavailable{display:block;margin-top:2px;color:#b04451;font-size:9px;font-weight:700}.bill-patient-search.has-selection{border-color:#0b947b;background:#f1faf8}.bill-patient-search.has-selection>svg:last-child{color:#0b947b}.bill-results button small+small{color:#7b8c88;font-size:10px}@media (min-width:1051px){.billing-patient{grid-template-columns:150px minmax(210px,1fr) minmax(210px,1fr) minmax(320px,1.15fr);grid-template-rows:auto auto;align-items:end}.billing-patient .bill-date{grid-column:1;grid-row:1}.billing-patient .bill-patient-search{grid-column:2/4;grid-row:1}.billing-patient .bill-department{grid-column:1/2;grid-row:2}.billing-patient .bill-doctor{grid-column:2;grid-row:2}.billing-patient .bill-ward-type{grid-column:3;grid-row:2}.billing-patient .bill-selected{grid-column:4;grid-row:1/3;align-self:stretch;min-height:88px}}.service-entry{grid-template-columns:minmax(320px,1fr) 72px 120px 130px auto}.service-entry>label:nth-child(3) input,.service-entry>label:nth-child(4) input{text-align:right}.bill-settlement{grid-template-columns:minmax(0,1fr) 210px;align-items:start}.bill-payment-type{grid-column:1;grid-row:1}.bill-payments{grid-column:1;grid-row:2;grid-template-columns:1fr;max-width:600px}.bill-payments>div{grid-template-columns:75px 120px minmax(0,1fr)}.bill-totals{grid-column:2;grid-row:1/4;display:grid;grid-gap:6px;gap:6px}.bill-totals label{width:100%;justify-content:space-between}.bill-totals input{width:88px;text-align:right}.bill-totals label:first-child:first-line{font-weight:700}.bill-balance{grid-column:1;justify-content:flex-start}.billing-success-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:rgba(5,28,35,.7);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:billing-fade-in .18s ease-out}.billing-success-popup{width:min(430px,100%);padding:38px 34px 30px;text-align:center;border:1px solid hsla(0,0%,100%,.7);border-radius:24px;background:linear-gradient(155deg,#fff,#f3fffb);box-shadow:0 30px 90px rgba(0,0,0,.32);animation:billing-pop-in .24s ease-out}.billing-success-icon{width:76px;height:76px;display:grid;place-items:center;margin:-2px auto 18px;border-radius:50%;color:#fff;background:linear-gradient(145deg,#19b99f,#087f79);box-shadow:0 12px 30px rgba(8,127,121,.32)}.billing-success-icon svg{width:38px;height:38px;stroke-width:2.3}.billing-success-popup>span{display:block;color:#078171;font-size:11px;font-weight:850;letter-spacing:1.8px}.billing-success-popup h2{margin:8px 0 11px;font-size:26px;letter-spacing:-.5px}.billing-success-popup p{margin:0 auto 25px;color:#445e65;font-size:15px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.billing-success-popup .primary{min-width:130px;margin:0 auto}.billing-success-popup .primary:focus-visible{outline:3px solid rgba(8,127,121,.25);outline-offset:3px}@keyframes billing-fade-in{0%{opacity:0}}@keyframes billing-pop-in{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}.advice-header{margin-bottom:14px}.advice-header h1{margin:2px 0 4px}.advice-header p,.advice-section-title p{margin:0;color:var(--muted)}.advice-workspace{display:grid;grid-gap:12px;gap:12px}.advice-workspace>.panel{padding:16px;overflow:visible}.advice-patient{position:relative;display:grid;grid-template-columns:150px minmax(320px,1fr);grid-gap:12px;gap:12px;align-items:end}.advice-service-entry label,.advice-workspace .material-field{display:grid;grid-gap:4px;gap:4px}.advice-workspace label>span{font-size:11px;font-weight:700;color:#526872}.advice-workspace input{height:38px;border:1px solid #aab9bd;border-radius:7px;padding:0 11px;outline:none}.advice-workspace input:focus{border-color:var(--brand);box-shadow:0 0 0 2px #087f7920}.advice-patient-search{display:flex;align-items:center;gap:8px;height:38px;border:1px solid #aab9bd;border-radius:7px;padding:0 10px}.advice-patient-search svg{width:17px;color:#71858d}.advice-patient-search input{width:100%;height:34px;border:0;padding:0;box-shadow:none!important}.advice-results{position:absolute;z-index:30;left:178px;top:58px;width:min(520px,calc(100% - 194px));border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:var(--shadow)}.advice-results button{display:grid;width:100%;grid-gap:2px;gap:2px;padding:10px 12px;text-align:left;background:#fff;border-bottom:1px solid var(--line)}.advice-results small{color:var(--muted)}.advice-selected{grid-column:1/-1;display:flex;align-items:center;gap:9px;min-height:50px;padding:8px 11px;border-radius:8px;background:#edf9f6;color:#087f6d}.advice-selected svg{width:20px}.advice-selected span{display:grid}.advice-selected small{color:#526d67}.advice-selected.muted{color:var(--muted);background:#f4f7f7;font-size:12px}.advice-section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.advice-section-title h2{margin:0 0 2px;font-size:17px}.advice-section-title svg{color:var(--brand)}.advice-grid{border:1px solid var(--line);border-radius:9px;overflow:hidden}.advice-grid-head,.advice-grid-row{display:grid;grid-template-columns:150px minmax(260px,1fr) 140px;align-items:center;grid-gap:12px;gap:12px;padding:9px 12px}.advice-grid-head{background:#f5f9f8;color:#6b7f7a;font-size:10px;font-weight:800;text-transform:uppercase}.advice-grid-row{border-top:1px solid var(--line);font-size:12px}.advice-empty{padding:18px;text-align:center;color:var(--muted);font-size:12px}.advice-service-entry{display:grid;grid-template-columns:minmax(300px,1fr) auto;grid-gap:10px;gap:10px;align-items:end;margin-bottom:12px}.advice-service-entry .primary{height:38px}.advice-new-head,.advice-new-row{grid-template-columns:140px minmax(280px,1fr) 38px}.advice-grid-row button{background:transparent;color:#c24c5d}.advice-grid-row button svg{width:17px}.advice-actions{position:-webkit-sticky;position:sticky;bottom:0;z-index:10;display:flex;justify-content:flex-end;align-items:center;gap:15px;padding:9px 14px;border:1px solid var(--line);border-radius:10px;background:#fffffff2;box-shadow:0 -5px 20px #173b3514}.advice-actions span{font-size:11px;color:var(--muted)}@media(max-width:700px){.advice-patient,.advice-service-entry{grid-template-columns:1fr}.advice-results{left:16px;right:16px;top:104px;width:auto}.advice-grid{overflow:auto}.advice-grid-head,.advice-grid-row{min-width:600px}}.advice-patient{grid-template-columns:minmax(320px,1fr)}.advice-workspace select{height:38px;border:1px solid #aab9bd;border-radius:7px;padding:0 11px;outline:none;background:#fff}.advice-workspace select:focus{border-color:var(--brand);box-shadow:0 0 0 2px #087f7920}.advice-history-options{display:grid;grid-template-columns:180px minmax(240px,380px);grid-gap:12px;gap:12px;margin-bottom:12px}.advice-add-title{margin-bottom:12px}.advice-add-options{margin-bottom:14px}@media (max-width:700px){.advice-history-options{grid-template-columns:1fr}}.advice-history-head,.advice-history-row{grid-template-columns:70px 120px minmax(170px,1fr) 70px 55px 55px 140px}.advice-count{font-weight:800;text-align:center}.advice-count.performed{color:#087f6d}.advice-count.not-performed{color:#b93f52}.advice-view{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px}.advice-view svg{width:16px}.advice-details-popup{width:min(850px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:24px;border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.32)}.advice-details-actions,.advice-details-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.advice-details-title h2{margin:3px 0 16px}.advice-details-grid{border:1px solid var(--line);border-radius:10px;overflow:hidden}.advice-details-head,.advice-details-row{display:grid;grid-template-columns:85px minmax(200px,1fr) 160px minmax(220px,1fr);align-items:center;grid-gap:12px;gap:12px;padding:10px 12px}.advice-details-head{background:#f5f9f8;color:#6b7f7a;font-size:10px;font-weight:800;text-transform:uppercase}.advice-details-row{border-top:1px solid var(--line);font-size:12px}.advice-details-row.locked{background:#f7f9f9}.advice-details-row.locked input:disabled{color:#526872;opacity:1}.advice-performance-date{color:#354f57;font-weight:700}.advice-details-row>input{height:34px;border:1px solid #aab9bd;border-radius:7px;padding:0 8px}.advice-details-row .advice-remarks{width:100%}.advice-check{display:flex;align-items:center;gap:7px}.advice-check input{width:17px;height:17px}.advice-status{width:-moz-fit-content;width:fit-content;padding:5px 9px;border-radius:999px;background:#eef3f3;color:#607278;font-weight:700}.advice-status.performed{background:#e8f8f3;color:#087f6d}.advice-status.notperformed{background:#fff0f1;color:#b93f52}.advice-details-actions{justify-content:flex-end;margin-top:18px}.advice-details-actions .not-performed{color:#b93f52}.advice-validation-popup{width:min(410px,100%);padding:30px;border-radius:20px;background:#fff;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.32)}.advice-validation-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border-radius:50%;background:#fff1e8;color:#d36b2d}.advice-validation-icon svg{width:32px;height:32px}.advice-validation-popup h2{margin:0 0 8px}.advice-validation-popup p{margin:0 0 12px;color:var(--muted)}.advice-validation-popup ul{margin:0 0 20px;padding:0;list-style:none}.advice-validation-popup li{padding:6px 10px;color:#a24830;font-weight:700}.advice-validation-popup .primary{min-width:110px}@media (max-width:700px){.advice-details-grid,.advice-history-grid{overflow-x:auto}.advice-details-head,.advice-details-row,.advice-history-head,.advice-history-row{min-width:850px}}.ip-admission-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.ip-admission-header h1{margin:2px 0 4px}.ip-admission-header p{margin:0;color:var(--muted)}.ip-admission-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#e8f8f3;color:var(--brand)}.ip-patient-panel{position:relative;padding:16px;overflow:visible}.ip-patient-search{display:flex;align-items:center;gap:8px;height:42px;border:1px solid #aab9bd;border-radius:8px;padding:0 11px}.ip-patient-search svg{width:18px;color:#71858d}.ip-patient-search input{width:100%;height:38px;border:0;outline:none}.ip-patient-search.has-selection{border-color:var(--brand);background:#fbfffe}.ip-patient-results{position:absolute;z-index:30;left:16px;top:62px;width:min(560px,calc(100% - 32px));border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow)}.ip-patient-results button{display:grid;width:100%;grid-gap:2px;gap:2px;padding:11px 13px;text-align:left;background:#fff;border-bottom:1px solid var(--line)}.ip-patient-results button:hover{background:#f3faf8}.ip-patient-results small{color:var(--muted)}.ip-patient-empty{display:grid;place-items:center;grid-gap:4px;gap:4px;padding:34px;color:var(--muted)}.ip-patient-empty svg{width:34px;height:34px}.ip-patient-summary{display:flex;align-items:center;gap:13px;margin-top:14px;padding:13px;border-radius:10px;background:#edf9f6}.ip-patient-summary>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--brand);color:#fff;font-size:18px;font-weight:800}.ip-patient-summary h2{margin:0;font-size:18px}.ip-patient-summary p{margin:3px 0 0;color:#526d67}.ip-patient-summary em{margin-left:auto;color:var(--brand);font-size:12px}.ip-detail-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:12px}.ip-detail-card{padding:17px}.ip-detail-card h2{margin:0 0 13px;font-size:16px}.ip-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.ip-detail-grid>div{min-width:0;padding:10px;border-radius:8px;background:#f5f8f8}.ip-detail-grid span{display:block;margin-bottom:4px;color:var(--muted);font-size:10px;font-weight:750;text-transform:uppercase}.ip-detail-grid strong{display:block;overflow-wrap:anywhere;color:#29434a;font-size:13px}.ip-additional{grid-column:1/-1}.ip-additional .ip-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:900px){.ip-detail-sections{grid-template-columns:1fr}.ip-additional{grid-column:auto}.ip-additional .ip-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.ip-additional .ip-detail-grid,.ip-detail-grid{grid-template-columns:1fr}.ip-admission-icon{display:none}}.ip-patient-empty{padding:20px}.ip-admission-header .eyebrow,.ip-admission-header p{display:none}.ip-admission-header h1{margin:0;font-size:21px;line-height:1.2}.ip-admission-header{margin-bottom:10px}.ip-detail-sections{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.ip-detail-card{padding:12px}.ip-detail-card h2{margin-bottom:9px;font-size:14px}.ip-detail-grid{gap:7px}.ip-detail-grid>div{padding:7px 8px;border-radius:7px}.ip-detail-grid span{margin-bottom:3px;font-size:9px}.ip-detail-grid strong{font-size:12px}.ip-detail-missing{border:1px solid #ef9b91;background:#fff1f0!important}.ip-detail-missing span,.ip-detail-missing strong{color:#b73f45}@media (max-width:1100px){.ip-detail-sections{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.ip-detail-sections{grid-template-columns:1fr}}.ip-admission-form{margin-top:10px;padding:14px}.ip-form-group h2{margin:0 0 9px;padding-bottom:7px;border-bottom:1px solid var(--line);color:#29434a;font-size:14px;text-transform:uppercase;letter-spacing:.6px}.ip-form-group+.ip-form-group{margin-top:14px;padding-top:2px}.ip-form-grid{display:grid;grid-gap:9px;gap:9px}.company-grid{grid-template-columns:1.5fr 1fr 1fr 1fr 1fr}.admission-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:12px}.insurance-grid{grid-template-columns:1fr}.ip-form-grid label{display:grid;grid-gap:4px;gap:4px}.ip-form-grid label>span{color:#526872;font-size:10px;font-weight:750}.ip-form-grid input,.ip-form-grid select,.ip-form-grid textarea{width:100%;border:1px solid #aab9bd;border-radius:7px;padding:8px 10px;outline:none;background:#fff;font:inherit}.ip-form-grid input,.ip-form-grid select{height:36px}.ip-form-grid select{padding:0 32px 0 10px;color:#29434a;line-height:36px;font-size:13px}.ip-form-grid select option{color:#29434a;background:#fff}.admission-grid input[list=ip-admission-doctors]{height:36px;padding:0 32px 0 10px;color:#29434a;font-size:13px;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#657a80 0),linear-gradient(135deg,#657a80 50%,transparent 0);background-position:calc(100% - 15px) 15px,calc(100% - 10px) 15px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.admission-grid input[list=ip-admission-doctors]:focus{background-image:none}.ip-form-grid textarea{min-height:58px;resize:vertical}.ip-form-grid input:focus,.ip-form-grid select:focus,.ip-form-grid textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px #087f7920}.admission-grid .wide{grid-column:span 2}.ip-admission-actions{display:flex;justify-content:flex-end;margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.ip-admission-actions .primary{min-width:150px}.ip-room-field{display:grid;grid-gap:4px;gap:4px}.ip-room-select{display:grid;grid-template-columns:28px 1fr;grid-template-rows:18px 14px;align-items:center;min-height:48px;padding:6px 10px;border:1px solid #aab9bd;border-radius:8px;background:#fff;color:#29434a;text-align:left}.ip-room-select>svg{grid-row:1/3;width:20px;color:var(--brand)}.ip-room-select>span{font-size:12px;font-weight:750}.ip-room-select small{color:var(--muted);font-size:10px}.ip-room-select:hover{border-color:var(--brand);background:#f7fffc}.ip-room-select.selected{border-color:var(--brand);background:#edf9f6}.ip-room-popup{width:min(920px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:24px;border-radius:22px;background:linear-gradient(150deg,#fff,#f4fbf9);box-shadow:0 32px 100px rgba(0,0,0,.35)}.ip-room-popup-head{display:flex;justify-content:space-between;align-items:flex-start}.ip-room-popup-head h2{margin:3px 0 4px;font-size:25px}.ip-room-popup-head p{margin:0;color:var(--muted)}.ip-room-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin:18px 0}.ip-room-stats article{display:flex;align-items:baseline;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}.ip-room-stats strong{color:var(--brand);font-size:22px}.ip-room-stats span{color:var(--muted);font-size:11px;font-weight:700}.ip-room-filters{display:grid;grid-gap:9px;gap:9px;margin-bottom:16px}.ip-room-filters>div{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.ip-room-filters>div>span{width:75px;color:#526872;font-size:10px;font-weight:800;text-transform:uppercase}.ip-room-filters button{padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#526872;font-size:11px}.ip-room-filters button.active{border-color:var(--brand);background:var(--brand);color:#fff}.ip-room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.ip-room-card{position:relative;display:grid;grid-template-columns:46px 1fr;align-items:center;grid-gap:10px;gap:10px;min-height:94px;padding:12px;border:1px solid #9fd8c9;border-radius:13px;background:#f1fcf8;text-align:left}.ip-room-card-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#d9f4eb;color:#087f6d}.ip-room-card-icon svg{width:23px}.ip-room-card div{display:grid;grid-gap:2px;gap:2px}.ip-room-card div strong{color:#173e39;font-size:18px}.ip-room-card div span{color:#345d56;font-size:11px;font-weight:700}.ip-room-card div small{color:var(--muted);font-size:10px}.ip-room-card em{position:absolute;top:9px;right:9px;padding:4px 7px;border-radius:999px;background:#d9f4eb;color:#087f6d;font-size:9px;font-style:normal;font-weight:800;text-transform:uppercase}.ip-room-card.available:hover{transform:translateY(-2px);border-color:var(--brand);box-shadow:0 10px 25px #087f7920}.ip-room-card.occupied{border-color:#e7c3c6;background:#faf4f4;cursor:not-allowed;opacity:.72}.ip-room-card.occupied .ip-room-card-icon,.ip-room-card.occupied em{background:#f3dddd;color:#aa4b55}.ip-room-card.chosen{outline:3px solid #087f7930;border-color:var(--brand)}.ip-room-empty{padding:30px;text-align:center;color:var(--muted)}.ip-room-legend{display:flex;justify-content:flex-end;gap:16px;margin-top:16px;color:var(--muted);font-size:10px}.ip-room-legend span{display:flex;align-items:center;gap:5px}.ip-room-legend i{width:9px;height:9px;border-radius:50%}.ip-room-legend i.available{background:#22aa82}.ip-room-legend i.occupied{background:#c35b65}@media (max-width:760px){.ip-room-grid,.ip-room-stats{grid-template-columns:1fr}}@media (max-width:1100px){.company-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.admission-grid,.company-grid{grid-template-columns:1fr}.admission-grid .wide{grid-column:auto}}.ds-page{padding-bottom:70px}.ds-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ds-header h1{margin:0;font-size:24px}.ds-header p{margin:3px 0 0;color:var(--muted)}.ds-completion{width:210px}.ds-completion>div{display:flex;justify-content:space-between;font-size:11px}.ds-completion progress{width:100%;height:7px;accent-color:var(--brand)}.ds-patient-panel{position:relative;padding:12px;overflow:visible}.ds-patient-search{display:flex;align-items:center;gap:8px;height:39px;border:1px solid #aab9bd;border-radius:8px;padding:0 10px}.ds-patient-search input{width:100%;border:0;outline:0}.ds-patient-search svg{width:17px;color:#6d8388}.ds-patient-search.selected{border-color:var(--brand)}.ds-patient-results{position:absolute;z-index:30;left:12px;top:55px;width:min(520px,calc(100% - 24px));border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:var(--shadow)}.ds-patient-results button{display:grid;width:100%;grid-gap:2px;gap:2px;padding:10px 12px;text-align:left;background:#fff;border-bottom:1px solid var(--line)}.ds-patient-results small{color:var(--muted)}.ds-patient-strip{display:flex;align-items:center;gap:10px;margin-top:10px;padding:8px;border-radius:8px;background:#edf9f6}.ds-patient-strip>span{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--brand);color:#fff;font-weight:800}.ds-patient-strip div{display:grid}.ds-patient-strip small{color:#526d67}.ds-patient-strip em{margin-left:auto;color:var(--brand);font-size:11px}.ds-layout{grid-template-columns:minmax(0,1fr) 240px;margin-top:12px}.ds-editor,.ds-layout{display:grid;grid-gap:12px;gap:12px}.ds-section{padding:15px}.ds-section-title{display:flex;align-items:center;gap:9px;margin-bottom:12px}.ds-section-title>svg{width:21px;color:var(--brand)}.ds-section-title div{flex:1 1}.ds-section-title h2{margin:0;font-size:16px}.ds-section-title p{margin:2px 0 0;color:var(--muted);font-size:11px}.ds-section-title .secondary{display:flex;align-items:center;gap:5px}.ds-section-title .secondary svg{width:15px}.ds-fields{display:grid;grid-gap:9px;gap:9px}.ds-fields.four{grid-template-columns:repeat(4,1fr)}.ds-fields.six{grid-template-columns:repeat(6,1fr)}.ds-fields.three{grid-template-columns:repeat(3,1fr);margin-top:10px}.ds-fields .span-2{grid-column:span 2}.ds-fields label,.ds-text-grid label{display:grid;grid-gap:4px;gap:4px}.ds-fields label>span,.ds-text-grid label>span{color:#526872;font-size:10px;font-weight:750}.ds-fields input,.ds-fields select,.ds-text-grid textarea{width:100%;border:1px solid #aab9bd;border-radius:7px;padding:8px 10px;outline:none;background:#fff;font:inherit}.ds-fields input,.ds-fields select{height:36px}.ds-fields input:focus,.ds-fields select:focus,.ds-text-grid textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px #087f7920}.ds-fields .allergy input{border-color:#e5b067;background:#fffaf1}.ds-text-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:9px;gap:9px}.ds-text-grid textarea{resize:vertical;line-height:1.45}.ds-text-grid .full{grid-column:1/-1}.ds-text-grid .required>span:after{content:" *";color:#c34e48}.ds-med-table{overflow:auto;border:1px solid var(--line);border-radius:9px}.ds-med-head,.ds-med-row{display:grid;grid-template-columns:1.5fr .7fr .8fr .8fr .8fr 1.2fr 32px;grid-gap:6px;gap:6px;align-items:center;min-width:800px;padding:7px}.ds-med-head{background:#f4f8f7;color:#617772;font-size:9px;font-weight:800;text-transform:uppercase}.ds-med-row{border-top:1px solid var(--line)}.ds-med-row input,.ds-med-row select{width:100%;height:33px;border:1px solid #b7c3c6;border-radius:6px;padding:0 7px}.ds-med-row button{background:transparent;color:#c24c5d}.ds-med-row button svg{width:16px}.ds-side{display:grid;align-content:start;grid-gap:12px;gap:12px;position:-webkit-sticky;position:sticky;top:12px}.ds-checklist{padding:14px}.ds-checklist h2{margin:0 0 10px;font-size:14px}.ds-checklist>div{display:flex;align-items:center;gap:7px;padding:7px 0;border-bottom:1px solid var(--line);color:#7b8e92;font-size:11px}.ds-checklist>div>span{width:16px;height:16px;border:1px solid #b8c5c7;border-radius:50%}.ds-checklist>div svg{width:16px;color:#0b967f}.ds-checklist>div.done{color:#315d55;font-weight:700}.ds-safety{display:flex;gap:9px;padding:13px;background:#fffaf0}.ds-safety>svg{width:20px;color:#d5852e}.ds-safety strong{font-size:12px}.ds-safety p{margin:3px 0 0;color:#7d684f;font-size:10px;line-height:1.45}.ds-actions{position:-webkit-sticky;position:sticky;bottom:0;z-index:20;display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:12px;padding:9px 14px;border:1px solid var(--line);border-radius:10px;background:#fffffff2;box-shadow:0 -5px 20px #173b3514}.ds-actions span{color:var(--muted);font-size:10px}.ds-actions button{display:flex;align-items:center;gap:7px}.ds-actions svg{width:17px}.ds-preview-backdrop{position:fixed;inset:0;z-index:100;overflow:auto;padding:24px;background:#102c33dd}.ds-preview-shell{width:min(930px,100%);margin:auto}.ds-preview-toolbar{position:-webkit-sticky;position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:10px;padding:10px;border-radius:10px;background:#fff}.ds-preview-toolbar>div{display:grid;margin-right:auto}.ds-preview-toolbar span{color:var(--muted);font-size:10px}.ds-preview-toolbar button{display:flex;align-items:center;gap:5px}.ds-preview-toolbar svg{width:16px}.ds-document{min-height:1120px;padding:48px 54px;background:#fff;color:#172f35;box-shadow:0 20px 60px #0005}.ds-document>header{text-align:center;border-bottom:2px solid #244b52}.ds-document>header h1{margin:0;font-size:24px}.ds-document>header p{margin:4px 0 12px}.ds-document>header h2{margin:0;padding:10px;background:#eef5f4;font-size:16px;letter-spacing:1px}.ds-doc-patient{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;padding:14px 0;border-bottom:1px solid #9cabad;font-size:11px}.ds-doc-allergy{padding:8px;border:1px solid #d99191;background:#fff1f1;color:#9d343b}.ds-document section h3{margin:15px 0 5px;padding-bottom:3px;border-bottom:1px solid #9cabad;font-size:12px;text-transform:uppercase}.ds-document section p{margin:0;white-space:pre-wrap;font-size:11px;line-height:1.5}.ds-document table{width:100%;border-collapse:collapse;font-size:10px}.ds-document td,.ds-document th{padding:6px;border:1px solid #9cabad;text-align:left}.ds-document footer{display:grid;grid-template-columns:1fr 1fr;grid-gap:80px;gap:80px;margin-top:70px}.ds-document footer div{display:grid;border-top:1px solid #566d72;padding-top:6px}.ds-document footer span{font-size:9px}.ds-document footer b{font-size:11px}@media(max-width:1050px){.ds-layout{grid-template-columns:1fr}.ds-side{position:static;grid-template-columns:1fr 1fr}.ds-fields.six{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.ds-header{align-items:flex-start}.ds-completion{display:none}.ds-fields.four,.ds-fields.six,.ds-fields.three,.ds-text-grid{grid-template-columns:1fr}.ds-fields .span-2,.ds-text-grid .full{grid-column:auto}.ds-side{grid-template-columns:1fr}.ds-doc-patient{grid-template-columns:1fr 1fr}.ds-document{padding:28px 24px}}@media print{body *{visibility:hidden}.ds-preview-backdrop,.ds-preview-backdrop *{visibility:visible}.ds-preview-backdrop{position:absolute;inset:0;padding:0;background:#fff}.ds-preview-shell{width:100%}.ds-preview-toolbar{display:none}.ds-document{box-shadow:none;padding:20px 30px}}.ds-page .ds-header{position:-webkit-sticky;position:sticky;top:0;z-index:28;margin:-4px -4px 14px;padding:11px 13px;border:1px solid #d7e6e2;border-radius:14px;background:linear-gradient(115deg,hsla(0,0%,100%,.97),rgba(244,251,249,.97) 56%,rgba(231,247,243,.97));box-shadow:0 8px 24px rgba(23,59,53,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ds-heading{display:flex;align-items:center;gap:11px}.ds-heading-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;color:#fff;background:linear-gradient(145deg,#0b8f7b,#086b65);box-shadow:0 7px 15px rgba(8,127,121,.24)}.ds-heading-icon svg{width:21px}.ds-page .ds-header h1{font-size:22px;letter-spacing:-.35px}.ds-page .ds-header p{font-size:11px}.ds-page .ds-completion{display:flex;align-items:center;gap:10px;width:auto;min-width:250px;padding:7px 10px 7px 8px;border:1px solid #c8e5dd;border-radius:12px;background:hsla(0,0%,100%,.88);box-shadow:0 3px 12px rgba(22,74,64,.07)}.ds-progress-ring{--completion:0deg;display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:50%;background:radial-gradient(circle at center,#fff 57%,transparent 59%),conic-gradient(var(--brand) var(--completion),#dfe9e7 0)}.ds-progress-ring strong{font-size:11px;color:#176b5d}.ds-progress-copy{display:grid!important;flex:1 1;grid-gap:2px;gap:2px}.ds-progress-copy span{color:#395d56;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.55px}.ds-progress-copy b{color:#70827e;font-size:11px}.ds-page .ds-completion progress{width:100%;height:5px;border:0;border-radius:9px;overflow:hidden;accent-color:var(--brand)}.ds-page .ds-completion progress::-webkit-progress-bar{background:#e0ebe8}.ds-page .ds-completion progress::-webkit-progress-value{border-radius:9px;background:linear-gradient(90deg,#0d8f7d,#22b38f)}.ds-page .ds-completion.complete{border-color:#8fd8c2;background:#effcf7}.ds-page .ds-completion.complete .ds-progress-copy b{color:#078064}@media(max-width:700px){.ds-page .ds-header{position:-webkit-sticky;position:sticky;align-items:center}.ds-heading-icon{width:36px;height:36px;flex-basis:36px}.ds-page .ds-header h1{font-size:18px}.ds-page .ds-header p{display:none}.ds-page .ds-completion{display:flex;min-width:0;padding:6px 8px}.ds-progress-ring{width:38px;height:38px;flex-basis:38px}.ds-progress-copy b{display:none}}@media print{.ds-page .ds-header{position:static}}