:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#eef4fb;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;line-height:1.45}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:#172033;background-color:#eef4fb;background-image:radial-gradient(circle at top,#ffffff24,#e2e8f080 74%),linear-gradient(#f8fafc5c,#e2e8f094),url(/assets/fondo-FucbQclc.png);background-position:top,top,top;background-repeat:no-repeat,no-repeat,no-repeat;background-size:cover,cover,cover;background-attachment:fixed,fixed,fixed;margin:0}#root{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center;background:linear-gradient(#ffffff75,#f1f5f957),#ffffff3d;border:1px solid #94a3b82e;border-radius:24px;flex-direction:column;width:min(1180px,100% - 24px);min-height:calc(100svh - 24px);margin:12px auto;padding:28px 24px 36px;display:flex;box-shadow:0 16px 52px #0f172a29,inset 0 1px #ffffff70}.app-shell{width:100%;padding:20px}.institutional-header{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:linear-gradient(135deg,#ffffffad,#eff6ff61),#ffffff4d;border:1px solid #47556929;border-radius:24px;grid-template-columns:minmax(76px,130px) minmax(0,1fr) minmax(92px,145px);align-items:center;gap:26px;margin-bottom:22px;padding:14px 18px;display:grid;box-shadow:0 12px 34px #0f172a1f}.institutional-logo{object-fit:contain;filter:drop-shadow(0 8px 14px #0f172a29);width:100%;max-height:106px}.institutional-logo-unam{justify-self:start}.institutional-logo-cnyn{justify-self:end}.institutional-title{min-width:0;overflow:hidden}.institutional-title p{color:#2563eb;letter-spacing:.24em;text-transform:uppercase;margin:0 0 6px;font-size:clamp(1.18rem,2vw,1.65rem);font-weight:800}.institutional-title h1{color:#0f172a;letter-spacing:-.035em;white-space:nowrap;text-shadow:0 1px #ffffff73;margin-bottom:0;font-size:clamp(2rem,3.85vw,3.25rem);line-height:.98}.app-summary{text-align:left;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:6px;display:grid}.summary-card,.section-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff85;border:1px solid #4755692e;border-radius:16px;padding:14px 16px;box-shadow:0 10px 26px #0f172a14}.section-card{text-align:left}.nav-grid,.button-row,.button-stack,.form-stack,.page-actions{flex-wrap:wrap;gap:10px;display:flex}.button-stack,.form-stack{flex-direction:column}.form-stack{align-items:center}.nav-grid,.page-actions{justify-content:center}.full-width-control{width:100%;max-width:100%}.auth-shell{justify-content:center;align-items:center;min-height:calc(100svh - 32px);display:flex}.auth-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff8a;border:1px solid #4755692e;border-radius:24px;width:min(100%,540px);padding:28px 22px;box-shadow:0 20px 48px #0f172a29}.calendar-scroll{padding-bottom:4px;overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:520px}.calendar-slot-grid{grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:8px;display:grid}.xrd-panel{background:linear-gradient(135deg,#0ea5e924,#eab30817),#ffffff7a;border:1px solid #38bdf833;border-radius:16px;margin-bottom:18px;padding:14px}.xrd-panel-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.xrd-panel-header h3{margin-bottom:6px}.xrd-panel-header p{color:#475569;margin:0}.xrd-eyebrow{letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;font-weight:700;color:#38bdf8!important;margin-bottom:6px!important}.xrd-equipment-list{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.xrd-equipment-list span{color:#075985;background:#0ea5e91f;border:1px solid #38bdf852;border-radius:999px;padding:6px 10px;font-size:.9rem}.xrd-grid{grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px;display:grid}.policy-shell{text-align:left;width:min(960px,100%);margin:0 auto}.policy-header{background:#ffffff9e;border:1px solid #4755692e;border-radius:24px;margin-bottom:18px;padding:20px 22px;box-shadow:0 12px 34px #0f172a1f}.policy-eyebrow{color:#2563eb;letter-spacing:.18em;text-transform:uppercase;margin:0 0 8px;font-size:.88rem;font-weight:800}.policy-header h1{margin:0 0 10px;font-size:clamp(2rem,4vw,3rem)}.policy-updated{color:#475569;margin:0}.policy-card{background:#ffffff94;border:1px solid #4755692e;border-radius:18px;margin-bottom:14px;padding:18px 20px;box-shadow:0 10px 26px #0f172a14}.policy-card h2{margin-top:0}.policy-card p,.policy-card li{color:#1e293b;line-height:1.6}.policy-card ul{margin-bottom:0;padding-left:22px}.xrd-grid label{color:#1e3a8a;flex-direction:column;gap:6px;font-weight:600;display:flex}.xrd-grid input{width:100%}.xrd-warning{color:#fecaca;background:#7f1d1d47;border:1px solid #f8717161;border-radius:12px;margin:16px 0 0;padding:12px 14px;font-weight:700}.xrd-results{grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;margin-top:16px;display:grid}.xrd-results div{background:#ffffff94;border:1px solid #94a3b82e;border-radius:14px;padding:14px}.xrd-results span{color:#2563eb;margin-bottom:4px;font-size:.9rem;display:block}.xrd-results strong{color:#0f172a;font-size:1.15rem}h1,h2,h3,h4,h5,h6{color:#0f172a;text-wrap:balance}h1{letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(2.4rem,5vw,4.4rem);line-height:1.05}h2{margin-top:0;font-size:clamp(1.45rem,2.2vw,2rem)}h3,h4{margin-top:0}p,label,span,div,li,strong{color:inherit;overflow-wrap:anywhere;word-break:break-word}a{color:#1d4ed8}hr{border:none;border-top:1px solid #4755692e;margin:22px 0}button,input,select,textarea{font:inherit}button{color:#f8fafc;cursor:pointer;background:linear-gradient(#1e293be6,#0f172af2);border:1px solid #94a3b847;border-radius:10px;padding:10px 16px;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s}button:hover:not(:disabled){border-color:#60a5fa8c;transform:translateY(-1px);box-shadow:0 10px 28px #02061752}button:disabled{opacity:.55;cursor:not-allowed;transform:none}input,select,textarea{color:#0f172a;background:#ffffffc7;border:1px solid #47556938;border-radius:10px;outline:none;width:min(100%,460px);padding:10px 12px}input::placeholder,textarea::placeholder{color:#64748b}input:focus,select:focus,textarea:focus{border-color:#60a5fabf;box-shadow:0 0 0 3px #3b82f629}textarea{resize:vertical}input[type=checkbox],input[type=radio]{width:auto;box-shadow:none;vertical-align:middle;background:0 0;border:none;border-radius:0;margin:0 8px 0 0;padding:0}@media (width<=768px){#root{border-left:none;border-right:none;border-radius:0;width:100%;min-height:100svh;margin:0;padding:14px 10px 20px}body{background-size:cover,cover,cover}h1{font-size:clamp(2.1rem,10vw,3.2rem)}.app-shell{padding:0}.institutional-header{border-radius:18px;grid-template-columns:84px 1fr 96px;gap:8px;padding:16px 12px}.institutional-logo{max-height:74px}.institutional-logo-unam{grid-area:1/1}.institutional-logo-cnyn{grid-area:1/3}.institutional-title{display:contents}.institutional-title p{letter-spacing:.12em;grid-area:1/2;align-self:center;margin:0;font-size:.78rem}.institutional-title h1{letter-spacing:-.045em;white-space:normal;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;grid-area:2/1/auto/-1;margin-top:10px;font-size:clamp(1.85rem,8vw,2.7rem);line-height:1.04}.summary-card,.section-card,.auth-card{border-radius:16px;padding:14px 12px}.app-summary{grid-template-columns:1fr;gap:10px}.app-summary p,.section-card p{margin-top:.45rem;margin-bottom:.45rem}.nav-grid,.button-row,.button-stack,.page-actions{flex-direction:column;align-items:stretch}.nav-grid button,.button-row button,.button-stack button,.page-actions button{width:100%}input,select,textarea{width:100%;max-width:100%}button{padding:9px 12px}.auth-shell{align-items:flex-start;min-height:auto;padding-top:8px}.calendar-weekdays,.calendar-grid{min-width:100%}.calendar-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xrd-panel-header,.xrd-equipment-list{justify-content:flex-start}.xrd-panel-header{flex-direction:column}.xrd-grid,.xrd-results{grid-template-columns:1fr}}
