:root{--ink:#173b38;--muted:#6a7f7d;--green:#167c70;--green-dark:#0b5d55;--mint:#eaf7f4;--line:#dbe8e5;--paper:#fff;--bg:#f4f8f7;--shadow:0 14px 35px rgba(20,72,66,.08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:44px;height:44px;border-radius:14px;background:var(--green);color:#fff;display:inline-grid;place-items:center;font-weight:800;letter-spacing:-1px}.brand strong,.brand small{display:block}.brand small{color:var(--muted);margin-top:2px}.topbar nav{display:flex;align-items:center;gap:28px;font-weight:650}.topbar nav a:hover{color:var(--green)}.future{color:#9aaaa8}.shell{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:38px 0 80px}.hero{background:linear-gradient(120deg,#0b5d55,#158678);border-radius:28px;color:#fff;padding:48px;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;box-shadow:var(--shadow)}h1,h2,h3,h4,p{margin-top:0}.hero h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.04;letter-spacing:-.045em;max-width:650px;margin:10px 0 16px}.hero p{color:#d9f4ef;font-size:1.08rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;font-weight:800;color:var(--green)}.hero .eyebrow{color:#a9e8de}.search{background:#fff;color:var(--ink);padding:20px;border-radius:20px}.search label{display:block;font-size:.82rem;font-weight:800;margin-bottom:9px}.search div{display:flex;gap:10px}.search input{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px 16px;font:inherit;outline:none}.search input:focus{border-color:var(--green);box-shadow:0 0 0 3px #cceee7}.search button,.button{border:0;border-radius:12px;background:var(--green);color:#fff;padding:12px 18px;font-weight:750;cursor:pointer;white-space:nowrap}.search button:hover,.button:hover{background:var(--green-dark)}.search.compact{box-shadow:var(--shadow);max-width:720px;padding:18px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0 44px}.stats article,.info-grid article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.stats span,.info-grid span{display:block;color:var(--muted);font-size:.84rem;font-weight:700}.stats strong{font-size:2rem;display:block;margin-top:6px}.section-heading,.page-title{display:flex;align-items:end;justify-content:space-between;margin:36px 0 18px}.section-heading h2,.page-title h1{margin:5px 0 0}.text-link{color:var(--green);font-weight:800}.patient-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.patient-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:15px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;transition:.15s}.patient-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#bbdcd5}.patient-card small,.patient-card strong{display:block}.patient-card small{color:var(--muted);margin-top:4px}.patient-card b{font-size:1.6rem;color:var(--green)}.avatar{width:46px;height:46px;border-radius:15px;background:var(--mint);color:var(--green-dark);display:grid;place-items:center;font-weight:850}.avatar.large{width:66px;height:66px;border-radius:21px;font-size:1.25rem}.result-count{color:var(--muted);margin:24px 0 12px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:18px}table{border-collapse:collapse;width:100%}th,td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--line)}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}td small,td strong{display:block}td small{color:var(--muted);margin-top:3px}.button.secondary{display:inline-block;background:var(--mint);color:var(--green-dark)}.patient-header{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end}.back{grid-column:1/-1;color:var(--green);font-weight:750}.patient-identity{display:flex;align-items:center;gap:16px}.patient-identity h1{margin:4px 0;font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:-.04em}.patient-identity p{margin:0;color:var(--muted)}.button.disabled{opacity:.45;cursor:not-allowed}.info-grid{display:grid;grid-template-columns:1fr 1fr 2fr;gap:14px;margin:28px 0}.info-grid strong{display:block;margin-top:6px}.clinical-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;margin-bottom:15px}.clinical-card summary{cursor:pointer;display:flex;justify-content:space-between;list-style:none}.clinical-card summary small,.clinical-card summary strong{display:block}.clinical-card summary small{color:var(--muted);margin-bottom:5px}.clinical-content{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.clinical-content>div,.timeline-item .clinical-card>div{background:#f8fbfa;border-radius:14px;padding:15px}.clinical-content h3,.timeline-item h4{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:var(--green);margin-bottom:8px}.timeline{border-left:2px solid #cce3de;margin-left:12px;padding-left:27px}.timeline-item{position:relative}.timeline-dot{width:13px;height:13px;border:3px solid var(--green);background:var(--bg);border-radius:50%;position:absolute;left:-34.5px;top:23px}.timeline-item .clinical-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.timeline-item h3{margin:7px 0 0}.badge{display:inline-block;border-radius:999px;padding:5px 9px;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;background:#e8f1ff;color:#245db2}.badge.informe{background:#f5eafa;color:#805090}.empty,.notice{background:#fff4df;border:1px solid #f1d89f;border-radius:14px;padding:16px}.setup-card{max-width:650px;margin:8vh auto;background:#fff;border:1px solid var(--line);border-radius:24px;padding:36px;text-align:center;box-shadow:var(--shadow)}.setup-card .brand-mark{margin-bottom:22px}.setup-card code{background:var(--mint);padding:2px 5px;border-radius:5px}footer{text-align:center;color:var(--muted);padding:28px 20px 95px;font-size:.88rem}.mobile-nav{display:none}
@media(max-width:760px){.topbar{height:68px;padding:0 18px}.topbar nav{display:none}.brand-mark{width:40px;height:40px}.shell{width:min(100% - 24px,1180px);padding-top:20px}.hero{grid-template-columns:1fr;padding:28px 22px;gap:22px;border-radius:22px}.hero h1{font-size:2.25rem}.search{padding:14px}.search div{display:grid}.stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:32px}.stats article{padding:14px}.stats strong{font-size:1.35rem}.stats span{font-size:.7rem}.patient-grid{grid-template-columns:1fr}.table-wrap{background:transparent;border:0;overflow:visible}table,tbody,tr,td{display:block}thead{display:none}tr{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:10px}td{border:0;padding:5px 2px}td:last-child{margin-top:8px}.button.secondary{display:block;text-align:center}.patient-header{grid-template-columns:1fr}.actions .button{width:100%;margin-bottom:8px}.info-grid{grid-template-columns:1fr 1fr}.info-grid .wide{grid-column:1/-1}.clinical-content{grid-template-columns:1fr}.timeline{padding-left:20px}.timeline-dot{left:-27.5px}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);z-index:20;padding:12px 8px calc(12px + env(safe-area-inset-bottom));text-align:center;font-size:.8rem;font-weight:750}.mobile-nav a{color:var(--green)}footer{padding-bottom:110px}}
.logout-form{margin:0}.logout-form button{border:0;background:transparent;color:var(--green);font:inherit;font-weight:750;cursor:pointer}.quick-action{display:flex;justify-content:flex-end;margin-top:18px}.auth-card{max-width:460px;margin:5vh auto;background:#fff;border:1px solid var(--line);border-radius:24px;padding:36px;box-shadow:var(--shadow)}.auth-card>.brand-mark{margin-bottom:22px}.auth-card h1{font-size:2.2rem;margin:8px 0}.auth-card>p{color:var(--muted)}.form-stack,.patient-form{display:grid;gap:18px}.form-stack label,.form-grid label{display:grid;gap:7px;font-size:.84rem;font-weight:800}.form-stack input,.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 14px;font:inherit;color:var(--ink);background:#fff}.form-stack input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px #cceee7}.form-stack small{color:var(--muted);font-weight:500}.form-error{background:#fff0ee;border:1px solid #efc0b9;color:#8b342b;border-radius:14px;padding:14px;margin:18px 0}.success-message{background:#e8f7ef;border:1px solid #b8e2cb;color:#236743;border-radius:14px;padding:14px;margin:20px 0}.patient-form{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;margin-top:24px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:20px}
@media(max-width:760px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.form-actions{display:grid}.page-title{align-items:center;gap:10px}.auth-card{margin:2vh auto;padding:25px 20px}.quick-action .button{width:100%;text-align:center}}
.form-page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}.form-page-header .back{display:block;margin-bottom:28px}.form-page-header h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.045em;margin:6px 0 8px}.form-page-header p{color:var(--muted);margin:0}.form-header-icon{width:74px;height:74px;flex:0 0 74px;border-radius:24px;background:var(--mint);color:var(--green);display:grid;place-items:center;font-size:2.5rem;font-weight:300}.patient-form-modern{display:grid;gap:18px}.form-section{background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 7px 22px rgba(20,72,66,.04)}.form-section>header{display:flex;align-items:center;gap:13px;padding:21px 24px;border-bottom:1px solid var(--line);background:#fbfdfc}.form-section>header h2{font-size:1.05rem;margin:0 0 3px}.form-section>header p{color:var(--muted);font-size:.82rem;margin:0}.section-number{width:34px;height:34px;border-radius:11px;background:var(--mint);color:var(--green-dark);display:grid;place-items:center;font-weight:850}.patient-form-modern .form-grid{padding:24px}.identity-grid{grid-template-columns:repeat(6,1fr)}.identity-grid label:nth-child(1){grid-column:span 2}.identity-grid label:nth-child(2),.identity-grid label:nth-child(3){grid-column:span 2}.identity-grid label:nth-child(4),.identity-grid label:nth-child(5){grid-column:span 3}.contact-grid{grid-template-columns:1fr 2fr}.patient-form-modern label{display:grid;align-content:start;gap:8px;color:var(--ink);font-size:.82rem;font-weight:800}.patient-form-modern label>span b{color:#cc5346}.patient-form-modern input,.patient-form-modern select,.patient-form-modern textarea{width:100%;border:1px solid #cfdedb;border-radius:12px;padding:13px 14px;font:inherit;color:var(--ink);background:#fff;transition:.15s}.patient-form-modern textarea{resize:vertical;min-height:92px}.patient-form-modern input::placeholder,.patient-form-modern textarea::placeholder{color:#a2b1af}.patient-form-modern input:focus,.patient-form-modern select:focus,.patient-form-modern textarea:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px #d9f1ec}.input-prefix{display:flex}.input-prefix i{width:45px;display:grid;place-items:center;border:1px solid #cfdedb;border-right:0;border-radius:12px 0 0 12px;background:#f1f7f5;color:var(--green-dark);font-style:normal;font-weight:850}.input-prefix input{border-radius:0 12px 12px 0}.form-actions-modern{position:sticky;bottom:74px;z-index:5;display:flex;align-items:center;justify-content:flex-end;gap:22px;margin-top:3px;padding:17px 20px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 30px rgba(20,72,66,.12);backdrop-filter:blur(8px)}.cancel-link{color:var(--muted);font-weight:750}.cancel-link:hover{color:var(--ink)}.save-button{min-width:190px;font-size:.95rem}.save-button span{margin-right:6px}
@media(max-width:760px){.form-page-header{align-items:flex-start;margin-bottom:20px}.form-page-header .back{margin-bottom:20px}.form-header-icon{width:52px;height:52px;flex-basis:52px;border-radius:17px;font-size:1.9rem}.form-section>header{padding:17px}.patient-form-modern .form-grid{padding:17px}.identity-grid,.contact-grid{grid-template-columns:1fr}.identity-grid label:nth-child(n){grid-column:auto}.form-actions-modern{bottom:67px;display:grid;grid-template-columns:1fr 2fr;gap:9px;padding:11px}.cancel-link{text-align:center}.save-button{min-width:0;width:100%;padding-left:8px;padding-right:8px}}
.patient-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.history-action{background:#9b6b34}.history-action:hover{background:#7d5428}.next-step-card{display:grid;grid-template-columns:auto 1fr;gap:18px;background:#fff;border:1px solid #badfd7;border-radius:22px;padding:24px;margin:24px 0;box-shadow:var(--shadow)}.next-step-card h2{margin:4px 0 7px}.next-step-card p{color:var(--muted)}.next-step-card>div>div{display:flex;gap:9px;flex-wrap:wrap}.next-step-icon{width:46px;height:46px;border-radius:15px;background:#dff5ea;color:#247450;display:grid;place-items:center;font-weight:900}.clinical-form-header{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:26px}.clinical-form-header .back{display:block;margin-bottom:27px}.clinical-form-header h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.045em;margin:5px 0 7px}.clinical-form-header p{color:var(--muted);margin:0}.patient-mini{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:12px 15px;min-width:190px}.patient-mini small,.patient-mini strong{display:block}.patient-mini small{color:var(--muted);font-size:.72rem;margin-bottom:3px}.clinical-form{display:grid;gap:18px}.clinical-form-section{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 7px 22px rgba(20,72,66,.04)}.clinical-form-section>header{display:flex;align-items:center;gap:13px;padding:20px 23px;border-bottom:1px solid var(--line);background:#fbfdfc}.clinical-form-section>header h2{font-size:1.05rem;margin:0 0 3px}.clinical-form-section>header p{font-size:.82rem;color:var(--muted);margin:0}.clinical-fields,.vital-grid,.soap-grid,.soap-date{padding:23px}.clinical-fields{display:grid;gap:17px}.clinical-fields.two-columns{grid-template-columns:1fr 1fr}.clinical-fields .full-field{grid-column:1/-1}.clinical-fields .compact-field{width:220px;grid-column:1/-1}.vital-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border-bottom:1px solid var(--line)}.clinical-form label{display:grid;align-content:start;gap:8px;font-size:.82rem;font-weight:800}.clinical-form label span b,.soap-grid strong b{color:#cc5346}.clinical-form input,.clinical-form textarea,.clinical-form select{width:100%;border:1px solid #cfdedb;border-radius:12px;padding:13px 14px;font:inherit;color:var(--ink);background:#fff}.clinical-form textarea{resize:vertical;line-height:1.5}.clinical-form input:focus,.clinical-form textarea:focus,.clinical-form select:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px #d9f1ec}.unit-input{display:flex}.unit-input input{border-radius:12px 0 0 12px}.unit-input i{min-width:48px;display:grid;place-items:center;border:1px solid #cfdedb;border-left:0;border-radius:0 12px 12px 0;background:#f1f7f5;color:var(--muted);font-style:normal;font-size:.75rem}.soap-date{padding-bottom:0}.soap-date label{width:220px}.soap-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.soap-grid label{grid-template-columns:auto 1fr;gap:5px 11px;background:#f8fbfa;border:1px solid var(--line);border-radius:17px;padding:16px}.soap-grid textarea{grid-column:1/-1;margin-top:7px;background:#fff}.soap-grid strong,.soap-grid small{display:block}.soap-grid small{font-weight:500;color:var(--muted);margin-top:3px}.soap-letter{width:35px;height:35px;border-radius:11px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:1rem}.clinical-form>.form-actions-modern{margin-bottom:10px}
@media(max-width:760px){.clinical-form-header{align-items:flex-start}.patient-mini{display:none}.patient-actions{display:grid;grid-template-columns:1fr}.patient-actions .button{margin:0}.next-step-card{grid-template-columns:1fr;padding:19px}.next-step-card>div>div{display:grid}.clinical-form-section>header{padding:17px}.clinical-fields,.vital-grid,.soap-grid,.soap-date{padding:17px}.clinical-fields.two-columns,.soap-grid{grid-template-columns:1fr}.clinical-fields .full-field{grid-column:auto}.clinical-fields .compact-field,.soap-date label{width:100%}.vital-grid{grid-template-columns:1fr 1fr}.clinical-form-header .back{margin-bottom:20px}}
.vitals-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:-2px 0 20px}.vitals-summary article{background:#eef7f5;border:1px solid #d7e9e5;border-radius:14px;padding:13px}.vitals-summary span,.vitals-summary strong{display:block}.vitals-summary span{font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:800}.vitals-summary strong{margin-top:4px}@media(max-width:760px){.vitals-summary{grid-template-columns:repeat(2,1fr)}.vitals-summary article:last-child{grid-column:1/-1}}
.consultation-workspace{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;align-items:start}.consultation-editor{min-width:0}.reference-column{display:grid;gap:12px;position:sticky;top:96px;max-height:calc(100vh - 115px);overflow:auto;padding-right:3px}.reference-card{background:#fff;border:1px solid var(--line);border-radius:19px;overflow:hidden}.reference-card summary{display:flex;justify-content:space-between;align-items:center;padding:17px 18px;cursor:pointer;list-style:none;background:#f5faf8}.reference-card summary::-webkit-details-marker{display:none}.reference-card summary small,.reference-card summary strong{display:block}.reference-card summary small{color:var(--green);font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;margin-bottom:3px}.reference-card summary b{color:var(--green);font-size:1.2rem}.reference-content{padding:14px}.reference-date{display:flex;align-items:center;justify-content:space-between;background:var(--mint);border-radius:11px;padding:10px 11px;margin-bottom:10px;font-size:.78rem}.reference-date span{color:var(--muted)}.reference-content section{border-bottom:1px solid var(--line);padding:12px 2px}.reference-content section:last-child{border-bottom:0}.reference-content h3{display:flex;align-items:center;gap:7px;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--green);margin:0 0 7px}.reference-content h3 i{width:25px;height:25px;border-radius:8px;background:var(--mint);display:grid;place-items:center;font-style:normal}.reference-content section>div{font-size:.82rem;line-height:1.5;color:#385c58;max-height:180px;overflow:auto}.reference-document{background:#fbf8f2;margin:9px -2px 0;padding:12px!important;border-radius:12px;border:0!important}.history-reference summary{background:#fbf8f2}.copy-button{justify-self:start;border:1px solid #b9dcd5;background:#fff;color:var(--green-dark);border-radius:9px;padding:7px 9px;font:inherit;font-size:.72rem;font-weight:800;cursor:pointer;margin-top:3px}.copy-button:hover{background:var(--mint)}.reference-document .copy-button{margin-top:10px}.empty-reference{text-align:center;padding:20px 8px;color:var(--muted)}.empty-reference strong{display:block;color:var(--ink);margin-bottom:7px}.empty-reference p{margin:0;font-size:.82rem}
@media(max-width:980px){.consultation-workspace{grid-template-columns:1fr}.reference-column{position:static;max-height:none;grid-row:1}.reference-card:not([open]) .reference-content{display:none}}
