:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ground:#f6f9fd;--surface:#fff;--ink:#0e1f3d;--ink-2:#51637f;--rule:#e2eaf4;--rule-strong:#7d8ea8;--brand:#0b3d91;--brand-dark:#082c6b;--accent:#1864cc;--accent-hover:#1452a8;--accent-soft:#e8f1fd;--accent-ink:#fff;--focus:#1864cc;--ok:#16733f;--ok-soft:#e5f4ec;--warn:#8a5a06;--warn-soft:#fbf0da;--crit:#b33434;--crit-soft:#fae9e9;--color-primary:var(--brand);--color-primary-dark:var(--brand-dark);--color-secondary:var(--accent);--color-secondary-hover:var(--accent-hover);--color-secondary-soft:var(--accent-soft);--color-bg:var(--ground);--color-text:var(--ink);--color-text-secondary:var(--ink-2);--color-card:var(--surface);--color-border:var(--rule);--color-warning:var(--warn);--color-warning-soft:var(--warn-soft);--color-danger:var(--crit);--color-danger-soft:var(--crit-soft);--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-pill:999px;--shadow-card:0 1px 2px #0b3d910d, 0 4px 16px #0b3d9112;--shadow-raised:0 8px 28px #0b3d9124;--font-family:"Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--t-display:clamp(2.25rem, 1.4rem + 3vw, 3.5rem);--t-h1:1.5rem;--t-h2:1.25rem;--t-body:1rem;--t-small:.9375rem;--t-meta:.8125rem;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-family);color:var(--ink);background-color:var(--ground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;line-height:1.5}h1,h2,h3,h4,p{margin:0}button{font-family:inherit}img,video{max-width:100%;display:block}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}#root{flex-direction:column;min-height:100dvh;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button:not(:disabled),[role=button],select:not(:disabled),summary,label[for],input[type=checkbox]:not(:disabled),input[type=radio]:not(:disabled){cursor:pointer}button:disabled,select:disabled,input:disabled{cursor:not-allowed}.form-input,.sh-form-input,.sh-form-select,.sm-select,.hr-company-select,.as-input{border-color:var(--rule-strong)}@media (pointer:coarse),(width<=760px){.btn,.sm-actions-btn,.sm-tab,.hr-subtab,.emp-page-btn,.st-nav-item,.sh-day,.sm-select,.sh-form-input,.sh-form-select,.form-input,.hr-nav-item{min-height:44px}.sm-modal-close,.hr-icon-btn,.emp-page-btn{min-width:44px;min-height:44px}}.skel{border-radius:var(--radius-sm);background:linear-gradient(90deg, color-mix(in srgb, var(--ink-2) 10%, transparent) 0%, color-mix(in srgb, var(--ink-2) 18%, transparent) 50%, color-mix(in srgb, var(--ink-2) 10%, transparent) 100%);background-size:200% 100%;animation:1.3s ease-in-out infinite skel-shimmer;display:block}.skel-line{height:12px}.skel-line.is-lg{height:22px}.skel-line.is-xl{height:30px}.skel-circle{border-radius:50%}.skel-card{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.skel-row{align-items:center;gap:12px;display:flex}.skel-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.skel-stack{flex-direction:column;gap:16px;display:flex}.skel-page{background:var(--ground);min-height:100dvh;display:flex}.skel-side{flex-direction:column;flex-shrink:0;gap:14px;width:248px;padding:22px 16px;display:flex}.skel-main{flex-direction:column;flex:1;gap:18px;min-width:0;padding:28px 32px;display:flex}.skel-center{flex:1;place-items:center;padding:24px;display:grid}@keyframes skel-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skel{animation:none}}@media (width<=720px){.skel-page{flex-direction:column}.skel-side{flex-direction:row;width:auto;padding:12px 16px}.skel-main{padding:20px 16px}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.reveal-pending{opacity:0;transform:translateY(14px)}.reveal-in{opacity:1;transition:opacity .35s cubic-bezier(.25,.46,.45,.94),transform .35s cubic-bezier(.25,.46,.45,.94);transition-delay:calc(var(--reveal-i,0) * 60ms);transform:none}}html,body{overflow-x:clip}h1,h2,h3,p,li,dd,.step-description,.review-value{overflow-wrap:break-word}img,video,canvas{max-width:100%}a.btn,a.btn:hover{text-decoration:none}@media (pointer:coarse),(width<=760px){input:not([type=radio]):not([type=checkbox]):not([type=range]):not([type=color]),select,textarea{font-size:max(16px,1em)!important}button,[role=button],[role=tab],[role=radio],a.btn,.btn,select,input:not([type=radio]):not([type=checkbox]):not([type=range]):not([type=color]):not([type=hidden]){min-height:44px!important}:is(:where(label):has(>input[type=radio]),:where(label):has(>input[type=checkbox])){min-height:44px}select{min-width:0!important;max-width:min(100%,100vw - 32px)!important}.landing-back-link,.shop-add-link,.hr-link,footer a,nav a,.legal-nav a,.landing-footer a{align-items:center;min-height:44px!important;display:inline-flex!important}}@media (width<=640px){html .registration-page,html .landing-page{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));padding-bottom:max(16px, env(safe-area-inset-bottom))}html .step-actions,html .success-actions{flex-direction:column-reverse;gap:10px}html .step-actions .btn,html .success-actions .btn{width:100%}html .camera-controls{flex-direction:column;gap:10px}html .camera-controls .btn{width:100%}html .scanner-frame,html .camera-frame{aspect-ratio:3/4;width:100%;max-width:none}html .scanner-corners:before,html .scanner-corners:after{width:72%}html .hr-report-actions{flex-wrap:wrap;gap:10px;width:100%;min-width:0;display:flex}html .hr-report-actions>*{max-width:100%}html .hr-report-actions select,html .hr-report-actions .hr-report-btn{flex:100%}html .table-scroll,html .sm-table-wrap,html .at-table-wrap{max-width:100%;overflow-x:auto}}@media (prefers-reduced-motion:reduce){.scanner-frame *,.is-scanning *{animation:none!important}}.registration-page{flex-direction:column;flex:1;align-items:center;padding:24px 16px 48px;display:flex}.registration-shell{flex-direction:column;gap:20px;width:100%;max-width:640px;display:flex}.registration-brand{color:var(--color-primary);letter-spacing:.02em;justify-content:center;align-items:center;gap:10px;padding:8px 0 4px;font-weight:700;display:flex}.registration-brand-mark{background:var(--color-primary);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-size:15px;font-weight:800;display:grid}.registration-brand-with-company{justify-content:space-between}.registration-brand-name{align-items:center;gap:10px;display:inline-flex}.registration-company-badge{background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:999px;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:inline-flex}.registration-company-badge .company-logo{border-radius:50%;width:34px;height:34px}.registration-company-name{color:var(--color-primary);font-size:13px;font-weight:700}.progress{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:16px 20px}.progress-list{justify-content:space-between;align-items:flex-start;gap:4px;margin:0;padding:0;list-style:none;display:flex}.progress-step{text-align:center;flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;position:relative}.progress-step:before,.progress-step:after{content:"";background:var(--color-border);z-index:0;width:50%;height:2px;position:absolute;top:15px}.progress-step:before{left:0}.progress-step:after{right:0}.progress-step:first-child:before,.progress-step:last-child:after{display:none}.progress-step.is-complete:before,.progress-step.is-complete:after,.progress-step.is-current:before{background:var(--color-secondary)}.progress-dot{background:var(--color-card);border:2px solid var(--color-border);width:32px;height:32px;color:var(--color-text-secondary);z-index:1;border-radius:50%;place-items:center;font-size:13px;font-weight:600;transition:border-color .2s,background .2s,color .2s;display:grid;position:relative}.progress-step.is-current .progress-dot{border-color:var(--color-secondary);color:var(--color-secondary);box-shadow:0 0 0 4px var(--color-secondary-soft)}.progress-step.is-complete .progress-dot{background:var(--color-secondary);border-color:var(--color-secondary);color:#fff}.progress-label{color:var(--color-text-secondary);font-size:12px;font-weight:500;line-height:1.2}.progress-step.is-current .progress-label{color:var(--color-primary);font-weight:600}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:28px}@media (prefers-reduced-motion:no-preference){.card{animation:step-enter .24s var(--ease-out)}}@keyframes step-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.step-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-secondary);margin-bottom:6px;font-size:12px;font-weight:700}.step-title{color:var(--color-primary);margin-bottom:8px;font-size:24px;font-weight:700;line-height:1.25}.step-description{color:var(--color-text-secondary);margin-bottom:24px;font-size:15px}.step-actions{gap:12px;margin-top:28px;display:flex}.step-actions .btn{flex:1}.btn{border-radius:var(--radius-md);cursor:pointer;min-height:48px;transition:background .16s var(--ease-out), border-color .16s var(--ease-out), color .16s var(--ease-out), box-shadow .16s var(--ease-out), transform .12s var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:13px 20px;font-size:15px;font-weight:600;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-raised)}.btn-secondary{background:var(--surface);border-color:var(--rule);color:var(--brand)}.btn-secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-outline{border-color:var(--accent);color:var(--accent);background:0 0}.btn-outline:hover:not(:disabled){background:var(--accent-soft)}.btn-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.landing-page{background:var(--ground);flex-direction:column;min-height:100vh;padding:28px 24px 0;display:flex}.landing-inner{flex-direction:column;flex:1;width:100%;max-width:1120px;margin:0 auto;display:flex}.landing-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:56px;display:flex}.landing-brand{color:var(--brand);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:10px;font-size:17px;font-weight:800;display:inline-flex}.landing-secure-badge{background:var(--surface);border:1px solid var(--rule);color:var(--accent);border-radius:var(--radius-pill);box-shadow:var(--shadow-card);white-space:nowrap;align-items:center;gap:7px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.landing-main{flex:1;grid-template-columns:1.05fr 1fr;align-items:center;gap:64px;display:grid}.landing-title{font-size:var(--t-display);letter-spacing:-.03em;color:var(--brand);max-width:12ch;margin:0 0 20px;font-weight:800;line-height:1.04}.landing-description{color:var(--ink-2);max-width:46ch;margin:0 0 32px;font-size:1.125rem;line-height:1.6}.landing-points{flex-direction:column;gap:14px;margin:0 0 32px;padding:0;list-style:none;display:flex}.landing-points li{color:var(--ink);align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex}.landing-point-icon{background:var(--ok-soft);width:26px;height:26px;color:var(--ok);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.landing-note{background:var(--accent-soft);border-left:3px solid var(--accent);color:var(--brand);border-radius:var(--radius-sm);align-items:flex-start;gap:10px;max-width:46ch;padding:14px 16px;font-size:14px;line-height:1.5;display:flex}.landing-note svg{color:var(--accent);flex-shrink:0;margin-top:1px}.landing-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);padding:32px 28px}.landing-card-title{font-size:var(--t-h1);color:var(--brand);letter-spacing:-.01em;margin:0 0 6px;font-weight:800}.landing-card-subtitle{color:var(--color-text-secondary);margin:0 0 22px;font-size:14px}.landing-options{flex-direction:column;gap:12px;margin-bottom:22px;display:flex}.landing-option{text-align:left;background:var(--surface);border:2px solid var(--rule);border-radius:var(--radius-md);cursor:pointer;width:100%;transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out);align-items:center;gap:14px;padding:14px 16px;display:flex}.landing-option:hover{border-color:var(--accent)}.landing-option.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.landing-option-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.landing-option-name{color:var(--brand);font-size:15px;font-weight:700}.landing-option-tagline{color:var(--ink-2);font-size:13px}.landing-option-radio{border:2px solid var(--rule);color:#0000;width:24px;height:24px;transition:background .16s var(--ease-out), border-color .16s var(--ease-out), color .16s var(--ease-out);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.landing-option.is-selected .landing-option-radio{background:var(--accent);border-color:var(--accent);color:#fff}.landing-continue{width:100%}.landing-card-note{color:var(--color-text-secondary);justify-content:center;align-items:center;gap:7px;margin:14px 0 0;font-size:13px;display:flex}.landing-back-link{border-radius:var(--radius-sm);color:var(--ink-2);cursor:pointer;transition:color .16s var(--ease-out);background:0 0;border:1px solid #0000;margin:14px auto 0;padding:6px 10px;font-size:13px;font-weight:600;display:block}.landing-back-link:hover{color:var(--color-secondary)}.landing-footer{border-top:1px solid var(--rule);color:var(--ink-2);justify-content:space-between;align-items:center;gap:12px;margin-top:72px;padding:20px 0 24px;font-size:13px;display:flex}.company-logo{color:#fff;letter-spacing:.03em;border-radius:14px;flex-shrink:0;place-items:center;width:52px;height:52px;font-size:15px;font-weight:800;display:grid;overflow:hidden}.company-logo-img{background:#0a1628;padding:4px}.company-logo-img img{object-fit:contain;width:100%;height:100%}.company-logo-double-a{border:1px solid var(--color-border);background:#fff}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-field{flex-direction:column;gap:6px;display:flex}.form-field.is-full{grid-column:1/-1}.form-label{color:var(--color-primary);font-size:13px;font-weight:600}.form-label .optional-tag{color:var(--color-text-secondary);margin-left:6px;font-weight:500}.form-input,.form-select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-card);width:100%;color:var(--color-text);min-height:48px;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.form-input::placeholder{color:#9aa79f}.form-input:focus,.form-select:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px var(--color-secondary-soft);outline:none}.form-input.has-error,.form-select.has-error{border-color:var(--color-danger)}.form-input.has-error:focus,.form-select.has-error:focus{box-shadow:0 0 0 3px var(--color-danger-soft)}.field-error{color:var(--color-danger);align-items:center;gap:5px;font-size:12.5px;display:flex}.form-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);border-top:1px solid var(--color-border);grid-column:1/-1;margin-top:8px;padding-top:16px;font-size:13px;font-weight:700}.payment-methods{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.payment-method{background:var(--surface);border:2px solid var(--rule);border-radius:var(--radius-md);color:var(--ink);cursor:pointer;transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out);align-items:center;gap:10px;padding:12px 14px;font-size:14.5px;font-weight:600;display:flex}.payment-method:hover{border-color:var(--accent)}.payment-method.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.payment-method-radio{border:2px solid var(--rule);color:#0000;width:20px;height:20px;transition:background .16s var(--ease-out), border-color .16s var(--ease-out), color .16s var(--ease-out);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.payment-method.is-selected .payment-method-radio{background:var(--accent);border-color:var(--accent);color:#fff}@media (width<=560px){.payment-methods{grid-template-columns:1fr}}.shop-options{flex-direction:column;gap:8px;max-height:260px;margin-top:10px;display:flex;overflow-y:auto}.shop-options-empty{color:var(--ink-2);margin:0;padding:12px 4px;font-size:13.5px}.shop-option{text-align:left;background:var(--surface);border:2px solid var(--rule);border-radius:var(--radius-md);cursor:pointer;width:100%;transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out);align-items:center;gap:12px;padding:12px 14px;display:flex}.shop-option:hover{border-color:var(--accent)}.shop-option.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.shop-option-radio{border:2px solid var(--rule);color:#0000;width:20px;height:20px;transition:background .16s var(--ease-out), border-color .16s var(--ease-out), color .16s var(--ease-out);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.shop-option.is-selected .shop-option-radio{background:var(--accent);border-color:var(--accent);color:#fff}.shop-option-text{flex-direction:column;gap:1px;min-width:0;display:flex}.shop-option-name{color:var(--brand);font-size:14.5px;font-weight:700}.shop-option-address{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.camera-frame{border-radius:var(--radius-lg);background:var(--color-primary-dark);aspect-ratio:4/3;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.camera-frame video,.camera-frame img{object-fit:cover;width:100%;height:100%}.camera-frame .camera-placeholder{color:#ffffffbf;text-align:center;flex-direction:column;align-items:center;gap:10px;padding:24px;font-size:14px;display:flex}.face-guide-oval{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.face-guide-oval:before{content:"";aspect-ratio:3/4;border:3px dashed #ffffffa6;border-radius:50%;width:46%}.camera-controls{gap:12px;margin-top:16px;display:flex}.camera-controls .btn{flex:1}.flip-camera-btn{justify-content:center;align-items:center;gap:8px;display:inline-flex}.capture-btn{align-items:center;gap:10px;display:inline-flex}.capture-btn .shutter{border:3px solid;border-radius:50%;width:18px;height:18px}.instructions-list{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.instructions-list li{color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:flex-start;gap:10px;padding:10px 12px;font-size:13.5px;display:flex}.instructions-list .tip-icon{color:var(--color-secondary);flex-shrink:0;margin-top:1px}.privacy-notice{background:var(--color-secondary-soft);border-radius:var(--radius-md);color:var(--color-primary);border:1px solid #c9ddfa;align-items:flex-start;gap:12px;margin-top:20px;padding:14px 16px;font-size:13px;line-height:1.5;display:flex}.privacy-notice svg{flex-shrink:0;margin-top:2px}.camera-error{text-align:center;background:var(--color-danger-soft);border-radius:var(--radius-lg);color:var(--color-text);border:1px solid #f0cfcf;flex-direction:column;align-items:center;gap:12px;padding:32px 20px;display:flex}.camera-error .error-icon{width:48px;height:48px;color:var(--color-danger);background:#fff;border-radius:50%;place-items:center;display:grid}.camera-error h3{color:var(--color-danger);font-size:16px}.camera-error p{color:var(--color-text-secondary);max-width:420px;font-size:14px}.role-note{color:var(--color-text-secondary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:flex-start;gap:10px;margin-top:18px;padding:12px 14px;font-size:13px;display:flex}.review-section{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.review-section+.review-section{margin-top:14px}.review-section-header{background:var(--color-bg);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.review-section-header h3{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);font-size:13px;font-weight:700}.edit-btn{color:var(--color-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:13px;font-weight:600}.edit-btn:hover{background:var(--color-secondary-soft)}.review-rows{padding:6px 16px 14px}.review-row{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:16px;padding:9px 0;font-size:14px;display:flex}.review-row:last-child{border-bottom:none}.review-row .review-label{color:var(--color-text-secondary);flex-shrink:0}.review-row .review-value{text-align:right;word-break:break-word;font-weight:500}.review-photo-wrap{justify-content:center;padding:16px;display:flex}.review-photo{object-fit:cover;border:3px solid var(--color-secondary-soft);border-radius:50%;width:140px;height:140px}.confirm-check{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;align-items:flex-start;gap:12px;margin-top:22px;padding:14px 16px;font-size:14px;line-height:1.5;display:flex}.confirm-check input{width:20px;height:20px;accent-color:var(--color-secondary);cursor:pointer;flex-shrink:0;margin-top:2px}.submit-error{background:var(--color-danger-soft);color:var(--color-danger);border-radius:var(--radius-md);border:1px solid #f0cfcf;align-items:flex-start;gap:10px;margin-top:16px;padding:13px 16px;font-size:14px;display:flex}.face-mismatch{background:var(--color-danger-soft);border-radius:var(--radius-md);border:1px solid #f0cfcf;align-items:flex-start;gap:12px;margin-top:16px;padding:14px 16px;display:flex}.face-mismatch-icon{background:var(--color-danger);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.face-mismatch h3{color:var(--color-danger);margin:0 0 4px;font-size:15px;font-weight:700}.face-mismatch p{color:var(--color-text);margin:0;font-size:13px;line-height:1.5}.success-card{text-align:center}.success-icon{background:var(--ok);color:#fff;width:76px;height:76px;box-shadow:0 0 0 10px var(--ok-soft);border-radius:50%;place-items:center;margin:4px auto 18px;display:grid;position:relative}.success-icon:after{content:"";border:2px solid var(--ok);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-10px}@media (prefers-reduced-motion:no-preference){.success-card{animation:punch-in .32s var(--ease-out)}.success-icon{animation:punch-stamp .32s var(--ease-out)}.success-icon:after{animation:punch-ring .6s var(--ease-out) .1s}}@keyframes punch-in{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes punch-stamp{0%{transform:scale(.9)}to{transform:scale(1)}}@keyframes punch-ring{0%{opacity:.7;transform:scale(.9)}to{opacity:0;transform:scale(1.5)}}.success-details{border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:left;margin:24px 0;overflow:hidden}.success-row{background:var(--color-card);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding:13px 18px;font-size:14.5px;display:flex}.success-row:last-child{border-bottom:none}.success-row .review-label{color:var(--color-text-secondary)}.success-row .review-value{color:var(--color-primary);text-align:right;font-weight:600}.staff-id-value{font-family:var(--font-mono);letter-spacing:.04em;font-size:16px;font-weight:600}.status-badge{background:var(--ok-soft);color:var(--ok);letter-spacing:.04em;border-radius:var(--radius-pill);white-space:nowrap;border:1px solid;align-items:center;gap:7px;padding:4px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px}.status-badge.status-late{background:var(--warn-soft);color:var(--warn)}.status-badge.status-late:before{border-radius:2px}.status-badge.status-absent{background:var(--crit-soft);color:var(--crit)}.status-badge.status-absent:before{background:0 0;border:2px solid;border-radius:50%;width:6px;height:6px}.late-notice{background:var(--color-warning-soft);color:var(--color-text);border-radius:var(--radius-md);border:1px solid #f3e2c0;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 14px;font-size:13.5px;line-height:1.5;display:flex}.late-notice svg{color:var(--color-warning);flex-shrink:0;margin-top:1px}.attempts-notice{background:var(--color-danger-soft);color:var(--color-text);border-radius:var(--radius-md);border:1px solid #f0cfcf;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 14px;font-size:13.5px;line-height:1.5;display:flex}.attempts-notice svg{color:var(--color-danger);flex-shrink:0;margin-top:1px}.success-message{color:var(--color-text-secondary);background:var(--color-warning-soft);border-radius:var(--radius-md);text-align:left;border:1px solid #f3e2c0;margin-bottom:24px;padding:14px 16px;font-size:14px;line-height:1.55}.success-actions{flex-direction:column;gap:10px;display:flex}.copied-feedback{color:var(--color-secondary)}.welcome-hero{text-align:center;padding:12px 0 4px}.welcome-icon{background:var(--color-secondary-soft);width:72px;height:72px;color:var(--color-secondary);border-radius:20px;place-items:center;margin:0 auto 20px;display:grid}.home-actions{flex-direction:column;gap:14px;margin-top:24px;display:flex}.home-option{text-align:left;background:var(--color-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;align-items:center;gap:16px;padding:18px 20px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.home-option:hover{border-color:var(--color-secondary);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.home-option-icon{background:var(--color-secondary-soft);width:52px;height:52px;color:var(--color-secondary);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.home-option-text{flex-direction:column;flex:1;gap:3px;display:flex}.home-option-title{color:var(--color-primary);font-size:16px;font-weight:700}.home-option-desc{color:var(--color-text-secondary);font-size:13.5px;line-height:1.45}.home-option-arrow{color:var(--color-secondary);flex-shrink:0;font-size:20px;font-weight:700}.scanner-frame{border-radius:var(--radius-lg);background:var(--color-primary-dark);aspect-ratio:4/3;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.scanner-frame video{object-fit:cover;width:100%;height:100%}.scanner-corners{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.scanner-corners:before{content:"";aspect-ratio:3/4;border-radius:18px;width:52%;box-shadow:0 0 0 2px #ffffff40}.scanner-corners:after{content:"";aspect-ratio:3/4;color:#fff;background-color:#0000;background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);background-position:0 0,0 0,100% 0,100% 0,0 100%,0 100%,100% 100%,100% 100%;background-repeat:no-repeat;background-size:26px 3px,3px 26px,26px 3px,3px 26px,26px 3px,3px 26px,26px 3px,3px 26px;background-attachment:scroll,scroll,scroll,scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box,border-box,border-box;border-radius:18px;width:52%;position:absolute}.scanner-frame.is-scanning .scanner-corners:after{color:var(--color-secondary)}.scan-line{background:linear-gradient(90deg, transparent, var(--color-secondary), transparent);height:3px;box-shadow:0 0 12px var(--color-secondary);pointer-events:none;border-radius:3px;animation:1.4s ease-in-out infinite scan-sweep;position:absolute;left:24%;right:24%}@keyframes scan-sweep{0%,to{top:22%}50%{top:74%}}.scan-status{color:#fff;white-space:nowrap;background:#082c6bd9;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.scan-status .btn-spinner{border-width:2px;width:14px;height:14px}.verified-employee{text-align:left;align-items:flex-start;gap:18px;margin:24px 0;display:flex}.verified-photo{object-fit:cover;border:3px solid var(--color-secondary-soft);width:96px;height:96px;box-shadow:var(--shadow-card);border-radius:50%;flex-shrink:0}@media (width<=900px){.landing-main{grid-template-columns:1fr;gap:40px}.landing-header{flex-wrap:wrap;row-gap:12px;margin-bottom:36px}.landing-title,.landing-description,.landing-note{max-width:none}.landing-footer{margin-top:48px}}@media (width<=560px){.registration-page{padding:16px 12px 40px}.landing-page{padding:18px 14px 0}.landing-card{padding:24px 18px}.landing-footer{text-align:center;flex-direction:column;gap:4px}.registration-brand-with-company{flex-direction:column;gap:10px}.card{padding:22px 18px}.step-title{font-size:21px}.form-grid,.instructions-list{grid-template-columns:1fr}.progress{padding:14px 10px}.progress-label{font-size:12px}.progress-dot{width:28px;height:28px;font-size:12px}.progress-step:before,.progress-step:after{top:13px}.step-actions{flex-direction:column-reverse}.review-row{flex-direction:column;gap:2px}.review-row .review-value{text-align:left}.verified-employee{flex-direction:column;align-items:center}}.shop-fieldset{border:none;min-width:0;margin:0;padding:0}.shop-fieldset legend{margin-bottom:6px;padding:0}.required-tag{background:var(--accent-soft);color:var(--brand);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:12px;font-weight:700}.shop-help{color:var(--ink-2);margin:0 0 8px;font-size:13px;line-height:1.5}.shop-add-link{color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:none;margin-top:8px;padding:6px 0;font-family:inherit;font-size:14px;font-weight:700}.shop-add-link:hover{text-decoration:underline}.shop-add-link:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.shop-new{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--ground);flex-direction:column;gap:8px;padding:14px;display:flex}.shop-new-grid{grid-template-columns:1fr 1fr;gap:10px 12px;display:grid}.shop-new-grid .form-field{margin:0}.shop-new-full{grid-column:1/-1}.shop-duplicate{border-radius:var(--radius-sm);background:var(--warn-soft);color:var(--ink);margin:0;padding:8px 12px;font-size:13.5px}.shop-duplicate .shop-add-link{margin:0;padding:0;font-size:13.5px}@media (width<=560px){.shop-new-grid{grid-template-columns:1fr}}.visit-mode{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.visit-mode-option{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:8px 14px;font-size:14px;font-weight:600;display:inline-flex}.visit-mode-option.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--brand)}.visit-location{border-radius:var(--radius-md);background:var(--ground);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 4px;padding:10px 14px;font-size:14px;display:flex}.visit-location.is-ok{background:var(--ok-soft);color:var(--ok);font-weight:600}.visit-location.is-error{background:var(--warn-soft);color:var(--warn);font-weight:600}.visit-location-retry{min-height:36px;margin-left:auto;padding:6px 12px}.visit-today{margin-bottom:16px}.visit-today-list{flex-wrap:wrap;gap:8px;display:flex}.visit-today-shop{border:1px solid var(--rule-strong);background:var(--surface);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;border-radius:12px;padding:8px 14px;font-weight:600}.visit-today-shop:hover{border-color:var(--accent)}.visit-today-shop.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--brand)}.visit-today-shop:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.visit-today-hint{color:var(--ink-2);margin:8px 0 0;font-size:13px}.landing-page{--ink-2:#3f4e66;--accent:#1452a8;--focus:#1452a8;--l-edge:#102a5a14;--l-highlight:inset 0 1px 0 #fffffff2;--l-shadow:0 1px 1px #102a5a0f, 0 3px 6px #102a5a0f, 0 18px 36px -12px #102a5a38;--l-shadow-lift:0 2px 2px #102a5a0f, 0 10px 18px #102a5a14, 0 28px 44px -16px #102a5a47;--l-blue-top:#1d68d6;--l-blue-bottom:#1452a8;--l-blue-edge:#0d3f86;isolation:isolate;background:radial-gradient(1100px 560px at 85% -10%,#1d68d61f,#0000 60%),radial-gradient(900px 480px at -10% 110%,#1d68d617,#0000 60%),linear-gradient(#eef3fb,#e2eaf6);min-height:100dvh;position:relative}.landing-page:before{content:"";z-index:-1;pointer-events:none;opacity:.16;background:url(/assets/double-a-watermark-ChKZw1wL.webp) 50% 52%/min(96vw,1180px) no-repeat;position:fixed;inset:0}@media print{.landing-page:before{display:none}}.landing-page .registration-brand{color:var(--brand)}.landing-page .registration-brand-mark{background:linear-gradient(180deg, var(--l-blue-top), var(--l-blue-bottom));color:#fff;box-shadow:inset 0 1px 0 #ffffff59, 0 2px 0 var(--l-blue-edge), 0 6px 12px #1452a84d}.landing-page .card{border:1px solid var(--l-edge);box-shadow:var(--l-highlight), var(--l-shadow);background:linear-gradient(#ffffffc7,#f5f8fdc7);border-radius:24px}.landing-page .welcome-icon{background:linear-gradient(180deg, var(--l-blue-top), var(--l-blue-bottom));color:#fff;box-shadow:inset 0 1px 0 #ffffff59, 0 3px 0 var(--l-blue-edge), 0 10px 20px -6px #1452a880}.landing-page .step-title{color:var(--brand)}.landing-page .step-description{color:var(--ink-2)}.landing-page .home-option{box-shadow:var(--l-highlight), 0 2px 0 #c9d6ea, 0 8px 16px -8px #102a5a33;background:linear-gradient(#ffffffd1,#f3f7fdd1);border:1px solid #d3deee;border-radius:18px}.landing-page .home-option:hover{border-color:color-mix(in srgb, var(--accent) 45%, #d3deee);box-shadow:var(--l-highlight), 0 2px 0 #c2d1e8, var(--l-shadow-lift)}.landing-page .home-option:active{box-shadow:inset 0 2px 4px #102a5a1a,inset 0 1px 1px #102a5a0f}.landing-page .home-option-icon{color:var(--accent);background:radial-gradient(circle at 35% 30%,#fff,#dbe6f6 75%);box-shadow:inset 0 -2px 4px #102a5a14,0 2px 6px #102a5a1f}.landing-page .home-option-title{color:var(--brand)}.landing-page .home-option-desc{color:var(--ink-2)}.landing-page .home-option-arrow{color:var(--accent)}@media (prefers-reduced-motion:no-preference){.landing-page .home-option{transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s cubic-bezier(.2,.8,.2,1),border-color .2s}.landing-page .home-option:hover{transform:translateY(-3px)}.landing-page .home-option:active{transform:translateY(1px)}}.landing-page :focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media (width<=560px){.landing-page:before{background-position:50% 55%;background-size:150vw}}.install-card{border:1px solid var(--rule);background:var(--accent-soft);color:var(--ink);border-radius:14px;align-items:center;gap:12px;margin:20px 0 4px;padding:12px 14px;display:flex}.install-card-icon{border-radius:10px;flex:none}.install-card-text{flex-direction:column;flex:1;gap:2px;min-width:0;font-size:14px;line-height:1.4;display:flex}.install-card-text span{color:var(--ink-2);font-size:13px}.install-card-btn{flex:none;min-height:44px}.legal-links{flex-wrap:wrap;justify-content:center;gap:4px 16px;margin:16px 0 0;font-size:13px;display:flex}.legal-links a{color:var(--ink-2);align-items:center;min-height:32px;display:inline-flex}.legal-links a:hover{color:var(--accent)}
