:root{--bg:#090a0f;--card-bg:#12141c;--border:#232738;--text:#f0f3fa;--text-muted:#8b93a7;--primary:#3b82f6;--primary-hover:#2563eb;--accent:#10b981;--danger:#ef4444;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background-color:var(--bg);color:var(--text);justify-content:center;align-items:center;min-height:100vh;margin:0;padding:16px;display:flex}#root{justify-content:center;width:100%;display:flex}.container{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;width:100%;max-width:520px;padding:32px;box-shadow:0 10px 40px #0009}.badge{color:var(--primary);letter-spacing:.08em;background:#3b82f626;border-radius:999px;margin-bottom:12px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}h1{margin:0 0 8px;font-size:26px}p.subtitle{color:var(--text-muted);margin:0 0 24px;font-size:14px}.primary-button{box-sizing:border-box;background:var(--primary);color:#fff;cursor:pointer;text-align:center;border:none;border-radius:10px;width:100%;padding:14px;font-size:16px;font-weight:600;text-decoration:none;transition:background .15s,transform .1s;display:block}.primary-button:hover{background:var(--primary-hover);transform:translateY(-1px)}.primary-button:active{transform:translateY(0)}.qr-box{border-top:1px solid var(--border);text-align:center;margin-top:24px;padding-top:24px}.qr-box img{border:4px solid #fff;border-radius:12px;max-width:200px;height:auto;margin-bottom:8px}.qr-box span{color:var(--text-muted);font-size:12px;display:block}.dropzone{border:2px dashed var(--border);text-align:center;cursor:pointer;border-radius:12px;margin:16px 0;padding:36px 16px;transition:border-color .2s,background-color .2s;position:relative}.dropzone:hover{border-color:var(--primary);background-color:#3b82f608}.dropzone input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.progress-bar{background:#1e2230;border-radius:4px;height:8px;margin:16px 0;overflow:hidden}.progress-fill{background:var(--primary);height:100%;transition:width .1s}input[type=password],input[type=text],textarea{box-sizing:border-box;border:1px solid var(--border);color:#fff;background:#0d0e14;border-radius:8px;outline:none;width:100%;margin-bottom:12px;padding:12px;font-family:inherit;font-size:14px}input[type=password]:focus,input[type=text]:focus,textarea:focus{border-color:var(--primary)}
