:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#193b30;background:#f5f7f3;--green:#18543e}*{box-sizing:border-box}body{margin:0}header{max-width:1200px;margin:auto;padding:24px 28px;display:flex;justify-content:space-between;align-items:center;gap:14px}.brand{display:flex;align-items:center;gap:10px;font-size:26px;font-weight:850;color:var(--green);text-decoration:none}.brand svg{width:48px;height:48px}.soft{color:#59845a}main{max-width:1100px;margin:auto;padding:16px 28px 50px}.pilot{display:inline-block;background:#eef0e5;color:#666b43;border-radius:20px;font-size:13px;padding:7px 13px}.intro{max-width:680px;margin:28px 0 32px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:1.5px;color:#568167}h1{font-size:clamp(30px,5vw,46px);line-height:1.15;margin:10px 0 16px}h2{font-size:24px;margin:0 0 18px}p{line-height:1.6}.card{background:white;border:1px solid #dce4db;border-radius:20px;padding:28px;margin:20px 0;box-shadow:0 4px 24px #173d2b05}.narrow{max-width:590px}label{display:block;font-weight:650;font-size:14px;margin:16px 0 8px}input,select,textarea{font:inherit;background:#fff;width:100%;border:1px solid #b9c7bc;border-radius:10px;padding:13px;color:#193b30}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #83b593;outline-offset:2px}button{font:inherit;cursor:pointer;background:var(--green);color:white;border:0;border-radius:11px;padding:13px 18px;font-weight:650;min-height:46px}form button{width:100%;margin-top:20px}.outline{background:transparent;color:var(--green);border:1px solid #b5c9ba}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}.notice{background:#eff4ed;padding:16px;border-radius:12px;font-size:14px;margin-top:22px}.muted{font-size:13px;color:#65746b}.badge{display:inline-block;border-radius:20px;padding:7px 14px;background:#fff0cb;color:#665020;font-size:14px}.badge.aprobada{background:#dceee2;color:#18543e}.badge.rechazada{background:#fbe6e3;color:#873a31}#mensaje{max-width:780px;background:#e3efe6;border-radius:12px;padding:16px;margin:18px 0}#mensaje.error{background:#fbe6e3;color:#873a31}dl{display:grid;grid-template-columns:100px 1fr;gap:12px;font-size:14px}dt{color:#66766b}dd{margin:0;overflow-wrap:anywhere}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat{background:#e8eee2;border-radius:16px;padding:20px}.stat strong{display:block;font-size:32px}.registration{padding:22px 0;border-bottom:1px solid #e3e8e0}.registration h3{margin:0;font-size:19px}.registration p{margin:8px 0;overflow-wrap:anywhere}.actions{display:flex;gap:12px;margin-top:12px}.review{background:#f7f9f5;border-radius:12px;padding:16px;margin-top:14px}.history-item{font-size:14px;padding:12px 0;border-bottom:1px solid #e3e8e0}footer{text-align:center;color:#788078;padding:20px;font-size:13px;line-height:1.8}@media(max-width:600px){header{padding:18px 18px}.brand{font-size:21px}.brand svg{width:36px;height:36px}main{padding:8px 18px 30px}.card{padding:22px 18px}.intro{margin:22px 0}.stats{gap:8px}.stat{padding:14px 10px;font-size:12px}.stat strong{font-size:26px}.section-heading{align-items:flex-start}.section-heading h2{font-size:22px}dl{grid-template-columns:85px 1fr}.actions button{flex:1}}
.queue-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}.queue-time{font-size:48px;font-weight:800;color:var(--green)}.plaza-card{padding:18px 0;border-bottom:1px solid #e3e8e0}.plaza-card h3{margin-top:0}@media(max-width:700px){.queue-layout{grid-template-columns:1fr;gap:0}.queue-time{font-size:42px}.actions{flex-wrap:wrap}}
/* Pendientes que requieren una decisión administrativa. */
.requiere-accion{background:#fff1f1;color:#8f2020;border:1px solid #d96969;border-left:5px solid #b42323;border-radius:12px;padding:16px;margin:12px 0}
.stat.requiere-accion{margin:0}
.requiere-accion .badge.pendiente{background:#fbdada;color:#8f2020;font-weight:750}
.requiere-accion .review{background:#fff8f8}
#editar-configuracion label:has(input[type="checkbox"]){display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}#editar-configuracion input[type="checkbox"]{width:20px;height:20px;margin:0;padding:0;flex-shrink:0;accent-color:var(--green)}#vista-previa-configuracion{margin-top:20px;padding:18px;background:#eff4ed;border-radius:12px;overflow-wrap:anywhere}#historial-configuracion{overflow-wrap:anywhere}
body{padding-bottom:env(safe-area-inset-bottom)}header{padding-top:max(18px,env(safe-area-inset-top))}.instalacion{margin-top:12px}.notice.error{background:#fbe6e3;color:#873a31}input,select,textarea{font-size:16px}.actions{flex-wrap:wrap}#acciones-pendientes-admin a{min-height:44px;display:inline-flex;align-items:center}.card,.history-item{overflow-wrap:anywhere}@media(max-width:600px){.actions{flex-direction:column}.actions button{width:100%}#configuracion-admin select{max-width:100%}header{position:sticky;top:0;background:#f5f7f3;z-index:5}#conexion-movil{position:sticky;top:85px;z-index:4}}
.app-navigation{display:flex;gap:8px;flex-wrap:wrap;max-width:1100px;margin:0 auto;padding:10px 32px;border-bottom:1px solid #dce4db}.app-navigation a{color:#466253;text-decoration:none;padding:12px 16px;border-radius:12px;min-height:46px;font-size:14px;font-weight:650;display:flex;align-items:center}.app-navigation a[aria-current="page"]{background:#18543e;color:white}.app-navigation a:hover{background:#e2ebe4}.app-navigation a[aria-current="page"]:hover{background:#124431}.page-heading{margin:28px 0 24px}.page-heading h1{font-size:clamp(28px,4vw,38px)}body[data-role="visitante"] .user-secondary,body[data-role="admin"] .user-secondary{display:none}body[data-role="visitante"][data-view="ayuda"] .intro,body[data-role="visitante"][data-view="ayuda"] #acceso{display:none}body[data-role="usuario"][data-view="inicio"] #perfil:not(:has(.badge.aprobada)){display:block!important}.admin-account{background:white;border-radius:16px;padding:24px}header{background:#f5f7f3}.app-navigation a:focus-visible{outline:3px solid #83b593;outline-offset:2px}@media(max-width:600px){.app-navigation{padding:8px 18px;gap:6px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.app-navigation a{white-space:nowrap;flex-shrink:0;padding:11px 14px}.page-heading{margin:22px 0 16px}.queue-layout .card{margin-top:10px}}
body:has(#cola[hidden]) .user-secondary{display:none}.app-navigation a.pending-navigation{background:#fff1f1;color:#8f2020;border:1px solid #d96969}.app-navigation a.pending-navigation[aria-current="page"]{background:#8f2020;color:white}
@media(max-width:600px){.app-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:6px}.app-navigation a{justify-content:center;white-space:normal;text-align:center;padding:10px 5px;font-size:13px}.page-heading h1{font-size:28px}}
/* Vista de uso compacta: plazas primero y acciones a continuación. */
body[data-role="usuario"] #version-piloto,body[data-role="admin"] #version-piloto{display:none}body[data-role="usuario"][data-view="inicio"] .page-heading{display:none}header{padding-bottom:10px;padding-top:max(10px,env(safe-area-inset-top))}.brand{font-size:22px}.brand svg{width:32px;height:32px}#salir{font-size:12px;padding:8px 12px;min-height:40px}.app-navigation{padding-top:4px;padding-bottom:5px;gap:4px}.app-navigation a{padding:8px 12px;min-height:40px}.page-heading{margin:14px 0}.page-heading .eyebrow{display:none}.page-heading h1{font-size:26px;margin:0}#cola>.section-heading{margin:10px 0 6px;align-items:center}#cola>.section-heading .eyebrow{display:none}#nombre-cola{font-size:18px;margin:0}#refrescar-cola{font-size:12px;padding:8px 12px;min-height:40px}#modo-cola{margin:6px 0;padding:9px 12px;font-size:12px}.queue-layout{display:flex;flex-direction:column;gap:10px}.queue-layout>.card{margin:0;padding:16px}.queue-layout>.card:last-child{order:-1;padding:12px 14px}.queue-layout>.card:last-child>h2{font-size:16px;margin:0 0 8px}.queue-layout>.card:last-child>.muted{font-size:11px;line-height:1.35;margin:8px 0 0}#plazas-cola{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.plaza-card{padding:8px 10px;background:#f5f7f3;border:0;border-radius:10px}.plaza-card h3{font-size:14px;margin:0 0 5px}.plaza-card .badge{font-size:11px;padding:4px 7px;border-radius:8px;line-height:1.3}.plaza-card p{font-size:12px;margin:5px 0 0;line-height:1.3}#titulo-turno{margin:0 0 5px;font-size:11px}#posicion-cola{font-size:21px;margin:0 0 8px}#label-hora{font-size:12px;margin:4px 0}.queue-time{font-size:34px}#aviso-cola,#info-turno{font-size:13px;line-height:1.4;margin:7px 0}#incorporar-plaza h3{font-size:17px;margin:10px 0 5px}#incorporar-plaza p{font-size:12px;line-height:1.4;margin:5px 0}#incorporar-plaza label,#solicitar-turno label{font-size:13px;margin:10px 0 5px}#incorporar-plaza input,#incorporar-plaza select,#solicitar-turno input{padding:10px}#incorporar-plaza button,#solicitar-turno button{margin-top:12px}@media(max-width:600px){header{padding-left:16px;padding-right:16px}.app-navigation{padding:3px 16px 5px;gap:2px}.app-navigation a{font-size:12px;padding:7px 3px;min-height:38px}main{padding:6px 16px 24px}#nombre-cola{font-size:16px}.queue-layout .card{margin:0}#conexion-movil{top:65px}}
.app-navigation{background:#e1ece4;border:1px solid #b8cec0;border-radius:14px;margin-top:4px;margin-bottom:8px;box-shadow:0 2px 6px #173d2b08}.app-navigation a{color:#254c38}.app-navigation a:hover{background:#cbded1}.app-navigation a[aria-current="page"]{background:#18543e;color:#fff}@media(max-width:600px){.app-navigation{margin:4px 12px 8px;padding:5px 6px}}
