.operator-body{background:#eef2ed}.operator-main{min-height:calc(100vh - 78px)}.guard-wrap{max-width:760px}.guard-login{max-width:440px;margin:0 auto}.guard-login h1{font-size:48px;letter-spacing:-.05em;margin:10px 0}.guard-actions{display:grid;gap:12px}.manual-ticket{display:grid;grid-template-columns:1fr auto;gap:10px}.ticket-status{padding:15px 18px;border-radius:16px;font-weight:850;text-align:center;margin:14px 0}.ticket-status.good{background:#dff1e4;color:#185c35}.ticket-status.warn{background:#fff0c9;color:#7b5511}.ticket-status.bad{background:#f8dfdd;color:#8b2e29}.ticket-status.neutral{background:#edf0ed;color:#526058}.guard-ticket h2{font-size:42px;letter-spacing:-.05em;margin:8px 0}.guard-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.guard-metrics>div{background:#edf3ed;border-radius:14px;padding:14px}.guard-metrics span{display:block;font-size:12px;color:#66736c}.guard-metrics b{font-size:28px;color:var(--green)}.movement-fields,.export-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.movement-fields label,.export-dates label{font-size:13px;font-weight:750}.movement-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.ticket-card{max-width:620px;margin:auto;text-align:left}.ticket-qr{display:grid;place-items:center;padding:22px;border:1px dashed #bbc7bf;border-radius:22px;background:#fafbf9;margin:18px auto}.ticket-qr img,.ticket-qr canvas{max-width:100%;height:auto}.ticket-code-large{text-align:center;font-size:28px;font-weight:850;letter-spacing:.08em;color:var(--green);margin-bottom:16px}.entry-title{font-size:clamp(46px,7vw,80px);letter-spacing:-.06em;line-height:.92;margin:14px 0}.checkin-hero p{color:#d8e5de}.payment-result{max-width:680px;margin:auto;text-align:center}.center-actions{justify-content:center}.btn:disabled{opacity:.55;cursor:wait}#qrReader{width:100%;overflow:hidden}#qrReader video{border-radius:16px}.export-dates{margin:12px 0}
.sync-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.sync-summary span{background:#edf3ed;border-radius:12px;padding:10px;font-size:12px}.sync-summary b{display:block;font-size:22px;color:var(--green)}.panel-title-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.sync-issues{display:grid;gap:10px;margin-top:14px}.sync-item{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #d8dfda;border-radius:14px;padding:14px}.sync-item small{display:block;color:#65716b;margin-top:3px}
.inquiry-list{display:grid;gap:10px;margin-top:14px}.inquiry-item{display:grid;grid-template-columns:1fr 190px;gap:16px;align-items:center;border:1px solid #d8dfda;border-radius:14px;padding:14px}.inquiry-item small{display:block;color:#65716b;margin-top:3px}.inquiry-item p{margin:8px 0;color:#38463f}.inquiry-item .field{margin:0}
.movement-history{display:grid;gap:8px}.history-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #dfe5e0}.history-row span{font-size:12px;color:#65716b;text-align:right}
@media(max-width:620px){.manual-ticket,.movement-fields,.movement-buttons,.export-dates,.sync-summary,.inquiry-item{grid-template-columns:1fr}.guard-metrics{grid-template-columns:1fr 1fr}.operator-main{padding-top:32px}.guard-ticket{padding:20px}.panel-title-row,.sync-item{align-items:stretch;flex-direction:column}}

/* Cierre operacional v5.6 */
.guard-alert-yellow{background:#ffe8a8!important;transition:background .2s ease}.guard-alert-yellow .operator-main{background:#ffe8a8}.guard-alert-yellow #checkInButton:disabled{background:#d5c28a;color:#6b571f;border-color:#d5c28a;opacity:1;cursor:not-allowed;box-shadow:none}.guard-alert-yellow .guard-ticket{background:#fff9e6;border:2px solid #e2b94b}.guard-alert-red{background:#f9e8e5}.guard-alert-red .guard-ticket{border:2px solid #c86a62}.guard-alert-green .guard-ticket{border:2px solid #75a886}
.admin-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.agenda-actions{display:flex;gap:8px;align-items:center}.agenda-actions .field{margin:0;min-width:160px}.agenda-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.agenda-summary>div{background:#edf3ed;border-radius:14px;padding:14px}.agenda-summary span{display:block;font-size:12px;color:#66736c}.agenda-summary b{display:block;font-size:30px;color:var(--green);margin-top:4px}.agenda-list{display:grid;gap:8px;margin-top:12px}.agenda-item{display:grid;grid-template-columns:88px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid #dfe5e0}.agenda-time{font-weight:850;color:var(--green)}.agenda-item small{display:block;color:#65716b;margin-top:3px}.agenda-item p{margin:4px 0 0;color:#65716b;font-size:13px}.calendar-frame{margin-top:18px;border:1px solid #d8dfda;border-radius:16px;overflow:hidden;background:#fff}.calendar-frame iframe{display:block;width:100%;height:560px;border:0}
@media(max-width:760px){.agenda-summary{grid-template-columns:1fr 1fr}.agenda-actions{width:100%;flex-direction:column;align-items:stretch}.agenda-actions .field{min-width:0}.calendar-frame iframe{height:520px}}
@media(max-width:480px){.agenda-summary{grid-template-columns:1fr 1fr}.agenda-item{grid-template-columns:64px 1fr}.calendar-frame iframe{height:480px}}


/* Mejora continua v5.6.7 · semáforo completo */
.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:16px}.health-card{border:1px solid #d8dfda;border-radius:16px;padding:14px;background:#fff}.health-card.good{border-color:#9fc9aa;background:#f5fbf6}.health-card.warn{border-color:#e3c974;background:#fffaf0}.health-card.bad{border-color:#dc9c95;background:#fff6f5}.health-top{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.health-dot{width:11px;height:11px;border-radius:50%;background:#98a39d}.health-card.good .health-dot{background:#3c9b5f}.health-card.warn .health-dot{background:#d6a625}.health-card.bad .health-dot{background:#c74f45}.health-top em{font-style:normal;font-size:10px;font-weight:900;letter-spacing:.08em}.health-card p{min-height:38px;color:#526058;font-size:13px;margin:10px 0 12px}.health-card .btn{width:100%}.agenda-ref{opacity:.8}.agenda-fallback{background:#fffaf0;border-left:3px solid #d6a625;padding-left:10px}
@media(max-width:620px){.health-grid{grid-template-columns:1fr}.health-card p{min-height:0}.calendar-frame{display:none}.agenda-panel:after{content:"En móvil priorizamos la agenda operativa resumida; Google Calendar completo queda disponible en el botón Abrir Google Calendar.";display:block;font-size:12px;color:#65716b;margin-top:12px}}

/* QR avisos CONFIG v5.6.7 */
.qr-notices{margin:10px 0 14px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.72);border:1px solid rgba(18,61,45,.12)}.qr-notices p{margin:0;font-weight:750;line-height:1.35}.qr-notices p+p{margin-top:6px}.hide{display:none!important}


/* v5.6.8 · Semáforo pantalla completa + identificación por nombre */
.operator-body{min-height:100vh;transition:background .18s ease}.operator-body .top,.operator-body .operator-main{transition:background .18s ease}.guard-person-name{font-size:clamp(42px,8vw,76px);letter-spacing:-.055em;line-height:.95;margin:10px 0 12px;color:#123d2d}.guard-code-line{font-size:12px;color:#526058;margin:0 0 12px}.guard-code-line b{letter-spacing:.05em}.guard-visitor-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:10px 0 16px}.guard-visitor-list span{display:block;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.58)}.guard-visitor-list b{display:block}.guard-visitor-list small{display:block;margin-top:2px;color:#526058}.guard-alert-green,.guard-alert-green .top,.guard-alert-green .operator-main{background:#bfe7c7!important}.guard-alert-yellow,.guard-alert-yellow .top,.guard-alert-yellow .operator-main{background:#ffe08a!important}.guard-alert-red,.guard-alert-red .top,.guard-alert-red .operator-main{background:#efaaa3!important}.guard-alert-green .guard-ticket,.guard-alert-yellow .guard-ticket,.guard-alert-red .guard-ticket{background:rgba(255,255,255,.78)!important;border-color:rgba(18,61,45,.25)!important;box-shadow:none}.guard-alert-green .ticket-status,.guard-alert-yellow .ticket-status,.guard-alert-red .ticket-status{background:rgba(255,255,255,.7)!important;color:#123d2d!important}.guard-alert-green .guard-metrics>div,.guard-alert-yellow .guard-metrics>div,.guard-alert-red .guard-metrics>div{background:rgba(255,255,255,.58)}

.ticket-journey{border:1px solid #c7c6bb;border-radius:18px;padding:20px;margin:20px 0;background:#f5f2e9;color:#153e2d}
.ticket-journey>span{display:block;font-size:12px;font-weight:800;letter-spacing:.05em;margin-bottom:16px}
.ticket-journey[data-state=OPENED]{border-color:#b88a3b;background:#fff7df}
.ticket-journey[data-state=READY]{border-color:#42916a;background:#e8f3e9}
.journey-reservation{padding:14px 0;border-top:1px solid #d3d7ce;display:grid;gap:6px}
.journey-reservation span{font-size:11px;font-weight:800;color:#726345}
.journey-reservation[data-state=READY] span{color:#217349}.journey-reservation small{font-size:11px}

.ticket-journey[data-state=OPENED]{border-color:#42916a;background:#e8f3e9}.journey-reservation[data-state=OPENED] span{color:#217349}

/* Centro de Control: conservar paneles, hacer evidencia y acciones legibles en móvil. */
.control-evidence{margin:18px 0}.control-evidence summary{cursor:pointer;font-weight:700;padding:12px 0}
.control-evidence .health-card small{display:block;margin:8px 0;overflow-wrap:anywhere}
.control-alert{display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:4px solid #b88b23;padding:14px;margin:10px 0;background:#f6f3e8;border-radius:8px}
.control-alert.bad{border-color:#a33737;background:#fff1ef}.control-alert p{margin:6px 0}.control-alert small{display:block;overflow-wrap:anywhere}
.trace-actions{display:flex;gap:10px;margin:12px 0}.trace-actions input{flex:1;min-width:0}.trace-summary{background:#f1f5ef;border-radius:12px;padding:16px;margin:12px 0}.trace-timeline{list-style:none;padding:0;margin:18px 0}.trace-timeline li{border-left:2px solid #c4d2c7;padding:0 0 22px 18px;overflow-wrap:anywhere}.trace-timeline time,.trace-timeline small{display:block;font-size:12px;color:#526058}.trace-timeline b{display:block;margin:5px 0}.trace-timeline p{margin:6px 0}
@media(max-width:600px){.control-alert{flex-direction:column;align-items:stretch}.trace-actions{flex-direction:column}.control-evidence .health-top{flex-wrap:wrap}}
