@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&display=swap";@import"https://fonts.googleapis.com/css2?family=Syne:wght@600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Outfit:wght@400;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Readex+Pro:wght@400;500;600&display=swap";:root{--bg: #444040;--surface: #161a20;--surface2: #1e2530;--border: #bababa;--accent: #fc4b08;--accent2: #fc4b08;--warn: #ff6b35;--text: #fc4b08;--muted: #6b7a8d;--corner-w: 3px;--corner-l: 22px;--radius: 14px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:Syne,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;border:none;background:none}.app{display:flex;flex-direction:column;height:100%;max-width:480px;margin:0 auto;position:relative}.app-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);background:var(--bg);z-index:10;flex-shrink:0}.logo{display:flex;align-items:center;gap:9px}.logo-icon{width:28px;height:28px;color:var(--accent)}.logo-text{font-size:1.15rem;font-weight:800;letter-spacing:.04em;color:var(--text)}.header-actions{display:flex;gap:6px}.icon-btn{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--muted);background:var(--surface2);transition:color .2s,background .2s}.icon-btn:active{background:var(--border)}.app-main{flex:1;overflow:hidden;position:relative}.screen{height:100%;display:flex;flex-direction:column;align-items:center;padding:24px 24px 40px;overflow-y:auto}.idle-screen{justify-content:center;gap:28px}.idle-graphic{display:flex;justify-content:center}.qr-frame-idle{position:relative;width:180px;height:180px;display:flex;align-items:center;justify-content:center}.idle-qr-icon{width:100px;height:100px;color:var(--accent);opacity:.9;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.idle-text{text-align:center;max-width:280px}.idle-text h1{font-size:1.9rem;font-weight:800;margin-bottom:10px;background:linear-gradient(135deg,var(--text) 40%,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.idle-text p{font-size:.95rem;color:var(--muted);line-height:1.6;font-family:DM Mono,monospace;font-weight:400}.corner{position:absolute;width:var(--corner-l);height:var(--corner-l)}.corner:before,.corner:after{content:"";position:absolute;background:var(--accent);border-radius:2px}.corner:before{width:var(--corner-w);height:100%}.corner:after{width:100%;height:var(--corner-w)}.corner-tl{top:0;left:0}.corner-tl:before{top:0;left:0}.corner-tl:after{top:0;left:0}.corner-tr{top:0;right:0}.corner-tr:before{top:0;right:0;left:auto}.corner-tr:after{top:0;right:0}.corner-bl{bottom:0;left:0}.corner-bl:before{bottom:0;top:auto;left:0}.corner-bl:after{bottom:0;top:auto;left:0}.corner-br{bottom:0;right:0}.corner-br:before{inset:auto 0 0 auto}.corner-br:after{bottom:0;top:auto;right:0}.live-screen{padding:0;gap:0;justify-content:flex-end;background:#000}.viewfinder{position:absolute;inset:0;overflow:hidden}.live-video{width:100%;height:100%;object-fit:cover;display:block}.scan-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse 60% 55% at 50% 50%,transparent,rgba(0,0,0,.55))}.scan-frame{position:relative;width:min(68vw,280px);height:min(68vw,280px);--corner-l: 28px;--corner-w: 3px}.scan-line{position:absolute;left:8px;right:8px;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);top:0;animation:scan 2.5s ease-in-out infinite;box-shadow:0 0 8px var(--accent),0 0 20px var(--accent)}@keyframes scan{0%{top:0%;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}.live-hint{position:absolute;bottom:calc(50% - min(34vw,140px) - 48px);font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;font-family:DM Mono,monospace}.viewfinder.pulse .scan-frame{animation:success-pulse .6s ease-out}.viewfinder.pulse .corner:before,.viewfinder.pulse .corner:after{background:#fff}@keyframes success-pulse{0%{transform:scale(1)}40%{transform:scale(1.06)}to{transform:scale(1)}}.live-screen .btn-secondary{position:absolute;bottom:40px;left:50%;transform:translate(-50%);z-index:5}.result-screen{justify-content:center;gap:20px;animation:fadeUp .4s ease-out}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.result-check-wrap{display:flex;justify-content:center}.result-check{width:64px;height:64px;border-radius:50%;background:color-mix(in srgb,var(--accent) 15%,transparent);border:2px solid var(--accent);display:flex;align-items:center;justify-content:center;color:var(--accent)}.result-check svg{width:28px;height:28px}.result-title{font-size:1.5rem;font-weight:800;text-align:center}.result-card{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;max-height:140px;overflow-y:auto}.result-text{font-family:DM Mono,monospace;font-size:.88rem;color:var(--text);word-break:break-all;line-height:1.6}.result-chips{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.chip{display:inline-flex;align-items:center;gap:7px;padding:10px 18px;border-radius:999px;font-size:.9rem;font-weight:600;background:var(--surface2);border:1px solid var(--border);color:var(--text);transition:background .2s,border-color .2s;cursor:pointer;text-decoration:none}.chip:active{background:var(--border)}.chip-accent{background:color-mix(in srgb,var(--accent2) 12%,transparent);border-color:color-mix(in srgb,var(--accent2) 40%,transparent);color:var(--accent2)}.result-footer{display:flex;flex-direction:column;gap:10px;width:100%;margin-top:6px}.error-screen{justify-content:center;gap:16px;text-align:center}.error-icon{font-size:2.8rem;color:var(--warn)}.error-screen h2{font-size:1.4rem;font-weight:700}.error-msg{color:var(--muted);font-size:.9rem;line-height:1.6;font-family:DM Mono,monospace;max-width:300px}.btn-primary{width:100%;padding:16px 24px;background:var(--accent);color:#0a1a14;border-radius:var(--radius);font-size:1rem;font-weight:700;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;gap:10px;transition:opacity .15s,transform .1s}.btn-primary:active{opacity:.85;transform:scale(.98)}.btn-secondary{padding:13px 32px;background:#0000008c;color:#ffffffbf;border:1px solid rgba(255,255,255,.2);border-radius:999px;font-size:.95rem;font-weight:600;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .2s}.btn-secondary:active{background:#000000bf}.btn-ghost{padding:13px 24px;color:var(--muted);font-size:.95rem;font-weight:600;border-radius:var(--radius);transition:color .2s;text-align:center}.btn-ghost:active{color:var(--text)}.login-screen{justify-content:space-between;padding:0;gap:0}.login-header{height:140px;padding-top:50px;display:flex;align-items:center;justify-content:center}.login-title{font-family:Outfit,sans-serif;font-size:36px;font-weight:700;color:var(--accent);letter-spacing:.08em;text-align:center}.login-form-area{display:flex;flex-direction:column;width:100%;padding:90px 32px 32px}.login-field{position:relative;margin-bottom:16px}.login-field input{width:100%;height:56px;padding:20px 16px 6px;background:#2c2c2c;border:2px solid #2c2c2c;border-radius:12px;color:#fff;font-family:Readex Pro,sans-serif;font-size:14px;outline:none;transition:border-color .2s}.login-field input:focus{border-color:var(--accent)}.login-field input:disabled{opacity:.6}.login-field label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#888;font-family:Readex Pro,sans-serif;font-size:14px;pointer-events:none;transition:top .2s,font-size .2s,color .2s,transform .2s}.login-field input:focus~label,.login-field input:not(:placeholder-shown)~label{top:10px;transform:translateY(0);font-size:11px;color:var(--accent)}.login-btn{width:100%;height:44px;background:var(--accent);color:#fff;border-radius:12px;font-family:Readex Pro,sans-serif;font-size:15px;font-weight:600;letter-spacing:.02em;border:none;cursor:pointer;box-shadow:0 8px 24px #fc4b0859;transition:opacity .15s,transform .1s;margin-bottom:16px}.login-btn:active{opacity:.85;transform:scale(.98)}.login-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-error{font-family:Readex Pro,sans-serif;font-size:13px;text-align:center;color:#ff6b6b;padding:10px 12px;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.25);border-radius:8px}.login-footer{height:140px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:32px}.login-footer p{font-family:Outfit,sans-serif;font-size:15px;color:var(--accent);text-align:center;opacity:.8}.logged-user{font-family:Readex Pro,sans-serif;font-size:.85rem;color:var(--muted)}.form_select-screen{justify-content:space-between;padding:0;gap:0}.form_select-header{height:140px;padding-top:50px;display:flex;align-items:center;justify-content:center}.form-options{width:100%;padding:32px;display:flex;flex-direction:column;gap:16px;flex:1;justify-content:center}.form-option{width:100%;height:72px;background:#2c2c2c;border:2px solid transparent;border-radius:14px;color:var(--text);font-family:Readex Pro,sans-serif;font-size:1rem;font-weight:600;text-align:center;transition:all .2s ease}.form-option:active{transform:scale(.98)}.form-option:hover,.form-option:focus{border-color:var(--accent);box-shadow:0 0 12px #fc4b0840}.form-screen{padding:24px;align-items:stretch;gap:24px}.form-header{display:flex;align-items:center;gap:12px;width:100%}.back-button{width:44px;height:44px;border-radius:12px;background:#2c2c2c;color:var(--accent);font-size:1.2rem;font-weight:700;display:flex;align-items:center;justify-content:center}.back-button:active{transform:scale(.95)}.form-title{font-family:Outfit,sans-serif;font-size:1.8rem;font-weight:700;color:var(--accent)}.form-container{width:100%;display:flex;flex-direction:column;gap:18px}.form-container h2{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:700;color:var(--accent);margin-bottom:8px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field label{font-family:Readex Pro,sans-serif;font-size:.9rem;font-weight:500;color:var(--accent)}.form-field input,.form-field textarea,.form-field select{width:100%;background:#2c2c2c;border:2px solid transparent;border-radius:12px;padding:14px 16px;color:#fff;font-family:Readex Pro,sans-serif;font-size:.95rem;outline:none;transition:border-color .2s ease}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--accent)}.form-field textarea{min-height:120px;resize:vertical}.checkbox-group{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#2c2c2c;border-radius:12px}.checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.checkbox-group label{color:#fff;font-family:Readex Pro,sans-serif;font-size:.95rem}.form-actions{display:flex;flex-direction:column;gap:12px;margin-top:12px}.form-save-btn{width:100%;height:52px;background:var(--accent);color:#fff;border-radius:12px;font-family:Readex Pro,sans-serif;font-size:1rem;font-weight:600;box-shadow:0 8px 24px #fc4b084d;transition:all .2s ease}.form-save-btn:active{transform:scale(.98);opacity:.9}.form-cancel-btn{width:100%;height:52px;background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:12px;font-family:Readex Pro,sans-serif;font-size:.95rem;font-weight:500}.form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:16px}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}
