@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg: #f8f8f9;--surface: #ffffff;--surface-2: #f7f7f8;--text: #1a1a1a;--text-muted: #6b6b6b;--text-secondary: #4a4a4a;--border: #e8e8e9;--border-subtle: #e8e8e9;--border-medium: #d4d4d5;--primary: #2c2c2e;--primary-hover: #3a3a3c;--success: #16a34a;--success-bg: #e8f5e9;--danger: #cf222e;--danger-bg: #ffebe9;--warning: #f59e0b;--warning-bg: #fef3c7;--info: #1565c0;--info-bg: #e3f2fd;--shadow: rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--hover-bg: #fafafa;--active-bg: #f0f0f1;--accent: #2c2c2e;--accent-hover: #3a3a3c;--accent-alpha: rgba(44, 44, 46, .15);--success-alpha: rgba(22, 163, 74, .15);--danger-alpha: rgba(207, 34, 46, .15);--text-secondary-alpha: rgba(74, 74, 74, .15);--surface-alpha: rgba(255, 255, 255, .98);--btn-primary-bg: #111827;--btn-primary-text: #ffffff;--btn-primary-hover-bg: #0b1220;--btn-secondary-bg: #ffffff;--btn-secondary-text: #111827;--btn-secondary-border: #e5e7eb;--btn-secondary-hover-bg: #f3f4f6;--btn-outline-bg: transparent;--btn-outline-text: #111827;--btn-outline-border: #d1d5db;--btn-outline-hover-bg: #f3f4f6;--btn-ghost-bg: transparent;--btn-ghost-text: #111827;--btn-ghost-hover-bg: #f3f4f6;--btn-danger-bg: #ef4444;--btn-danger-text: #ffffff;--btn-danger-hover-bg: #dc2626;--btn-link-text: #111827;--btn-link-hover-text: #0b1220;--btn-disabled-bg: #e5e7eb;--btn-disabled-text: #9ca3af;--btn-disabled-border: transparent}:root[data-theme=dark]{--bg: #0f1115;--surface: #151922;--surface-2: #1b2230;--text: #e7e9ee;--text-muted: #a6adbb;--text-secondary: #d1d5db;--border: #2a3446;--border-subtle: #1f242d;--border-medium: #353d4d;--primary: #e7e9ee;--primary-hover: #f3f4f6;--success: #22c55e;--success-bg: #14532d;--danger: #f87171;--danger-bg: #450a0a;--warning: #fbbf24;--warning-bg: #451a03;--info: #a6adbb;--info-bg: #1b2230;--shadow: rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .3);--hover-bg: #1a1f28;--active-bg: #1f242d;--accent: #e7e9ee;--accent-hover: #f3f4f6;--accent-alpha: rgba(231, 233, 238, .15);--success-alpha: rgba(34, 197, 94, .15);--danger-alpha: rgba(248, 113, 113, .15);--text-secondary-alpha: rgba(209, 213, 219, .15);--surface-alpha: rgba(21, 25, 34, .98);--btn-primary-bg: #f3f4f6;--btn-primary-text: #0f1115;--btn-primary-hover-bg: #e7e9ee;--btn-secondary-bg: #1b2230;--btn-secondary-text: #e7e9ee;--btn-secondary-border: #2a3446;--btn-secondary-hover-bg: #222c3a;--btn-outline-bg: transparent;--btn-outline-text: #e7e9ee;--btn-outline-border: #2a3446;--btn-outline-hover-bg: rgba(255, 255, 255, .06);--btn-ghost-bg: transparent;--btn-ghost-text: #e7e9ee;--btn-ghost-hover-bg: rgba(255, 255, 255, .06);--btn-danger-bg: #ef4444;--btn-danger-text: #ffffff;--btn-danger-hover-bg: #dc2626;--btn-link-text: #e7e9ee;--btn-link-hover-text: #f3f4f6;--btn-disabled-bg: rgba(255, 255, 255, .1);--btn-disabled-text: rgba(255, 255, 255, .35);--btn-disabled-border: rgba(255, 255, 255, .1)}:root[data-theme=scanner]{--bg: #111316;--surface: #1a1d21;--surface-2: #22262c;--text: #f3f4f6;--text-muted: #b7beca;--text-secondary: #e5e7eb;--text-inverse: #111316;--border: rgba(255,255,255,.12);--border-subtle: rgba(255,255,255,.08);--border-medium: rgba(255,255,255,.16);--primary: #f3f4f6;--primary-hover: #ffffff;--success: #22c55e;--success-bg: #14532d;--danger: #ef4444;--danger-bg: #450a0a;--warning: #f59e0b;--warning-bg: #451a03;--info: #b7beca;--info-bg: #1a1d21;--shadow: rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 10px 10px -5px rgba(0, 0, 0, .4);--hover-bg: #22262c;--active-bg: #2a2f36;--accent: #111316;--accent-hover: #1a1d21;--accent-light: rgba(255,255,255,.2);--btn-primary-bg: #f3f4f6;--btn-primary-text: #111316;--btn-primary-hover-bg: #ffffff;--btn-secondary-bg: #22262c;--btn-secondary-text: #f3f4f6;--btn-secondary-border: rgba(255, 255, 255, .16);--btn-secondary-hover-bg: #2a2f36;--btn-outline-bg: transparent;--btn-outline-text: #f3f4f6;--btn-outline-border: rgba(255, 255, 255, .16);--btn-outline-hover-bg: rgba(255, 255, 255, .08);--btn-ghost-bg: transparent;--btn-ghost-text: #f3f4f6;--btn-ghost-hover-bg: rgba(255, 255, 255, .08);--btn-danger-bg: #ef4444;--btn-danger-text: #ffffff;--btn-danger-hover-bg: #dc2626;--btn-link-text: #f3f4f6;--btn-link-hover-text: #ffffff;--btn-disabled-bg: rgba(255, 255, 255, .1);--btn-disabled-text: rgba(255, 255, 255, .35);--btn-disabled-border: rgba(255, 255, 255, .1)}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;line-height:1.5;color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .2s ease,color .2s ease}#root{height:100vh;overflow:hidden;width:100%}body.scanner-route,body.scanner-route #root{overflow:auto!important;height:auto!important}button{font-family:inherit;font-size:inherit;line-height:inherit;border:none;background:none;padding:0;margin:0;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}*:focus{outline:none}*:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}h1,h2,h3,h4,h5,h6,p{margin:0}a{color:inherit;text-decoration:none}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fadeIn .15s ease-out}:root[data-theme=dark] .modal-overlay{background-color:#000000d9}.modal-dialog{background-color:var(--surface);border-radius:10px;box-shadow:var(--shadow-lg);max-width:90vw;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .2s ease-out;border:1px solid var(--border)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border)}.modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text)}.modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:var(--text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.modal-header .modal-close:hover:not(:disabled){background-color:var(--hover-bg);color:var(--text)}.modal-header .modal-close:disabled{opacity:.5;cursor:not-allowed}.modal-body{padding:24px;overflow-y:auto}.modal-body .form-group label{display:block;font-size:14px;font-weight:500;color:var(--text);margin-bottom:6px}.modal-body .form-group label .required{color:var(--danger);margin-left:2px}.modal-body .form-group label .optional{color:var(--text-muted);font-weight:400;margin-left:4px}.modal-body .form-group input,.modal-body .form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--border-medium);border-radius:6px;font-size:14px;color:var(--text);background-color:var(--surface);transition:border-color .2s,box-shadow .2s}.modal-body .form-group input:focus,.modal-body .form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--shadow)}.modal-body .form-group input:disabled,.modal-body .form-group textarea:disabled{background-color:var(--surface-2);cursor:not-allowed;opacity:.6}.modal-body .form-group input::placeholder,.modal-body .form-group textarea::placeholder{color:var(--text-muted)}.modal-body .form-error{margin-bottom:20px;padding:12px;background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:6px;color:var(--danger);font-size:14px}.modal-body .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.btn,.btn-primary,.btn-secondary,.btn-outline,.btn-ghost,.btn-danger,.btn-link{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 20px;border-radius:10px;font-size:14px;font-weight:600;line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .05s ease;font-family:inherit;text-decoration:none}.btn:active:not(:disabled),.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-outline:active:not(:disabled),.btn-ghost:active:not(:disabled),.btn-danger:active:not(:disabled){transform:translateY(1px)}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border:1px solid transparent}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover-bg)}.btn-primary:disabled,.btn-primary.disabled{background:var(--btn-disabled-bg)!important;color:var(--btn-disabled-text)!important;border-color:var(--btn-disabled-border)!important;cursor:not-allowed;transform:none;opacity:1!important}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--btn-secondary-border)}.btn-secondary:hover:not(:disabled){background:var(--btn-secondary-hover-bg)}.btn-secondary:disabled,.btn-secondary.disabled{background:var(--btn-disabled-bg)!important;color:var(--btn-disabled-text)!important;border-color:var(--btn-disabled-border)!important;cursor:not-allowed;transform:none;opacity:1!important}.btn-outline{background:var(--btn-outline-bg);color:var(--btn-outline-text);border:1px solid var(--btn-outline-border)}.btn-outline:hover:not(:disabled){background:var(--btn-outline-hover-bg)}.btn-outline:disabled,.btn-outline.disabled{background:var(--btn-disabled-bg)!important;color:var(--btn-disabled-text)!important;border-color:var(--btn-disabled-border)!important;cursor:not-allowed;transform:none;opacity:1!important}.btn-ghost{background:var(--btn-ghost-bg);color:var(--btn-ghost-text);border:1px solid transparent}.btn-ghost:hover:not(:disabled){background:var(--btn-ghost-hover-bg)}.btn-ghost:disabled,.btn-ghost.disabled{background:transparent!important;color:var(--btn-disabled-text)!important;border-color:transparent!important;cursor:not-allowed;transform:none;opacity:1!important}.btn-danger{background:var(--btn-danger-bg);color:var(--btn-danger-text);border:1px solid transparent}.btn-danger:hover:not(:disabled){background:var(--btn-danger-hover-bg)}.btn-danger:disabled,.btn-danger.disabled{background:var(--btn-disabled-bg)!important;color:var(--btn-disabled-text)!important;border-color:var(--btn-disabled-border)!important;cursor:not-allowed;transform:none;opacity:1!important}.btn-link{background:none;color:var(--btn-link-text);border:none;padding:0;font-weight:500;text-decoration:underline}.btn-link:hover:not(:disabled){color:var(--btn-link-hover-text)}.btn-link:active:not(:disabled){transform:none}.btn-link:disabled,.btn-link.disabled{background:none!important;color:var(--btn-disabled-text)!important;cursor:not-allowed;opacity:1!important}.btn-sm,.btn-primary.btn-sm,.btn-secondary.btn-sm,.btn-outline.btn-sm,.btn-ghost.btn-sm,.btn-danger.btn-sm{padding:6px 12px;font-size:13px}.btn-lg,.btn-primary.btn-lg,.btn-secondary.btn-lg,.btn-outline.btn-lg,.btn-ghost.btn-lg,.btn-danger.btn-lg{padding:12px 24px;font-size:15px}.btn svg,.btn-primary svg,.btn-secondary svg,.btn-outline svg,.btn-ghost svg,.btn-danger svg,.btn-link svg{color:currentColor}button:disabled{cursor:not-allowed;opacity:1!important}.icon-inline{margin-right:6px;vertical-align:middle;font-size:1.1em}.icon-sm{font-size:.9rem}.icon-md{font-size:1.1rem}.icon-lg{font-size:1.4rem}.icon-xl{font-size:2rem}.icon-button{padding:8px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .15s ease}.icon-button:hover{background-color:var(--hover-bg)}.auth-debug-banner{position:fixed;bottom:0;left:0;z-index:9999;background:#1a1a1a;color:#fff;padding:8px 12px;font-family:Courier New,monospace;font-size:11px;line-height:1.4;border-top:2px solid #ffcc00;border-right:2px solid #ffcc00;box-shadow:2px -2px 8px #0000004d;max-width:90vw;overflow-x:auto;white-space:nowrap}.auth-debug-banner strong{color:#fc0;margin-right:8px}.auth-debug-banner .status-true{color:#4ade80;font-weight:700}.auth-debug-banner .status-false{color:#f87171;font-weight:700}.auth-debug-banner .status-null{color:#fb923c;font-weight:700}.auth-debug-banner .status-0{color:#fbbf24;font-weight:700}.auth-debug-banner .status-route{color:#60a5fa;font-weight:400}.auth-debug-banner [class^=status-]:not(.status-true):not(.status-false):not(.status-null):not(.status-0):not(.status-route){color:#4ade80;font-weight:700}.header{display:flex;align-items:center;justify-content:space-between;padding:20px 48px;background-color:#fff;border-bottom:1px solid #e8e8e9;height:80px}@media(max-width:768px){.header{padding:16px 20px;height:64px}}.header-left{flex:1;min-width:0;display:flex;align-items:center;gap:16px}.mobile-menu-button{display:none;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:none;color:#1a1a1a;cursor:pointer;border-radius:6px;transition:background .15s ease}.mobile-menu-button:hover{background:#fafafa}@media(max-width:1024px){.mobile-menu-button{display:flex}}.menu-icon{font-size:24px}.header-logo{display:flex;flex-direction:column;gap:2px}.header-logo h1{font-size:16px;font-weight:600;letter-spacing:.05em;color:#1a1a1a;margin:0;text-transform:uppercase}@media(max-width:480px){.header-logo h1{font-size:14px}}.header-logo-main{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.header-org-name{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.3}@media(max-width:640px){.header-org-name{font-size:11px}}.org-name-text{color:#4a4a4a;font-weight:500}.org-name-text.no-org{color:#6b6b6b;font-style:italic}.org-name-text.platform-admin-label{color:var(--info);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.finish-setup-link{color:#1565c0;text-decoration:none;font-size:11px;padding:2px 6px;border-radius:6px;transition:all .15s ease}.finish-setup-link:hover{background:#fafafa;text-decoration:underline}@media(max-width:640px){.finish-setup-link{font-size:10px}}.mode-badge{display:inline-block;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;background-color:var(--surface-2);border:1px solid var(--border);border-radius:999px;color:var(--text-muted);white-space:nowrap}@media(max-width:480px){.mode-badge{font-size:10px;padding:3px 7px}}.header-actions{display:flex;align-items:center;gap:16px}@media(max-width:480px){.header-actions{gap:8px}}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:none;color:#1a1a1a;cursor:pointer;border-radius:6px;transition:background .15s ease,color .15s ease}.theme-toggle:hover{background:#fafafa}@media(max-width:480px){.theme-toggle{width:36px;height:36px}}.theme-icon{font-size:20px}@media(max-width:480px){.theme-icon{font-size:18px}}.scanner-button{display:flex;align-items:center;gap:8px;min-height:44px}@media(max-width:640px){.scanner-button{padding:10px 16px}.scanner-button .scanner-text{display:none}}.scanner-icon{font-size:18px}.user-avatar{position:relative;margin-left:8px}@media(max-width:480px){.user-avatar{margin-left:0}}.avatar-circle{width:36px;height:36px;border-radius:9999px;background-color:#f0f0f1;border:1px solid #e8e8e9;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#4a4a4a;transition:all .2s ease;cursor:pointer}.avatar-circle:hover{border-color:#d4d4d5;background-color:#fafafa}@media(max-width:480px){.avatar-circle{width:32px;height:32px;font-size:11px}}.user-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:#fff;border:1px solid #e8e8e9;border-radius:10px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:8px;z-index:1000}.user-menu-info{padding:12px 16px;border-bottom:1px solid #e8e8e9;margin-bottom:8px}.user-menu-name{font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:2px}.user-menu-email,.user-menu-org{font-size:13px;color:#4a4a4a;margin-bottom:6px}.user-menu-org strong{color:#1a1a1a;font-weight:500}.user-menu-role{display:inline-block;font-size:11px;font-weight:500;padding:2px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.user-menu-role.role-badge-admin{background-color:var(--info-bg);color:var(--info)}.user-menu-role.role-badge-host{background-color:var(--warning-bg);color:var(--warning)}.user-menu-role.role-badge-staff{background-color:var(--success-bg);color:var(--success)}.user-menu-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:transparent;border:none;border-radius:6px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;color:#1a1a1a;cursor:pointer;transition:background .15s ease;text-align:left}.user-menu-item:hover{background:#fafafa}.menu-item-icon{font-size:18px;color:#4a4a4a}.sidebar-overlay{display:none}@media(max-width:1024px){.sidebar-overlay{display:block;position:fixed;inset:0;background-color:#000000b3;z-index:998;animation:fadeIn .2s ease}}:root[data-theme=dark] .sidebar-overlay{background-color:#000000d9}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.sidebar{width:240px;background-color:#fff;border-right:1px solid #e8e8e9;display:flex;flex-direction:column;height:100%;padding:32px 24px 0}@media(max-width:1024px){.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:999;transform:translate(-100%);transition:transform .2s ease;box-shadow:2px 0 8px var(--shadow);padding:20px}.sidebar.mobile-open{transform:translate(0);animation:slideIn .2s ease}}.sidebar-header{display:none}@media(max-width:1024px){.sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e8e8e9}}.sidebar-brand h2{font-size:16px;font-weight:600;letter-spacing:.05em;color:#1a1a1a;margin:0;text-transform:uppercase}.sidebar-close{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:none;color:#4a4a4a;cursor:pointer;border-radius:6px;transition:all .15s ease;font-size:24px}.sidebar-close:hover{background:#fafafa;color:#1a1a1a}.sidebar-nav{display:flex;flex-direction:column;gap:8px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;border-radius:10px;cursor:pointer;font-size:14px;color:#4a4a4a;font-weight:400;transition:all .2s ease;text-align:left;text-decoration:none;position:relative;min-height:44px}.nav-item:hover{background-color:#fafafa;color:#1a1a1a}.nav-item.active{background-color:#f0f0f1;color:#1a1a1a;font-weight:400}.nav-icon{font-size:20px;color:#6b6b6b;flex-shrink:0}.nav-item:hover .nav-icon,.nav-item.active .nav-icon{color:#1a1a1a}.admin-layout{display:flex;flex-direction:column;height:100vh;background:#f8f8f9;overflow:hidden}.admin-layout-body{display:flex;flex:1;overflow:hidden}@media(max-width:1024px){.admin-layout-body{position:relative}}.admin-main-content{flex:1;overflow-y:auto;overflow-x:hidden}@media(max-width:1024px){.admin-main-content{width:100%}}.scanner-layout{min-height:100dvh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;background:#0b0d12;color:#fff}.scanner-header{position:sticky;top:0;z-index:50;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:#0b0d12;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid rgba(255,255,255,.06)}@media(max-width:768px){.scanner-header{padding:0 16px}}.scanner-title{font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0}@media(max-width:480px){.scanner-title{font-size:15px}}.exit-scanner-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;border:1px solid var(--border);color:var(--text);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;min-height:44px}.exit-scanner-btn:hover{background:var(--hover-bg);border-color:var(--border-medium)}.exit-scanner-btn:active{transform:translateY(1px)}.exit-scanner-btn .exit-icon{font-size:18px}@media(max-width:480px){.exit-scanner-btn{padding:8px 12px;font-size:13px}.exit-scanner-btn span{display:none}}.scanner-main-content{display:flex;justify-content:center;width:100%}.onboarding-layout{min-height:100vh;background:#fff;display:flex;align-items:center;justify-content:center;padding:48px 16px}.onboarding-container{width:100%;max-width:760px}.onboarding-content{background:#fff;border-radius:14px;padding:40px;box-shadow:none}@media(max-width:768px){.onboarding-layout{padding:24px 16px}.onboarding-content{padding:32px 20px}}.page-header-wrapper{background-color:#fff;border-bottom:1px solid #e8e8e9}.page-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 48px 12px;gap:24px;max-width:1440px;margin:0 auto}.page-header-left{flex:1;min-width:0}.page-breadcrumbs{margin-bottom:8px}.breadcrumbs-list{display:flex;align-items:center;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.breadcrumb-item{display:flex;align-items:center;gap:8px;font-size:13px;line-height:1.25}.breadcrumb-link{color:#6b6b6b;text-decoration:none;transition:color .15s ease}.breadcrumb-link:hover{color:#4a4a4a}.breadcrumb-separator{color:#6b6b6b;-webkit-user-select:none;user-select:none;font-size:13px;opacity:.5}.breadcrumb-current{color:#4a4a4a;font-weight:400}.page-header-titles{display:flex;flex-direction:column;gap:6px}.page-title{font-size:22px;font-weight:600;letter-spacing:-.01em;color:#1a1a1a;margin:0;line-height:1.25}.page-subtitle{font-size:14px;color:#4a4a4a;margin:0;line-height:1.5}.page-header-right{display:flex;align-items:flex-start;gap:12px;flex-shrink:0}.page-header-extra{padding:0 48px;max-width:1440px;margin:0 auto}.breadcrumb-skeleton{display:inline-block;height:16px;width:80px;background:linear-gradient(90deg,#fafafa,#f0f0f1,#fafafa);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:6px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:768px){.page-header{flex-direction:column;padding:20px;gap:16px}.page-header-right{width:100%;justify-content:flex-end}.page-header-extra{padding:0 20px 16px}.breadcrumbs-list{overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;padding-bottom:4px}.breadcrumbs-list::-webkit-scrollbar{height:4px}.breadcrumbs-list::-webkit-scrollbar-track{background:transparent}.breadcrumbs-list::-webkit-scrollbar-thumb{background:#d4d4d5;border-radius:6px}}.dashboard-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.dashboard-content{padding:48px;flex:1;max-width:1440px;margin:0 auto;width:100%}@media(max-width:768px){.dashboard-content{padding:20px}}@media(max-width:480px){.dashboard-content{padding:16px}}.welcome-message{font-size:13px;color:#4a4a4a;margin-bottom:20px;padding:16px 20px;background:#fff;border:1px solid #e8e8e9;border-radius:10px}.welcome-message strong{color:#1a1a1a;font-weight:600}.welcome-primary{font-size:14px;color:#1a1a1a;margin-bottom:4px}.welcome-primary strong{color:#1a1a1a;font-weight:600}.welcome-role{color:#4a4a4a;font-weight:500}.welcome-secondary{font-size:13px;color:#4a4a4a}.error-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;margin-bottom:20px;background:#fff3f3;border:1px solid #ffcccc;border-radius:10px}@media(max-width:640px){.error-banner{flex-direction:column;align-items:flex-start;gap:16px}}.error-message{margin:0;color:#c00;font-size:13px;flex:1}.retry-button{background:#c00;color:#fff;border:none;padding:8px 20px;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.retry-button:hover{background:#a00}.retry-button:active{transform:translateY(1px)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:48px}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:24px}}@media(max-width:640px){.stats-grid{grid-template-columns:1fr;gap:16px;margin-bottom:20px}}.stat-card{background-color:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:24px;transition:all .2s ease;cursor:pointer;position:relative}.stat-card:hover{background-color:#fffffffa;border-color:#d4d4d5}.stat-card:hover .stat-action{opacity:1;color:#4a4a4a}.stat-card:focus{outline:2px solid #d4d4d5;outline-offset:2px}.stat-card:active{transform:translateY(1px)}.stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#6b6b6b;margin:0 0 16px;font-weight:500}.stat-value{font-size:40px;font-weight:600;letter-spacing:-.01em;color:#1a1a1a;margin:0 0 20px;line-height:1.25}.stat-action{font-size:13px;color:#6b6b6b;margin:0;letter-spacing:.05em;opacity:.6;transition:all .2s ease}.chart-placeholder{background-color:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:64px 48px;display:flex;align-items:center;justify-content:center;min-height:400px}@media(max-width:768px){.chart-placeholder{padding:48px 24px;min-height:300px}}@media(max-width:480px){.chart-placeholder{padding:32px 20px;min-height:200px}}.placeholder-text{font-size:14px;color:#6b6b6b;margin:0;letter-spacing:.05em}.access-points-list-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.search-bar{margin-bottom:20px}.search-bar .search-input{width:100%;padding:16px 20px;font-size:14px;border:1px solid #d4d4d5;border-radius:10px;background:#fff;color:#1a1a1a;transition:all .2s ease}.search-bar .search-input::placeholder{color:#6b6b6b}.search-bar .search-input:focus{outline:none;border-color:#2c2c2e;box-shadow:0 0 0 3px #3b82f61a}.search-bar .search-input:disabled{opacity:.6;cursor:not-allowed}.filter-bar{margin-bottom:24px;padding:20px;background:#fff;border-radius:14px;border:1px solid #e8e8e9}.filter-bar .filter-btn{padding:12px 20px;border:1px solid #d4d4d5;background:#fff;border-radius:6px;font-size:13px;font-weight:500;color:#4a4a4a;cursor:pointer;transition:all .2s ease}.filter-bar .filter-btn:hover{background:#fafafa;border-color:#d4d4d5}.filter-bar .filter-btn.active{background:#2c2c2e;border-color:#2c2c2e;color:#fff}.filter-bar .filter-btn.active:hover{background:#3a3a3c}.expired-badge{display:inline-block;margin-left:12px;padding:2px 12px;background:#fef3c7;color:#92400e;border-radius:6px;font-size:12px;font-weight:500}.text-muted{color:#6b6b6b}.text-muted.small{font-size:13px;margin-top:4px}.status-badge{display:inline-block;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:500;letter-spacing:.05em}.status-badge.archived{background:#f3f4f6;color:#6b7280}.idnty-select{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.idnty-select__control--is-focused{outline:none}.idnty-select__control--is-disabled{background-color:#fafafa;cursor:not-allowed;opacity:.6}.idnty-select__menu{z-index:100}.idnty-select__option--is-focused{background-color:#fafafa}.idnty-select__option--is-selected{background-color:#f0f0f1;font-weight:500}.idnty-select__control,.idnty-select__menu,.idnty-select__option{transition:all .15s ease}.access-point-form{background:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:24px;box-shadow:0 1px 3px #0000001a}@media(max-width:768px){.access-point-form{padding:16px}}.access-point-form.simplified{max-width:960px}.access-point-form .error-banner{background:#ffebe9;border:1px solid #cf222e;border-radius:10px;padding:16px;margin-bottom:24px;color:#a41c28;font-size:14px;line-height:1.7}.access-point-form .site-context{background:#f7f7f8;border:1px solid #e8e8e9;border-radius:10px;padding:12px 16px;margin-bottom:24px;display:inline-flex;align-items:center;gap:8px}.access-point-form .site-context .label{font-weight:500;color:#6b6b6b;font-size:13px;text-transform:uppercase;letter-spacing:.05em}.access-point-form .site-context .value{font-weight:600;color:#1a1a1a;font-size:13px}.access-point-form .form-section{margin-bottom:0;padding-bottom:24px}.access-point-form .form-section .section-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 8px;line-height:1.25}.access-point-form .form-section .section-description{font-size:14px;color:#4a4a4a;margin:0 0 24px;line-height:1.7}.access-point-form .form-group{margin-bottom:24px}.access-point-form .form-group:last-child{margin-bottom:0}.access-point-form .form-group label{display:block;font-weight:600;color:#4a4a4a;margin-bottom:8px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.access-point-form .form-group label .required{color:#cf222e;margin-left:2px}.access-point-form .form-group input[type=text],.access-point-form .form-group input[type=email],.access-point-form .form-group input[type=tel],.access-point-form .form-group input[type=url],.access-point-form .form-group input[type=number],.access-point-form .form-group textarea{width:100%;padding:10px 16px;border:1px solid #e8e8e9;border-radius:10px;font-size:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .2s ease;background:#fff;color:#1a1a1a;line-height:1.5}.access-point-form .form-group input[type=text]:focus,.access-point-form .form-group input[type=email]:focus,.access-point-form .form-group input[type=tel]:focus,.access-point-form .form-group input[type=url]:focus,.access-point-form .form-group input[type=number]:focus,.access-point-form .form-group textarea:focus{outline:none;border-color:#2c2c2e;box-shadow:0 0 0 3px #2c2c2e1a}.access-point-form .form-group input[type=text]:disabled,.access-point-form .form-group input[type=email]:disabled,.access-point-form .form-group input[type=tel]:disabled,.access-point-form .form-group input[type=url]:disabled,.access-point-form .form-group input[type=number]:disabled,.access-point-form .form-group textarea:disabled{background:#f7f7f8;color:#6b6b6b;cursor:not-allowed;opacity:.6}.access-point-form .form-group input[type=text].error,.access-point-form .form-group input[type=email].error,.access-point-form .form-group input[type=tel].error,.access-point-form .form-group input[type=url].error,.access-point-form .form-group input[type=number].error,.access-point-form .form-group textarea.error{border-color:#cf222e}.access-point-form .form-group input[type=text].error:focus,.access-point-form .form-group input[type=email].error:focus,.access-point-form .form-group input[type=tel].error:focus,.access-point-form .form-group input[type=url].error:focus,.access-point-form .form-group input[type=number].error:focus,.access-point-form .form-group textarea.error:focus{box-shadow:0 0 0 3px #cf222e26}.access-point-form .form-group input[type=text]::placeholder,.access-point-form .form-group input[type=email]::placeholder,.access-point-form .form-group input[type=tel]::placeholder,.access-point-form .form-group input[type=url]::placeholder,.access-point-form .form-group input[type=number]::placeholder,.access-point-form .form-group textarea::placeholder{color:#6b6b6b}.access-point-form .form-group textarea{resize:vertical;min-height:100px}.access-point-form .form-group .field-error{display:block;color:#cf222e;font-size:13px;margin-top:8px;font-weight:500}.access-point-form .form-group .field-hint{display:block;color:#6b6b6b;font-size:13px;margin-top:8px;line-height:1.7}.access-point-form .form-group .field-hint.warning{color:#f59e0b;font-weight:500}.access-point-form .form-actions{display:flex;gap:16px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid #e8e8e9}@media(max-width:480px){.access-point-form .form-actions{flex-direction:column-reverse}.access-point-form .form-actions button{width:100%}}.access-point-form .form-actions button{padding:10px 32px;font-size:14px;font-weight:600;border-radius:10px;cursor:pointer;transition:all .2s ease;border:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-width:120px;line-height:1.5}.access-point-form .form-actions button:disabled{opacity:.5;cursor:not-allowed}.access-point-form .form-actions button.btn-primary{background:#2c2c2e;color:#fff;box-shadow:0 1px 3px #0000001a}.access-point-form .form-actions button.btn-primary:hover:not(:disabled){background:#3a3a3c;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.access-point-form .form-actions button.btn-primary:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 2px #0000001a}.access-point-form .form-actions button.btn-secondary{background:#fff;color:#1a1a1a;border:1px solid #d4d4d5}.access-point-form .form-actions button.btn-secondary:hover:not(:disabled){background:#fafafa;border-color:#d4d4d5}.access-point-form .form-actions button.btn-secondary:active:not(:disabled){transform:translateY(1px)}.access-point-create-page .page-content{padding:24px}.access-point-edit-page .page-content{max-width:1040px;margin:0 auto;padding:48px}@media(max-width:768px){.access-point-edit-page .page-content{padding:24px}}@media(max-width:480px){.access-point-edit-page .page-content{padding:16px}}.access-point-edit-page .loading-state{text-align:center;padding:64px 24px;color:#4a4a4a;font-size:14px}.access-point-edit-page .error-state{max-width:600px;margin:48px auto;text-align:center;padding:48px;background:#fff;border:1px solid #e8e8e9;border-radius:14px;box-shadow:0 1px 3px #0000001a}.access-point-edit-page .error-state .error-message{color:#cf222e;font-size:14px;margin-bottom:24px}.access-point-edit-page .error-state .btn-secondary{padding:12px 24px;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;background:#fff;color:#1a1a1a;border:1px solid #d4d4d5;transition:all .2s ease;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.access-point-edit-page .error-state .btn-secondary:hover{background:#fafafa;border-color:#d4d4d5}.issue-pass-modal{width:90%;max-width:540px;max-height:90vh;overflow-y:auto}.issue-pass-modal .modal-subtitle{font-size:14px;color:#4a4a4a;margin-top:4px;font-weight:400}.issue-pass-modal .form-hint{display:block;margin-top:4px;font-size:12px;color:#4a4a4a}.issue-pass-modal .form-hint-disabled{display:block;padding:10px 12px;font-size:13px;color:#4a4a4a;background-color:#fff;border:1px solid #e8e8e9;border-radius:6px;font-style:italic}.issue-pass-modal .form-group{margin-bottom:20px}.issue-pass-modal .form-group:last-of-type{margin-bottom:0}.issue-pass-modal .form-group .input-wrapper{position:relative}.issue-pass-modal .form-group .input-wrapper input.locked{background-color:#fff;cursor:not-allowed;padding-right:40px}.issue-pass-modal .form-group .input-wrapper .lock-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:16px;opacity:.7;pointer-events:none}.issue-pass-modal .form-group .locked-hint{color:#f59e0b;font-style:italic}.issue-pass-modal .form-group .resolving{color:#2c2c2e;font-style:italic}.revoke-pass-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.revoke-pass-modal{background:#fff;border-radius:12px;max-width:480px;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:modalSlideIn .2s ease-out}.revoke-pass-modal__header{display:flex;align-items:center;gap:12px;padding:24px 24px 16px;border-bottom:1px solid #e8e8e9}.revoke-pass-modal__icon{font-size:24px;color:#f59e0b;flex-shrink:0}.revoke-pass-modal__title{margin:0;font-size:20px;font-weight:600;color:#1a1a1a}.revoke-pass-modal__body{padding:24px}.revoke-pass-modal__pass-label{margin:0 0 12px;font-size:15px;color:#1a1a1a}.revoke-pass-modal__message{margin:0;font-size:14px;line-height:1.5;color:#4a4a4a}.revoke-pass-modal__error{margin-top:16px;padding:12px;background:#ffebe9;border:1px solid #cf222e;border-radius:6px;color:#cf222e;font-size:14px}.revoke-pass-modal__footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px}.revoke-pass-modal__button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.revoke-pass-modal__button:disabled{opacity:.5;cursor:not-allowed}.revoke-pass-modal__button--cancel{background:#f7f7f8;color:#1a1a1a;border:1px solid #d4d4d5}.revoke-pass-modal__button--cancel:hover:not(:disabled){background:#fafafa}.revoke-pass-modal__button--revoke{background:#cf222e;color:#fff}.revoke-pass-modal__button--revoke:hover:not(:disabled){background:var(--btn-danger-hover-bg)}.access-point-passes-tab{padding:24px}.access-point-passes-tab .loading-state,.access-point-passes-tab .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.access-point-passes-tab .loading-state p,.access-point-passes-tab .error-state p{color:#4a4a4a;margin-bottom:16px}.access-point-passes-tab .passes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.access-point-passes-tab .passes-header .passes-title{display:flex;align-items:baseline;gap:12px}.access-point-passes-tab .passes-header .passes-title h2{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.access-point-passes-tab .passes-header .passes-title .passes-count{font-size:14px;color:#4a4a4a}.access-point-passes-tab .passes-filters{display:flex;gap:16px;margin-bottom:24px;padding:16px;background:#fff;border-radius:8px;border:1px solid #e8e8e9}.access-point-passes-tab .passes-filters .filter-group{display:flex;flex-direction:column;gap:6px;min-width:200px}.access-point-passes-tab .passes-filters .filter-group label{font-size:12px;font-weight:500;color:#4a4a4a;text-transform:uppercase;letter-spacing:.5px}.access-point-passes-tab .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center;background:#fff;border-radius:12px;border:2px dashed #e8e8e9}.access-point-passes-tab .empty-state .empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.access-point-passes-tab .empty-state h3{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.access-point-passes-tab .empty-state p{color:#4a4a4a;margin:0 0 24px}.access-point-passes-tab .passes-table-container{background:#fff;border-radius:8px;border:1px solid #e8e8e9;overflow:hidden}.access-point-passes-tab .passes-table{width:100%;border-collapse:collapse}.access-point-passes-tab .passes-table thead{background:#f8f8f9;border-bottom:1px solid #e8e8e9}.access-point-passes-tab .passes-table thead th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#4a4a4a;text-transform:uppercase;letter-spacing:.5px}.access-point-passes-tab .passes-table tbody tr{border-bottom:1px solid #e8e8e9;transition:background-color .15s ease}.access-point-passes-tab .passes-table tbody tr:last-child{border-bottom:none}.access-point-passes-tab .passes-table tbody tr:hover{background:#f8f8f9}.access-point-passes-tab .passes-table tbody td{padding:16px;font-size:14px;color:#1a1a1a}.access-point-passes-tab .passes-table tbody td.pass-holder .holder-info{display:flex;flex-direction:column;gap:4px}.access-point-passes-tab .passes-table tbody td.pass-holder .holder-info .holder-name{font-weight:500}.access-point-passes-tab .passes-table tbody td.pass-holder .holder-info .holder-role{font-size:12px;color:#4a4a4a;text-transform:capitalize}.access-point-passes-tab .passes-table tbody td.pass-reference{color:#4a4a4a;font-family:monospace;font-size:13px}.access-point-passes-tab .passes-table tbody td.pass-date{color:#4a4a4a;font-size:13px}.access-point-passes-tab .passes-table tbody td.pass-actions{display:flex;gap:8px}.access-point-passes-tab .passes-table tbody td.pass-actions .action-btn{padding:6px 12px;font-size:13px;font-weight:500;border-radius:4px;border:1px solid #e8e8e9;background:#f8f8f9;color:#1a1a1a;cursor:pointer;transition:all .15s ease}.access-point-passes-tab .passes-table tbody td.pass-actions .action-btn:hover{background:#fff;border-color:#2c2c2e;color:#2c2c2e}.access-point-passes-tab .passes-table tbody td.pass-actions .action-btn.revoke{color:#cf222e;border-color:#cf222e}.access-point-passes-tab .passes-table tbody td.pass-actions .action-btn.revoke:hover{background:#cf222e26}.access-point-passes-tab .status-pill{display:inline-block;padding:4px 10px;font-size:12px;font-weight:500;border-radius:12px;text-transform:capitalize}.access-point-passes-tab .status-pill.active{background:#16a34a26;color:#16a34a}.access-point-passes-tab .status-pill.danger{background:#cf222e26;color:#cf222e}.access-point-passes-tab .status-pill.inactive{background:#4a4a4a26;color:#4a4a4a}.access-point-passes-tab .pagination-controls{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#f8f8f9;border-top:1px solid #e8e8e9}.access-point-passes-tab .pagination-controls .pagination-btn{padding:8px 16px;font-size:14px;font-weight:500;border-radius:6px;border:1px solid #e8e8e9;background:#fff;color:#1a1a1a;cursor:pointer;transition:all .15s ease}.access-point-passes-tab .pagination-controls .pagination-btn:hover:not(:disabled){background:#f8f8f9;border-color:#2c2c2e;color:#2c2c2e}.access-point-passes-tab .pagination-controls .pagination-btn:disabled{opacity:.4;cursor:not-allowed}.access-point-passes-tab .pagination-controls .pagination-info{font-size:14px;color:#4a4a4a;font-weight:500}.access-point-scans-tab{display:flex;flex-direction:column;gap:24px}.access-point-scans-tab .scans-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.access-point-scans-tab .scans-header h3{margin:0;font-size:20px;font-weight:600;color:#1a1a1a}.access-point-scans-tab .scans-header .scans-filter{min-width:200px}.access-point-scans-tab .scans-table-container{background:#fff;border-radius:14px;border:1px solid #e8e8e9;overflow:hidden}.access-point-scans-tab .scans-table-container .scans-table{width:100%;border-collapse:collapse}.access-point-scans-tab .scans-table-container .scans-table thead{background:#f8f8f9;border-bottom:1px solid #e8e8e9}.access-point-scans-tab .scans-table-container .scans-table thead th{padding:16px;text-align:left;font-size:11px;font-weight:600;color:#6b6b6b;text-transform:uppercase;letter-spacing:.1em}.access-point-scans-tab .scans-table-container .scans-table tbody tr{border-bottom:1px solid #e8e8e9;transition:background-color .15s ease}.access-point-scans-tab .scans-table-container .scans-table tbody tr:last-child{border-bottom:none}.access-point-scans-tab .scans-table-container .scans-table tbody tr:hover{background:#fafafa}.access-point-scans-tab .scans-table-container .scans-table tbody tr td{padding:16px;font-size:14px;color:#1a1a1a;vertical-align:middle}.access-point-scans-tab .scans-table-container .scans-table tbody tr td.scan-time{color:#4a4a4a;white-space:nowrap}.access-point-scans-tab .scans-table-container .scans-table tbody tr td.scan-reason{color:#4a4a4a}.access-point-scans-tab .scans-table-container .scans-table tbody tr td.scan-holder{font-weight:500}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .result-badge{display:inline-block;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .result-badge.allow{background:#e8f5e9;color:#16a34a}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .result-badge.deny{background:#ffebe9;color:#cf222e}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .status-badge{display:inline-block;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .status-badge.active{background:#e8f5e9;color:#16a34a}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .status-badge.revoked{background:#ffebe9;color:#cf222e}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .status-badge.expired{background:#fafafa;color:#4a4a4a}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .scan-code{display:inline-block;padding:4px 8px;background:#f8f8f9;border:1px solid #e8e8e9;border-radius:6px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:13px;color:#1a1a1a;letter-spacing:.5px}.access-point-scans-tab .scans-table-container .scans-table tbody tr td .status-empty,.access-point-scans-tab .scans-table-container .scans-table tbody tr td .pass-link-empty{color:#6b6b6b}.access-point-scans-tab .scans-table-container .scans-table tbody tr td.scan-pass-link .pass-link{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;color:#2c2c2e;text-decoration:none;font-size:13px;font-weight:500;border-radius:6px;transition:all .15s ease}.access-point-scans-tab .scans-table-container .scans-table tbody tr td.scan-pass-link .pass-link svg{font-size:14px;opacity:.7}.access-point-scans-tab .scans-table-container .scans-table tbody tr td.scan-pass-link .pass-link:hover{background:#2c2c2e1a;color:#3a3a3c}.access-point-scans-tab .scans-table-container .scans-table tbody tr td.scan-pass-link .pass-link:hover svg{opacity:1}.access-point-scans-tab .scans-table-container .scans-table tbody tr td.scan-pass-link .pass-link:active{transform:scale(.98)}.access-point-scans-tab .scans-pagination{display:flex;justify-content:center;padding:16px 0}.access-point-scans-tab .scans-pagination button{min-width:150px}.access-point-scans-tab .loading-state,.access-point-scans-tab .error-state,.access-point-scans-tab .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;background:#fff;border:1px solid #e8e8e9;border-radius:14px}.access-point-scans-tab .loading-state p,.access-point-scans-tab .error-state p,.access-point-scans-tab .empty-state p{margin:8px 0;font-size:15px;color:#4a4a4a}.access-point-scans-tab .loading-state .error-icon,.access-point-scans-tab .error-state .error-icon,.access-point-scans-tab .empty-state .error-icon{font-size:40px;color:#cf222e;margin-bottom:12px}.access-point-scans-tab .loading-state .error-message,.access-point-scans-tab .error-state .error-message,.access-point-scans-tab .empty-state .error-message{color:#cf222e;font-weight:500;margin-bottom:16px}.access-point-scans-tab .loading-state .empty-subtitle,.access-point-scans-tab .error-state .empty-subtitle,.access-point-scans-tab .empty-state .empty-subtitle{font-size:13px;color:#6b6b6b;margin-top:4px}.access-point-scans-tab .loading-state button,.access-point-scans-tab .error-state button,.access-point-scans-tab .empty-state button{margin-top:16px;display:inline-flex;align-items:center;gap:8px}.access-point-scans-tab .loading-state button svg,.access-point-scans-tab .error-state button svg,.access-point-scans-tab .empty-state button svg{font-size:16px}.access-point-scans-tab .loading-state p{color:#4a4a4a}@media(max-width:768px){.access-point-scans-tab .scans-header{flex-direction:column;align-items:flex-start}.access-point-scans-tab .scans-header .scans-filter{width:100%}.access-point-scans-tab .scans-table-container{overflow-x:auto}.access-point-scans-tab .scans-table-container .scans-table{min-width:900px}}.reports-tab{padding:0}.reports-tab .loading-state,.reports-tab .error-state,.reports-tab .empty-state{text-align:center;padding:60px 20px;color:#6b6b6b}.reports-tab .error-state .error-message{color:#cf222e;margin-bottom:20px}.reports-tab .reports-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;gap:20px}.reports-tab .reports-header .reports-title-group{flex:1}.reports-tab .reports-header .reports-title-group h3{margin:0 0 8px;font-size:24px;font-weight:600;color:#1a1a1a}.reports-tab .reports-header .reports-title-group .reports-subtitle{margin:0;font-size:14px;color:#6b6b6b}.reports-tab .reports-header .reports-header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.reports-tab .reports-header .reports-header-actions .download-error{margin:0;font-size:12px;color:#cf222e}.reports-tab .reports-header button[disabled]{opacity:.5;cursor:not-allowed}.reports-tab .metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px}.reports-tab .metrics-grid .metric-card{background:#fff;border:1px solid #e8e8e9;border-radius:12px;padding:24px;transition:all .2s ease}.reports-tab .metrics-grid .metric-card:hover{border-color:#d4d4d5;box-shadow:0 2px 8px #00000014}.reports-tab .metrics-grid .metric-card .metric-label{margin:0 0 12px;font-size:13px;font-weight:500;color:#6b6b6b;text-transform:uppercase;letter-spacing:.5px}.reports-tab .metrics-grid .metric-card .metric-value{margin:0;font-size:32px;font-weight:700;color:#1a1a1a;line-height:1.2}.reports-tab .metrics-grid .metric-card .metric-value.metric-value-success{color:#16a34a}.reports-tab .metrics-grid .metric-card .metric-value.metric-value-danger{color:#cf222e}.reports-tab .metrics-grid .metric-card .metric-value.metric-value-small{font-size:16px;font-weight:600}.reports-tab .empty-state-section{text-align:center;padding:80px 20px;background:#fafafa;border-radius:12px;margin-top:40px}.reports-tab .empty-state-section .empty-icon{font-size:64px;margin-bottom:20px}.reports-tab .empty-state-section h4{margin:0 0 12px;font-size:20px;font-weight:600;color:#1a1a1a}.reports-tab .empty-state-section p{margin:0;font-size:14px;color:#6b6b6b}.reports-tab .reports-section{margin-top:40px}.reports-tab .reports-section .section-title{margin:0 0 20px;font-size:18px;font-weight:600;color:#1a1a1a}.reports-tab .reports-section .table-container{background:#fff;border:1px solid #e8e8e9;border-radius:12px;overflow:hidden}.reports-tab .reports-section .table-container .reports-table{width:100%;border-collapse:collapse}.reports-tab .reports-section .table-container .reports-table thead{background:#fafafa}.reports-tab .reports-section .table-container .reports-table thead tr th{padding:16px 20px;text-align:left;font-size:13px;font-weight:600;color:#4a4a4a;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e8e8e9}.reports-tab .reports-section .table-container .reports-table tbody tr{border-bottom:1px solid #e8e8e9;transition:background-color .15s ease}.reports-tab .reports-section .table-container .reports-table tbody tr:last-child{border-bottom:none}.reports-tab .reports-section .table-container .reports-table tbody tr:hover{background:#fafafa}.reports-tab .reports-section .table-container .reports-table tbody tr td{padding:16px 20px;font-size:14px;color:#1a1a1a}.reports-tab .reports-section .table-container .reports-table tbody tr td .result-badge{display:inline-block;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.reports-tab .reports-section .table-container .reports-table tbody tr td .result-badge.result-allow{background:#e8f5e9;color:#16a34a}.reports-tab .reports-section .table-container .reports-table tbody tr td .result-badge.result-deny{background:#ffebe9;color:#cf222e}.reports-tab .reports-section .empty-state-inline{padding:40px 20px;text-align:center;background:#fafafa;border-radius:12px;color:#6b6b6b}.reports-tab .reports-section .empty-state-inline p{margin:0}.smart-image{position:relative;width:100%;overflow:hidden;background-color:#f0f0f1}.smart-image--aspect-16-9{aspect-ratio:16 / 9}.smart-image--aspect-4-5{aspect-ratio:4 / 5}.smart-image--aspect-1-1{aspect-ratio:1 / 1}.smart-image--radius-sm{border-radius:6px}.smart-image--radius-md{border-radius:10px}.smart-image--radius-lg{border-radius:14px}.smart-image--radius-full{border-radius:9999px}.smart-image__img{position:absolute;top:0;left:0;width:100%;height:100%;transition:opacity .2s ease}.smart-image__img--cover{object-fit:cover}.smart-image__img--contain{object-fit:contain}.smart-image__placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#f0f0f1}.smart-image__placeholder--loading{animation:pulse 1.5s ease-in-out infinite}.smart-image__placeholder-icon{font-size:32px;color:#6b6b6b;opacity:.4}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.lightbox{position:fixed;inset:0;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:9999;padding:2rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lightbox__close{position:absolute;top:1.5rem;right:1.5rem;background:#ffffff26;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;font-size:24px;transition:all .2s ease;z-index:10000}.lightbox__close:hover{background:#ffffff40;transform:scale(1.1)}.lightbox__close:active{transform:scale(.95)}.lightbox__content{max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox__image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 25px 50px -12px #00000080}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}@keyframes lightboxImageZoomIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.lightbox{animation:lightboxFadeIn .2s ease}.lightbox .lightbox__image{animation:lightboxImageZoomIn .3s ease}.access-point-detail-page{display:flex;flex-direction:column;height:100%;background:#f8f8f9}.page-content{flex:1;padding:20px 48px 48px;max-width:1440px;margin:0 auto;width:100%;overflow-y:auto}@media(max-width:768px){.page-content{padding:16px 20px 20px}}@media(max-width:480px){.page-content{padding:12px 16px 16px}}.ap-expired-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:10px;font-size:13px;font-weight:500;text-transform:capitalize;white-space:nowrap;background-color:#fef3c7;color:#92400e}@media(max-width:768px){.ap-expired-badge{padding:4px 8px;font-size:12px}}.ap-status-pill{display:inline-flex;align-items:center;padding:6px 12px;border-radius:10px;font-size:13px;font-weight:500;text-transform:capitalize;white-space:nowrap}.ap-status-pill.active{background-color:#e8f5e9;color:#16a34a}.ap-status-pill.inactive{background-color:#f0f0f1;color:#4a4a4a}.ap-status-pill.archived{background-color:#ffebe9;color:#cf222e}@media(max-width:768px){.ap-status-pill{padding:4px 8px;font-size:12px}}.ap-action-btn{min-height:44px;white-space:nowrap}.ap-action-btn.danger{color:#cf222e;border-color:#cf222e}.ap-action-btn.danger:hover:not(:disabled){background-color:#ffebe9;border-color:#cf222e}@media(max-width:768px){.ap-action-btn{padding:6px 12px;font-size:13px;min-height:36px}}@media(max-width:640px){.ap-action-btn{padding:6px 10px;font-size:12px}}.tabs{display:flex;gap:8px;border-bottom:1px solid #e8e8e9;margin:12px -48px 0;padding:0 48px;overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:768px){.tabs{margin:12px -20px 0;padding:0 20px}}@media(max-width:480px){.tabs{margin:12px -16px 0;padding:0 16px}}.tab{padding:10px 20px;background:none;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:#4a4a4a;cursor:pointer;transition:all .15s ease;position:relative;bottom:-1px;white-space:nowrap;min-height:44px}.tab:hover{color:#1a1a1a}.tab.active{color:#1a1a1a;border-bottom-color:#2c2c2e}@media(max-width:768px){.tab{padding:10px 16px;font-size:13px}}.overview-content{max-width:1200px}.overview-hero{position:relative;margin-bottom:24px;border:1px solid #e8e8e9;border-radius:14px;overflow:hidden;max-height:280px}@media(max-width:768px){.overview-hero{max-height:220px}}.overview-hero__image{width:100%;cursor:pointer;transition:transform .2s ease}.overview-hero__image:hover{transform:scale(1.02)}.overview-hero__logo{position:absolute;top:20px;left:20px;width:56px;height:56px;background-color:#fffffff2;border:2px solid #e8e8e9;border-radius:10px;padding:8px;box-shadow:0 2px 8px #00000026;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@media(max-width:768px){.overview-hero__logo{width:48px;height:48px;top:16px;left:16px}}.overview-hero-section{background-color:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:24px;margin-bottom:20px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start}@media(max-width:968px){.overview-hero-section{grid-template-columns:1fr;gap:20px}}@media(max-width:768px){.overview-hero-section{padding:20px}}.hero-content{display:flex;flex-direction:column;gap:16px;min-width:0}.hero-image{display:flex;align-items:flex-start;justify-content:center;flex-shrink:0;width:220px;flex:0 0 320px}@media(max-width:968px){.hero-image{width:100%;max-width:400px;flex:0 0 auto;justify-content:center;margin:0 auto}}@media(max-width:768px){.hero-image{max-width:320px}}.overview-logo-inline{width:56px;height:56px;background-color:#f0f0f1;border:1px solid #e8e8e9;border-radius:10px;padding:8px;flex-shrink:0}@media(max-width:768px){.overview-logo-inline{width:48px;height:48px}}.overview-logo-fallback{width:56px;height:56px;background:linear-gradient(135deg,#2c2c2e,#3a3a3c);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 4px #0000001a}@media(max-width:768px){.overview-logo-fallback{width:48px;height:48px}}.overview-initials{font-size:20px;font-weight:700;color:#fff;-webkit-user-select:none;user-select:none}@media(max-width:768px){.overview-initials{font-size:18px}}.overview-image-main{width:100%;max-width:320px;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;border:1px solid #e8e8e9;border-radius:14px;overflow:hidden;box-shadow:0 2px 8px #00000014}.overview-image-main:hover{transform:scale(1.02);box-shadow:0 8px 20px #0000001f;border-color:#d4d4d5}.overview-image-main:active{transform:scale(1.01)}@media(max-width:968px){.overview-image-main{max-width:400px}}@media(max-width:768px){.overview-image-main{max-width:320px}}.overview-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.overview-type-badge{display:inline-flex;align-items:center;padding:4px 10px;background-color:#f0f0f1;border:1px solid #d4d4d5;border-radius:10px;font-size:13px;font-weight:500;color:#1a1a1a;white-space:nowrap}@media(max-width:480px){.overview-type-badge{font-size:12px;padding:3px 8px}}.overview-title-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:8px}@media(max-width:768px){.overview-title-row{gap:12px}}.overview-title{font-size:20px;font-weight:600;color:#1a1a1a;margin:0;flex:0 1 auto;min-width:0}@media(max-width:768px){.overview-title{font-size:18px}}.overview-status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:10px;font-size:13px;font-weight:500;text-transform:capitalize;white-space:nowrap;flex-shrink:0}.overview-status-badge.active{background-color:#e8f5e9;color:#16a34a}.overview-status-badge.inactive{background-color:#f0f0f1;color:#4a4a4a}.overview-status-badge.archived{background-color:#ffebe9;color:#cf222e}@media(max-width:480px){.overview-status-badge{font-size:12px;padding:3px 8px}}.overview-title-group{display:flex;flex-direction:column;gap:8px}.overview-subtitle{font-size:14px;color:#4a4a4a;margin:0 0 8px}.overview-description{font-size:13px;color:#4a4a4a;line-height:1.7;margin:0}.overview-schedule-strip{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;background-color:#f0f0f1;border:1px solid #e8e8e9;border-radius:10px;font-size:13px}@media(max-width:480px){.overview-schedule-strip{font-size:12px;padding:8px 12px;gap:8px}}.schedule-item{display:flex;align-items:center;gap:6px;color:#1a1a1a}.schedule-icon{font-size:16px;color:#4a4a4a;flex-shrink:0}.schedule-text{font-weight:500}.schedule-separator{color:#6b6b6b;margin:0 8px}.schedule-duration{color:#4a4a4a;font-style:italic}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-top:24px}@media(max-width:768px){.overview-grid{grid-template-columns:1fr;gap:20px;margin-top:20px}}.detail-card{background-color:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:20px}.detail-card.detail-card-admin{border-color:#2c2c2e26;background-color:#fffffffa}@media(max-width:768px){.detail-card{padding:20px;gap:16px}}.card-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 12px;display:flex;align-items:center;gap:8px}.admin-badge{display:inline-flex;padding:2px 6px;background-color:#2c2c2e26;color:#2c2c2e;border-radius:6px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.card-content{display:flex;flex-direction:column;gap:16px}.detail-row{display:flex;flex-direction:column;gap:4px}.detail-label{font-size:11px;color:#4a4a4a;text-transform:uppercase;letter-spacing:.05em;font-weight:500}.detail-value{font-size:14px;color:#1a1a1a;word-break:break-word}.detail-value-muted{font-size:14px;color:#6b6b6b;font-style:italic}.detail-link{font-size:14px;color:#2c2c2e;text-decoration:none;transition:color .15s ease}.detail-link:hover{color:#3a3a3c;text-decoration:underline}.instruction-text,.note-text{font-size:13px;color:#4a4a4a;line-height:1.7;margin:0;white-space:pre-wrap}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;padding:5px 12px;background-color:#f0f0f1;border:1px solid #e8e8e9;border-radius:9999px;font-size:13px;font-weight:500;color:#1a1a1a;white-space:nowrap}.chip.chip-secondary{background-color:#fff;border-color:#e8e8e9;color:#4a4a4a}@media(max-width:480px){.chip{font-size:12px;padding:4px 8px}}.contact-row{flex-direction:row;align-items:center;gap:12px}.contact-icon{font-size:18px;color:#4a4a4a;flex-shrink:0}.social-links{display:flex;gap:12px;flex-wrap:wrap}.social-link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;background-color:#f0f0f1;border:1px solid #e8e8e9;border-radius:9999px;font-size:18px;color:#4a4a4a;text-decoration:none;transition:all .15s ease;cursor:pointer}.social-link:hover{background-color:#fafafa;border-color:#d4d4d5;color:#1a1a1a;transform:translateY(-2px)}.social-link.social-instagram:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);border-color:#e1306c;color:#fff}.social-link.social-facebook:hover{background-color:#1877f2;border-color:#1877f2;color:#fff}.social-link.social-snapchat:hover{background-color:#fffc00;border-color:#fffc00;color:#000}.social-link.social-twitter:hover{background-color:#1da1f2;border-color:#1da1f2;color:#fff}@media(max-width:480px){.social-link{width:34px;height:34px;font-size:16px}}.external-links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.external-link-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background-color:#f0f0f1;border:1px solid #e8e8e9;border-radius:10px;font-size:13px;font-weight:500;color:#1a1a1a;text-decoration:none;transition:all .15s ease;cursor:pointer;min-height:44px}.external-link-button:hover{background-color:#fafafa;border-color:#d4d4d5;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.external-link-button .link-icon{font-size:18px;color:#4a4a4a;flex-shrink:0}.external-link-button span{white-space:nowrap}@media(max-width:480px){.external-link-button{font-size:12px;padding:8px 12px;min-height:40px}.external-link-button .link-icon{font-size:16px}}.scoped-reports-tab .tab-header{margin-bottom:24px}.scoped-reports-tab .tab-header h3{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.scoped-reports-tab .tab-header .tab-subtitle{font-size:13px;color:#4a4a4a;margin:0}.placeholder-section{padding:48px;text-align:center;color:#6b6b6b;background-color:#fff;border:1px dashed #d4d4d5;border-radius:14px}@media(max-width:768px){.placeholder-section{padding:32px 20px}}@media(max-width:480px){.placeholder-section{padding:24px 16px}}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center;min-height:400px}@media(max-width:768px){.loading-state,.error-state{padding:48px 16px;min-height:300px}}.loading-state p,.error-state p{color:#4a4a4a;font-size:14px;margin:0 0 16px}.loading-state .error-message,.error-state .error-message{color:#cf222e}.loading-state button,.error-state button{margin-top:20px}.passes-list-page .page-content{padding:20px}.passes-list-page .search-bar{margin-bottom:16px}.passes-list-page .search-bar .search-input{width:100%;max-width:500px;padding:12px 16px;border:1px solid #e8e8e9;border-radius:10px;font-size:14px}.passes-list-page .search-bar .search-input:focus{outline:none;border-color:#2c2c2e}.passes-list-page .search-bar .search-input:disabled{background-color:#f7f7f8;cursor:not-allowed}.passes-list-page .filter-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e8e8e9}.passes-list-page .filter-bar .filter-group{display:flex;gap:12px}.passes-list-page .filter-bar .filter-btn{padding:8px 16px;border:1px solid #e8e8e9;background:#f8f8f9;color:#1a1a1a;border-radius:10px;cursor:pointer;transition:all .2s ease}.passes-list-page .filter-bar .filter-btn:hover:not(:disabled){background:#f7f7f8}.passes-list-page .filter-bar .filter-btn.active{background:#2c2c2e;color:#f8f8f9;border-color:#2c2c2e}.passes-list-page .filter-bar .filter-btn:disabled{opacity:.5;cursor:not-allowed}.passes-list-page .filter-bar .results-count{color:#4a4a4a;font-size:13px}.passes-list-page .error-state{text-align:center;padding:24px;background:#fee;border:1px solid #fcc;border-radius:10px;margin-bottom:20px}.passes-list-page .error-state .error-message{color:#c33;margin-bottom:16px}.passes-list-page .loading-state,.passes-list-page .empty-state{text-align:center;padding:24px;color:#4a4a4a}.passes-list-page .empty-state p{margin-bottom:12px}.passes-list-page .empty-state .empty-subtitle{font-size:13px;margin-bottom:20px}.passes-list-page .table-container{background:#f8f8f9;border:1px solid #e8e8e9;border-radius:10px;overflow-x:auto}.passes-list-page .table-container .data-table{width:100%;border-collapse:collapse}.passes-list-page .table-container .data-table thead{background:#f7f7f8;border-bottom:2px solid #e8e8e9}.passes-list-page .table-container .data-table thead th{padding:16px;text-align:left;font-weight:600;color:#1a1a1a;font-size:13px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.passes-list-page .table-container .data-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.passes-list-page .table-container .data-table thead th.sortable:hover{background:#efeff1}.passes-list-page .table-container .data-table thead th.sortable .sort-indicator{margin-left:8px;color:#2c2c2e}.passes-list-page .table-container .data-table tbody tr{border-bottom:1px solid #e8e8e9;transition:background-color .2s ease}.passes-list-page .table-container .data-table tbody tr:hover{background:#f7f7f8}.passes-list-page .table-container .data-table tbody tr:last-child{border-bottom:none}.passes-list-page .table-container .data-table tbody td{padding:16px;color:#1a1a1a;font-size:14px;vertical-align:middle}.passes-list-page .table-container .data-table tbody td .holder-cell{display:flex;flex-direction:column;gap:8px}.passes-list-page .table-container .data-table tbody td .holder-cell .holder-name{font-weight:500;color:#1a1a1a}.passes-list-page .table-container .data-table tbody td .holder-cell .holder-ref{font-size:13px;color:#4a4a4a}.passes-list-page .table-container .data-table tbody td .status-badge{display:inline-block;padding:8px 12px;border-radius:10px;font-size:13px;font-weight:500;text-transform:capitalize}.passes-list-page .table-container .data-table tbody td .status-badge.active{background:#d4edda;color:#155724}.passes-list-page .table-container .data-table tbody td .status-badge.inactive{background:#f8d7da;color:#721c24}.passes-list-page .table-container .data-table tbody td .status-badge.expired{background:#fff3cd;color:#856404}.passes-list-page .table-container .data-table tbody td .status-badge.revoked{background:#f8d7da;color:#721c24}.passes-list-page .table-container .data-table tbody td .status-badge.unknown{background:#f7f7f8;color:#4a4a4a}.passes-list-page .table-container .data-table tbody td .view-btn{padding:8px 16px;background:transparent;border:none;color:#2c2c2e;cursor:pointer;font-size:14px;font-weight:500;transition:color .2s ease}.passes-list-page .table-container .data-table tbody td .view-btn:hover{color:#131314;text-decoration:underline}.passes-list-page .pagination-controls{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#f8f8f9;border:1px solid #e8e8e9;border-top:none;border-radius:0 0 10px 10px}.passes-list-page .pagination-controls .pagination-info{color:#4a4a4a;font-size:13px;flex-shrink:0}.passes-list-page .pagination-controls .pagination-buttons{display:flex;align-items:center;gap:12px;flex-grow:1;justify-content:center}.passes-list-page .pagination-controls .pagination-buttons .pagination-btn{padding:8px 16px;border:1px solid #e8e8e9;background:#f8f8f9;color:#1a1a1a;border-radius:10px;cursor:pointer;transition:all .2s ease;font-size:13px;min-width:40px}.passes-list-page .pagination-controls .pagination-buttons .pagination-btn:hover:not(:disabled){background:#f7f7f8;border-color:#2c2c2e}.passes-list-page .pagination-controls .pagination-buttons .pagination-btn.active{background:#2c2c2e;color:#f8f8f9;border-color:#2c2c2e;font-weight:600}.passes-list-page .pagination-controls .pagination-buttons .pagination-btn:disabled{opacity:.4;cursor:not-allowed}.passes-list-page .pagination-controls .pagination-buttons .page-numbers{display:flex;gap:8px}.passes-list-page .pagination-controls .page-size-selector{display:flex;align-items:center;gap:12px;color:#4a4a4a;font-size:13px;flex-shrink:0}.passes-list-page .pagination-controls .page-size-selector label{white-space:nowrap}.passes-list-page .pagination-controls .page-size-selector select{padding:8px 12px;border:1px solid #e8e8e9;border-radius:10px;background:#f8f8f9;color:#1a1a1a;font-size:13px;cursor:pointer;transition:border-color .2s ease}.passes-list-page .pagination-controls .page-size-selector select:focus{outline:none;border-color:#2c2c2e}.passes-list-page .pagination-controls .page-size-selector select:disabled{opacity:.5;cursor:not-allowed}.pass-issue-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.page-content{padding:48px;max-width:800px;margin:0 auto;width:100%}.form-container{background:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:48px}.form-container h3{margin:0 0 24px;font-size:16px;font-weight:600;color:#1a1a1a;letter-spacing:-.01em}@media(max-width:768px){.form-container{padding:24px}}@media(max-width:480px){.form-container{padding:20px}}.issue-form{display:flex;flex-direction:column;gap:24px}@media(max-width:768px){.issue-form{gap:20px}}.form-group label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#6b6b6b;font-weight:500}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:1px solid #d4d4d5;border-radius:6px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .2s ease;min-height:44px}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#d4d4d5}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2c2c2e}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:#6b6b6b}.form-group textarea{resize:vertical;font-family:SF Mono,Monaco,Courier New,monospace;font-size:13px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:24px;border-top:1px solid #e8e8e9}@media(max-width:640px){.form-actions{flex-direction:column-reverse;gap:8px}}@media(max-width:640px){.cancel-btn{width:100%}}@media(max-width:640px){.issue-btn{width:100%}}.edit-pass-modal{max-width:500px}.edit-pass-modal .modal-subtitle{margin-top:4px;font-size:14px;color:#4a4a4a}.edit-pass-modal .form-group{margin-bottom:20px}.edit-pass-modal .form-group label{display:block;margin-bottom:6px;font-weight:500;color:#1a1a1a}.edit-pass-modal .form-group label .required{color:#cf222e}.edit-pass-modal .form-group label .optional{font-weight:400;color:#4a4a4a;font-size:13px}.edit-pass-modal .form-group input[type=datetime-local]{width:100%;padding:10px 12px;border:1px solid #e8e8e9;border-radius:6px;font-size:14px;transition:border-color .2s}.edit-pass-modal .form-group input[type=datetime-local]:focus{outline:none;border-color:#2c2c2e}.edit-pass-modal .form-group input[type=datetime-local]:disabled{background:#fff;cursor:not-allowed}.edit-pass-modal .form-group .form-hint{display:block;margin-top:4px;font-size:13px;color:#4a4a4a}.edit-pass-modal .form-group .form-hint-disabled{padding:10px 12px;background:#fff;border-radius:6px;font-size:13px;color:#4a4a4a}.edit-pass-modal .form-error{margin-top:16px;padding:12px;background:color-mix(in srgb,#cf222e 10%,transparent);border:1px solid color-mix(in srgb,#cf222e 30%,transparent);border-radius:6px;color:#cf222e;font-size:14px}.edit-pass-modal .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid #e8e8e9}.resend-invite-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.resend-invite-modal{background:#fff;border-radius:12px;max-width:480px;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.resend-invite-modal__header{display:flex;align-items:center;gap:12px;padding:24px 24px 16px;border-bottom:1px solid #e8e8e9}.resend-invite-modal__icon{font-size:24px;color:#2c2c2e;flex-shrink:0}.resend-invite-modal__title{margin:0;font-size:20px;font-weight:600;color:#1a1a1a}.resend-invite-modal__body{padding:24px}.resend-invite-modal__recipient{margin:0 0 12px;font-size:15px;color:#1a1a1a;line-height:1.5}.resend-invite-modal__warning{margin-top:16px;padding:12px;background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;color:#f59e0b;font-size:14px}.resend-invite-modal__error{margin-top:16px;padding:12px;background:#ffebe9;border:1px solid #cf222e;border-radius:6px;color:#cf222e;font-size:14px}.resend-invite-modal__footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px}.resend-invite-modal__button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.resend-invite-modal__button:disabled{opacity:.5;cursor:not-allowed}.resend-invite-modal__button--cancel{background:#f7f7f8;color:#1a1a1a;border:1px solid #d4d4d5}.resend-invite-modal__button--cancel:hover:not(:disabled){background:#fafafa}.resend-invite-modal__button--send{background:#2c2c2e;color:#fff}.resend-invite-modal__button--send:hover:not(:disabled){background:var(--btn-primary-hover-bg)}.pass-detail-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.back-link{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;margin-bottom:24px;color:#2c2c2e;text-decoration:none;font-size:14px;font-weight:500;border-radius:10px;transition:all .2s ease}.back-link svg{width:16px;height:16px}.back-link:hover{background:#fafafa;color:#2c2c2e}.back-link:active{transform:translate(-2px)}@media(max-width:768px){.back-link{margin-bottom:20px}}.status-badge{display:inline-block;padding:6px 16px;border-radius:9999px;font-size:12px;font-weight:500;letter-spacing:.05em;white-space:nowrap}.status-badge.active{background:#f0f0f1;color:#1a1a1a}.status-badge.revoked{background:#ffebe9;color:#cf222e}.status-badge.expired{background:#d4d4d5;color:#6b6b6b}@media(max-width:640px){.status-badge{padding:4px 12px}}.status-pill{display:inline-block;padding:4px 12px;border-radius:10px;font-size:12px;font-weight:500;letter-spacing:.05em}.status-pill.active{background:#f0f0f1;color:#1a1a1a}.status-pill.revoked{background:#ffebe9;color:#cf222e}.status-pill.expired{background:#d4d4d5;color:#6b6b6b}.status-pill.unknown{background:#f7f7f8;color:#4a4a4a}.invite-sent-time{margin:8px 0 0;font-size:13px;color:#6b6b6b;font-weight:400;letter-spacing:normal;text-transform:none}.invite-error{margin:8px 0 0;padding:8px;background:#ffebe9;border-left:3px solid #cf222e;border-radius:6px;font-size:13px;color:#cf222e;font-weight:400;letter-spacing:normal;text-transform:none;line-height:1.4}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}@media(max-width:768px){.detail-grid{grid-template-columns:1fr;gap:20px}}.detail-section{background:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:24px}.detail-section h4{margin:0 0 20px;font-size:16px;font-weight:600;color:#1a1a1a}@media(max-width:768px){.detail-section{padding:20px}}.info-list{display:flex;flex-direction:column;gap:20px}@media(max-width:768px){.info-list{gap:16px}}.info-row label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#6b6b6b;font-weight:500;margin-bottom:4px}.info-row p{margin:0;font-size:14px;color:#1a1a1a;font-weight:500;word-break:break-word}.info-row .code-text{font-family:monospace;font-size:13px;color:#2c2c2e;letter-spacing:.5px}.info-row .email-text{color:#4a4a4a}.info-row .muted-text{color:#6b6b6b;font-style:italic}.info-row a{color:#2c2c2e;text-decoration:none}.info-row a:hover{text-decoration:underline}.public-url-link{color:#2c2c2e;text-decoration:none;font-size:13px;font-weight:500;word-break:break-all}.public-url-link:hover{text-decoration:underline}.open-btn{background:transparent;border:1px solid #d4d4d5;border-radius:6px;padding:4px 6px;cursor:pointer;color:#4a4a4a;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;text-decoration:none}.open-btn:hover{background:#fafafa;border-color:#d4d4d5;color:#1a1a1a}.open-btn:active{transform:scale(.95)}.open-btn svg{width:16px;height:16px}.copy-btn{background:transparent;border:1px solid #d4d4d5;border-radius:6px;padding:4px 6px;cursor:pointer;color:#4a4a4a;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:14px}.copy-btn:hover{background:#fafafa;border-color:#d4d4d5;color:#1a1a1a}.copy-btn:active{transform:scale(.95)}.copy-btn svg{width:16px;height:16px}.entitlements-chips{display:flex;flex-wrap:wrap;gap:8px}.entitlements-chips .entitlement-chip{display:inline-block;padding:4px 12px;background:#f0f0f1;border-radius:10px;font-size:12px;font-weight:500;color:#1a1a1a;letter-spacing:.05em}.qr-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;background:#f8f8f9;border:1px solid #e8e8e9;border-radius:14px}.qr-card .qr-image{width:240px;max-width:100%;height:auto;border-radius:10px;box-shadow:0 2px 8px #00000014}.qr-card .qr-caption{margin:16px 0 0;font-size:13px;color:#6b6b6b;letter-spacing:.05em;text-align:center}.qr-card .qr-payload{margin-top:20px;width:100%;padding-top:20px;border-top:1px solid #e8e8e9}.qr-card .qr-payload label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#6b6b6b;font-weight:500;margin-bottom:4px}.qr-card .qr-payload code{font-family:monospace;font-size:13px;color:#4a4a4a;background:#fff;padding:4px 8px;border-radius:6px;word-break:break-all}@media(max-width:768px){.qr-card{padding:20px}.qr-card .qr-image{width:200px}}.qr-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;background:#f8f8f9;border:1px dashed #d4d4d5;border-radius:10px;min-height:250px}.qr-placeholder .qr-icon{font-size:80px;color:#d4d4d5;margin-bottom:16px}.qr-placeholder p{margin:0;font-size:14px;color:#6b6b6b;letter-spacing:.05em}@media(max-width:768px){.qr-placeholder{padding:32px;min-height:200px}.qr-placeholder .qr-icon{font-size:60px}}.qr-actions{margin-top:24px;padding-top:24px;border-top:1px solid #e8e8e9;display:flex;flex-direction:column;gap:12px}.qr-actions button{width:100%;min-height:44px}.qr-actions .qr-note{margin:0;font-size:13px;color:#6b6b6b;text-align:center;line-height:1.5}@media(max-width:768px){.qr-actions{margin-top:20px;padding-top:20px}}.action-section{display:flex;gap:12px;padding:24px;background:#fff;border:1px solid #e8e8e9;border-radius:14px}@media(max-width:768px){.action-section{padding:20px}}@media(max-width:640px){.action-section{flex-direction:column;gap:8px}}.revoke-btn{min-height:44px}@media(max-width:640px){.revoke-btn{width:100%}}.resend-btn{min-height:44px}@media(max-width:640px){.resend-btn{width:100%}}.loading-state,.error-state{padding:48px;text-align:center;color:#4a4a4a;font-size:14px}.loading-state .error-message,.error-state .error-message{margin-top:16px;color:#cf222e;font-size:13px}.toast{position:fixed;bottom:32px;right:32px;padding:16px 24px;border-radius:14px;font-size:14px;font-weight:500;box-shadow:0 10px 25px #00000026;animation:slideInUp .3s ease-out;z-index:2000;max-width:400px}.toast.toast-success{background:#e8f5e9;color:#16a34a;border:1px solid #16a34a}.toast.toast-error{background:#ffebe9;color:#cf222e;border:1px solid #cf222e}@media(max-width:640px){.toast{bottom:20px;right:20px;left:20px;max-width:none}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scans-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.filters-section{margin-bottom:24px}@media(max-width:768px){.filters-section{margin-bottom:20px}}.filters{display:flex;gap:20px;flex-wrap:wrap}@media(max-width:768px){.filters{gap:16px}}.filter-item{flex:1;min-width:200px}@media(max-width:768px){.filter-item{min-width:150px}}@media(max-width:480px){.filter-item{flex:1 1 100%}}.filter-label{display:block;margin-bottom:8px;font-size:13px;font-weight:500;color:#4a4a4a}.filter-select{padding:8px 16px;border:1px solid #d4d4d5;border-radius:6px;font-size:14px;background:#fff;color:#1a1a1a;cursor:pointer;transition:all .2s ease;min-height:44px}.filter-select:hover{border-color:#d4d4d5}.filter-select:focus{outline:none;border-color:#2c2c2e}.data-table{width:100%;border-collapse:collapse;min-width:650px}.result-badge{display:inline-block;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:600;letter-spacing:.05em;white-space:nowrap}.result-badge.allow{background:#e8f5e9;color:#16a34a}.result-badge.deny{background:#ffebe9;color:#cf222e}.scan-code{font-family:SF Mono,Monaco,Courier New,monospace;background:#f8f8f9;padding:4px 8px;border-radius:6px;font-size:13px;color:#4a4a4a;border:1px solid #e8e8e9}@media(max-width:768px){.scan-code{font-size:12px;padding:2px 6px}}.reports-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.reports-tabs{display:flex;gap:8px;border-bottom:1px solid #e8e8e9;margin-top:20px;overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:768px){.reports-tabs{gap:4px;margin-top:16px}}.page-content .download-error-banner{margin-bottom:24px;padding:16px 20px;background:#cf222e1a;border:1px solid rgba(207,34,46,.3);border-radius:10px}.page-content .download-error-banner .download-error{margin:0;font-size:14px;color:#cf222e;font-weight:500}.summary-card .summary-value.summary-value-small{font-size:14px;font-weight:600;line-height:1.5}.table-container .reports-table{width:100%;border-collapse:collapse}.table-container .reports-table thead{background:#fff}.table-container .reports-table thead tr th{padding:20px 24px;text-align:left;font-size:11px;font-weight:600;color:#4a4a4a;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #e8e8e9}@media(max-width:640px){.table-container .reports-table thead tr th{padding:16px 20px;font-size:13px}}.table-container .reports-table tbody tr{border-bottom:1px solid #e8e8e9;transition:background-color .15s ease}.table-container .reports-table tbody tr:last-child{border-bottom:none}.table-container .reports-table tbody tr:hover{background:#fafafa}.table-container .reports-table tbody tr td{padding:20px 24px;font-size:14px;color:#1a1a1a}@media(max-width:640px){.table-container .reports-table tbody tr td{padding:16px 20px;font-size:13px}}.table-container .reports-table tbody tr td .type-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:13px;font-weight:500;text-transform:capitalize;background:#fafafa;color:#4a4a4a;border:1px solid #e8e8e9}.create-site-modal{max-width:800px;max-height:90vh;display:flex;flex-direction:column}.create-site-modal .modal-body{overflow-y:auto;padding:0}.create-site-modal .form-section{border-bottom:1px solid #e5e7eb}.create-site-modal .form-section:last-of-type{border-bottom:none}.create-site-modal .form-section-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:transparent;border:none;cursor:pointer;transition:background-color .2s;text-align:left}.create-site-modal .form-section-header:hover{background-color:#f9fafb}.create-site-modal .form-section-header .form-section-title{font-size:1rem;font-weight:600;color:#111827;margin:0}.create-site-modal .form-section-header .section-toggle{font-size:1.5rem;font-weight:300;color:#6b7280;line-height:1;-webkit-user-select:none;user-select:none}.create-site-modal .form-section-content{padding:0 1.5rem 1.5rem;animation:slideDown .2s ease-out}.create-site-modal .form-group{margin-bottom:1.25rem}.create-site-modal .form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.875rem}.create-site-modal .form-group label .required{color:#dc2626;margin-left:.25rem}.create-site-modal .form-group label .hint-text{color:#9ca3af;font-weight:400;font-size:.813rem;margin-left:.5rem}.create-site-modal .form-group input[type=text],.create-site-modal .form-group input[type=url],.create-site-modal .form-group input[type=email],.create-site-modal .form-group input[type=tel],.create-site-modal .form-group input[type=number],.create-site-modal .form-group input[type=datetime-local],.create-site-modal .form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:6px;font-size:.938rem;transition:all .2s}.create-site-modal .form-group input[type=text]:focus,.create-site-modal .form-group input[type=url]:focus,.create-site-modal .form-group input[type=email]:focus,.create-site-modal .form-group input[type=tel]:focus,.create-site-modal .form-group input[type=number]:focus,.create-site-modal .form-group input[type=datetime-local]:focus,.create-site-modal .form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.create-site-modal .form-group input[type=text]:disabled,.create-site-modal .form-group input[type=url]:disabled,.create-site-modal .form-group input[type=email]:disabled,.create-site-modal .form-group input[type=tel]:disabled,.create-site-modal .form-group input[type=number]:disabled,.create-site-modal .form-group input[type=datetime-local]:disabled,.create-site-modal .form-group textarea:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed}.create-site-modal .form-group input[type=text]::placeholder,.create-site-modal .form-group input[type=url]::placeholder,.create-site-modal .form-group input[type=email]::placeholder,.create-site-modal .form-group input[type=tel]::placeholder,.create-site-modal .form-group input[type=number]::placeholder,.create-site-modal .form-group input[type=datetime-local]::placeholder,.create-site-modal .form-group textarea::placeholder{color:#9ca3af}.create-site-modal .form-group textarea{resize:vertical;font-family:inherit;line-height:1.5}.create-site-modal .form-group input[type=checkbox]{width:1.125rem;height:1.125rem;margin-right:.5rem;cursor:pointer;vertical-align:middle}.create-site-modal .form-group .checkbox-label{font-weight:500;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:middle}.create-site-modal .form-group .form-hint{display:block;margin-top:.375rem;font-size:.813rem;color:#6b7280;line-height:1.4}.create-site-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:640px){.create-site-modal .form-row{grid-template-columns:1fr}}.create-site-modal .form-group-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.25rem}@media(max-width:640px){.create-site-modal .form-group-row{grid-template-columns:1fr}}.create-site-modal .form-group-row .form-group{margin-bottom:0}.create-site-modal .form-error{padding:.875rem 1.5rem;background-color:#fef2f2;border-left:4px solid #dc2626;color:#991b1b;font-size:.875rem;margin:1rem 1.5rem;border-radius:4px}.create-site-modal .modal-actions{padding:1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.75rem;background:#fff;position:sticky;bottom:0}.search-bar .search-input-wrapper{position:relative;width:100%;max-width:620px;min-width:420px}@media(max-width:900px){.search-bar .search-input-wrapper{min-width:unset;max-width:100%}}.search-bar .search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#999;font-size:18px;pointer-events:none}.search-bar .search-input{width:100%;padding:12px 16px 12px 44px;border:1px solid #e8e8e9;border-radius:10px;font-size:14px}.search-bar .search-input:focus{outline:none;border-color:#2c2c2e}.search-bar .search-input:disabled{background-color:#f7f7f8;cursor:not-allowed}.search-bar .search-input::placeholder{color:#999}.filter-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e8e8e9}.filter-bar .filter-group{display:flex;gap:12px}.filter-bar .filter-btn{padding:8px 16px;border:1px solid #e8e8e9;background:#f8f8f9;color:#1a1a1a;border-radius:10px;cursor:pointer;transition:all .2s ease}.filter-bar .filter-btn:hover:not(:disabled){background:#f7f7f8}.filter-bar .filter-btn.active{background:#2c2c2e;color:#f8f8f9;border-color:#2c2c2e}.filter-bar .filter-btn:disabled{opacity:.5;cursor:not-allowed}.filter-bar .results-count{color:#4a4a4a;font-size:13px}.sites-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.site-name-cell{display:flex;align-items:center;gap:16px}.site-thumbnail{width:40px;height:40px;border-radius:6px;object-fit:cover;flex-shrink:0}.site-thumbnail.site-thumbnail-fallback{display:flex;align-items:center;justify-content:center;background:#fafafa;color:#6b6b6b;font-weight:600;font-size:14px;border:1px solid #e8e8e9}@media(max-width:768px){.site-thumbnail{width:32px;height:32px;font-size:13px}}.status-badge{display:inline-block;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:500;letter-spacing:.05em;text-transform:capitalize}.status-badge.active{background:#10b9811a;color:#059669}.status-badge.expired{background-color:var(--status-expired-bg);color:var(--status-expired-text)}.status-badge.archived{background-color:#f5f5f5;color:#666}.status-badge.unknown{background:#6b72801a;color:#4b5563}.create-access-point-modal{width:90%;max-width:540px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-dialog{background:#fff;border-radius:14px;box-shadow:0 18px 48px #0000002e;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.modal-header{padding:24px;border-bottom:1px solid #e8e8e9;display:flex;justify-content:space-between;align-items:flex-start}.modal-header h3{margin:0;font-size:16px;font-weight:600;color:#1a1a1a}.modal-header .modal-subtitle{margin:4px 0 0;font-size:13px;color:#6b6b6b}.modal-header .modal-close{background:transparent;border:none;font-size:28px;line-height:1;color:#6b6b6b;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.modal-header .modal-close:hover{background:#fafafa;color:#1a1a1a}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-body .form-group{margin-bottom:20px}.modal-body .form-group:last-of-type{margin-bottom:24px}.modal-body .form-group label{display:block;margin-bottom:12px;font-weight:500;color:#1a1a1a;font-size:11px}.modal-body .form-group label .required{color:#cf222e}.modal-body .form-group label .optional{color:#6b6b6b;font-weight:400}.modal-body .form-group input[type=text]{width:100%;padding:16px;border:1px solid #d4d4d5;border-radius:10px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .2s ease}.modal-body .form-group input[type=text]:focus{outline:none;border-color:#2c2c2e;box-shadow:0 0 0 3px #6366f11a}.modal-body .form-group input[type=text]:disabled{background:#fafafa;cursor:not-allowed;opacity:.6}.modal-body .form-group input[type=text]::placeholder{color:#6b6b6b}.modal-body .form-group .form-hint{display:block;margin-top:8px;font-size:13px;color:#6b6b6b}.modal-body .form-error{padding:16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#cf222e;font-size:13px;margin-bottom:20px}.modal-body .modal-actions{display:flex;gap:16px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e8e8e9}.edit-site-modal{max-width:800px;max-height:90vh;display:flex;flex-direction:column}.edit-site-modal .modal-body{overflow-y:auto;padding:0}.edit-site-modal .form-section{border-bottom:1px solid #e5e7eb}.edit-site-modal .form-section:last-of-type{border-bottom:none}.edit-site-modal .form-section-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:transparent;border:none;cursor:pointer;transition:background-color .2s;text-align:left}.edit-site-modal .form-section-header:hover{background-color:#f9fafb}.edit-site-modal .form-section-header .form-section-title{font-size:1rem;font-weight:600;color:#111827;margin:0}.edit-site-modal .form-section-header .section-toggle{font-size:1.5rem;font-weight:300;color:#6b7280;line-height:1;-webkit-user-select:none;user-select:none}.edit-site-modal .form-section-content{padding:0 1.5rem 1.5rem;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.edit-site-modal .form-group{margin-bottom:1.25rem}.edit-site-modal .form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.875rem}.edit-site-modal .form-group label .required{color:#dc2626;margin-left:.25rem}.edit-site-modal .form-group label .hint-text{color:#9ca3af;font-weight:400;font-size:.813rem;margin-left:.5rem}.edit-site-modal .form-group input[type=text],.edit-site-modal .form-group input[type=url],.edit-site-modal .form-group input[type=email],.edit-site-modal .form-group input[type=tel],.edit-site-modal .form-group input[type=number],.edit-site-modal .form-group input[type=datetime-local],.edit-site-modal .form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:6px;font-size:.938rem;transition:all .2s}.edit-site-modal .form-group input[type=text]:focus,.edit-site-modal .form-group input[type=url]:focus,.edit-site-modal .form-group input[type=email]:focus,.edit-site-modal .form-group input[type=tel]:focus,.edit-site-modal .form-group input[type=number]:focus,.edit-site-modal .form-group input[type=datetime-local]:focus,.edit-site-modal .form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.edit-site-modal .form-group input[type=text]:disabled,.edit-site-modal .form-group input[type=url]:disabled,.edit-site-modal .form-group input[type=email]:disabled,.edit-site-modal .form-group input[type=tel]:disabled,.edit-site-modal .form-group input[type=number]:disabled,.edit-site-modal .form-group input[type=datetime-local]:disabled,.edit-site-modal .form-group textarea:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed}.edit-site-modal .form-group input[type=text]::placeholder,.edit-site-modal .form-group input[type=url]::placeholder,.edit-site-modal .form-group input[type=email]::placeholder,.edit-site-modal .form-group input[type=tel]::placeholder,.edit-site-modal .form-group input[type=number]::placeholder,.edit-site-modal .form-group input[type=datetime-local]::placeholder,.edit-site-modal .form-group textarea::placeholder{color:#9ca3af}.edit-site-modal .form-group textarea{resize:vertical;font-family:inherit;line-height:1.5}.edit-site-modal .form-group input[type=checkbox]{width:1.125rem;height:1.125rem;margin-right:.5rem;cursor:pointer;vertical-align:middle}.edit-site-modal .form-group .checkbox-label{font-weight:500;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:middle}.edit-site-modal .form-group .form-hint{display:block;margin-top:.375rem;font-size:.813rem;color:#6b7280;line-height:1.4}.edit-site-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:640px){.edit-site-modal .form-row{grid-template-columns:1fr}}.edit-site-modal .form-group-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.25rem}@media(max-width:640px){.edit-site-modal .form-group-row{grid-template-columns:1fr}}.edit-site-modal .form-group-row .form-group{margin-bottom:0}.edit-site-modal .form-error{padding:.875rem 1.5rem;background-color:#fef2f2;border-left:4px solid #dc2626;color:#991b1b;font-size:.875rem;margin:1rem 1.5rem;border-radius:4px}.edit-site-modal .modal-actions{padding:1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.75rem;background:#fff;position:sticky;bottom:0}.site-overview-section .section-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.site-overview-section .overview-subtitle{font-size:16px;font-weight:500;color:#4a4a4a;margin:0 0 16px;line-height:1.5}.site-overview-section .overview-description{font-size:14px;color:#4a4a4a;line-height:1.6;margin:0 0 20px;white-space:pre-wrap}.site-overview-section .tags-container{display:flex;flex-wrap:wrap;gap:12px}.site-overview-section .tag-chip{display:inline-block;padding:6px 16px;background:#fafafa;border:1px solid #e8e8e9;border-radius:9999px;font-size:13px;font-weight:500;color:#1a1a1a;transition:all .2s ease}.site-overview-section .tag-chip:hover{background:#f8f8f9;border-color:#d4d4d5}.site-ops-section .section-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.site-ops-section .ops-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media(max-width:768px){.site-ops-section .ops-grid{grid-template-columns:1fr}}.site-ops-section .ops-item{display:flex;flex-direction:column;gap:8px}.site-ops-section .ops-item.ops-item-full{grid-column:1 / -1}.site-ops-section .ops-item.ops-item-internal{background:#fbbf240d;border:1px solid rgba(251,191,36,.2);border-radius:10px;padding:20px}.site-ops-section .internal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.site-ops-section .internal-badge{display:inline-block;padding:4px 12px;background:#fbbf2426;border:1px solid rgba(251,191,36,.3);border-radius:6px;font-size:12px;font-weight:500;color:#d97706;text-transform:uppercase;letter-spacing:.05em}.site-ops-section .ops-label{font-size:13px;font-weight:500;color:#6b6b6b;text-transform:uppercase;letter-spacing:.05em}.site-ops-section .ops-value{font-size:14px;color:#1a1a1a;font-weight:500}.site-ops-section .ops-value.ops-value-multiline{line-height:1.6;white-space:pre-wrap;font-weight:400}.site-ops-section .badges-container{display:flex;flex-wrap:wrap;gap:12px}.site-ops-section .entitlement-badge{display:inline-block;padding:6px 16px;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:9999px;font-size:13px;font-weight:500;color:#2563eb}.site-location-section .section-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.site-location-section .location-content{display:flex;flex-direction:column;gap:20px}.site-location-section .location-item{display:grid;grid-template-columns:120px 1fr;gap:16px}@media(max-width:768px){.site-location-section .location-item{grid-template-columns:1fr;gap:8px}}.site-location-section .location-label{font-size:13px;font-weight:500;color:#6b6b6b;text-transform:uppercase;letter-spacing:.05em}.site-location-section .location-value{font-size:14px;color:#1a1a1a;line-height:1.6}.site-location-section .location-value div{margin-bottom:2px}.site-location-section .location-value div:last-child{margin-bottom:0}.site-location-section .map-link{display:inline-flex;align-items:center;gap:12px;padding:8px 16px;background:#fafafa;border:1px solid #e8e8e9;border-radius:10px;font-size:13px;font-weight:500;color:#1a1a1a;text-decoration:none;transition:all .2s ease;width:fit-content}.site-location-section .map-link svg{flex-shrink:0}.site-location-section .map-link:hover{background:#f8f8f9;border-color:#d4d4d5;color:#1a1a1a}.site-contact-section .section-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.site-contact-section .contact-content{display:flex;flex-direction:column;gap:20px}.site-contact-section .contact-item{display:grid;grid-template-columns:120px 1fr;gap:16px}@media(max-width:768px){.site-contact-section .contact-item{grid-template-columns:1fr;gap:8px}}.site-contact-section .contact-label{font-size:13px;font-weight:500;color:#6b6b6b;text-transform:uppercase;letter-spacing:.05em}.site-contact-section .contact-link{font-size:14px;color:#1565c0;text-decoration:none;font-weight:500;transition:all .2s ease;word-break:break-word}.site-contact-section .contact-link:hover{color:#0d47a1;text-decoration:underline}.site-contact-section .social-links{display:flex;flex-direction:column;gap:12px}.site-contact-section .social-link{display:flex;align-items:center;gap:16px;padding:8px 16px;background:#fafafa;border:1px solid #e8e8e9;border-radius:10px;font-size:13px;font-weight:500;color:#1a1a1a;text-decoration:none;transition:all .2s ease}.site-contact-section .social-link .social-icon{font-size:20px;line-height:1;flex-shrink:0}.site-contact-section .social-link .social-label{flex:1}.site-contact-section .social-link:hover{background:#f8f8f9;border-color:#d4d4d5;transform:translateY(-1px)}@media(max-width:768px){.site-contact-section .social-link{padding:6px 12px;font-size:12px}.site-contact-section .social-link .social-icon{font-size:14px}}.site-links-section .section-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.site-links-section .links-list{display:flex;flex-direction:column;gap:12px}.site-links-section .external-link{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#fafafa;border:1px solid #e8e8e9;border-radius:10px;font-size:14px;font-weight:500;color:#1a1a1a;text-decoration:none;transition:all .2s ease}.site-links-section .external-link .link-icon{font-size:20px;line-height:1;flex-shrink:0}.site-links-section .external-link .link-label{flex:1}.site-links-section .external-link .link-arrow{flex-shrink:0;opacity:.5;transition:all .2s ease}.site-links-section .external-link:hover{background:#f8f8f9;border-color:#d4d4d5;transform:translate(2px)}.site-links-section .external-link:hover .link-arrow{opacity:1;transform:translate(2px)}@media(max-width:768px){.site-links-section .external-link{padding:12px 16px;font-size:13px}.site-links-section .external-link .link-icon{font-size:18px}}.print-job-create-panel{background:var(--surface);border:1px solid var(--border-subtle);border-radius:14px;padding:20px}@media(max-width:768px){.print-job-create-panel{padding:16px}}.print-job-create-panel .form-section{margin-bottom:12px}.print-job-create-panel .form-section-title{font-size:16px;font-weight:600;color:var(--text);margin:0 0 16px}.print-job-create-panel .form-group{margin-bottom:12px}.print-job-create-panel .form-group:last-child{margin-bottom:0}.print-job-create-panel .form-label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.print-job-create-panel .form-input{width:100%;padding:12px 16px;border:1px solid var(--border-medium);border-radius:10px;font-size:14px;color:var(--text);transition:all .2s ease;background:var(--surface)}.print-job-create-panel .form-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f61a}.print-job-create-panel .form-input:disabled{background:var(--bg);color:var(--text-muted);cursor:not-allowed}.print-job-create-panel .form-input::placeholder{color:var(--text-muted)}.print-job-create-panel .form-select{cursor:pointer;padding-right:24px;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;appearance:none}.print-job-create-panel .form-select:disabled{background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%9CA3AF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.print-job-create-panel .checkbox-row{display:flex;align-items:flex-start;gap:12px}.print-job-create-panel .checkbox-input{flex-shrink:0;width:16px;height:16px;margin-top:2px;cursor:pointer;border-radius:4px;border:1.5px solid var(--border-medium);transition:all .2s ease}.print-job-create-panel .checkbox-input:hover:not(:disabled){border-color:var(--accent)}.print-job-create-panel .checkbox-input:checked{background-color:var(--accent);border-color:var(--accent)}.print-job-create-panel .checkbox-input:focus{outline:none;box-shadow:0 0 0 3px #3b82f61a}.print-job-create-panel .checkbox-input:disabled{cursor:not-allowed;opacity:.5}.print-job-create-panel .checkbox-content{flex:1;min-width:0}.print-job-create-panel .checkbox-label-text{display:block;font-size:13px;font-weight:500;color:var(--text);cursor:pointer;line-height:1.4;margin-bottom:4px}.print-job-create-panel .form-help{font-size:13px;color:var(--text-muted);margin:0;line-height:1.4}.print-job-create-panel .alert{padding:16px;border-radius:10px;font-size:13px;margin-bottom:16px;line-height:1.5;display:flex;align-items:flex-start;gap:12px}.print-job-create-panel .alert.alert-error{background:#ef444414;border:1px solid rgba(239,68,68,.2);color:var(--danger)}.print-job-create-panel .alert.alert-error:before{content:"⚠";flex-shrink:0;font-size:16px}@media(max-width:768px){.print-job-create-panel .alert.alert-error{padding:12px 16px;font-size:13px}}.print-job-create-panel .form-actions{display:flex;justify-content:stretch;padding-top:16px;border-top:1px solid var(--border-subtle);margin-top:12px}@media(max-width:768px){.print-job-create-panel .form-actions{padding-top:16px}}.print-job-create-panel .btn-primary{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 24px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px var(--shadow)}@media(max-width:768px){.print-job-create-panel .btn-primary{padding:12px 20px;font-size:13px}}.print-job-create-panel .btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.print-job-create-panel .btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 3px var(--shadow)}.print-job-create-panel .btn-primary:disabled{background:var(--border-medium);color:var(--text-muted);cursor:not-allowed;transform:none;box-shadow:none}.print-job-create-panel .spinner-small{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.print-jobs-history-table.loading,.print-jobs-history-table.error,.print-jobs-history-table.empty{padding:40px;text-align:center}.print-jobs-history-table.loading{display:flex;flex-direction:column;align-items:center;gap:12px;color:#6b7280}.print-jobs-history-table.error .error-message{color:#dc2626;margin-bottom:12px}.print-jobs-history-table.empty .empty-message{font-size:16px;font-weight:500;color:#374151;margin:0 0 8px}.print-jobs-history-table.empty .empty-subtitle{font-size:14px;color:#6b7280;margin:0}.print-jobs-history-table .table-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow-x:auto;-webkit-overflow-scrolling:touch}.print-jobs-history-table .data-table{width:100%;min-width:720px;border-collapse:collapse;font-size:14px}.print-jobs-history-table .data-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.print-jobs-history-table .data-table thead th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.print-jobs-history-table .data-table thead th:last-child{position:sticky;right:0;background:#f9fafb;z-index:10;box-shadow:-8px 0 12px #0000000a}.print-jobs-history-table .data-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background .15s}.print-jobs-history-table .data-table tbody tr:last-child{border-bottom:none}.print-jobs-history-table .data-table tbody tr:hover{background:#f9fafb}.print-jobs-history-table .data-table tbody tr:hover td:last-child{background:#f9fafb}.print-jobs-history-table .data-table tbody tr.highlight-row{background:#3b82f614;animation:highlightFade 3s ease-out}.print-jobs-history-table .data-table tbody tr.highlight-row td:last-child{background:#3b82f614}.print-jobs-history-table .data-table tbody td{padding:14px 16px;color:#111827}.print-jobs-history-table .data-table tbody td:last-child{position:sticky;right:0;background:#fff;z-index:9;box-shadow:-8px 0 12px #0000000a}.print-jobs-history-table .data-table tbody td:first-child{max-width:140px}.print-jobs-history-table .data-table tbody td:nth-child(4){white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}@keyframes highlightFade{0%{background:#3b82f626}to{background:transparent}}.print-jobs-history-table .status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.print-jobs-history-table .status-badge.status-generating{background:#dbeafe;color:#1e40af}.print-jobs-history-table .status-badge.status-ready{background:#d1fae5;color:#065f46}.print-jobs-history-table .status-badge.status-failed{background:#fee2e2;color:#991b1b}.print-jobs-history-table .status-badge.status-unknown{background:#f3f4f6;color:#4b5563}.print-jobs-history-table .pass-count{font-weight:600;color:#111827}.print-jobs-history-table .format-label{display:inline-block;font-size:13px;color:#374151;font-weight:500}.print-jobs-history-table .action-buttons{display:flex;gap:8px;align-items:center}.print-jobs-history-table .btn-download{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;color:#3b82f6;border:1px solid #3b82f6;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.print-jobs-history-table .btn-download svg{flex-shrink:0}@media(max-width:900px){.print-jobs-history-table .btn-download{padding:6px 10px;font-size:12px;gap:4px}.print-jobs-history-table .btn-download span{display:none}.print-jobs-history-table .btn-download svg{width:16px;height:16px}}.print-jobs-history-table .btn-download:hover:not(:disabled){background:#3b82f6;color:#fff}.print-jobs-history-table .btn-download:disabled{opacity:.5;cursor:not-allowed}.print-jobs-history-table .btn-secondary{padding:8px 16px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.print-jobs-history-table .btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.print-jobs-history-table .status-text{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#6b7280}.print-jobs-history-table .status-text.status-generating{color:#1e40af}.print-jobs-history-table .status-text.status-error{color:#dc2626}.print-jobs-history-table .loading-spinner{width:32px;height:32px;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.print-jobs-history-table .spinner-small{width:14px;height:14px;border:2px solid #e5e7eb;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.site-details-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.site-info-card{background:#fff;border:1px solid #e8e8e9;border-radius:14px;margin-bottom:24px;overflow:hidden;position:relative}.site-info-card.minimal-mode .site-info-header:not(.has-hero){padding:18px 24px 14px}@media(max-width:768px){.site-info-card.minimal-mode .site-info-header:not(.has-hero){padding:16px}}.site-info-card.minimal-mode .site-quick-stats{padding:0 24px 14px;margin-top:6px}@media(max-width:768px){.site-info-card.minimal-mode .site-quick-stats{padding:0 16px 16px;margin-top:4px}}.site-hero-banner{position:relative;width:100%;height:240px;overflow:hidden}@media(max-width:768px){.site-hero-banner{height:200px}}.site-hero-banner .hero-image{width:100%;height:100%}.site-hero-banner .hero-overlay{position:absolute;inset:0;background:#0000001a;pointer-events:none}.site-hero-banner .hero-overlay:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0000008c,#00000040 45%,#0000 75%);pointer-events:none}.site-profile-sections{padding:24px 32px 32px}@media(max-width:768px){.site-profile-sections{padding:16px 20px 20px}}.sections-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.sections-grid.single-column{grid-template-columns:1fr;max-width:720px}@media(max-width:1024px){.sections-grid{grid-template-columns:1fr;gap:24px}}.sections-column{display:flex;flex-direction:column;gap:32px;min-width:0;align-self:start}@media(max-width:1024px){.sections-column{gap:24px}}.sections-column>div:empty{display:none}.site-info-header{display:flex;align-items:flex-start;gap:20px;padding:20px 32px;position:relative}.site-info-header.has-hero{position:absolute;top:0;left:0;right:0;padding:32px 32px 48px;z-index:2;height:240px;align-items:flex-end}@media(max-width:768px){.site-info-header.has-hero{height:200px;padding:20px 20px 24px}}.site-info-header:not(.has-hero){padding-bottom:16px}@media(max-width:768px){.site-info-header{gap:16px;padding:16px 20px}.site-info-header:not(.has-hero){padding-bottom:12px}}.site-actions{position:absolute;top:20px;right:32px;display:flex;align-items:center;gap:8px;z-index:3}@media(max-width:768px){.site-actions{top:16px;right:20px;gap:6px}}@media(max-width:480px){.site-actions{top:12px;right:16px}}.site-edit-btn{display:inline-flex;align-items:center;gap:12px;padding:8px 20px;background:#fff;border:1px solid #d4d4d5;border-radius:10px;font-size:14px;font-weight:500;color:#1a1a1a;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 1px 3px #0000001a}.site-edit-btn .edit-icon{flex-shrink:0;transition:transform .2s ease}@media(max-width:640px){.site-edit-btn .edit-label{display:none}}.site-edit-btn:hover:not(:disabled){background:#fafafa;border-color:#d4d4d5;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.site-edit-btn:hover:not(:disabled) .edit-icon{transform:translateY(-1px)}.site-edit-btn:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 3px #0000001a}.site-edit-btn:disabled{opacity:.5;cursor:not-allowed}.has-hero .site-actions .site-edit-btn{background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-color:#ffffff4d;box-shadow:0 4px 12px #00000026}.has-hero .site-actions .site-edit-btn:hover:not(:disabled){background:#fff;border-color:#ffffff80;box-shadow:0 6px 16px #0003}@media(max-width:768px){.site-edit-btn{padding:6px 16px;font-size:13px}}@media(max-width:480px){.site-edit-btn{padding:6px 12px}.site-edit-btn .edit-icon{width:18px;height:18px}}.site-actions-menu-wrapper{position:relative}.site-actions-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:#fff;border:1px solid #d4d4d5;border-radius:10px;color:#1a1a1a;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.site-actions-menu-btn svg{flex-shrink:0}.site-actions-menu-btn:hover:not(:disabled){background:#fafafa;border-color:#d4d4d5;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.site-actions-menu-btn:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 3px #0000001a}.site-actions-menu-btn:disabled{opacity:.5;cursor:not-allowed}.has-hero .site-actions .site-actions-menu-btn{background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-color:#ffffff4d;box-shadow:0 4px 12px #00000026}.has-hero .site-actions .site-actions-menu-btn:hover:not(:disabled){background:#fff;border-color:#ffffff80;box-shadow:0 6px 16px #0003}.menu-backdrop{position:fixed;inset:0;z-index:998;background:transparent}.site-actions-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;background:#fff;border:1px solid #d4d4d5;border-radius:10px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;padding:4px;z-index:999;animation:dropdownSlide .15s ease-out}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;gap:16px;width:100%;padding:12px 16px;background:transparent;border:none;border-radius:6px;font-size:14px;font-weight:500;color:#1a1a1a;cursor:pointer;transition:all .15s ease;text-align:left}.dropdown-item svg{flex-shrink:0;opacity:.7}.dropdown-item span{flex:1}.dropdown-item:hover{background:#fafafa}.dropdown-item:active{transform:scale(.98)}.dropdown-item.dropdown-item-danger svg{opacity:1}.dropdown-item.dropdown-item-danger:hover{background:#ef444414;color:#b91e29}.site-avatar-wrapper{flex-shrink:0;z-index:2}.site-avatar{width:72px;height:72px;border-radius:14px;border:3px solid #ffffff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;background:#fff}.site-avatar.site-avatar-fallback{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2c2c2e,#3a3a3c);color:#fff;font-weight:700;font-size:28px}@media(max-width:768px){.site-avatar{width:60px;height:60px;font-size:22px;border-width:3px}}.site-info-content{flex:1;min-width:0}.site-title-row{display:flex;align-items:center;gap:12px;margin-bottom:4px;flex-wrap:wrap}.site-name{font-size:20px;font-weight:700;color:#1a1a1a;margin:0;line-height:1.2}.has-hero .site-name{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.35)}@media(max-width:768px){.site-name{font-size:18px}}.site-subtitle{font-size:14px;color:#4a4a4a;margin:2px 0 6px;line-height:1.4}.has-hero .site-subtitle{color:#ffffffd9;text-shadow:0 1px 6px rgba(0,0,0,.25)}.site-description{font-size:14px;color:#4a4a4a;margin:0;line-height:1.7;max-width:680px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.has-hero .site-description{color:#ffffffbf;text-shadow:0 1px 6px rgba(0,0,0,.25)}.site-quick-stats{display:flex;flex-wrap:wrap;gap:12px;padding:0 32px 16px;margin-top:8px}.site-info-card:has(.site-hero-banner) .site-quick-stats{padding-top:32px}@media(max-width:768px){.site-info-card:has(.site-hero-banner) .site-quick-stats{padding-top:20px}}.site-quick-stats:empty{display:none}@media(max-width:768px){.site-quick-stats{padding:0 20px 16px;margin-top:6px}}.stat-pill{display:inline-flex;align-items:center;padding:5px 12px;background:#f7f7f8;border:1px solid #e8e8e9;border-radius:9999px;font-size:13px;font-weight:500;color:#4a4a4a;white-space:nowrap;line-height:1.3}@media(max-width:768px){.stat-pill{font-size:12px;padding:4px 10px}}.status-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:9999px;font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;flex-shrink:0}.status-badge.active{background:#10b9811f;color:#059669}.status-badge.inactive{background:#fafafa;color:#6b6b6b}.status-badge.expired{background:#ef44441f;color:#dc2626}.status-badge.archived{background:#9ca3af1f;color:#4b5563}.has-hero .status-badge.active{background:#ffffffd9;color:#059669;border:1px solid rgba(16,185,129,.2)}.has-hero .status-badge.inactive{background:#ffffffd9;color:#64748b;border:1px solid rgba(100,116,139,.2)}.has-hero .status-badge.expired{background:#ff4d4fe6;color:#fff;border:1px solid rgba(255,77,79,.3)}.has-hero .status-badge.archived{background:#ffffffd9;color:#4b5563;border:1px solid rgba(156,163,175,.2)}.site-management-grid{display:grid;gap:24px;grid-template-columns:1fr}@media(min-width:1200px){.site-management-grid{grid-template-columns:1fr 1fr}}.management-section{background:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:32px}@media(max-width:768px){.management-section{padding:20px}}.management-section .batches-quick-info{padding:16px;background:#f9fafb;border-radius:6px;color:#4a4a4a;font-size:14px;line-height:1.6}.management-section .batches-quick-info p{margin:0}.section-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:20px}@media(max-width:768px){.section-header{flex-direction:column;align-items:stretch}}.section-header .section-title{margin:0 0 8px;font-size:18px;font-weight:600;color:#1a1a1a}@media(max-width:768px){.section-header .section-title{font-size:16px}}.section-header .section-subtitle{margin:0;font-size:13px;color:#6b6b6b}.data-table{width:100%;border-collapse:collapse;min-width:600px}.view-btn{padding:6px 16px;background:transparent;border:1px solid #d4d4d5;border-radius:6px;font-size:13px;font-weight:500;color:#4a4a4a;cursor:pointer;transition:all .2s ease;min-height:32px;white-space:nowrap}.view-btn:hover{background:#fafafa;border-color:#d4d4d5;color:#1a1a1a}@media(max-width:768px){.view-btn{padding:4px 12px;font-size:12px;min-height:28px}}.site-profile-empty-hint{padding:32px;text-align:center;border-top:1px solid #e8e8e9;background:#f8f8f9}@media(max-width:768px){.site-profile-empty-hint{padding:24px 20px}}.site-profile-empty-hint .empty-hint-text{color:#6b6b6b;font-size:13px;line-height:1.7;max-width:480px;margin:0 auto}.site-metadata-section{margin-top:24px;padding-top:20px;border-top:1px solid #e8e8e9}.site-metadata-section .metadata-title{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:16px;text-transform:uppercase;letter-spacing:.05em}.site-metadata-section .metadata-content{font-size:12px;font-family:Monaco,Courier New,monospace;background:#f8f8f9;padding:20px;border-radius:10px;border:1px solid #e8e8e9;color:#1a1a1a;overflow-x:auto;max-height:300px;overflow-y:auto;margin:0;white-space:pre-wrap;word-wrap:break-word;line-height:1.5}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:#fff;border-radius:14px;box-shadow:0 18px 48px #0000002e;max-width:480px;width:100%;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-content.confirm-modal{padding:32px}.modal-content.confirm-modal h3{margin:0 0 16px;font-size:18px;font-weight:600;color:#1a1a1a}.modal-content.confirm-modal p{margin:0 0 24px;font-size:14px;line-height:1.7;color:#4a4a4a}.modal-content.confirm-modal .modal-actions{display:flex;gap:16px;justify-content:flex-end}@media(max-width:480px){.modal-content.confirm-modal .modal-actions{flex-direction:column-reverse}.modal-content.confirm-modal .modal-actions button{width:100%}}@media(min-width:1200px){.printing-section{grid-column:1 / -1}}.printing-content{display:grid;gap:24px;grid-template-columns:1fr;align-items:start}@media(min-width:1024px){.printing-content{grid-template-columns:420px 1fr;gap:32px}}@media(min-width:1280px){.printing-content{grid-template-columns:460px 1fr}}@media(max-width:1023px){.printing-content{grid-template-columns:1fr;gap:20px}}.printing-left-column{width:100%}.printing-right-column{display:flex;flex-direction:column;width:100%;min-width:0}.printing-history{width:100%;background:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:20px}@media(max-width:768px){.printing-history{padding:16px}}.printing-history .history-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.printing-unavailable{padding:48px 24px;text-align:center;background:#f8f8f9;border-radius:10px}@media(max-width:768px){.printing-unavailable{padding:32px 16px}}.printing-unavailable .unavailable-message{margin:0 0 12px;font-size:14px;font-weight:500;color:#1a1a1a}.printing-unavailable .unavailable-subtitle{margin:0;font-size:13px;color:#6b6b6b;line-height:1.7}.add-cards-modal{max-width:600px;max-height:90vh;overflow-y:auto}.modal-dialog{background:#fff;border-radius:14px;padding:0;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{padding:20px;border-bottom:1px solid #e8e8e9;display:flex;align-items:center;justify-content:space-between}.modal-header h3{margin:0;font-size:16px;color:#1a1a1a}.modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:#6b6b6b;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s}.modal-header .modal-close:hover:not(:disabled){background:#fafafa;color:#1a1a1a}.modal-header .modal-close:disabled{cursor:not-allowed;opacity:.5}.modal-body{padding:20px}.mode-tabs{display:flex;gap:8px;margin-bottom:20px;padding:4px;background:#f8f8f9;border-radius:10px}.mode-tab{flex:1;padding:12px 16px;background:transparent;border:none;border-radius:8px;font-size:14px;font-weight:500;color:#4a4a4a;cursor:pointer;transition:all .15s}.mode-tab:hover:not(:disabled){color:#1a1a1a;background:#fafafa}.mode-tab.active{background:#fff;color:#1a1a1a;box-shadow:0 1px 3px #0000001a}.mode-tab:disabled{cursor:not-allowed;opacity:.5}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#1a1a1a;font-size:14px}.form-group label .optional{color:#6b6b6b;font-weight:400;font-size:13px}.form-group input,.form-group textarea{width:100%;padding:12px 16px;border:1px solid #e8e8e9;border-radius:10px;font-size:14px;color:#1a1a1a;background:#fff;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2c2c2e;box-shadow:0 0 0 3px #6366f11a}.form-group input:disabled,.form-group textarea:disabled{background:#f8f8f9;cursor:not-allowed;opacity:.6}.form-group input::placeholder,.form-group textarea::placeholder{color:#6b6b6b}.form-group textarea{resize:vertical;min-height:100px}.form-group .form-hint{display:block;margin-top:8px;font-size:13px;color:#6b6b6b}.form-error{padding:12px 16px;background:#ffebe9;color:#cf222e;border-radius:10px;font-size:13px;margin-top:16px;border:1px solid rgba(207,34,46,.2)}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid #e8e8e9}.modal-actions button{padding:12px 20px;font-size:14px;font-weight:500}.cards-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.data-table tbody tr.disabled{opacity:.6}.card-id{font-family:Monaco,Menlo,Courier New,monospace;font-weight:500}.card-id code{background:#f8f8f9;padding:2px 6px;border-radius:4px;font-size:13px}.card-batch,.card-linked{color:#4a4a4a}.card-date{color:#4a4a4a;white-space:nowrap}.status-pill.status-revoked{background:#fee;color:#cf222e}.status-pill.status-lost{background:#fff3cd;color:#856404}.card-actions{text-align:right;white-space:nowrap;overflow:visible!important;position:relative}.card-actions .no-actions{color:#6b6b6b}.btn-actions-icon:disabled{cursor:not-allowed;opacity:.5}.create-batch-modal{max-width:720px}.create-batch-modal .modal-header{display:grid;grid-template-columns:1fr auto auto;align-items:start;gap:16px;padding:24px;border-bottom:1px solid #e8e8e9}.create-batch-modal .modal-header-main h2{margin:0 0 4px;font-size:18px;font-weight:600;color:#1a1a1a;line-height:1.25}.create-batch-modal .modal-subtitle{margin:0;font-size:13px;color:#4a4a4a;line-height:1.5}.create-batch-modal .modal-download-template{font-size:13px;color:#1565c0;white-space:nowrap;padding:4px 0}.create-batch-modal .modal-download-template:hover{color:#0d47a1}.create-batch-modal .modal-close{background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:#4a4a4a;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s ease}.create-batch-modal .modal-close:hover:not(:disabled){background:#fafafa;color:#1a1a1a}.create-batch-modal .modal-close:disabled{opacity:.4;cursor:not-allowed}.create-batch-modal .modal-body{padding:24px;overflow-y:auto;flex:1;max-height:calc(90vh - 200px)}.create-batch-modal form{display:flex;flex-direction:column;gap:32px}.create-batch-modal .batch-section{display:flex;flex-direction:column;gap:16px}.create-batch-modal .section-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#4a4a4a;margin:0}.create-batch-modal .batch-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}@media(max-width:640px){.create-batch-modal .batch-info-grid{grid-template-columns:1fr}}.create-batch-modal .form-group{display:flex;flex-direction:column;gap:6px}.create-batch-modal .form-group label{font-size:13px;font-weight:500;color:#1a1a1a}.create-batch-modal .form-input,.create-batch-modal .form-select{width:100%;padding:12px 16px;border:1px solid #e8e8e9;border-radius:10px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;color:#1a1a1a;background:#fff;transition:all .15s ease}.create-batch-modal .form-input::placeholder,.create-batch-modal .form-select::placeholder{color:#6b6b6b}.create-batch-modal .form-input:focus,.create-batch-modal .form-select:focus{outline:none;border-color:#2c2c2e;box-shadow:0 0 0 3px #2c2c2e14}.create-batch-modal .form-input:disabled,.create-batch-modal .form-select:disabled{background:#f7f7f8;color:#6b6b6b;cursor:not-allowed;opacity:.6}.create-batch-modal .form-help{font-size:13px;color:#4a4a4a;line-height:1.5;margin:0}.create-batch-modal .checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:500;color:#1a1a1a}.create-batch-modal .checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2c2c2e}.create-batch-modal .checkbox-label:hover{color:#2c2c2e}.create-batch-modal .csv-section{padding-top:16px;border-top:1px solid #e8e8e9}.create-batch-modal .csv-controls{display:flex;align-items:center;gap:12px;margin-bottom:16px}.create-batch-modal .csv-row-count{margin-left:auto;font-size:13px;color:#4a4a4a;font-weight:500}.create-batch-modal .csv-textarea{width:100%;min-height:220px;padding:16px;border:1px solid #e8e8e9;border-radius:10px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:13px;line-height:1.6;color:#1a1a1a;background:#f7f7f8;resize:vertical;transition:all .15s ease}.create-batch-modal .csv-textarea::placeholder{color:#6b6b6b;font-family:SF Mono,Monaco,Courier New,monospace}.create-batch-modal .csv-textarea:focus{outline:none;border-color:#2c2c2e;box-shadow:0 0 0 3px #2c2c2e14;background:#fff}.create-batch-modal .csv-textarea:disabled{background:#f7f7f8;color:#6b6b6b;cursor:not-allowed;opacity:.7}.create-batch-modal .csv-hint{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.create-batch-modal .hint-label{font-size:12px;color:#4a4a4a;font-weight:500}.create-batch-modal .hint-chips{display:flex;flex-wrap:wrap;gap:6px}.create-batch-modal .chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:9999px;font-size:12px;font-weight:500;background:#f7f7f8;color:#4a4a4a;border:1px solid #e8e8e9}.create-batch-modal .chip.chip-required{background:#2c2c2e1a;color:#2c2c2e;border-color:#2c2c2e33}.create-batch-modal .alert{padding:16px;border-radius:10px;font-size:13px;line-height:1.5}.create-batch-modal .alert.alert-error{background:#ffebe9;color:#cf222e;border:1px solid rgba(207,34,46,.2)}.create-batch-modal .result-summary{display:flex;flex-direction:column;gap:24px}.create-batch-modal .result-header{display:flex;align-items:start;gap:16px}.create-batch-modal .result-header h3{margin:0 0 4px;font-size:16px;font-weight:600;color:#1a1a1a;line-height:1.25}.create-batch-modal .result-subtitle{margin:0;font-size:13px;color:#4a4a4a;line-height:1.5}.create-batch-modal .result-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;background:#e8f5e9;color:#16a34a}.result-summary:has(.stat-warning) .create-batch-modal .result-icon{background:#fef3c7;color:#f59e0b}.create-batch-modal .result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.create-batch-modal .stat-item{padding:20px;border-radius:10px;border:1px solid #e8e8e9;background:#fff;display:flex;flex-direction:column;gap:6px}.create-batch-modal .stat-item.stat-success{background:#e8f5e9;border-color:#16a34a33}.create-batch-modal .stat-item.stat-success .stat-value{color:#16a34a}.create-batch-modal .stat-item.stat-info{background:#2c2c2e0d;border-color:#2c2c2e33}.create-batch-modal .stat-item.stat-info .stat-value{color:#2c2c2e}.create-batch-modal .stat-item.stat-neutral{background:#f7f7f8;border-color:#e8e8e9}.create-batch-modal .stat-item.stat-neutral .stat-value{color:#4a4a4a}.create-batch-modal .stat-item.stat-warning{background:#fef3c7;border-color:#f59e0b33}.create-batch-modal .stat-item.stat-warning .stat-value{color:#f59e0b}.create-batch-modal .stat-value{font-size:24px;font-weight:700;line-height:1;color:#1a1a1a}.create-batch-modal .stat-label{font-size:13px;color:#4a4a4a;font-weight:500}.create-batch-modal .errors-section{border-top:1px solid #e8e8e9;padding-top:20px}.create-batch-modal .errors-toggle{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f7f7f8;border:1px solid #e8e8e9;border-radius:10px;font-size:13px;font-weight:500;color:#1a1a1a;cursor:pointer;transition:all .15s ease}.create-batch-modal .errors-toggle:hover{background:#fafafa;border-color:#d4d4d5}.create-batch-modal .errors-toggle span:first-child{width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1}.create-batch-modal .errors-content{margin-top:16px;display:flex;flex-direction:column;gap:16px}.create-batch-modal .errors-list{max-height:300px;overflow-y:auto;padding:16px;background:#f7f7f8;border-radius:10px;border:1px solid #e8e8e9}.create-batch-modal .error-item{padding:12px 0;border-bottom:1px solid #e8e8e9;display:flex;flex-direction:column;gap:4px}.create-batch-modal .error-item:last-child{border-bottom:none}.create-batch-modal .error-item.error-more{color:#4a4a4a;font-size:13px;font-style:italic;padding-top:16px;text-align:center}.create-batch-modal .error-row{font-size:12px;font-weight:600;color:#cf222e;text-transform:uppercase;letter-spacing:.05em}.create-batch-modal .error-message{font-size:13px;color:#1a1a1a;line-height:1.5}.create-batch-modal .modal-footer{padding:20px 24px;border-top:1px solid #e8e8e9;display:flex;gap:16px;justify-content:flex-end;background:#fff}.create-batch-modal .btn-primary,.create-batch-modal .btn-secondary{padding:12px 20px;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid transparent;white-space:nowrap}.create-batch-modal .btn-primary:disabled,.create-batch-modal .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.create-batch-modal .btn-primary{background:#2c2c2e;color:#fff}.create-batch-modal .btn-primary:hover:not(:disabled){background:#3a3a3c}.create-batch-modal .btn-primary:active:not(:disabled){background:#1a1a1c}.create-batch-modal .btn-secondary{background:#fff;color:#1a1a1a;border-color:#e8e8e9}.create-batch-modal .btn-secondary:hover:not(:disabled){background:#fafafa;border-color:#d4d4d5}.create-batch-modal .btn-link{background:none;border:none;color:#1565c0;padding:4px 0;font-size:13px;font-weight:500;cursor:pointer;transition:color .15s ease}.create-batch-modal .btn-link:hover:not(:disabled){color:#0d47a1}.create-batch-modal .btn-link:disabled{opacity:.5;cursor:not-allowed}.create-batch-modal .btn-sm{padding:6px 16px;font-size:13px}.create-batch-modal .file-upload-area{margin:16px 0}.create-batch-modal .btn-upload{width:100%;padding:16px}.create-batch-modal .file-selected{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#f7f7f8;border:1px solid #e8e8e9;border-radius:10px}.create-batch-modal .file-info{display:flex;align-items:center;gap:16px;flex:1}.create-batch-modal .file-icon{color:#2c2c2e;flex-shrink:0}.create-batch-modal .file-details{display:flex;flex-direction:column;gap:2px}.create-batch-modal .file-name{font-weight:500;font-size:13px;color:#1a1a1a}.create-batch-modal .file-size{font-size:12px;color:#4a4a4a}.modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .15s ease-out}.modal-content{background:#fff;border-radius:14px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 18px 48px #0000002e;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.delete-batch-modal{max-width:540px}.delete-batch-modal .batch-info{margin-bottom:24px;padding:16px;background:#f8f9fa;border-radius:8px}.delete-batch-modal .batch-info h3{margin:0 0 12px;font-size:18px;color:#212529}.delete-batch-modal .batch-info .batch-stats{display:flex;gap:16px}.delete-batch-modal .batch-info .batch-stats .stat{font-size:14px;color:#6c757d}.delete-batch-modal .batch-info .batch-stats .stat strong{color:#212529;font-weight:600}.delete-batch-modal .warning-section{margin-bottom:24px;padding:16px;background:#fff3cd;border:1px solid #ffc107;border-radius:8px}.delete-batch-modal .warning-section p{margin:0 0 12px;font-size:14px;line-height:1.5;color:#856404}.delete-batch-modal .warning-section p:last-child{margin-bottom:0}.delete-batch-modal .warning-section p strong{font-weight:600}.delete-batch-modal .danger-option{margin-bottom:16px;padding:16px;background:#fff;border:2px solid #dee2e6;border-radius:8px}.delete-batch-modal .danger-option .checkbox-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;margin:0}.delete-batch-modal .danger-option .checkbox-label input[type=checkbox]{margin-top:2px;cursor:pointer;width:18px;height:18px;flex-shrink:0}.delete-batch-modal .danger-option .checkbox-label .checkbox-text{flex:1;font-size:14px;line-height:1.5;color:#212529}.delete-batch-modal .danger-option:has(input:checked){border-color:#dc3545;background:#fff5f5}.delete-batch-modal .btn-danger{background-color:#dc3545;border-color:#dc3545;color:#fff}.delete-batch-modal .btn-danger:hover:not(:disabled){background-color:#c82333;border-color:#bd2130}.delete-batch-modal .btn-danger:disabled{opacity:.6;cursor:not-allowed}.batches-list-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.pass-batches-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:48px;gap:20px}@media(max-width:768px){.pass-batches-header{flex-direction:column;align-items:stretch}}.pass-batches-header h1{margin:0 0 4px;font-size:22px;color:#1a1a1a}.pass-batches-header p{margin:0;color:#4a4a4a;font-size:14px}.pass-batches-header .btn-primary{white-space:nowrap;flex-shrink:0}@media(max-width:768px){.pass-batches-header .btn-primary{width:100%;justify-content:center}}.header-actions{display:flex;gap:12px;align-items:center}.alert{padding:16px;border-radius:6px;margin-bottom:20px}.alert.alert-danger{background:#ffebe9;color:#cf222e;border:1px solid #ffebe9}.loading-state,.empty-state{text-align:center;padding:64px 24px}@media(max-width:768px){.loading-state,.empty-state{padding:48px 16px}}.loading-state p,.empty-state p{color:#4a4a4a;font-size:14px;margin:0 0 16px}.loading-state p:first-child,.empty-state p:first-child{color:#1a1a1a}.loading-state .empty-subtitle,.empty-state .empty-subtitle{color:#6b6b6b;font-size:13px}.loading-state .empty-state-actions,.empty-state .empty-state-actions{display:flex;gap:12px;justify-content:center;align-items:center;margin-top:20px}@media(max-width:768px){.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:10px}}.data-table{width:100%;border-collapse:collapse;min-width:800px}.data-table thead{background:#f8f8f9}.data-table thead tr{border-bottom:1px solid #e8e8e9}.data-table tbody tr{border-bottom:1px solid #e8e8e9;transition:background .2s ease}.data-table tbody td{padding:20px 24px;color:#1a1a1a;font-size:14px}.data-table tbody td.text-center{text-align:center}.data-table tbody td .unnamed{color:#4a4a4a;font-style:italic}.badge{display:inline-block;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:500;letter-spacing:.05em;text-transform:capitalize}.badge.badge-success{background:#e8f5e9;color:#16a34a}.badge.badge-info{background:#e3f2fd;color:#1565c0}.badge.badge-danger{background:#ffebe9;color:#cf222e}.badge.badge-warning{background:#fef3c7;color:#f59e0b}.btn-group{display:flex;gap:12px;justify-content:flex-end;align-items:center}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:20px;border-top:1px solid #e8e8e9}.pagination .pagination-info{color:#4a4a4a;font-size:13px}.send-invites-modal{max-width:500px}.send-invites-modal .modal-body{padding:24px}.send-invites-modal .confirm-message{text-align:center}.send-invites-modal .confirm-message .confirm-icon{font-size:48px;margin-bottom:16px}.send-invites-modal .confirm-message .confirm-text{font-size:16px;line-height:1.5;margin-bottom:8px;color:#333}.send-invites-modal .confirm-message .confirm-text strong{color:#1890ff;font-weight:600}.send-invites-modal .confirm-message .confirm-subtext{font-size:14px;color:#666;margin-bottom:0}.send-invites-modal .result-message{text-align:center}.send-invites-modal .result-message .result-icon{font-size:48px;margin-bottom:16px}.send-invites-modal .result-message h4{margin:0 0 20px;font-size:18px;font-weight:600;color:#333}.send-invites-modal .result-message .result-stats{display:flex;gap:24px;justify-content:center;margin-bottom:16px}.send-invites-modal .result-message .result-stats .stat-item{display:flex;flex-direction:column;align-items:center;gap:8px}.send-invites-modal .result-message .result-stats .stat-item .stat-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px}.send-invites-modal .result-message .result-stats .stat-item .stat-value{font-size:24px;font-weight:600;color:#333}.send-invites-modal .result-message .result-stats .stat-item.success .stat-value{color:#10b981}.send-invites-modal .result-message .result-stats .stat-item.error .stat-value{color:#ef4444}.send-invites-modal .result-message .result-note{font-size:14px;color:#666;margin:0}.send-invites-modal .alert{margin-top:16px;margin-bottom:0}.send-invites-modal .modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #e8e8e8}.batch-detail-header{margin-bottom:24px}.batch-detail-content{padding:0 32px 32px}.batch-detail-content .alert{padding:16px;border-radius:6px;margin-bottom:16px}.batch-detail-content .alert.alert-danger{background:#fee;color:#c33;border:1px solid #fcc}.batch-detail-content .alert.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.batch-detail-content .batch-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}.batch-detail-content .batch-summary .stat-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:20px;text-align:center;box-shadow:0 2px 4px #0000000a}.batch-detail-content .batch-summary .stat-card .stat-label{display:block;font-size:13px;color:#4a4a4a;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.batch-detail-content .batch-summary .stat-card .stat-value{font-size:24px;font-weight:700;color:#1a1a1a}.batch-detail-content .batch-summary .stat-card .stat-value.primary{color:#2c2c2e}.batch-detail-content .batch-summary .stat-card .stat-value.success{color:#28a745}.batch-detail-content .batch-summary .stat-card .stat-value.danger{color:#dc3545}.batch-detail-content .content-card{background:#fff;border:1px solid #e8e8e9;border-radius:10px;padding:20px;margin-bottom:20px}.batch-detail-content .content-card h3{margin:0 0 16px;font-size:16px;color:#1a1a1a}.batch-detail-content .batch-metadata{padding:20px;border:1px solid #eee;border-radius:12px;margin-bottom:24px;background:#fff}.batch-detail-content .batch-metadata .metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.batch-detail-content .batch-metadata .metadata-grid .metadata-item{display:flex;flex-direction:column;gap:8px}.batch-detail-content .batch-metadata .metadata-grid .metadata-item .label{font-size:12px;color:#888;font-weight:600;text-transform:uppercase;margin-bottom:6px}.batch-detail-content .batch-metadata .metadata-grid .metadata-item .value{color:#1a1a1a}.batch-detail-content .batch-actions{display:flex;flex-direction:column;padding:20px;border:1px solid #eee;border-radius:12px;margin-bottom:32px;background:#fff}.batch-detail-content .batch-actions h3{margin:0 0 16px;font-size:16px;color:#1a1a1a}.batch-detail-content .batch-actions .actions-row{display:flex;gap:12px;flex-wrap:wrap}.batch-detail-content .batch-actions .actions-dropdown{position:relative}.batch-detail-content .batch-actions .actions-dropdown:hover .dropdown-menu{display:block}.batch-detail-content .batch-actions .actions-dropdown .dropdown-toggle{position:relative}.batch-detail-content .batch-actions .actions-dropdown .dropdown-toggle:after{content:" ▼";font-size:12px}.batch-detail-content .batch-actions .actions-dropdown .dropdown-menu{display:none;position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #e8e8e9;border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:10}.batch-detail-content .batch-actions .actions-dropdown .dropdown-menu button{display:block;width:100%;padding:12px 16px;border:none;background:none;text-align:left;cursor:pointer;color:#1a1a1a}.batch-detail-content .batch-actions .actions-dropdown .dropdown-menu button:hover{background:#fafafa}.batch-detail-content .errors-section{padding:20px;border:1px solid #eee;border-radius:12px;margin-bottom:24px;background:#fff}.batch-detail-content .errors-section .errors-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.batch-detail-content .errors-section .errors-header h3{margin:0}.batch-detail-content .errors-section .errors-list{max-height:400px;overflow-y:auto;margin-bottom:16px}.batch-detail-content .errors-section .errors-list .error-item{padding:16px;border:1px solid #e8e8e9;border-radius:6px;margin-bottom:12px;background:#f7f7f8}.batch-detail-content .errors-section .errors-list .error-item .error-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.batch-detail-content .errors-section .errors-list .error-item .error-header .error-message{color:#1a1a1a}.batch-detail-content .errors-section .errors-list .error-item .error-data{margin:12px 0 0;padding:12px;background:#fff;border-radius:6px;font-size:12px;overflow-x:auto}.batch-detail-content .errors-section .errors-list .error-more{text-align:center;color:#4a4a4a;font-style:italic;padding:16px}.batch-detail-content .passes-section{padding:24px;border-radius:12px;border:1px solid #eee;background:#fff;margin-bottom:24px}.batch-detail-content .passes-section h3{margin:0 0 16px;font-size:16px;color:#1a1a1a}.batch-detail-content .passes-section .loading-spinner,.batch-detail-content .passes-section .empty-state{text-align:center;padding:24px;color:#4a4a4a}.batch-detail-content .passes-section .table-wrapper{padding-top:8px;overflow-x:auto}.batch-detail-content .passes-section .data-table{width:100%;border-collapse:collapse}.batch-detail-content .passes-section .data-table.compact{font-size:13px}.batch-detail-content .passes-section .data-table thead{background:#f7f7f8;border-bottom:2px solid #e8e8e9}.batch-detail-content .passes-section .data-table thead th{padding:14px 16px;text-align:left;font-weight:600;color:#1a1a1a;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.batch-detail-content .passes-section .data-table tbody tr{border-bottom:1px solid #e8e8e9}.batch-detail-content .passes-section .data-table tbody tr:hover{background:#fafafa}.batch-detail-content .passes-section .data-table tbody td{padding:14px 16px;color:#1a1a1a}.batch-detail-content .passes-section .data-table tbody td .pass-code{font-family:monospace;font-size:12px;background:#f7f7f8;padding:2px 6px;border-radius:6px}.batch-detail-content .badge{display:inline-block;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600}.batch-detail-content .badge.badge-success{background:#d4edda;color:#155724}.batch-detail-content .badge.badge-info{background:#d1ecf1;color:#0c5460}.batch-detail-content .badge.badge-danger{background:#f8d7da;color:#721c24}.batch-detail-content .badge.badge-warning{background:#fff3cd;color:#856404}.batch-detail-content .badge.badge-secondary{background:#e2e3e5;color:#383d41}.batch-detail-content .pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid #e8e8e9}.batch-detail-content .pagination .pagination-info{color:#4a4a4a;font-size:13px}.batch-detail-content .confirm-modal{max-width:500px}.batch-detail-content .confirm-modal .text-muted{color:#4a4a4a;font-size:13px}.batch-detail-page{padding:24px 32px}.batch-detail-page.loading{text-align:center;padding:32px;color:#4a4a4a}.add-staff-modal{width:100%;max-width:500px}.add-staff-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border-color, #e5e7eb)}.add-staff-modal .modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #111827)}.add-staff-modal .modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.add-staff-modal .modal-header .modal-close:hover:not(:disabled){background-color:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.add-staff-modal .modal-header .modal-close:disabled{opacity:.5;cursor:not-allowed}.add-staff-modal .modal-body{padding:24px}.add-staff-modal .modal-body .form-group{margin-bottom:20px}.add-staff-modal .modal-body .form-group:last-of-type{margin-bottom:24px}.add-staff-modal .modal-body .form-group label{display:block;font-size:14px;font-weight:500;color:var(--text-primary, #111827);margin-bottom:6px}.add-staff-modal .modal-body .form-group label .required{color:var(--error-color, #ef4444);margin-left:2px}.add-staff-modal .modal-body .form-group label .optional{color:var(--text-secondary, #6b7280);font-weight:400;margin-left:4px}.add-staff-modal .modal-body .form-group input{width:100%;padding:10px 12px;border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-size:14px;color:var(--text-primary, #111827);background-color:var(--bg-white, #ffffff);transition:border-color .2s,box-shadow .2s}.add-staff-modal .modal-body .form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--shadow)}.add-staff-modal .modal-body .form-group input:disabled{background-color:var(--bg-disabled, #f9fafb);cursor:not-allowed;opacity:.6}.add-staff-modal .modal-body .form-group input::placeholder{color:var(--text-tertiary, #9ca3af)}.add-staff-modal .modal-body .form-error{margin-bottom:20px;padding:12px;background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:6px;color:var(--danger);font-size:14px}.add-staff-modal .modal-body .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.add-staff-to-org-modal{width:100%;max-width:500px}.add-staff-to-org-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border-color, #e5e7eb)}.add-staff-to-org-modal .modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #111827)}.add-staff-to-org-modal .modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.add-staff-to-org-modal .modal-header .modal-close:hover:not(:disabled){background-color:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.add-staff-to-org-modal .modal-header .modal-close:disabled{opacity:.5;cursor:not-allowed}.add-staff-to-org-modal .modal-body{padding:24px}.add-staff-to-org-modal .modal-body .staff-info{margin-bottom:24px;padding:16px;background-color:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:8px}.add-staff-to-org-modal .modal-body .staff-info .staff-label{margin:0 0 8px;font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px}.add-staff-to-org-modal .modal-body .staff-info .staff-name{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--text-primary, #111827)}.add-staff-to-org-modal .modal-body .staff-info .staff-email{margin:0;font-size:14px;color:var(--text-secondary, #6b7280)}.add-staff-to-org-modal .modal-body .form-group{margin-bottom:20px}.add-staff-to-org-modal .modal-body .form-group:last-of-type{margin-bottom:24px}.add-staff-to-org-modal .modal-body .form-group label{display:block;font-size:14px;font-weight:500;color:var(--text-primary, #111827);margin-bottom:6px}.add-staff-to-org-modal .modal-body .form-group label .required{color:var(--error-color, #ef4444);margin-left:2px}.add-staff-to-org-modal .modal-body .form-group label .optional{color:var(--text-secondary, #6b7280);font-weight:400;margin-left:4px}.add-staff-to-org-modal .modal-body .form-group input{width:100%;padding:10px 12px;border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-size:14px;color:var(--text-primary, #111827);background-color:var(--bg-white, #ffffff);transition:border-color .2s,box-shadow .2s}.add-staff-to-org-modal .modal-body .form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--shadow)}.add-staff-to-org-modal .modal-body .form-group input:disabled{background-color:var(--bg-disabled, #f9fafb);cursor:not-allowed;opacity:.6}.add-staff-to-org-modal .modal-body .form-group input::placeholder{color:var(--text-tertiary, #9ca3af)}.add-staff-to-org-modal .modal-body .form-group .help-text{margin-top:6px;font-size:13px;color:var(--text-secondary, #6b7280);line-height:1.4}.add-staff-to-org-modal .modal-body .form-group .loading-text{padding:10px 12px;color:var(--text-secondary, #6b7280);font-size:14px;margin:0}.add-staff-to-org-modal .modal-body .form-error{margin-bottom:20px;padding:12px;background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:6px;color:var(--danger);font-size:14px}.add-staff-to-org-modal .modal-body .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.staff-details-modal{width:100%;max-width:600px}.staff-details-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border-color, #e5e7eb)}.staff-details-modal .modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #111827)}.staff-details-modal .modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.staff-details-modal .modal-header .modal-close:hover{background-color:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.staff-details-modal .modal-body{padding:24px}.staff-details-modal .modal-body .details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.staff-details-modal .modal-body .details-grid .detail-item label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #6b7280);margin-bottom:6px}.staff-details-modal .modal-body .details-grid .detail-item .detail-value{font-size:14px;color:var(--text-primary, #111827);word-break:break-word}.staff-details-modal .modal-body .details-grid .detail-item.full-width{grid-column:1 / -1}.staff-details-modal .modal-body .details-grid .loading-text,.staff-details-modal .modal-body .details-grid .error-text,.staff-details-modal .modal-body .details-grid .empty-text{font-size:14px;margin:0}.staff-details-modal .modal-body .details-grid .loading-text{color:var(--text-secondary, #6b7280)}.staff-details-modal .modal-body .details-grid .error-text{color:var(--danger, #ef4444)}.staff-details-modal .modal-body .details-grid .empty-text{color:var(--text-tertiary, #9ca3af)}.staff-details-modal .modal-body .details-grid .error-state{display:flex;align-items:center;gap:12px}.staff-details-modal .modal-body .details-grid .error-state .error-text{flex:1}.staff-details-modal .modal-body .details-grid .error-state .retry-btn{background:none;border:none;color:var(--primary, #2563eb);font-size:14px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s}.staff-details-modal .modal-body .details-grid .error-state .retry-btn:hover{background-color:var(--primary-bg-hover, #eff6ff)}.staff-details-modal .modal-body .details-grid .error-state .retry-btn:active{background-color:var(--primary-bg-active, #dbeafe)}.staff-details-modal .modal-body .details-grid .assignments-list{list-style:none;padding:0;margin:0}.staff-details-modal .modal-body .details-grid .assignments-list li{padding:10px 12px;background-color:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;font-size:14px;color:var(--text-primary, #111827);margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:12px}.staff-details-modal .modal-body .details-grid .assignments-list li:last-child{margin-bottom:0}.staff-details-modal .modal-body .details-grid .assignments-list li .ap-info{flex:1;min-width:0}.staff-details-modal .modal-body .details-grid .assignments-list li .ap-info .ap-name{font-weight:500}.staff-details-modal .modal-body .details-grid .assignments-list li .ap-info .ap-site{color:var(--text-secondary, #6b7280);font-size:.875rem;font-style:italic}.staff-details-modal .modal-body .details-grid .assignments-list li .status-pill{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap;flex-shrink:0}.staff-details-modal .modal-body .details-grid .assignments-list li .status-pill.status-active{background-color:#d1fae5;color:#065f46}.staff-details-modal .modal-body .details-grid .assignments-list li .status-pill.status-inactive{background-color:#fee2e2;color:#991b1b}.staff-details-modal .modal-body .details-grid .assignments-list li .status-pill.status-archived{background-color:#f3f4f6;color:#4b5563}.staff-details-modal .modal-body .modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border-color, #e5e7eb)}.edit-staff-modal{width:100%;max-width:500px}.edit-staff-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border-color, #e5e7eb)}.edit-staff-modal .modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #111827)}.edit-staff-modal .modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.edit-staff-modal .modal-header .modal-close:hover:not(:disabled){background-color:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.edit-staff-modal .modal-header .modal-close:disabled{opacity:.5;cursor:not-allowed}.edit-staff-modal .modal-body{padding:24px}.edit-staff-modal .modal-body .info-notice{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:12px;margin-bottom:20px}.edit-staff-modal .modal-body .info-notice p{margin:0;font-size:13px;color:#1e40af;line-height:1.5}.edit-staff-modal .modal-body .form-group{margin-bottom:20px}.edit-staff-modal .modal-body .form-group:last-of-type{margin-bottom:24px}.edit-staff-modal .modal-body .form-group label{display:block;font-size:14px;font-weight:500;color:var(--text-primary, #111827);margin-bottom:6px}.edit-staff-modal .modal-body .form-group label .required{color:var(--error-color, #ef4444);margin-left:2px}.edit-staff-modal .modal-body .form-group label .optional{color:var(--text-secondary, #6b7280);font-weight:400;margin-left:4px}.edit-staff-modal .modal-body .form-group input{width:100%;padding:10px 12px;border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-size:14px;color:var(--text-primary, #111827);background-color:var(--bg-white, #ffffff);transition:border-color .2s,box-shadow .2s}.edit-staff-modal .modal-body .form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--shadow)}.edit-staff-modal .modal-body .form-group input:disabled{background-color:var(--bg-disabled, #f9fafb);cursor:not-allowed;opacity:.6}.edit-staff-modal .modal-body .form-group input::placeholder{color:var(--text-tertiary, #9ca3af)}.edit-staff-modal .modal-body .form-group .help-text{margin:4px 0 0;font-size:13px;color:var(--text-secondary, #6b7280)}.edit-staff-modal .modal-body .form-group .help-text.error-text{color:var(--danger, #ef4444)}.edit-staff-modal .modal-body .form-group .help-text .retry-link{background:none;border:none;color:var(--primary);cursor:pointer;text-decoration:underline;font-size:13px;padding:0;margin-left:4px}.edit-staff-modal .modal-body .form-group .help-text .retry-link:hover{color:var(--primary-dark)}.edit-staff-modal .modal-body .form-group .loading-text{font-size:14px;color:var(--text-secondary, #6b7280);margin:0}.edit-staff-modal .modal-body .form-error{margin-bottom:20px;padding:12px;background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:6px;color:var(--danger);font-size:14px}.edit-staff-modal .modal-body .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.staff-list-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.toolbarRow{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;margin-bottom:20px}.toolbarRow .pillsWrap{flex:0 0 auto}.toolbarRow .pillsWrap .filter-bar{margin-bottom:0;border-bottom:none}.toolbarRow .searchWrap{flex:1;display:flex;justify-content:flex-end}.toolbarRow .searchWrap .searchInputWrap{width:100%;max-width:700px;min-width:520px}.toolbarRow .searchWrap .searchInputWrap .search-bar{width:100%}@media(max-width:900px){.toolbarRow{flex-direction:column;align-items:stretch}.toolbarRow .searchWrap{justify-content:flex-start}.toolbarRow .searchWrap .searchInputWrap{max-width:100%;min-width:unset}}.table-container{background:#fff;border:1px solid #e8e8e9;border-radius:14px;overflow:visible!important}@media(max-width:768px){.table-container{overflow-x:auto;overflow-y:visible!important;-webkit-overflow-scrolling:touch;border-radius:10px}}.data-table{width:100%;border-collapse:collapse;min-width:600px;overflow:visible!important}.data-table thead{background:#f8f8f9;overflow:visible!important}.data-table thead tr{border-bottom:1px solid #e8e8e9;overflow:visible!important}.data-table thead th{text-align:left;padding:16px 24px;font-weight:500;color:#6b6b6b;font-size:11px;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}.data-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease}.data-table thead th.sortable:hover{color:#1a1a1a;background:#fafafa}.data-table thead th.sortable .sort-indicator{margin-left:4px;font-size:12px;color:#2c2c2e}@media(max-width:768px){.data-table thead th{padding:12px 16px;font-size:10px}}.data-table tbody{overflow:visible!important}.data-table tbody tr{border-bottom:1px solid #e8e8e9;transition:background .2s ease;overflow:visible!important}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:#fafafa}.data-table tbody tr.inactive{opacity:.6}.data-table tbody td{padding:20px 24px;color:#1a1a1a;font-size:14px;overflow:visible!important}@media(max-width:768px){.data-table tbody td{padding:16px;font-size:13px}}.loading-state,.error-state,.empty-state{text-align:center;padding:64px 24px}@media(max-width:768px){.loading-state,.error-state,.empty-state{padding:48px 16px}}.loading-state p,.error-state p,.empty-state p{color:#4a4a4a;font-size:14px;margin:0 0 16px}.loading-state .empty-subtitle,.error-state .empty-subtitle,.empty-state .empty-subtitle{color:#6b6b6b;font-size:13px}.loading-state .error-message,.error-state .error-message,.empty-state .error-message{color:#cf222e}.loading-state button,.error-state button,.empty-state button{margin-top:20px}.staff-name{font-weight:500}.staff-email,.staff-phone{color:#4a4a4a}.staff-date{color:#4a4a4a;white-space:nowrap}.status-pill{display:inline-block;padding:8px 12px;border-radius:12px;font-size:13px;font-weight:500;text-transform:lowercase}.status-pill.status-active{background:#e8f5e9;color:#16a34a}.status-pill.status-inactive{background:#f0f0f1;color:#4a4a4a}.staff-actions{text-align:right;white-space:nowrap;overflow:visible!important;position:relative}.actions-dropdown-wrapper{position:relative;display:inline-flex;justify-content:flex-end;overflow:visible!important}.btn-actions-icon{background:none;border:1px solid #e8e8e9;padding:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;color:#4a4a4a;cursor:pointer;border-radius:10px;transition:all .15s}.btn-actions-icon:hover{background:#fafafa;color:#1a1a1a;border-color:#e8e8e9}.btn-actions-icon:active{background:#f0f0f1}.btn-actions-icon svg{font-size:18px}.actions-dropdown-menu{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid #e8e8e9;border-radius:14px;box-shadow:0 10px 30px #00000014,0 4px 12px #0000000a;min-width:180px;z-index:9999;overflow:hidden;animation:dropdownFadeIn .15s ease-out}.dropdown-item{width:100%;text-align:left;padding:12px 16px;font-size:13px;color:#1a1a1a;background:none;border:none;cursor:pointer;transition:background .1s;font-weight:500;white-space:nowrap}.dropdown-item:hover:not(:disabled){background:#fafafa}.dropdown-item:disabled{cursor:not-allowed;opacity:.5}.dropdown-item.dropdown-item-danger{color:#cf222e}.dropdown-item.dropdown-item-danger:hover:not(:disabled){background:#ffebe9}.dropdown-divider{height:1px;background:#e8e8e9;margin:8px 0}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-dialog{background:#fff;border-radius:14px;padding:20px;max-width:600px;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-dialog h3{margin:0 0 12px;font-size:16px;color:#1a1a1a}.modal-dialog p{margin:0 0 20px;color:#4a4a4a;line-height:1.5}.modal-dialog .modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-dialog .modal-actions button{padding:12px 16px;font-size:14px}.toast{position:fixed;bottom:20px;right:20px;padding:16px 20px;background:#1a1a1a;color:#fff;border-radius:10px;font-size:14px;font-weight:500;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:1100;animation:slideIn .3s ease-out}.toast.toast-success{background:#16a34a;color:#fff}.toast.toast-error{background:#cf222e;color:#fff}@keyframes slideIn{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:768px){.toast{bottom:16px;right:16px;left:16px}}.create-staff-page{padding:20px;max-width:600px}@media(max-width:768px){.create-staff-page{padding:16px}}.create-staff-content{margin-top:20px}.create-staff-form{background:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:24px}@media(max-width:768px){.create-staff-form{padding:20px}}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:13px;font-weight:500;color:#1a1a1a;margin-bottom:12px}.form-group label .required{color:#cf222e}.form-group label .optional{color:#4a4a4a;font-weight:400}.form-group input{width:100%;padding:12px 16px;font-size:14px;color:#1a1a1a;background:#fff;border:1px solid #d4d4d5;border-radius:6px;transition:border-color .2s ease}.form-group input:focus{outline:none;border-color:#1a1a1a}.form-group input::placeholder{color:#4a4a4a}.form-error{margin-bottom:20px;padding:16px;background:#ffebe9;border:1px solid #cf222e;border-radius:10px;color:#cf222e;font-size:13px}.form-success{margin-bottom:20px;padding:16px;background:#e8f5e9;border:1px solid #16a34a;border-radius:10px;color:#16a34a;font-size:13px}.form-success .success-note{margin-top:8px;font-size:13px;color:#4a4a4a}.form-actions{display:flex;gap:16px;margin-top:24px}@media(max-width:480px){.form-actions{flex-direction:column-reverse}}.form-actions button{flex:1}.payout-account-modal{width:100%;max-width:600px;max-height:90vh;overflow-y:auto}.payout-account-modal .modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border-color, #e5e7eb);position:sticky;top:0;background:var(--surface, #ffffff);z-index:10}.payout-account-modal .modal-header>div{flex:1}.payout-account-modal .modal-header h3{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-primary, #111827)}.payout-account-modal .modal-header .modal-subtitle{margin:0;font-size:14px;color:var(--text-secondary, #6b7280)}.payout-account-modal .modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s;flex-shrink:0;margin-left:16px}.payout-account-modal .modal-header .modal-close:hover:not(:disabled){background-color:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.payout-account-modal .modal-header .modal-close:disabled{opacity:.5;cursor:not-allowed}.payout-account-modal .modal-body{padding:24px}.payout-account-modal .modal-body .form-group{margin-bottom:20px}.payout-account-modal .modal-body .form-group:last-of-type{margin-bottom:24px}.payout-account-modal .modal-body .form-group label{display:block;font-size:14px;font-weight:500;color:var(--text-primary, #111827);margin-bottom:6px}.payout-account-modal .modal-body .form-group label .required{color:var(--error-color, #ef4444);margin-left:2px}.payout-account-modal .modal-body .form-group label .optional{color:var(--text-secondary, #6b7280);font-weight:400;margin-left:4px}.payout-account-modal .modal-body .form-group input,.payout-account-modal .modal-body .form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-size:14px;color:var(--text-primary, #111827);background-color:var(--bg-white, #ffffff);transition:border-color .2s,box-shadow .2s;font-family:inherit}.payout-account-modal .modal-body .form-group input:focus,.payout-account-modal .modal-body .form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--shadow)}.payout-account-modal .modal-body .form-group input:disabled,.payout-account-modal .modal-body .form-group textarea:disabled{background-color:var(--bg-disabled, #f9fafb);cursor:not-allowed;opacity:.6}.payout-account-modal .modal-body .form-group input::placeholder,.payout-account-modal .modal-body .form-group textarea::placeholder{color:var(--text-tertiary, #9ca3af)}.payout-account-modal .modal-body .form-group textarea{resize:vertical;min-height:80px}.payout-account-modal .modal-body .form-group .form-hint{display:block;margin-top:4px;font-size:13px;color:var(--text-secondary, #6b7280)}.payout-account-modal .modal-body .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.payout-account-modal .modal-body .form-row{grid-template-columns:1fr;gap:20px}}.payout-account-modal .modal-body .security-notice{display:flex;gap:12px;padding:16px;background:var(--warning-bg, #fef3c7);border:1px solid var(--warning, #f59e0b);border-radius:8px;margin-bottom:20px}.payout-account-modal .modal-body .security-notice .security-notice-icon{font-size:20px;flex-shrink:0}.payout-account-modal .modal-body .security-notice .security-notice-content{flex:1}.payout-account-modal .modal-body .security-notice .security-notice-content strong{display:block;font-size:14px;font-weight:600;color:var(--text-primary, #111827);margin-bottom:4px}.payout-account-modal .modal-body .security-notice .security-notice-content p{margin:0;font-size:13px;color:var(--text-secondary, #6b7280);line-height:1.5}.payout-account-modal .modal-body .form-error{margin-bottom:20px;padding:12px;background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:6px;color:var(--danger);font-size:14px}.payout-account-modal .modal-body .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-color, #e5e7eb)}.create-payout-modal{width:100%;max-width:550px}.create-payout-modal .modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border-color, #e5e7eb)}.create-payout-modal .modal-header>div{flex:1}.create-payout-modal .modal-header h3{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-primary, #111827)}.create-payout-modal .modal-header .modal-subtitle{margin:0;font-size:14px;color:var(--text-secondary, #6b7280)}.create-payout-modal .modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s;flex-shrink:0;margin-left:16px}.create-payout-modal .modal-header .modal-close:hover:not(:disabled){background-color:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.create-payout-modal .modal-header .modal-close:disabled{opacity:.5;cursor:not-allowed}.create-payout-modal .modal-body{padding:24px}.create-payout-modal .modal-body .form-group{margin-bottom:20px}.create-payout-modal .modal-body .form-group:last-of-type{margin-bottom:24px}.create-payout-modal .modal-body .form-group label{display:block;font-size:14px;font-weight:500;color:var(--text-primary, #111827);margin-bottom:6px}.create-payout-modal .modal-body .form-group label .required{color:var(--error-color, #ef4444);margin-left:2px}.create-payout-modal .modal-body .form-group label .optional{color:var(--text-secondary, #6b7280);font-weight:400;margin-left:4px}.create-payout-modal .modal-body .form-group input,.create-payout-modal .modal-body .form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-size:14px;color:var(--text-primary, #111827);background-color:var(--bg-white, #ffffff);transition:border-color .2s,box-shadow .2s;font-family:inherit}.create-payout-modal .modal-body .form-group input:focus,.create-payout-modal .modal-body .form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--shadow)}.create-payout-modal .modal-body .form-group input:disabled,.create-payout-modal .modal-body .form-group textarea:disabled{background-color:var(--bg-disabled, #f9fafb);cursor:not-allowed;opacity:.6}.create-payout-modal .modal-body .form-group input::placeholder,.create-payout-modal .modal-body .form-group textarea::placeholder{color:var(--text-tertiary, #9ca3af)}.create-payout-modal .modal-body .form-group textarea{resize:vertical;min-height:80px}.create-payout-modal .modal-body .form-group .form-hint{display:block;margin-top:4px;font-size:13px;color:var(--text-secondary, #6b7280)}.create-payout-modal .modal-body .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.create-payout-modal .modal-body .form-row{grid-template-columns:1fr;gap:20px}}.create-payout-modal .modal-body .form-error{margin-bottom:20px;padding:12px;background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:6px;color:var(--danger);font-size:14px}.create-payout-modal .modal-body .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-color, #e5e7eb)}.view-payout-account-modal{max-width:700px}.view-payout-account-modal .details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.view-payout-account-modal .details-grid .detail-item{display:flex;flex-direction:column;gap:.5rem}.view-payout-account-modal .details-grid .detail-item.full-width{grid-column:1 / -1}.view-payout-account-modal .details-grid .detail-item label{font-size:.875rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.view-payout-account-modal .details-grid .detail-item .detail-value{font-size:1rem;color:#333}.view-payout-account-modal .details-grid .detail-item .detail-value.notes-value{white-space:pre-wrap;padding:.75rem;background:#f8f9fa;border-radius:4px;border:1px solid #e9ecef}.view-payout-account-modal .details-grid .detail-item .masked-text{font-family:Courier New,monospace;font-weight:600;letter-spacing:1px;color:#666}.view-payout-account-modal .details-grid .detail-item .type-badge{display:inline-block;padding:.25rem .75rem;background:#e3f2fd;color:#1976d2;border-radius:12px;font-size:.875rem;font-weight:500}.view-payout-account-modal .details-grid .detail-item .status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.view-payout-account-modal .details-grid .detail-item .status-badge.status-success{background:#e8f5e9;color:#2e7d32}.view-payout-account-modal .details-grid .detail-item .status-badge.status-warning{background:#fff3e0;color:#e65100}.view-payout-account-modal .details-grid .detail-item .status-badge.status-danger{background:#ffebee;color:#c62828}.view-payout-account-modal .details-grid .detail-item .status-badge.status-neutral{background:#f5f5f5;color:#666}.view-payout-account-modal .security-notice{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:.5rem}.view-payout-account-modal .security-notice .security-notice-icon{font-size:1.5rem;flex-shrink:0}.view-payout-account-modal .security-notice .security-notice-content{flex:1}.view-payout-account-modal .security-notice .security-notice-content strong{display:block;margin-bottom:.25rem;font-size:.875rem;color:#333}.view-payout-account-modal .security-notice .security-notice-content p{margin:0;font-size:.875rem;color:#666;line-height:1.5}.view-payout-account-modal .modal-actions{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e9ecef;display:flex;justify-content:flex-end;gap:1rem}@media(max-width:768px){.view-payout-account-modal .details-grid{grid-template-columns:1fr;gap:1rem}}.payout-details-modal{max-width:800px;max-height:90vh;overflow-y:auto}.payout-details-modal .modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid #e5e7eb;position:sticky;top:0;background:#fff;z-index:10}.payout-details-modal .modal-header>div{flex:1}.payout-details-modal .modal-header h3{margin:0 0 4px;font-size:20px;font-weight:600;color:#111827}.payout-details-modal .modal-header .modal-subtitle{margin:0;font-size:14px;color:#6b7280}.payout-details-modal .modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s;flex-shrink:0;margin-left:16px}.payout-details-modal .modal-header .modal-close:hover{background-color:#f3f4f6;color:#111827}.payout-details-modal .modal-body{padding:24px}.payout-details-modal .details-section{margin-bottom:32px}.payout-details-modal .details-section:last-of-type{margin-bottom:24px}.payout-details-modal .details-section .section-title{margin:0 0 16px;font-size:16px;font-weight:600;color:#111827;text-transform:uppercase;letter-spacing:.5px;font-size:14px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.payout-details-modal .details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.payout-details-modal .details-grid .detail-item{display:flex;flex-direction:column;gap:6px}.payout-details-modal .details-grid .detail-item.full-width{grid-column:1 / -1}.payout-details-modal .details-grid .detail-item label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.payout-details-modal .details-grid .detail-item .detail-value{font-size:15px;color:#111827}.payout-details-modal .details-grid .detail-item .detail-value.amount-value{font-size:18px;font-weight:700;color:#059669}.payout-details-modal .details-grid .detail-item .detail-value .id-badge{display:inline-block;padding:4px 8px;background:#f3f4f6;color:#374151;border-radius:6px;font-family:Monaco,Menlo,monospace;font-size:13px;font-weight:600}.payout-details-modal .details-grid .detail-item .detail-value .masked-text{font-family:Monaco,Menlo,monospace;font-weight:600;letter-spacing:1px;color:#6b7280;font-size:14px}.payout-details-modal .details-grid .detail-item .status-badge{display:inline-block;padding:4px 12px;border-radius:6px;font-size:13px;font-weight:600;text-transform:capitalize;width:fit-content}.payout-details-modal .details-grid .detail-item .status-badge.status-success{background:#d1fae5;color:#065f46}.payout-details-modal .details-grid .detail-item .status-badge.status-warning{background:#fef3c7;color:#92400e}.payout-details-modal .details-grid .detail-item .status-badge.status-danger{background:#fee2e2;color:#991b1b}.payout-details-modal .details-grid .detail-item .status-badge.status-neutral{background:#f3f4f6;color:#374151}.payout-details-modal .financial-breakdown{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.payout-details-modal .financial-breakdown .breakdown-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e5e7eb}.payout-details-modal .financial-breakdown .breakdown-row:last-of-type{border-bottom:none}.payout-details-modal .financial-breakdown .breakdown-row.breakdown-total{margin-top:8px;padding-top:16px;border-top:2px solid #d1d5db;border-bottom:none}.payout-details-modal .financial-breakdown .breakdown-row.breakdown-total .breakdown-label{font-size:16px;font-weight:700}.payout-details-modal .financial-breakdown .breakdown-row.breakdown-total .breakdown-value{font-size:20px;font-weight:700;color:#059669}.payout-details-modal .financial-breakdown .breakdown-row .breakdown-label{font-size:14px;color:#6b7280;font-weight:500}.payout-details-modal .financial-breakdown .breakdown-row .breakdown-value{font-size:15px;color:#111827;font-weight:600}.payout-details-modal .financial-breakdown .breakdown-row .breakdown-value.breakdown-deduction{color:#dc2626}.payout-details-modal .financial-breakdown .memo-section{margin-top:20px;padding-top:20px;border-top:2px solid #d1d5db}.payout-details-modal .financial-breakdown .memo-section label{display:block;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.payout-details-modal .financial-breakdown .memo-section .memo-value{background:#fff;padding:12px;border-radius:6px;border:1px solid #e5e7eb;font-size:14px;color:#374151;line-height:1.6;white-space:pre-wrap}.payout-details-modal .timeline{position:relative;padding-left:40px}.payout-details-modal .timeline:before{content:"";position:absolute;left:15px;top:12px;bottom:12px;width:2px;background:#e5e7eb}.payout-details-modal .timeline .timeline-item{position:relative;padding-bottom:24px}.payout-details-modal .timeline .timeline-item:last-child{padding-bottom:0}.payout-details-modal .timeline .timeline-item .timeline-icon{position:absolute;left:-40px;top:0;width:32px;height:32px;background:#fff;border:2px solid #e5e7eb;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;z-index:1}.payout-details-modal .timeline .timeline-item.completed .timeline-icon{background:#d1fae5;border-color:#059669}.payout-details-modal .timeline .timeline-item.completed .timeline-label{color:#111827;font-weight:600}.payout-details-modal .timeline .timeline-item.pending{opacity:.5}.payout-details-modal .timeline .timeline-item.pending .timeline-label{color:#9ca3af}.payout-details-modal .timeline .timeline-item .timeline-content .timeline-label{font-size:14px;font-weight:500;color:#6b7280;margin-bottom:4px}.payout-details-modal .timeline .timeline-item .timeline-content .timeline-timestamp{font-size:13px;color:#9ca3af}.payout-details-modal .security-notice{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;margin-bottom:24px}.payout-details-modal .security-notice .security-notice-icon{font-size:20px;flex-shrink:0}.payout-details-modal .security-notice .security-notice-content{flex:1}.payout-details-modal .security-notice .security-notice-content strong{display:block;margin-bottom:4px;font-size:14px;color:#78350f}.payout-details-modal .security-notice .security-notice-content p{margin:0;font-size:13px;color:#92400e;line-height:1.5}.payout-details-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e5e7eb}@media(max-width:768px){.payout-details-modal{max-width:100%;max-height:100vh;border-radius:0}.payout-details-modal .modal-body{padding:16px}.payout-details-modal .details-section{margin-bottom:24px}.payout-details-modal .details-grid{grid-template-columns:1fr;gap:16px}.payout-details-modal .timeline{padding-left:36px}.payout-details-modal .timeline:before{left:13px}.payout-details-modal .timeline .timeline-item .timeline-icon{left:-36px;width:28px;height:28px;font-size:14px}}.pagination-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f8f8f9;border-top:1px solid #e8e8e9;gap:16px;flex-wrap:wrap}.pagination-footer .pagination-page-size{display:flex;align-items:center;gap:12px;color:#4a4a4a;font-size:13px;flex-shrink:0}.pagination-footer .pagination-page-size label{white-space:nowrap;font-weight:500}.pagination-footer .pagination-page-size select{padding:8px 12px;border:1px solid #e8e8e9;border-radius:10px;background:#f8f8f9;color:#1a1a1a;font-size:13px;cursor:pointer;transition:border-color .2s ease}.pagination-footer .pagination-page-size select:focus{outline:none;border-color:#2c2c2e}.pagination-footer .pagination-page-size select:disabled{opacity:.5;cursor:not-allowed}.pagination-footer .pagination-info{display:flex;align-items:center;gap:8px;color:#1a1a1a;font-size:13px;font-weight:500;flex-shrink:0}.pagination-footer .pagination-info .pagination-count{color:#4a4a4a;font-weight:400}.pagination-footer .pagination-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.pagination-footer .pagination-controls .pagination-btn{padding:8px 16px;border:1px solid #e8e8e9;background:#f8f8f9;color:#1a1a1a;border-radius:10px;cursor:pointer;transition:all .2s ease;font-size:13px;font-weight:500;min-width:70px}.pagination-footer .pagination-controls .pagination-btn:hover:not(:disabled){background:#f7f7f8;border-color:#2c2c2e}.pagination-footer .pagination-controls .pagination-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.pagination-footer{flex-direction:column;align-items:stretch;gap:12px}.pagination-footer .pagination-page-size,.pagination-footer .pagination-info,.pagination-footer .pagination-controls{justify-content:center}}.billing-page{height:100%;display:flex;flex-direction:column;background:#f8f8f9}.billing-tabs{display:flex;gap:8px;border-bottom:1px solid #e8e8e9;margin-top:20px;overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:768px){.billing-tabs{gap:4px;margin-top:16px}}.tab-button{padding:16px 20px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:#4a4a4a;white-space:nowrap;transition:all .15s ease;position:relative}.tab-button:hover{color:#1a1a1a;background:#fafafa}.tab-button.active{color:#1a1a1a;border-bottom-color:#1a1a1a;font-weight:600}@media(max-width:768px){.tab-button{padding:12px 16px;font-size:13px}}.page-content{padding:48px;max-width:1440px;margin:0 auto;width:100%}@media(max-width:768px){.page-content{padding:20px}}@media(max-width:480px){.page-content{padding:16px}}.page-content .loading-state,.page-content .error-state,.page-content .empty-state{text-align:center;padding:64px 24px;color:#6b6b6b}.page-content .error-state .error-message{color:#cf222e;margin-bottom:24px;font-size:14px}.tab-content{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.section{margin-bottom:48px}.section:last-child{margin-bottom:0}.section .section-title{margin:0 0 24px;font-size:16px;font-weight:600;color:#1a1a1a;letter-spacing:-.01em}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}@media(max-width:768px){.summary-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media(max-width:480px){.summary-grid{grid-template-columns:1fr}}.summary-card{background:#fff;border:1px solid #e8e8e9;padding:24px;border-radius:14px;transition:all .2s ease}.summary-card:hover{border-color:#d4d4d5;box-shadow:0 1px 3px #0000001a}.summary-card .summary-label{margin:0 0 16px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#6b6b6b;font-weight:500}.summary-card .summary-value{margin:0;font-size:32px;font-weight:700;letter-spacing:-.01em;color:#1a1a1a;line-height:1.25}.summary-card .summary-value.summary-value-success{color:#16a34a}.summary-card .summary-value.summary-value-danger{color:#cf222e}.summary-card .summary-value.summary-value-muted{color:#4a4a4a}@media(max-width:768px){.summary-card{padding:20px}.summary-card .summary-value{font-size:28px}}.table-container{background:#fff;border:1px solid #e8e8e9;border-radius:14px;overflow:hidden}.table-container .data-table{width:100%;border-collapse:collapse}.table-container .data-table thead{background:#fff}.table-container .data-table thead tr th{padding:20px 24px;text-align:left;font-size:11px;font-weight:600;color:#4a4a4a;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #e8e8e9}@media(max-width:640px){.table-container .data-table thead tr th{padding:16px 20px;font-size:13px}}.table-container .data-table tbody tr{border-bottom:1px solid #e8e8e9;transition:background-color .15s ease}.table-container .data-table tbody tr:last-child{border-bottom:none}.table-container .data-table tbody tr:hover{background:#fafafa}.table-container .data-table tbody tr td{padding:20px 24px;font-size:14px;color:#1a1a1a}@media(max-width:640px){.table-container .data-table tbody tr td{padding:16px 20px;font-size:13px}}.table-container .data-table tbody tr td.empty-cell{padding:0}.table-container .data-table tbody tr td .id-text{font-family:Monaco,Menlo,monospace;font-size:13px;font-weight:500;color:#4a4a4a;background:#fafafa;padding:2px 6px;border-radius:6px}.table-container .data-table tbody tr td .masked-text{font-family:Monaco,Menlo,monospace;font-size:13px;font-weight:500;color:#4a4a4a;letter-spacing:.05em}.table-container .data-table tbody tr td .type-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:13px;font-weight:500;text-transform:capitalize;background:#fafafa;color:#4a4a4a;border:1px solid #e8e8e9}.table-container .data-table tbody tr td .no-actions{color:#6b6b6b}.status-badge{display:inline-block;padding:4px 12px;border-radius:6px;font-size:13px;font-weight:600;text-transform:capitalize;white-space:nowrap}.status-badge.status-success{background:#16a34a1a;color:#16a34a;border:1px solid rgba(22,163,74,.3)}.status-badge.status-warning{background:#f59e0b1a;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.status-badge.status-danger{background:#cf222e1a;color:#cf222e;border:1px solid rgba(207,34,46,.3)}.status-badge.status-neutral{background:#fafafa;color:#4a4a4a;border:1px solid #e8e8e9}.action-buttons{display:flex;gap:12px;flex-wrap:wrap}.action-buttons .btn-action{padding:8px 16px;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;border:1px solid;white-space:nowrap}.action-buttons .btn-action.btn-approve{background:#16a34a1a;color:#16a34a;border-color:#16a34a4d}.action-buttons .btn-action.btn-approve:hover{background:#16a34a33;border-color:#16a34a}.action-buttons .btn-action.btn-approve:active{background:#16a34a4d}.action-buttons .btn-action.btn-reject,.action-buttons .btn-action.btn-failed{background:#cf222e1a;color:#cf222e;border-color:#cf222e4d}.action-buttons .btn-action.btn-reject:hover,.action-buttons .btn-action.btn-failed:hover{background:#cf222e33;border-color:#cf222e}.action-buttons .btn-action.btn-reject:active,.action-buttons .btn-action.btn-failed:active{background:#cf222e4d}.action-buttons .btn-action.btn-view{background:#3b82f61a;color:#3b82f6;border-color:#3b82f64d}.action-buttons .btn-action.btn-view:hover{background:#3b82f633;border-color:#3b82f6}.action-buttons .btn-action.btn-view:active{background:#3b82f64d}.action-buttons .btn-action.btn-edit,.action-buttons .btn-action.btn-hold{background:#fafafa;color:#4a4a4a;border-color:#e8e8e9}.action-buttons .btn-action.btn-edit:hover,.action-buttons .btn-action.btn-hold:hover{background:#fff;color:#1a1a1a;border-color:#d4d4d5}.action-buttons .btn-action.btn-edit:active,.action-buttons .btn-action.btn-hold:active{background:#fafafa}.action-buttons .btn-action.btn-processing,.action-buttons .btn-action.btn-paid{background:#3b82f61a;color:#3b82f6;border-color:#3b82f64d}.action-buttons .btn-action.btn-processing:hover,.action-buttons .btn-action.btn-paid:hover{background:#3b82f633;border-color:#3b82f6}.action-buttons .btn-action.btn-processing:active,.action-buttons .btn-action.btn-paid:active{background:#3b82f64d}@media(max-width:640px){.action-buttons .btn-action{padding:8px 12px;font-size:11px}}.empty-state-inline{padding:48px 24px;text-align:center;background:#fafafa;border-radius:14px;color:#6b6b6b}.empty-state-inline p{margin:0;font-size:14px}.empty-state-inline p:first-child{font-weight:500;color:#4a4a4a}.empty-state-inline .empty-subtitle{margin-top:12px;font-size:13px;color:#6b6b6b}.confirm-dialog{width:100%;max-width:450px}.confirm-dialog .modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--border-color, #e5e7eb)}.confirm-dialog .modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #111827)}.confirm-dialog .modal-header .modal-close{background:none;border:none;font-size:28px;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.confirm-dialog .modal-header .modal-close:hover{background-color:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.confirm-dialog .modal-body{padding:24px}.confirm-dialog .modal-body p{margin:0 0 24px;font-size:14px;line-height:1.6;color:var(--text-primary, #111827)}.confirm-dialog .modal-body p strong{font-weight:600}.confirm-dialog .modal-body .modal-actions{display:flex;justify-content:flex-end;gap:12px}.confirm-dialog .modal-body .modal-actions .btn-danger{background-color:var(--danger)!important;color:#fff!important;border-color:var(--danger)!important}.confirm-dialog .modal-body .modal-actions .btn-danger:hover{opacity:.9}.scanner-content{min-height:calc(100vh - 64px);display:flex;align-items:center;justify-content:center;padding:24px 16px}.scanner-content-inner{width:100%;max-width:620px;display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.scanner-icon-wrapper{display:flex;align-items:center;justify-content:center}.scanner-icon-wrapper .scanner-icon{font-size:80px;color:#fff;opacity:1;filter:drop-shadow(0 0 8px rgba(255,255,255,.15))}@media(max-width:768px){.scanner-icon-wrapper .scanner-icon{font-size:64px}}h2{margin:0;font-size:28px;font-weight:600;letter-spacing:-.01em;color:#fff}@media(max-width:768px){h2{font-size:24px}}.scanner-subtitle{margin:0;color:#fff9;font-size:15px}@media(max-width:768px){.scanner-subtitle{font-size:14px}}.scanner-access-points{width:100%;display:flex;flex-direction:column;gap:16px}.scanner-access-point-card{width:100%;display:flex;justify-content:space-between;align-items:center;padding:24px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:14px;cursor:pointer;transition:all .2s ease;text-align:left;min-height:80px}.scanner-access-point-card:hover{background:#ffffff14;border-color:#ffffff1f;transform:translate(4px)}.scanner-access-point-card:active{transform:translate(2px)}.scanner-access-point-card .ap-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.scanner-access-point-card .ap-info h3{margin:0;font-size:16px;font-weight:600;color:#fff;letter-spacing:-.01em;line-height:1.3}.scanner-access-point-card .ap-info .ap-site{margin:0;color:#ffffffb3;font-size:14px;font-weight:500;line-height:1.4}.scanner-access-point-card .ap-info .ap-location{margin:0;color:#ffffff80;font-size:13px;line-height:1.4}.scanner-access-point-card .ap-arrow{font-size:24px;color:#fff9;flex-shrink:0;margin-left:16px}@media(max-width:768px){.scanner-access-point-card{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{width:100%;text-align:center;color:#fff9;padding:24px 0}.error-message{color:#ff6b6b;margin-bottom:16px}.btn-retry{padding:12px 20px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.btn-retry:hover{background:#ffffff1f;border-color:#fff3}.scannerModeRoot{--bg: #0a0a0f;--surface: #1a1a24;--surface-2: #252535;--border: #2d2d40;--text: #e8e8f0;--text-muted: #9494a8;--accent: #5b5fc7;--accent-light: #7377d9}.scanner-scan-page{display:flex;flex-direction:column;min-height:calc(100vh - 80px);padding:48px;gap:24px;background:var(--bg);width:100%}@media(max-width:768px){.scanner-scan-page{padding:20px;gap:16px;min-height:calc(100vh - 64px)}}@media(max-width:480px){.scanner-scan-page{padding:16px}}.scan-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}@media(max-width:768px){.scan-area{gap:20px}}.scanner-content{max-width:600px;width:100%;text-align:center}.scanner-content h2{margin:0 0 12px;font-size:28px;font-weight:600;letter-spacing:-.01em;color:var(--text)}@media(max-width:768px){.scanner-content h2{font-size:24px}}.scanner-icon-wrapper{margin-bottom:48px}.scanner-icon-wrapper .large-scanner-icon{font-size:80px;color:#fff;filter:drop-shadow(0 0 8px rgba(255,255,255,.15))}@media(max-width:768px){.scanner-icon-wrapper{margin-bottom:24px}.scanner-icon-wrapper .large-scanner-icon{font-size:64px}}.scanner-subtitle{margin:0 0 48px;color:var(--text-muted);font-size:15px}@media(max-width:768px){.scanner-subtitle{margin-bottom:24px;font-size:14px}}.loading-state,.error-state,.empty-state{padding:24px;text-align:center}.loading-state p,.error-state p,.empty-state p{margin:0;color:var(--text-muted);font-size:14px}@media(max-width:768px){.loading-state,.error-state,.empty-state{padding:20px}}.error-state .error-message{color:#cf222e;margin-bottom:16px}.error-state .btn-retry{padding:12px 20px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.error-state .btn-retry:hover{background:#ffffff1f;border-color:#fff3}.access-points-list{display:flex;flex-direction:column;gap:16px;width:100%}.access-point-card{display:flex;justify-content:space-between;align-items:center;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:14px;cursor:pointer;transition:all .2s ease;text-align:left;width:100%;min-height:80px}.access-point-card:hover{background:var(--surface-2);border-color:var(--accent);transform:translate(4px)}.access-point-card:active{transform:translate(2px)}.access-point-card .ap-info{flex:1;min-width:0}.access-point-card .ap-info h3{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--text);letter-spacing:-.01em}.access-point-card .ap-info p{margin:0;color:var(--text-muted);font-size:14px}.access-point-card .ap-arrow{font-size:24px;color:var(--text-muted);flex-shrink:0;margin-left:16px;transition:all .2s ease}.access-point-card:hover .ap-arrow{color:var(--accent);transform:translate(4px)}@media(max-width:768px){.access-point-card{padding:20px}.access-point-card .ap-info h3{font-size:15px}.access-point-card .ap-info p{font-size:13px}}.access-point-selector{width:100%;max-width:500px;display:flex;flex-direction:column;gap:20px;padding:48px;background:var(--surface);border:1px solid var(--border);border-radius:16px}.access-point-selector .back-btn{align-self:flex-start;display:flex;align-items:center;gap:8px;padding:12px 16px;background:transparent;border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:14px;cursor:pointer;transition:all .2s ease}.access-point-selector .back-btn:hover{background:var(--surface-2);border-color:var(--accent)}.access-point-selector h2{margin:0;color:var(--text);font-size:22px;font-weight:600}.access-point-selector .loading-text,.access-point-selector .error-text{color:var(--text-muted);font-size:14px;text-align:center;padding:20px}.access-point-selector .error-text{color:#cf222e}.access-point-selector .select-wrapper{width:100%}@media(max-width:768px){.access-point-selector{padding:32px;max-width:100%}}.access-point-info{display:flex;align-items:center;gap:16px;text-align:center;color:var(--text);font-size:14px}.access-point-info p{margin:0}.access-point-info strong{color:var(--text);font-weight:600}.access-point-info .change-ap-btn{padding:8px 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:13px;cursor:pointer;transition:all .2s ease}.access-point-info .change-ap-btn:hover{background:var(--surface-2);border-color:var(--accent)}@media(max-width:768px){.access-point-info{font-size:13px;flex-wrap:wrap;justify-content:center}}.manual-scan-panel{display:flex;gap:12px;width:100%;max-width:600px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:14px}.manual-scan-panel .scan-input{flex:1;padding:16px;background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:14px;font-family:SF Mono,Monaco,Courier New,monospace;transition:all .2s ease}.manual-scan-panel .scan-input::placeholder{color:var(--text-muted)}.manual-scan-panel .scan-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #5b5fc71a}.manual-scan-panel .scan-input:disabled{opacity:.5;cursor:not-allowed}.manual-scan-panel .scan-button{padding:16px 24px;background:var(--accent);border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.manual-scan-panel .scan-button:hover:not(:disabled){background:var(--accent-light);transform:translateY(-1px)}.manual-scan-panel .scan-button:active:not(:disabled){transform:translateY(0)}.manual-scan-panel .scan-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.manual-scan-panel{flex-direction:column;padding:16px}.manual-scan-panel .scan-button{padding:16px}}.camera-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:400px;aspect-ratio:1;background:var(--surface);border:2px dashed var(--border);border-radius:16px}.camera-placeholder .camera-icon{font-size:80px;color:#fff;filter:drop-shadow(0 0 8px rgba(255,255,255,.15));margin-bottom:20px}.camera-placeholder p{margin:8px 0;color:var(--text);font-size:14px;padding:0 16px;text-align:center}.camera-placeholder .hint-text{color:var(--text-muted);font-size:13px}@media(max-width:768px){.camera-placeholder{max-width:100%}.camera-placeholder .camera-icon{font-size:64px;margin-bottom:16px}.camera-placeholder p{font-size:13px}}.scan-result{display:flex;flex-direction:column;align-items:center;padding:48px;border-radius:16px;animation:fadeIn .3s ease;background:var(--surface);width:100%;max-width:450px}.scan-result.allow{border:2px solid #16a34a}.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}.scan-result.deny .result-icon{color:#cf222e}.scan-result.deny h2,.scan-result.deny p{color:var(--text)}.scan-result .result-icon{font-size:64px;margin-bottom:20px}.scan-result h2{margin:0 0 12px;font-size:28px;font-weight:700;letter-spacing:.05em}.scan-result .holder-name{margin:0 0 8px;font-size:15px;font-weight:500;color:var(--text)}.scan-result .result-message{margin:0;font-size:14px;color:var(--text-muted)}@media(max-width:768px){.scan-result{padding:32px;max-width:100%}.scan-result .result-icon{font-size:48px;margin-bottom:16px}.scan-result h2{font-size:22px}.scan-result p{font-size:14px}}.error-panel{display:flex;flex-direction:column;align-items:center;gap:16px;padding:48px;background:var(--surface);border:2px solid #cf222e;border-radius:16px;max-width:450px}.error-panel .error-icon{font-size:64px;color:#cf222e}.error-panel h2{margin:0;color:var(--text);font-size:16px;font-weight:600}.error-panel p{margin:0;color:var(--text-muted);font-size:14px;text-align:center}.error-panel .retry-btn{margin-top:16px;padding:12px 24px;background:var(--accent);border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.error-panel .retry-btn:hover{background:var(--accent-light)}.recent-scans{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px;max-height:300px;overflow-y:auto;width:100%}.recent-scans h3{margin:0 0 20px;font-size:16px;font-weight:600;color:var(--text)}@media(max-width:768px){.recent-scans{padding:20px;max-height:200px}.recent-scans h3{font-size:15px;margin-bottom:16px}}.scans-list{display:flex;flex-direction:column;gap:12px}.scan-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--bg);border-radius:10px;border:1px solid var(--border);gap:12px}.scan-item .scan-time{color:var(--text-muted);font-size:13px;font-family:SF Mono,Monaco,Courier New,monospace;min-width:70px;flex-shrink:0}.scan-item .scan-holder{flex:1;color:var(--text);font-size:14px;padding:0 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.scan-item .scan-badge{width:28px;height:28px;border-radius:9999px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}.scan-item .scan-badge.allow{background:#16a34a;color:#fff}.scan-item .scan-badge.deny{background:#cf222e;color:#fff}@media(max-width:768px){.scan-item{padding:12px}.scan-item .scan-time{font-size:12px;min-width:60px}.scan-item .scan-holder{font-size:13px;padding:0 8px}.scan-item .scan-badge{width:24px;height:24px;font-size:10px}}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.otp-input{display:flex;gap:8px;justify-content:center;align-items:center;width:100%}.otp-input__box{width:100%;max-width:44px;aspect-ratio:1 / 1;font-family:SF Mono,Monaco,Courier New,monospace;font-size:24px;font-weight:600;text-align:center;border:1px solid #d4d4d5;border-radius:6px;background:#fff;color:#1a1a1a;transition:all .15s ease;-moz-appearance:textfield}.otp-input__box::-webkit-outer-spin-button,.otp-input__box::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.otp-input__box:focus{outline:none;border-color:#2c2c2e;box-shadow:0 0 0 2px #2c2c2e26}.otp-input__box:hover:not(:disabled){border-color:#d4d4d5}.otp-input__box:disabled{opacity:.5;cursor:not-allowed;background:#fafafa}.otp-input__box::placeholder{color:#6b6b6b}.otp-input--error{animation:shake .4s ease-in-out}.otp-input--error .otp-input__box{border-color:#cf222e}.otp-input--error .otp-input__box:focus{border-color:#cf222e;box-shadow:0 0 0 2px #cf222e26}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@media(max-width:480px){.otp-input{gap:6px}.otp-input__box{max-width:38px;font-size:20px}}@media(max-width:360px){.otp-input{gap:4px}.otp-input__box{max-width:36px;font-size:18px}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#f8f8f9;padding:24px}.login-card{background:#fff;border:1px solid #e8e8e9;border-radius:14px;padding:48px;width:100%;max-width:400px;box-shadow:0 1px 3px #0000001a}.login-brand{text-align:center;margin-bottom:32px}.login-brand h1{font-size:18px;font-weight:700;letter-spacing:.1em;color:#1a1a1a;margin:0 0 8px}.login-brand p{font-size:13px;color:#4a4a4a;margin:0}.login-mode-tabs{display:flex;gap:8px;margin-bottom:32px;padding:8px;background:#f8f8f9;border-radius:10px}.login-mode-tabs .mode-tab{flex:1;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;font-weight:500;padding:12px 16px;background:transparent;color:#4a4a4a;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.login-mode-tabs .mode-tab:hover:not(:disabled){color:#1a1a1a;background:#fff}.login-mode-tabs .mode-tab.active{color:#1a1a1a;background:#fff;box-shadow:0 1px 2px #0000000f}.login-mode-tabs .mode-tab:disabled{opacity:.5;cursor:not-allowed}.mode-description{font-size:14px;color:#4a4a4a;text-align:center;margin:0 0 20px;line-height:1.7}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:500;color:#4a4a4a;text-transform:uppercase;letter-spacing:.05em}.form-group input{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;padding:12px 16px;border:1px solid #d4d4d5;border-radius:6px;background:#fff;color:#1a1a1a;transition:border-color .15s ease}.form-group input:focus{outline:none;border-color:#2c2c2e}.form-group input:disabled{opacity:.5;cursor:not-allowed}.form-group input::placeholder{color:#6b6b6b}.form-group input.input-error{border-color:#cf222e}.form-group .helper-text{font-size:13px;margin-top:8px;display:block}.form-group .helper-text.checking{color:#4a4a4a}.form-group .helper-text.success{color:#16a34a}.form-group .helper-text.error{color:#cf222e}.error-message{padding:12px 16px;background:#ffebe9;color:#cf222e;border-radius:6px;font-size:13px;line-height:1.5;display:flex;flex-direction:column;gap:8px}.error-message .btn-link{background:none;border:none;color:#2c2c2e;font-size:13px;font-weight:500;padding:8px 0;cursor:pointer;text-decoration:underline;text-align:left;margin-top:8px}.error-message .btn-link:hover:not(:disabled){color:#3a3a3c}.error-message .btn-link:disabled{opacity:.5;cursor:not-allowed}.help-text{font-size:13px;color:#4a4a4a;text-align:center;margin:0;line-height:1.5}.help-text strong{color:#1a1a1a;font-weight:500}.code-step-header{margin-bottom:16px}.code-step-header .neutral-message{font-size:14px;color:#4a4a4a;text-align:center;margin:0;line-height:1.7;padding:16px;background:#f8f8f9;border-radius:6px}.code-step-header .neutral-message strong{color:#1a1a1a;font-weight:500}.auth-split-layout{min-height:100vh;display:flex;animation:fadeIn .6s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-split-layout .auth-container{display:flex;width:100%;min-height:100vh}.auth-split-layout .auth-form-section{flex:1;background:#fff;display:flex;align-items:center;justify-content:center;padding:40px 24px}.auth-split-layout .auth-form-section .form-content{width:100%;max-width:440px}.auth-split-layout .auth-form-section .back-link{display:inline-block;color:#6b7280;text-decoration:none;font-size:14px;font-weight:500;margin-bottom:40px;transition:color .2s ease}.auth-split-layout .auth-form-section .back-link:hover{color:#7c3aed}.auth-split-layout .auth-form-section .logo-section{display:flex;align-items:center;gap:12px;margin-bottom:40px}.auth-split-layout .auth-form-section .logo-section .logo-icon{display:flex;align-items:center;justify-content:center}.auth-split-layout .auth-form-section .logo-section .logo-icon svg{display:block}.auth-split-layout .auth-form-section .logo-section .logo-text{font-size:18px;font-weight:600;color:#111827;letter-spacing:.5px}.auth-split-layout .auth-form-section .form-header{margin-bottom:32px}.auth-split-layout .auth-form-section .form-header h1{font-size:32px;font-weight:600;color:#111827;margin:0 0 12px;line-height:1.2;letter-spacing:-.5px}.auth-split-layout .auth-form-section .form-header .subtext{font-size:16px;font-weight:400;color:#6b7280;margin:0 0 32px;line-height:1.5;max-width:380px}.auth-split-layout .auth-form-section .form-footer{margin-top:24px}.auth-split-layout .auth-marketing-panel{flex:1;background:linear-gradient(135deg,#8b5cf6,#7c3aed,#6366f1);display:flex;align-items:center;justify-content:center;padding:60px 40px;position:relative;overflow:hidden}.auth-split-layout .auth-marketing-panel:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);pointer-events:none}.auth-split-layout .auth-marketing-panel .marketing-content{max-width:500px;position:relative;z-index:1}.auth-split-layout .auth-marketing-panel .marketing-content .icon-badge{display:inline-flex;margin-bottom:32px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.1))}.auth-split-layout .auth-marketing-panel .marketing-content h2{font-size:40px;font-weight:700;color:#fff;margin:0 0 20px;line-height:1.2;letter-spacing:-.5px}.auth-split-layout .auth-marketing-panel .marketing-content .marketing-subtext{font-size:18px;color:#ffffffe6;margin:0 0 40px;line-height:1.6}.auth-split-layout .auth-marketing-panel .marketing-content .feature-list{list-style:none;padding:0;margin:0}.auth-split-layout .auth-marketing-panel .marketing-content .feature-list li{display:flex;align-items:center;gap:12px;font-size:16px;color:#fffffff2;margin-bottom:16px;line-height:1.5}.auth-split-layout .auth-marketing-panel .marketing-content .feature-list li .bullet-dot{width:8px;height:8px;border-radius:50%;background:#fffc;flex-shrink:0}.auth-split-layout .auth-marketing-panel .marketing-content .feature-list li:last-child{margin-bottom:0}@media(max-width:1024px){.auth-split-layout .auth-marketing-panel .marketing-content h2{font-size:32px}.auth-split-layout .auth-marketing-panel .marketing-content .marketing-subtext{font-size:16px}}@media(max-width:768px){.auth-split-layout .auth-container{flex-direction:column-reverse}.auth-split-layout .auth-form-section,.auth-split-layout .auth-marketing-panel{flex:none;width:100%;min-height:auto}.auth-split-layout .auth-marketing-panel{padding:50px 24px}.auth-split-layout .auth-marketing-panel .marketing-content .icon-badge{margin-bottom:24px}.auth-split-layout .auth-marketing-panel .marketing-content h2{font-size:28px;margin-bottom:16px}.auth-split-layout .auth-marketing-panel .marketing-content .marketing-subtext{font-size:15px;margin-bottom:24px}.auth-split-layout .auth-marketing-panel .marketing-content .feature-list li{font-size:15px;margin-bottom:12px}.auth-split-layout .auth-form-section{padding:40px 20px}.auth-split-layout .auth-form-section .form-content{max-width:100%}.auth-split-layout .auth-form-section .back-link,.auth-split-layout .auth-form-section .logo-section{margin-bottom:32px}.auth-split-layout .auth-form-section .form-header{margin-bottom:24px}.auth-split-layout .auth-form-section .form-header h1{font-size:28px}.auth-split-layout .auth-form-section .form-header .subtext{font-size:15px}}@media(max-width:480px){.auth-split-layout .auth-form-section .form-header h1,.auth-split-layout .auth-marketing-panel .marketing-content h2{font-size:24px}}.admin-otp-form .mode-switcher{display:flex;gap:8px;margin-bottom:32px;padding:4px;background:#f3f4f6;border-radius:12px}.admin-otp-form .mode-switcher .mode-btn{flex:1;padding:10px 16px;height:44px;font-size:14px;font-weight:500;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#6b7280;background:transparent;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease}.admin-otp-form .mode-switcher .mode-btn:hover:not(:disabled){color:#374151;background:#ffffff80}.admin-otp-form .mode-switcher .mode-btn.active{color:#7c3aed;background:#fff;box-shadow:0 2px 4px #0000000d}.admin-otp-form .mode-switcher .mode-btn:disabled{opacity:.6;cursor:not-allowed}.admin-otp-form .auth-form .form-group{margin-bottom:28px}.admin-otp-form .auth-form .form-group label{display:block;font-size:13px;font-weight:500;color:#374151;letter-spacing:.3px;margin-bottom:8px}.admin-otp-form .auth-form .form-group input{width:100%;height:48px;padding:0 16px;font-size:15px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;border:1.5px solid #e5e7eb;border-radius:12px;transition:all .2s ease;background:#fff;color:#111827}.admin-otp-form .auth-form .form-group input::placeholder{color:#9ca3af}.admin-otp-form .auth-form .form-group input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf614}.admin-otp-form .auth-form .form-group input:hover:not(:disabled){border-color:#d1d5db}.admin-otp-form .auth-form .form-group input:disabled{background:#f9fafb;cursor:not-allowed;opacity:.6}.admin-otp-form .auth-form .form-group .helper-text{margin:8px 0 0;font-size:13px;color:#6b7280;line-height:1.4}.admin-otp-form .auth-form .form-group .email-display{display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 16px;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:12px;margin-bottom:8px}.admin-otp-form .auth-form .form-group .email-display .email-text{font-size:15px;color:#111827;font-weight:500}.admin-otp-form .auth-form .form-group .email-display .change-email-btn{background:none;border:none;color:#7c3aed;font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s ease;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-otp-form .auth-form .form-group .email-display .change-email-btn:hover:not(:disabled){background:#8b5cf61a;color:#6366f1}.admin-otp-form .auth-form .form-group .email-display .change-email-btn:disabled{opacity:.6;cursor:not-allowed}.admin-otp-form .auth-form .otp-input-group{display:flex;gap:10px;margin-bottom:24px;justify-content:center}.admin-otp-form .auth-form .otp-input-group .otp-input{width:52px;height:56px;padding:0;text-align:center;font-size:24px;font-weight:600;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;border:2px solid #e5e7eb;border-radius:12px;transition:all .2s ease;background:#fff;color:#111827}.admin-otp-form .auth-form .otp-input-group .otp-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.admin-otp-form .auth-form .otp-input-group .otp-input:hover:not(:disabled){border-color:#d1d5db}.admin-otp-form .auth-form .otp-input-group .otp-input:disabled{background:#f9fafb;cursor:not-allowed;opacity:.6}.admin-otp-form .auth-form .error-message{padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:16px;line-height:1.5}.admin-otp-form .auth-form .password-info{text-align:center;margin-top:12px;font-size:13px;color:#9ca3af;line-height:1.5}.admin-otp-form .auth-form .otp-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px;align-items:center}.admin-otp-form .auth-form .otp-actions button{background:none;border:none;font-size:14px;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:6px;transition:all .2s ease;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-otp-form .auth-form .otp-actions .resend-link{color:#7c3aed}.admin-otp-form .auth-form .otp-actions .resend-link:hover:not(:disabled){background:#8b5cf61a;color:#6366f1}.admin-otp-form .auth-form .otp-actions .resend-link:disabled{color:#9ca3af;cursor:not-allowed}.admin-otp-form .auth-form .otp-actions .different-email-link{color:#6b7280}.admin-otp-form .auth-form .otp-actions .different-email-link:hover:not(:disabled){background:#f3f4f6;color:#374151}.admin-otp-form .auth-form .otp-actions .different-email-link:disabled{opacity:.6;cursor:not-allowed}.admin-otp-form .auth-form .btn-primary{width:100%;height:48px;padding:0 24px;font-size:15px;font-weight:600;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#fff;background:linear-gradient(135deg,#8b5cf6,#7c3aed,#6366f1);border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #8b5cf640}.admin-otp-form .auth-form .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf659;filter:brightness(1.05)}.admin-otp-form .auth-form .btn-primary:active:not(:disabled){transform:translateY(0)}.admin-otp-form .auth-form .btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}@media(max-width:768px){.admin-otp-form .auth-form .otp-input-group{gap:8px}.admin-otp-form .auth-form .otp-input-group .otp-input{width:44px;height:50px;font-size:20px}}@media(max-width:480px){.admin-otp-form .auth-form .otp-input-group{gap:6px}.admin-otp-form .auth-form .otp-input-group .otp-input{width:40px;height:48px;font-size:18px}}.not-found{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background-color:#f8f8f9}.not-found-content{text-align:center;max-width:400px}.not-found-icon{font-size:64px;color:#4a4a4a;margin-bottom:20px}.not-found h1{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 16px}.not-found p{font-size:14px;color:#4a4a4a;margin:0 0 24px;line-height:1.6}.not-found-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.not-found .btn-primary,.not-found .btn-secondary{padding:12px 32px}.route-error{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:#f8f8f9}.route-error-content{text-align:center;max-width:500px}.route-error-icon{font-size:64px;color:#4a4a4a;margin-bottom:16px}.route-error-icon.error{color:#cf222e}.route-error-content h1{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:12px}.route-error-content p{font-size:14px;color:#4a4a4a;margin-bottom:20px;line-height:1.6}.error-details{background:#fff;border:1px solid #e8e8e9;border-radius:10px;padding:16px;margin-bottom:20px;text-align:left}.error-details code{font-family:Monaco,Courier New,monospace;font-size:13px;color:#cf222e;word-break:break-word}.route-error-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.no-access-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.no-access-card{background:#fff;border-radius:16px;padding:3rem;max-width:500px;width:100%;box-shadow:0 20px 60px #0000004d;text-align:center}.no-access-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff}.no-access-icon svg{width:48px;height:48px}.no-access-card h1{margin:0 0 1rem;font-size:28px;font-weight:600;color:#1a1a1a}.no-access-message{margin:0 0 2rem;font-size:16px;color:#666;line-height:1.6}.no-access-info{margin:0 0 2rem;padding:1.5rem;background:#f5f5f5;border-radius:8px;text-align:left}.no-access-info p{margin:0 0 1rem;font-size:14px;color:#666;line-height:1.6}.no-access-info p:last-child{margin-bottom:0}.no-access-info p strong{color:#1a1a1a;font-weight:600}.no-access-actions{display:flex;flex-direction:column;gap:.75rem}.no-access-actions button{width:100%;padding:.875rem 1.5rem;font-size:15px;font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease}.no-access-actions button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.no-access-actions button:active:not(:disabled){transform:translateY(0)}.no-access-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.no-access-actions .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#5568d3,#63408a)}.no-access-actions .btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.no-access-actions .btn-secondary:hover:not(:disabled){background:#f8f9ff}@media(max-width:600px){.no-access-page{padding:1rem}.no-access-card{padding:2rem 1.5rem}.no-access-card h1{font-size:24px}}.setup-type-card{position:relative;display:flex;align-items:center;gap:16px;padding:18px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;text-align:left;transition:background .12s ease,border-color .12s ease}.setup-type-card:hover{background:#fafafa;border-color:#d1d5db}.setup-type-card.selected{border-color:#111827;background:#fff}.setup-type-card__icon{width:36px;height:36px;border-radius:8px;background:#f3f4f6;color:#111827;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.setup-type-card__icon svg{width:18px;height:18px}.setup-type-card__content{display:flex;flex-direction:column;gap:4px;flex:1}.setup-type-card__title{font-size:16px;font-weight:600;color:#111827;line-height:1.4}.setup-type-card__description{font-size:14px;color:#6b7280;line-height:1.5}.setup-type-card__check{position:absolute;right:14px;width:22px;height:22px;border-radius:999px;background-color:#111827;color:#fff;display:flex;align-items:center;justify-content:center}.setup-type-card__check svg{width:13px;height:13px}.OnboardingStepper{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:24px}.OnboardingStepper__track{display:flex;align-items:center;gap:10px}.OnboardingStepper__dot{width:28px;height:28px;border-radius:999px;border:1px solid #d1d5db;background:#fff;color:#6b7280;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;transition:all .2s ease}.OnboardingStepper__dot.active{background:#111827;border-color:#111827;color:#fff}.OnboardingStepper__line{width:56px;height:2px;background:#e5e7eb;border-radius:999px;transition:all .2s ease}.OnboardingStepper__line.active{background:#111827}.OnboardingStepper__labels{width:160px;display:flex;justify-content:space-between;font-size:12px;color:#9ca3af;transition:all .2s ease}.OnboardingStepper__labels span{transition:all .2s ease}.OnboardingStepper__labels span.active{color:#111827;font-weight:600}.onboarding-setup-page .page-header{text-align:center;margin-bottom:32px;display:flex;flex-direction:column;align-items:center;gap:8px}.onboarding-setup-page .page-title{font-size:32px;font-weight:700;color:#111827;margin:0 0 8px}.onboarding-setup-page .page-subtitle{font-size:15px;color:#6b7280;margin:0}.onboarding-setup-page .page-helper-text{font-size:14px;color:#9ca3af;margin:0;max-width:500px}.onboarding-setup-page .setup-types-grid{display:grid;gap:16px;margin-bottom:28px}.onboarding-setup-page .page-actions{display:flex;justify-content:center;padding-top:4px}.onboarding-setup-page .btn{height:44px;padding:0 32px;font-size:15px;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:background .15s ease}.onboarding-setup-page .btn.btn-primary{background-color:#111827;color:#fff}.onboarding-setup-page .btn.btn-primary:hover:not(:disabled){background-color:#1f2937}.onboarding-setup-page .btn.btn-primary:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.onboarding-setup-page .btn.btn-lg{padding:0 48px}@media(max-width:720px){.onboarding-setup-page .setup-types-grid{grid-template-columns:1fr}.onboarding-setup-page .page-title{font-size:28px}}.onboarding-org-page .page-header{text-align:center;margin-bottom:32px;display:flex;flex-direction:column;align-items:center;gap:8px}.onboarding-org-page .page-title{font-size:32px;font-weight:700;color:#111827;margin:0 0 8px}.onboarding-org-page .page-subtitle{font-size:15px;color:#6b7280;margin:0}.onboarding-org-page .org-form{max-width:560px;margin:0 auto}.onboarding-org-page .form-group{margin-bottom:18px}.onboarding-org-page .form-label{display:block;font-size:13px;font-weight:600;color:#111827;margin-bottom:8px}.onboarding-org-page .form-label .required{color:#ef4444}.onboarding-org-page .form-input{width:100%;height:44px;padding:0 14px;font-size:14px;border:1px solid #e5e7eb;border-radius:10px;transition:border-color .15s ease;background:#fff;color:#111827}.onboarding-org-page .form-input:focus{outline:none;border-color:#111827}.onboarding-org-page .form-input.error{border-color:#ef4444}.onboarding-org-page .form-input:disabled{background-color:#f9fafb;cursor:not-allowed}.onboarding-org-page .form-input::placeholder{color:#9ca3af}.onboarding-org-page .form-error{margin-top:6px;font-size:13px;color:#ef4444}.onboarding-org-page .idntySelect__control{min-height:44px!important;border:1px solid #e5e7eb!important;border-radius:10px!important;box-shadow:none!important;background:#fff!important;transition:border-color .15s ease!important}.onboarding-org-page .idntySelect__control:hover{border-color:#d1d5db!important}.onboarding-org-page .idntySelect__control--is-focused{border-color:#111827!important;box-shadow:none!important}.onboarding-org-page .idntySelect__control--is-focused:hover{border-color:#111827!important}.onboarding-org-page .idntySelect__control--is-disabled{background-color:#f9fafb!important;cursor:not-allowed!important}.onboarding-org-page .idntySelect__value-container{padding:0 14px!important}.onboarding-org-page .idntySelect__placeholder{color:#9ca3af!important;font-size:14px!important}.onboarding-org-page .idntySelect__single-value{color:#111827!important;font-size:14px!important}.onboarding-org-page .idntySelect__indicator-separator{display:none!important}.onboarding-org-page .idntySelect__dropdown-indicator{color:#6b7280!important;padding:8px!important}.onboarding-org-page .idntySelect__dropdown-indicator:hover{color:#111827!important}.onboarding-org-page .idntySelect__menu{border-radius:10px!important;overflow:hidden!important;box-shadow:0 10px 25px #0000001a!important;border:1px solid #e5e7eb!important;margin-top:4px!important}.onboarding-org-page .idntySelect__menu-list{padding:4px!important}.onboarding-org-page .idntySelect__option{padding:10px 12px!important;font-size:14px!important;border-radius:6px!important;cursor:pointer!important}.onboarding-org-page .idntySelect__option--is-focused{background:#f3f4f6!important;color:#111827!important}.onboarding-org-page .idntySelect__option--is-selected{background:#111827!important;color:#fff!important}.onboarding-org-page .idntySelect__option--is-disabled{color:#9ca3af!important;cursor:not-allowed!important}.onboarding-org-page .idntySelect__input-container{color:#111827!important;font-size:14px!important}.onboarding-org-page .form-group .error .idntySelect__control,.onboarding-org-page .form-group .error .idntySelect__control:hover,.onboarding-org-page .form-group .error .idntySelect__control.idntySelect__control--is-focused{border-color:#ef4444!important}.onboarding-org-page .form-actions{display:flex;gap:12px;justify-content:space-between;margin-top:32px;padding-top:8px;border-top:none}.onboarding-org-page .btn{height:44px;padding:0 32px;font-size:15px;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .15s ease}.onboarding-org-page .btn.btn-primary{background-color:#111827;color:#fff;flex:1}.onboarding-org-page .btn.btn-primary:hover:not(:disabled){background-color:#1f2937}.onboarding-org-page .btn.btn-primary:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.onboarding-org-page .btn.btn-secondary{background-color:#fff;color:#111827;border:1px solid #e5e7eb}.onboarding-org-page .btn.btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.onboarding-org-page .btn.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.onboarding-org-page .btn.btn-lg{padding:0 40px}@media(max-width:768px){.onboarding-org-page .form-actions{flex-direction:column-reverse}.onboarding-org-page .form-actions .btn{width:100%}.onboarding-org-page .page-title{font-size:28px}}
