:root{font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;color:#153654;background:#f5f7fb;color-scheme:light;--red:#e91c35}
*{box-sizing:border-box}body{margin:0;min-height:100dvh;display:flex;flex-direction:column}
button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:1px solid #dce3ed;background:#fff;border-radius:9px;color:#153654;padding:8px 14px;min-height:42px}button:hover{background:#f0f4fa}
button:focus-visible,a:focus-visible{outline:3px solid #e91c35;outline-offset:3px}[hidden]{display:none!important}
.appbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));background:#fff;border-bottom:3px solid var(--red);flex-shrink:0}
.brand{display:flex;align-items:center;gap:10px}.brand img{object-fit:contain}.brand strong{font-size:15px;letter-spacing:.02em}
.actions{display:flex;gap:8px}.actions button{font-size:14px}#install{background:var(--red);color:white;border-color:var(--red)}
#workspace{position:relative;flex:1;min-height:0;display:flex}#system{display:block;width:100%;height:calc(100dvh - 63px - env(safe-area-inset-bottom));border:0;background:#fff}
.cover{position:absolute;inset:0;display:grid;place-items:center;min-height:calc(100dvh - 63px);padding:24px;overflow:auto;background:#f5f7fb}
.connection-card{text-align:center;max-width:460px;width:100%;padding:32px 24px;border-radius:18px;background:#fff;border:1px solid #e0e6ef;box-shadow:0 14px 38px #1536540b}
.mark{height:110px;width:150px;object-fit:contain}h1{font-size:24px;line-height:1.25;margin:24px 0 12px}p{margin:12px 0;color:#4c6076}
.spinner{margin:24px auto 0;width:30px;height:30px;border:3px solid #f5c6cd;border-top-color:var(--red);border-radius:50%;animation:turn .8s linear infinite}
.coverActions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:24px}.primary{background:var(--red);color:#fff;border:1px solid var(--red);border-radius:9px;min-height:44px;padding:10px 16px}.primary:hover{background:#c6142a}
.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #dce3ed;border-radius:9px;text-decoration:none;color:#153654}
dialog{max-width:480px;width:calc(100% - 32px);border:1px solid #dce3ed;border-radius:16px;padding:26px;color:#153654}dialog::backdrop{background:#0a1d3666}dialog h2{font-size:22px;line-height:1.3;margin:0 0 20px}dialog form{margin-top:22px;text-align:right}
.noscript{position:fixed;inset:0;display:grid;place-items:center;background:#fff;padding:24px}@keyframes turn{to{transform:rotate(360deg)}}
.access-card{text-align:left}.access-card>.mark{display:block;margin:auto;height:90px}.access-card h1,.access-place{text-align:center}.access-card h1{margin-top:12px}.access-place{font-size:13px}.access-card label{display:block;font-weight:600;margin:14px 0 6px}.access-card input{width:100%;min-width:0;min-height:48px;border:1px solid #becbd9;border-radius:9px;padding:10px 12px;font:inherit;color:#153654;background:#fff}.access-card input:focus-visible{outline:2px solid var(--red);outline-offset:2px}.password-row{display:flex;gap:8px}.password-row input{flex:1}.password-row button{flex-shrink:0}.access-card #quickSubmit{width:100%;margin-top:8px}.access-status{font-size:13px;text-align:center;margin-top:18px}.access-error{color:#b51128;font-size:14px}.access-error:empty{display:none}.access-card #quickRetry{display:block;margin:12px auto 0}
@media(max-width:550px){.appbar{padding-left:10px;padding-right:10px}.brand{gap:5px}.brand strong{font-size:13px}.actions{gap:5px}.actions button{font-size:13px;padding:7px 9px}#help{font-size:0;width:38px;padding:5px}#help:after{content:"?";font-size:18px}h1{font-size:22px}.connection-card{padding:26px 20px}}
@media(prefers-reduced-motion:reduce){.spinner{animation:none;border-color:var(--red)}}

.enlace-diagnostico-v92{display:block;margin:16px auto 0;text-align:center;color:#164c80;font-weight:600}.enlace-diagnostico-v92[hidden]{display:none}#quickShow svg{display:block;margin:auto}

/* Instalación por dispositivo V97. */
body{height:100dvh}#system{height:100%}.cover{min-height:0}
.download-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 14px;border:1px solid var(--red);border-radius:9px;background:var(--red);color:#fff;text-decoration:none;font-weight:600;text-align:center}
.download-action:hover{background:#c6142a}.actions .download-action{font-size:14px;white-space:nowrap}
.install-card{margin:20px 0 24px;padding:18px;border:1px solid #f4bac3;border-radius:12px;background:#fff5f7;text-align:center}
.install-card h2{margin:0;font-size:20px;line-height:1.3}.install-card>p{font-size:14px;margin:10px 0 14px}.install-card>.primary{width:100%}.install-card>.install-note{font-size:12px;margin:12px 0 0;line-height:1.5}
.actions{flex-wrap:wrap;justify-content:flex-end}.brand{flex-shrink:0}
@media(max-width:550px){.actions .download-action{font-size:13px;padding:7px 9px}.install-card{padding:16px}.install-card h2{font-size:19px}.appbar{flex-wrap:wrap}.actions{margin-left:auto}}

/* Invitación V122. */
