body{margin:0;font-family:-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}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-page{display:flex;justify-content:center;align-items:flex-start;height:100vh;background-color:transparent;height:fit-content;font-family:Arial,sans-serif}.login-container{background-color:#fff;margin:40px 0;padding:10px 20px 20px;border-radius:8px;box-shadow:0 4px 8px #0000001a;width:100%;max-width:320px}.login-container h1,.login-container h2{text-align:center;margin-bottom:20px;color:#333}.input-field{width:100%;padding:12px;margin:4px 0;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:16px}.input-field-readonly{width:100%;padding:12px;margin:4px 0;border:1px solid #ddd;background-color:#ddd;color:gray;border-radius:4px;box-sizing:border-box;font-size:16px}.input-field:focus{border-color:#007bff;outline:none}.login-button{width:100%;padding:12px;margin:0;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer}.login-button:hover{background-color:#0056b3}.login-link{display:block;text-align:center;margin-top:15px;color:#007bff;text-decoration:none}.login-link:hover{text-decoration:underline}.error-message{color:red;font-size:14px;text-align:center;margin-top:10px}.close-button{margin:0;text-align:right;color:#333}.terms-of-servece-consent-checkbox{margin:1rem 0;display:flex;align-items:center;justify-content:flex-start;gap:.1rem;width:fit-content}.terms-of-servece-consent-checkbox label{margin:12px;font-size:.95rem;color:#333;white-space:nowrap}.terms-of-servece-consent-checkbox div{color:#007bff;text-decoration:underline}.terms-of-servece-consent-checkbox a:hover{color:#0056b3}.terms-link{color:#07c;text-decoration:underline;cursor:pointer;margin:0 .2rem}.terms-of-service-content{padding:2rem}.dashboard-container{max-width:auto;margin:0 auto;padding:0!important}.dashboard-header{box-shadow:0 -12px 50px #000;display:flex;justify-content:space-between;align-items:center}.dashboard-app-header{position:sticky;top:0;left:0}.dashboard-app-header h1{margin:0;padding:1.3rem;font-size:larger;color:#fff;text-shadow:2px 2px 16px rgba(0,0,0,.7)}.dashboard-container h2{text-align:center;font-size:larger}p{text-align:center;margin-bottom:4px}.button-container{max-width:420px;padding:1rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin:0 auto}.dashboard-button{flex:1 1 calc(25% - 20px);height:90px;font-size:14px;color:var(--blue-color);font-weight:700;cursor:pointer;transition:background-color .3s ease;background-color:#fff;padding:1rem;border-radius:12px 48px 12px 12px;box-shadow:2px 8px 26px #0006;width:100%;min-width:8rem;box-sizing:border-box;line-height:1}.dashboard-button-admin{flex:1 1 calc(25% - 20px);height:90px;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .3s ease;padding:1rem;border-radius:12px 48px 12px 12px;box-shadow:2px 8px 26px #0006;width:100%!important;min-width:8rem;box-sizing:border-box;line-height:1;border:2px solid orange}.dashboard-header-button{padding:.7rem;background-color:transparent}.dashboard-header-button svg.icon{margin:0}.dashboard-button:disabled{background-color:#ccc;color:#666;cursor:not-allowed;opacity:.6}.button-content{display:flex;flex-direction:column;align-items:flex-start}.icon{margin-bottom:4px}.text{text-align:left}.vahvista-email-napissa-ilmoitus{background-color:#ff0;padding:12px;margin:12px}.kaytto-ohjeet{line-height:1.6;margin:570px 8px;color:var(--gray-color)}.kaytto-ohjeet-viiva{width:100%;height:2px;background-color:var(--gray-color)}.footer-dash{position:fixed;bottom:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:flex-start;background-color:var(--blue-color);padding:.5rem 1rem 2rem}.ala{display:flex;flex-direction:column;align-items:flex-start}.ala-link{font-size:small;color:#d3d3d3;cursor:pointer;padding:2px 0}.ala-link-copyright{font-size:x-small;color:#888;cursor:default;pointer-events:none;padding:2px 0;margin:4px 0 0;height:7px}.ala-napit{display:flex;flex-direction:row;gap:.5rem}@media (max-width: 480px){.dashboard-container{padding:20px}}.profile-page{display:flex;justify-content:center;align-items:flex-start;padding:.2rem;box-sizing:border-box}.profile-container{background-color:var(--blue-color);padding:2rem;margin-top:2rem;border-radius:8px;box-shadow:0 4px 8px #0000001a;width:100%;max-width:400px;box-sizing:border-box}.profile-container h1{text-align:center;margin-bottom:1.5rem;font-size:1.8rem}.profile-picture{display:block;margin:0 auto 1rem;width:150px;height:150px;border-radius:50%;border:3px solid #ffffff}.default-profile-icon{display:block;margin:0 auto 1rem;color:#fff!important;font-size:120px}.input-container{margin-bottom:.5rem!important;box-sizing:border-box}.input-container input{width:100%;padding:.5rem;border-radius:8px;border:1px solid #ccc;font-size:1rem;box-sizing:border-box}.input-container input.readonly{background-color:#e0f7f7;color:#333;cursor:not-allowed}.input-container input.editable{background-color:#fff;color:#000}.profile-actions{text-align:right;margin-top:1.5rem}.profile-actions button{width:180px}.profile-actions button:hover{opacity:.9}.profile-actions button:disabled{background-color:#9e9e9e;cursor:not-allowed}.container-password{margin:38px 2px 0;display:flex;justify-content:flex-end}.in-password{width:180px}.verified{color:#afa}.no-verified{color:#ffa1a1}.verify-email-container{width:100%;display:flex;justify-content:right}.verify-email-container .button{width:100%;height:5rem;background-color:#c27e00;color:#fff;font-size:16px;padding:10px;border:none;border-radius:5px;cursor:pointer;text-align:center;transition:background-color .3s ease}.verify-email-container .button:hover{background-color:#ffc547}.button-container{display:flex;justify-content:space-between;align-items:center;width:100%}.profile-actions button{margin:2px}.editpen-icon{align-items:right;width:2rem;border:none;cursor:pointer}.loading{padding:1rem;font-size:16;text-align:center}.profile-settings-button{margin:1.2rem;border:1px solid white}.button-change-password{background-color:var(--gold-color);margin-top:1rem!important}.profile-info label{margin:0;font-weight:700;font-size:medium}.profile-info label.readonly{font-weight:300}.settings-container{margin:7rem 0;display:flex;flex-direction:column}@media (max-width: 480px){.profile-container{padding:2rem;margin-top:0;box-shadow:none}.profile-container h1{font-size:1.5rem;margin-bottom:1rem}.profile-picture{width:120px;height:120px}.input-container label{font-size:.9rem}.input-container input{padding:.4rem;font-size:.9rem}.profile-actions button{padding:.6rem 1rem;font-size:.9rem}}:root{--blue-color: #164c72;--gray-color: #646a7a;--background-color: #4090c9;--dark-color: #003054}body{background-color:var(--background-color);background:linear-gradient(var(--background-color),rgba(38,131,197,.93),var(--background-color)),url(../srcImages/cabinBgDraw.png) no-repeat center center fixed;background-size:cover;margin:0;padding:0!important;font-family:Arial,sans-serif;color:#fff;box-sizing:border-box}*{box-sizing:inherit}h1,h2,h3,h4,h5,h6{color:#fff}a{color:#80cbc4;text-decoration:none}a:hover{text-decoration:underline}button{background-color:var(--blue-color);margin:.5rem;color:#fff;border:none;border-radius:8px;padding:.75rem 1.5rem;cursor:pointer;font-size:1rem}.button-yes{background-color:#214cfb;color:#fff;border:none;border-radius:8px;padding:.75rem 1.5rem;cursor:pointer}.button-no{background-color:gray;color:#fff;border:none;border-radius:8px;padding:.75rem 1.5rem;cursor:pointer}button:hover{opacity:.9}button:disabled{background-color:#9e9e9e;cursor:not-allowed}input,textarea,select{border-radius:8px;border:1px solid #ccc;padding:.5rem;font-size:1rem;width:100%;box-sizing:border-box}input:focus,textarea:focus,select:focus{border-color:#00796b;outline:none}textarea{resize:none}.go-back-button{background-color:#fff;margin-left:-20px;margin-top:-20px;text-align:center;width:8rem;height:2.5rem;border-radius:1.25rem;position:relative;color:#000;font-size:1.25rem;font-weight:600;display:flex;justify-content:center;align-items:center;overflow:hidden}.go-back-button-icon{background-color:var(--gray-color);border-radius:1rem;height:2rem;width:25%;display:flex;justify-content:center;align-items:center;position:absolute;left:.25rem;top:.25rem;z-index:10;transition:width .5s ease}.go-back-button:hover .go-back-button-icon{width:7.5rem}.go-back-text{transform:translate(.5rem);margin:0}.app-header-h1{padding-top:3rem;margin:0;text-align:center}.app-button-container{padding:2rem;position:fixed;left:50%;transform:translate(-50%);display:grid;grid-template-columns:repeat(2,1fr);gap:28px;justify-items:center}.app-button{margin-left:auto;margin-right:auto;width:130px;height:130px;font-size:14px;color:#fff;cursor:pointer;transition:background-color .3s ease;background-color:transparent;padding:1rem;border-radius:20px;box-shadow:2px 8px 26px #0000004d;box-sizing:border-box}.app-button-content{display:flex;flex-direction:column;align-items:center}.search-container{display:flex;align-items:center;margin-bottom:10px}.search-icon{margin:8px;color:gray}.search-input{padding:8px;width:270px;border:1px solid #ccc;border-radius:5px;outline:none}.no-wrap{white-space:nowrap}@media (max-width: 480px){body{padding:.5rem}}.loading-spinner{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#ffffffb3;z-index:9999;display:flex;justify-content:center;align-items:center}.spinner{border:8px solid #f3f3f3;border-top:14px solid var(--dark-color);border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite}.close-view-x{position:fixed;top:0;left:0;width:2rem;height:2rem;border-radius:50%;margin:.5rem;font-size:20px;z-index:20;cursor:pointer;background-color:var(--blue-color);box-shadow:0 0 7px #fff}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.users-container{color:var(--darkgray-color);text-align:center;padding:0;margin-top:1rem;background:#f9f9f9;position:relative;z-index:2;overflow-x:auto}.trash-user-button{margin:8px;padding:0;color:var(--gray-color);background-color:transparent}.deactivated-row{background-color:#d3d3d3;color:gray}.users-container table{text-align:left;color:#000;border-collapse:collapse}.users-container td{border:1px solid lightgray;padding:0 4px;white-space:nowrap}.users-container th{background-color:var(--blue-color);font-weight:700;color:#fff;border:1px solid #ddd;padding:0 4px}.users-container th:first-child,.users-container td:first-child{position:sticky;left:0;z-index:2;background-color:var(--blue-color);color:#fff}.users-content h3{margin:1rem 0 0 3rem}.admin-button{border:2px solid orange;margin:1rem;display:flex;align-items:center;justify-content:center}.admin-button svg{margin:0 1rem 0 0}.new-user-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:flex-start;z-index:9999}.new-user-modal{background-color:#f0f0f0;margin-top:2rem;padding:20px;border-radius:8px;width:90%;max-width:400px;box-shadow:0 4px 8px #0003;animation:slideDown .3s ease-out}.new-user-modal p{color:#000;font-weight:700;margin:0 1rem 1rem}.buttons-new-user-container{display:flex;align-items:center;justify-content:center}.link-in-button{max-width:300px;overflow:hidden;text-overflow:ellipsis}.set-new-password-page{display:flex;justify-content:center;align-items:flex-start;padding:1rem;box-sizing:border-box}.set-new-password-container{margin-top:1rem;background-color:var(--gray-color);padding:2rem;border-radius:30px;box-shadow:0 4px 8px #0000001a;width:100%;max-width:400px;box-sizing:border-box;box-shadow:15px 15px 30px #0022344d,-15px -15px 30px #00385033}.set-new-password-container h1{text-align:center;margin-bottom:1.5rem;margin-top:0;font-size:1.8rem}.input-container{margin-bottom:1rem;box-sizing:border-box}.input-container label{display:block;font-weight:700;margin-bottom:.2rem;font-size:1rem}.input-container input{width:100%;padding:.5rem;margin-bottom:.5rem;border-radius:8px;border:1px solid #ccc;font-size:1rem;box-sizing:border-box}.save-new-password-button{display:block;margin-left:auto!important;margin-right:auto!important;margin:0;width:auto;padding:.8rem;font-size:1rem;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s}.button:hover{background-color:var(--dark-color)}.error-message{color:red;font-size:1rem;margin-bottom:.5rem}.success-message{font-weight:500;color:#01b701;text-align:center;text-shadow:0px 0px 4px white;font-size:1rem;margin-bottom:1rem}@media (max-width: 480px){.set-new-password-container{padding:1.5rem;border-radius:20px;box-shadow:none}.set-new-password-container h1{font-size:1.5rem}.input-container input{padding:.4rem;font-size:.9rem}.button{padding:.6rem;font-size:.9rem}}.calendar-container{max-width:700px;margin:auto;padding:2px}.p-m-non{margin:0}.month-container{display:flex;flex-direction:column;align-items:center;width:100%}.month-title{text-align:center;font-size:28px!important;font-weight:700;margin-bottom:2px}.booking-calendar{width:100%;display:flex;justify-content:center}.booking-table{width:100%;max-width:700px;border-collapse:collapse;background-color:#f0f8ff}.booking-table th,.booking-table td{color:var(--blue-color);border:1px solid #ddd;text-align:center;padding:0!important;width:14.28%;position:relative}.booking-table button{width:100%;height:100%;background-color:transparent;color:#125a5a!important;border:none;border-radius:4px!important;font-size:20px!important;padding:24px;margin:0}.booking-table button:hover{background-color:#d0e7ff}.date-selection{position:fixed;top:0;left:0;width:100%;margin:0;padding:10px 20%;background-color:var(--blue-color);box-shadow:0 0 17px #ffffffb3;z-index:10}.date-header{padding-left:3rem;display:flex;justify-content:right;align-items:center;margin:0}.date-selection h4{font-size:1.2rem;margin:0 0 0 1rem}.book-button{padding:8px!important;margin:4px 7px!important;font-size:1rem;background-color:#4caf50;color:#fff;border:none;border-radius:5px;cursor:pointer}.book-button-admin{padding:8px!important;margin:4px 7px!important;font-size:1rem;color:#fff;border:2px solid orange!important;border-radius:5px;cursor:pointer}.book-button:hover{background-color:#45a049}.date-selection span{display:inline-block;background-color:#fff;padding:8px 12px;margin:7px;box-shadow:0 2px 5px #0000001a;font-size:1rem;font-weight:700;color:#333}.date-selection button{margin:7px;padding:8px 12px;border:1px solid white}.title-header{display:flex;justify-content:center;align-items:center;margin-bottom:7px;padding:0;gap:1rem}.title-header h3{margin:1rem 0 0}.calendar-container svg.icon{margin:0}.calendar-return{padding:2rem}.guest-name-on-stay{position:absolute;left:0;bottom:1px;font-size:14px;word-break:break-word}.dates{background-color:#ffffff1a;width:fit-content;padding:.5rem .5rem .5rem 0;margin:0;border-radius:7px}.booking-calendar-mokin-ohjeet-nappi{width:170px;margin:8rem 0 0}.note-input{list-style:none;padding:1rem;margin:4px 0 20px;width:80%;max-width:400px;background:#fff;border-radius:10px;box-shadow:0 4px 10px #0000004d;font-size:large}.admin-booking-info{margin:1rem;padding:1rem;background-color:var(--blue-color);border:1px solid orange;border-radius:12px}.odottaa-teksti{color:orange;position:absolute;top:20%;left:5%;transform:translateY(-50%);font-weight:700;white-space:nowrap}.error-message-calendar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;color:#ff0;background-color:var(--blue-color);box-shadow:4px 4px 22px #000000b3;font-size:22px;text-align:center;margin:10px 0 0;padding:3.7rem 1rem 7rem;white-space:pre-line;z-index:999}.varaa-osastolle-button{position:fixed;bottom:7%;margin:0;padding:7px;width:27px;border:1px solid orange;font-size:small;z-index:999;writing-mode:vertical-rl;text-orientation:mixed}@media (max-width: 600px){.calendar-container{padding:4px!important}.booking-table{width:100%}.booking-table th,.booking-table td{padding:5px;font-size:14px;width:14.28%}.booking-table button{height:auto;font-size:14px;padding:17px}.month-title{font-size:18px}.date-selection{padding:10px}.booking-table button{font-size:16px!important}.guest-name-on-stay{font-size:9px}.error-message-calendar{font-size:18px;padding:1rem 1rem 3rem}.odottaa-teksti,.book-button,.book-button-admin{font-size:small}}.my-reservation-content{display:flex;flex-direction:column;align-items:center}.my-reservation-title-header{font-size:24px;font-weight:700;text-align:center;margin-bottom:20px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(600px,1fr));gap:20px;width:100%}.reservation-card{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 7px 7px #0000004d;color:var(--blue-color)}.reservation-card-admin{border-radius:10px;padding:1rem;box-shadow:0 7px 7px #0000004d;border:2px solid orange}.varaus-tehty{margin:1rem 0;width:100%;text-align:center}.reservation-card h2{font-size:22px;font-weight:700;margin:4px 0 0;color:var(--blue-color)}.reservation-card-admin h2{font-size:22px;font-weight:700;margin:4px 0 0}.reservation-card p{font-size:14px;margin:13px 0;color:#555}.reservation-card strong{color:#333}.my-reservation-button-container{width:100%;display:flex;justify-content:space-between;padding-bottom:4px}.my-reservation-cancel-button{background-color:#c17d00!important;color:#fff;border:none;padding:8px 12px;margin:1rem 0 0;border-radius:5px;cursor:pointer !}.my-reservation-button{color:#fff;border:none;padding:8px 12px;margin:1rem 0 0;border-radius:5px;cursor:pointer !}.my-reservation-button-icon{margin:0 4px 0 0}.my-reservation-in-out-dates{display:flex;justify-content:space-between;font-size:large;font-weight:700;padding:7px;border-radius:5px;background-color:var(--background-color);border:1px solid var(--blue-color);color:#fff}.my-reservation-in-out-dates span{padding:4px;background-color:#fff;color:var(--blue-color)}.fullscreen-overlay-users{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--blue-color);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;color:#fff;font-size:1.2rem;text-align:center;padding:20px}.users-list{list-style:none;padding:0;margin:20px 0;width:80%;max-width:400px;background:#fff;border-radius:10px;overflow-y:auto;box-shadow:0 4px 10px #0000004d}.users-list li{padding:15px;border-bottom:1px solid #ddd;color:#333;font-weight:700;cursor:pointer}.users-list li:last-child{border-bottom:none}.users-list li:hover{background:#f0f0f0}.button-close-users-list{margin:20px 0;padding:10px 20px;font-size:1rem;font-weight:700;background:gray;color:#fff;border:none;border-radius:5px;cursor:pointer}.user-item{text-align:center}.maksu-boxi{background-color:#ff0;padding:1rem;margin:1rem 0 0}@media (max-width: 768px){.grid{grid-template-columns:1fr}.calendar-container{padding:15px}}.cabin-bio-container{padding:1rem;max-width:700px;margin-left:auto;margin-right:auto}.cabin-bio-container h2{margin:0 0 1rem}.cabin-details{margin-bottom:240px}.cabin-details p{margin:.5rem 0;align-items:flex-start;text-align:left;font-size:larger;line-height:1.3}.bio-content{flex:none!important;margin:0!important;box-shadow:1px 1px 12px #fff3;padding:2rem 1rem}.cabin-details-header{border-radius:24px;background-color:#fff3;padding:1rem;margin:0 0 3rem}.update-bio-button{justify-content:right;border:2px solid orange;margin:1rem}.bio-textarea{width:100%;min-height:530px;padding:10px;font-size:16px;border-radius:5px;border:1px solid #ccc;resize:none}.house-user-icon{margin-left:auto;margin-right:auto}.pay-manager-container{padding:0;margin-left:auto;margin-right:auto;background-color:var(--background-color);display:flex;flex-direction:column;min-height:100vh}.pay-manager-vahvistamattomat-page{display:flex;justify-content:center;align-items:flex-start;padding:.2rem;box-sizing:border-box}.pay-manager-title{display:flex;justify-content:space-between;max-width:360px}.pay-manager-container h2{padding:1rem 1rem 0 3rem;margin:0}.reservation-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;position:relative;max-height:82vh;overflow-y:auto;margin:2px 0}.reservation-table{width:100%;border-collapse:collapse;margin:0;width:fit-content;font-size:small}.reservation-table th,.reservation-table td{border:1px solid #ddd;padding:8px;text-align:left;white-space:nowrap;color:#000;background-color:#fff}.reservation-table th{background-color:var(--blue-color);font-weight:700;color:#fff;position:sticky;top:0;z-index:2}.reservation-table th:first-child,.reservation-table td:first-child{position:sticky;left:0;z-index:2;background-color:var(--blue-color);color:#fff;border:2px solid white}.reservation-table th{position:sticky;top:0}.vahvistamattomat-table{border-collapse:separate;border-spacing:1rem}.check-receipt-row{background:linear-gradient(to bottom,#fff,#efefef);color:#000;width:100vh;max-width:600px;padding:0;border-radius:8px}.receipt-info{padding:1rem}.mr-2{margin-right:1rem}.vahvista-kuitti{margin:0 2rem 2rem}.pay-manager-container-header{background-color:var(--dark-color)}.pay-manager-header-buttons{display:flex!important;gap:10px;align-items:center;justify-content:center;padding:0 1rem;margin-top:4px}.pay-manager-header-buttons button{margin:0;padding:12px;border-radius:8px 8px 0 0;cursor:pointer;color:gray}.pay-manager-header-buttons button.active{background-color:var(--background-color);color:#fff}.notification-badge{position:absolute;top:4px;right:4px;width:20px;height:20px;background-color:orange;border-radius:50%;border:3px solid white;transform:translate(50%,-50%);color:#000;font-size:x-small;font-weight:900}.show-receipt-button{background-color:#ddd;padding:4px;border-radius:4px;text-align:center;cursor:pointer}.page-footer{width:100%;margin:0;padding:1rem;flex-grow:1;background-color:var(--dark-color);display:flex;justify-content:center}@media (max-width: 600px){.reservation-table{font-size:x-small}}
