:root{--color-primary:#27374d;--color-secondary:#526d82;--color-muted:#9db2bf;--color-bg:#dde6ed;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:16px/145% var(--sans);color:var(--color-primary);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0}h1,h2,h3{color:var(--color-primary);font-weight:600}p{margin:0}.app{flex-direction:column;gap:20px;max-width:720px;margin:0 auto;padding:24px 16px 64px;display:flex}.app__header{text-align:center;border-bottom:1px solid var(--color-muted);padding-bottom:12px}.hint{color:var(--color-secondary);font-size:.85rem}.status-text{text-align:center;color:var(--color-secondary)}.status-text--error{color:#7a1f1f}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.toast{width:calc(100% - 32px);max-width:420px;color:var(--color-bg);z-index:200;background:#7a1f1f;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;animation:.2s ease-out toast-in;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000040}.toast span{flex:1}.toast__close{width:24px;height:24px;color:var(--color-bg);cursor:pointer;opacity:.8;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex}.toast__close:hover{opacity:1;background:#ffffff26}@keyframes install-toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.install-toast{background:var(--color-primary);width:calc(100% - 32px);max-width:420px;color:var(--color-bg);z-index:100;border-radius:14px;align-items:center;gap:12px;padding:14px;animation:.25s ease-out install-toast-in;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #00000047,0 2px 8px #0000002e}.install-toast__icon{border-radius:10px;flex-shrink:0;width:44px;height:44px}.install-toast__body{text-align:left;flex:1;min-width:0}.install-toast__title{margin:0;font-size:.95rem;font-weight:600;line-height:1.3}.install-toast__desc{color:var(--color-muted);margin:2px 0 0;font-size:.8rem;line-height:1.3}.install-toast__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.install-toast__install{background:var(--color-bg);color:var(--color-primary);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:8px 16px;font-size:.9rem;font-weight:600}.install-toast__install:hover{background:#fff}.install-toast__close{width:28px;height:28px;color:var(--color-bg);cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;display:flex}.install-toast__close:hover{opacity:1;background:#ffffff1f}@media (width<=480px){.install-toast{width:auto;max-width:none;bottom:16px;left:16px;right:16px;transform:none}@keyframes install-toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}.landing,.workspace{border:1px solid var(--color-muted);background:#fff;border-radius:10px;flex-direction:column;gap:16px;padding:20px;display:flex}.link-btn{color:var(--color-secondary);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.9rem}.btn{cursor:pointer;border:none;border-radius:8px;padding:10px 18px;font-size:1rem}.btn:disabled{background:var(--color-muted);cursor:not-allowed}.btn--primary{background:var(--color-primary);color:var(--color-bg)}.btn--secondary{background:var(--color-secondary);color:var(--color-bg)}.register-form{flex-direction:column;gap:14px;display:flex}.field{color:var(--color-primary);text-align:left;flex-direction:column;gap:6px;display:flex}.field input[type=text],.field input{border:1px solid var(--color-muted);border-radius:6px;padding:8px 10px;font-size:1rem}.photo-capture{flex-direction:column;gap:10px;display:flex}.photo-requirements{background:var(--color-bg);border:1px solid var(--color-muted);text-align:left;color:var(--color-secondary);border-radius:8px;padding:10px 14px;font-size:.85rem}.photo-requirements strong{color:var(--color-primary)}.photo-requirements ul{margin:6px 0 0;padding-left:18px}.photo-requirements li{margin-bottom:2px}.photo-capture__tabs{gap:8px;display:flex}.tab{border:1px solid var(--color-muted);background:var(--color-bg);color:var(--color-primary);cursor:pointer;border-radius:6px;padding:6px 12px}.tab--active{background:var(--color-secondary);color:#fff;border-color:var(--color-secondary)}.webcam-panel{flex-direction:column;align-items:center;gap:8px;display:flex}.webcam-panel__status{text-align:center}.webcam-panel__controls{gap:14px;display:flex}.webcam-panel__controls .link-btn{text-decoration:underline}.webcam-video{border:1px solid var(--color-muted);border-radius:8px;width:100%;max-width:320px}.photo-preview{align-self:flex-start;width:fit-content;display:inline-block;position:relative}.photo-preview img{border:1px solid var(--color-muted);cursor:zoom-in;border-radius:8px;max-width:160px;display:block}.photo-preview__remove{background:var(--color-primary);width:24px;height:24px;color:var(--color-bg);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:flex;position:absolute;top:-8px;right:-8px}.photo-preview__remove:hover{background:var(--color-secondary)}.photo-zoom-overlay{z-index:1000;cursor:zoom-out;background:#27374dd9;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.photo-zoom-overlay__img{border-radius:8px;max-width:90vw;max-height:90vh;box-shadow:0 10px 30px #0006}.photo-zoom-overlay__close{background:var(--color-bg);width:36px;height:36px;color:var(--color-primary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;line-height:1;display:flex;position:absolute;top:20px;right:24px}.status-panel{border-left:4px solid var(--color-secondary);background:var(--color-bg);text-align:left;border-radius:8px;padding:12px 14px}.status-panel--success{border-left-color:var(--color-primary)}.status-panel--reject{border-left-color:#7a1f1f}.status-panel--error{border-left-color:var(--color-muted)}.user-gallery{text-align:left;border-top:1px solid var(--color-muted);padding-top:14px}.user-gallery ul{flex-direction:column;gap:6px;margin:8px 0;padding:0;list-style:none;display:flex}.user-gallery li{background:var(--color-bg);border-radius:6px;justify-content:space-between;padding:8px 10px;display:flex}.user-gallery__id{color:var(--color-secondary);font-size:.8rem}.dashboard{border:1px solid var(--color-muted);text-align:left;background:#fff;border-radius:10px;flex-direction:column;gap:16px;padding:20px;display:flex}.dashboard__card{background:var(--color-bg);border-radius:8px;flex-direction:column;gap:6px;padding:14px;display:flex}
