:root{--vp-bg: #f4f6f8;--vp-ink: #101828;--vp-muted: #667085;--vp-line: #d9dee7;--vp-soft-line: #e8ebf1;--vp-panel: #ffffff;--vp-panel-soft: #f8fafc;--vp-brand: #2563eb;--vp-brand-deep: #1d4ed8;--vp-teal: #0f766e;--vp-amber: #f59e0b;--vp-green: #15803d;--vp-green-soft: #dcfce7;--vp-red: #b91c1c;--vp-red-soft: #fee2e2;--vp-blue-soft: #eef4ff;--vp-radius: 8px;--vp-shadow: 0 16px 44px rgba(15, 23, 42, .09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--vp-bg);color:var(--vp-ink)}button,input,select{font:inherit}button{cursor:pointer}.vp-shell{width:min(76rem,100%);margin:0 auto;padding:1rem 1rem 5rem;color:var(--vp-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.vp-shell--mid{width:min(68rem,100%)}.vp-shell--narrow{width:min(54rem,100%)}.vp-shell--auth{display:grid;align-items:center;min-height:100dvh;width:min(72rem,100%)}.vp-top,.vp-hero,.vp-panel,.vp-card,.vp-state,.vp-progress-card{border:1px solid var(--vp-line);border-radius:var(--vp-radius);background:var(--vp-panel)}.vp-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem;background:#ffffffd1;padding:.875rem 1rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.vp-brand,.vp-actions,.vp-inline-actions,.vp-meta-row,.vp-pill-row{display:flex;align-items:center}.vp-brand{min-width:0;gap:.625rem}.vp-mark{display:grid;place-items:center;flex:0 0 auto;width:2.125rem;height:2.125rem;border-radius:var(--vp-radius);background:linear-gradient(135deg,var(--vp-brand),var(--vp-teal));color:#fff;font-size:.875rem;font-weight:900}.vp-mark--image{display:inline-flex;width:auto;background:transparent}.vp-mark--image img{display:block;width:auto;max-width:none;height:2.125rem}.vp-brand strong,.vp-brand span{display:block}.vp-brand span,.vp-muted,.vp-meta,.vp-lede{color:var(--vp-muted)}.vp-brand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vp-brand span{overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.vp-actions{justify-content:flex-end;gap:.5rem}.vp-locale{display:flex;align-items:center;gap:.5rem;color:#344054;font-size:.8125rem;font-weight:800}.vp-locale select,.vp-input{border:1px solid var(--vp-line);border-radius:var(--vp-radius);background:#fff;color:var(--vp-ink);font:inherit}.vp-locale select{padding:.45rem .55rem;font-weight:800}.vp-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin:-.25rem 0 1rem}.vp-tab,.vp-button,.vp-button-secondary,.vp-button-quiet,.vp-icon-link,.vp-chip{display:inline-flex;align-items:center;justify-content:center;width:fit-content;border-radius:var(--vp-radius);font-weight:850;text-decoration:none}.vp-tab{min-height:2.25rem;border:1px solid transparent;background:transparent;color:#344054;padding:.45rem .75rem}.vp-tab[aria-current=page],.vp-tab:hover{border-color:#cfe0ff;background:var(--vp-blue-soft);color:var(--vp-brand-deep)}.vp-button,.vp-button-secondary,.vp-button-quiet{min-height:2.65rem;border:1px solid var(--vp-brand-deep);padding:.65rem .95rem}.vp-button{background:var(--vp-brand-deep);color:#fff}.vp-button--teal{border-color:var(--vp-teal);background:var(--vp-teal)}.vp-button-secondary,.vp-button-quiet{background:#fff;color:#1f2937}.vp-button-quiet{min-height:2.15rem;border-color:var(--vp-line);padding:.45rem .7rem;font-size:.82rem}.vp-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-bottom:1rem;overflow:hidden;padding:1rem}.vp-hero-copy{display:grid;align-content:center;gap:.6rem;min-width:0}.vp-eyebrow{margin:0;color:var(--vp-brand-deep);font-size:.75rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.vp-title{margin:0;overflow-wrap:anywhere;font-size:clamp(1.85rem,4vw,3rem);line-height:1.08;letter-spacing:0}.vp-subtitle{margin:0;color:var(--vp-muted);font-size:clamp(1rem,2vw,1.15rem);line-height:1.5}.vp-inline-actions{flex-wrap:wrap;gap:.5rem}.vp-meta-row{flex-wrap:wrap;gap:.5rem;color:var(--vp-muted);font-size:.8125rem}.vp-progress-card{display:grid;gap:.55rem;align-self:stretch;background:#f0f6ff;padding:.75rem}.vp-progress-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--vp-brand-deep);font-size:.75rem;font-weight:900}.vp-meter{overflow:hidden;height:.5rem;border-radius:999px;background:#dbeafe}.vp-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--vp-brand),var(--vp-teal))}.vp-panel{display:grid;gap:.85rem;padding:1rem}.vp-panel-head{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.vp-panel-title{margin:0;font-size:1rem;line-height:1.2}.vp-grid{display:grid;gap:.85rem}.vp-grid--cards{grid-template-columns:repeat(1,minmax(0,1fr))}.vp-grid--side{grid-template-columns:minmax(0,1fr)}.vp-mini-card{display:grid;gap:.5rem;min-width:0;border:1px solid var(--vp-soft-line);border-radius:var(--vp-radius);background:var(--vp-panel-soft);padding:.75rem}.vp-mini-card h3,.vp-mini-card h4,.vp-stamp-card h2,.vp-stamp-card h3{margin:0;overflow-wrap:anywhere;font-size:.95rem;line-height:1.2}.vp-mini-card p,.vp-stamp-card p,.vp-meta{margin:0;color:var(--vp-muted);line-height:1.45}.vp-stamp-desc,.stamp-desc{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3}.vp-pill{display:inline-flex;align-items:center;width:fit-content;border-radius:999px;background:#fffbeb;color:#92400e;padding:.25rem .5rem;font-size:.72rem;font-weight:900;line-height:1.1}.vp-pill--ok{background:var(--vp-green-soft);color:#166534}.vp-pill--blue{background:#dbeafe;color:var(--vp-brand-deep)}.vp-pill--neutral{background:#eef2f7;color:#344054}.vp-pill--danger{background:var(--vp-red-soft);color:var(--vp-red)}.vp-section-list{display:grid;gap:.85rem}.vp-section-card{overflow:hidden;border:1px solid var(--vp-line);border-radius:var(--vp-radius);background:#fff}.vp-section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-bottom:1px solid var(--vp-soft-line);padding:.8rem}.vp-section-title{display:flex;min-width:0;align-items:center;gap:.7rem;border:0;background:transparent;color:inherit;padding:0;text-align:left;font:inherit}.vp-chevron{display:grid;place-items:center;flex:0 0 auto;width:2rem;height:2rem;border:0;background:transparent;color:var(--vp-brand-deep);font-weight:900}.vp-section-title strong{display:block;overflow-wrap:anywhere}.vp-section-title small{display:block;color:var(--vp-muted);font-size:.78rem;font-weight:800}.vp-icon-link{min-width:2rem;min-height:2rem;border:1px solid var(--vp-line);color:var(--vp-brand-deep)}.vp-section-body{display:grid;gap:.7rem;background:var(--vp-panel-soft);padding:.75rem}.vp-section-desc{margin:0;color:var(--vp-muted);line-height:1.45}.vp-stamp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.vp-stamp-card{display:grid;grid-template-rows:auto 1fr;min-width:0;overflow:hidden;border:1px solid var(--vp-line);border-radius:var(--vp-radius);background:#fff}.vp-stamp-art{position:relative;display:grid;place-items:center;width:100%;min-width:0;aspect-ratio:1 / 1;overflow:hidden;background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.24),transparent 25%),linear-gradient(135deg,var(--vp-brand-deep),var(--vp-teal));color:#fff;text-decoration:none}.vp-stamp-art--done{background:radial-gradient(circle at 32% 20%,rgba(255,255,255,.24),transparent 25%),linear-gradient(135deg,var(--vp-amber),var(--vp-green))}.vp-stamp-art img{width:100%;height:100%;object-fit:cover}.vp-stamp-fallback{position:relative;z-index:2;display:grid;place-items:center;width:72%;aspect-ratio:1;color:#fff;text-align:center}.vp-stamp-fallback span{max-width:100%;overflow-wrap:anywhere;font-size:clamp(1rem,4vw,1.35rem);font-weight:950;line-height:1.05}.vp-stamp-fallback small{position:absolute;bottom:12%;font-size:.65rem;font-weight:900}.vp-stamp-body{display:grid;align-content:start;gap:.45rem;padding:.7rem}.vp-pill-row{flex-wrap:wrap;gap:.4rem}.vp-fab{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:10;min-width:4rem;min-height:3rem;border-radius:999px;background:var(--vp-brand-deep);color:#fff;box-shadow:0 14px 34px #1d4ed847;font-weight:900;text-decoration:none}.vp-auth-layout,.vp-split-layout{display:grid;gap:1rem}.vp-auth-layout{width:100%}.vp-auth-panel,.vp-form-card{display:grid;gap:.85rem;border:1px solid var(--vp-line);border-radius:var(--vp-radius);background:#fff;padding:clamp(1.1rem,4vw,1.6rem);box-shadow:var(--vp-shadow)}.vp-form{display:grid;gap:.75rem}.vp-form label{display:grid;gap:.35rem;color:#344054;font-size:.9rem;font-weight:750}.vp-form input,.vp-form select{width:100%;min-height:2.65rem;border:1px solid #cfd6e3;border-radius:var(--vp-radius);padding:.55rem .65rem}.vp-form input:focus{border-color:var(--vp-brand);outline:3px solid rgba(37,99,235,.16)}.vp-status{border-radius:var(--vp-radius);padding:.65rem .75rem;line-height:1.45}.vp-status--ok{background:#ecfdf3;color:#0d6d2a}.vp-status--error{background:#fef2f2;color:#b00020}.vp-link-row{display:flex;flex-wrap:wrap;gap:.55rem .75rem;align-items:center;border-top:1px solid #eef2f7;padding-top:.85rem;color:var(--vp-muted);font-size:.9rem}.vp-link-row a,.vp-link{color:var(--vp-brand-deep);font-weight:800}.vp-scan-card{overflow:hidden;border:1px solid var(--vp-line);border-radius:var(--vp-radius);background:#fff;box-shadow:var(--vp-shadow)}.vp-camera{position:relative;display:grid;place-items:center;min-height:18rem;overflow:hidden;background:linear-gradient(#0f172a52,#0f172a33),repeating-linear-gradient(45deg,#111827 0 16px,#172033 16px 32px);color:#fff;isolation:isolate}.vp-camera--done{background:radial-gradient(circle at 70% 20%,rgba(255,255,255,.18),transparent 28%),linear-gradient(135deg,var(--vp-amber),var(--vp-green))}.vp-scan-body{display:grid;align-content:center;gap:.7rem;padding:1rem}.vp-result{display:inline-flex;align-items:center;gap:.5rem;width:fit-content;border-radius:999px;padding:.45rem .7rem;font-weight:850}.vp-result--ok{background:var(--vp-green-soft);color:#166534}.vp-result--error{background:var(--vp-red-soft);color:var(--vp-red)}.vp-result--busy{background:var(--vp-blue-soft);color:var(--vp-brand-deep)}.vp-profile-qr{width:min(15rem,100%);aspect-ratio:1;justify-self:center;border:1px solid var(--vp-line);border-radius:var(--vp-radius);background:#fff}@media(min-width:42rem){.vp-shell{padding:1.5rem 1.5rem 5rem}.vp-hero{grid-template-columns:minmax(0,1fr) 15rem;align-items:center;padding:1.25rem}.vp-grid--cards{grid-template-columns:repeat(2,minmax(0,1fr))}.vp-stamp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.vp-split-layout,.vp-scan-card{grid-template-columns:minmax(16rem,.95fr) minmax(0,1.05fr)}.vp-scan-card{display:grid}.vp-camera{min-height:22rem}}@media(min-width:64rem){.vp-grid--side{grid-template-columns:minmax(0,1.12fr) minmax(18rem,.88fr)}.vp-grid--cards{grid-template-columns:repeat(3,minmax(0,1fr))}.vp-stamp-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.vp-auth-layout{grid-template-columns:minmax(19rem,.9fr) minmax(23rem,1fr);align-items:center}}.vp-page-shell{min-height:100dvh;background:var(--vp-bg);color:var(--vp-ink)}.vp-page-shell--footer-only .vp-shell--auth{min-height:calc(100dvh - 5rem);padding-bottom:1rem}.vp-shell.vp-page-shell__chrome{padding-bottom:0}.vp-page-shell__chrome .vp-top{margin-bottom:0}.vp-copyright-footer{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;visibility:hidden;pointer-events:none;width:min(58rem,calc(100% - 2rem));min-height:2.15rem;margin:0 auto max(1.25rem,env(safe-area-inset-bottom));overflow:hidden;border:1px solid rgba(255,255,255,.68);border-radius:999px;background:linear-gradient(135deg,#ffffffc2,#ffffff70 48%,#ffffff4d),linear-gradient(180deg,#ffffff94,#ffffff2e);color:var(--vp-muted);padding:.45rem 1rem;text-align:center;box-shadow:0 18px 54px #0f172a29,0 2px 8px #0f172a14,inset 0 1px #ffffffe0,inset 0 -1px #ffffff52;-webkit-backdrop-filter:saturate(180%) blur(24px) brightness(1.03);backdrop-filter:saturate(180%) blur(24px) brightness(1.03)}.vp-copyright-footer:before,.vp-copyright-footer:after{position:absolute;inset:0;z-index:-1;border-radius:inherit;content:"";pointer-events:none}.vp-copyright-footer:before{background:radial-gradient(circle at 18% 0%,rgba(255,255,255,.7),transparent 34%),radial-gradient(circle at 82% 100%,rgba(37,99,235,.14),transparent 38%)}.vp-copyright-footer:after{inset:1px 0 auto;height:48%;background:linear-gradient(180deg,#ffffffad,#fff0)}.vp-copyright-footer p{position:relative;z-index:1;margin:0;font-size:.78rem;font-weight:750;line-height:1.4}.vp-copyright-footer .nowrap-sentence{white-space:nowrap}.vp-header-actions{flex-wrap:wrap;justify-content:flex-end;min-height:2.65rem}.vp-header-auth-placeholder{min-width:12rem;min-height:2.65rem}.vp-header-auth{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.vp-button--compact{min-height:2.25rem;padding:.45rem .75rem;font-size:.8125rem}.vp-sticky-auth{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;gap:.75rem;justify-content:center;padding:.75rem max(1rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid var(--vp-line);opacity:0;pointer-events:none;transform:translateY(calc(100% + env(safe-area-inset-bottom)));transition:transform .2s ease-in,opacity .16s ease-in,visibility 0s linear .2s;visibility:hidden;will-change:transform,opacity}.vp-sticky-auth--visible{opacity:1;pointer-events:auto;transform:translateY(0);transition:transform .22s cubic-bezier(.2,0,0,1),opacity .18s ease-out,visibility 0s linear 0s;visibility:visible}.vp-sticky-auth a{min-width:8rem;border-radius:999px;padding:.75rem 1rem;text-align:center;font-weight:900;text-decoration:none}.vp-sticky-auth__register{background:var(--vp-teal);color:#fff}.vp-sticky-auth__sign-in{background:var(--vp-brand-deep);color:#fff}@media(prefers-reduced-motion:reduce){.vp-sticky-auth,.vp-sticky-auth--visible{transition:none}}@media(max-width:34rem){.vp-shell{padding:.75rem .75rem 5rem}.vp-top{flex-direction:column;align-items:stretch}.vp-actions .vp-locale span{display:none}.vp-title{font-size:1.75rem}.vp-stamp-grid{gap:.65rem}.vp-stamp-fallback span{font-size:1rem}}
