*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#58595b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}.App{min-height:100vh}.App,.App-header{display:flex;flex-direction:column}.App-header{align-items:center;background:linear-gradient(135deg,#006341,#005030);box-shadow:0 4px 12px #00000026;color:#fff;gap:.75rem;padding:1.5rem}.App-logo{height:65px;object-fit:contain;width:auto}.App-header h1{font-size:1.8rem;margin:0;text-align:center}.App-nav{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.App-nav button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:initial;border:2px solid #ffffff80;border-radius:8px;color:#fff;cursor:pointer;font-size:1.05rem;font-weight:600;min-height:50px;min-width:140px;padding:.875rem 2rem;transition:all .3s ease}.App-nav button:hover{background-color:#ffffff26;border-color:#fff;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.App-nav button:active{transform:translateY(0)}.App-nav button.active{background:linear-gradient(135deg,#fff,#f0f0f0);border-color:#fff;box-shadow:0 4px 12px #00000040;color:#006341}.App-main{flex:1 1;margin:0 auto;max-width:1200px;padding:2rem;width:100%}.success-message{background:linear-gradient(135deg,#78be20,#6aa01b);box-shadow:0 4px 12px #78be204d}.error-message,.success-message{animation:slideIn .4s ease-out;border-radius:12px;color:#fff;font-weight:600;margin-bottom:1.5rem;padding:1.25rem;text-align:center}.error-message{background:linear-gradient(135deg,#d32f2f,#b71c1c);box-shadow:0 4px 12px #d32f2f4d}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.App-logo{height:50px}.App-header h1{font-size:1.6rem}.App-main{padding:1.5rem}.App-nav{gap:.75rem}.App-nav button{font-size:1rem;min-height:48px;padding:.75rem 1.5rem}}@media (min-width:768px) and (max-width:1366px){.App-header{padding:2rem 1.5rem}.App-logo{height:75px}.App-header h1{font-size:2.2rem}.App-header{gap:1rem}.App-nav{gap:1.5rem}.App-nav button{font-size:1.15rem;min-height:56px;min-width:160px;padding:1rem 2.5rem}.App-main{max-width:1400px;padding:2.5rem}}@media (hover:none) and (pointer:coarse){.App-nav button,.submit-button,.visitor-card{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.visitor-card:active{transform:scale(.98)}}.registration-container{background:linear-gradient(135deg,#fff,#fafafa);border:1px solid #0063411a;border-radius:16px;box-shadow:0 8px 24px #0000001a;margin:0 auto;max-width:650px;padding:2.5rem}.registration-container h2{color:#006341;font-size:1.8rem;margin-bottom:1.5rem;margin-top:0;text-align:center}.privacy-notice{margin-top:1.5rem;padding:.75rem;text-align:center}.privacy-notice p{color:#7a7b7c;font-size:.75rem;font-style:italic;line-height:1.4;margin:0}.registration-form{gap:1.5rem}.form-group,.registration-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#58595b;font-size:1rem;font-weight:600}.form-group input{background:linear-gradient(135deg,#fff,#fefefe);border:2px solid #e8e5d5;border-radius:10px;font-size:1.05rem;min-height:52px;padding:1rem;transition:all .3s ease}.form-group input:focus{border-color:#006341;box-shadow:0 0 0 4px #0063411a;outline:none;transform:translateY(-1px)}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-group input.error{border-color:#d32f2f}.form-group input.error:focus{border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f1a}.error-text{color:#d32f2f;font-size:.875rem;font-weight:500;margin-top:-.25rem}.submit-button{background:linear-gradient(135deg,#006341,#005030);border:none;border-radius:12px;box-shadow:0 4px 12px #0063414d;color:#fff;cursor:pointer;font-size:1.15rem;font-weight:700;margin-top:1rem;min-height:56px;padding:1.25rem 2.5rem;transition:all .3s ease}.submit-button:hover:not(:disabled){background:linear-gradient(135deg,#005030,#003d24);box-shadow:0 6px 20px #00634166;transform:translateY(-2px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{background:linear-gradient(135deg,#a8d08d,#95bb7a);box-shadow:none;cursor:not-allowed;opacity:.7}@media (max-width:768px){.registration-container{padding:2rem}.registration-container h2{font-size:1.6rem}.form-group input{font-size:16px;min-height:50px}.submit-button{font-size:1.1rem;min-height:54px}}@media (min-width:768px) and (max-width:1366px) and (orientation:landscape){.registration-container{max-width:750px;padding:3rem}.registration-container h2{font-size:2rem;margin-bottom:2rem}.form-group input{font-size:1.1rem;min-height:56px;padding:1.25rem}.form-group label{font-size:1.1rem}.submit-button{font-size:1.25rem;min-height:60px;padding:1.5rem 3rem}}@media (hover:none) and (pointer:coarse){.form-group input,.submit-button{-webkit-tap-highlight-color:transparent}.submit-button{touch-action:manipulation}}.visitors-header{margin-bottom:2rem;text-align:center}.visitors-container h2{color:#006341;font-size:1.8rem;margin:0 0 .5rem}.visitors-instruction{color:#58595b;font-size:1rem;font-style:italic;margin:0;opacity:.8}.visitors-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.visitor-card{background:linear-gradient(135deg,#fff,#fafafa);border:2px solid #0000;border-radius:16px;box-shadow:0 4px 16px #00000014;cursor:pointer;min-height:220px;overflow:hidden;padding:1.75rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.visitor-card:before{background:linear-gradient(90deg,#006341,#78be20);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.visitor-card:hover:before{opacity:1}.visitor-card:hover{box-shadow:0 12px 24px #0000001f;transform:translateY(-4px) scale(1.02)}.visitor-card:active{transform:translateY(-2px) scale(1.01)}.visitor-card.overnight{background:linear-gradient(135deg,#fff,#fafafa)}.visitor-card.overnight:before{background:linear-gradient(90deg,#d32f2f,#f44336);height:6px;opacity:1}.visitor-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.visitor-header h3{color:#006341;font-size:1.3rem;margin:0}.overnight-badge{animation:badgePulse 2s ease-in-out infinite;border-radius:20px;box-shadow:0 2px 8px #d32f2f66;font-size:.85rem;padding:.5rem 1rem}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.visitor-info p{color:#58595b;margin:.5rem 0}.visitor-info strong{color:#006341;font-weight:600}@media (max-width:1024px){.visitors-grid{gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.visitors-grid{gap:1.25rem;grid-template-columns:1fr}.visitor-card{min-height:200px;padding:1.5rem}.visitor-header h3{font-size:1.2rem}.visitors-container h2{font-size:1.6rem}.visitors-instruction{font-size:.9rem}}@media (min-width:768px) and (max-width:1366px) and (orientation:landscape){.visitors-grid{gap:1.5rem;grid-template-columns:repeat(3,1fr)}.visitor-card{min-height:240px;padding:2rem}}@media (min-width:768px) and (max-width:1024px) and (orientation:portrait){.visitors-grid{gap:1.5rem;grid-template-columns:repeat(2,1fr)}}.history-container{margin:0 auto;max-width:1400px}.history-header{align-items:center;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin-bottom:2rem}.history-container h2{color:#006341;font-size:1.8rem;margin:0}.view-toggle-button{background:linear-gradient(135deg,#006341,#005030);border:none;border-radius:8px;box-shadow:0 2px 4px #00634133;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:all .3s ease}.view-toggle-button:hover{background:linear-gradient(135deg,#005030,#004020);box-shadow:0 4px 8px #0063414d;transform:translateY(-2px)}.view-toggle-button:active{transform:translateY(0)}.history-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.history-card{background:linear-gradient(135deg,#fff,#fafafa);border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden;padding:1.25rem;position:relative}.history-card.overnight:before{background:linear-gradient(90deg,#d32f2f,#f44336);content:"";height:4px;left:0;position:absolute;right:0;top:0}.history-card-header{align-items:flex-start;border-bottom:1px solid #e8e5d5;display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.75rem}.history-card-header h3{color:#006341;font-size:1.2rem;font-weight:600;margin:0}.overnight-badge{background:linear-gradient(135deg,#d32f2f,#f44336);border-radius:12px;box-shadow:0 2px 6px #d32f2f4d;color:#fff;font-size:.8rem;font-weight:700;padding:.35rem .75rem;white-space:nowrap}.history-card-content{display:flex;flex-direction:column;gap:.5rem}.history-info-row{align-items:baseline;display:flex;gap:.5rem}.history-label{color:#006341;font-size:.9rem;font-weight:600;min-width:80px}.history-value{color:#58595b;flex:1 1;font-size:.9rem;word-break:break-word}.history-times{grid-gap:.75rem;border-top:1px solid #e8e5d5;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-top:.75rem;padding-top:.75rem}.history-time{display:flex;flex-direction:column;gap:.2rem}.time-label{color:#006341;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.time-value{color:#58595b;font-size:.9rem;font-weight:500}.time-value.not-checked-out{color:#58595b;font-weight:700}.loading{color:#58595b;font-size:1.2rem}.error-container,.loading{padding:3rem;text-align:center}.retry-button{background-color:#006341;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:background-color .3s ease}.retry-button:hover{background-color:#005030}.empty-state{background:linear-gradient(135deg,#fff,#f9f9f9);border:2px dashed #e8e5d5;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:4rem 3rem;text-align:center}.empty-state h2{color:#006341;margin-bottom:1rem}.empty-state p{color:#58595b;font-size:1.1rem}@media (max-width:1024px){.history-grid{gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.history-grid{gap:1.25rem;grid-template-columns:1fr}.history-card{padding:1rem}.history-container h2{font-size:1.6rem}.history-times{gap:.75rem;grid-template-columns:1fr}.history-card-header h3{font-size:1.15rem}.history-label{min-width:70px}.history-label,.history-value{font-size:.9rem}}@media (min-width:768px) and (max-width:1366px) and (orientation:landscape){.history-grid{gap:1.5rem;grid-template-columns:repeat(3,1fr)}.history-card{padding:1.5rem}}@media (min-width:768px) and (max-width:1024px) and (orientation:portrait){.history-grid{gap:1.5rem;grid-template-columns:repeat(2,1fr)}}.history-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow-x:auto;width:100%}.history-table{background:#fff;border-collapse:collapse;width:100%}.history-table thead{background:linear-gradient(135deg,#006341,#005030);color:#fff}.history-table th{font-size:.95rem;font-weight:600;padding:1rem;text-align:left;white-space:nowrap}.history-table td{border-bottom:1px solid #e8e5d5;color:#58595b;font-size:.9rem;padding:1rem}.history-table tbody tr:hover{background:#fafafa}.history-table tbody tr:last-child td{border-bottom:none}.history-table .overnight-row{background:linear-gradient(135deg,#fff5f5,#fff8f8)}.history-table .overnight-row:hover{background:linear-gradient(135deg,#ffeded,#fff0f0)}.history-table .not-checked-out{color:#58595b;font-weight:700}@media (max-width:768px){.history-header{flex-direction:column;gap:1rem}.history-table td,.history-table th{font-size:.85rem;padding:.75rem .5rem}.view-toggle-button{max-width:300px;width:100%}}
/*# sourceMappingURL=main.52b61ea3.css.map*/