:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.welcome-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;box-sizing:border-box;width:100%;position:fixed;top:0;left:0;right:0;bottom:0}.welcome-container h1{margin-bottom:5.5rem}.login-button{background-color:#0078d4;color:#fff;border:none;padding:12px 24px;border-radius:4px;font-size:16px;cursor:pointer;margin-top:20px;transition:background-color .3s}.login-button:hover{background-color:#106ebe}.user-data-container{padding:20px;max-width:800px;margin:0 auto}.qr-section{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:relative;scroll-snap-align:start;padding:50px 20px 20px;width:100%;max-width:100vw;box-sizing:border-box}.table-section{min-height:100vh;scroll-snap-align:start;padding:20px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.scroll-container{height:100vh;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;padding:0;margin:0;box-sizing:border-box;position:fixed;top:0;left:0;right:0;bottom:0;width:100%;-webkit-overflow-scrolling:touch}.scroll-container::-webkit-scrollbar{width:10px;right:0}.scroll-container::-webkit-scrollbar-track{background:transparent}.scroll-container::-webkit-scrollbar-thumb{background-color:#9b9b9b80;border-radius:20px;border:transparent}.qr-container{display:flex;justify-content:center;align-items:center;padding:20px;border-radius:12px;background:var(--table-bg);box-shadow:0 1px 3px #0003}.qr-code{width:min(80vw,300px);height:min(80vw,300px)}.scroll-indicator{position:absolute;bottom:35px;left:50%;transform:translate(-50%);color:var(--text-color);opacity:.7}.user-data-table{width:100%;max-width:600px;border-collapse:collapse;margin:20px auto;background:var(--table-bg);box-shadow:0 1px 3px #0003;box-sizing:border-box}.user-data-table th,.user-data-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color);color:var(--text-color)}.user-data-table th{background-color:var(--header-bg);font-weight:600;width:30%}@media (prefers-color-scheme: dark){:root{--table-bg: #1a1a1a;--header-bg: #2d2d2d;--text-color: #ffffff;--border-color: #404040}}@media (prefers-color-scheme: light){:root{--table-bg: #ffffff;--header-bg: #f5f5f5;--text-color: #000000;--border-color: #ddd}}.error{color:red;padding:20px;text-align:center}.logout-button{background-color:#d83b01;color:#fff;border:none;padding:12px 24px;border-radius:4px;font-size:16px;cursor:pointer;margin-top:20px;transition:background-color .3s}.logout-button:hover{background-color:#a42e01}h2{color:var(--text-color)}@media (max-width: 768px){.user-data-container{padding:10px}.user-data-table th,.user-data-table td{padding:8px;font-size:14px}.qr-section,.table-section{padding:20px 10px}.user-data-table th,.user-data-table td{padding:8px 4px;word-break:break-word}}@media (max-width: 375px){.user-data-table th,.user-data-table td{padding:6px;font-size:13px}.qr-code{width:min(90vw,250px);height:min(90vw,250px)}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
