/* Controles y superficies compartidas de las cuatro aplicaciones. */
:root{--nam-dialog-radius:20px;--nam-dialog-shadow:0 12px 40px rgba(0,0,0,.18)}
button,input,select,textarea{box-sizing:border-box}
button{min-height:44px;min-width:44px;white-space:normal;overflow-wrap:anywhere}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select{min-height:44px;max-width:100%}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--nam-focus,#2563eb);outline-offset:3px}
.rej-box,.cmodal-box,.sheet-box,.cal-card{box-sizing:border-box;max-height:calc(100dvh - 24px)!important;overflow-y:auto;overscroll-behavior:contain;box-shadow:var(--nam-dialog-shadow);overflow-wrap:anywhere}
.rej-box button[aria-label="Cerrar"]{min-width:44px!important;min-height:44px!important;margin:0!important;flex-shrink:0}
.cal-stars{flex-wrap:wrap}.cal-star{border:0;background:transparent;padding:4px;min-width:44px;min-height:44px}.cal-lbl{display:block}
.cs{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
@media(min-width:768px){.rej,.cmodal,.sheet,.cal-ov{align-items:center!important;padding:24px;box-sizing:border-box}.rej-box,.cmodal-box,.sheet-box,.cal-card{border-radius:var(--nam-dialog-radius)!important}.cs{bottom:24px;border-radius:var(--nam-dialog-radius);box-shadow:var(--nam-dialog-shadow)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

summary{min-height:44px;box-sizing:border-box;padding-block:12px;cursor:pointer}
