/* Medical CBD Colombia / Carlos Pinilla. Sin fuentes ni recursos remotos. */
body{background:#edf4fc;color:#173758;line-height:1.5}
.shell{max-width:1580px;padding:24px}.admin-layout{grid-template-columns:232px minmax(0,1fr);gap:26px}
.sidebar{background:linear-gradient(165deg,#164c91,#153c77);border-radius:24px;padding:20px 16px;max-height:calc(100vh - 48px);overflow-y:auto}
.sidebar-brand{padding:8px 4px 14px}.mc-brand-owner{display:block;font-size:.74rem;color:#d5e7ff;font-weight:500;margin-top:5px}
.side-nav{gap:4px}.side-nav a{min-height:44px;display:flex;align-items:center}.side-nav a.active{background:#3e68a4}
.mc-welcome{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:3px 0 22px}.mc-welcome h1{font-size:clamp(1.7rem,3vw,2.3rem);margin:4px 0}.mc-welcome p{margin:0;color:#526a83}
.mc-patient{display:flex;align-items:center;gap:20px;background:linear-gradient(115deg,#205cab,#397dd1);padding:25px 28px;border-radius:24px;color:white;box-shadow:0 12px 30px #18487c14}
.mc-initial{display:grid;place-items:center;border-radius:22px;width:78px;height:78px;flex-shrink:0;background:#ffffff25;border:1px solid #ffffff60;font-size:2.2rem;font-weight:750}
.mc-patient h2{color:white;font-size:1.6rem;margin:2px 0 6px}.mc-patient p{margin:3px 0;overflow-wrap:anywhere}.mc-patient-info{flex:1;min-width:0}.mc-patient-actions{display:grid;gap:9px}.mc-patient-actions .btn{background:white;color:#164879}.mc-patient-actions .btn-soft{background:#ffffff24;color:white;border:1px solid #ffffff70}
.mc-caption{font-size:.78rem;color:#49627a}.mc-patient .mc-caption{color:#e3eeff}
.mc-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.mc-shortcuts a{background:white;border:1px solid #dbe5f1;padding:11px 17px;border-radius:14px;text-decoration:none;font-weight:650;min-height:44px}
.mc-dashboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.mc-card{border:1px solid #d8e4ef90;border-radius:22px;padding:22px;min-width:0;overflow-wrap:anywhere;scroll-margin-top:20px;box-shadow:0 5px 15px #1c487807}.mc-card h2{font-size:1.12rem;margin:0}.mc-card h3{font-size:1.12rem;margin:15px 0 8px}.mc-card p{font-size:.9rem}.mc-card .btn{margin-top:14px;max-width:100%;font-size:.88rem;min-height:44px;text-align:center;padding:11px 17px}
.mc-mint{background:#e1f3eb}.mc-lilac{background:#ece8fb}.mc-peach{background:#ffecdF}.mc-yellow{background:#fff4d5}.mc-sky{background:#e0efff}.mc-rose{background:#f9e8ed}.mc-photos{background:#fff;grid-column:span 2}
.mc-card-heading{display:flex;gap:10px;align-items:center;margin-bottom:16px}.mc-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#ffffff90;font-size:1.3rem;flex-shrink:0}
.mc-progress-number{font-size:3.1rem;font-weight:800;line-height:1.2;color:#4a458d}.mc-progress-number small{font-size:1.5rem}.mc-card progress{display:block;width:100%;height:14px;accent-color:#7066bb;border:none;border-radius:20px;overflow:hidden;background:#d9d2ef}.mc-card progress::-webkit-progress-bar{background:#d9d2ef;border-radius:20px}.mc-card progress::-webkit-progress-value{background:#7066bb;border-radius:20px}.mc-card progress::-moz-progress-bar{background:#7066bb;border-radius:20px}
.mc-date{font-size:1.65rem;font-weight:800;color:#7f482a}.mc-time{font-size:1.4rem!important;margin:4px 0 12px}.mc-text-link{display:block;margin-top:15px;font-weight:700;font-size:.88rem;min-height:32px}
.mc-empty{padding:18px 0;color:#52647a}.mc-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mc-photo{text-align:center;min-width:0}.mc-photo strong{display:block;font-size:.76rem;margin-top:8px}.mc-photo-stage{height:180px;display:grid;place-items:center;background:#f0f5fb;border:1px dashed #c9d8e6;border-radius:15px;overflow:hidden;color:#597185;font-size:.8rem;padding:6px}.mc-photo-stage a{display:block;width:100%;height:100%;min-height:0}.mc-photo-stage img{height:100%;width:100%;object-fit:contain}.mc-photo-stage span{padding:8px}
.mc-list-item{display:grid;gap:5px;padding:11px 0;border-bottom:1px solid #183a571a;font-size:.86rem}.mc-list-item small{color:#4b6278}.mc-note{border-bottom:1px solid #183a5720;padding:12px 0}.mc-note summary{cursor:pointer;font-weight:700}.mc-note summary small{display:block;font-size:.74rem;font-weight:400}.mc-note p{white-space:normal}.mc-footer{text-align:center;font-size:.78rem;color:#526a83;margin:28px 0 4px}
.mc-search{display:flex;gap:12px;align-items:end;flex-wrap:wrap;background:white;padding:20px;border-radius:20px;margin-bottom:20px}.mc-search label{flex:1;min-width:180px;display:grid;gap:7px}.mc-patients{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.mc-patient-tile{background:white;border:1px solid #dbe6f2;border-radius:20px;padding:20px;overflow-wrap:anywhere}.mc-patient-tile h2{font-size:1.15rem;margin:0 0 10px}.mc-patient-tile p{font-size:.86rem;margin:5px 0}.mc-patient-tile .btn{margin-top:14px;min-height:44px}.mc-pages{display:flex;gap:16px;align-items:center;justify-content:center;margin-top:22px;flex-wrap:wrap}
.mc-menu-toggle{display:none}.mc-skip{position:absolute;left:16px;top:-100px;z-index:1000;background:white;padding:12px}.mc-skip:focus{top:10px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #8b4fd1;outline-offset:3px}input[type=checkbox]{width:auto}.v245-form label{min-width:0}input,select,textarea{min-width:0;font-size:16px}textarea{resize:vertical}.v24-kpi:nth-child(4n+1){background:#e0efff}.v24-kpi:nth-child(4n+2){background:#e1f3eb}.v24-kpi:nth-child(4n+3){background:#ece8fb}.v24-kpi:nth-child(4n){background:#fff0db}
@media(max-width:1200px){.mc-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-patients{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-photos{grid-column:span 2}}
@media(max-width:900px){.shell{padding:16px}.admin-layout{grid-template-columns:1fr;gap:18px}.sidebar{position:static;max-height:none}.sidebar-brand{margin-bottom:6px;padding-bottom:0}.side-nav{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.mc-menu-toggle{display:inline-flex;width:100%;margin-top:14px;background:#ffffff20;border:1px solid #ffffff50;border-radius:12px}.mc-nav-ready:not(.mc-nav-open) .side-nav{display:none}.mc-patient{padding:22px}.mc-patient-actions{max-width:210px}.v245-split{grid-template-columns:1fr}}
@media(max-width:600px){.shell{padding:12px}.mc-welcome{display:block}.mc-welcome .btn{margin-top:12px}.mc-dashboard,.mc-patients{grid-template-columns:1fr}.mc-photos{grid-column:auto}.mc-patient{gap:12px;flex-wrap:wrap;padding:20px}.mc-initial{width:52px;height:52px;font-size:1.6rem;border-radius:16px}.mc-patient h2{font-size:1.3rem}.mc-patient-info{flex-basis:calc(100% - 70px)}.mc-patient-actions{display:flex;max-width:none;width:100%;flex-wrap:wrap}.mc-shortcuts{gap:7px}.mc-shortcuts a{padding:10px 12px;font-size:.84rem}.mc-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-photo-stage{height:165px}.side-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-card{padding:20px}.v245-form,.v24-fields{grid-template-columns:1fr}.v245-form .v245-wide{grid-column:auto}.mc-card .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.sidebar,.mc-shortcuts,.mc-menu-toggle,.mc-skip,.mc-patient-actions,.mc-card .btn{display:none!important}.admin-layout{display:block}.shell{padding:0}.mc-dashboard{grid-template-columns:1fr 1fr}.mc-card{break-inside:avoid;box-shadow:none}.mc-patient{background:white;color:#173758;border:1px solid #ccc}.mc-patient h2{color:#173758}}

/* Revisión unificada: todos los módulos utilizan estas mismas reglas. */
.mc-app{--mc-primary:#245fa7;--mc-primary-hover:#194d8e;--mc-border:#d6e2ef;--mc-radius:12px;--muted:#526b82;font-size:16px}
.mc-app .sidebar-brand{text-decoration:none;color:white;align-items:center}
.mc-app .sidebar{border-radius:20px;top:20px}
.mc-app .side-nav>a{gap:10px}
.mc-nav-group{border-top:1px solid #ffffff24;padding-top:8px;margin-top:6px}
.mc-nav-group summary{padding:11px 12px;cursor:pointer;font-weight:700;color:#e1efff;font-size:.92rem;min-height:44px}
.mc-nav-group a{margin:4px 0 4px 10px;font-weight:500!important}
.mc-signout{margin-top:12px;border-top:1px solid #ffffff30}
.mc-patient-nav,.mc-task-nav{display:flex;gap:6px;flex-wrap:wrap;background:white;border:1px solid var(--mc-border);padding:7px;border-radius:16px;margin:0 0 20px}
.mc-patient-nav a,.mc-task-nav a{padding:11px 16px;min-height:44px;border-radius:10px;text-decoration:none;font-size:.9rem;font-weight:650;color:#284f76;display:inline-flex;align-items:center;justify-content:center}
.mc-patient-nav a.active,.mc-task-nav a.active{background:#245fa7;color:white}
.mc-task-nav{background:#e2edf9;border:none}
.mc-workspace-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:start}
.mc-workspace-grid>*{min-width:0}.mc-workspace-grid>div>.v24-card{margin-bottom:20px}
.mc-form-stack{display:grid;gap:18px}.mc-form-stack>label,.mc-form-stack .form-grid>label{display:grid;gap:8px}
.mc-form-stack>button{justify-self:start}.mc-button-row{display:flex;gap:10px;flex-wrap:wrap}
.mc-disclosure{background:#f3f7fc;border:1px solid var(--mc-border);border-radius:14px;margin:16px 0;padding:14px 16px}
.mc-disclosure summary{cursor:pointer;font-weight:650;min-height:28px}.mc-disclosure[open] summary{margin-bottom:16px}.mc-disclosure label{display:grid;gap:8px;margin:12px 0}
.mc-note-entry{padding:16px 0;border-bottom:1px solid var(--mc-border);overflow-wrap:anywhere}.mc-note-entry:last-child{border:0}.mc-note-entry h3{font-size:1rem;margin:8px 0}.mc-note-entry p{font-size:.95rem}
.mc-consent{padding:16px;background:#fff7e3;border:1px solid #ecddb4;border-radius:14px}.mc-consent label{display:flex;align-items:flex-start;gap:10px}.mc-consent input{margin-top:4px}.mc-consent p{font-size:.82rem;margin:10px 0 0;color:#685b3b}
.mc-section-anchor{scroll-margin-top:16px}.mc-app .v245-form{gap:18px}.mc-app .v245-form label{display:grid;gap:8px}.mc-app .v245-checks label{display:flex;align-items:center;gap:6px}.mc-app .v245-form>details{padding:14px;border:1px solid var(--mc-border);border-radius:12px;background:#f5f8fc}.mc-app .v245-form summary{cursor:pointer;font-weight:650}.mc-app .v245-form details[open] summary{margin-bottom:14px}
@media screen{
 .mc-app button,.mc-app .btn,.mc-app .mini-btn,.mc-app .back{box-sizing:border-box;min-height:44px;border-radius:var(--mc-radius)!important;padding:11px 17px!important;font-family:inherit!important;font-size:.92rem!important;font-weight:650!important;line-height:1.35!important;background:var(--mc-primary)!important;color:white!important;border:1px solid var(--mc-primary)!important;text-decoration:none;box-shadow:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center;vertical-align:middle}
 .mc-app button:hover,.mc-app .btn:hover,.mc-app .mini-btn:hover{background:var(--mc-primary-hover)!important;border-color:var(--mc-primary-hover)!important}
 .mc-app .btn-soft,.mc-app .mini-btn,.mc-app .back,.mc-app .mc-menu-toggle{background:white!important;color:#24558c!important;border:1px solid #9fb9d6!important}
 .mc-app .btn-soft:hover,.mc-app .mini-btn:hover,.mc-app .back:hover{background:#e7f0fa!important;color:#173c6a!important}
 .mc-app .danger,.mc-app .btn-danger{background:#ac3548!important;border-color:#ac3548!important;color:white!important}
 .mc-app button:disabled,.mc-app .btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}
 .mc-app button.selected,.mc-app button.active{background:#174476!important;color:white!important;outline:2px solid #6dafe7;outline-offset:2px}
 .mc-app .mc-menu-toggle{background:#ffffff18!important;color:white!important;border-color:#ffffff60!important}
 .mc-app input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),.mc-app select,.mc-app textarea{border-radius:12px;border:1px solid #bdcee1;background:white;font-size:16px;min-height:44px;padding:11px 12px;color:#173758}
 .mc-app input[type=checkbox],.mc-app input[type=radio]{width:18px;height:18px;accent-color:#245fa7;flex-shrink:0}
 .mc-app .card,.mc-app .v24-card{border:1px solid var(--mc-border);border-radius:20px;padding:24px;background:white;box-shadow:0 5px 20px #18427806}
 .mc-app .page-head,.mc-app .v24-top{align-items:center;margin:0 0 22px;gap:16px;flex-wrap:wrap}
 .mc-app .page-head h1,.mc-app .v24-top h1,.mc-app .mc-welcome h1{font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:750;line-height:1.2;margin:4px 0 8px}
 .mc-app .page-head p,.mc-app .v24-top p{font-size:.95rem;line-height:1.5}
 .mc-app .v24-footnote,.mc-app .help{font-size:.85rem;color:#526b82}
 .mc-app .card h2,.mc-app .v24-card h2,.mc-app .card h3{font-size:1.15rem;margin-top:0}
 .mc-app .quick-tabs a,.mc-app .v245-tabs a{border-radius:12px;padding:11px 16px;min-height:44px;font-weight:650;background:#e3edf9;color:#234f7c}
 .mc-app .table th,.mc-app .v24-table th{background:#edf4fc;color:#3b5875;font-size:.8rem}.mc-app .table td,.mc-app .v24-table td{font-size:.9rem;line-height:1.5;padding:12px}
 .mc-app .table-wrap{border:1px solid #e0e9f2;border-radius:14px}
 .mc-app .v24-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mc-app .v24-photo-stage{height:270px}.mc-app .v24-photo-ctrl .btn,.mc-app .v24-photo-ctrl .mini-btn{width:100%}
 .mc-app .summary,.mc-app .v245-stats{gap:14px}.mc-app .stat:nth-child(4n+1){background:#e0efff}.mc-app .stat:nth-child(4n+2){background:#e1f3eb}.mc-app .stat:nth-child(4n+3){background:#ece8fb}.mc-app .stat:nth-child(4n){background:#fff0db}
}
@media(max-width:1100px){.mc-app .v24-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-workspace-grid{grid-template-columns:1fr}}
@media(max-width:900px){.mc-app .side-nav{grid-template-columns:1fr}.mc-app .sidebar{max-height:none}.mc-nav-group a{margin-left:10px}.mc-app .mc-menu-toggle{display:flex;width:100%}.mc-patient-nav{position:relative}.mc-patient-nav a{flex:1;white-space:nowrap}}
@media(max-width:680px){
 .mc-patient-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.mc-patient-nav a:first-child{grid-column:1/-1}.mc-task-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .mc-app .card,.mc-app .v24-card{padding:18px}.mc-app .v24-photo-grid{grid-template-columns:1fr}.mc-app .form-grid,.mc-app .v245-form{grid-template-columns:1fr}.mc-app .v245-form .v245-wide{grid-column:auto}
 .mc-app .page-head,.mc-app .v24-top,.mc-app .mc-welcome{display:block}.mc-app .page-head>.actions,.mc-app .v24-top>.v24-actions{margin-top:12px}
 .mc-app .table.mc-responsive-table,.mc-app .v24-table.mc-responsive-table{min-width:0!important;width:100%}.mc-responsive-table thead{display:none}.mc-responsive-table tbody,.mc-responsive-table tr{display:block}.mc-responsive-table tr{padding:12px;border-bottom:1px solid #cfdceb;background:white}.mc-responsive-table td{display:flex;justify-content:space-between;gap:14px;text-align:right!important;border:none!important;padding:7px!important;overflow-wrap:anywhere}.mc-responsive-table td::before{content:attr(data-label);font-size:.8rem;font-weight:650;color:#526b82;flex:0 0 33%;text-align:left}.mc-responsive-table td[colspan]{display:block;text-align:left!important}.mc-responsive-table td[colspan]::before{display:none}.mc-responsive-table .actions{justify-content:flex-end}.mc-responsive-table td:has(.actions){display:block;text-align:left!important}.mc-responsive-table td:has(.actions)::before{display:block;margin-bottom:8px}
 .mc-app .mc-button-row>.btn,.mc-app .mc-form-stack>button{width:100%}
}
@media print{.mc-patient-nav,.mc-task-nav,.mc-disclosure>summary{display:none!important}.mc-app .mc-workspace-grid{display:block}.mc-app .sidebar{display:none!important}}
@media(min-width:901px){.mc-app .mc-menu-toggle{display:none!important}}
/* Las muestras de color conservan su función en el editor fotográfico. */
.mc-app .v242-swatches button,.mc-app .v242-swatches button:hover{background:var(--swatch)!important;border:2px solid white!important;min-width:44px;min-height:44px;padding:0!important;outline:1px solid #8da6bf}
@media print{.mc-app .toolbar{display:none!important}}
@media print{body.mc-app{background:white!important;font-size:14px!important}}
