@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Playfair+Display:wght@700&display=swap";@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@900&display=swap";body{margin:0;font-family:Montserrat,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#1a1c2c}.mosaic-outer{width:100%;display:flex;justify-content:center}.mosaic-container{position:relative;width:100%;height:75vh;overflow:hidden}#text-canvas{display:none}.mosaic-particle{position:absolute;transition:transform .2s;cursor:pointer;overflow:hidden;background:none}.mosaic-particle .fingerprint-image{position:absolute;top:50%;left:25%;transform:translate(-50%,-50%);width:80%;height:80%;object-fit:contain;opacity:.7;z-index:1}.mosaic-particle .signature-image{position:absolute;bottom:0;right:0;width:70%;height:70%;object-fit:contain;z-index:2;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}@keyframes gradientBG{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.checkin-board-container{width:100%;height:100vh;background-image:url(/background.png);background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;padding:2rem;color:#f0f0f0}.board-header{display:flex;flex-direction:column;align-items:center;gap:1rem;animation:fadeIn .8s ease-out}.logo-group-top .logo-vtx{height:50px;width:auto}.logo-group-middle{display:flex;align-items:center;justify-content:center;gap:3rem;margin-top:-.5rem}.logo-synodus,.logo-aequitas{height:35px;width:auto}.title-group{margin-top:1rem}.title-group .img-title{max-height:100px;width:auto;max-width:90vw;object-fit:contain;filter:drop-shadow(0 0 15px rgba(0,163,255,.4))}.board-stats{margin-top:1.5rem}.stat-badge{display:inline-block;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem 2rem;border-radius:50px;font-size:1.1rem;border:1px solid rgba(255,215,0,.3);box-shadow:0 4px 15px #0003}.stat-badge strong{color:gold;font-size:1.4rem;font-weight:700}.checkin-board-wrapper{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#0026ff,#00a3ff,#0026ff) border-box;display:block;position:relative;max-width:1800px;margin:0 auto;height:70vh;border:8px solid transparent;border-radius:12px;box-shadow:0 0 20px #004cff66;padding:.75rem;scale:.9;overflow:hidden}.checkin-board-wrapper:before{content:"";position:absolute;inset:0;background:url(/board-background.svg) center / contain no-repeat;opacity:.2;pointer-events:none}@media(max-width:1600px){.checkin-board{grid-template-columns:repeat(3,1fr)}}@media(max-width:1200px){.checkin-board{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.checkin-board{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.checkin-board{grid-template-columns:repeat(2,1fr);gap:1rem}.board-header h1{font-size:2rem}}@media(max-width:400px){.checkin-board{grid-template-columns:1fr}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.error-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.error-message{background:#fffffff2;color:#e53e3e;padding:2rem;border-radius:12px;font-size:1.2rem;max-width:600px;text-align:center;box-shadow:0 10px 40px #0003}.empty-state{grid-column:1 / -1;text-align:center;padding:4rem 2rem;color:#0ff;font-size:1.5rem;opacity:.8}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideIn{0%{opacity:0;transform:scale(.8) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{width:100%;min-height:100vh}
