:root{--cmb-bg:#050509;--cmb-panel:#0d0d16;--cmb-panel2:#141421;--cmb-text:#fff;--cmb-muted:#9b9bad;--cmb-pink:#ff3ea5;--cmb-blue:#51c8ff;--cmb-orange:#ff8a3d;--cmb-border:rgba(255,255,255,.10);--cmb-good:#70ffa4}
*{box-sizing:border-box}
html,body{background:var(--cmb-bg)!important}
body{margin:0;color:var(--cmb-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.cmb-crew-shell{min-height:100vh;background:radial-gradient(circle at 18% 0%,rgba(255,62,165,.16),transparent 34%),radial-gradient(circle at 88% 12%,rgba(81,200,255,.13),transparent 30%),var(--cmb-bg);padding:20px 16px 40px;max-width:760px;margin:0 auto;color:var(--cmb-text)}
.cmb-crew-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:30px}.cmb-crew-header img,.cmb-crew-login img{width:148px;height:auto}.cmb-crew-lock{color:#fff;text-decoration:none;border:1px solid var(--cmb-border);border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800;letter-spacing:.12em}
.cmb-crew-hero{margin-bottom:18px}.cmb-crew-kicker{margin:0 0 8px;color:var(--cmb-pink);font-weight:900;font-size:12px;letter-spacing:.18em}.cmb-crew-hero h1,.cmb-crew-login h1{font-size:clamp(30px,8vw,50px);line-height:.95;letter-spacing:-.045em;margin:0 0 10px}.cmb-crew-hero>p:last-child,.cmb-crew-login>p{color:var(--cmb-muted);margin:0;line-height:1.5}
.cmb-crew-card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));border:1px solid var(--cmb-border);border-radius:22px;padding:16px;margin:0 0 14px;box-shadow:0 16px 50px rgba(0,0,0,.18)}
.cmb-crew-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px;font-size:11px;letter-spacing:.13em;font-weight:900;color:#d8d8df}.cmb-crew-section-head span:last-child{color:var(--cmb-blue)}
.cmb-crew-segment{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cmb-crew-segment button,.cmb-crew-primary,.cmb-crew-secondary,.cmb-crew-preview,.cmb-crew-login button{appearance:none;border:1px solid var(--cmb-border);background:#161622;color:#fff;border-radius:14px;padding:14px 12px;font:inherit;font-weight:900;cursor:pointer;min-height:48px}.cmb-crew-segment button.active{background:linear-gradient(135deg,var(--cmb-pink),#be3dff);border-color:transparent;box-shadow:0 0 24px rgba(255,62,165,.22)}
.cmb-crew-stops{display:flex;flex-direction:column;gap:9px}.cmb-crew-stop{display:grid;grid-template-columns:44px 1fr;gap:12px;width:100%;text-align:left;align-items:center;border:1px solid var(--cmb-border);background:#101019;color:#fff;padding:12px;border-radius:16px;cursor:pointer}.cmb-crew-stop.active{border-color:rgba(255,62,165,.8);background:linear-gradient(90deg,rgba(255,62,165,.17),rgba(81,200,255,.06));box-shadow:0 0 0 1px rgba(255,62,165,.15) inset}.cmb-crew-stop-num{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#1b1b29;font-weight:900;color:var(--cmb-blue)}.cmb-crew-stop strong{display:block;font-size:15px;line-height:1.25}.cmb-crew-stop small{display:block;color:var(--cmb-muted);font-size:12px;line-height:1.35;margin-top:3px}
.cmb-crew-card textarea,.cmb-crew-card select,.cmb-crew-login input{width:100%;background:#09090f!important;color:#fff!important;border:1px solid var(--cmb-border)!important;border-radius:14px!important;padding:14px!important;font:inherit!important;outline:none}.cmb-crew-card textarea:focus,.cmb-crew-card select:focus,.cmb-crew-login input:focus{border-color:var(--cmb-pink)!important;box-shadow:0 0 0 3px rgba(255,62,165,.12)!important}.cmb-crew-card label,.cmb-crew-login label{display:block;font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:8px;color:#d6d6df}
.cmb-crew-message-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.cmb-crew-primary{grid-column:1/-1;background:linear-gradient(135deg,var(--cmb-pink),#c33cff);border-color:transparent}.cmb-crew-secondary{background:#151520;font-size:12px}
.cmb-crew-preview{display:block;text-align:center;text-decoration:none;margin-top:18px;background:linear-gradient(135deg,#141422,#1c1621);border-color:rgba(81,200,255,.30)}.cmb-crew-footnote{text-align:center;color:var(--cmb-muted);font-size:12px;margin:10px 0 0}
.cmb-crew-login-shell{display:flex;align-items:center;justify-content:center}.cmb-crew-login{width:min(100%,430px);padding:28px;border:1px solid var(--cmb-border);background:rgba(13,13,22,.92);border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.35)}.cmb-crew-login img{margin-bottom:28px}.cmb-crew-login form{margin-top:24px}.cmb-crew-login input{font-size:28px!important;letter-spacing:.28em;text-align:center}.cmb-crew-login button{width:100%;margin-top:12px;background:linear-gradient(135deg,var(--cmb-pink),#c33cff);border:none}.cmb-crew-error{margin-top:16px;padding:10px 12px;border:1px solid rgba(255,90,90,.38);background:rgba(255,90,90,.09);color:#ffb8b8;border-radius:12px;font-size:13px}
.cmb-crew-busy{opacity:.55;pointer-events:none}.cmb-crew-ok{color:var(--cmb-good)!important}.cmb-crew-fail{color:#ff8d8d!important}
@media (min-width:620px){.cmb-crew-shell{padding:32px 22px 54px}.cmb-crew-message-actions{grid-template-columns:1fr 1fr 1.3fr}.cmb-crew-primary{grid-column:auto}}
/* Check-in scanner */
.cmb-crew-ticket-warning{margin:0 0 12px;padding:11px 12px;border:1px solid rgba(255,183,77,.28);background:rgba(255,183,77,.08);color:#ffd291;border-radius:12px;font-size:12px;line-height:1.45}
.cmb-crew-ticket-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.cmb-crew-ticket-stats>div{background:#0b0b13;border:1px solid var(--cmb-border);border-radius:14px;padding:12px 8px;text-align:center}.cmb-crew-ticket-stats strong{display:block;font-size:25px;line-height:1;color:#fff;margin-bottom:7px}.cmb-crew-ticket-stats span{display:block;font-size:9px;line-height:1.25;letter-spacing:.12em;font-weight:900;color:var(--cmb-muted)}
.cmb-crew-scan-button{width:100%;appearance:none;border:0;border-radius:16px;padding:17px 14px;background:linear-gradient(135deg,var(--cmb-pink),#be3dff);color:#fff;font:inherit;font-weight:950;letter-spacing:.06em;cursor:pointer;box-shadow:0 10px 34px rgba(255,62,165,.18)}
.cmb-crew-manual{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.cmb-crew-manual input{min-width:0;text-transform:uppercase}.cmb-crew-manual .cmb-crew-secondary{white-space:nowrap}
.cmb-crew-ticket-result{margin-top:12px;padding:16px;border-radius:18px;border:1px solid var(--cmb-border);background:#0b0b13}.cmb-crew-ticket-result.good{border-color:rgba(112,255,164,.35);background:rgba(112,255,164,.07)}.cmb-crew-ticket-result.warn{border-color:rgba(255,190,92,.4);background:rgba(255,190,92,.07)}.cmb-crew-ticket-result.bad{border-color:rgba(255,90,90,.42);background:rgba(255,90,90,.08)}.cmb-ticket-result-title{font-size:12px;letter-spacing:.14em;font-weight:950;color:var(--cmb-good);margin-bottom:8px}.cmb-crew-ticket-result.warn .cmb-ticket-result-title{color:#ffd08a}.cmb-crew-ticket-result.bad .cmb-ticket-result-title{color:#ff9d9d}.cmb-ticket-message{font-size:12px;line-height:1.45;color:#ffb0b0;margin:0 0 10px}.cmb-ticket-person{font-size:24px;line-height:1.05;font-weight:950;letter-spacing:-.025em}.cmb-ticket-event{font-size:13px;line-height:1.4;color:#d6d6df;margin-top:6px}.cmb-ticket-meta{font-size:11px;line-height:1.45;color:var(--cmb-muted);margin-top:7px}.cmb-ticket-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.cmb-ticket-actions .cmb-crew-primary{grid-column:auto}.cmb-ticket-actions button:only-child{grid-column:1/-1}
.cmb-crew-warn{color:#ffd08a!important}
.cmb-crew-scanner[hidden]{display:none!important}.cmb-crew-scanner{position:fixed;inset:0;z-index:999999;background:rgba(2,2,7,.94);padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center}.cmb-crew-scanner-panel{width:min(100%,520px);background:#0b0b13;border:1px solid var(--cmb-border);border-radius:22px;padding:12px;box-shadow:0 30px 100px rgba(0,0,0,.6)}.cmb-crew-scanner-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px 12px;font-size:12px;letter-spacing:.12em}.cmb-crew-scanner-head button{appearance:none;border:1px solid var(--cmb-border);background:#171722;color:#fff;border-radius:999px;padding:8px 11px;font:inherit;font-size:10px;font-weight:900}.cmb-crew-camera-wrap{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:3/4;background:#000}.cmb-crew-camera-wrap video{width:100%;height:100%;object-fit:cover;display:block}.cmb-crew-camera-frame{position:absolute;left:12%;right:12%;top:26%;aspect-ratio:1;border:3px solid rgba(255,255,255,.95);border-radius:24px;box-shadow:0 0 0 9999px rgba(0,0,0,.28),0 0 30px rgba(255,62,165,.32)}.cmb-crew-scanner-panel p{margin:12px 4px 3px;color:var(--cmb-muted);font-size:12px;text-align:center}.cmb-scanner-open{overflow:hidden}
@media(max-width:420px){.cmb-crew-manual{grid-template-columns:1fr}.cmb-crew-ticket-stats strong{font-size:22px}.cmb-ticket-actions{grid-template-columns:1fr}.cmb-ticket-actions .cmb-crew-primary{grid-column:1/-1}}
