:root{color-scheme:light;--primary: #6d3bd7;--on-primary: #ffffff;--primary-container: #e9ddff;--on-primary-container: #23005c;--secondary-container: #e8def8;--on-secondary-container: #1e192b;--tertiary-container: #ffd9e2;--on-tertiary-container: #31101d;--error: #ba1a1a;--error-container: #ffdad6;--on-error-container: #410002;--surface: #fdf8fd;--on-surface: #1c1b1e;--surface-container-lowest: #ffffff;--surface-container-low: #f7f2f7;--surface-container: #f2ecf1;--surface-container-high: #ece7eb;--surface-container-highest: #e6e1e6;--surface-variant: #ded8e3;--on-surface-variant: #49454e;--outline: #7a757f;--outline-variant: #cac4cf;--shadow: rgb(28 27 30 / .1);--primary-shadow: rgb(109 59 215 / .22);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}.dark{color-scheme:dark;--primary: #d0bcff;--on-primary: #3c0091;--primary-container: #5516be;--on-primary-container: #e9ddff;--secondary-container: #4a4458;--on-secondary-container: #e8def8;--tertiary-container: #633b48;--on-tertiary-container: #ffd9e2;--error: #ffb4ab;--error-container: #93000a;--on-error-container: #ffdad6;--surface: #141316;--on-surface: #e6e1e6;--surface-container-lowest: #0f0e11;--surface-container-low: #1c1b1e;--surface-container: #211f22;--surface-container-high: #2b292d;--surface-container-highest: #363438;--surface-variant: #3d3a43;--on-surface-variant: #cac4cf;--outline: #948f99;--outline-variant: #49454e;--shadow: rgb(0 0 0 / .25);--primary-shadow: rgb(0 0 0 / .3)}@media (prefers-color-scheme: dark){:root:not(.light){color-scheme:dark;--primary: #d0bcff;--on-primary: #3c0091;--primary-container: #5516be;--on-primary-container: #e9ddff;--secondary-container: #4a4458;--on-secondary-container: #e8def8;--tertiary-container: #633b48;--on-tertiary-container: #ffd9e2;--error: #ffb4ab;--error-container: #93000a;--on-error-container: #ffdad6;--surface: #141316;--on-surface: #e6e1e6;--surface-container-lowest: #0f0e11;--surface-container-low: #1c1b1e;--surface-container: #211f22;--surface-container-high: #2b292d;--surface-container-highest: #363438;--surface-variant: #3d3a43;--on-surface-variant: #cac4cf;--outline: #948f99;--outline-variant: #49454e;--shadow: rgb(0 0 0 / .25);--primary-shadow: rgb(0 0 0 / .3)}}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;color:var(--on-surface);background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--primary-container) 54%,transparent),transparent 34rem),var(--surface)}button,input{font:inherit}button,label{-webkit-tap-highlight-color:transparent}h1,h2,p{margin-top:0}h1,h2{color:var(--on-surface)}h1{margin-bottom:0;font-size:clamp(1.85rem,4vw,2.55rem);font-weight:650;letter-spacing:-.045em;line-height:1.08}h2{margin-bottom:0;font-size:1.2rem;font-weight:650;letter-spacing:-.025em;line-height:1.2}svg{display:block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.brand-logo,.auth-logo,.loading-logo{fill:currentColor;stroke:none}.app-shell{width:min(1080px,calc(100% - 48px));margin:0 auto;padding:26px 0 42px}.site-header,.auth-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.site-header{min-height:48px;margin-bottom:46px}.brand-lockup,.header-meta,.secure-indicator,.step-heading,.summary-title,.expiry-meta,.field-note,footer p,.auth-header{display:flex;align-items:center}.brand-lockup{gap:16px;color:var(--on-surface-variant)}.brand-logo-wrap{display:block;width:94px;color:var(--primary)}.brand-logo,.auth-logo{width:100%;height:auto}.brand-divider{width:1px;height:24px;background:var(--outline-variant)}.product-name{font-size:.88rem;font-weight:550;letter-spacing:-.01em}.header-meta{gap:14px}.secure-indicator{gap:6px;color:var(--on-surface-variant);font-size:.78rem}.secure-indicator svg,.field-note svg,footer svg{width:15px;height:15px}.state-badge,.limit-chip,.count-chip{display:inline-flex;align-items:center;min-height:30px;padding:6px 12px;border-radius:999px;color:var(--on-primary-container);background:var(--primary-container);font-size:.75rem;font-weight:650;white-space:nowrap}.state-badge.submitted{color:var(--on-secondary-container);background:var(--secondary-container)}.state-badge.revoked,.state-badge.deleted,.state-badge.expired{color:var(--on-error-container);background:var(--error-container)}main{display:grid;gap:18px}.page-intro{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:4px}.eyebrow{margin-bottom:8px;color:var(--primary);font-size:.72rem;font-weight:750;letter-spacing:.1em;line-height:1.2;text-transform:uppercase}.lede,.muted{color:var(--on-surface-variant);line-height:1.5}.page-intro .lede{margin:12px 0 0;font-size:.96rem}.expiry-meta{min-width:220px;gap:12px;padding:12px 16px;border:1px solid var(--outline-variant);border-radius:14px;background:var(--surface-container-low)}.expiry-icon,.summary-icon,.security-illustration{display:grid;flex:0 0 auto;place-items:center;color:var(--primary);background:var(--primary-container)}.expiry-icon{width:34px;height:34px;border-radius:10px}.expiry-icon svg{width:17px;height:17px}.stat-label{display:block;margin-bottom:3px;color:var(--on-surface-variant);font-size:.7rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.expiry-meta strong{display:block;color:var(--on-surface);font-size:.8rem;font-weight:650}.card,.progress-card,.completion-panel{border:1px solid var(--outline-variant);border-radius:20px;background:var(--surface-container-lowest);box-shadow:0 14px 38px var(--shadow)}.card{padding:26px}.progress-card{padding:24px 26px 20px;color:var(--on-primary-container);border-color:color-mix(in srgb,var(--primary) 30%,var(--outline-variant));background:var(--primary-container)}.progress-card h2,.progress-card .eyebrow{color:var(--on-primary-container)}.progress-card .eyebrow{opacity:.72}.progress-card-header,.section-heading,.submit-content{display:flex;align-items:center;justify-content:space-between;gap:18px}.progress-card-header{margin-bottom:22px}.summary-title{gap:14px}.summary-icon{width:42px;height:42px;border-radius:13px;color:var(--on-primary-container);background:color-mix(in srgb,var(--primary-container) 55%,white)}.summary-icon svg{width:22px;height:22px}.progress-ring{display:grid;width:64px;height:64px;flex:0 0 auto;place-items:center;color:var(--on-primary-container);font-size:.78rem;font-weight:750}.progress-ring svg{grid-area:1 / 1;width:64px;height:64px;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:3}.progress-ring .ring-track{stroke:color-mix(in srgb,var(--on-primary-container) 18%,transparent)}.progress-ring .ring-value{stroke:var(--on-primary-container);stroke-linecap:round;transition:stroke-dashoffset .18s ease}.progress-ring span{z-index:1;grid-area:1 / 1}.progress-track{display:block;width:100%;height:8px;margin-top:0;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--on-primary-container) 15%,transparent)}.progress-track>span{display:block;height:100%;border-radius:inherit;background:var(--on-primary-container);transition:width .18s ease}.progress-meta{display:flex;justify-content:space-between;gap:16px;margin-top:10px;color:color-mix(in srgb,var(--on-primary-container) 76%,transparent);font-size:.75rem;font-weight:550}.section-heading{align-items:start;margin-bottom:20px}.step-heading{gap:12px}.step-number{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:50%;color:var(--on-primary);background:var(--primary);font-size:.82rem;font-weight:750}.step-heading .eyebrow{margin-bottom:4px}.limit-chip,.count-chip{color:var(--on-surface-variant);background:var(--surface-container-high);font-size:.7rem;font-weight:600}.file-picker{display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-height:112px;align-items:center;gap:18px;padding:20px;border:1.5px dashed var(--outline);border-radius:16px;color:var(--on-surface);background:var(--surface-container-low);cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.file-picker:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary-container) 24%,var(--surface-container-low));transform:translateY(-1px)}.file-picker.is-disabled{cursor:not-allowed;opacity:.58;transform:none}.file-picker input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%)}.picker-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;color:var(--primary);background:var(--primary-container)}.picker-icon svg{width:24px;height:24px}.picker-copy{display:grid;gap:5px;min-width:0}.picker-copy strong{color:var(--on-surface);font-size:.95rem;font-weight:650}.picker-copy span{overflow:hidden;color:var(--on-surface-variant);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.browse-button{min-height:40px;padding:10px 17px;border-radius:999px;color:var(--on-primary);background:var(--primary);box-shadow:0 5px 14px var(--primary-shadow);font-size:.8rem;font-weight:650}.field-note{gap:6px;margin:14px 2px 0;color:var(--on-surface-variant);font-size:.75rem}.queue-actions,.button-row,.row-actions{display:flex;align-items:center;gap:8px}.queue-card .section-heading{align-items:center}.upload-list{display:grid}.upload-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:72px;padding:14px 0;border-top:1px solid var(--surface-container-high)}.upload-row:first-child{border-top:0}.file-icon{display:grid;width:38px;height:42px;place-items:center;border-radius:10px;color:var(--primary);background:var(--primary-container)}.file-icon svg{width:20px;height:20px}.upload-details{min-width:0}.file-line{display:flex;justify-content:space-between;gap:18px;margin-bottom:5px}.file-line strong{overflow:hidden;color:var(--on-surface);font-size:.88rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.file-line span{flex:0 0 auto;color:var(--on-surface-variant);font-size:.76rem}.upload-details .muted,.error-text{margin:0;font-size:.76rem}.status-dot{width:9px;height:9px;margin:0 8px;border-radius:50%;background:var(--outline)}.status-dot.fingerprinting,.status-dot.uploading{background:var(--tertiary-container);box-shadow:0 0 0 5px color-mix(in srgb,var(--tertiary-container) 42%,transparent)}.status-dot.failed{background:var(--error)}.status-dot.completed{background:var(--primary);box-shadow:0 0 0 5px color-mix(in srgb,var(--primary) 14%,transparent)}.upload-details .progress-track{height:5px;margin-top:9px;background:var(--surface-container-highest)}.upload-details .progress-track>span{background:var(--primary)}.complete-check{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;color:var(--primary);background:var(--primary-container)}.complete-check svg{width:17px;height:17px;stroke-width:2.1}.error-text,.submit-hint{color:var(--error)}.text-button{padding:6px 4px;border:0;color:var(--primary);background:transparent;cursor:pointer;font-size:.78rem;font-weight:650}.text-button.danger{color:var(--error)}.text-button:disabled,.button:disabled{cursor:not-allowed;opacity:.42}.button{min-height:42px;padding:10px 18px;border:1px solid transparent;border-radius:999px;cursor:pointer;font-size:.82rem;font-weight:650;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{color:var(--on-primary);background:var(--primary);box-shadow:0 5px 14px var(--primary-shadow)}.button-primary:hover:not(:disabled){box-shadow:0 7px 18px var(--primary-shadow)}.button-outlined{color:var(--primary);border-color:var(--outline);background:transparent}.button-outlined:hover:not(:disabled){border-color:var(--primary);background:color-mix(in srgb,var(--primary-container) 35%,transparent)}.button-text{color:var(--primary);background:transparent}.button-wide{width:100%;margin-top:16px}.submit-card{border-color:color-mix(in srgb,var(--primary) 30%,var(--outline-variant));background:color-mix(in srgb,var(--primary-container) 28%,var(--surface-container-lowest))}.submit-card .section-heading{margin-bottom:16px}.submit-content{align-items:end;gap:24px;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--primary) 18%,var(--outline-variant))}.submit-title{margin-bottom:5px;color:var(--on-surface);font-size:.92rem;font-weight:650}.submit-content .muted{max-width:620px;margin:0;font-size:.8rem}.submit-confirmation{display:grid;flex:0 0 auto;justify-items:end;gap:8px;color:var(--on-surface);font-size:.8rem}.submit-hint{margin:14px 0 0;font-size:.76rem}.alert{padding:13px 16px;border:1px solid;border-radius:14px;font-size:.82rem;line-height:1.45}.alert-error{color:var(--on-error-container);border-color:color-mix(in srgb,var(--error) 35%,var(--outline-variant));background:var(--error-container)}.alert-info{color:var(--on-surface);border-color:var(--outline-variant);background:var(--surface-container-high)}.completion-panel{display:grid;min-height:330px;padding:52px 28px;place-items:center;align-content:center;text-align:center}.completion-panel h2{max-width:560px;margin:0 0 12px;font-size:clamp(1.45rem,4vw,2rem)}.completion-panel>p:last-child{max-width:540px;margin-bottom:0;color:var(--on-surface-variant);font-size:.9rem;line-height:1.6}.completion-icon{display:grid;width:62px;height:62px;margin-bottom:22px;place-items:center;border-radius:50%;color:var(--primary);background:var(--primary-container)}.completion-icon svg{width:30px;height:30px;stroke-width:1.9}.completion-panel.closed .completion-icon{color:var(--on-error-container);background:var(--error-container)}.completion-panel.closed .eyebrow{color:var(--error)}.centered-shell,.verification-shell{min-height:100vh}.centered-shell{display:grid;padding:24px;place-items:center}.loading-card{display:grid;width:min(300px,100%);justify-items:center;padding:36px;border:1px solid var(--outline-variant);border-radius:20px;color:var(--on-surface-variant);background:var(--surface-container-lowest);box-shadow:0 14px 38px var(--shadow);text-align:center}.loading-logo{width:92px;margin-bottom:30px;color:var(--primary)}.loading-card p{margin-bottom:0;font-size:.84rem}.spinner{width:28px;height:28px;margin-bottom:15px;border:3px solid var(--primary-container);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.verification-shell{width:min(1200px,calc(100% - 48px));margin:0 auto;padding:26px 0 30px}.auth-header{min-height:40px;color:var(--on-surface-variant);font-size:.82rem;font-weight:550}.auth-logo{width:94px;color:var(--primary)}.verification-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,440px);align-items:center;gap:clamp(48px,8vw,120px);width:min(1050px,100%);min-height:calc(100vh - 145px);margin:0 auto}.verification-intro{max-width:510px}.security-illustration{width:58px;height:58px;margin-bottom:30px;border-radius:18px}.security-illustration svg{width:30px;height:30px}.verification-intro h1{max-width:470px;font-size:clamp(2.35rem,5vw,4rem);line-height:1}.verification-intro .lede{max-width:440px;margin:18px 0 0;font-size:1rem}.process-list{display:grid;gap:0;padding:0;margin:36px 0 0;list-style:none}.process-list li{position:relative;display:flex;align-items:start;gap:12px;padding-bottom:20px}.process-list li:last-child{padding-bottom:0}.process-list li:not(:last-child):before{position:absolute;top:28px;bottom:0;left:13px;width:1px;content:"";background:var(--outline-variant)}.process-list li>span{z-index:1;display:grid;width:27px;height:27px;flex:0 0 auto;place-items:center;border:1px solid var(--outline-variant);border-radius:50%;color:var(--primary);background:var(--surface);font-size:.72rem;font-weight:700}.process-list strong,.process-list small{display:block}.process-list strong{margin:3px 0 4px;font-size:.84rem;font-weight:650}.process-list small{color:var(--on-surface-variant);font-size:.77rem}.verification-card{width:100%;padding:38px;border:1px solid var(--outline-variant);border-radius:22px;background:var(--surface-container-lowest);box-shadow:0 18px 52px var(--shadow)}.verification-card h2{margin-bottom:10px;font-size:clamp(1.45rem,3vw,1.85rem)}.verification-card .lede{margin:0 0 26px;font-size:.88rem}.verification-card .alert{margin-bottom:20px}.verification-card form{display:grid}.verification-card label{margin-bottom:8px;color:var(--on-surface);font-size:.78rem;font-weight:650}.pin-input{width:100%;min-height:54px;padding:12px 14px;border:1px solid var(--outline);border-radius:12px;outline:none;color:var(--on-surface);background:var(--surface-container-low);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.25rem;font-weight:700;letter-spacing:.22em;text-align:center;text-transform:uppercase;transition:border-color .14s ease,box-shadow .14s ease}.pin-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.privacy-note{display:flex;align-items:center;justify-content:center;gap:6px;margin:24px 0 0;color:var(--on-surface-variant);font-size:.72rem;text-align:center}.privacy-note svg{width:14px;height:14px;color:var(--primary)}footer{padding:24px 2px 0;color:var(--on-surface-variant);font-size:.74rem;text-align:center}footer p{justify-content:center;gap:6px;margin-bottom:0}.auth-footer{padding-top:0;text-align:left}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}button:focus-visible,label:focus-within{outline:3px solid color-mix(in srgb,var(--tertiary-container) 80%,var(--primary));outline-offset:3px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 760px){.app-shell,.verification-shell{width:min(100% - 28px,620px)}.site-header{align-items:start;margin-bottom:34px}.header-meta{display:grid;justify-items:end;gap:8px}.secure-indicator{display:none}.page-intro{display:grid;align-items:start;gap:18px}.expiry-meta{width:fit-content}.card,.progress-card{padding:20px;border-radius:16px}.file-picker{grid-template-columns:auto minmax(0,1fr);gap:14px}.browse-button{grid-column:2;width:fit-content}.submit-content{display:grid;align-items:start}.submit-content .button-primary,.submit-confirmation{width:100%}.submit-confirmation{justify-items:stretch}.submit-confirmation .button-row .button{flex:1}.verification-layout{display:flex;min-height:0;flex-direction:column;align-items:stretch;gap:28px;padding:64px 0 34px}.verification-intro{max-width:none}.verification-intro h1{max-width:540px;font-size:clamp(2.2rem,12vw,3.4rem)}.process-list{display:none}.verification-card{padding:28px 24px;border-radius:18px}.auth-footer{padding-top:0}}@media (max-width: 480px){.app-shell,.verification-shell{width:min(100% - 20px,620px)}.site-header{margin-bottom:28px}.brand-lockup{gap:10px}.brand-logo-wrap,.auth-logo{width:82px}.brand-divider{height:20px}.product-name{max-width:92px;font-size:.75rem;line-height:1.1}.state-badge{padding-inline:10px;font-size:.7rem}.progress-card-header{gap:12px}.summary-icon{width:36px;height:36px}.summary-icon svg{width:19px;height:19px}.progress-ring,.progress-ring svg{width:56px;height:56px}.file-picker{padding:16px}.picker-copy span{white-space:normal}.upload-row{grid-template-columns:38px minmax(0,1fr) auto;gap:10px}.file-line{display:grid;gap:3px}.row-actions,.queue-actions .button-row{display:grid;justify-items:end}.queue-actions .button{font-size:.74rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
