:root{--falcon-red:#b5122b;--falcon-black:#050505;--ink:#111827;--muted:#64748b;--line:#e5e7eb;--bg:#f5f7fb;--card:#fff;--success:#12805c;--warning:#b7791f;--shadow:0 22px 70px rgba(15,23,42,.14);--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,Helvetica,sans-serif;background:linear-gradient(135deg,#f6f7fb 0%,#eef2f7 55%,#fff 100%);color:var(--ink);min-height:100vh}.site-header{min-height:86px;background:#000;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 clamp(18px,5vw,72px);position:sticky;top:0;z-index:20;box-shadow:0 8px 22px rgba(0,0,0,.18)}.site-header .brand{display:flex;align-items:center;min-width:0}.site-header img{height:58px;max-width:min(330px,42vw);width:auto;display:block;object-fit:contain}.site-nav{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.site-nav a{color:#fff;text-decoration:none;font-weight:800;font-size:15px;letter-spacing:.2px;white-space:nowrap}.site-nav a:hover{color:#f2c3cc}.public-shell{min-height:calc(100vh - 86px);display:flex;align-items:center;justify-content:center;padding:clamp(18px,4vw,54px)}.card{width:min(100%,1180px);background:rgba(255,255,255,.97);border:1px solid rgba(226,232,240,.9);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.hero-card{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.hero-panel{background:radial-gradient(circle at 20% 10%,rgba(181,18,43,.35),transparent 36%),linear-gradient(145deg,#070707,#1c1c1c);color:#fff;padding:clamp(26px,4vw,52px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.hero-panel:after{content:"";position:absolute;right:-70px;bottom:-120px;width:420px;height:420px;background:url('falcon-logo.png') center/contain no-repeat;opacity:.07}.kicker{display:inline-flex;align-items:center;gap:10px;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:9px 14px;font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.kicker:before{content:"";width:9px;height:9px;background:var(--falcon-red);border-radius:50%}.hero-panel h1{font-size:clamp(31px,4vw,54px);line-height:1.04;margin:28px 0 16px;letter-spacing:-.04em}.hero-panel p{font-size:clamp(15px,1.5vw,18px);line-height:1.7;color:#d9dee8;max-width:560px}.safety-points{display:grid;gap:12px;margin-top:30px}.safety-points div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px 16px;color:#fff;font-weight:700}.video-panel{padding:clamp(22px,3.5vw,44px);display:flex;flex-direction:column;justify-content:center;min-width:0}.brand-mobile{display:none}.notice{background:#fff7ed;border:1px solid #fed7aa;border-radius:16px;padding:15px 16px;margin:0 0 20px;color:#7c2d12;line-height:1.55}.video-wrap{position:relative;background:#000;border-radius:22px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.22);aspect-ratio:16/9;width:100%}.video-wrap video{display:block;width:100%;height:100%;object-fit:contain;background:#000;pointer-events:none}.play-overlay{position:absolute;inset:0;margin:auto;width:min(76%,285px);height:62px;border:0;border-radius:999px;background:#fff;color:#111;font-weight:950;font-size:17px;box-shadow:0 14px 36px rgba(0,0,0,.35);cursor:pointer}.progress-box{margin-top:20px}.progress-line{height:12px;background:#e2e8f0;border-radius:99px;overflow:hidden}.progress-line span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--falcon-red),#df3650);transition:width .25s ease}.status-row{display:flex;justify-content:space-between;gap:12px;margin-top:10px;color:var(--muted);font-weight:800;font-size:14px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:20px;z-index:60;backdrop-filter:blur(7px)}.hidden{display:none!important}.modal-box{background:#fff;border-radius:24px;padding:clamp(22px,4vw,34px);width:min(100%,860px);box-shadow:0 28px 90px rgba(0,0,0,.35);max-height:92vh;overflow:auto}.modal-box.small{max-width:560px}.modal-logo{height:54px;max-width:280px;object-fit:contain;background:#000;border-radius:12px;padding:8px;margin-bottom:10px}.modal-box h2{margin:8px 0 10px;font-size:clamp(24px,3vw,34px)}.modal-box p{color:#475569;line-height:1.65}.check{display:flex;gap:12px;align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:16px;margin:20px 0;font-weight:800}.check input{width:20px;height:20px;margin-top:2px;accent-color:var(--falcon-red)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.full-field{display:block;margin-top:16px}label{display:block;font-weight:850;color:#111827}input,textarea,select{width:100%;padding:13px 14px;border:1px solid #cbd5e1;border-radius:14px;margin-top:7px;font:inherit;background:#fff}input:focus,textarea:focus,select:focus{outline:3px solid rgba(181,18,43,.14);border-color:var(--falcon-red)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#111;color:#fff;border:0;border-radius:14px;padding:13px 18px;text-decoration:none;font-weight:950;margin-top:16px;cursor:pointer;min-height:48px}.btn:hover{background:var(--falcon-red)}.btn.secondary{background:#fff;color:#111;border:1px solid #d1d5db}.btn.secondary:hover{border-color:var(--falcon-red);color:var(--falcon-red)}.btn.danger{background:#991b1b}.btn:disabled{opacity:.45;cursor:not-allowed;background:#475569}.ok{background:#ecfdf5;border:1px solid #86efac;color:#065f46;padding:14px;border-radius:14px}.bad{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:14px;border-radius:14px}.admin-shell{min-height:calc(100vh - 86px);padding:clamp(14px,3vw,36px)}.admin-card{width:100%;padding:clamp(18px,3vw,32px);overflow:auto}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:18px}.admin-title h1{margin:0;font-size:clamp(25px,3vw,38px)}.admin-title p{margin:6px 0 0;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.stat b{display:block;font-size:28px}.stat span{color:#64748b;font-weight:800}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;background:#fff}table{width:100%;border-collapse:collapse;font-size:13px;background:#fff;min-width:1150px}td,th{border-bottom:1px solid #edf2f7;padding:12px 11px;text-align:left;vertical-align:top}th{background:#f8fafc;color:#334155;text-transform:uppercase;font-size:11px;letter-spacing:.06em;position:sticky;top:0}.badge{display:inline-flex;border-radius:999px;padding:5px 10px;font-weight:950;font-size:12px}.badge.okay{background:#dcfce7;color:#166534}.badge.wait{background:#fef3c7;color:#92400e}.badge.badge-red{background:#fee2e2;color:#991b1b}.login-card{max-width:540px;padding:34px}.footer-note{margin-top:20px;color:#94a3b8;font-size:13px;text-align:center}.dark-note{text-align:left;color:#cbd5e1}.filter-box{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-bottom:16px}.filter-box label{min-width:160px}.pass-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:#eef2f7}.pass-card{width:min(100%,680px);background:#fff;border-radius:28px;box-shadow:var(--shadow);overflow:hidden;border:1px solid #e5e7eb}.pass-head{background:#000;padding:22px 28px;display:flex;justify-content:space-between;align-items:center;gap:16px}.pass-head img{height:62px;max-width:320px;object-fit:contain}.pass-status{padding:8px 12px;border-radius:999px;font-weight:950;background:#dcfce7;color:#166534}.pass-status.expired{background:#fee2e2;color:#991b1b}.pass-body{padding:28px}.pass-body h1{margin:0 0 8px;font-size:32px}.qr{text-align:center;margin:20px 0}.qr img{width:210px;height:210px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail{border:1px solid #e5e7eb;border-radius:16px;padding:14px}.detail span{display:block;color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.detail b{display:block;margin-top:6px;font-size:16px;word-break:break-word}.smtp-test-log{background:#0f172a;color:#d1fae5;border-radius:16px;padding:16px;min-height:180px;font-family:Consolas,monospace;white-space:pre-wrap}.pulse{display:inline-block;width:10px;height:10px;background:#22c55e;border-radius:50%;box-shadow:0 0 0 rgba(34,197,94,.7);animation:pulse 1s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.7)}70%{box-shadow:0 0 0 10px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}@media(max-width:1100px){.hero-card{grid-template-columns:.9fr 1.1fr}.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.site-header{min-height:76px}.site-header img{height:48px}.hero-card{grid-template-columns:1fr;min-height:0}.hero-panel{min-height:320px}.public-shell{min-height:calc(100vh - 76px);align-items:flex-start}.video-panel{padding:26px}.grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}}@media(max-width:640px){body{background:#f7f8fb}.site-header{padding:12px 14px;gap:10px;align-items:center}.site-header img{height:42px;max-width:58vw}.site-nav{gap:12px;margin-left:auto}.site-nav a{font-size:13px}.public-shell{padding:12px}.hero-panel{display:none}.hero-card{border-radius:18px}.brand-mobile{display:block;text-align:left;margin-bottom:18px}.brand-mobile img{height:54px;max-width:240px;background:#000;border-radius:12px;padding:8px}.brand-mobile h1{font-size:25px;line-height:1.1;margin:14px 0 6px}.brand-mobile p{color:#64748b;margin:0}.video-panel{padding:18px}.notice{font-size:14px}.video-wrap{border-radius:16px}.play-overlay{height:54px;font-size:15px}.status-row{font-size:12px;flex-direction:column}.modal{padding:10px}.modal-box{border-radius:18px;padding:18px}.admin-shell{padding:10px}.admin-card{border-radius:18px;padding:14px}.dashboard-grid{grid-template-columns:1fr}.filter-box{display:block}.filter-box label{margin-top:10px}.btn{width:100%;margin-top:10px}.pass-wrap{padding:12px}.pass-head{display:block}.pass-head img{height:48px}.pass-status{display:inline-flex;margin-top:14px}.pass-body{padding:20px}.pass-body h1{font-size:25px}.qr img{width:180px;height:180px}table{font-size:12px}}
/* v7 logo and responsive fixes */
.site-header img{height:58px;max-width:220px;width:auto;object-fit:contain;display:block}.modal-logo,.content-logo,.pass-logo{height:72px;max-width:260px;width:auto;object-fit:contain;display:block}.login-card .modal-logo{margin-bottom:24px}.public-shell,.admin-shell{width:100%;box-sizing:border-box}.card{box-sizing:border-box}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-wrap table{min-width:1100px}@media (max-width:1024px){.site-header{padding:14px 24px}.site-header img{height:50px}.public-shell,.admin-shell{padding:22px}.login-card,.admin-card{max-width:100%!important}}@media (max-width:768px){.site-header{min-height:auto;gap:12px;flex-wrap:wrap}.site-header img{height:44px}.site-nav{width:100%;justify-content:flex-start;gap:12px;overflow-x:auto}.public-shell,.admin-shell{padding:14px}.card{border-radius:20px;padding:18px!important}.grid{grid-template-columns:1fr!important}.modal-logo,.content-logo,.pass-logo{height:56px;max-width:210px}.video-wrap{border-radius:18px}}
.modal-logo{background:transparent!important;padding:0!important;border-radius:0!important}
.brand-mobile img{background:#000!important}
/* v8 visitor photo and laptop responsiveness fixes */
.site-header img{max-height:72px;width:auto;object-fit:contain}.modal-logo,.login-card img,.admin-card .modal-logo{max-width:170px;max-height:80px;width:auto;height:auto;object-fit:contain}.photo-box{border:1px dashed #cbd5e1;border-radius:18px;padding:16px;background:#f8fafc}.photo-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.photo-actions input[type=file]{max-width:100%}.camera-preview,.photo-preview{width:180px;height:180px;object-fit:cover;border-radius:22px;border:3px solid #e5e7eb;margin-top:12px;background:#111}.hint{font-size:13px;color:#64748b;margin:10px 0 0}.skip-card{border:1px solid #fee2e2;background:#fff7f7}.pass-photo{width:138px;height:138px;object-fit:cover;border-radius:24px;border:4px solid #fff;box-shadow:0 18px 38px rgba(15,23,42,.18);background:#fff;margin:-60px auto 18px;display:block}.admin-nav-note{font-size:12px;color:#94a3b8;margin-left:10px}@media(max-width:1200px){.public-shell{padding:26px 18px}.hero-card{grid-template-columns:1fr}.hero-panel{min-height:auto}.video-panel{padding:22px}.site-header{height:auto;min-height:82px;padding:12px 22px}.brand img,.site-header>a>img{max-height:62px}.admin-shell{padding:24px 14px}.admin-card{padding:22px}.table-wrap{overflow:auto;max-width:100%}table{min-width:1100px}}@media(max-width:768px){.site-header{padding:10px 14px;gap:10px}.site-nav{gap:10px;font-size:14px}.brand img,.site-header>a>img{max-height:48px}.card{border-radius:22px}.modal-box{width:calc(100vw - 24px);max-height:90vh;overflow:auto;padding:22px}.grid{grid-template-columns:1fr!important}.admin-toolbar{flex-direction:column;align-items:flex-start;gap:14px}.dashboard-grid{grid-template-columns:1fr 1fr}.pass-card{margin:12px;border-radius:24px}.pass-head{padding:18px}.pass-head img{max-height:54px}.detail-grid{grid-template-columns:1fr!important}}@media(max-width:480px){.dashboard-grid{grid-template-columns:1fr}.hero-panel h1{font-size:30px}.video-panel{padding:16px}.site-nav a{padding:8px 6px}.photo-actions{display:block}.photo-actions .btn{margin-top:10px;width:100%}}
/* v10 visitor pass and dashboard refinements */
.action-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:18px}.success-box{text-align:center}.search-panel{display:flex;gap:10px;align-items:center;margin:18px 0;background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:12px}.search-panel input{flex:1;min-width:220px}.cr80-pass-wrap *{box-sizing:border-box}.cr80-card{page-break-inside:avoid}@media(max-width:760px){.search-panel{flex-direction:column;align-items:stretch}.search-panel input{min-width:0}.cr80-pass-wrap{padding:10px!important;border-radius:18px!important}.cr80-card{min-height:0!important;aspect-ratio:auto!important;display:block!important;border-radius:22px!important}.cr80-left,.cr80-right{width:100%!important;flex:unset!important}.cr80-left{padding:20px!important}.cr80-right{padding:22px!important;min-height:260px}.cr80-left>div:nth-child(2){flex-direction:column!important}.cr80-left table td{white-space:normal!important;word-break:break-word!important}.cr80-right img{width:170px!important;height:170px!important}}@media print{.site-header,.pdf-actions,.pdf-note{display:none!important}.cr80-pass-wrap{background:#fff!important;box-shadow:none!important}.cr80-card{box-shadow:none!important}}


/* v11 fullscreen video refinement */
.video-wrap{position:relative;}
.fullscreen-btn{
  position:absolute;
  right:16px;
  bottom:16px;
  z-index:8;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(0,0,0,.72);
  color:#fff;
  border-radius:999px;
  padding:10px 16px;
  font-weight:800;
  letter-spacing:.2px;
  cursor:pointer;
  backdrop-filter:blur(8px);
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.fullscreen-btn:hover{background:#111;transform:translateY(-1px);}
.video-wrap:fullscreen,
.video-wrap:-webkit-full-screen{background:#000;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;}
.video-wrap:fullscreen video,
.video-wrap:-webkit-full-screen video{width:100vw;height:100vh;object-fit:contain;background:#000;}
video:fullscreen,
video:-webkit-full-screen{object-fit:contain;background:#000;}
@media(max-width:768px){
  .fullscreen-btn{right:10px;bottom:10px;padding:9px 12px;font-size:12px;}
}

/* v12 public visitor-only header: remove public navigation and make page dedicated to video induction */
.visitor-only-header{
  justify-content:flex-start;
  min-height:92px;
  padding:14px clamp(16px,5vw,72px);
}
.visitor-brand{
  gap:22px;
  width:100%;
}
.visitor-brand img{
  height:62px;
  max-width:min(330px,48vw);
  object-fit:contain;
}
.visitor-title{
  color:#fff;
  display:flex;
  flex-direction:column;
  gap:4px;
  border-left:1px solid rgba(255,255,255,.22);
  padding-left:20px;
  min-width:0;
}
.visitor-title strong{
  font-size:clamp(18px,2vw,25px);
  line-height:1.15;
  letter-spacing:-.02em;
  font-weight:950;
}
.visitor-title span{
  color:#cbd5e1;
  font-size:clamp(12px,1.2vw,14px);
  font-weight:700;
  letter-spacing:.02em;
}
.visitor-only-header .site-nav{display:none!important;}
@media(max-width:768px){
  .visitor-only-header{min-height:82px;padding:10px 14px;}
  .visitor-brand{gap:12px;align-items:center;}
  .visitor-brand img{height:48px;max-width:165px;}
  .visitor-title{padding-left:12px;}
  .visitor-title strong{font-size:16px;}
  .visitor-title span{font-size:11px;}
}
@media(max-width:420px){
  .visitor-title span{display:none;}
  .visitor-brand img{height:42px;max-width:142px;}
}

/* v14 enterprise visitor log redesign and expired pass handling */
.visitor-admin-shell{background:linear-gradient(135deg,#f4f7fb,#eef2f7);}
.visitor-log-card{padding:clamp(18px,3vw,32px)!important;border-radius:28px!important;}
.visitor-log-top{align-items:flex-start;border-bottom:1px solid #e5e7eb;padding-bottom:18px;margin-bottom:18px;}
.eyebrow{display:inline-flex;background:#fff1f2;color:#b5122b;border:1px solid #fecdd3;border-radius:999px;padding:7px 11px;font-weight:950;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px;}
.visitor-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.visitor-stats{grid-template-columns:repeat(5,minmax(0,1fr));margin:18px 0;}
.visitor-stats .stat{position:relative;overflow:hidden;border:1px solid #e2e8f0;background:linear-gradient(145deg,#fff,#f8fafc);}
.visitor-stats .stat:after{content:"";position:absolute;right:-26px;top:-26px;width:82px;height:82px;background:rgba(181,18,43,.08);border-radius:50%;}
.visitor-search{box-shadow:0 14px 34px rgba(15,23,42,.06);background:#fff;margin:18px 0 22px;border-radius:18px;padding:14px;}
.search-icon{width:40px;height:40px;border-radius:14px;background:#0f172a;color:#fff;display:grid;place-items:center;font-size:22px;font-weight:900;}
.empty-state{background:#fff;border:1px dashed #cbd5e1;border-radius:22px;padding:34px;text-align:center;color:#64748b;}
.empty-state h3{margin:0 0 6px;color:#111827;}
.visitor-log-list{display:grid;gap:16px;}
.visitor-log-item{display:grid;grid-template-columns:150px minmax(210px,1.2fr) minmax(210px,1fr) minmax(170px,.75fr) minmax(250px,1.1fr) minmax(180px,.8fr) 150px;gap:14px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:16px;box-shadow:0 15px 35px rgba(15,23,42,.06);transition:.2s ease;}
.visitor-log-item:hover{transform:translateY(-2px);box-shadow:0 22px 45px rgba(15,23,42,.10);border-color:#cbd5e1;}
.visitor-log-status{display:flex;flex-direction:column;gap:7px;min-width:0;}
.status-pill{display:inline-flex;width:max-content;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:950;letter-spacing:.04em;text-transform:uppercase;border:1px solid transparent;}
.status-pill.valid{background:#dcfce7;color:#166534;border-color:#86efac;}
.status-pill.pending{background:#fef3c7;color:#92400e;border-color:#fde68a;}
.status-pill.expired{background:#fee2e2;color:#991b1b;border-color:#fecaca;}
.visitor-log-status strong{font-size:13px;color:#0f172a;word-break:break-word;}.visitor-log-status small{color:#64748b;font-weight:800;}
.visitor-person{display:flex;align-items:center;gap:14px;min-width:0;}
.visitor-person img,.avatar-fallback{width:58px;height:58px;border-radius:18px;object-fit:cover;flex:0 0 58px;border:3px solid #fff;box-shadow:0 10px 22px rgba(15,23,42,.15);background:#e5e7eb;}
.avatar-fallback{display:grid;place-items:center;font-size:24px;font-weight:950;color:#b5122b;background:#fff1f2;}
.visitor-person h3{margin:0;font-size:17px;line-height:1.15;color:#0f172a;word-break:break-word;}.visitor-person p{margin:5px 0 3px;color:#334155;font-weight:800;line-height:1.2;word-break:break-word;}.visitor-person span{color:#64748b;font-size:12px;font-weight:800;}
.visitor-contact,.visitor-period,.visitor-timeline,.visitor-meta{display:grid;gap:9px;min-width:0;}
.visitor-contact div,.visitor-period div,.visitor-timeline div,.visitor-meta div{min-width:0;}
.visitor-contact span,.visitor-period span,.visitor-timeline span,.visitor-meta span{display:block;color:#64748b;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px;}
.visitor-contact b,.visitor-period b,.visitor-timeline b,.visitor-meta b{display:block;color:#0f172a;font-size:13px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}
.visitor-timeline b{white-space:normal;font-size:12px;color:#334155;}.visitor-meta small{display:block;color:#64748b;font-size:11px;margin-top:2px;word-break:break-word;}
.email-state.sent{color:#166534!important}.email-state.failed{color:#991b1b!important}.visitor-row-actions{display:grid;gap:8px;justify-items:stretch;}.visitor-row-actions .btn{width:100%;text-align:center;margin:0!important;padding:10px 12px;font-size:13px;}.expired-note{font-size:12px;color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:12px;padding:9px;text-align:center;font-weight:800;}
@media(max-width:1450px){.visitor-log-item{grid-template-columns:130px minmax(220px,1.2fr) minmax(210px,1fr) minmax(160px,.8fr);}.visitor-timeline,.visitor-meta,.visitor-row-actions{grid-column:auto;}.visitor-row-actions{grid-template-columns:1fr 1fr;grid-column:1/-1;}.visitor-timeline{grid-column:1/3}.visitor-meta{grid-column:3/5}}
@media(max-width:1000px){.visitor-stats{grid-template-columns:repeat(2,minmax(0,1fr));}.visitor-log-item{grid-template-columns:1fr;align-items:start;}.visitor-timeline,.visitor-meta,.visitor-row-actions{grid-column:auto}.visitor-row-actions{grid-template-columns:1fr 1fr}.visitor-actions{justify-content:flex-start}.visitor-log-top{flex-direction:column}.visitor-contact b,.visitor-period b,.visitor-meta b{white-space:normal}}
@media(max-width:640px){.visitor-stats{grid-template-columns:1fr}.visitor-search{display:grid;grid-template-columns:40px 1fr;}.visitor-search button,.visitor-search a{grid-column:1/-1}.visitor-row-actions{grid-template-columns:1fr}.visitor-person{align-items:flex-start}.visitor-log-card{border-radius:18px!important;padding:14px!important}.visitor-log-item{border-radius:18px;padding:14px}.visitor-contact b{white-space:normal;word-break:break-word}}

/* v14 CR80 fixes for text overflow and mobile stacking */
@media(max-width:760px){
  .cr80-card{display:block!important;aspect-ratio:auto!important;min-height:0!important;border-radius:24px!important;}
  .cr80-card>div:first-child{height:10px!important;width:100%!important;}
  .cr80-left{width:100%!important;padding:18px!important;display:block!important;}
  .cr80-left>div:nth-child(2){display:block!important;}
  .cr80-left>div:nth-child(2)>div:first-child{margin-bottom:12px!important;}
  .cr80-right{width:100%!important;display:grid!important;gap:18px!important;padding:20px!important;min-height:285px;}
  .cr80-right img{width:170px!important;height:170px!important;}
}

/* v17: Enterprise resume safety briefing button alignment */
.play-overlay.resume-cta{
  position:relative!important;
  inset:auto!important;
  margin:16px 0 12px!important;
  width:100%!important;
  min-height:62px!important;
  height:auto!important;
  border:0!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#b5122b,#7f0c22)!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  box-shadow:0 18px 34px rgba(181,18,43,.26)!important;
  font-size:17px!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  cursor:pointer!important;
  overflow:hidden!important;
  transform:none!important;
}
.play-overlay.resume-cta:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.16),transparent 42%,rgba(255,255,255,.08));
  pointer-events:none;
}
.play-overlay.resume-cta:hover{
  background:linear-gradient(135deg,#9f1028,#600817)!important;
  transform:translateY(-1px)!important;
}
.play-overlay.resume-cta .resume-icon{
  width:34px;
  height:34px;
  border-radius:50%;
  display:inline-grid;
  place-items:center;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.22);
  font-size:14px;
  flex:0 0 34px;
}
.play-overlay.resume-cta span,
.play-overlay.resume-cta small{
  position:relative;
  z-index:1;
}
.play-overlay.resume-cta small{
  color:#ffe4e6;
  font-size:12px;
  font-weight:850;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-left:4px;
}
.video-panel .video-wrap + .play-overlay.resume-cta + .progress-box,
.video-panel .video-wrap + .play-overlay.resume-cta{
  max-width:100%;
}
@media(max-width:640px){
  .play-overlay.resume-cta{
    min-height:58px!important;
    border-radius:16px!important;
    font-size:15px!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    margin:14px 0 10px!important;
    padding:12px 14px!important;
  }
  .play-overlay.resume-cta .resume-icon{width:30px;height:30px;flex-basis:30px;}
  .play-overlay.resume-cta small{width:100%;text-align:center;margin-left:0;font-size:11px;}
}
