:root{--teal: #0b7185;--teal-bright: #16a18b;--green: #14866d;--ink: #173447;--muted: #627581;--line: #d6e1e5;--field-border: #b9cbd2;--surface: #fff;--surface-muted: #f2f7f8;--success-soft: #e5f6f0;--success-ink: #086550;--warning-soft: #fff8e4;--warning-line: #d6b56c;--warning-ink: #694b0f;--danger-soft: #fdecef;--danger-ink: #913d47;--danger: #9b4650;--radius: 11px;--gutter: clamp(16px, 3vw, 40px);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--surface-muted);font-synthesis:none;-webkit-text-size-adjust:100%}*,*:before,*:after{box-sizing:border-box}html,body{overflow-x:hidden;overflow-x:clip}body{margin:0;min-height:100vh;min-height:100dvh;overflow-wrap:break-word}#root{min-height:inherit}img,canvas,svg,video{max-width:100%}button,input,select,textarea{font:inherit;max-width:100%}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}:focus-visible{outline:3px solid rgb(11 113 133 / 35%);outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{margin-bottom:8px;font-size:clamp(1.75rem,4.5vw,2.6rem);letter-spacing:-.04em;line-height:1.08}h2{margin-bottom:5px;font-size:1.2rem}code,.data-text{overflow-wrap:anywhere}label{display:grid;gap:7px;font-size:.82rem;font-weight:750}input,select,textarea{width:100%;min-width:0;border:1px solid var(--field-border);border-radius:var(--radius);color:var(--ink);background:var(--surface);font-size:16px}input{min-height:52px;padding:0 14px}select,textarea{min-height:50px;padding:12px 14px}textarea{min-height:90px;resize:vertical}.primary,.secondary,.danger-button{min-height:50px;min-width:0;max-width:100%;padding:10px 18px;overflow-wrap:anywhere;display:inline-flex;align-items:center;justify-content:center;text-align:center;border-radius:var(--radius);font-weight:800;text-decoration:none}.primary{border:0;color:#fff;background:linear-gradient(120deg,var(--teal),#0c8d8c);box-shadow:0 8px 18px #0b71852b}.secondary{border:1px solid #bfd0d6;color:var(--ink);background:var(--surface)}.danger-button{border:0;color:#fff;background:var(--danger)}.text-button{padding:8px 3px;border:0;color:var(--teal);background:transparent;font-weight:800;text-align:left}.mini{min-height:38px;padding:7px 10px;display:inline-flex;align-items:center;border:1px solid #bfd0d6;border-radius:8px;color:var(--ink);background:var(--surface);font-size:.74rem;font-weight:800}.mini.danger{color:var(--danger-ink)}.agreement{grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;font-size:.9rem;line-height:1.45}.agreement input{width:20px;min-height:20px;margin:0}.alert{padding:11px 13px;border-radius:9px;color:var(--danger-ink);background:var(--danger-soft);font-size:.82rem;font-weight:700}.reset-notice{margin:18px 0 0;padding:11px 13px;border-radius:9px;color:var(--success-ink);background:var(--success-soft);font-size:.82rem;font-weight:700}.readonly-banner,.local-preview-notice,.draft-warning{padding:12px 15px;border:1px solid var(--warning-line);border-radius:var(--radius);color:var(--warning-ink);background:var(--warning-soft);font-size:.86rem;line-height:1.45}.readonly-banner{margin:16px 0;font-weight:700}.local-preview-notice{margin:0}.empty{padding:20px;color:var(--muted);text-align:center}.lede{color:var(--muted);line-height:1.55}.eyebrow{margin-bottom:10px;color:var(--teal);font-size:.72rem;font-weight:850;letter-spacing:.16em}.local-note{margin:24px 0 0;color:var(--muted);font-size:.75rem;line-height:1.45}.spinner{width:30px;height:30px;border:3px solid #d5e2e5;border-top-color:var(--teal);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.center{min-height:100vh;min-height:100dvh;display:grid;place-items:center}.page-pad{padding:var(--gutter);padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right));padding-bottom:max(var(--gutter),env(safe-area-inset-bottom))}.content{width:min(1280px,100%);margin:0 auto}.card{border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 16px 44px #1c415214}.stack{display:grid;gap:16px;margin-top:24px}.app-header{min-height:64px;padding:10px var(--gutter);padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right));display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fffffff0}.user{min-width:0;display:flex;flex-wrap:wrap;gap:4px 15px;align-items:center;justify-content:flex-end;color:var(--muted);font-size:.82rem}.user-name{min-width:0;overflow-wrap:anywhere}.brand{display:flex;gap:13px;align-items:center;margin-bottom:28px}.brand>span{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(145deg,var(--teal),var(--teal-bright));font-weight:850}.brand.compact{margin:0}.brand.compact>span{width:38px;height:38px;border-radius:10px}.brand.compact strong{font-size:.95rem}.login-card{width:min(480px,100%);padding:clamp(24px,6vw,48px)}.transport-switch{margin:16px 0 20px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.transport-switch legend{padding:0 6px;font-weight:800}.transport-switch small{display:block;margin-top:9px;color:var(--muted)}.transport-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:8px;max-width:28rem}.transport-options label{position:relative;padding:10px 14px;border:1px solid var(--field-border);border-radius:10px;background:#f7fafb;cursor:pointer;font-weight:800;text-align:center}.transport-options label.active{border-color:var(--teal);color:var(--success-ink);background:var(--success-soft)}.transport-options input{position:absolute;inset:0;width:100%;min-height:0;height:100%;opacity:0;cursor:pointer}.search-label{max-width:44rem;margin-top:24px}.search{min-height:58px;font-size:1.05rem}.results{display:grid;gap:12px;margin-top:18px}.patient-row{width:100%;padding:16px 18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:6px 18px;border:1px solid var(--line);border-radius:14px;color:var(--ink);background:var(--surface);text-align:left}.patient-row:hover{border-color:#8bb7c0;box-shadow:0 7px 22px #1c415212}.patient-row .patient-name,.patient-row small{grid-column:1 / -1}.patient-row .patient-name{font-size:1.05rem;overflow-wrap:anywhere}.patient-row small{color:var(--teal);font-weight:750}.demographic-field{min-width:0;display:flex;gap:6px;align-items:baseline;color:var(--muted)}.demographic-field b{flex:none;min-width:3.5rem;color:var(--ink);font-size:.72rem;letter-spacing:.02em}.demographic-field>span{min-width:0}.back{margin-bottom:12px}.patient-banner{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:8px 24px;padding:12px 0 20px;border-bottom:1px solid var(--line)}.patient-banner .patient-name{overflow-wrap:anywhere}.demographics{min-width:0;display:grid;align-content:center;gap:7px;color:var(--muted)}.demographics strong{margin-top:4px;color:var(--teal)}.task-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:20px}.task{min-width:0;padding:clamp(16px,2.2vw,22px);box-shadow:none}.task.done{border-color:#91cdbd;background:#fbfffd}.task-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}.task-heading>div{min-width:0}.task-heading p{margin:0;color:var(--muted);line-height:1.45}.step{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--teal);font-weight:850}.done .step{background:var(--green)}.task-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.local-draft-status{color:var(--green);font-size:.82rem;font-weight:800}.final{width:100%}.blocked{display:block;margin-top:9px;color:var(--muted);text-align:center}.capture-workflow{display:grid;gap:14px}.capture-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:10px}.option{min-height:54px;padding:12px;grid-template-columns:22px minmax(0,1fr);align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:.86rem;cursor:pointer}.option input{width:19px;min-height:19px;margin:0}.selected-option{border-color:var(--teal);background:#edf8f8}.med-status{align-self:center;max-width:100%;padding:6px 10px;border-radius:999px;color:#365d6c;background:#e8f0f2;font-size:.75rem;font-weight:800;text-transform:capitalize;overflow-wrap:anywhere}.medication-review{display:grid;gap:14px}.review-progress{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;font-size:.9rem}.progress-track{height:8px;overflow:hidden;border-radius:999px;background:#e1eaed}.progress-fill{display:block;height:100%;border-radius:inherit;background:var(--green);transition:width .2s ease}.med-rows{display:grid;gap:10px}.med-row{min-width:0;padding:12px 14px;display:grid;gap:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.med-row.undecided{border-color:#9fc4cc;box-shadow:0 4px 14px #1c41520f}.med-row.decided{padding-block:8px;background:#f8fbfc}.med-row.decided.taking{border-color:#b9dccf}.med-row.decided.not_taking{border-color:#e3c2c6;background:#fffafb}.med-row-line{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.med-row-text{min-width:0;display:grid;gap:2px}.med-row-text strong{font-size:1rem}.med-row-text small{color:var(--muted)}.decision-mark{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-weight:900}.not_taking .decision-mark{background:var(--danger)}.decision-buttons{display:flex;flex-wrap:wrap;gap:10px}.decision{flex:1 1 9rem;min-height:52px;padding:10px 14px;border-radius:var(--radius);font-weight:850;font-size:1rem}.decision.taking{border:2px solid var(--green);color:#fff;background:var(--green)}.decision.not-taking{border:2px solid #c98d94;color:var(--danger-ink);background:#fff}.decision.chosen{outline:3px solid rgb(20 134 109 / 30%);outline-offset:2px}.row-tools{display:flex;flex-wrap:wrap;gap:4px 16px}.reason-prompt{display:grid;gap:6px;padding-left:38px}.reason-prompt small{color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:44px;min-width:0;max-width:100%;overflow-wrap:anywhere;padding:8px 14px;border:1px solid var(--field-border);border-radius:999px;color:var(--ink);background:#fff;font-size:.88rem;font-weight:750;text-align:left}.chip-on{border-color:var(--teal);color:var(--success-ink);background:var(--success-soft)}.note-editor{display:grid;gap:10px}.note-editor textarea{min-height:70px}.sr-label{font-size:0;gap:0}.sr-label>:is(input,textarea){font-size:16px}.confirm-all-button{width:100%}.confirm-all{padding:14px;display:grid;gap:10px;border:1px solid #91cdbd;border-radius:12px;background:#f1fbf7}.confirm-all p{margin:0;font-weight:750}.added-list{display:grid;gap:8px}.pick-label{margin:4px 0 0;color:var(--ink);font-size:.82rem;font-weight:800}.add-medication{display:grid;gap:10px;padding:14px;border:1px dashed #9fbcc4;border-radius:12px;background:#f8fbfc}.picked{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.picked strong{font-size:1.02rem}.drug-results{margin:0;padding:0;display:grid;gap:6px;list-style:none}.drug-result{width:100%;min-width:0;min-height:48px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff;font-weight:750;text-align:left}.drug-result:hover{border-color:var(--teal)}.search-hint{margin:0;color:var(--muted);font-size:.84rem}.add-confirm{width:100%}.inactive-medications{padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:#fafcfd}.inactive-medications summary{min-height:36px;display:flex;align-items:center;color:var(--muted);font-weight:800;cursor:pointer}.inactive-medications[open]{display:grid;gap:8px}.inactive-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;color:var(--muted);font-size:.88rem}.milestone-summary{margin-top:6px}.milestone-summary summary{cursor:pointer;color:var(--teal);font-size:.8rem;font-weight:800}.milestone-summary pre{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.8rem;color:var(--muted)}.capture-button,.download{width:fit-content;max-width:100%}.capture-button{position:relative;cursor:pointer}.capture-button input,.retake input{position:absolute;width:1px;height:1px;min-height:1px;padding:0;border:0;opacity:0;overflow:hidden;clip-path:inset(50%)}.retake{position:relative;cursor:pointer}.page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,10.5rem),1fr));gap:12px}.page-card{min-width:0;padding:10px;display:grid;gap:9px;border:1px solid var(--line);border-radius:12px;background:#f8fbfc}.page-preview{height:11rem;padding:8px;display:grid;place-items:center;overflow:hidden;border:0;border-radius:8px;background:#dfe9ec}.page-preview img{max-width:100%;max-height:100%;object-fit:contain}.page-actions{display:flex;flex-wrap:wrap;gap:5px}.pdf-ready,.capture-complete{padding:14px;display:grid;gap:5px;border:1px solid #91cdbd;border-radius:var(--radius);background:#f1fbf7}.pdf-ready span,.capture-complete span,.capture-complete small{color:var(--muted)}.download{margin-top:6px}.unable-section{margin-top:20px;text-align:center}.unable-trigger{color:#8a4148;text-align:center}.unable-form{padding:clamp(16px,2.2vw,22px);display:grid;gap:16px;text-align:left;border-color:#e0c4c7}.terminal-outcome{margin-top:20px;padding:24px;border-color:#d7b3b7;background:#fffafb}.terminal-outcome p{margin-bottom:8px}.terminal-outcome small{color:var(--muted)}.progress-card{margin-top:24px;padding:20px;border:1px dashed #9fbcc4;border-radius:16px;background:#edf7f7}.progress-card>p{color:var(--muted)}.progress-card ol{display:grid;gap:9px;margin:0;padding-left:25px}.progress-card li span{display:block;margin-top:2px;color:var(--muted);font-size:.78rem;text-transform:capitalize}.local-reset{margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.local-reset p{color:var(--muted);line-height:1.45}.modal-backdrop{position:fixed;z-index:20;inset:0;overscroll-behavior:contain}.modal-centered{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));display:grid;place-items:center;background:#102a379e}.modal-card{width:min(34rem,100%);max-height:100%;padding:clamp(18px,3vw,28px);overflow-x:hidden;overflow-y:auto;border-radius:18px;background:var(--surface);box-shadow:0 20px 60px #102a374d}.modal-card:focus,.consent-modal:focus{outline:none}.modal-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;align-items:start}.close-button{min-height:44px;justify-self:end}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.modal-actions>button{flex:1 1 11rem}.image-preview{width:min(56rem,100%);height:min(90dvh,56rem);display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px}.image-preview-frame{min-height:0;display:grid;place-items:center;overflow:hidden;border-radius:10px;background:#eef3f5}.image-preview-frame img{width:100%;height:100%;object-fit:contain}.modal-fullscreen{background:var(--surface)}.consent-modal{position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:max(clamp(16px,2.5vmin,28px),env(safe-area-inset-top)) max(clamp(16px,2.5vmin,28px),env(safe-area-inset-right)) max(clamp(16px,2.5vmin,28px),env(safe-area-inset-bottom)) max(clamp(16px,2.5vmin,28px),env(safe-area-inset-left));background:var(--surface)}.consent-inner{width:min(1400px,100%);margin:0 auto}.consent-modal h1{font-size:clamp(1.4rem,4vw,2.3rem)}.draft-warning{margin-bottom:0}.consent-patient{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:12px;margin:16px 0;padding:16px;border-radius:12px;background:#f1f6f7}.consent-patient>span{min-width:0;display:grid;gap:4px;color:var(--muted);font-size:.86rem}.consent-patient strong{color:var(--ink);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.consent-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(16px,2.5vmin,28px)}.consent-documents{min-width:0;display:grid;gap:14px}.consent-copy{min-width:0;padding:clamp(14px,2vmin,22px);border:1px solid var(--line);border-radius:12px;line-height:1.6}.consent-copy h2{overflow-wrap:anywhere}.consent-clause+.consent-clause{margin-top:18px}.consent-clause h3{margin-bottom:8px;overflow-wrap:anywhere}.consent-conclusion{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-style:italic}.consent-markdown{overflow-wrap:anywhere}.consent-markdown>:first-child{margin-top:0}.consent-markdown>:last-child{margin-bottom:0}.consent-markdown :where(ul,ol,blockquote){margin-inline:0;padding-inline-start:min(1.5em,6vw)}.consent-markdown pre{white-space:pre-wrap}.consent-markdown table{width:100%;table-layout:fixed;border-collapse:collapse}.consent-markdown :where(th,td){padding:6px;border:1px solid var(--line);vertical-align:top}.consent-form{min-width:0;display:grid;gap:16px}.signature-field{display:grid;gap:9px}.signature-label{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px}.signature-label span{color:var(--muted);font-size:.78rem}.signature-canvas{display:block;width:100%;height:clamp(140px,24dvh,220px);border:2px solid #aec3ca;border-radius:10px;background-color:#fff;background-image:linear-gradient(to bottom,transparent 82%,#d7e1e4 82%,#d7e1e4 83%,transparent 83%);touch-action:none;cursor:crosshair}.signature-actions{min-height:36px;display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:space-between;align-items:center}.signature-actions span{color:var(--green);font-size:.8rem;font-weight:800}.preview-inner{display:grid;gap:18px}.preview-section{display:grid;gap:12px}.preview-section h2,.preview-section .lede{margin:0}.chat-messages,.odoo-updates{margin:0;padding:0;display:grid;gap:12px;list-style:none}.chat-message,.odoo-update{min-width:0;padding:14px 16px;display:grid;gap:8px;border:1px solid var(--line);border-radius:14px;background:#f7fafb}.chat-message{border-left:4px solid var(--teal)}.odoo-update{border-left:4px solid #714b67}.chat-meta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;color:var(--muted);font-size:.82rem}.milestone-badge{padding:3px 10px;border-radius:999px;color:#fff;background:var(--teal);font-size:.75rem;font-weight:850}.odoo-update .milestone-badge{background:#714b67}.message-text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.update-action{margin:0;font-weight:800}.update-label{margin:0;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.ticket-fields{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:10px 18px;padding:14px 16px;border-radius:12px;background:#f1f6f7}.ticket-fields.compact{padding:0;background:none}.ticket-field{min-width:0;display:grid;gap:2px}.ticket-field dt{color:var(--muted);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.ticket-field dd{margin:0}.tbc{color:#8a5a00;font-style:italic}@media(orientation:landscape)and (max-height:820px){.page-pad{padding-top:14px;padding-bottom:max(14px,env(safe-area-inset-bottom))}.readonly-banner,.transport-switch{margin-block:10px}.patient-banner{padding-block:8px 14px}.task{padding:14px}.task-heading{gap:12px;margin-bottom:12px}.signature-canvas{height:clamp(130px,22dvh,180px)}}@media(max-width:520px){.login-card{min-height:100dvh;border:0;border-radius:0;box-shadow:none}.center.page-pad{padding:0;background:var(--surface)}.user-name{display:none}.modal-actions>button{flex-basis:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
