/* AtrioMed · Web31. Notebook first: interfaz amplia; detalles progresivos. */
:root{--sidebar:238px;--top:78px;--radius:22px;--muted:#a8c2c6;--c-soft:rgba(89,227,194,.065)}
body{overflow-wrap:break-word}body.modal-open{overflow:hidden}
button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--teal);outline-offset:4px}
button .icon,a .icon{pointer-events:none}h1,h2,h3,h4,p{overflow-wrap:anywhere}
.content{max-width:1620px;padding:28px 34px 42px;margin:0 auto}.workspace{min-width:0}
.page{gap:20px}.page-head h2{font-size:clamp(1.8rem,2.3vw,2.65rem);letter-spacing:-.035em;line-height:1.16}
.page-head p{max-width:70ch}.page-head>div{min-width:0}.page-actions{flex-wrap:wrap}
.sidebar{padding:26px 16px 20px}.sidebar-brand img{max-width:180px}.topbar{height:var(--top)}
.card{min-width:0}.btn{min-height:44px;white-space:normal;justify-content:center}.btn.small{min-height:38px}.btn.tiny{min-height:32px}
.field{min-width:0}.field input,.field select,.field textarea{min-width:0;width:100%;box-sizing:border-box;max-width:100%}.field textarea{min-height:96px;resize:vertical;line-height:1.5}
.form-grid{gap:18px}.form-grid.two{align-items:start}.field span{font-size:.86rem}.field input[type=checkbox]{width:18px;height:18px;vertical-align:middle;margin-right:8px}
.c-page .card h3{margin:0 0 6px}.c-page .card p{margin:5px 0 12px}.c-page .card{position:relative}
/* Login: una composición centrada, no una pantalla móvil a un costado. */
.auth-layout{display:grid;grid-template-columns:1fr;isolation:isolate;min-height:100dvh;overflow:visible}
.auth-brand-panel{display:none}.auth-form-panel{display:flex;justify-content:center;align-items:center;min-height:100dvh;padding:90px 24px 60px;background:transparent;position:relative}
.auth-layout:before,.auth-layout:after{content:"";position:fixed;width:min(70vw,820px);height:min(70vw,820px);border:1px solid rgba(89,227,194,.13);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);z-index:-1;pointer-events:none}
.auth-layout:after{width:min(84vw,1050px);height:min(84vw,1050px);border-color:rgba(112,184,255,.08);animation:c-breathe 12s ease-in-out infinite}
.auth-card{width:min(100%,520px);max-width:520px;background:linear-gradient(145deg,rgba(20,57,72,.97),rgba(7,29,43,.98));box-shadow:0 38px 120px #0006,0 0 90px #59e3c20b;border-color:rgba(142,218,218,.22);padding:36px 38px}
.auth-card.wide{width:min(100%,820px);max-width:820px}.auth-card-head{padding-bottom:15px;border-bottom:1px solid var(--line);margin-bottom:24px}.auth-card h2{font-size:2.15rem}.auth-card>p{color:var(--muted)}
.back-site{position:absolute;left:32px;right:auto;top:26px}.auth-card .form-grid{gap:16px}.auth-card .btn.full{margin-top:8px}
/* Área clínica */
.c-loading{display:flex;align-items:center;justify-content:center;gap:14px;min-height:180px;color:var(--muted)}
.c-spinner{height:25px;width:25px;border:2px solid var(--line);border-top-color:var(--teal);border-radius:50%;animation:c-spin 1s linear infinite}
.c-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;min-height:165px;padding:28px;color:var(--muted);width:100%;grid-column:1/-1}
.c-empty>.icon{width:28px;height:28px;margin-bottom:6px;color:var(--teal);opacity:.75}.c-empty b{color:var(--text);font-size:.98rem}.c-empty span{font-size:.88rem;max-width:52ch}
.c-doctor-hero{overflow:hidden;background:linear-gradient(125deg,rgba(24,68,80,.98),rgba(10,34,50,.98));padding:26px}
.c-doctor-hero:after{content:"";position:absolute;right:-140px;top:-180px;width:470px;height:470px;border-radius:50%;border:1px solid #59e3c21c;box-shadow:0 0 0 65px #59e3c208,0 0 0 130px #59e3c205;pointer-events:none;animation:c-breathe 12s ease-in-out infinite}
.c-doctor-identity{display:flex;gap:18px;align-items:center;position:relative;z-index:1}.c-doctor-identity h3{font-size:1.5rem;letter-spacing:-.02em;margin-top:8px!important}.c-doctor-identity p{color:var(--muted);text-transform:capitalize}
.c-doctor-avatar{width:82px!important;height:82px!important;aspect-ratio:1;flex:0 0 82px;object-fit:cover!important;object-position:50% 28%!important;border-radius:22px;border:3px solid #bbe5e526;display:block;max-width:none}
.c-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px;position:relative;z-index:1}
.c-metric{min-width:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:5px;background:rgba(2,19,32,.3);border:1px solid var(--line);border-radius:18px;padding:17px 20px;color:var(--text)}
.c-metric>span{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:.89rem}.c-metric>b{font-size:2rem;letter-spacing:-.04em;line-height:1.4}.c-metric>small{display:flex;align-items:center;gap:8px;font-size:.77rem;color:var(--muted)}.c-metric>small .icon{width:15px;height:15px}
.c-metric:hover,.c-metric.selected{border-color:#59e3c25e;background:#59e3c211;transform:translateY(-2px)}.c-metric.selected span,.c-metric.selected small{color:var(--teal)}
.c-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.c-toolbar>div{min-width:0}.c-toolbar h3{margin:0}.c-toolbar p{font-size:.9rem;color:var(--muted);margin:5px 0 0!important}
.c-segment{display:flex;flex-wrap:wrap;border:1px solid var(--line);background:#031b2780;border-radius:14px;padding:4px;gap:4px}.c-segment button{border:0;color:var(--muted);background:transparent;padding:9px 14px;border-radius:10px;font-size:.84rem;min-height:36px}.c-segment button.active{background:#59e3c217;color:var(--teal)}
.c-search{display:flex;gap:8px;min-width:0;flex:0 1 340px}.c-search input{min-width:0;flex:1;width:100%;border:1px solid var(--line);border-radius:12px;background:#061c2ac4;color:var(--text);padding:10px 12px}.c-search button{flex-shrink:0}
.c-appointments{display:grid;gap:12px}.c-appointment{display:grid;grid-template-columns:96px minmax(150px,1fr) auto;gap:18px;align-items:center;padding:17px 18px;border:1px solid var(--line);border-radius:17px;background:#ffffff03}.c-appointment:hover{border-color:#91dbd52d;background:#59e3c206}
.c-date{padding-right:14px;border-right:1px solid var(--line);display:grid;gap:3px}.c-date b{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.c-date strong{font-size:1.3rem;font-weight:650}.c-appointment-info{min-width:0}.c-appointment-info h4{font-size:1rem;margin:5px 0 0}.c-appointment-info p{font-size:.83rem;color:var(--muted);margin:2px 0 0!important}
.c-row-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}.c-appointment>.c-row-actions{justify-content:flex-end}
.c-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:20px;font-size:.8rem;color:var(--muted)}.c-pagination>span{margin-right:auto}
.c-tag{display:inline-flex;align-items:center;max-width:100%;padding:4px 10px;font-size:.72rem;line-height:1.5;font-weight:650;letter-spacing:.015em;background:rgba(178,202,209,.07);color:var(--muted);border:1px solid var(--line);border-radius:9px;overflow-wrap:anywhere}.c-tag.teal{background:#59e3c211;color:#98f2db;border-color:#59e3c230}.c-tag.gold{background:#ffc85f0d;color:#f6d89e;border-color:#ffc85f29}.c-tag.warn{background:#ff7c7012;color:#ffb2a9;border-color:#ff7c702d}.c-tags,.c-summary-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.c-patient-list{display:grid;gap:12px}.c-patient-row{display:grid;grid-template-columns:60px minmax(150px,1fr) auto;align-items:center;gap:16px}.c-patient-row>img{width:60px;height:60px;object-fit:cover;object-position:50% 30%;border-radius:18px}.c-patient-row h3{font-size:1.05rem}.c-patient-row p{font-size:.87rem;color:var(--muted)}.c-patient-row small{color:var(--muted)}
.c-patient-summary{display:grid;grid-template-columns:82px minmax(180px,1fr) auto;gap:20px;align-items:center}.c-patient-summary h3{font-size:1.22rem}.c-patient-summary p{color:var(--muted);font-size:.88rem}
.c-tabs{margin:0;flex-wrap:wrap;gap:7px;overflow:visible;min-width:0}.c-tabs button{min-height:44px;padding:10px 13px;font-size:.8rem;flex:0 1 auto}.c-tabs button[aria-selected=true]{background:#59e3c21a;border-color:#59e3c238;color:#d7fff4}
#cPatientPanel,#cHealthPanel{display:grid;gap:18px;min-width:0}.c-summary-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,1fr);gap:18px;align-items:start}.c-summary-grid>.card{height:100%}
.c-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.c-action-grid .btn{display:flex;align-items:center;justify-content:flex-start;padding:15px;min-height:65px;text-align:left;background:#ffffff04;border:1px solid var(--line);color:var(--text)}.c-action-grid .btn:hover{background:var(--c-soft);border-color:#59e3c241}
.c-notice{display:flex;gap:11px;align-items:flex-start;padding:13px 15px;border:1px solid #8cbbb12b;border-radius:13px;background:#7aa19a09;color:var(--muted);font-size:.81rem;line-height:1.6;margin:14px 0}.c-notice>.icon{margin-top:2px;width:17px;height:17px;color:#91c9c1}.c-notice a{text-decoration:underline}
.c-filter-field{max-width:320px;margin-bottom:18px}.c-record{position:relative;border:1px solid var(--line);border-left:3px solid #59e3c247;border-radius:15px;padding:18px;background:#ffffff02;margin-bottom:12px;min-width:0}.c-record h4{font-size:1rem;margin:8px 0}.c-record .c-toolbar{margin-bottom:5px}.c-record-line{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.8rem}.c-record p{font-size:.88rem;line-height:1.65;color:#cfe0e2;white-space:pre-wrap}.c-record small{color:var(--muted)}.c-prose{white-space:pre-wrap;line-height:1.7;color:#ccdee1}.c-text-space{white-space:pre-wrap}
.c-care-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.c-care-grid .c-record{margin:0}.c-med-list{display:grid;gap:12px}.c-med-list .c-record{margin:0}.c-legacy{margin-top:18px}.c-legacy>summary{cursor:pointer;font-size:.9rem;color:#c9dcde;padding:4px 0}.c-legacy[open]>summary{margin-bottom:16px}.c-legacy>p{color:var(--muted);font-size:.83rem}
.c-measure-picker{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:20px}.c-measure-picker button{background:#071e2bb0;border:1px solid var(--line);border-radius:13px;min-height:86px;padding:12px 8px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;color:var(--muted);font-size:.79rem}.c-measure-picker button.active{border-color:#59e3c25c;background:#59e3c213;color:#bdffed}.c-measure-picker button .icon{width:22px;height:22px}.c-measure-picker button:hover{border-color:#59e3c238}
.c-value{font-size:1.35rem;font-weight:650;letter-spacing:-.02em;color:var(--text)}.c-value small{font-size:.8rem;font-weight:400;color:var(--muted)}
.c-chart{width:100%;height:auto;max-height:265px;margin:10px 0 20px;background:linear-gradient(180deg,#59e3c204,transparent);overflow:visible}.c-chart-line{fill:none;stroke:var(--teal);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.c-chart-line.secondary{stroke:#84bffa;stroke-dasharray:5 4}.c-chart-point{fill:var(--teal);stroke:#103141;stroke-width:2}.c-chart-point.secondary{fill:var(--blue)}.c-chart-axis{stroke:#bfd9de25;stroke-width:1}.c-chart text{fill:#a5c0c4;font-family:inherit;font-size:11px}.c-chart circle:focus{outline:none;stroke:var(--text);stroke-width:3}
.c-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:15px;margin-top:14px}.c-table{width:100%;border-collapse:collapse;text-align:left;font-size:.85rem}.c-table th{font-weight:650;color:var(--muted);padding:12px 14px;background:#061c2955;white-space:nowrap}.c-table td{padding:13px 14px;border-top:1px solid var(--line);color:#d5e6e7}.c-table tr:hover td{background:#ffffff02}.c-table td small{color:var(--muted);display:block}.c-table .btn{white-space:nowrap}.c-table td:first-child{min-width:145px}
.c-cycle-grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:18px;align-items:start}.c-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:14px}.c-calendar>div,.c-calendar>span,.c-calendar>small{display:flex;align-items:center;justify-content:center;min-height:38px;border-radius:10px;text-align:center;font-size:.84rem}.c-calendar .recorded,.c-calendar .period{background:#c997e021;color:#ebcffa;border:1px solid #d09be344}.c-calendar .today{box-shadow:inset 0 0 0 1px #59e3c298}.c-calendar .muted{opacity:.25}.c-calendar>b{font-size:.75rem;color:var(--muted);text-align:center;padding:8px}.c-optin{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:35px;max-width:720px;margin:0 auto}.c-optin h3{font-size:1.55rem}.c-optin p{max-width:56ch;color:var(--muted)}.c-large-icon{display:grid;place-items:center;width:70px;height:70px;border-radius:24px;background:#d395ee17;color:#e2b6f0;margin-bottom:8px}.c-large-icon>.icon{width:34px;height:34px}
.c-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.c-document{border:1px solid var(--line);border-radius:17px;padding:18px;display:flex;flex-direction:column;gap:9px;background:#ffffff02;min-width:0}.c-document h4{margin:0;font-size:1rem}.c-document p{margin:2px 0!important;font-size:.85rem;line-height:1.55;color:var(--muted);white-space:pre-wrap}.c-document small{color:var(--muted);font-size:.78rem}.c-document .c-row-actions{margin-top:auto;padding-top:10px}.c-doc-icon{display:flex;align-items:center;gap:9px;color:var(--teal);margin-bottom:2px}.c-upload{display:flex;flex-direction:column;gap:9px;border:1px dashed #59e3c24f;border-radius:14px;padding:18px;background:#59e3c206;color:var(--muted)}.c-upload input{max-width:100%}
.c-referral{padding:18px;border:1px solid var(--line);background:#ffffff02;border-radius:17px;margin-bottom:14px}.c-referral h4{margin:12px 0 6px}.c-referral p{white-space:pre-wrap;color:#cfdee1;font-size:.89rem}.c-referral .c-row-actions{margin-top:14px}.c-referral .icon{display:inline-block;vertical-align:middle;width:16px;height:16px}
.c-campaign-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.c-campaign.card{padding:0;overflow:hidden;display:flex;flex-direction:column}.c-campaign-cover{min-height:150px;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:25px;background:radial-gradient(circle at 10% 0%,#59e3c223,transparent 75%),linear-gradient(135deg,#163f50,#163641);position:relative;overflow:hidden}.c-campaign-cover:after{content:"";width:230px;height:230px;border:1px solid #97e3d12b;border-radius:50%;position:absolute;right:-60px;top:-145px;box-shadow:0 0 0 38px #59e3c209,0 0 0 75px #59e3c208;pointer-events:none;animation:c-breathe 14s ease-in-out infinite}.c-campaign-cover>span{width:66px;height:66px;display:grid;place-items:center;border:1px solid #b8f1e627;background:#a6dfd516;border-radius:22px;color:#a3f5e1}.c-campaign-cover>span .icon{width:33px;height:33px}.c-campaign-cover>div{text-align:right;position:relative;z-index:1}.c-campaign-cover p{font-weight:650;margin:12px 0 0!important;font-size:.95rem}.c-campaign-body{padding:23px;display:flex;flex-direction:column;gap:10px;flex:1}.c-campaign-body h3{font-size:1.26rem}.c-campaign-body>p{color:var(--muted);font-size:.9rem}.c-campaign-body small{font-size:.76rem;color:var(--muted);line-height:1.7}.c-campaign-body>.c-row-actions{margin-top:auto;padding-top:12px}.c-campaign-meta{display:grid;gap:10px;font-size:.82rem;color:#bcd5d5;margin:2px 0 8px}.c-campaign-meta>span{display:flex;align-items:flex-start;gap:9px}.c-campaign-meta .icon{width:16px;height:16px;margin-top:2px;opacity:.7}.c-clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.c-peer-list{display:grid;gap:12px}.c-peer{display:grid;grid-template-columns:56px minmax(120px,1fr) auto;align-items:center;gap:16px;text-align:left;color:var(--text);cursor:pointer}.c-peer img{width:56px;height:56px;border-radius:17px;object-fit:cover;object-position:50% 30%}.c-peer h4{font-size:1rem;margin:0 0 3px}.c-peer p{font-size:.89rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);margin:0!important}.c-peer small{color:var(--muted);font-size:.77rem}.c-peer:hover{background:#103344;border-color:#59e3c249}
.c-chat-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;color:var(--muted);font-size:.78rem}.c-chat-tools>div{display:flex;gap:7px;flex-wrap:wrap}.c-chat-thread{min-height:200px;max-height:46dvh;overscroll-behavior:contain;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 4px;gap:10px}.c-chat-thread .bubble{min-width:110px;width:fit-content}.c-chat-thread .bubble p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.9rem}.c-chat-thread .bubble .btn{margin:8px 0;font-size:.8rem}
.c-chat-compose{display:grid;grid-template-columns:auto minmax(80px,1fr) auto;gap:10px;margin-top:16px;align-items:end}.c-chat-compose textarea{width:100%;min-height:46px;max-height:150px;resize:vertical;border:1px solid var(--line);border-radius:13px;background:#041b29;color:var(--text);padding:11px 13px;line-height:1.45}.c-chat-compose .btn{min-height:46px}
.c-emergency-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.c-emergency-card{border:1px solid var(--line);border-radius:17px;padding:20px;background:#ffffff02}.c-emergency-card h4{margin:0 0 5px;font-size:1rem}.c-emergency-card p{color:var(--muted);font-size:.83rem}.c-emergency-card strong{display:block;font-size:1.7rem;margin:10px 0;letter-spacing:.02em}.c-emergency-card small{color:var(--muted);display:block;font-size:.76rem}.c-emergency-card .c-row-actions{margin-top:14px}
/* Formularios / selectores con teclado y alternativas táctiles */
.c-combo{position:relative;min-width:0}.c-combo>input{width:100%;height:47px;border:1px solid var(--line);border-radius:12px;padding:10px 13px;color:var(--text);background:#061c2a}
.c-combo-list{position:relative;z-index:5;width:100%;max-height:220px;overflow-y:auto;border:1px solid #75cfbd57;border-radius:12px;background:#0c2b3b;box-shadow:0 14px 35px #0004;margin-top:6px;padding:5px;overscroll-behavior:contain}.c-combo-list button{width:100%;display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;border:0;border-radius:9px;padding:11px;color:var(--text);background:transparent;min-height:40px}.c-combo-list button b{font-size:.89rem;font-weight:600}.c-combo-list button small{color:var(--muted);font-size:.77rem}.c-combo-list button:hover,.c-combo-list button.active,.c-combo-list button[aria-selected=true]{background:#59e3c216}.c-combo-empty{display:block;padding:14px;color:var(--muted);font-size:.86rem}
.c-inline-error{color:#ffd4cd;background:#a8342326;border:1px solid #f9978644;padding:12px 15px;border-radius:12px;font-size:.87rem}
.c-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:5px;padding-top:16px;border-top:1px solid var(--line);position:sticky;bottom:-27px;background:linear-gradient(0deg,#0a2937 82%,transparent);padding-bottom:15px;z-index:6}.c-form-actions .btn{min-width:115px}
.modal-panel{max-height:90dvh;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#426876 #0b2a39}.modal-panel.wide{width:min(920px,calc(100vw - 48px))}.modal-panel:focus{outline:none}.modal-head{align-items:flex-start}.modal-close{flex:0 0 39px}.modal-head h3{font-size:1.4rem}.modal-head p{font-size:.9rem}.modal-head>div{min-width:0}.modal-panel>.form-grid>p.help{margin:0}.modal-panel .card{padding:18px;margin-bottom:12px}.modal-panel input[type=file]::file-selector-button{border:1px solid var(--line);border-radius:9px;padding:9px;background:#174554;color:var(--text);margin-right:12px}
.toast{max-width:calc(100vw - 36px);width:max-content;font-size:.9rem}.c-tabs button .icon{width:17px;height:17px}
@keyframes c-spin{to{transform:rotate(360deg)}}@keyframes c-breathe{0%,100%{opacity:.55}50%{opacity:1}}
@media(min-width:1700px){.content{padding-top:36px}.c-summary-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}
@media(max-width:1200px){:root{--sidebar:215px}.content{padding:23px}.c-appointment{grid-template-columns:82px minmax(140px,1fr);gap:14px}.c-appointment>.c-row-actions{grid-column:2;justify-content:flex-start}.c-measure-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.c-summary-grid{grid-template-columns:1fr}.c-patient-summary{grid-template-columns:70px minmax(0,1fr)}.c-patient-summary>.btn{grid-column:2;justify-self:start}.c-patient-summary .c-doctor-avatar{width:70px!important;height:70px!important;flex-basis:70px}.c-cycle-grid{grid-template-columns:1fr}.c-cycle-grid .c-calendar{max-width:500px;margin-inline:auto}}
@media(max-width:860px){:root{--top:72px}.content{padding:18px 18px 30px}.topbar{height:72px}.sidebar{padding:25px 18px}.c-page .page-head{gap:14px;align-items:flex-start}.c-doctor-hero{padding:20px}.c-metrics{gap:9px}.c-metric{padding:14px}.c-metric>small .icon{display:none}.c-metric>small{font-size:.7rem}.c-metric>b{font-size:1.65rem}.c-metric>span{font-size:.79rem}.c-doctor-identity h3{font-size:1.3rem}.c-summary-grid{grid-template-columns:1fr}.c-doc-grid,.c-care-grid{grid-template-columns:1fr}.c-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.c-tabs button{flex-shrink:0;white-space:nowrap}.c-campaign-grid{gap:15px}.c-campaign-body{padding:19px}.c-form-actions{bottom:-20px}.toast{bottom:92px}.auth-form-panel{min-height:100dvh;padding:85px 20px 45px}.auth-card{padding:30px}.back-site{left:22px;top:23px}}
@media(max-width:600px){.content{padding:14px}.page-head{display:flex;flex-direction:column}.page-head h2{font-size:1.8rem}.c-metric>span .icon{display:none}.c-metric>span{font-size:.75rem}.c-metric{padding:12px 10px;gap:4px}.c-metric>small{font-size:.63rem;line-height:1.4}.c-metrics{gap:7px}.c-doctor-avatar{width:68px!important;height:68px!important;flex-basis:68px;border-radius:19px}.c-doctor-identity{gap:12px}.c-doctor-hero{padding:17px}.c-patient-row{grid-template-columns:48px 1fr;gap:13px}.c-patient-row>img{width:48px;height:48px;border-radius:14px}.c-patient-row>.btn{grid-column:2;justify-self:start}.c-search{flex:1 1 100%;width:100%}.c-toolbar{gap:14px}.c-toolbar>.btn{min-height:40px}.c-segment{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:2px}.c-segment button{font-size:.72rem;padding:8px 5px}.c-appointment{padding:13px;grid-template-columns:68px minmax(0,1fr);gap:12px}.c-date strong{font-size:1.1rem}.c-date b{font-size:.69rem}.c-appointment>.c-row-actions{grid-column:1/-1;justify-content:flex-end}.c-appointment .btn{font-size:.78rem}.c-pagination{flex-wrap:wrap;font-size:.74rem}.c-patient-summary{padding:17px;gap:12px;grid-template-columns:55px minmax(0,1fr)}.c-patient-summary .c-doctor-avatar{width:55px!important;height:55px!important}.c-patient-summary h3{font-size:1.07rem}.c-patient-summary>.btn{grid-column:1/-1}.c-summary-tags{grid-column:1/-1}.c-tag{font-size:.68rem}.c-action-grid{grid-template-columns:1fr}.c-action-grid .btn{min-height:50px}.c-measure-picker{gap:6px}.c-measure-picker button{font-size:.75rem;min-height:76px}.c-campaign-grid,.c-emergency-grid{grid-template-columns:1fr}.c-cycle-grid{grid-template-columns:1fr}.c-optin{padding:25px 18px}.c-calendar{gap:4px}.c-calendar>div,.c-calendar>span{min-height:33px}.c-peer{grid-template-columns:44px minmax(100px,1fr) auto;gap:11px}.c-peer img{width:44px;height:44px}.modal{padding:9px}.modal-panel,.modal-panel.wide{width:calc(100vw - 18px);padding:20px 17px;max-height:94dvh}.modal-head h3{font-size:1.18rem}.modal-head p{font-size:.8rem}.modal-head{gap:12px}.c-form-actions{bottom:-20px}.c-form-actions .btn{min-width:0;flex:1}.c-chat-compose{gap:6px;grid-template-columns:auto minmax(80px,1fr) auto}.c-chat-compose>.btn{padding:10px;font-size:0;min-width:42px}.c-chat-compose>.btn .icon{width:19px}.c-chat-thread{max-height:43dvh}.c-chart text{font-size:12px}.c-record{padding:15px}.c-record-line{font-size:.74rem}.c-table td,.c-table th{padding:10px 12px}.auth-card{padding:26px 24px}.auth-card h2{font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.c-metric:hover{transform:none}}
@media print{.sidebar,.topbar,.mobile-nav,.page-actions,.c-row-actions,.c-form-actions{display:none!important}.workspace{margin:0;padding:0}body{background:white;color:black}.card,.c-record{background:white!important;border:1px solid #bbb;break-inside:avoid}.content{padding:0}.c-page *{color:black!important}}
/* Componentes semánticos compartidos */
.c-record footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;border-top:1px solid var(--line);padding-top:12px;margin-top:14px;font-size:.77rem;color:var(--muted)}
p.c-record-line{display:block!important;font-size:.88rem;color:#c7dce0;white-space:pre-wrap}.c-record-line>b{color:#eefaf7}
.c-chart>svg{width:100%;height:auto;max-height:235px;display:block}.c-chart{max-height:none}.c-chart-line.second{stroke:var(--blue);stroke-dasharray:5 4}
.c-calendar>button{border:1px solid transparent;background:#ffffff04;color:var(--text);font-size:.86rem;min-height:40px;border-radius:10px;padding:5px}.c-calendar>button.marked{background:#c997e027;color:#ebcffa;border-color:#d09be355}.c-calendar>button.today{border-color:#59e3c298}.c-calendar>button:hover:not(:disabled){border-color:#59e3c27c}.c-calendar>button:disabled{opacity:.33}
#cTreatmentTabs{display:flex;margin-bottom:22px}.c-text-space>.c-toolbar{margin-top:20px}
@media(max-width:600px){.c-record footer{align-items:flex-start}.c-calendar>button{min-height:33px}}

/* Acciones al alcance de la primera vista, sin desplazar el resumen clínico. */
.c-attention-actions{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}
.c-attention-actions .btn{min-width:0;white-space:normal;text-align:left;justify-content:flex-start}
.c-date strong{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:1100px){.c-attention-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.c-attention-actions{grid-template-columns:1fr}}
