.scanner-layout{-webkit-overflow-scrolling:touch;color:#fff;background:#0b0d12;min-height:100dvh;overflow:hidden auto}.scanner-header{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-sizing:border-box;background:#0b0d12;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 20px;display:flex;position:fixed;top:0;left:0}@media (width<=768px){.scanner-header{padding:0 16px}}.scanner-logo{width:auto;height:36px;display:block}@media (width<=480px){.scanner-logo{height:32px}}.scanner-header-right{align-items:center;gap:16px;display:flex}.scanner-user-id{align-items:center;gap:7px;min-width:0;max-width:220px;display:flex}@media (width<=600px){.scanner-user-id{max-width:130px}}@media (width<=480px){.scanner-user-id{max-width:90px}}.scanner-user-name{color:#ffffffbf;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.scanner-user-role{letter-spacing:.06em;text-transform:uppercase;color:#fff6;background:#ffffff12;border:1px solid #ffffff1a;border-radius:6px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:600;line-height:16px}@media (width<=600px){.scanner-user-role{display:none}}.logout-btn{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:6px;align-items:center;gap:8px;min-height:44px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.logout-btn:hover{background:#ffffff0f;border-color:#fff3}.logout-btn:active{transform:translateY(1px)}.logout-btn .logout-icon{font-size:18px}@media (width<=480px){.logout-btn{padding:8px 12px;font-size:13px}.logout-btn span{display:none}}.scanner-main-content{justify-content:center;width:100%;padding-top:64px;display:flex}.otp-input-group{justify-content:center;gap:12px;width:100%;display:flex}.otp-input-box{color:#fff;text-align:center;caret-color:#fff9;box-sizing:border-box;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:10px;width:44px;height:48px;padding:0;font-size:20px;font-weight:600;transition:all .2s}.otp-input-box::placeholder{color:#fff6}.otp-input-box:focus{background:#ffffff14;border-color:#5b5fc7;outline:none;box-shadow:0 0 0 2px #5b5fc740}.otp-input-box:disabled{opacity:.5;cursor:not-allowed}.otp-input-box::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.otp-input-box::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@media (width<=380px){.otp-input-box{width:38px;height:44px;font-size:18px}}.login-page{color:#fff;background:#0b0d12;justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.login-card{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:16px;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:400px;padding:48px;display:flex}@media (width<=480px){.login-card{padding:32px 20px}}.login-logo{width:auto;max-width:100%;height:64px;margin:0 auto;display:block}@media (width<=480px){.login-logo{height:56px}}.login-tagline{color:#ffffff73;letter-spacing:.05em;text-align:center;margin:-12px 0 0;font-size:13px;font-weight:400}.login-subtitle{color:#fff9;text-align:center;margin:0;font-size:14px}.login-form{flex-direction:column;gap:16px;width:100%;display:flex}.login-input{color:#fff;box-sizing:border-box;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:10px;width:100%;padding:16px;font-size:16px;transition:all .2s}.login-input::placeholder{color:#fff6}.login-input:focus{background:#ffffff14;border-color:#ffffff4d;outline:none}.login-input:disabled{opacity:.5;cursor:not-allowed}.login-button{color:#fff;cursor:pointer;background:#5b5fc7;border:none;border-radius:10px;width:100%;padding:16px;font-size:14px;font-weight:500;transition:all .2s}.login-button:hover:not(:disabled){background:#7377d9}.login-button:disabled{opacity:.5;cursor:not-allowed}.login-error{color:#ff6b6b;text-align:center;margin:0;font-size:13px}.login-back-btn{color:#fff9;cursor:pointer;background:0 0;border:none;padding:8px;font-size:13px}.login-back-btn:hover{color:#fff}.handoff-page{color:#fff;background:#0b0d12;justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.handoff-card{text-align:center;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:16px;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:400px;padding:48px;display:flex}@media (width<=480px){.handoff-card{padding:32px 20px}}.handoff-logo{width:auto;max-width:100%;height:64px;margin:0 auto;display:block}@media (width<=480px){.handoff-logo{height:56px}}.handoff-spinner{border:3px solid #ffffff1f;border-top-color:#5b5fc7;border-radius:50%;width:36px;height:36px;animation:.8s linear infinite handoff-spin}@keyframes handoff-spin{to{transform:rotate(360deg)}}.handoff-message{color:#fff9;margin:0;font-size:14px}.handoff-error-icon{color:#ff6b6b;background:#cf222e26;border-radius:9999px;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;font-weight:700;display:flex}.handoff-error-title{color:#fff;margin:0;font-size:16px;font-weight:600}.handoff-error-message{color:#ffffff8c;margin:0;font-size:14px;line-height:1.5}.handoff-login-btn{color:#fff;cursor:pointer;background:#5b5fc7;border:none;border-radius:10px;width:100%;padding:16px;font-size:14px;font-weight:500;transition:all .2s}.handoff-login-btn:hover{background:#7377d9}.scanner-content{justify-content:center;align-items:center;width:100%;min-height:calc(100vh - 64px);padding:24px 16px;display:flex}.scanner-content-inner{text-align:center;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:592px;display:flex}.scanner-icon-wrapper{justify-content:center;align-items:center;display:flex}.scanner-icon-wrapper .scanner-icon{color:#fff;opacity:1;filter:drop-shadow(0 0 8px #ffffff26);font-size:80px}@media (width<=768px){.scanner-icon-wrapper .scanner-icon{font-size:64px}}h2{letter-spacing:-.01em;color:#fff;margin:0;font-size:28px;font-weight:600}@media (width<=768px){h2{font-size:24px}}.scanner-subtitle{color:#fff9;margin:0;font-size:15px}@media (width<=768px){.scanner-subtitle{font-size:14px}}.scanner-access-points{flex-direction:column;gap:16px;width:100%;display:flex}.ap-group{flex-direction:column;gap:10px;display:flex}.ap-group-label{letter-spacing:.05em;text-transform:uppercase;color:#ffffff73;margin:0;padding:0 4px;font-size:13px;font-weight:600}.scanner-access-point-card{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:14px;align-items:stretch;gap:8px;width:100%;min-height:80px;transition:all .2s;display:flex;overflow:hidden}.scanner-access-point-card:hover{background:#ffffff14;border-color:#ffffff1f;transform:translate(4px)}.scanner-access-point-card .ap-primary{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;padding:24px;transition:background .2s;display:flex}.scanner-access-point-card .ap-primary:hover{background:#ffffff0a}.scanner-access-point-card .ap-primary:active{background:#ffffff0f}.scanner-access-point-card .ap-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.scanner-access-point-card .ap-info h3{color:#fff;letter-spacing:-.01em;margin:0;font-size:16px;font-weight:600;line-height:1.3}.scanner-access-point-card .ap-info .ap-site{color:#ffffffb3;margin:0;font-size:14px;font-weight:500;line-height:1.4}.scanner-access-point-card .ap-info .ap-location{color:#ffffff80;margin:0;font-size:13px;line-height:1.4}.scanner-access-point-card .ap-monitor{color:#93c5fd;cursor:pointer;background:#3b82f61f;border:1px solid #3b82f652;border-radius:10px;flex-shrink:0;align-items:center;gap:6px;margin-left:16px;padding:8px 12px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.scanner-access-point-card .ap-monitor svg{font-size:16px}.scanner-access-point-card .ap-monitor:hover{color:#fff;background:#3b82f633;border-color:#3b82f680}@media (width<=480px){.scanner-access-point-card .ap-monitor{border-radius:9999px;justify-content:center;align-items:center;width:40px;height:40px;margin-left:0;padding:0}.scanner-access-point-card .ap-monitor svg{font-size:18px}.scanner-access-point-card .ap-monitor span{display:none}}.scanner-access-point-card .ap-arrow{color:#fff9;flex-shrink:0;margin-left:12px;font-size:24px}@media (width<=768px){.scanner-access-point-card{align-items:center;padding:20px}.scanner-access-point-card .ap-info h3{font-size:15px}.scanner-access-point-card .ap-info p{font-size:13px}}.loading-state,.error-state,.empty-state{text-align:center;color:#fff9;width:100%;padding:24px 0}.error-message{color:#ff6b6b;margin-bottom:16px}.btn-retry{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;padding:12px 20px;font-size:14px;font-weight:500;transition:all .2s}.btn-retry:hover{background:#ffffff1f;border-color:#fff3}.pagination-controls{justify-content:center;align-items:center;gap:20px;width:100%;padding-top:8px;display:flex}.pagination-btn{color:#ffffffb3;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:10px;align-items:center;gap:4px;min-height:36px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.pagination-btn .pagination-icon{font-size:18px}.pagination-btn:hover:not(:disabled){color:#fff;background:#ffffff0f;border-color:#fff3}.pagination-btn:disabled{opacity:.3;cursor:not-allowed}@media (width<=480px){.pagination-btn{padding:8px 12px;font-size:12px}.pagination-btn span{display:none}}.pagination-indicator{color:#ffffff80;white-space:nowrap;text-align:center;min-width:48px;font-size:13px;font-weight:500}.resume-companion-card{color:#fff;text-align:left;cursor:pointer;background:linear-gradient(135deg,#3b82f62e,#3b82f614);border:1px solid #3b82f673;border-radius:14px;align-items:center;gap:16px;width:100%;padding:20px;transition:all .2s;display:flex}.resume-companion-card:hover{background:linear-gradient(135deg,#3b82f647,#3b82f624);border-color:#3b82f6b3;transform:translateY(-1px)}.resume-companion-card:active{transform:translateY(0)}.resume-companion-icon{color:#fff;background:#3b82f640;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:inline-flex}.resume-companion-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.resume-companion-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:#93c5fdf2;font-size:12px;font-weight:600}.resume-companion-title{color:#fff;letter-spacing:-.01em;text-overflow:ellipsis;font-size:15px;font-weight:600;line-height:1.3;overflow:hidden}.resume-companion-sub{color:#ffffffa6;font-size:13px;line-height:1.3}.resume-companion-arrow{color:#ffffffd9;flex-shrink:0;font-size:22px}.companion-cta{color:#93c5fd;cursor:pointer;text-align:left;background:#3b82f61f;border:1px solid #3b82f652;border-radius:14px;align-items:center;gap:16px;width:100%;margin-top:16px;padding:20px;transition:all .2s;display:none}.companion-cta:hover{color:#fff;background:#3b82f633;border-color:#3b82f680}@media (width<=768px){.companion-cta{display:inline-flex}}.companion-cta-icon{flex-shrink:0;font-size:28px}.companion-cta-body{flex-direction:column;gap:2px;min-width:0;display:flex}.companion-cta-title{color:inherit;font-size:15px;font-weight:600}.companion-cta-sub{color:#fff9;font-size:13px}.scan-input-panel{background:linear-gradient(135deg, var(--surface) 0%, #25253566 100%);border:1px solid var(--border);cursor:text;border-radius:14px;flex-direction:column;gap:16px;width:100%;padding:24px;display:flex}@media (width<=768px){.scan-input-panel{padding:20px}}.scan-input-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}@media (width<=480px){.scan-input-header{flex-direction:column;gap:2px}}.scan-input-label{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:13px;font-weight:500}.scan-input-hint{color:var(--text-muted);opacity:.5;font-size:12px;font-weight:400}.scan-input-row{gap:12px;display:flex}@media (width<=768px){.scan-input-row{flex-direction:column}}.scan-input-field{background:var(--bg);border:1px solid var(--border);min-height:48px;color:var(--text);border-radius:10px;flex:1;padding:16px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:16px;transition:border-color .2s,box-shadow .2s}.scan-input-field::placeholder{color:var(--text-muted);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.scan-input-field:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #5b5fc740,0 0 16px -4px #5b5fc733}.scan-input-field:disabled{opacity:.5;cursor:not-allowed}.scan-input-button{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-light) 100%);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;min-width:100px;min-height:48px;padding:16px 24px;font-size:14px;font-weight:500;transition:all .2s}.scan-input-button:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 12px -2px #5b5fc74d}.scan-input-button:active:not(:disabled){transform:translateY(1px)}.scan-input-button:disabled{opacity:.4;cursor:not-allowed}@media (width<=768px){.scan-input-button{padding:16px}}.recent-activity{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:100%;overflow:hidden}.recent-activity-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}@media (width<=768px){.recent-activity-header{padding:12px 20px}}.recent-activity-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:13px;font-weight:500}.recent-activity-count{color:var(--text-muted);background:var(--bg);text-align:center;border-radius:9999px;min-width:22px;padding:2px 8px;font-size:12px;font-weight:500}.recent-activity-list{flex-direction:column;max-height:420px;display:flex;overflow-y:auto}@media (width<=768px){.recent-activity-list{max-height:300px}}.activity-item{border-bottom:1px solid #ffffff08;align-items:center;gap:12px;padding:12px 24px;transition:background .15s;display:flex}.activity-item:last-child{border-bottom:none}.activity-item:hover{background:#ffffff05}.activity-item.activity-item--valid{border-left:3px solid #16a34a}.activity-item.activity-item--used{border-left:3px solid #d97706}.activity-item.activity-item--invalid{border-left:3px solid #cf222e}.activity-item.activity-item--unassigned{border-left:3px solid #64748b}.activity-item.activity-item--timing{border-left:3px solid #7c3aed}@media (width<=768px){.activity-item{gap:8px;padding:8px 20px}}.activity-item-status{flex-shrink:0;align-items:center;gap:6px;min-width:90px;display:flex}@media (width<=480px){.activity-item-status{min-width:auto}}.activity-item-icon{flex-shrink:0;font-size:16px}.activity-item--valid .activity-item-icon{color:#16a34a}.activity-item--used .activity-item-icon{color:#d97706}.activity-item--invalid .activity-item-icon{color:#cf222e}.activity-item--unassigned .activity-item-icon{color:#64748b}.activity-item--timing .activity-item-icon{color:#7c3aed}.activity-badge{letter-spacing:.1em;text-transform:uppercase;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:700;line-height:1.4}.activity-badge.activity-badge--valid{color:#16a34a;background:#16a34a1a;border:1px solid #16a34a40}.activity-badge.activity-badge--used{color:#d97706;background:#d977061a;border:1px solid #d9770640}.activity-badge.activity-badge--invalid{color:#cf222e;background:#cf222e1a;border:1px solid #cf222e40}.activity-badge.activity-badge--unassigned{color:#64748b;background:#64748b1a;border:1px solid #64748b40}.activity-badge.activity-badge--timing{color:#7c3aed;background:#7c3aed1a;border:1px solid #7c3aed40}.activity-item-details{flex-direction:column;flex:1;gap:1px;min-width:0;padding:0 8px;display:flex}.activity-item-label{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}@media (width<=768px){.activity-item-label{font-size:13px}}.activity-item-type{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.activity-item-code{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-family:SF Mono,Monaco,Courier New,monospace;font-size:12px;overflow:hidden}.activity-item-time{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-family:SF Mono,Monaco,Courier New,monospace;font-size:13px}@media (width<=768px){.activity-item-time{font-size:12px}}.activity-item:first-child{animation:.25s activitySlideIn}@keyframes activitySlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.link-card-panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:16px;width:100%;padding:24px;display:flex}@media (width<=768px){.link-card-panel{padding:20px}}.link-card-panel--center{text-align:center;align-items:center;gap:12px;padding:48px 24px}.link-card-panel--center h2{color:var(--text);margin:0;font-size:16px;font-weight:600}.link-card-panel--center p{color:var(--text-muted);max-width:32ch;margin:0;font-size:14px}.link-card-panel--success{text-align:center;border:2px solid #16a34a;align-items:center;gap:12px;padding:48px 24px}.link-card-panel--warning,.link-card-panel--error{text-align:center;align-items:center;gap:12px;padding:48px 24px}.link-card-panel--error{border:2px solid #cf222e}.link-card-panel--error h2{color:var(--text);margin:0;font-size:16px;font-weight:600}.link-card-panel--error p{color:var(--text-muted);margin:0;font-size:14px}.link-card-tabs{background:var(--bg);border:1px solid var(--border);border-radius:10px;width:100%;display:flex;overflow:hidden}.link-card-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:12px 16px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.link-card-tab:first-child{border-right:1px solid var(--border)}.link-card-tab:hover:not(.link-card-tab--active){color:var(--text);background:#ffffff08}.link-card-tab--active{background:var(--surface-2);color:var(--text);font-weight:600}.link-card-input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);border-radius:10px;padding:16px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;transition:border-color .2s,box-shadow .2s}.link-card-input::placeholder{color:var(--text-muted)}.link-card-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #5b5fc726}.link-card-input--mono{font-family:SF Mono,Monaco,Courier New,monospace}.link-card-input--inline{padding:12px 16px;font-size:16px}.link-card-field{flex-direction:column;gap:6px;display:flex}.link-card-field-label{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:500}.link-card-hint{color:var(--text-muted);margin:0;font-size:13px}.link-card-error{color:#cf222e;margin:0;font-size:13px}.link-card-results{flex-direction:column;gap:8px;max-height:320px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.link-card-result-btn{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:16px;transition:all .2s;display:flex}.link-card-result-btn:hover{border-color:var(--accent);background:var(--surface-2)}.link-card-result-main{flex-direction:column;gap:2px;min-width:0;display:flex}.link-card-result-name{color:var(--text);font-size:14px;font-weight:500}.link-card-result-sub{color:var(--text-muted);font-size:13px}.link-card-result-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.link-card-result-tag{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;border-radius:6px;padding:2px 12px;font-size:12px;font-weight:500}.link-card-result-tag--warn{color:#f0b43c;background:#f0b43c1f;border-color:#f0b43c59}.link-card-form{flex-direction:column;gap:16px;display:flex}.link-card-person{background:var(--bg);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:2px;padding:16px;display:flex}.link-card-person-label{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:500}.link-card-person-name{color:var(--text);font-size:15px;font-weight:600}.link-card-person-sub{color:var(--text-muted);font-size:13px}.link-card-person-edit{flex-direction:column;gap:8px;margin-top:12px;display:flex}.link-card-back{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-start;align-items:center;gap:4px;padding:8px 12px;font-size:13px;transition:all .2s;display:flex}.link-card-back:hover{color:var(--text);border-color:var(--accent);background:var(--surface-2)}.link-card-btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:16px 24px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.link-card-btn:disabled{opacity:.4;cursor:not-allowed}.link-card-btn--primary{background:var(--accent);color:#fff}.link-card-btn--primary:hover:not(:disabled){background:var(--accent-light)}.link-card-btn--secondary{border:1px solid var(--border);color:var(--text);background:0 0}.link-card-btn--secondary:hover:not(:disabled){border-color:var(--accent);background:var(--surface-2)}.link-card-btn--danger{color:#fff;background:#cf222e}.link-card-btn--danger:hover:not(:disabled){filter:brightness(1.08)}.link-card-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:12px;display:flex}.link-card-icon{color:var(--text-muted);font-size:56px}.link-card-icon--success{color:#16a34a}.link-card-icon--error{color:#cf222e}.link-card-icon--warning{color:#f0b43c}.link-card-icon--pulse{color:var(--accent);animation:1.2s ease-in-out infinite linkCardPulse}.link-card-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite linkCardSpin}@keyframes linkCardPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.08)}}@keyframes linkCardSpin{to{transform:rotate(360deg)}}.scannerModeRoot{--bg:#0a0a0f;--surface:#1a1a24;--surface-2:#252535;--surface-3:#2e2e42;--border:#2d2d40;--border-light:#3a3a52;--text:#e8e8f0;--text-muted:#9494a8;--text-dim:#6b6b80;--accent:#5b5fc7;--accent-light:#7377d9;--accent-glow:#5b5fc733;--accent-glow-strong:#5b5fc759}.scanner-scan-page{background:var(--bg);flex-direction:column;gap:32px;width:100%;max-width:680px;min-height:calc(100vh - 64px);margin:0 auto;padding:32px 24px;display:flex}@media (width<=768px){.scanner-scan-page{gap:24px;padding:20px}}@media (width<=480px){.scanner-scan-page{padding:16px}}.scan-area{flex-direction:column;flex:1;align-items:center;gap:24px;display:flex}@media (width<=768px){.scan-area{gap:20px}}.loading-state,.error-state,.empty-state{text-align:center;padding:24px}.loading-state p,.error-state p,.empty-state p{color:var(--text-muted);margin:0;font-size:14px}@media (width<=768px){.loading-state,.error-state,.empty-state{padding:20px}}.error-state .error-icon{color:#cf222e;margin-bottom:16px;font-size:64px}.error-state h2{color:var(--text);margin:0 0 12px}.error-state .error-message{color:#cf222e;margin-bottom:16px}.error-state .btn-retry{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;padding:12px 20px;font-size:14px;font-weight:500;transition:all .2s}.error-state .btn-retry:hover{background:#ffffff1f;border-color:#fff3}.scan-header{background:linear-gradient(135deg, var(--surface) 0%, #25253599 100%);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;width:100%;padding:20px 24px;display:flex}.scan-header .scan-header-info{flex-direction:column;gap:2px;min-width:0;display:flex}.scan-header .scan-header-site{color:var(--text-muted);letter-spacing:0;font-size:13px;font-weight:400;line-height:1.3}.scan-header .scan-header-name{color:var(--text);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:600;line-height:1.3}.scan-header .change-ap-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:10px;flex-shrink:0;margin-left:16px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.scan-header .change-ap-btn:hover{background:var(--surface-2);border-color:var(--accent);color:var(--text)}.scan-header .change-ap-btn--disconnect{color:#fca5a5;border-color:#ef444473}.scan-header .change-ap-btn--disconnect:hover{color:#fff;background:#ef44441f;border-color:#ef4444a6}@media (width<=768px){.scan-header{padding:16px 20px}.scan-header .scan-header-name{font-size:16px}.scan-header .scan-header-site{font-size:12px}}.section-divider{align-items:center;gap:16px;width:100%;padding:8px 0;display:flex}.section-divider-line{background:linear-gradient(90deg, transparent 0%, var(--border) 50%, transparent 100%);flex:1;height:1px}.section-divider-label{color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:600}.mode-cards-grid{grid-template-columns:1fr 1fr;gap:16px;width:100%;display:grid}@media (width<=480px){.mode-cards-grid{grid-template-columns:1fr;gap:12px}}.mode-card{background:linear-gradient(135deg, var(--surface) 0%, #25253566 100%);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:14px;align-items:center;gap:16px;padding:20px 24px;transition:all .3s;display:flex;position:relative;overflow:hidden}.mode-card:before{content:"";border-radius:inherit;opacity:0;pointer-events:none;background:radial-gradient(ellipse at 30% 50%, var(--accent-glow) 0%, transparent 70%);transition:opacity .3s;position:absolute;inset:0}.mode-card:hover:not(.mode-card--active){border-color:var(--border-light);background:linear-gradient(135deg, var(--surface-2) 0%, #25253599 100%)}.mode-card:hover:not(.mode-card--active):before{opacity:.4}.mode-card:hover:not(.mode-card--active) .mode-card-icon,.mode-card:hover:not(.mode-card--active) .mode-card-title{color:var(--text)}.mode-card--active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 20px -4px var(--accent-glow-strong), 0 4px 16px -4px #0000004d;background:linear-gradient(135deg,#5b5fc71f 0%,#5b5fc70a 100%)}.mode-card--active:before{opacity:1}.mode-card--active .mode-card-icon{color:var(--accent-light);background:#5b5fc726;border-color:#5b5fc74d}.mode-card--active .mode-card-title{color:var(--text)}.mode-card--active .mode-card-subtitle{color:var(--text-muted)}@media (width<=768px){.mode-card{padding:16px 20px}}.mode-card-icon{border:1px solid var(--border);width:44px;height:44px;color:var(--text-muted);background:#ffffff0a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;transition:all .2s;display:flex}@media (width<=768px){.mode-card-icon{width:40px;height:40px;font-size:20px}}.mode-card-content{flex-direction:column;gap:2px;min-width:0;display:flex}.mode-card-title{color:var(--text-muted);font-size:14px;font-weight:600;line-height:1.3;transition:color .2s}.mode-card-subtitle{color:var(--text-dim);font-size:12px;font-weight:400;line-height:1.3;transition:color .2s}.method-cards-grid{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.method-card{background:linear-gradient(135deg, var(--surface) 0%, #2525354d 100%);border:1px solid var(--border);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 16px;transition:all .2s;display:flex}.method-card:hover:not(.method-card--active){background:linear-gradient(135deg, var(--surface-2) 0%, #25253580 100%);border-color:var(--border-light)}.method-card:hover:not(.method-card--active) .method-card-icon,.method-card:hover:not(.method-card--active) .method-card-label{color:var(--text)}.method-card--active{border-color:var(--accent);box-shadow:0 0 12px -2px var(--accent-glow);background:linear-gradient(135deg,#5b5fc71a 0%,#5b5fc708 100%)}.method-card--active .method-card-icon{color:var(--accent-light)}.method-card--active .method-card-label{color:var(--text);font-weight:600}.method-card-icon{color:var(--text-muted);font-size:20px;transition:color .2s}.method-card-label{color:var(--text-muted);font-size:13px;font-weight:500;transition:all .2s}.camera-loading{background:linear-gradient(135deg, var(--surface) 0%, #25253566 100%);border:1px solid var(--border);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;min-height:280px;display:flex}.camera-loading .camera-loading-icon{color:var(--text-muted);opacity:.5;font-size:48px}.camera-loading p{color:var(--text-muted);margin:0;font-size:14px}.scan-result{background:linear-gradient(135deg, var(--surface) 0%, #25253566 100%);border-radius:14px;flex-direction:column;align-items:center;width:100%;padding:48px;animation:.3s fadeIn;display:flex}.scan-result.allow{border:2px solid #16a34a;box-shadow:0 0 24px -4px #16a34a33}.scan-result.allow .result-icon{color:#16a34a}.scan-result.allow h2,.scan-result.allow p{color:var(--text)}.scan-result.deny{border:2px solid #cf222e;box-shadow:0 0 24px -4px #cf222e33}.scan-result.deny .result-icon{color:#cf222e}.scan-result.deny h2,.scan-result.deny p{color:var(--text)}.scan-result .result-icon{margin-bottom:16px;font-size:56px}.scan-result h2{letter-spacing:.05em;margin:0 0 8px;font-size:24px;font-weight:700}.scan-result .holder-name{color:var(--text);margin:0 0 8px;font-size:15px;font-weight:500}.scan-result .result-message{color:var(--text-muted);margin:0;font-size:14px}.scan-result .result-message--accent{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-light);opacity:.9;font-size:13px;font-weight:700}.scan-result .result-detail{color:var(--text-muted);margin:12px 0 0;font-size:13px}@media (width<=768px){.scan-result{padding:32px}.scan-result .result-icon{margin-bottom:12px;font-size:44px}.scan-result h2{font-size:20px}.scan-result p{font-size:14px}}.error-panel{background:linear-gradient(135deg, var(--surface) 0%, #25253566 100%);border:2px solid #cf222e;border-radius:14px;flex-direction:column;align-items:center;gap:16px;width:100%;padding:48px;display:flex;box-shadow:0 0 24px -4px #cf222e26}.error-panel .error-icon{color:#cf222e;font-size:56px}.error-panel h2{color:var(--text);margin:0;font-size:16px;font-weight:600}.error-panel p{color:var(--text-muted);text-align:center;margin:0;font-size:14px}.error-panel .retry-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;margin-top:12px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s}.error-panel .retry-btn:hover{background:var(--accent-light)}@keyframes fadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.monitor-grace-banner{background:linear-gradient(135deg,#eab3081a 0%,#eab3080a 100%);border:1px solid #eab30859;border-radius:14px;align-items:flex-start;gap:12px;width:100%;padding:16px 20px;animation:.3s fadeIn;display:flex}.monitor-grace-banner-icon{color:#fde047;flex-shrink:0;margin-top:1px;font-size:22px}.monitor-grace-banner-body{flex-direction:column;gap:2px;min-width:0;display:flex}.monitor-grace-banner-title{color:#fde047;font-size:14px;font-weight:600;line-height:1.3}.monitor-grace-banner-sub{color:var(--text-muted);font-size:13px;line-height:1.4}.monitor-page{color:#fff;background:#0b0d12;flex-direction:column;min-height:100dvh;display:flex}.mp-topbar{z-index:50;background:#0b0d12;border-bottom:1px solid #ffffff0f;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0}@media (width<=600px){.mp-topbar{padding:12px 16px}}.mp-back{color:#ffffffb3;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;transition:all .2s;display:inline-flex}.mp-back:hover{color:#fff;background:#ffffff0f}.mp-topbar-title{flex-direction:column;flex:1;min-width:0;display:flex}.mp-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#ffffff80;font-size:11px;font-weight:600}.mp-event-name{letter-spacing:-.01em;color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:600;overflow:hidden}.mp-pill{letter-spacing:.04em;white-space:nowrap;border-radius:9999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.mp-pill:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px}.mp-pill--live{color:#4ade80;background:#22c55e24}.mp-pill--restored{color:#93c5fd;background:#3b82f624}.mp-pill--restored:before{animation:1.4s infinite mp-pulse}.mp-pill--pending{color:#fde047;background:#facc1524}.mp-pill--pending:before{animation:1.4s infinite mp-pulse}.mp-pill--offline{color:#fca5a5;background:#ef444424}@keyframes mp-pulse{0%,to{opacity:1}50%{opacity:.4}}.mp-topbar-pills{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.mp-companion-pill{letter-spacing:.04em;white-space:nowrap;border-radius:9999px;align-items:center;gap:6px;max-width:220px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.mp-companion-pill svg{font-size:14px}.mp-companion-pill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mp-companion-pill--idle{color:#ffffff8c;background:#ffffff0f}.mp-companion-pill--live{color:#93c5fd;background:#3b82f629}.mp-companion-pill--stale{color:#fde047;background:#eab30824}.mp-companion-card{background:#3b82f614;border:1px solid #3b82f652;border-radius:10px;align-items:center;gap:16px;min-height:52px;padding:14px 16px;display:flex}.mp-companion-card-icon{color:#93c5fd;background:#3b82f62e;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;display:inline-flex}.mp-companion-card-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mp-companion-card-label{letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;font-size:11px;font-weight:600}.mp-companion-card-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600;overflow:hidden}.mp-companion-card-action{color:#93c5fd;cursor:pointer;background:0 0;border:1px solid #3b82f652;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600;transition:all .2s}.mp-companion-card-action:hover:not(:disabled){color:#fff;background:#3b82f629}.mp-companion-card-action:disabled{opacity:.6;cursor:not-allowed}.mp-toast{z-index:220;color:#fff;background:#16a34af2;border-radius:10px;align-items:center;gap:12px;max-width:calc(100% - 32px);padding:12px 16px;animation:.25s ease-out mp-toast-in;display:inline-flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0000004d}.mp-toast-icon{flex-shrink:0;font-size:22px}.mp-toast-body{flex-direction:column;gap:2px;min-width:0;display:flex}.mp-toast-title{font-size:14px;font-weight:600}.mp-toast-sub{opacity:.85;font-size:13px}@keyframes mp-toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.mp-main{flex:1;grid-template-columns:minmax(280px,360px) 1fr;gap:24px;width:100%;max-width:1080px;margin:0 auto;padding:24px;display:grid}@media (width<=900px){.mp-main{grid-template-columns:1fr;gap:16px;padding:16px}}.mp-summary{background:#ffffff08;border:1px solid #ffffff0f;border-radius:16px;flex-direction:column;align-self:start;gap:16px;padding:24px;display:flex}.mp-summary-block{flex-direction:column;gap:6px;display:flex}.mp-summary-label{letter-spacing:.1em;text-transform:uppercase;color:#ffffff80;font-size:11px;font-weight:600}.mp-summary-value{color:#fff;font-size:18px;font-weight:600}.mp-summary-divider{background:#ffffff0f;height:1px}.mp-total{letter-spacing:-.02em;font-size:64px;font-weight:700;line-height:1}@media (width<=600px){.mp-total{font-size:52px}}.mp-summary-actions{margin-top:12px}.mp-pair-btn{color:#fff;cursor:pointer;background:#2563eb;border:1px solid #2563eb;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;padding:14px 18px;font-size:15px;font-weight:600;transition:background .2s;display:inline-flex}.mp-pair-btn:hover:not(:disabled){background:#1d4ed8}.mp-pair-btn:disabled{opacity:.6;cursor:not-allowed}.mp-pair-btn .mp-pair-icon{font-size:22px}.mp-activity{background:#ffffff08;border:1px solid #ffffff0f;border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.mp-activity-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.mp-activity-title{color:#fff;margin:0;font-size:16px;font-weight:600}.mp-activity-count{color:#fff9;background:#ffffff0f;border-radius:9999px;padding:4px 10px;font-size:12px;font-weight:600}.mp-empty{text-align:center;color:#ffffff8c;padding:64px 24px}.mp-empty-sub{color:#fff6;margin-top:6px;font-size:13px}.mp-activity-list{margin:0;padding:0;list-style:none}.mp-row{border-bottom:1px solid #ffffff0a;grid-template-columns:56px 1fr auto;align-items:center;gap:16px;padding:16px 24px;display:grid;position:relative}.mp-row:last-child{border-bottom:none}.mp-row:before{content:"";background:0 0;width:4px;position:absolute;top:0;bottom:0;left:0}.mp-row--success{background:#16a34a14}.mp-row--success:before{background:#22c55e}.mp-row--success .mp-row-icon{color:#4ade80;background:#22c55e1f}.mp-row--success .mp-row-status{color:#4ade80}.mp-row--used{background:#eab3080f}.mp-row--used:before{background:#eab308}.mp-row--used .mp-row-icon{color:#fde047;background:#eab30824}.mp-row--used .mp-row-status{color:#fde047}.mp-row--invalid{background:#ef444414}.mp-row--invalid:before{background:#ef4444}.mp-row--invalid .mp-row-icon{color:#fca5a5;background:#ef444424}.mp-row--invalid .mp-row-status{color:#fca5a5}.mp-row--timing{background:#6366f114}.mp-row--timing:before{background:#6366f1}.mp-row--timing .mp-row-icon{color:#a5b4fc;background:#6366f124}.mp-row--timing .mp-row-status{color:#a5b4fc}.mp-row--unknown{background:#94a3b814}.mp-row--unknown:before{background:#94a3b8}.mp-row--unknown .mp-row-icon{color:#cbd5e1;background:#94a3b82e}.mp-row--unknown .mp-row-status{color:#cbd5e1}.mp-row-icon{border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;font-size:26px;display:inline-flex}.mp-row-body{flex-direction:column;gap:2px;min-width:0;display:flex}.mp-row-status-line{align-items:center;gap:6px;display:flex}.mp-row-status{letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.mp-tixhub-badge{letter-spacing:.06em;text-transform:uppercase;color:#34d399;background:#0596692e;border:1px solid #05966961;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:9px;font-weight:700;line-height:16px;display:inline-block}.mp-row-name{color:#fff;letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:600;overflow:hidden}.mp-row-meta{color:#ffffff80;font-size:13px}.mp-row-time{color:#ffffff8c;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}@media (width<=600px){.mp-row{grid-template-columns:44px 1fr auto;padding:12px 16px}.mp-row-icon{width:36px;height:36px;font-size:22px}.mp-row-name{font-size:16px}.mp-activity-header{padding:12px 16px}}.mp-new-activity-btn{color:#93c5fd;cursor:pointer;background:#3b82f61f;border:none;border-bottom:1px solid #3b82f640;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 24px;font-size:13px;font-weight:600;transition:background .2s;animation:.3s ease-out mp-new-activity-in;display:flex}.mp-new-activity-btn:hover{color:#bfdbfe;background:#3b82f633}.mp-new-activity-icon{font-size:18px;animation:.6s mp-bell-ring}@keyframes mp-new-activity-in{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:50px;padding-top:10px;padding-bottom:10px}}@keyframes mp-bell-ring{0%{transform:rotate(0)}20%{transform:rotate(14deg)}40%{transform:rotate(-14deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-4deg)}to{transform:rotate(0)}}.mp-pagination{background:#ffffff05;border-top:1px solid #ffffff0f;justify-content:center;align-items:center;gap:16px;padding:16px 24px;display:flex}.mp-pagination-btn{color:#fffc;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;align-items:center;gap:4px;min-height:36px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.mp-pagination-btn svg{font-size:20px}.mp-pagination-btn:hover:not(:disabled){color:#fff;background:#ffffff1a;border-color:#fff3}.mp-pagination-btn:disabled{opacity:.35;cursor:not-allowed;color:#fff6}.mp-pagination-info{color:#ffffff8c;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:center;min-width:100px;font-size:13px;font-weight:500}.mp-modal-overlay{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.mp-modal{text-align:center;color:#fff;background:#14171f;border:1px solid #ffffff14;border-radius:16px;width:100%;max-width:460px;padding:32px;position:relative;box-shadow:0 20px 50px #0006}.mp-modal-close{color:#ffffffb3;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;display:inline-flex;position:absolute;top:14px;right:14px}.mp-modal-title{letter-spacing:-.01em;margin:0 0 6px;font-size:22px;font-weight:600}.mp-modal-sub{color:#fff9;margin:0 0 24px;font-size:14px}.mp-modal-error{color:#fca5a5;background:#ef44441f;border-radius:10px;margin:0 0 16px;padding:10px 14px;font-size:13px}.mp-modal-loading{color:#fff9;padding:32px 0}.mp-qr-frame{background:#fff;border-radius:14px;justify-content:center;align-items:center;width:256px;height:256px;margin:0 auto 20px;padding:16px;display:flex}.mp-qr-img{width:100%;height:100%;display:block}.mp-code-block{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;margin:0 0 20px;padding:16px}.mp-code-label{letter-spacing:.1em;text-transform:uppercase;color:#ffffff80;margin-bottom:8px;font-size:11px;font-weight:600;display:block}.mp-code-row{justify-content:center;align-items:center;gap:12px;display:flex}.mp-code-value{letter-spacing:.16em;color:#fff;font-family:SF Mono,Monaco,Courier New,monospace;font-size:32px;font-weight:700}.mp-code-copy{color:#fff;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;transition:all .2s;display:inline-flex}.mp-code-copy:hover{background:#ffffff1f}.mp-modal-actions{justify-content:center;gap:12px;display:flex}.mp-modal-primary,.mp-modal-secondary{cursor:pointer;border:1px solid #0000;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:48px;padding:12px 16px;font-size:14px;font-weight:600;display:inline-flex}.mp-modal-primary{color:#fff;background:#2563eb;border-color:#2563eb}.mp-modal-primary:hover{background:#1d4ed8}.mp-modal-secondary{color:#fff;background:#ffffff0a;border-color:#ffffff1f}.mp-modal-secondary:hover:not(:disabled){background:#ffffff14}.mp-modal-secondary:disabled{opacity:.6;cursor:not-allowed}.mp-modal-footnote{color:#fff6;margin:16px 0 0;font-size:12px}.mp-end-session-wrap{border-top:1px solid #ffffff0f;margin-top:12px;padding-top:16px}.mp-end-session-btn{color:#fca5a5;cursor:pointer;background:0 0;border:1px solid #ef444459;border-radius:10px;justify-content:center;align-items:center;gap:6px;width:100%;min-height:48px;padding:12px 16px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.mp-end-session-btn svg{font-size:20px}.mp-end-session-btn:hover:not(:disabled){color:#fff;background:#ef44441a;border-color:#ef44448c}.mp-end-session-btn:disabled{opacity:.6;cursor:not-allowed}.mp-end-session-hint{color:#ffffff59;text-align:center;margin:8px 0 0;font-size:12px;line-height:1.5}.mp-end-session-hint strong{color:#ffffff8c;font-weight:600}.mp-toast--restored{background:#3b82f6f2}.companion-page{background:radial-gradient(at top,#3b82f614 0%,#0f172a00 60%),#0b1220;justify-content:center;align-items:center;min-height:100dvh;padding:16px;display:flex}.companion-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;flex-direction:column;width:100%;max-width:420px;padding:20px 18px;display:flex;box-shadow:0 24px 60px #00000073}@media (width>=480px){.companion-card{padding:28px 24px}}.companion-header{text-align:center;flex-direction:column;align-items:center;margin-bottom:16px;display:flex}.companion-icon{color:#93c5fd;background:#3b82f61f;border:1px solid #3b82f652;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:12px;font-size:28px;display:flex}@media (width>=480px){.companion-icon{width:64px;height:64px;font-size:32px}}.companion-title{color:#fff;letter-spacing:-.01em;margin:0;font-size:20px;font-weight:600}@media (width>=480px){.companion-title{font-size:22px}}.companion-sub{color:#ffffff9e;margin:6px 0 0;font-size:13px;line-height:1.45}@media (width>=480px){.companion-sub{font-size:14px}}.companion-tabs{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:16px;padding:4px;display:grid}.companion-tab{color:#ffffff9e;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:10px 8px;font-size:14px;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.companion-tab svg{font-size:18px}.companion-tab:hover:not(:disabled):not(.companion-tab--active){color:#fff}.companion-tab:disabled{opacity:.5;cursor:not-allowed}.companion-tab--active{color:#fff;background:#3b82f62e;box-shadow:inset 0 0 0 1px #3b82f673}.companion-scan-wrap{flex-direction:column;gap:12px;display:flex}.companion-camera-loading{color:#ffffff80;background:#ffffff08;border:1px dashed #ffffff1f;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:48px 16px;font-size:14px;display:flex}.companion-camera-loading svg{color:#93c5fd99;font-size:32px}.companion-camera-loading p{margin:0}.companion-form{flex-direction:column;gap:14px;width:100%;display:flex}.otp-row{grid-template-columns:repeat(6,1fr);gap:6px;width:100%;display:grid}@media (width>=380px){.otp-row{gap:8px}}.otp-box{aspect-ratio:3/4;color:#fff;text-align:center;text-transform:uppercase;background:#ffffff0a;border:1px solid #ffffff24;border-radius:10px;outline:none;width:100%;padding:0;font-family:SF Mono,JetBrains Mono,Menlo,monospace;font-size:24px;font-weight:600;transition:border-color .15s,background .15s,transform 80ms}@media (width>=380px){.otp-box{font-size:28px}}.otp-box:focus{background:#3b82f61a;border-color:#3b82f6cc;box-shadow:0 0 0 3px #3b82f62e}.otp-box:disabled{opacity:.55;cursor:not-allowed}.otp-box--filled{background:#3b82f61f;border-color:#3b82f673}.companion-submit{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:16px;font-weight:600;transition:background .15s,transform 80ms;display:inline-flex}.companion-submit svg{font-size:20px}.companion-submit:hover:not(:disabled){background:#1d4ed8}.companion-submit:active:not(:disabled){transform:translateY(1px)}.companion-submit:disabled{opacity:.5;cursor:not-allowed}.companion-link-btn{color:#93c5fdd9;cursor:pointer;background:0 0;border:none;align-self:center;padding:8px 12px;font-size:13px;font-weight:500;transition:color .15s}.companion-link-btn:hover:not(:disabled){color:#fff;text-decoration:underline}.companion-link-btn:disabled{opacity:.4;cursor:not-allowed}.companion-error{color:#fca5a5;text-align:center;background:#ef44441a;border:1px solid #ef444466;border-radius:10px;width:100%;margin:12px 0 0;padding:10px 14px;font-size:13px;line-height:1.4}.companion-hint{color:#ffffff6b;text-align:center;margin:16px 0 0;font-size:12px;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;background:#0b0d12;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}body.scanner-route{-webkit-overflow-scrolling:touch;overflow:hidden auto}button{font-family:inherit}input,textarea,select{font-size:16px}a{color:inherit;text-decoration:none}
