@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sofia-sans-latin-400-normal-CwUGEJF7.woff2) format("woff2"),url(/assets/sofia-sans-latin-400-normal-BRg5az2I.woff) format("woff")}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sofia-sans-latin-500-normal-CF_FiJiJ.woff2) format("woff2"),url(/assets/sofia-sans-latin-500-normal-BggsTkFI.woff) format("woff")}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sofia-sans-latin-600-normal-i552trx7.woff2) format("woff2"),url(/assets/sofia-sans-latin-600-normal-CilnjWlq.woff) format("woff")}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-latin-700-normal-ClD8T4bq.woff2) format("woff2"),url(/assets/sofia-sans-latin-700-normal-CLbI16IB.woff) format("woff")}.patient-prescriptions{display:grid;gap:24px;min-width:0;container-type:inline-size}.patient-prescriptions .prescriptions-section{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:12px}.patient-prescriptions .prescriptions-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:18px 20px}.patient-prescriptions .prescriptions-heading{min-width:0}.patient-prescriptions h2{font-size:17px;line-height:1.3;font-weight:600}.patient-prescriptions .prescriptions-heading p{margin:3px 0 0;font-size:13px;color:var(--muted)}.patient-prescriptions .prescriptions-actions{display:flex;flex-wrap:wrap;gap:8px}.patient-prescriptions .btn{min-height:44px}.patient-prescriptions .btn:disabled{opacity:.5;cursor:not-allowed;filter:none}.patient-prescriptions .btn:focus-visible{outline-offset:3px}.patient-prescriptions .prescriptions-recovery{padding:0 20px 16px;min-width:0}.patient-prescriptions .prescriptions-recovery:empty{display:none}.patient-prescriptions .prescriptions-recovery label{display:block;margin-bottom:6px;font-size:13px;font-weight:500}.patient-prescriptions .prescriptions-recovery select{width:100%;max-width:420px;min-width:0;min-height:44px;font:inherit;font-size:14px}.patient-prescriptions .prescriptions-recovery p{margin:6px 0 0;max-width:65ch;color:var(--muted);font-size:13px}.patient-prescriptions .prescriptions-recovery-error{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.patient-prescriptions .prescriptions-notice{margin:0 20px 16px;padding:10px 12px;border-radius:6px;background:var(--canvas);color:var(--muted);font-size:13px;overflow-wrap:anywhere}.patient-prescriptions .prescription-list{margin:0;padding:0;list-style:none}.patient-prescriptions .prescription-entry{display:grid;gap:16px;min-width:0;padding:20px;border-top:1px solid var(--border)}.patient-prescriptions .prescription-entry>*{min-width:0}.patient-prescriptions .prescription-entry-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.patient-prescriptions h3{min-width:0;flex:1 1 140px;font-size:16px;line-height:1.4;font-weight:600;overflow-wrap:anywhere}.patient-prescriptions .badge{max-width:100%;white-space:normal;overflow-wrap:anywhere;border-radius:5px;padding:2px 7px;font-size:12px;font-weight:500}.patient-prescriptions dl{margin:0}.patient-prescriptions dt{margin:0 0 3px;color:var(--muted);font-size:12px;font-weight:400}.patient-prescriptions dd{margin:0;font-size:14px;line-height:1.55;overflow-wrap:anywhere}.patient-prescriptions .prescription-dosage dd{white-space:pre-wrap}.patient-prescriptions .prescription-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 20px}.patient-prescriptions .prescription-meta>div{min-width:0}.patient-prescriptions .prescription-meta dd{font-size:13px;font-variant-numeric:tabular-nums}.patient-prescriptions .prescriptions-empty{padding:20px;border-top:1px solid var(--border)}.patient-prescriptions .prescriptions-empty strong{font-size:14px;font-weight:500}.patient-prescriptions .prescriptions-empty p{margin:4px 0 0;max-width:52ch;color:var(--muted);font-size:14px}.patient-prescriptions .prescriptions-manual{min-width:0}.patient-prescriptions .prescriptions-manual>.prescriptions-header{padding:0 0 12px;gap:12px}.patient-prescriptions .prescriptions-manual h2{font-size:15px}.patient-prescriptions .prescriptions-count{margin-left:4px;font-size:13px;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}.patient-prescriptions .prescriptions-manual .prescription-entry:first-child{border-top:0}.patient-prescriptions .prescriptions-manual-empty{margin:0;padding:12px 0;border-top:1px solid var(--border);color:var(--muted);font-size:13px}@media(max-width:480px){.patient-prescriptions .prescriptions-header{padding:16px;gap:12px}.patient-prescriptions .prescriptions-actions{width:100%}.patient-prescriptions .prescriptions-actions .btn{flex:1 1 130px;padding:8px 10px;font-size:13px}.patient-prescriptions .prescription-entry{padding:16px;gap:14px}.patient-prescriptions .prescriptions-empty{padding:16px}.patient-prescriptions .prescriptions-notice{margin-right:16px;margin-left:16px}.patient-prescriptions .prescriptions-recovery{padding:0 16px 16px}}@container (min-width: 720px){.patient-prescriptions .prescription-entry{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,.8fr);gap:24px;align-items:start}.patient-prescriptions .prescription-entry-heading{flex-direction:column;gap:8px}.patient-prescriptions h3{flex:initial}.patient-prescriptions .prescription-meta{grid-template-columns:minmax(0,1fr);gap:10px}}.billing-content{width:100%;max-width:1440px;margin-inline:auto;container:billing / inline-size}.billing-content h2{margin:0;font-size:19px;font-weight:600}.billing-content p{line-height:1.5}.billing-content button,.billing-content input,.billing-content select{font:inherit}.billing-content button:focus-visible,.billing-content summary:focus-visible,.billing-content a:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.billing-content .btn{min-height:40px}.billing-connection{margin-bottom:20px;border-bottom:1px solid var(--border);font-size:13px}.billing-connection summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 12px;cursor:pointer;padding:0 0 12px;list-style:none}.billing-connection summary::-webkit-details-marker,.subscription-row summary::-webkit-details-marker{display:none}.billing-connection summary>span{color:var(--muted)}.billing-connection summary>.billing-connection-more{margin-left:auto;color:var(--teal-dark);text-decoration:underline;text-underline-offset:3px}.billing-connection-attention summary>span:not(.billing-connection-more){color:#875b24}.billing-connection-detail{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:0 0 14px}.billing-connection-note{margin:0 0 12px;color:#875b24}.billing-navigation{display:flex;flex-wrap:wrap;gap:4px;padding:4px;margin-bottom:26px;background:#eaf0ee;border-radius:9px;width:fit-content;max-width:100%}.billing-navigation button{color:var(--muted);border:0;background:transparent;border-radius:6px;padding:9px 17px;min-height:40px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.billing-navigation button:hover{color:var(--teal-dark);background:#f4f7f6}.billing-navigation button[aria-pressed=true]{color:var(--teal-dark);background:#fff;box-shadow:0 1px 3px #163a3020}.billing-panel[hidden]{display:none}.billing-feedback{padding:12px 16px;margin-bottom:20px;border:1px solid var(--border);border-radius:8px;background:#f2f7f4;overflow-wrap:anywhere}.billing-feedback-error{background:#fff5f2;border-color:#e6c8bd}.billing-section-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:22px}.billing-section-heading p{margin:5px 0 0;font-size:14px}.billing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.billing-empty{padding:40px 20px;text-align:center;color:var(--muted);background:#fff;border:1px solid var(--border);border-radius:8px}.billing-empty h3{font-size:17px;margin:0 0 6px;color:var(--ink)}.billing-empty p{margin:6px 0 16px}.billing-text-button{padding:6px 0;min-height:32px;color:var(--teal-dark);background:none;border:0;font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.subscription-status-tabs{display:flex;gap:4px;max-width:100%;overflow-x:auto;border-bottom:1px solid var(--border);margin:0 0 20px;scrollbar-width:thin}.subscription-status-tabs>button{display:inline-flex;align-items:center;gap:7px;flex-shrink:0;min-height:44px;padding:10px 13px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap}.subscription-status-tabs>button:hover{color:var(--teal-dark);background:#f0f5f3}.subscription-status-tabs>button[aria-selected=true]{color:var(--teal-dark);border-bottom-color:var(--teal);font-weight:600}.subscription-status-tabs>button:focus-visible{outline-offset:-3px}.subscription-tab-count{font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted)}.subscription-status-hint{margin:14px 0 0;font-size:13px}.subscription-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(130px,190px);gap:12px;align-items:end}.subscription-filters label{display:grid;gap:6px;min-width:0;font-size:13px;color:var(--muted)}.subscription-filters input,.subscription-filters select{width:100%;min-height:42px;margin:0;background:#fff;color:var(--ink)}.subscription-search-input{position:relative;display:block}.subscription-search-input>svg{position:absolute;left:13px;top:13px;pointer-events:none}.billing-content .subscription-search-input>input{padding-left:38px}.subscription-results-info{display:flex;align-items:center;flex-wrap:wrap;gap:4px 18px;margin:12px 0;min-height:32px;font-size:13px;color:var(--muted)}.subscription-list-head,.subscription-row>summary{display:grid;grid-template-columns:minmax(180px,2fr) minmax(125px,1.15fr) minmax(105px,.85fr) minmax(110px,1fr) 75px;gap:18px;align-items:center}.subscription-list-head{padding:8px 18px;font-size:12px;color:var(--muted)}.subscription-list{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}.subscription-row+.subscription-row{border-top:1px solid var(--border)}.subscription-row>summary{padding:17px 18px;list-style:none;cursor:pointer;font-size:14px}.subscription-row>summary:hover{background:#f7f9f8}.subscription-row[open]>summary{background:#f3f7f5}.subscription-row>summary:focus-visible{outline-offset:-3px}.subscription-identity{display:grid;gap:3px;min-width:0}.subscription-identity>strong{font-size:15px;font-weight:600}.subscription-identity>span{color:var(--muted);font-size:13px;line-height:1.35;overflow-wrap:anywhere}.subscription-identity>.subscription-premium{color:var(--teal-dark);font-weight:600;font-size:11px;letter-spacing:.025em}.subscription-state{display:flex;align-items:flex-start;flex-direction:column;gap:5px;min-width:0}.subscription-status{display:inline-block;border-radius:4px;padding:3px 7px;font-size:12px;font-weight:500;line-height:1.3;background:#eef1f0;color:#59665f}.subscription-status-active{color:#26634f;background:#e9f3ed}.subscription-status-ending,.subscription-status-paused{color:#805d27;background:#f6efdf}.subscription-status-problem,.subscription-attention{color:#983e31}.subscription-status-problem{background:#faeae5}.subscription-attention{font-size:12px;line-height:1.35}.subscription-price strong,.subscription-event strong{font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}.subscription-event{display:grid;gap:3px}.subscription-event>span{color:var(--muted);font-size:12px}.subscription-mobile-label{display:none}.subscription-expand{display:flex;align-items:center;gap:5px;color:var(--teal-dark);font-size:12px}.subscription-expand svg{transition:transform .15s;flex-shrink:0}.subscription-row[open] .subscription-expand svg{transform:rotate(180deg)}.subscription-detail{padding:4px 18px 18px;background:#f3f7f5;border-top:1px solid #e5ece8}.subscription-detail dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin:16px 0 12px}.subscription-detail dt{color:var(--muted);font-size:12px;margin-bottom:5px}.subscription-detail dd{margin:0;font-size:13px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.subscription-price-note{font-size:12px;margin:0 0 16px}.subscription-next-step strong{font-size:12px;line-height:1.45;font-weight:400;overflow-wrap:anywhere}.subscription-followup{padding:14px 0 16px;border-bottom:1px solid var(--border);font-size:13px}.subscription-followup-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px}.subscription-followup-heading>span{color:var(--muted);font-size:12px}.subscription-followup ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px}.subscription-followup li{display:grid;gap:3px;line-height:1.45}.subscription-followup li strong{font-weight:500}.subscription-followup li small,.subscription-followup>p{color:var(--muted);font-size:12px}.subscription-followup>p{margin-bottom:0}.invoice-coverage{font-size:12px;color:var(--muted);margin:0 0 18px;line-height:1.5}.invoice-coverage p{margin:4px 0}.invoice-coverage ul{padding-left:20px;margin:8px 0}.invoice-coverage-warning{color:#875b24}.modal.patient-payment-overview{max-width:760px;width:min(760px,calc(100vw - 24px))}.patient-payment-overview{container:patient-payments / inline-size}.patient-payment-overview .btn{min-height:44px}.patient-payment-overview a:focus-visible,.patient-payment-overview button:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.patient-payment-overview p{line-height:1.5}.patient-payment-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.patient-payment-heading>div{min-width:0;overflow-wrap:anywhere}.patient-payment-heading strong{font-size:17px;font-weight:600}.patient-payment-heading p{font-size:13px;margin:4px 0 0}.patient-payment-heading button{flex-shrink:0}.patient-payment-empty{padding:24px 0;font-size:14px;color:var(--muted)}.patient-payment-empty p{margin:0 0 12px}.patient-payment-latest{padding:18px;margin-bottom:18px;background:#f0f5f2;border-radius:8px}.patient-payment-latest>div{display:grid;gap:6px}.patient-payment-latest span{color:var(--teal-dark);font-size:13px}.patient-payment-latest strong{font-size:27px;font-weight:600;font-variant-numeric:tabular-nums}.patient-payment-latest p{margin:0;font-size:12px}.patient-payment-latest>p{margin-top:12px}.patient-invoice-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}.patient-invoice-list>li{padding:18px 0;border-bottom:1px solid var(--border)}.patient-invoice-title{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:14px;overflow-wrap:anywhere}.patient-invoice-title strong{font-weight:600}.patient-invoice-list dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px;margin:14px 0 0}.patient-invoice-list dt{font-size:12px;color:var(--muted);margin-bottom:4px}.patient-invoice-list dd{margin:0;font-size:13px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.patient-invoice-list .billing-actions{gap:20px;margin-top:10px}.patient-payment-refunds{margin-top:22px}.patient-payment-refunds h4{font-weight:600;font-size:14px;margin:0 0 10px}.patient-payment-refunds>p{font-size:12px;margin:0 0 10px}.patient-payment-refunds ul{margin:0;padding:0;list-style:none}.patient-payment-refunds li{display:grid;gap:4px;padding:10px 0;font-size:13px;border-bottom:1px solid var(--border)}.patient-payment-refunds li strong{font-weight:500;font-variant-numeric:tabular-nums}.patient-payment-refunds li small{color:var(--muted);overflow-wrap:anywhere}@container patient-payments (max-width: 480px){.patient-invoice-list dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.patient-payment-latest{padding:14px}.patient-payment-latest strong{font-size:24px}}.subscription-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;font-size:13px;color:var(--muted)}.billing-inactive-toggle{display:flex;gap:8px;align-items:center;margin:0 0 18px;color:var(--muted);font-size:14px}.billing-inactive-toggle input,.billing-data-table input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--teal)}.billing-data-table{overflow-x:auto}.billing-data-table td{white-space:normal;overflow-wrap:anywhere}.billing-data-table .billing-cell-actions{text-align:right}.billing-reporting{padding:16px;margin-top:20px}.billing-reporting summary{cursor:pointer}.billing-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1000px){.subscription-list-head,.subscription-row>summary{grid-template-columns:minmax(160px,1.6fr) minmax(110px,1fr) 100px 105px 68px;gap:12px}.subscription-detail dl{grid-template-columns:repeat(3,minmax(0,1fr))}}@container billing (max-width: 720px){.billing-content .btn{min-height:44px}.billing-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin-bottom:22px}.billing-navigation button{padding:9px 6px;min-height:44px;font-size:13px}.billing-connection summary{gap:5px 8px}.billing-connection summary>span:not(.billing-connection-more){flex-basis:100%;order:2}.billing-section-heading{gap:14px}.billing-section-heading .billing-actions{width:100%}.billing-section-heading .billing-actions .btn{flex:1;padding-inline:10px;font-size:13px}.subscription-status-tabs{margin-bottom:16px}.subscription-status-tabs>button{padding-inline:10px}.subscription-filters{grid-template-columns:minmax(0,1fr);gap:12px}.subscription-filters input,.subscription-filters select{min-height:44px;font-size:16px}.subscription-list-head{display:none}.subscription-row>summary{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:14px 12px;padding:16px}.subscription-state{align-items:flex-end;text-align:right}.subscription-price{display:grid;gap:3px}.subscription-mobile-label{display:block;font-size:12px;color:var(--muted)}.subscription-event{text-align:right}.subscription-next-step{grid-column:1 / -1;text-align:left}.subscription-expand{grid-column:1 / -1;justify-content:flex-end;margin-top:-4px}.subscription-detail{padding:4px 16px 16px}.subscription-detail dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.subscription-detail .billing-actions{display:grid;grid-template-columns:1fr}.billing-data-table table,.billing-data-table tbody{display:block;width:100%;min-width:0}.billing-data-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.billing-data-table tr{display:grid;grid-template-columns:minmax(0,1fr);padding:12px 16px;border-bottom:1px solid var(--border)}.billing-data-table tr:last-child{border-bottom:0}.billing-data-table td{display:grid;grid-template-columns:88px minmax(0,1fr);gap:5px 12px;padding:6px 0;border:0;font-size:14px;min-width:0}.billing-data-table td:before{content:attr(data-label);color:var(--muted);font-size:12px}.billing-data-table td.billing-cell-actions{display:block;text-align:left;padding-top:12px}.billing-data-table td.billing-cell-actions:empty{display:none}.billing-data-table td.billing-cell-actions:before{display:none}.billing-data-table .billing-cell-actions>div{justify-content:flex-start!important}}@media(prefers-reduced-motion:reduce){.billing-navigation button,.subscription-expand svg{transition:none}}.portal-lab-report{overflow:hidden;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:0 1px 2px #1343470a,0 12px 28px #1343470f}.portal-lab-summary{padding:20px;background:linear-gradient(155deg,#e9f8f3,#fff 72%);border-bottom:1px solid var(--border)}.portal-lab-date{display:inline-flex;align-items:center;gap:7px;color:var(--teal);font-size:12px;font-weight:700}.portal-lab-date svg{width:15px;height:15px}.portal-lab-summary h2{margin-top:10px;color:var(--teal-dark);font-size:24px;line-height:1.16;text-wrap:balance}.portal-lab-summary p{max-width:56ch;margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.45}.portal-lab-summary-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.portal-lab-summary-chips span{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:6px 11px;border:1px solid rgba(19,67,71,.1);border-radius:999px;background:#fff;color:var(--text);font-size:12.5px;font-weight:600}.portal-lab-summary-chips i,.portal-lab-legend i{width:8px;height:8px;border-radius:50%;display:inline-block}.portal-lab-summary-chips strong{color:var(--teal-dark);font-size:14px;font-variant-numeric:tabular-nums}.portal-lab-summary-chips .ok i,.portal-lab-legend .ok{background:var(--teal)}.portal-lab-summary-chips .watch i,.portal-lab-legend .watch{background:#b97e0e}.portal-lab-summary-chips .out i,.portal-lab-legend .out{background:#bf403a}.portal-lab-summary-chips .unknown i{background:#71817e}.portal-lab-chip.unknown{color:#52625f;background:#edf1f0}.portal-lab-doctor{display:flex;gap:12px;padding:16px 20px;background:#f6fbf9;border-bottom:1px solid var(--border)}.portal-lab-doctor>span,.portal-lab-note>span,.portal-lab-group-head>span{flex:0 0 auto;display:grid;place-items:center;color:var(--teal)}.portal-lab-doctor>span{width:36px;height:36px;border-radius:11px;background:var(--teal-dark);color:var(--mint)}.portal-lab-doctor svg{width:18px;height:18px}.portal-lab-doctor strong{color:var(--teal-dark);font-weight:700}.portal-lab-doctor p{margin:4px 0 0;color:var(--text);font-size:13.5px;line-height:1.5;white-space:pre-wrap}.portal-lab-group{padding:16px 20px 2px}.portal-lab-group+.portal-lab-group{border-top:1px solid var(--border)}.portal-lab-group-head{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;margin-bottom:10px}.portal-lab-group-head>span{width:28px;height:28px;border-radius:9px;background:#eaf6f3}.portal-lab-group-head svg{width:16px;height:16px}.portal-lab-group-head strong{color:var(--teal-dark);font-size:14px}.portal-lab-group-head em{color:var(--muted);font-size:12px;font-style:normal;font-weight:600}.portal-lab-group-list{display:grid;gap:10px}.portal-lab-marker{padding:15px 16px 16px;border:1px solid var(--border);border-radius:14px;background:#fff}.portal-lab-marker.out{border-color:#bf403a52;background:snow}.portal-lab-marker.watch{border-color:#b97e0e47;background:#fffdf8}.portal-lab-marker-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-lab-marker-top strong{min-width:0;color:var(--teal-dark);font-size:14.5px;line-height:1.25}.portal-lab-chip{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:4px 9px;border-radius:999px;white-space:nowrap;font-size:11.5px;font-weight:700}.portal-lab-chip svg{width:12px;height:12px}.portal-lab-chip.ok{color:#17715b;background:#e3f7ec}.portal-lab-chip.watch{color:#8a5a00;background:#fbf1dc}.portal-lab-chip.out{color:#a32a22;background:#fbe9e8}.portal-lab-value-row{display:flex;align-items:baseline;gap:7px;margin:9px 0 13px}.portal-lab-value{color:var(--teal-dark);font-family:var(--font-display);font-size:26px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.portal-lab-marker.watch .portal-lab-value{color:#8a5a00}.portal-lab-marker.out .portal-lab-value{color:#a32a22}.portal-lab-unit,.portal-lab-ref{color:var(--muted);font-size:12.5px;font-weight:600}.portal-lab-ref{margin-left:auto;text-align:right}.portal-lab-bar{position:relative;height:8px;border-radius:999px;background:#eef4f2}.portal-lab-bar-band{position:absolute;inset-block:0;border-radius:999px;background:#1f817c38}.portal-lab-bar-tick{position:absolute;top:50%;width:15px;height:15px;border:3px solid #fff;border-radius:50%;background:var(--teal-dark);box-shadow:0 1px 4px #13434747;transform:translate(-50%,-50%)}.portal-lab-bar.watch .portal-lab-bar-tick{background:#b97e0e}.portal-lab-bar.out .portal-lab-bar-tick{background:#bf403a}.portal-lab-note{display:flex;gap:10px;margin-top:14px;padding:12px;border:1px solid rgba(19,67,71,.09);border-radius:12px;background:#f6fbf9}.portal-lab-note>span{width:30px;height:30px;border-radius:10px;background:var(--teal-dark);color:var(--mint)}.portal-lab-note svg{width:15px;height:15px}.portal-lab-note strong{display:block;color:var(--teal-dark);font-size:12.5px}.portal-lab-note p{margin:4px 0 0;color:var(--text);font-size:12.5px;line-height:1.45}.portal-lab-legend{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;padding:16px 20px 4px;color:var(--muted);font-size:11.5px;font-weight:600}.portal-lab-legend span{display:inline-flex;align-items:center;gap:6px}.portal-lab-question{width:calc(100% - 40px);min-height:46px;margin:14px 20px 20px;border:1px solid rgba(31,129,124,.22);border-radius:12px;background:var(--teal-dark);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;font-family:var(--font-body);font-size:14px;font-weight:700;transition:transform .15s ease,background .15s ease}.portal-lab-question:hover{background:var(--teal)}.portal-lab-question:active{transform:translateY(1px)}.portal-lab-question svg{width:17px;height:17px}:root{--teal: #1F817C;--teal-dark: #134347;--teal-deep: #0e3437;--ink: #10292A;--mint: #B1F6CF;--mint-soft: #E4F6EC;--canvas: #F6F8F7;--surface: #ffffff;--border: #E3EAE8;--hover: #EAF1EF;--text: #10292A;--muted: #5A7270;--font-display: "Sofia Sans", system-ui, -apple-system, Segoe UI, sans-serif;--font-body: "Sofia Sans", system-ui, -apple-system, Segoe UI, sans-serif;--radius: 16px;--shadow: none;--rail: 72px;--tabbar: 64px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);background:var(--canvas);color:var(--text);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);font-weight:700;letter-spacing:-.015em;margin:0}a{color:var(--teal);text-decoration:none}:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.brand{display:flex;align-items:center;gap:10px;padding:6px 0 26px}.brand-mark{width:36px;height:36px;border-radius:11px;background:var(--ink);display:grid;place-items:center;color:var(--mint);font-family:var(--font-display);font-weight:700;font-size:17px;flex:0 0 auto}.brand-name{font-family:var(--font-display);font-weight:700;color:var(--ink);font-size:19px}.shell{display:grid;grid-template-columns:var(--rail) minmax(0,1fr);min-height:100dvh}.rail{position:sticky;top:0;height:100dvh;z-index:40;display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 12px;background:var(--surface);border-right:1px solid var(--border)}.rail-head{display:flex;flex-direction:column;align-items:center;gap:12px;flex-shrink:0;margin-bottom:8px}.rail-brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.rail-brand-name{display:none;font-size:20px;font-weight:700}.rail-nav{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:0}.rail-link{position:relative;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#4e6866;background:none;border:0;padding:0;cursor:pointer;font:inherit;transition:background .15s,color .15s}.rail-link:hover{background:var(--hover);color:var(--ink)}.rail-link.active,.rail-link[aria-expanded=true]{background:var(--mint-soft);color:var(--teal)}.rail-icon{width:20px;height:20px;stroke-width:1.8;flex-shrink:0}.rail-label{display:none}.rail-tip{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:var(--ink);color:#fff;font-size:13px;font-weight:600;white-space:nowrap;padding:5px 9px;border-radius:8px;pointer-events:none;opacity:0;transition:opacity .12s}.rail-link:hover .rail-tip,.rail-link:focus-visible .rail-tip{opacity:1}.rail-foot{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:8px}.rail-avatar{width:40px;height:40px;border-radius:50%;background:#dce8e5;color:var(--ink);font-weight:600;font-size:14px}.rail-avatar:hover{background:#cfe0dc;color:var(--ink)}.mobile-top{display:none}@media(min-width:761px){.rail-nav{width:calc(100% + 16px);padding:2px 8px;overflow-y:auto;scrollbar-width:thin}.rail-nav .rail-link{flex-shrink:0}.rail-nav .rail-tip{display:none}.rail-foot{flex-shrink:0;padding-top:8px}.shell-expanded{--rail: 232px}.shell-expanded .rail{align-items:stretch}.shell-expanded .rail-head{flex-direction:row;justify-content:space-between;gap:4px;margin-bottom:18px}.shell-expanded .rail-brand-name{display:inline}.shell-expanded .rail-nav{align-items:stretch}.shell-expanded .rail-nav .rail-link{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:0 12px}.shell-expanded .rail-label{display:inline;font-size:14px;font-weight:500}.shell-expanded .rail-foot{flex-direction:row;justify-content:space-between}.more-menu-expanded{--rail: 232px}}.more-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45}.more-menu{position:fixed;z-index:46;left:calc(var(--rail) + 8px);bottom:16px;width:280px;max-height:calc(100vh - 32px);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:0 18px 48px #10292a29;padding:8px}.more-menu nav a,.more-menu nav button{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:12px;background:none;color:var(--ink);font:inherit;font-size:15px;text-align:left;cursor:pointer}.more-menu nav a:hover,.more-menu nav button:hover{background:var(--hover)}.more-menu a.active{background:var(--mint-soft);color:var(--teal);font-weight:600}.more-menu .rail-icon{color:#4e6866}.more-menu a.active .rail-icon{color:var(--teal)}.more-who{padding:10px 12px 8px;border-top:1px solid var(--border);margin-top:6px;font-size:13px;color:var(--muted)}.more-who strong{display:block;color:var(--ink);font-size:14px;overflow-wrap:anywhere}@media(max-width:760px){.shell{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);padding-bottom:calc(var(--tabbar) + env(safe-area-inset-bottom))}.mobile-top{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--border)}.mobile-top .brand-mark{width:32px;height:32px;font-size:15px}.mobile-top .brand-name{flex:1;font-size:17px}.rail{position:fixed;top:auto;left:0;right:0;bottom:0;height:auto;flex-direction:row;justify-content:space-around;gap:0;padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--border)}.rail-head,.rail-foot{display:none}.rail-nav{display:contents}.rail .rail-link{width:auto;min-width:60px;height:52px;display:flex;flex-direction:column;justify-content:center;gap:2px;font-size:11.5px;font-weight:600}.rail .rail-link.active,.rail .rail-link[aria-expanded=true]{background:none}.rail-label{display:block}.rail-tip{display:none}.more-menu{left:8px;right:8px;width:auto;bottom:calc(var(--tabbar) + 8px + env(safe-area-inset-bottom));max-height:calc(100vh - var(--tabbar) - 32px)}}.main{display:flex;flex-direction:column;min-width:0}.topbar{min-height:64px;background:transparent;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:20px 28px 0}.topbar h1{font-size:24px}.content{padding:24px 28px 48px}.settings-workspace{width:100%;max-width:1180px;display:flex;flex-direction:column;gap:18px}.settings-desktop{min-height:196px;padding:24px;border:1px solid var(--border);border-radius:var(--radius);background:#eef6f4;box-shadow:inset 0 1px #ffffffb8,var(--shadow)}.settings-desktop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:18px 20px;max-width:920px;align-items:start}.settings-desktop-icon{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:124px;padding:10px 8px;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--teal-dark);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-family:var(--font-body);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}.settings-desktop-icon:hover{background:#ffffff94;border-color:#1f817c2e}.settings-desktop-icon.active{background:#fff;border-color:#1f817c47;box-shadow:0 10px 26px #1343471f;transform:translateY(-1px)}.settings-desktop-icon-box{width:58px;height:58px;border-radius:var(--radius);display:grid;place-items:center;background:#fff;color:var(--teal);border:1px solid rgba(31,129,124,.18);box-shadow:0 8px 18px #13434714}.settings-desktop-icon-box svg{width:28px;height:28px;stroke-width:1.8}.settings-desktop-label{font-weight:700;font-size:14px;line-height:1.15}.settings-desktop-desc{max-width:124px;color:var(--muted);font-size:12px;line-height:1.25}.settings-active-head{display:flex;align-items:center;gap:12px;min-height:50px}.settings-active-head h2{font-size:22px;line-height:1.2}.settings-active-head p{margin:2px 0 0;color:var(--muted);font-size:14px}.settings-active-icon{width:44px;height:44px;flex:0 0 44px;border-radius:var(--radius);display:grid;place-items:center;color:var(--teal);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.settings-active-icon svg{width:24px;height:24px;stroke-width:1.9}.settings-section-stack{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.settings-section-stack>.card{width:100%;max-width:720px!important;margin-bottom:0!important}.settings-error{max-width:720px;margin:0}.review-mode-tabs{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden;margin:16px 0;background:#fff}.review-mode-tabs button{border:none;background:transparent;color:var(--teal-dark);cursor:pointer;padding:8px 14px;font-family:var(--font-body);font-weight:700;font-size:13px}.review-mode-tabs button.active{background:var(--teal);color:#fff}.review-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:10px}.review-template-card{min-height:96px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);cursor:pointer;padding:12px;text-align:left;font-family:var(--font-body);transition:border-color .12s,background .12s,box-shadow .12s}.review-template-card:hover{border-color:#1f817c73;background:#fbfdfc;box-shadow:0 4px 16px #13434714}.review-template-card strong{display:block;color:var(--teal-dark);font-size:13.5px;margin-bottom:5px}.review-template-card span{display:block;color:var(--muted);font-size:12px;line-height:1.35}.email-signature-editor{margin-top:16px}.email-signature-head,.email-signature-meta,.email-signature-save{display:flex;align-items:center;justify-content:space-between;gap:10px}.email-signature-head label{margin-bottom:0}.email-signature-reset{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;color:var(--teal);cursor:pointer;padding:4px 0;font:inherit;font-size:12px;font-weight:700}.email-signature-reset:hover{color:var(--teal-dark)}.email-signature-reset svg{width:14px;height:14px}.email-signature-editor textarea{margin-top:7px}.email-signature-meta{align-items:flex-start;margin-top:5px}.email-signature-meta p{margin:0;font-size:12px;line-height:1.4}.email-signature-meta>span{flex:0 0 auto;color:var(--muted);font-size:11px}.email-signature-preview{margin-top:10px;padding:10px 12px;border-left:3px solid var(--mint);background:#f7fbfa}.email-signature-preview>span{display:block;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.email-signature-preview p{margin:5px 0 0;color:var(--text);font-size:14px;line-height:1.45}.email-signature-save{justify-content:flex-start;margin-top:10px}.email-signature-save .btn{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;font-size:12.5px}.email-signature-save svg{width:15px;height:15px}.email-signature-save>span{color:var(--teal);font-size:12px;font-weight:700}.review-source-panel{border:1px solid var(--border);border-radius:var(--radius);background:#fbfdfc;padding:14px}.review-source-actions,.review-upload-row,.review-send-bar,.review-send-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review-source-actions{justify-content:space-between;margin:4px 0 12px}.review-source-actions .btn,.review-send-actions .btn{padding:8px 12px;font-size:13px}.review-patient-list{max-height:310px;overflow:auto;border:1px solid var(--border);border-radius:10px;background:#fff}.review-patient-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--border);cursor:pointer}.review-patient-row:last-child{border-bottom:none}.review-patient-row:hover{background:var(--mint-soft)}.review-patient-row.disabled{cursor:not-allowed;color:var(--muted);background:#f6f8f8}.review-patient-row input{width:auto;flex:0 0 auto}.review-patient-row span{min-width:0;display:flex;flex-direction:column;gap:1px}.review-patient-row strong{font-size:14px;color:var(--teal-dark)}.review-patient-row small{color:var(--muted);font-size:12px}.review-csv-preview{margin-top:14px}.review-preview-list{display:grid;gap:6px;margin-top:8px}.review-preview-list div{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:13px}.review-preview-list span{color:var(--muted);overflow-wrap:anywhere}.review-send-bar{justify-content:space-between;padding:14px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:14px 0}.review-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;margin-bottom:12px}.review-result-grid div{border:1px solid var(--border);border-radius:10px;padding:10px;background:#fff}.review-result-grid span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.review-result-grid strong{display:block;color:var(--teal-dark);font-family:var(--font-display);font-size:20px;line-height:1.2;margin-top:4px}.review-ok{background:var(--mint-soft);color:#0f6b54;padding:10px 12px;border-radius:10px;font-size:14px}.scheduled-sends-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.scheduled-sends-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.scheduled-sends-head h3{font-size:17px;letter-spacing:0}.scheduled-sends-refresh{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--teal-dark);cursor:pointer}.scheduled-sends-refresh:hover{background:var(--mint-soft)}.scheduled-sends-refresh:disabled{cursor:wait;opacity:.55}.scheduled-sends-refresh svg{width:17px;height:17px}.scheduled-sends-list{display:grid;gap:8px}.scheduled-send-row{min-height:76px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.scheduled-send-row-cancelled{background:#f8faf9;opacity:.78}.scheduled-send-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:var(--mint-soft);color:var(--teal-dark)}.scheduled-send-icon svg{width:19px;height:19px}.scheduled-send-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.scheduled-send-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.scheduled-send-title strong{min-width:0;color:var(--teal-dark);font-size:14px;overflow-wrap:anywhere}.scheduled-send-copy>span,.scheduled-send-copy>small{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.scheduled-send-actions{display:flex;align-items:center;gap:7px}.btn-edit-send,.btn-cancel-send{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #efc2c2;background:#fff5f5;color:#912d2d;font-size:13px}.btn-edit-send{border:1px solid var(--border);background:var(--mint-soft);color:var(--teal-dark)}.btn-edit-send:hover{background:var(--mint)}.btn-cancel-send:hover{background:#fde8e8}.btn-edit-send svg,.btn-cancel-send svg{width:16px;height:16px}.btn-danger{background:#a63434;color:#fff}.btn-danger:hover{filter:brightness(1.06)}.scheduled-sends-empty{padding:18px;border:1px dashed var(--border);border-radius:8px;color:var(--muted);font-size:13px;text-align:center}.scheduled-sends-history{margin-top:12px}.scheduled-sends-history summary{color:var(--muted);cursor:pointer;font-size:13px;font-weight:600;margin-bottom:8px}.review-admin-panel{margin-top:16px;border-top:1px solid var(--border);padding-top:16px}.review-result-panel{margin-top:14px}.review-result-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:8px;flex-wrap:wrap}.review-result-head strong{color:var(--teal-dark)}.review-result-head span{color:var(--muted);font-size:12px}.review-privacy-note{margin-top:10px;border:1px solid #bdebdc;border-radius:10px;background:#effcf7;color:var(--teal-dark);padding:10px 12px;font-size:13px;line-height:1.45}.review-admin-head,.review-admin-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.review-admin-head h3,.review-admin-section-head h4{margin:0;color:var(--teal-dark)}.review-admin-head p{margin:2px 0 0;font-size:12px;max-width:54ch}.review-admin-actions{display:flex;gap:8px;flex-wrap:wrap}.review-admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px;margin:14px 0}.review-admin-stats div,.review-admin-errors div{border:1px solid var(--border);border-radius:10px;background:#fff;padding:10px}.review-admin-stats span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.review-admin-stats strong{display:block;margin-top:4px;color:var(--teal-dark);font-size:18px;overflow-wrap:anywhere}.review-admin-section{margin-top:14px}.review-admin-errors{display:grid;gap:8px;margin-top:10px}.review-admin-errors div{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:start}.review-admin-errors strong{color:#a32a22;font-family:var(--font-display);font-size:20px;line-height:1.2}.review-admin-errors span{color:#7c2d27;font-size:13px;overflow-wrap:anywhere}.review-admin-table{display:grid;gap:6px;margin-top:10px}.review-admin-table>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:10px;background:#fff;padding:9px 10px}.review-admin-table span{min-width:0;display:flex;flex-direction:column}.review-admin-table strong,.review-admin-table small{overflow-wrap:anywhere}.review-admin-table strong{color:var(--teal-dark);font-size:13px}.review-admin-table small,.review-admin-table em{color:var(--muted);font-size:12px;font-style:normal}.review-admin-table .btn{flex:0 0 auto;padding:7px 10px;font-size:12px}.review-email-preview-modal{max-width:920px}.review-email-preview-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.review-email-preview-meta div{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#fbfdfc;min-width:0}.review-email-preview-meta span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.review-email-preview-meta strong{display:block;margin-top:4px;color:var(--teal-dark);font-size:13px;line-height:1.3;overflow-wrap:anywhere}.review-email-preview-tabs{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:#fff;margin-bottom:12px}.review-email-preview-tabs button{border:none;background:transparent;color:var(--teal-dark);cursor:pointer;padding:8px 16px;font-family:var(--font-body);font-weight:700;font-size:13px}.review-email-preview-tabs button.active{background:var(--teal);color:#fff}.review-email-preview-frame,.review-email-preview-html{width:100%;height:min(660px,66vh);border:1px solid var(--border);border-radius:12px;background:#fff}.review-email-preview-frame{display:block}.review-email-preview-html{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.45;resize:vertical}.ai-control-card{margin-top:18px}.ai-control-head,.ai-test-actions,.ai-log-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ai-control-head h2,.ai-log-head h3{margin:0;color:var(--teal-dark)}.ai-control-head p{margin:4px 0 0;font-size:13px}.ai-test-panel,.ai-log-panel{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.ai-test-actions .btn{padding:9px 14px;font-size:14px}.ai-test-result{margin-top:14px;display:grid;gap:12px}.ai-test-warnings{display:grid;gap:6px}.ai-test-warnings span,.ai-no-draft{border:1px solid #f2d18b;border-radius:10px;background:#fff8e8;color:#855900;padding:9px 11px;font-size:13px}.ai-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.ai-result-grid div,.ai-reason-box,.ai-draft-preview,.ai-log-row{border:1px solid var(--border);border-radius:10px;background:#fff}.ai-result-grid div{padding:10px 12px}.ai-result-grid span,.ai-reason-box span,.ai-draft-preview span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.ai-result-grid strong{display:block;margin-top:4px;color:var(--teal-dark);font-size:17px}.ai-risk{color:var(--teal-dark)}.ai-risk-green{color:#0f7a55}.ai-risk-yellow{color:#9a6200}.ai-risk-red{color:#a32a22}.ai-reason-box,.ai-draft-preview{padding:12px}.ai-reason-box p,.ai-draft-preview p{margin:5px 0 0;white-space:pre-wrap;line-height:1.45}.ai-red-flags{display:flex;gap:8px;flex-wrap:wrap}.ai-red-flags span{border-radius:999px;background:#fbe9e8;color:#a32a22;padding:5px 9px;font-size:12px;font-weight:700}.ai-draft-preview>div{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:6px}.ai-draft-preview strong{color:var(--teal-dark)}.ai-log-list{display:grid;gap:8px;margin-top:10px}.ai-log-row{display:grid;gap:8px;padding:12px}.ai-log-row>div:first-child{display:grid;gap:2px}.ai-log-row strong{color:var(--teal-dark)}.ai-log-row span,.ai-log-row small{color:var(--muted);font-size:12.5px;line-height:1.35}.ai-log-tags{display:flex;flex-wrap:wrap;gap:6px}.ai-log-tags em{border-radius:999px;background:#eef5f3;color:var(--teal-dark);padding:4px 8px;font-style:normal;font-size:11.5px;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:20px 22px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.stat{padding:18px 20px}.stat .label{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.04em}.stat .value{font-family:var(--font-body);font-weight:600;color:var(--text);font-size:27px;line-height:1.1;margin-top:6px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}table{width:100%;border-collapse:collapse}thead th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:12px 16px;border-bottom:1px solid var(--border);font-weight:600}tbody td{padding:14px 16px;border-bottom:1px solid var(--border);font-size:15px}tbody tr{cursor:pointer;transition:background .12s}tbody tr:hover{background:var(--mint-soft)}tbody tr:last-child td{border-bottom:none}input:not([type]),input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=date],input[type=datetime-local],input[type=tel]{width:100%;padding:11px 14px;border:1px solid var(--border);border-radius:10px;font-family:var(--font-body);font-size:15px;background:#fff;color:var(--text)}input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #1f817c26}.search{max-width:320px}.btn{font-family:var(--font-body);font-weight:500;font-size:14px;border:1px solid transparent;border-radius:8px;padding:8px 14px;cursor:pointer;transition:filter .15s,background .15s}.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{filter:brightness(1.06)}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--border)}.btn-ghost:hover{background:var(--hover)}.badge{display:inline-flex;align-items:center;flex-shrink:0;white-space:nowrap;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:600}.badge-green{background:var(--mint-soft);color:#0f6b54}.badge-teal{background:#dceeec;color:var(--teal-dark)}.badge-amber{background:#fbf0d9;color:#93640f}.badge-red{background:#fbe0e0;color:#9a2c2c}.badge-grey{background:#eef2f1;color:var(--muted)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin:6px 0 20px}.tabs button{background:none;border:none;padding:12px 16px;font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.active{color:var(--teal-dark);border-bottom-color:var(--teal)}.patient-topbar{height:auto;min-height:72px;gap:16px;align-items:center}.patient-work-banner{min-width:0;display:flex;align-items:center;gap:12px}.patient-work-avatar,.patient-context-avatar{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;background:var(--mint);color:var(--teal-deep);font-family:var(--font-display);font-weight:700}.patient-work-copy{min-width:0}.patient-work-kicker,.patient-context-kicker{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.patient-work-meta{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--muted);font-size:13px}.patient-topbar-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.patient-topbar-actions .btn-ghost{color:var(--teal-dark);border-color:var(--border)}.patient-topbar-actions .btn-ghost:hover{color:var(--teal-dark);background:var(--mint-soft)}.patient-info-toggle{display:none;align-items:center;gap:8px}.patient-info-toggle svg{width:18px;height:18px}.patient-detail-content{padding-top:20px}.patient-workspace{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.patient-main{min-width:0}.patient-tabs{overflow-x:auto;padding-bottom:1px}.patient-tabs button{white-space:nowrap}.patient-context-panel{position:sticky;top:20px;max-height:calc(100vh - 104px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.patient-context-head{position:sticky;top:0;z-index:1;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:16px;background:var(--surface);border-bottom:1px solid var(--border)}.patient-context-head h2{font-size:17px;line-height:1.2}.patient-context-head p{margin:2px 0 0;color:var(--muted);font-size:13px}.patient-context-close{display:none;width:34px;height:34px;border:none;border-radius:9px;background:var(--mint-soft);color:var(--teal-dark);cursor:pointer;place-items:center}.patient-context-close svg{width:18px;height:18px}.patient-context-section{padding:14px 16px;border-bottom:1px solid var(--border)}.patient-context-section:last-child{border-bottom:none}.patient-context-section-title{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--teal-dark);font-weight:700;font-size:13px}.patient-context-section-title svg{width:17px;height:17px;color:var(--teal)}.patient-context-line{display:grid;grid-template-columns:17px minmax(92px,116px) minmax(0,1fr);gap:8px 10px;align-items:start;padding:7px 0;font-size:13px}.patient-context-line-icon{width:17px;height:17px;color:var(--teal);display:grid;place-items:center}.patient-context-line-icon svg{width:16px;height:16px}.patient-context-line>span:not(.patient-context-line-icon){color:var(--muted)}.patient-context-line strong{min-width:0;color:var(--text);font-weight:600;text-align:left;line-height:1.35;overflow-wrap:anywhere}.patient-context-badge-line{display:grid;grid-template-columns:minmax(108px,1fr) auto;gap:10px;align-items:center;padding:7px 0;font-size:13px}.patient-context-badge-line>span{color:var(--muted)}.patient-context-badge-line>strong{justify-self:end;font-weight:600}.patient-rx-section{background:#fbfdfc}.patient-rx-toggle{width:100%;min-height:40px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--teal-dark);cursor:pointer;display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:8px 10px;font-family:var(--font-body)}.patient-rx-toggle:hover{border-color:#1f817c59;background:var(--mint-soft)}.patient-rx-toggle>span{display:inline-flex;align-items:center;gap:8px;font-weight:700;text-align:left}.patient-rx-toggle svg{width:16px;height:16px;color:var(--teal)}.patient-rx-toggle>strong{min-width:24px;height:22px;border-radius:999px;display:grid;place-items:center;background:#eef6f5;color:var(--teal-dark);font-size:12px}.patient-rx-toggle[aria-expanded=true]>svg{transform:rotate(90deg)}.patient-rx-latest,.patient-rx-empty{margin-top:10px;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fff}.patient-rx-latest>span,.patient-rx-empty{display:block;color:var(--muted);font-size:12px}.patient-rx-latest strong{display:block;margin-top:3px;color:var(--teal-dark);font-size:14px;line-height:1.25}.patient-rx-latest p{margin:4px 0 8px;color:var(--muted);font-size:12.5px;line-height:1.35}.patient-rx-list{display:grid;gap:6px;margin-top:8px}.patient-rx-item{padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:#fff}.patient-rx-item strong{display:block;color:var(--text);font-size:13px;line-height:1.25}.patient-rx-item span{display:block;margin-top:2px;color:var(--muted);font-size:12px;line-height:1.3}.patient-rx-note{color:var(--muted);font-size:12.5px}.clinical-structure{display:grid;gap:16px}.clinical-hero,.clinical-start{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.clinical-hero h2,.clinical-start h3,.clinical-panel h3{font-size:19px;line-height:1.2}.clinical-hero p,.clinical-start p,.clinical-panel-head p,.clinical-section-head p{margin:6px 0 0;color:var(--muted);font-size:13.5px;line-height:1.45}.clinical-eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:8px;color:var(--teal);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.clinical-eyebrow svg{width:15px;height:15px}.clinical-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:8px;min-width:min(360px,100%)}.clinical-hero-stats span{min-height:64px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#fbfdfc;color:var(--muted);font-size:12px;font-weight:700}.clinical-hero-stats strong{display:block;color:var(--teal-dark);font-size:24px;line-height:1.05}.clinical-start{border-left:4px solid var(--teal)}.clinical-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:16px;align-items:start}.clinical-panel{min-width:0;padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.clinical-panel-head{display:flex;gap:12px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--border)}.clinical-panel-head>div:nth-child(2){flex:1;min-width:0}.clinical-panel-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.clinical-panel-actions .btn{display:inline-flex;align-items:center;gap:6px}.clinical-panel-actions svg{width:15px;height:15px}.clinical-panel-head>svg,.clinical-empty>svg{width:38px;height:38px;padding:9px;border-radius:12px;background:var(--mint-soft);color:var(--teal);flex:0 0 auto}.clinical-section-list{display:grid;gap:10px;margin-top:14px}.clinical-section{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fbfdfc}.clinical-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:12px 14px;border-bottom:1px solid var(--border);background:#fff}.clinical-section-head h4{font-size:15px}.clinical-section-head>span{min-width:42px;height:26px;display:grid;place-items:center;border-radius:999px;background:var(--mint-soft);color:var(--teal-dark);font-size:12px;font-weight:800}.clinical-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;background:var(--border)}.clinical-field-grid>div{min-width:0;padding:10px 12px;background:#fbfdfc}.clinical-field-grid dt{color:var(--muted);font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.clinical-field-grid dd{margin:3px 0 0;color:var(--text);font-size:13.5px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}.clinical-field-grid dd.is-empty{color:var(--muted);font-weight:500}.clinical-field-input{width:100%;min-height:38px;padding:8px 9px;border:1px solid #cfe1de;border-radius:8px;background:#fff;color:var(--text);font:inherit;font-size:13px;font-weight:600;line-height:1.35;resize:vertical}.clinical-field-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #218b821f}.clinical-inline-message{margin-top:12px;padding:10px 12px;border:1px solid #bfe8dc;border-radius:10px;background:#e9fbf3;color:var(--teal-dark);font-size:13px;font-weight:700}.clinical-layer-strip,.clinical-timeline-meta{display:flex;gap:6px;flex-wrap:wrap}.clinical-layer-strip{margin:14px 0}.clinical-layer-strip span,.clinical-timeline-meta span{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;background:#eef6f5;color:var(--teal-dark);font-size:11.5px;font-weight:800}.clinical-timeline{display:grid;gap:10px}.clinical-timeline-item{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fbfdfc}.clinical-timeline-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--mint-soft);color:var(--teal)}.clinical-timeline-icon svg{width:17px;height:17px}.clinical-timeline-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.clinical-timeline-head strong{min-width:0;color:var(--teal-dark);line-height:1.25}.clinical-timeline-head span,.clinical-timeline p,.clinical-empty-inline{color:var(--muted);font-size:12.5px}.clinical-timeline p{margin:4px 0 8px;line-height:1.4;overflow-wrap:anywhere}.clinical-empty,.clinical-empty-inline{text-align:left}.clinical-empty{display:grid;gap:8px}.portal-labs{display:grid;gap:14px;margin-top:16px}.portal-labs-heading{display:flex;align-items:center;justify-content:space-between;color:var(--teal-dark);font-weight:700}.portal-labs-heading strong{min-width:28px;height:24px;display:grid;place-items:center;border-radius:999px;background:#eaf6f3;color:var(--teal-dark);font-size:12px}.patient-context-nav-list{display:grid;gap:6px}.patient-context-nav{width:100%;min-height:40px;border:1px solid var(--border);border-radius:10px;background:#fbfdfc;color:var(--teal-dark);cursor:pointer;display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;padding:8px 10px;font-family:var(--font-body);text-align:left}.patient-context-nav:hover{border-color:#1f817c59;background:var(--mint-soft)}.patient-context-nav svg{width:16px;height:16px;color:var(--teal)}.patient-context-nav span{font-weight:700}.patient-context-nav strong{min-width:24px;height:22px;border-radius:999px;display:grid;place-items:center;background:#eef6f5;color:var(--teal-dark);font-size:12px}.patient-context-float-toggle,.patient-panel-backdrop{display:none}.messages-shell{display:flex;gap:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;height:calc(100vh - 150px);background:var(--surface)}.messages-list{width:340px;border-right:1px solid var(--border);display:flex;flex-direction:column;min-width:0;flex:0 0 340px}.messages-thread{flex:1 1 auto;display:flex;flex-direction:column;min-width:0}.messages-thread-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.messages-info-toggle{display:none;align-items:center;gap:8px}.messages-info-toggle svg{width:17px;height:17px}.messages-shell.panel-collapsed .messages-info-toggle{display:inline-flex}.messages-patient-panel{width:316px;flex:0 0 316px;border-left:1px solid var(--border);background:#fbfdfc;overflow:auto}.messages-patient-panel.collapsed{display:none}.messages-patient-head{position:sticky;top:0;z-index:1;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:16px;background:var(--surface);border-bottom:1px solid var(--border)}.messages-patient-head h2{font-size:17px;line-height:1.2}.messages-patient-head p{margin:2px 0 0;color:var(--muted);font-size:13px}.messages-panel-close{display:grid;width:34px;height:34px;border:none;border-radius:9px;background:var(--mint-soft);color:var(--teal-dark);cursor:pointer;place-items:center}.messages-panel-close:hover{background:#d9f2e9}.messages-panel-close svg{width:18px;height:18px}.messages-patient-section{padding:14px 16px;border-bottom:1px solid var(--border)}.messages-patient-section:last-child{border-bottom:none}.messages-patient-section-title{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--teal-dark);font-weight:700;font-size:13px}.messages-patient-section-title svg{width:17px;height:17px;color:var(--teal)}.messages-open-patient{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px}.messages-open-patient svg{width:16px;height:16px}.messages-patient-line{display:grid;grid-template-columns:17px minmax(86px,110px) minmax(0,1fr);gap:8px 10px;align-items:start;padding:7px 0;font-size:13px}.messages-patient-line-icon{width:17px;height:17px;color:var(--teal);display:grid;place-items:center}.messages-patient-line-icon svg{width:16px;height:16px}.messages-patient-line>span:not(.messages-patient-line-icon){color:var(--muted)}.messages-patient-line strong{min-width:0;color:var(--text);font-weight:600;line-height:1.35;overflow-wrap:anywhere}.messages-patient-badge-line{display:grid;grid-template-columns:minmax(106px,1fr) auto;gap:10px;align-items:center;padding:7px 0;font-size:13px}.messages-patient-badge-line>span{color:var(--muted)}.messages-patient-badge-line>strong{justify-self:end;font-weight:600}.messages-triage-card{border:1px solid var(--border);border-radius:10px;padding:11px}.messages-triage-card p{margin:8px 0 0;color:var(--text);font-size:13px;line-height:1.35}.messages-triage-card small{display:block;margin-top:6px;color:#7a2b25;font-size:12px;line-height:1.35}.messages-panel-empty-row{border:1px dashed var(--border);border-radius:10px;padding:10px 12px;color:var(--muted);font-size:13px;line-height:1.35;background:#fff}.messages-panel-card-list{display:grid;gap:8px}.messages-panel-mini-card{border:1px solid var(--border);border-radius:10px;padding:10px;background:#fff;display:grid;gap:5px}.messages-panel-mini-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.messages-panel-mini-card strong{min-width:0;color:var(--teal-dark);font-size:13px;line-height:1.25;overflow-wrap:anywhere}.messages-panel-mini-card span,.messages-panel-mini-card small{color:var(--muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.messages-patient-empty{min-height:100%;display:grid;place-items:center;align-content:center;gap:8px;padding:24px;text-align:center;color:var(--muted)}.messages-patient-empty svg{width:26px;height:26px;color:var(--teal)}.messages-patient-empty strong{color:var(--teal-dark)}.messages-panel-backdrop{display:none}.chat-file-pill{display:inline-flex;align-items:center;gap:6px;max-width:100%;background:#f0f2f2;border-radius:8px;padding:4px 8px;font-size:13px}.chat-file-pill svg{width:14px;height:14px;color:var(--teal);flex:0 0 auto}.chat-composer-row{position:relative;display:flex;gap:8px;align-items:flex-end;margin-top:6px}.chat-more-wrap{position:relative;flex:0 0 auto}.chat-more-button{width:40px;height:40px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--teal-dark);cursor:pointer;display:grid;place-items:center}.chat-more-button:hover,.chat-more-button[aria-expanded=true]{border-color:#1f817c59;background:var(--mint-soft)}.chat-more-button svg{width:20px;height:20px}.chat-more-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:20;width:230px;padding:8px;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:0 14px 34px #13434729}.chat-more-menu button{width:100%;min-height:40px;border:none;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;display:flex;align-items:center;gap:10px;padding:8px 10px;font-family:var(--font-body);font-size:14px;text-align:left}.chat-more-menu button:hover:not(:disabled){background:var(--mint-soft);color:var(--teal-dark)}.chat-more-menu button:disabled{cursor:not-allowed;color:var(--muted);opacity:.62}.chat-more-menu svg{width:18px;height:18px;color:var(--teal);flex:0 0 auto}.template-picker-search{position:relative;margin-bottom:12px}.template-picker-search svg{position:absolute;left:14px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--muted)}.template-picker-search input{padding-left:42px}.template-picker-list{max-height:430px;overflow:auto;border:1px solid var(--border);border-radius:10px}.template-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border-bottom:1px solid var(--border);background:#fff}.template-picker-row:last-child{border-bottom:none}.template-picker-row:hover{background:#fbfdfc}.template-picker-row strong{color:var(--teal-dark);font-size:15px}.template-picker-row p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.template-picker-row .btn{padding:8px 12px;font-size:13px}.timeline{display:flex;flex-direction:column;gap:14px}.entry{padding:18px 20px}.entry-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.entry-head .title{font-family:var(--font-display);font-weight:700;color:var(--teal-dark);font-size:16px}.entry-meta{color:var(--muted);font-size:13px}.entry .field-label{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-top:12px}.entry .field-value{margin-top:2px}.lab-staff-publish{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin:8px 0 12px;border:1px solid var(--border);border-radius:10px;background:#fbfdfc}.lab-publish-state{display:block;color:var(--muted);font-weight:700;font-size:14px}.lab-publish-state.is-live{color:var(--teal-dark)}.lab-staff-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.lab-staff-actions .btn{padding:8px 12px;font-size:13px;white-space:nowrap}.lab-action-pending{color:var(--muted);font-size:13px}.lab-action-receipt{border-top:1px solid var(--border);margin-top:12px;padding-top:2px}.lab-action-receipt .field-value{white-space:pre-wrap;overflow-wrap:anywhere}.page-head{margin-bottom:22px}.page-head .sub{color:var(--muted);margin-top:4px}.center{min-height:100vh;display:grid;place-items:center;padding:24px}dialog.auth-recovery{position:fixed;top:0;right:0;bottom:0;left:0;margin:0;border:0;padding:24px;width:100vw;height:100dvh;max-width:none;max-height:none;background:var(--bg, #f7f8fa);color:inherit}dialog.auth-recovery[open]{display:grid;place-items:center}dialog.auth-recovery::backdrop{background:var(--bg, #f7f8fa)}.muted{color:var(--muted)}.empty{padding:40px;text-align:center;color:var(--muted)}.spinner{width:26px;height:26px;border:3px solid var(--border);border-top-color:var(--teal);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-card{width:100%;max-width:380px;padding:32px}.auth-card .brand{justify-content:center;padding-bottom:18px}.field{margin-bottom:14px}.field label{display:block;font-size:13px;font-weight:600;color:var(--teal-dark);margin-bottom:6px}.error{background:#fbe0e0;color:#9a2c2c;padding:10px 12px;border-radius:10px;font-size:14px;margin-bottom:14px}.success{background:var(--mint-soft);color:#0f6b54;padding:10px 12px;border-radius:10px;font-size:14px;margin-bottom:14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e343773;display:grid;place-items:center;padding:24px;z-index:50}.modal{width:100%;max-width:540px;max-height:90vh;overflow:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border)}.modal-head h3{font-size:18px}.modal-body{padding:20px 22px}.modal-foot{padding:16px 22px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px}.unsaved-changes-dialog{padding:0;color:var(--text)}.unsaved-changes-dialog::backdrop{background:#0e343773}.journal-entry-fields{border:0;margin:0;padding:0;min-width:0}.icon-x{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:var(--muted)}.form-row{margin-bottom:14px}.form-row label{display:block;font-size:13px;font-weight:600;color:var(--teal-dark);margin-bottom:6px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}select,textarea{width:100%;padding:11px 14px;border:1px solid var(--border);border-radius:10px;font-family:var(--font-body);font-size:15px;background:#fff;color:var(--text)}textarea{min-height:88px;resize:vertical}select:focus,textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #1f817c26}.btn-secondary{background:#fff;color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--canvas);border-color:#bac7c2}.q-card{border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:12px;background:#fbfdfc}.q-head{display:flex;gap:10px;align-items:center;margin-bottom:10px}.q-head .num{width:24px;height:24px;border-radius:6px;background:var(--mint);color:var(--teal-deep);display:grid;place-items:center;font-weight:700;font-size:13px;flex:0 0 auto}.toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--teal-dark);cursor:pointer}.toggle input{width:auto}.fill-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:40px 20px}.fill-card{width:100%;max-width:620px}.fill-head{text-align:center;margin-bottom:22px}.fill-head .brand{justify-content:center}.progress{height:6px;background:var(--border);border-radius:999px;overflow:hidden;margin:18px 0 26px}.progress>div{height:100%;background:var(--teal);transition:width .25s ease}.q-text{font-family:var(--font-display);font-weight:700;color:var(--teal-dark);font-size:22px;margin-bottom:6px}.q-req{color:#c2410c}.opt-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.opt{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:10px;cursor:pointer;background:#fff;transition:border-color .12s,background .12s}.opt:hover{border-color:var(--teal)}.opt.sel{border-color:var(--teal);background:var(--mint-soft)}.rating-row{display:flex;gap:10px;margin-top:16px}.rating-row button{flex:1;padding:16px 0;border:1px solid var(--border);border-radius:10px;background:#fff;font-size:18px;font-weight:700;color:var(--teal-dark);cursor:pointer}.rating-row button.sel{background:var(--teal);color:#fff;border-color:var(--teal)}.fill-nav{display:flex;justify-content:space-between;margin-top:28px}.done{text-align:center;padding:40px 10px}.done .check{width:56px;height:56px;border-radius:50%;background:var(--mint);color:var(--teal-deep);display:grid;place-items:center;font-size:28px;margin:0 auto 16px}@media(max-width:760px){.content{padding:20px}.settings-desktop{padding:16px}.settings-desktop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-desktop-icon{min-height:112px;padding:8px 6px}.settings-desktop-desc{display:none}.settings-active-head{align-items:flex-start}.review-email-preview-meta{grid-template-columns:1fr}}@media(max-width:1440px){.messages-info-toggle{display:inline-flex}.messages-patient-panel{position:fixed;top:0;right:0;bottom:0;z-index:80;width:min(340px,calc(100vw - 36px));max-height:none;border-radius:14px 0 0 14px;transform:translate(104%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .18s ease,opacity .18s ease,visibility .18s ease}.messages-patient-panel.open{transform:translate(0);opacity:1;visibility:visible;pointer-events:auto}.messages-panel-close{display:grid}.messages-panel-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;border:none;background:#0e343759;cursor:pointer}}@media(max-width:980px){.patient-topbar{padding:12px 18px;align-items:flex-start;flex-direction:column}.patient-topbar-actions{width:100%;margin-left:0;justify-content:flex-start}.patient-info-toggle{display:inline-flex}.patient-workspace{display:block}.clinical-grid{grid-template-columns:1fr}.clinical-hero,.clinical-start{display:grid}.clinical-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.patient-context-panel{position:fixed;top:0;right:0;bottom:0;z-index:80;width:min(360px,calc(100vw - 36px));max-height:none;border-radius:14px 0 0 14px;transform:translate(104%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .18s ease,opacity .18s ease,visibility .18s ease}.patient-context-panel.open{transform:translate(0);opacity:1;visibility:visible;pointer-events:auto}.patient-context-close{display:grid}.patient-context-float-toggle{position:fixed;right:14px;bottom:18px;z-index:60;width:44px;height:44px;border:1px solid rgba(31,129,124,.24);border-radius:12px;background:var(--teal-dark);color:#fff;box-shadow:0 12px 28px #13434738;cursor:pointer;display:grid;place-items:center}.patient-context-float-toggle svg{width:19px;height:19px}.patient-panel-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;border:none;background:#0e343759;cursor:pointer}}@media(max-width:560px){.scheduled-send-row{grid-template-columns:38px minmax(0,1fr)}.scheduled-send-actions{grid-column:1 / -1;width:100%}.scheduled-send-actions .btn{flex:1;justify-content:center}.messages-shell{height:calc(100vh - 130px)}.messages-list{width:292px;flex-basis:292px}.messages-thread-actions .btn{font-size:13px;padding-left:12px;padding-right:12px}.patient-work-banner{align-items:flex-start}.patient-topbar-actions .btn,.patient-topbar-actions a{font-size:13px}.patient-tabs button{padding-left:12px;padding-right:12px;font-size:14px}.clinical-hero-stats,.clinical-field-grid{grid-template-columns:1fr}.clinical-timeline-head{display:grid}.form-grid{grid-template-columns:1fr}.chat-composer-row{gap:6px}.chat-more-button{width:38px;height:38px}.chat-more-menu{width:min(230px,calc(100vw - 44px))}.template-picker-row{grid-template-columns:1fr}.template-picker-row .btn{justify-self:start}}.dash{max-width:1240px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:24px}.dash-head{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.dash-hello{flex:1 1 260px;min-width:0}.dash-date{margin:0;color:var(--muted);font-size:14px}.dash-date:first-letter{text-transform:uppercase}.dash-hello h1{font-size:30px;margin-top:2px}.dash-search{flex:1 1 320px;max-width:460px;display:flex;align-items:center;gap:10px;height:46px;padding:0 14px;background:var(--surface);border:1px solid #DCE5E2;border-radius:12px;color:var(--muted)}.dash-search:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #1f817c26}.dash-search input[type=search]{border:0;padding:0;height:100%;background:transparent;box-shadow:none;flex:1;min-width:0}.dash-cta{display:inline-flex;align-items:center;gap:8px;height:46px;border-radius:12px}.dash-cta:hover{color:#fff}.dash-grid{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}.dash-today{flex:2 1 520px;min-width:0;padding:8px 8px 12px;border-radius:18px}.dash-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 14px 8px}.dash-section-head h2,.dash-side h2{font-size:18px}.dash-section-head a{font-size:14px;font-weight:600}.dash-soft{color:var(--muted);font-weight:500}.dash-subhead{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:14px 14px 4px}.dash-empty{margin:0;padding:8px 14px 12px;color:var(--muted)}.dash-visits{list-style:none;margin:0;padding:0}.dash-visit{width:100%;display:flex;align-items:center;gap:16px;padding:12px 14px;min-height:56px;border:0;border-radius:12px;background:none;font:inherit;color:var(--text);text-align:left;cursor:pointer}.dash-visit:hover:not(:disabled){background:var(--canvas)}.dash-visit:disabled{cursor:default}.dash-visit-time{flex:0 0 72px;font-weight:600;font-variant-numeric:tabular-nums}.dash-visit-date{display:block;white-space:nowrap;font-size:12px;font-weight:500;color:var(--muted)}.dash-visit-who{flex:1;min-width:0;display:flex;flex-direction:column}.dash-visit-who span{color:var(--muted);font-size:14px}.dash-side{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:10px}.dash-side h2{margin:4px 4px 2px}.dash-task{display:flex;align-items:center;gap:14px;padding:14px 18px;min-height:56px;background:var(--surface);border:1px solid var(--border);border-radius:16px;color:var(--text)}.dash-task:hover{border-color:#b9ccc8;color:var(--text)}.dash-task-count{flex:0 0 40px;font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.dash-task-label{flex:1}.dash-task-chevron{color:var(--muted);font-size:20px}.dash-recent{margin-top:6px;padding:18px;border-radius:16px;background:var(--ink);color:#e6f2ef}.dash-recent p{margin:0 0 10px;font-size:13px;color:#9fc2bc}.dash-recent ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.dash-recent li{min-width:0;overflow-wrap:anywhere}.dash-recent a,.dash-recent strong{color:#fff;font-weight:600}.dash-recent a:hover{text-decoration:underline}.dash-recent li span,.dash-recent-empty{color:#9fc2bc;font-size:14px}.dash-totals{margin:0;color:var(--muted);font-size:14px}@media(max-width:760px){.dash{gap:18px}.dash-hello h1{font-size:26px}.dash-search{max-width:none}.dash-cta{flex:1 1 100%;justify-content:center}}.mfa-card{max-width:400px;padding:32px 28px 24px;display:flex;flex-direction:column;text-align:center}.mfa-card .brand{padding-bottom:22px}.mfa-icon{align-self:center;width:48px;height:48px;border-radius:14px;background:var(--mint-soft);color:var(--teal);display:grid;place-items:center;margin-bottom:14px}.mfa-card h2{font-size:24px}.mfa-lead{margin:6px 0 22px;color:var(--muted);font-size:15px}.mfa-label{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:8px}.mfa-error{min-height:20px;margin:10px 0 6px;color:#9a2c2c;font-size:14px}.mfa-error:empty{min-height:0;margin:6px 0 4px}.mfa-submit{width:100%;height:50px;border-radius:12px;font-size:16px;margin-top:8px}.mfa-submit:disabled{opacity:.45;cursor:default;filter:none}.mfa-link{align-self:center;margin-top:10px;min-height:44px;padding:0 12px;border:0;background:none;font:inherit;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;border-radius:10px}.mfa-link:hover{color:var(--ink);background:var(--hover)}.mfa-hint{margin:6px 0 0;color:var(--muted);font-size:12.5px}.mfa-steps{text-align:left;margin:0 0 16px;padding-left:20px;color:var(--text);font-size:14.5px;display:flex;flex-direction:column;gap:6px}.mfa-qr{align-self:center;width:180px;height:180px;border-radius:12px;border:1px solid var(--border);padding:6px;background:#fff}.mfa-secret{margin:12px 0 20px;font-size:13px;color:var(--muted)}.mfa-secret summary{cursor:pointer;font-weight:600;color:var(--teal)}.mfa-secret code{display:block;margin-top:8px;padding:8px 10px;background:var(--canvas);border-radius:8px;color:var(--ink);font-size:13px;letter-spacing:.06em;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.otp{position:relative;height:58px}.otp-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:0;border:0;padding:0;margin:0;font-size:16px;cursor:text;caret-color:transparent;color:transparent;background:transparent}.otp-slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;height:100%}.otp-slot{display:grid;place-items:center;border:1px solid #CBD8D5;border-radius:12px;background:#fff;font-size:26px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;transition:border-color .12s,box-shadow .12s}.otp:focus-within .otp-slot-active{border-color:var(--teal);box-shadow:0 0 0 3px #1f817c2e}.otp-invalid .otp-slot{border-color:#d98a8a}.otp-disabled .otp-slot{background:var(--canvas);color:var(--muted)}@media(max-width:380px){.otp-slots{gap:6px}.otp-slot{font-size:22px}}.email-signature-presets{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:6px 0 8px;font-size:13px}.email-signature-presets label{font-weight:600;color:var(--ink)}.email-signature-presets select{width:auto;min-width:220px;max-width:100%;padding:7px 10px;font-size:14px}.chat-sender-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:8px;font-size:12px}.chat-sender-row label{font-weight:600;color:var(--teal-dark)}.chat-sender-row select{width:auto;max-width:100%;min-width:150px;padding:6px 28px 6px 10px;font-size:13px}.shell{min-height:100dvh}.mobile-header,.messages-back{display:none}.dashboard-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dashboard-columns>*,.content,.card{min-width:0}.card:has(>table){max-width:100%;overflow-x:auto}button,a,input,select,textarea,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.messages-thread-head{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px}.messages-thread-head>div{min-width:0}.messages-history{flex:1;min-height:0;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;overscroll-behavior:contain;background:#fafbfa}.messages-thread-identity{flex:1;min-width:0}.messages-patient-title{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}.messages-patient-name{font-size:15px;font-weight:600;color:var(--text);text-decoration:none}.messages-responsible{font-size:12px;color:var(--muted)}.messages-actions-toggle{display:inline-flex}.conversation-status-line{display:flex;align-items:baseline;gap:8px;font-size:12px;min-width:0}.conversation-status-line>:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-state-label{flex-shrink:0;font-size:12px;color:var(--muted);padding:1px 6px;border-radius:4px}.chat-state-label.is-needs_reply{color:#855018;background:#fff3dc;font-weight:600}.chat-state-label.is-done{color:#356951;background:#edf5ef}.conversation-plan-line{display:flex;align-items:center;gap:6px;margin:4px 0;min-width:0}.chat-plan-label{font-size:11px;font-weight:600;line-height:1.6;white-space:nowrap;padding:1px 6px;border-radius:4px}.chat-plan-label.is-premium{color:#235e62;background:#e4f1f0}.chat-plan-label.is-standard{color:#465e75;background:#edf1f6}.chat-plan-label.is-inactive,.chat-plan-label.is-unknown{color:#636b69;background:#f0f2f1;font-weight:400}.conversation-form{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-unread{align-self:center;min-width:20px;height:20px;border-radius:10px;background:#38648e;color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;padding:0 6px}.chat-mark-actions{border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:8px}.chat-state-explainer{margin:0 0 8px;color:var(--muted);font-size:13px;line-height:1.5}.chat-unread-notice{flex-shrink:0;padding:6px 16px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--border)}.icon-button{width:44px;height:44px;flex-shrink:0;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;align-items:center;justify-content:center}.icon-button:hover{background:var(--canvas);color:var(--text)}.icon-button svg{width:20px;height:20px;stroke-width:1.8}.message-bubble-row{display:flex;gap:8px;max-width:78%;align-self:flex-start}.message-bubble-row.is-outbound{align-self:flex-end;flex-direction:row-reverse}.message-avatar{margin-top:2px}.portal-chat{margin-top:20px;scroll-margin-top:20px;border:1px solid #a4c7c2;border-top:3px solid var(--teal)}.portal-chat-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.portal-chat-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;background:#e8f3f0;color:var(--teal-dark);border-radius:12px}.portal-chat-heading h2{margin:0 0 4px;color:var(--teal-dark);font-size:22px;line-height:1.2}.portal-chat-heading p{margin:0;color:var(--muted);font-size:14px;line-height:1.4}.portal-chat-history{display:flex;flex-direction:column;gap:10px;max-height:260px;overflow-y:auto;padding:4px;margin-bottom:16px;scrollbar-width:thin}.portal-chat-history:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.portal-chat-label{display:block;margin-bottom:6px;font-weight:600;color:var(--teal-dark)}.portal-chat-empty{padding:16px;background:#f4f7f6;border-radius:8px;color:var(--muted);line-height:1.5}.portal-chat-composer textarea{min-width:0}@media(max-width:760px){.portal-chat-heading h2{font-size:20px}.portal-chat-history{max-height:200px}}.message-bubble,.portal-message-bubble{padding:10px 12px;border-radius:10px;background:#fff;border:1px solid var(--border);color:var(--text);font-size:15px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.is-outbound .message-bubble,.portal-message-bubble.is-outbound{background:#eef2f0;border-color:#eef2f0}.message-meta{margin-top:4px;font-size:12px;line-height:1.45;color:var(--muted)}.is-outbound .message-meta{text-align:right}.message-sms-status{margin-top:2px;font-size:11px}.message-sms-status.is-attention{color:#92520a}.message-sms-status summary{display:inline-block;padding:4px 0;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.message-sms-status summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:2px}.message-sms-status p{margin:2px 0 0;max-width:34ch;color:var(--muted)}.message-author-details summary{min-height:28px;cursor:pointer;padding:3px 0}.message-author-details[open]{padding-bottom:4px}.message-author-details[open] summary{color:var(--text)}.chat-action-list{display:grid;gap:2px}.chat-action-list button{display:flex;align-items:center;gap:14px;padding:14px 4px;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text);text-align:left;font:inherit;cursor:pointer}.chat-action-list button:last-child{border-bottom:0}.chat-action-list button:hover:not(:disabled){background:var(--canvas)}.chat-action-list button:disabled{opacity:.45;cursor:not-allowed}.chat-action-list svg{width:19px;height:19px;color:var(--muted);flex-shrink:0}.chat-action-list small{display:block;font-size:12px;color:var(--muted);margin-top:2px}.conversation-avatar{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;border-radius:10px;background:#edf1ef;color:var(--muted);font-size:12px;font-weight:600}.conversation-controls .messages-filter-toggle{background:transparent;border:0;color:var(--muted)}.conversation-filter-row{display:flex;align-items:center;justify-content:space-between;gap:4px}.conversation-filter-row .tabs button{padding-inline:8px!important;font-size:13px}.messages-filter-toggle{display:inline-flex;align-items:center;min-height:44px;margin-top:0;padding-inline:8px;flex-shrink:0;font-size:13px}.conversation-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted)}.conversation-filter-summary button{border:0;background:transparent;color:var(--teal-dark);padding:8px 4px;min-height:36px;font:inherit;cursor:pointer}.chat-filter-modal{max-width:440px}.chat-filter-fields{display:grid;gap:16px}.chat-filter-fields>label,.chat-form-filter legend{font-size:13px;font-weight:600;color:var(--text)}.chat-filter-fields>label{display:grid;gap:6px}.chat-filter-fields select{width:100%;min-height:44px;font-size:16px;font-weight:400}.chat-filter-hint{margin:-8px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}.chat-form-filter{margin:0;padding:0;min-width:0;border:0}.chat-form-filter legend{padding:0;margin-bottom:6px}.chat-form-options{max-height:190px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;overscroll-behavior:contain}.chat-form-options label{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;padding:8px 12px;font-size:14px;font-weight:400;cursor:pointer;overflow-wrap:anywhere}.chat-form-options label+label{border-top:1px solid var(--border)}.chat-form-options input{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--teal)}.chat-more-menu{max-height:min(380px,60dvh);overflow-y:auto}.chat-more-menu .chat-placeholders{padding:0 12px;border-block:1px solid var(--border)}.chat-more-menu .chat-placeholders summary{font-size:13px;color:var(--text)}.chat-more-menu .chat-placeholders button{font-size:13px!important;padding:6px!important;border:0!important;background:transparent!important}.chat-more-menu .chat-placeholders>div{padding-bottom:8px}.chat-more-menu .chat-placeholders>div>span{display:none}.portal-content>h1{font-size:24px;font-weight:600}.fill-head h2,.portal-content h2{font-size:20px}.portal-header{gap:12px}.portal-brand{margin-inline-end:auto}.portal-header>select{width:auto;max-width:140px}.portal-attachment-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px}.messages-shell{height:calc(100dvh - 150px)}.messages-composer{flex-shrink:0}.chat-placeholders summary{cursor:pointer;color:var(--muted);font-size:13px;padding:6px 0}dialog.modal-backdrop{width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;color:var(--text);overflow:hidden}dialog.modal-backdrop:not([open]){display:none}dialog.modal-backdrop::backdrop{background:transparent}body:has(dialog[open]){overflow:hidden}.modal{max-height:calc(100dvh - 48px);display:flex;flex-direction:column;overflow:hidden}.modal-head,.modal-foot{flex-shrink:0}.modal-head{gap:12px}.modal-head h3{overflow-wrap:anywhere}.modal-body{overflow-y:auto;overscroll-behavior:contain;min-height:0}.modal-foot{flex-wrap:wrap}.modal .icon-x{min-width:44px;min-height:44px}.mobile-menu-account{display:grid;gap:12px;padding-top:18px;overflow-wrap:anywhere;font-size:14px}.mobile-navigation .nav a{color:var(--teal-dark);min-height:48px}.mobile-navigation .nav a.active{color:#fff}.mobile-navigation .nav a:hover:not(.active){background:var(--mint-soft)}@media(max-width:980px){:root{--mobile-header-height: calc(56px + env(safe-area-inset-top, 0px)) }.sidebar{display:none}.mobile-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;position:sticky;top:0;z-index:30;height:var(--mobile-header-height);padding:env(safe-area-inset-top,0px) max(12px,env(safe-area-inset-right,0px)) 0 max(12px,env(safe-area-inset-left,0px));background:#fff;color:var(--text);border-bottom:1px solid var(--border)}.mobile-header .brand-name{color:var(--text);font-size:16px}.mobile-header .brand-mark{width:26px;height:26px;font-size:15px;border-radius:7px;background:#f0f3f1;color:var(--teal)}.mobile-menu-button{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:8px;background:transparent;color:var(--muted);padding:8px;font:inherit;font-size:14px;cursor:pointer}.mobile-menu-button svg{width:19px;height:19px}.mobile-header .brand-actions button{min-width:44px;min-height:44px}.main{flex:1;min-height:0}.topbar{height:auto;min-height:52px;flex-shrink:0;padding:10px 16px;gap:10px;flex-wrap:wrap}.topbar h1{font-size:18px;overflow-wrap:anywhere}.content{padding:16px}.btn,.icon-x,.tabs button,.toggle,.nav a,.chat-more-button{min-height:44px}.btn{white-space:normal}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important;max-width:100%;min-width:0}input[type=checkbox],input[type=radio]{width:20px;height:20px;flex-shrink:0}.toolbar{flex-wrap:wrap;gap:12px}.toolbar .search{flex:1 1 180px;width:100%;min-width:0}.tabs{overflow-x:auto;flex-wrap:nowrap;max-width:100%}.tabs button{flex-shrink:0;white-space:nowrap}.dashboard-columns,.form-grid{grid-template-columns:minmax(0,1fr)}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-pad{padding:16px}.entry-head,.lab-staff-publish{flex-wrap:wrap}.entry{padding:16px;overflow-wrap:anywhere}.notification-panel{position:fixed!important;top:var(--mobile-header-height)!important;left:12px!important;width:calc(100vw - 24px)!important;max-height:calc(100dvh - 100px)!important}.patient-directory-table,.patient-directory-table tbody{display:block;width:100%}.patient-directory-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.patient-directory-table tr{display:grid;padding:12px 16px;border-bottom:1px solid var(--border)}.patient-directory-table td{display:flex;justify-content:space-between;gap:16px;padding:4px 0;border:0;white-space:normal;overflow-wrap:anywhere}.patient-directory-table td:before{content:attr(data-label);color:var(--muted);font-size:13px;font-weight:400;flex-shrink:0}.patient-directory-table td:first-child{padding-bottom:8px}.patient-directory-table td:first-child:before{display:none}.patient-directory-table td:first-child a{display:flex;align-items:center;min-height:44px;width:100%;font-size:15px;color:var(--text)}.shell:has(.messages-content){height:var(--app-viewport-height, 100dvh);min-height:0;overflow:hidden}.messages-content{display:flex;flex-direction:column;flex:1;min-height:0;padding:0}.messages-shell{flex:1;min-height:0;height:auto;border:0;border-radius:0}.messages-list{width:100%;flex:1 1 100%;border-right:0;min-height:0}.messages-shell:not(.has-selection) .messages-thread{display:none}.messages-shell.has-selection .messages-list{display:none}.main:has(.messages-shell.has-selection)>.topbar{display:none}.messages-thread{width:100%;min-height:0}.messages-thread-head{padding:6px 10px;flex-wrap:nowrap;gap:6px;flex-shrink:0}.messages-back,.messages-actions-toggle{display:inline-flex}.messages-thread-head>div:first-of-type{flex:1;overflow-wrap:anywhere}.messages-thread-actions{display:none}.messages-thread-actions .btn{flex:1;padding:6px 8px;font-size:13px}.messages-history{padding:18px 16px}.message-bubble-row{max-width:88%}.message-bubble-row.is-outbound .message-avatar{display:none}.messages-composer{max-height:55%;overflow-y:auto;overscroll-behavior:contain;padding:4px 12px 10px!important}.chat-composer-row{align-items:flex-end;margin-top:6px}.chat-composer-row textarea{min-height:60px;padding:10px 12px;border-radius:10px;background:#f7f8f7}.chat-more-button{width:44px;height:44px;border:0;background:transparent;color:var(--muted)}.chat-sender-row{flex-wrap:nowrap;gap:6px;margin-bottom:4px}.chat-sender-row label{white-space:nowrap}.chat-sender-row select{flex:1;width:0;min-height:44px;border:0;background:transparent;padding-left:6px;color:var(--text)}.chat-sender-row>.muted,.chat-composer-hint{display:none}.chat-placeholders summary{min-height:44px;display:flex;align-items:center}.messages-patient-panel,.patient-context-panel{padding-bottom:env(safe-area-inset-bottom,0px)}dialog.modal-backdrop{padding:12px;padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}.modal{max-height:calc(var(--app-viewport-height, 100dvh) - 24px);max-width:100%!important}.modal-head{padding:8px 14px}.modal-head h3{font-size:16px}.modal-body{padding:16px}.modal-foot{padding:12px 14px;gap:8px}.modal-foot .btn{flex:1 1 110px}.modal.mobile-navigation{align-self:start}.auth-card{padding:24px}.fill-wrap{min-height:100dvh;padding:20px 12px}.fill-nav{gap:10px}.fill-nav .btn{flex:1}.fill-card img{max-width:100%;height:auto}.rating-row{flex-wrap:wrap;gap:8px}.rating-row button{flex:1 0 44px;min-height:44px}.patient-portal{min-height:100dvh!important}.portal-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:6px 16px 10px!important;padding-top:max(6px,env(safe-area-inset-top,0px))!important}.portal-header>div{min-width:0}.portal-brand{min-height:36px}.portal-brand img{max-width:100%!important}.portal-header>select{min-height:44px;width:130px;border:0;background:transparent;color:var(--muted)}.portal-header-actions{grid-column:1 / -1;width:100%;flex-wrap:wrap}.portal-header-actions .btn{flex:1}.portal-content{padding:16px!important}.portal-chat-composer{flex-wrap:wrap}.portal-chat-composer textarea{flex:1 1 100%!important;min-height:88px}.portal-chat-composer>button{flex:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media(max-width:980px){.messages-composer:has(.chat-more-menu){overflow:visible}.chat-more-menu button{min-height:44px}}@media(max-width:980px){.stat{padding:16px}.stat .label{text-transform:none;letter-spacing:0;overflow-wrap:anywhere}}@media(min-width:981px)and (max-width:1200px){.messages-list{width:280px;flex-basis:280px}.messages-thread-head{flex-wrap:wrap}}@media(max-width:980px){.messages-panel-close,.patient-context-close{min-width:44px;min-height:44px}}@media(max-width:980px){.chat-placeholders button,.notification-panel button{min-height:44px}.chat-file-pill{max-width:100%;white-space:normal;overflow-wrap:anywhere}.chat-file-pill button{min-width:44px;min-height:44px}}.sms-template-editor{min-width:0;margin:24px 0;padding:18px 0;border:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.sms-template-editor legend{padding:0 8px 0 0;color:var(--teal-dark);font-weight:600;font-size:16px}.sms-template-intro{margin:0 0 16px;font-size:13px;line-height:1.5}.sms-template-editor textarea{min-height:116px;resize:vertical}.sms-template-editor button{min-height:40px}.sms-template-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;font-size:12px}.sms-template-tools .btn{min-height:40px;padding:6px 10px;font-size:12px}.sms-template-error{color:var(--red, #a82929);font-size:13px;margin:6px 0 0}.sms-template-error:empty{display:none}.sms-template-preview{background:var(--bg, #f4f7f7);border-left:3px solid var(--teal);border-radius:0 8px 8px 0;padding:12px 14px;overflow-wrap:anywhere}.sms-template-preview>span{font-size:12px}.sms-template-preview p{margin:6px 0 0;font-size:14px;line-height:1.6;white-space:pre-wrap}.sms-template-help{font-size:12px;line-height:1.5;margin:6px 0 0}.skip-link{position:fixed;left:12px;top:-80px;z-index:100;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.skip-link:focus{top:12px}.modal.more-menu{width:280px;max-height:calc(var(--app-viewport-height, 100dvh) - 32px);padding:0}.more-menu .modal-head{padding:8px 12px}.more-menu .modal-body{padding:8px}.dash-recent{background:var(--surface);color:var(--text);border:1px solid var(--border)}.dash-recent p,.dash-recent li span,.dash-recent-empty{color:var(--muted)}.dash-recent strong{color:var(--text)}.dash-recent a{color:var(--teal)}@media(max-width:760px){.mobile-top{position:sticky;top:0;z-index:30;height:var(--mobile-header-height);padding:env(safe-area-inset-top,0px) max(12px,env(safe-area-inset-right,0px)) 0 max(12px,env(safe-area-inset-left,0px))}.patient-context-float-toggle{bottom:calc(var(--tabbar) + 14px + env(safe-area-inset-bottom,0px))}.modal.more-menu{width:auto;max-height:calc(var(--app-viewport-height, 100dvh) - var(--tabbar) - 32px - env(safe-area-inset-bottom,0px))}.dash-head{gap:12px}.dash-hello{flex-basis:100%}.dash-search{flex-basis:100%;max-width:none}.dash-hello h1{font-size:26px}}.dash-workspace{max-width:none;gap:18px;padding:22px 28px 32px}.dash-workspace .dash-head{gap:16px}.dash-workspace .dash-hello h1{font-size:25px}.dash-workspace .dash-date{font-size:12px}.dash-workspace .dash-cta,.dash-workspace .dash-search{height:42px}.dash-highlights{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.dash-highlight{min-width:0;display:flex;flex-direction:column;gap:2px;padding:12px 16px;border:0;border-right:1px solid var(--border);border-radius:0;background:none;text-align:left;font:inherit;color:var(--text);cursor:pointer;text-decoration:none;transition:background .15s}.dash-highlight:last-child{border-right:0}.dash-highlight:hover:not(:disabled){background:var(--canvas);color:var(--text)}.dash-highlight:focus-visible{outline-offset:-3px}.dash-highlight:disabled{cursor:default;opacity:.65}.dash-highlight-label{display:flex;justify-content:space-between;align-items:center;gap:4px;font-size:13px;font-weight:600}.dash-highlight-label svg{flex-shrink:0;color:var(--muted)}.dash-highlight-value{font-size:24px;line-height:1.25;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.dash-highlight-detail{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.dash-worklist{min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.dash-worklist-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.dash-worklist-head h2{font-size:18px;display:flex;align-items:baseline;gap:10px}.dash-worklist-head h2 span{font-size:14px;font-variant-numeric:tabular-nums}.dash-worklist-head p{margin:2px 0 0;color:var(--muted);font-size:12px}.dash-list-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.dash-list-controls select{width:auto;max-width:100%;min-height:38px;padding:6px 32px 6px 10px;font-size:13px}.dash-refresh{padding:0;width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}.dash-context-link{font-size:13px;font-weight:600;padding:10px 4px}.dash-source-note{font-size:12px;color:var(--muted);margin:0;padding:10px 18px;border-bottom:1px solid var(--border)}.dash-list-empty{margin:0;padding:32px 18px;color:var(--muted)}.dash-work-table{table-layout:fixed}.dash-work-table thead th{text-transform:none;letter-spacing:normal;font-size:12px;padding:9px 18px;background:var(--canvas)}.dash-work-table th:nth-child(1){width:27%}.dash-work-table th:nth-child(2){width:34%}.dash-work-table th:nth-child(3){width:17%}.dash-work-table th:nth-child(4){width:18%}.dash-work-table th:nth-child(5){width:4%;padding:0}.dash-work-table td{padding:10px 18px;font-size:14px;overflow-wrap:anywhere;vertical-align:middle}.dash-work-table tbody tr{cursor:default}.dash-row-patient a{color:var(--text);font-weight:600;display:inline-block;padding:4px 0}.dash-row-patient a:hover{color:var(--teal);text-decoration:underline}.dash-row-task small{display:block;font-size:12px;color:var(--muted);margin-top:2px}.dash-row-age{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px!important}.dash-row-owner{color:var(--muted)}.dash-row-open{padding:0!important}.dash-row-open a{display:flex;width:100%;min-height:44px;align-items:center;justify-content:center}.dash-mobile-label{display:none}.dash-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 18px}.dash-pagination span{margin-right:auto;color:var(--muted);font-size:13px}.dash-statistics{display:flex;flex-wrap:wrap;gap:24px 48px;margin:0;padding:16px 0}.dash-statistics dt{color:var(--muted);font-size:13px}.dash-statistics dd{margin:4px 0 0;font-size:26px;font-weight:600;font-variant-numeric:tabular-nums}@media(max-width:1100px)and (min-width:761px){.dash-highlights{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-highlight:nth-child(3){border-right:0}.dash-highlight:nth-child(-n+3){border-bottom:1px solid var(--border)}}@media(max-width:760px){.dash-workspace{padding:14px 12px 24px;gap:14px}.dash-workspace .dash-head{gap:10px}.dash-workspace .dash-hello h1{font-size:23px}.dash-workspace .dash-cta{flex:0 1 auto;height:40px;font-size:13px;min-height:44px}.dash-workspace .dash-search{flex:1 1 180px;max-width:none}.dash-workspace .dash-hello{flex-basis:100%}.dash-highlights{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:10px}.dash-highlight{padding:10px 12px;border-bottom:1px solid var(--border)}.dash-highlight:nth-child(2n){border-right:0}.dash-highlight:nth-last-child(-n+2){border-bottom:0}.dash-highlight-label{font-size:12px}.dash-highlight-value{font-size:21px}.dash-highlight-detail{font-size:11px}.dash-worklist-head{padding:12px}.dash-list-controls{flex:1 1 100%}.dash-list-controls select{flex:1;min-width:0;width:0}.dash-work-table,.dash-work-table tbody{display:block;width:100%}.dash-work-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.dash-work-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto 32px;gap:3px 8px;padding:10px 12px;border-bottom:1px solid var(--border)}.dash-work-table td{display:block;border:0;padding:0;min-width:0}.dash-row-patient{grid-area:1 / 1 / 2 / 3}.dash-row-patient a{padding:0;min-height:24px}.dash-row-task{grid-area:2 / 1 / 3 / 3}.dash-row-task>span{font-size:12px;font-weight:500}.dash-row-task small{display:inline;margin:0 0 0 6px}.dash-row-age{grid-area:3 / 2;font-size:11px!important;text-align:right}.dash-row-owner{grid-area:3 / 1;font-size:11px!important}.dash-row-open{grid-area:1 / 3 / 4 / 4;align-self:center}.dash-mobile-label{display:inline}.dash-pagination{padding:10px 12px;flex-wrap:wrap}.dash-source-note{padding:10px 12px}}.dash .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.lab-markers-scroll{margin-top:10px;min-width:0;max-width:100%;overflow-x:auto}.lab-markers{min-width:28rem}.lab-markers .lab-measurement{white-space:nowrap;overflow-wrap:normal;word-break:normal}.modal.lab-report-preview{max-width:940px;width:min(940px,calc(100vw - 24px));height:calc(100dvh - 48px)}.lab-report-preview .modal-body{padding:0;display:flex;flex-direction:column;overflow:hidden;flex:1}.lab-report-print-help{margin:0;padding:10px 18px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--border)}.lab-report-preview .error{margin:12px 18px}.lab-report-preview iframe{display:block;border:0;width:100%;flex:1;min-height:0;background:#fff}@media(max-width:480px){.modal.lab-report-preview{height:calc(100dvh - 24px)}.lab-report-preview .modal-foot .btn{white-space:normal}}.lab-import-modal{width:min(900px,calc(100vw - 24px))}.lab-import-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.lab-import-facts div{min-width:0}.lab-import-facts dt{color:var(--muted);font-size:12px}.lab-import-facts dd{margin:4px 0 0;overflow-wrap:anywhere}.lab-import-observations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.lab-import-observation{min-width:0;padding:14px;border:1px solid var(--border);border-radius:10px}.lab-import-observation>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.lab-import-observation>div span{font-size:11px}.lab-import-observation p{margin:8px 0 0;overflow-wrap:anywhere}.lab-import-measurement{font-variant-numeric:tabular-nums}.lab-import-measurement strong{font-size:20px}.lab-import-source-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.lab-import-confirm{display:flex;align-items:flex-start;gap:10px;font-size:13px}.lab-import-confirm input{flex:0 0 auto;margin-top:3px}.lab-source-link{color:var(--teal-dark);text-decoration:underline}.lab-source-link:focus-visible{outline:2px solid var(--teal);outline-offset:4px}.lab-draft-marker-note{padding-top:14px;border-top:1px solid var(--border)}@media(max-width:600px){.lab-import-observations{grid-template-columns:minmax(0,1fr)}.lab-import-modal .modal-foot{flex-wrap:wrap}.lab-import-modal .modal-foot>button{flex:1 1 100%;white-space:normal}}.lab-source-partial{padding:10px 12px;border-left:3px solid #9a641b;background:#fff7e9;color:#614211;font-size:13px;line-height:1.5}.austria-test-banner{padding:8px 16px;background:#fff3cf;color:#513d06;font-size:12px;text-align:center;position:relative;z-index:9999;overflow-wrap:anywhere}.lab-manual-marker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:16px;align-items:center}.lab-manual-marker input,.lab-manual-marker select{min-width:0}@media(min-width:760px){.lab-manual-marker{grid-template-columns:1.4fr 1fr .8fr .8fr .8fr 1.1fr auto}}.lab-manual-field{display:grid;gap:4px;min-width:0}.lab-manual-field span{font-size:12px}
