*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{min-height:100dvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ul,ol{list-style:none}#app{display:flex;flex-direction:column;min-height:100dvh}.main-content{flex:1;display:flex;flex-direction:column}body{font-family:DinCondensed,sans-serif;font-size:20px;line-height:1.5}h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.25}h1{font-size:clamp(1.75rem,4vw,2.5rem)}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:clamp(1.25rem,2.5vw,1.5rem)}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p:last-child{margin-bottom:0}@font-face{font-display:swap;font-family:DinCondensed;font-style:normal;font-weight:700;src:url(/assets/din-condensed_regular-CJkJRd6w.woff2) format("woff2")}@font-face{font-display:swap;font-family:DinCondensed;font-style:normal;font-weight:400;src:url(/assets/din-condensed_light-LD1CW0bD.woff2) format("woff2")}@font-face{font-display:swap;font-family:Fandango;font-style:normal;font-weight:400;src:url(/assets/Fandango-BH3CjA5v.woff2) format("woff2")}.app-button{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:20px;font-weight:500;color:var(--ColorWhite);cursor:pointer;transition:all .3s;white-space:nowrap;width:100%;margin-top:5px}.app-button:hover:not(:disabled){filter:brightness(.9)}.app-button:disabled{opacity:.5;cursor:not-allowed}.museumscard{background-color:var(--ColorRosa);border:3px solid var(--ColorBlue);border-radius:20px;display:flex;flex-direction:column;align-items:center;padding:20px;aspect-ratio:3/2;width:100%;position:relative;color:var(--ColorWhite);container-type:inline-size;box-shadow:0 4px 16px #0000004d}.museumscard .museumscard_header{width:100%}.museumscard .museumscard_header .museumscard_intro{font-size:4cqw;font-weight:400;margin-bottom:2.5cqw;text-align:center;width:100%;display:block}.museumscard .museumscard_header .museumscard_owner{font-family:Fandango,sans-serif;font-weight:400;text-align:center;width:100%;margin-bottom:8cqw;white-space:nowrap;line-height:1;height:30%;display:block}.museumscard .museumscard_stampfields{display:flex;justify-content:space-between;gap:6.5cqw;height:50%;margin-top:auto}.museumscard .museumscard_stampfields .stampfield{height:100%}.museumscard .museumscard_stampfields .stampfield .stampfield_background{width:100%;height:100%}.museumscard .museumscard_stampfields .stampfield .stampfield_background img{width:100%;height:100%;object-fit:contain}.museumscard .museumscard_delete{position:absolute;top:10px;right:10px;background-color:transparent;border:none;cursor:pointer}.museumscard .museumscard_juleica{position:absolute;top:10px;left:10px;width:15%;height:auto}.museumscard .museumscard_juleica img{width:100%;height:100%;object-fit:contain}.museumscard.museumscard--add{border:2px dashed var(--ColorBlue);background-color:var(--ColorGray);display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--ColorRosa);cursor:pointer}.card-carousel{margin:0 -20px}.card-carousel .swiper-slide{display:flex;justify-content:center;align-items:center;transition:padding .3s ease;margin-top:auto;margin-bottom:auto;padding:10px 5px 20px}.card-carousel .swiper-slide .museumscard{width:100%;aspect-ratio:16/12;overflow:hidden}.card-select-modal{position:relative;text-align:left}.card-select-modal .modal_close{position:absolute;top:15px;right:15px;background:none;border:none;font-size:24px;cursor:pointer;line-height:1}.card-select-modal .card-select-modal_title{font-weight:400;color:var(--ColorBlack);margin-bottom:2px}.card-select-modal .card-select-modal_location{font-size:26px;font-weight:700;margin-bottom:20px}.card-select-modal .card-select-modal_today-hint{font-size:14px;color:var(--ColorBlue);font-weight:600;text-align:center;margin-bottom:10px}.card-select-modal .card-select-modal_label{font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ColorBlack);margin-bottom:10px}.card-select-modal .card-select-modal_pills{margin-bottom:20px}.card-select-modal .card-select-modal_pills .swiper-wrapper{align-items:center}.card-select-modal .card-select-modal_pills .swiper-slide{width:auto}.card-select-modal .card-select-modal_shapes{display:flex;gap:10px;margin-bottom:20px;align-items:center;justify-content:center}.card-select-modal .card-select-modal_colors{display:flex;gap:12px;margin-bottom:24px;align-items:center;justify-content:center}.card-pill{font-family:Fandango;flex-shrink:0;width:90px;padding:5px 10px;border-radius:10px;border:2px solid var(--ColorGray);background:var(--ColorGray);font-size:26px;line-height:1;font-weight:400;cursor:pointer;transition:border-color .15s,background .15s;aspect-ratio:3/2;overflow:hidden}.card-pill--active{border-color:var(--ColorBlue);background:var(--ColorRosa);color:var(--ColorWhite)}.card-pill--stamped{opacity:.4;text-decoration:line-through}.shape-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;border:2px solid var(--ColorGray);border-radius:12px;background:var(--ColorGray);cursor:pointer;transition:border-color .15s}.shape-btn .stamp-svg{width:36px;height:36px}.shape-btn span{font-size:16px;font-weight:500;color:var(--ColorBlack)}.shape-btn--active{border-color:var(--ColorBlue);background:var(--ColorWhite)}.color-swatch{width:36px;height:36px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:border-color .15s,transform .15s}.color-swatch--active{border-color:var(--ColorBlack);transform:scale(1.15)}.stamp-modal{padding:24px 20px 28px}.stamp-modal .stamp-modal_instruction{font-size:15px;font-weight:500;text-align:center;margin-bottom:20px;color:var(--ColorBlack)}.stamp-modal .stamp-modal_error{font-size:14px;color:var(--ColorRed);text-align:center;margin-top:14px}.stamp-canvas{position:relative;width:100%;aspect-ratio:1/1;cursor:crosshair;border-radius:8px;overflow:hidden}.stamp-canvas .stamp-canvas--error{cursor:default;opacity:.5}.stamp-canvas .stamp-canvas_frame{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}.stamp-canvas .stamp-canvas_stamp{position:absolute;transform:translate(-50%,-50%);width:65%;pointer-events:none}.stamp-canvas .stamp-canvas_stamp .stamp-svg{width:100%;height:auto}.stamp-canvas .stamp-canvas_stamp--animate{animation:stamp-press .35s cubic-bezier(.2,.8,.4,1) forwards}@keyframes stamp-press{0%{transform:translate(-50%,-50%) scale(1.6);opacity:0}50%{transform:translate(-50%,-50%) scale(.85);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.stampfield{position:relative}.stampfield .stampfield_stamp{position:absolute;transform:translate(-50%,-50%);width:65%;pointer-events:none}.stampfield .stampfield_stamp .stamp-svg{width:100%;height:auto}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal{background-color:#fff;border-radius:20px;padding:30px;width:100%;max-width:400px}.modal__title{margin-bottom:20px}.modal__form{display:flex;flex-direction:column;gap:15px}.modal__field{display:flex;flex-direction:column;gap:5px}.modal__field label{font-weight:500;color:#000}.modal__field input{padding:5px 10px;border:1px solid #CCCCCC;border-radius:8px;background-color:#fff;transition:border-color .3s}.modal__field input:focus{outline:none;border-color:#374ba5}.modal__hint{margin-bottom:20px;color:#555}.modal__warning{display:flex;align-items:flex-start;gap:10px;background-color:#fff3e0;border:1px solid #D76346;border-radius:10px;padding:12px 14px;margin-bottom:16px;color:#8b3000}.modal__warning svg{flex-shrink:0;margin-top:1px}.modal__warning p{font-size:.9rem;line-height:1.4}.modal__actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.modal__error{color:#d76346}.app-menu{position:fixed;bottom:0;left:0;width:100dvw;background-color:var(--ColorBlue);z-index:1000}.app-menu .app-menu_nav{display:flex;justify-content:stretch;align-items:center}.app-menu .app-menu_nav .menulink{color:var(--ColorWhite);background-color:var(--ColorBlue);font-size:14px;text-decoration:none;transition:.15s ease-in-out;border:1px solid var(--ColorWhite);width:25%;height:65px;padding:10px;display:flex;flex-direction:column;justify-content:center;align-items:center}.app-menu .app-menu_nav .menulink .menulink_icon{width:30px;height:30px;object-fit:contain}.app-menu .app-menu_nav .menulink .menulink_title{padding-top:4px;font-size:12px}.app-menu .app-menu_nav .menulink.menulink--compact{position:absolute;left:50%;transform:translate(-50%);width:58px;height:58px;border-radius:50%;bottom:50%}.app-menu .app-menu_nav .menulink.menulink--compact .menulink_title{display:none}.app-menu .app-menu_nav .menulink.menulink--active{background-color:var(--ColorWhite);color:var(--ColorBlue);border-color:var(--ColorBlue)}.view.view--dashboard .view_header_settings{color:var(--ColorBlue)}.view.view--dashboard .visits{display:flex;flex-direction:column;gap:10px;max-width:600px;margin:30px auto}.view.view--dashboard .visits .visits_heading{text-align:center;font-weight:700;margin-bottom:0}.view.view--dashboard .visits .visits_list{display:flex;flex-direction:column;gap:10px}.view.view--dashboard .visits .visits_item{display:flex;justify-content:space-between;padding:10px;background-color:var(--ColorGray);border-radius:8px;align-items:center}.view.view--dashboard .visits .visits_empty{text-align:center;color:var(--ColorBlue);opacity:.5}.view.view--dashboard .visits .btn-sweepstake{background-color:var(--ColorBlue);border:transparent;color:var(--ColorWhite);font-size:16px;padding:15px 13px;border-radius:30px;margin-top:40px;cursor:pointer;transition:box-shadow .3s ease}.view.view--dashboard .visits .btn-sweepstake.btn-sweepstake--disabled{background-color:var(--ColorGray);color:var(--ColorBlue);opacity:.6;cursor:not-allowed}.view.view--dashboard .visits .btn-sweepstake.btn-sweepstake--highlight{animation:sweepstake-pulse .4s ease-in-out 3}@keyframes sweepstake-pulse{0%,to{box-shadow:0 0 #ffa50000;transform:scale(1)}50%{box-shadow:0 0 0 12px #ffa50059;transform:scale(1.04)}}.view.view--dashboard .visits .visits_participating{background-color:var(--ColorBlue);border:transparent;color:var(--ColorWhite);font-size:16px;padding:15px 13px;border-radius:30px;margin-top:40px;text-align:center;display:flex;align-items:center;justify-content:center;gap:10px;opacity:.5}.view.view--map{flex:1;display:flex;flex-direction:column;padding-bottom:65px}.view.view--map .map-intro{padding:12px;background-color:var(--ColorBeige);display:flex;height:89px;align-items:center}.view.view--map .map-intro .view_header_logo{position:absolute;height:64px;width:64px;display:block;margin-right:12px}.view.view--map .map-intro .map-intro_title{width:100%;font-size:33px;font-weight:600;text-align:center;color:var(--ColorBlue)}.view.view--map .map-container{width:100%;flex:1;min-height:0}.view.view--map .map-detail{position:fixed;bottom:70px;right:10px;background:var(--ColorRosa);color:var(--ColorWhite);border-radius:16px;padding:0;box-shadow:0 4px 24px #00000026;border:2px solid var(--ColorBlue);z-index:10;overflow:hidden;width:calc(100% - 20px);max-width:800px}.view.view--map .map-detail .map-detail_close{position:absolute;top:8px;right:8px;background:none;border:none;cursor:pointer;font-size:22px;color:var(--ColorWhite);line-height:1}.view.view--map .map-detail .map-detail_image{width:100%;margin:0 0 20px;height:140px;object-fit:cover}.view.view--map .map-detail .map-detail_title{padding:0 20px;font-size:28px;margin:0 0 5px}.view.view--map .map-detail .map-detail_teaser{font-size:20px;margin:0 0 5px;padding:0 20px}.view.view--map .map-detail .map-detail_address{font-size:16px;margin:0 0 5px;padding:0 20px}.view.view--map .map-detail .map-detail_link{font-size:16px;display:inline-block;font-weight:500;text-decoration:underline;padding:0 20px;margin:0 0 20px}.view.view--map .map-detail-enter-active,.view.view--map .map-detail-leave-active{transition:opacity .3s,transform .3s}.view.view--map .map-detail-enter-from,.view.view--map .map-detail-leave-to{opacity:0;transform:translateY(12px)}.view.sweepstake-view .sweepstake-intro{padding:12px;background-color:var(--ColorBeige);display:flex;height:89px;align-items:center}.view.sweepstake-view .sweepstake-intro .view_header_logo{position:absolute;height:64px;width:64px;display:block;margin-right:12px}.view.sweepstake-view .sweepstake-intro .sweepstake-intro_title{width:100%;font-size:33px;font-weight:600;text-align:center;color:var(--ColorBlue)}.view.sweepstake-view .view_content{color:var(--ColorBlue);max-width:800px;margin:0 auto;padding-bottom:100px}.view.sweepstake-view .view_content h1{margin-bottom:30px}.view.sweepstake-view .view_content h2{margin-top:20px}.view.sweepstake-view .view_content h3{margin-top:10px}.view.sweepstake-view .view_content .scanner-link{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:10px 0}.view.sweepstake-view .view_content .scanner-link .scanner-icon{padding:16px;background-color:var(--ColorRosa);border-radius:50%;object-fit:contain}.view.info-view .info-intro{padding:12px;background-color:var(--ColorBeige);display:flex;height:89px;align-items:center}.view.info-view .info-intro .view_header_logo{position:absolute;height:64px;width:64px;display:block;margin-right:12px}.view.info-view .info-intro .info-intro_title{width:100%;font-size:33px;font-weight:600;text-align:center;color:var(--ColorBlue)}.view.info-view .view_content{color:var(--ColorBlue);padding:20px 20px 100px;max-width:800px;margin:0 auto}.view.info-view .view_content h1{margin-bottom:30px}.view.info-view .view_content h3{margin-top:20px}.view.info-view .view_content b{margin-top:20px;display:block}.view.scanner-view{background-color:var(--ColorBlue);height:100vh;padding:0 20px}.view.scanner-view .scanner-intro{display:flex;flex-direction:column;align-items:center;justify-content:center;height:64px;gap:20px;margin:20px 0}.view.scanner-view .scanner-intro .view_header_logo{height:64px;width:64px;display:block}.view.scanner-view .section_title{font-size:35px;font-weight:700;color:var(--ColorWhite);text-align:center;margin-top:40px;margin-bottom:25px}.view.scanner-view .scanner-debug{display:flex;flex-direction:column;gap:10px;margin-top:20px}.view.scanner-view .scanner-debug__select{padding:10px 12px;border-radius:8px;border:none;font-size:15px;width:100%;background:#fff3;color:var(--ColorWhite)}.view.scanner-view .scanner-debug__select option{color:var(--ColorBlack);background:var(--ColorWhite)}.view.scanner-view .scanner-area{aspect-ratio:1/1;background-color:var(--ColorBlack);margin:0 auto;position:relative;border-radius:5px;overflow:hidden;border:1px solid var(--ColorWhite);max-height:65vh}.view.scanner-view .scanner-area #qr-reader{width:100%;height:100%}.view.scanner-view .scanner-area #qr-reader video{width:100%;height:100%;object-fit:cover}.view.scanner-view .scanner-area #qr-reader img,.view.scanner-view .scanner-area #qr-reader canvas{display:none}.view.scanner-view .scanner-area span{position:absolute;top:20px;left:20px;width:40%;height:40%;border-left:2px solid var(--ColorWhite);border-top:2px solid var(--ColorWhite);pointer-events:none;z-index:1}.view.scanner-view .scanner-area span:nth-child(2){left:unset;right:20px;transform:rotate(90deg)}.view.scanner-view .scanner-area span:nth-child(3){top:unset;bottom:20px;transform:rotate(-90deg)}.view.scanner-view .scanner-area span:nth-child(4){top:unset;bottom:20px;left:unset;right:20px;transform:rotate(180deg)}.modal-overlay .modal.scan-location-modal{padding:0}.modal-overlay .modal.scan-location-modal .modal_close{position:absolute;top:15px;right:15px;background:none;border:none;font-size:24px;cursor:pointer;color:var(--ColorWhite)}.modal-overlay .modal.scan-location-modal .scan-location-modal_image{width:100%;height:160px;object-fit:cover;border-radius:10px;margin-bottom:15px}.modal-overlay .modal.scan-location-modal .scan-location-modal_title{font-size:26px;font-weight:700;margin-bottom:6px;padding:0 20px}.modal-overlay .modal.scan-location-modal .scan-location-modal_address{font-size:18px;color:#666;margin-bottom:20px;padding:0 20px}.modal-overlay .modal.scan-location-modal .app-button{max-width:90%;margin-bottom:20px}.login-view_wrap{display:flex;flex-direction:row;align-items:center;justify-content:center;height:auto;background-color:var(--ColorBlue);font-size:16px;padding:50px 0;min-height:100vh}.login-view_wrap .login-view{display:flex;gap:20px;width:80%}.login-view_wrap .login-view .login-view__card{background-color:var(--ColorWhite);padding:20px;border-radius:8px;width:33.3333333333%}.login-view_wrap .login-view .login-view__info{background-color:var(--ColorWhite);padding:20px;border-radius:8px;width:66.6666666667%}.login-view_wrap .login-view .login-view__info h2{margin-bottom:10px}@media(max-width:700px){.login-view_wrap .login-view{flex-direction:column-reverse}.login-view_wrap .login-view .login-view__card,.login-view_wrap .login-view .login-view__info{width:100%}}.login-form,.login-form form{display:flex;flex-direction:column;gap:20px}.login-form__field{display:flex;flex-direction:column;gap:5px}.login-form__field label{font-weight:500;color:var(--ColorBlack)}.login-form__field input{padding:5px 10px;border:1px solid var(--ColorBlue);border-radius:8px;background-color:var(--ColorWhite);transition:border-color .3s}.login-form__field input:focus{outline:none;border-color:var(--ColorRosa)}.login-form__hint{font-size:14px;color:var(--ColorBlack)}.login-form__error{color:var(--ColorRosa);font-size:14px}.view--settings .view_header_title{font-size:18px;font-weight:700}.settings-section{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}.settings-section__title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ColorBlack);opacity:.5;margin-bottom:2px}.settings-item--info{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--ColorGray);border-radius:12px}.settings-item__text{display:flex;flex-direction:column;gap:2px}.settings-item__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.5}.settings-item__value{font-weight:500}.settings-item__edit{background:none;border:none;cursor:pointer;padding:4px;color:var(--ColorBlack);opacity:.4;flex-shrink:0;transition:opacity .2s}.settings-item__edit:hover{opacity:.8}.settings-item--button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;background:var(--ColorGray);border:none;border-radius:12px;font-weight:500;cursor:pointer;color:var(--ColorBlack)}.settings-item--button svg{opacity:.4}.settings-language{display:flex;gap:10px;flex-wrap:wrap}.settings-language .settings-language__btn{background:none;border:1px solid var(--ColorBlue);color:var(--ColorBlue);padding:10px 16px;border-radius:8px;cursor:pointer}.settings-language .settings-language__btn.settings-language__btn--active{background:var(--ColorRosa);color:var(--ColorWhite)}.settings-error{color:var(--ColorOrange);font-size:14px;text-align:center}.recover-modal{text-align:left;position:relative}.recover-modal .modal_close{position:absolute;top:15px;right:15px;background:none;border:none;font-size:24px;cursor:pointer;line-height:1}.recover-modal__title{font-size:20px;font-weight:700;margin-bottom:16px}.recover-modal__hint{font-size:14px;color:var(--ColorBlack);margin-bottom:16px;line-height:1.5}.recover-modal__field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.recover-modal__field label{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.recover-modal__field input{padding:10px 12px;border:1px solid var(--ColorGray);border-radius:8px;width:100%;box-sizing:border-box}.recover-modal__field input:focus{outline:none;border-color:var(--ColorBlue)}.recover-modal__error{font-size:14px;color:var(--ColorOrange);margin-bottom:12px}.recover-modal form{display:flex;flex-direction:column;gap:10px}.sweepstake-modal__field{display:flex;flex-direction:column;gap:6px;margin:16px 0;text-align:left}.sweepstake-modal__field label{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.sweepstake-modal__field input{padding:10px 12px;border:1px solid var(--ColorGray);border-radius:8px;width:100%;box-sizing:border-box}.sweepstake-modal__field input:focus{outline:none;border-color:var(--ColorBlue)}.sweepstake-modal__field input:disabled{opacity:.5}.sweepstake-modal__error{font-size:14px;color:var(--ColorOrange);margin-bottom:8px}.sweepstake-modal__stored-email{font-size:16px;font-weight:600;margin:8px 0 16px}html{scrollbar-gutter:stable;overflow-y:scroll}body{--ColorBlue: #374BA5;--ColorOrange: #D76346;--ColorYellow: #F6D14C;--ColorGray: #FAF0F0;--ColorWhite: #FFFFFF;--ColorBlack: #000000;--ColorBeige: #FAF0F0;--ColorRosa: #EEA3C1}.view_header{display:flex;height:auto;align-items:center;justify-content:space-between;padding:20px}.view_header .view_header_spacer{width:32px;height:32px}.view_header .view_header_close{width:32px;height:32px;display:block;position:relative;cursor:pointer}.view_header .view_header_close span{position:absolute;top:50%;left:50%;width:20px;height:2px;background-color:var(--ColorBlack);transform:translate(-50%,-50%) rotate(45deg)}.view_header .view_header_close span:before{content:"";position:absolute;top:0;left:0;width:20px;height:2px;background-color:var(--ColorBlack);transform:rotate(90deg)}.view_header .view_header_logo{height:64px;width:64px;display:block;margin:auto}.view_header .view_header_settings{height:32px;width:auto;display:flex;flex-direction:column;justify-content:center;align-items:center}.view_header .view_header_settings svg{height:32px;width:32px;object-fit:contain}.view_content{padding:20px 20px 70px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1000;display:flex;justify-content:center;align-items:center}.modal-overlay .modal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--ColorWhite);padding:30px;border-radius:20px;text-align:center;width:100%;max-width:400px}.modal-overlay .modal input[type=text]{width:100%;padding:10px;margin-bottom:20px;border:1px solid var(--ColorGray);border-radius:8px}
