:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17352b;--muted:#597067;--paper:#f7f3ea;--card:#fffdf8;--line:#dce2d9;--accent:#db5b35;--accent-soft:#f8ded3;--success:#216548;--success-soft:#dff0e6}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:radial-gradient(circle at 85% 8%, #db5b3524, transparent 24rem), var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,a{font:inherit}.admin-page{min-height:100vh;padding:3rem 1rem}.admin-shell,.admin-login-card{width:min(100%,70rem);margin:0 auto}.admin-login-card{border:1px solid var(--line);background:var(--card);border-radius:1.25rem;max-width:28rem;padding:2rem}.admin-login-card h1,.admin-header h1{font-size:clamp(2.5rem,8vw,4rem)}.admin-intro,.admin-empty{color:var(--muted);line-height:1.6}.admin-form{gap:1rem;margin-top:1.75rem;display:grid}.admin-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.admin-logout{border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:.65rem 1rem;font-weight:700}.admin-actions,.admin-form-actions{align-items:center;gap:.75rem;display:flex}.admin-primary-link{background:var(--ink);color:#fff;border-radius:999px;padding:.7rem 1rem;font-weight:800;text-decoration:none}.admin-table-link{color:var(--ink);font-weight:700}.admin-narrow-shell{max-width:46rem}.admin-narrow-shell>h1{font-size:clamp(2.5rem,8vw,4rem)}.admin-event-form{border:1px solid var(--line);background:var(--card);border-radius:1.25rem;padding:1.5rem}.admin-event-form textarea{resize:vertical}.form-checkbox{align-items:center;gap:.65rem;font-weight:700;display:flex}.form-checkbox input{width:1.1rem;height:1.1rem}.admin-form-actions .submit-button,.admin-form-actions .text-link{margin-top:0}.secondary-link{padding:.75rem}.admin-detail-list{border:1px solid var(--line);background:var(--card);border-radius:1rem;gap:0;margin:2rem 0 1rem;display:grid}.admin-detail-list div{border-bottom:1px solid var(--line);gap:.4rem;padding:1rem 1.25rem;display:grid}.admin-detail-list div:last-child{border-bottom:0}.admin-detail-list dt{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800}.admin-detail-list dd{margin:0;line-height:1.55}.admin-table-wrap{border:1px solid var(--line);background:var(--card);border-radius:1rem;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:1rem}.admin-table th{color:var(--muted);text-transform:uppercase;font-size:.8rem}.admin-table tbody tr:last-child td{border-bottom:0}.admin-slots-section,.admin-bookings-section{border-top:1px solid var(--line);gap:1.5rem;margin:3rem 0 1.5rem;padding-top:2.5rem;display:grid}.admin-bookings-section h2{font-size:clamp(2rem,7vw,3rem)}.admin-booking-groups,.admin-booking-list{gap:1rem;display:grid}.admin-booking-group{gap:.75rem;display:grid}.admin-booking-group h3,.admin-booking-slot-title{margin:0}.admin-booking-slot-title{color:var(--muted)}.admin-booking-card{border:1px solid var(--line);background:var(--card);border-radius:1rem;padding:1.25rem}.admin-booking-card-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-booking-card h4{margin:0;font-size:1.15rem}.admin-booking-card dl{gap:.65rem;margin:1rem 0;display:grid}.admin-booking-card dl div{grid-template-columns:7rem minmax(0,1fr);gap:.75rem;display:grid}.admin-booking-card dt{color:var(--muted);font-size:.8rem;font-weight:700}.admin-booking-card dd{overflow-wrap:anywhere;min-width:0;margin:0}.booking-status{border-radius:999px;padding:.35rem .65rem;font-size:.8rem;font-weight:800}.booking-status-active{background:var(--success-soft);color:var(--success)}.booking-status-cancelled{background:var(--accent-soft);color:var(--accent)}.admin-cancel-booking-form{justify-items:start;gap:.75rem;display:grid}.admin-cancel-button{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:999px;padding:.6rem .85rem;font-weight:700}.admin-cancel-button:disabled{cursor:wait;opacity:.65}.admin-slots-section h2{font-size:clamp(2rem,7vw,3rem)}.admin-slots-section h3{margin:0;font-size:1.5rem}.admin-empty-state{color:var(--muted);text-align:center;background:#fffdf880;border:1px dashed #abb9af;border-radius:1rem;padding:1.5rem}.admin-empty-state p,.form-success{margin:0}.admin-hero-section{border-top:1px solid var(--line);gap:1.25rem;margin:3rem 0 1.5rem;padding-top:2.5rem;display:grid}.admin-hero-preview,.event-hero-image{aspect-ratio:16/9;object-fit:cover;border-radius:1rem;width:100%;height:auto;display:block}.admin-hero-form{justify-items:start;gap:.75rem;display:grid}.admin-hero-form label{font-weight:700}.form-help{color:var(--muted);margin:0;font-size:.85rem}.admin-slot-form{margin-top:1rem}.admin-slot-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.form-success{background:var(--success-soft);color:var(--success);border-radius:.8rem;padding:1rem;font-weight:700}@media (max-width:36rem){.admin-slot-form-row{grid-template-columns:1fr}}main{min-height:100vh}.event-page{padding:2rem 1rem 4rem}.event-shell{width:min(100%,52rem);margin:0 auto}.event-hero{padding:2.5rem 0 3rem}.brand-logo{width:min(100%,16rem);height:auto;margin-bottom:2rem;display:block}.event-hero-image{margin-bottom:2rem}.eyebrow,.section-kicker{color:var(--accent);letter-spacing:.17em;text-transform:uppercase;margin:0 0 .65rem;font-size:.75rem;font-weight:800}h1,h2,h3{font-family:Georgia,Times New Roman,serif}h1{letter-spacing:-.045em;max-width:14ch;margin:0;font-size:clamp(2.8rem,13vw,5.6rem);font-weight:400;line-height:.98}h2{letter-spacing:-.03em;margin:0;font-size:clamp(2rem,7vw,3rem);font-weight:400}.event-description{max-width:42rem;color:var(--muted);white-space:pre-line;margin:1.5rem 0 0;font-size:1.1rem;line-height:1.7}.info-card{border:1px solid var(--line);background:#fffdf8c7;border-radius:1.25rem;margin-bottom:3.5rem;padding:1.5rem}.info-card h2{font-size:1.65rem}.info-card p:last-child{color:var(--muted);margin:.8rem 0 0;line-height:1.65}.preserve-lines{white-space:pre-line}.section-heading{gap:1rem;margin-bottom:1.5rem;display:grid}.slot-list{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.slot-card{border:1px solid var(--line);background:var(--card);border-radius:1.25rem;flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex;box-shadow:0 12px 34px #17352b0d}.slot-date{color:var(--muted);text-transform:capitalize;margin:0 0 .4rem;font-size:.85rem;font-weight:700}.slot-card h3{margin:0;font-size:1.4rem}.slot-time,.slot-note{color:var(--muted);margin:.45rem 0 0}.slot-note{line-height:1.5}.availability-wrap{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.availability{background:var(--success-soft);width:fit-content;color:var(--success);border-radius:999px;padding:.5rem .75rem;font-size:.8rem;font-weight:800;display:inline-flex}.availability-full{color:#746f66;background:#ebe9e4}.remaining{color:var(--muted);font-size:.8rem}.slot-button,.submit-button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;padding:.75rem 1rem;font-size:.85rem;font-weight:800;text-decoration:none;display:inline-flex}.slot-button:disabled,.submit-button:disabled{cursor:not-allowed;opacity:.55}.booking-panel{border:1px solid var(--line);background:var(--card);border-radius:1.5rem;margin-top:3rem;padding:1.5rem;scroll-margin-top:1rem;box-shadow:0 18px 50px #17352b14}.booking-panel h2{font-size:clamp(1.9rem,7vw,2.7rem)}.selected-slot{background:var(--success-soft);color:var(--success);border-radius:1rem;gap:.3rem;margin:1.25rem 0 1.75rem;padding:1rem;display:grid}.booking-form{gap:1.1rem;display:grid}.form-field{gap:.45rem;font-weight:700;display:grid}.form-field small{color:var(--muted);font-weight:400}.form-field input,.form-field textarea,.form-field select{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #abb9af;border-radius:.75rem;padding:.8rem}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:3px solid var(--accent-soft);border-color:var(--accent)}.form-field input[aria-invalid=true],.form-field textarea[aria-invalid=true],.form-field select[aria-invalid=true]{border-color:#a52d25}.field-error{color:#a52d25;font-size:.85rem;font-weight:600}.form-alert{color:#7e241e;background:#f9dfdc;border-radius:.8rem;gap:.35rem;margin-bottom:1.25rem;padding:1rem;display:grid}.form-alert a{width:fit-content;color:inherit;font-weight:800}.submit-button{min-height:3rem;margin-top:.3rem}.success-panel{background:var(--success-soft)}.booking-summary-list{gap:.8rem;margin:1.5rem 0 0;display:grid}.booking-summary-list div{gap:.2rem;display:grid}.booking-summary-list dt{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800}.booking-summary-list dd{margin:0;font-weight:700}.empty-state{text-align:center;border:1px dashed #bcc8bd;border-radius:1.25rem;padding:2rem 1.5rem}.empty-state h3{margin:0;font-size:1.5rem}.empty-state p{max-width:31rem;color:var(--muted);margin:.75rem auto 0;line-height:1.6}.state-page{place-items:center;padding:1.25rem;display:grid}.state-card{border:1px solid var(--line);background:var(--card);border-radius:1.5rem;width:min(100%,35rem);padding:2rem}.state-card h1{font-size:clamp(2.4rem,10vw,4rem)}.state-card>p:not(.eyebrow){color:var(--muted);line-height:1.6}.text-link,.retry-button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:999px;margin-top:.75rem;padding:.8rem 1.1rem;font-weight:700;text-decoration:none;display:inline-block}.loading-shell{padding-top:4rem}.skeleton{background:linear-gradient(100deg,#e7e4dc 30%,#f3f0e9 50%,#e7e4dc 70%) 0 0/250% 100%;border-radius:.75rem;animation:1.4s infinite shimmer}.skeleton-short{width:8rem;height:.8rem}.skeleton-title{width:min(90%,34rem);height:5rem;margin-top:1rem}.skeleton-copy{width:min(100%,40rem);height:4rem;margin-top:1.5rem}.skeleton-card{height:10rem;margin-top:4rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@keyframes shimmer{to{background-position-x:-250%}}@media (min-width:40rem){.event-page{padding:3rem 2rem 6rem}.event-hero{padding:4rem 0}.info-card{padding:2rem}.section-heading{grid-template-columns:1fr auto;align-items:end}.slot-card{flex-direction:row;justify-content:space-between;align-items:center;padding:1.5rem}.booking-panel{padding:2rem}.availability-wrap{flex-direction:column;align-items:flex-end}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.event-page{background:#fff;padding:2rem 1.25rem 5rem}.event-page .event-shell{overflow-wrap:anywhere;width:min(100%,64rem)}.event-page .event-hero{padding:0 0 2.5rem}.event-page .brand-logo{width:10rem;max-width:100%;margin:0 auto 1.25rem}.event-page .event-hero-image{aspect-ratio:auto;object-fit:cover;border-radius:.65rem;width:100%;height:170px;margin-bottom:2rem}.event-page h1{letter-spacing:-.035em;text-wrap:balance;max-width:24ch;font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.12}.event-page h2{font-size:clamp(1.7rem,3.5vw,2.25rem);line-height:1.2}.event-page .event-description{max-width:42rem;margin-top:1rem;font-size:1rem;line-height:1.75}.event-page .section-kicker{color:var(--muted);letter-spacing:.12em;font-family:Arial,Helvetica,sans-serif;font-size:.72rem;font-weight:700}.event-page .section-heading{grid-template-columns:1fr;gap:.5rem;margin-bottom:1.25rem}.event-page .slot-list{border-top:1px solid var(--line);gap:0}.event-page .slot-card{border:0;border-bottom:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;gap:1.25rem;padding:1.5rem 0}.event-page .slot-copy{min-width:0}.event-page .slot-date{text-transform:none;color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:1rem;font-weight:600;line-height:1.5}.event-page .slot-time{color:var(--ink);font-variant-numeric:tabular-nums;margin-top:.3rem;font-size:1.15rem}.event-page .slot-title,.event-page .slot-note{max-width:36rem;color:var(--muted);margin:.5rem 0 0;font-size:.9rem;line-height:1.55}.event-page .availability-wrap{flex-wrap:wrap;justify-content:flex-start;gap:.5rem .75rem}.event-page .availability{background:0 0;border-radius:0;padding:0;font-weight:600}.event-page .availability-full{color:#746f66}.event-page .slot-button{border:1px solid var(--ink);width:100%;min-height:2.75rem;color:var(--ink);background:0 0;border-radius:.35rem;align-items:center;margin-top:.25rem;padding:.65rem 1rem;font-weight:600}.event-page .slot-button:not(:disabled):hover{background:var(--ink);color:#fff}.event-page .slot-button:disabled{border-color:var(--line);color:#746f66;opacity:1;background:#f7f7f4}.event-page .slot-card-full .slot-date,.event-page .slot-card-full .slot-time{color:var(--muted)}.event-page .event-instructions{max-width:42rem;margin-top:2.5rem}.event-page .event-instructions>p{color:var(--muted);margin:.75rem 0 0;font-size:.95rem;line-height:1.75}.event-page #rezervacia{scroll-margin-top:1.5rem}.event-page .booking-panel{border:0;border-top:1px solid var(--line);max-width:600px;box-shadow:none;background:0 0;border-radius:0;margin-top:3rem;padding:2rem 0 0}.event-page .selected-slot{color:var(--ink);background:0 0;border-radius:0;gap:.2rem;margin:1.25rem 0 1.75rem;padding:0;line-height:1.5}.event-page .selected-slot-label{color:var(--muted);margin:0;font-size:.8rem}.event-page .booking-form{gap:1.75rem}.event-page .form-field{gap:.45rem;min-width:0;font-size:.95rem;font-weight:500}.event-page .form-field input,.event-page .form-field textarea{border-radius:.35rem;min-width:0;font-size:1rem;font-weight:400;line-height:1.5}.event-page .form-field textarea{resize:vertical}.event-page .submit-button,.event-page .text-link{border-radius:.35rem;align-items:center;min-height:3rem;font-weight:600}.event-page .submit-button:not(:disabled):hover,.event-page .text-link:hover{background:var(--success)}.event-page :is(a,button):focus-visible,.event-page [tabindex="-1"]:focus{outline:2px solid var(--ink);outline-offset:4px}.event-page .form-alert{border-radius:.35rem;line-height:1.6}.event-page .booking-summary-list{gap:1.25rem;margin-bottom:1.5rem;line-height:1.6}.event-page .booking-summary-list dd{font-weight:500}.event-page .empty-state{border:0;border-top:1px solid var(--line);text-align:left;border-radius:0;padding:1.75rem 0}.event-page .empty-state p{margin-left:0}@media (min-width:40rem){.event-page{padding:2.5rem 2rem 6rem}.event-page .brand-logo{width:11rem;margin-bottom:1.5rem}.event-page .event-hero{padding-bottom:3rem}.event-page .availability-wrap{flex:0 0 14rem;align-items:flex-end}.event-page .slot-button{width:auto}.event-page .submit-button{justify-self:start;padding-inline:1.5rem}.event-page .event-hero-image{height:210px}}@media (min-width:64rem){.event-page .event-hero-image{height:240px}}.event-page .slot-button:not(:disabled){background:#edf2ec;font-weight:700}.event-page .slot-button:not(:disabled):hover{background:var(--ink)}.event-page .selected-slot-event{color:var(--muted);font-size:.9rem}.event-page #rezervacia+.event-instructions{margin-top:4rem}.admin-booking-filter{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;font:inherit;border-radius:999px;padding:.6rem .85rem}.admin-booking-filter[aria-pressed=true]{background:var(--success-soft);color:var(--success);border-color:var(--success);font-weight:700}.event-page .booking-panel.success-panel{border:1px solid #b9d5c4;border-left:4px solid var(--success);background:var(--success-soft);border-radius:.65rem;padding:clamp(1.25rem,4vw,2rem)}.event-page .success-panel .section-kicker{color:var(--success)}.event-page .success-welcome{margin:1rem 0 0;line-height:1.6}.admin-bookings-header .admin-booking-slot-title{margin-top:1rem;margin-bottom:1.5rem}.public-events-grid{grid-template-columns:1fr;gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.public-event-card{border:1px solid var(--line);background:var(--card);border-radius:.65rem;flex-direction:column;min-width:0;display:flex;overflow:hidden}.public-event-image{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.public-event-copy{flex-direction:column;flex:1;align-items:flex-start;padding:1.5rem;display:flex}.public-events-page .public-event-card h2{font-size:1.75rem;line-height:1.2}.public-event-description{-webkit-line-clamp:3;color:var(--muted);-webkit-box-orient:vertical;margin:1rem 0 0;line-height:1.65;display:-webkit-box;overflow:hidden}.public-event-date{margin-top:auto;padding-top:1.75rem;padding-bottom:1.25rem;line-height:1.5}.public-event-date p{margin:.25rem 0 0}.public-event-date .section-kicker{margin-bottom:.5rem}.public-events-page .public-event-card .slot-button{width:100%;margin:0}@media (min-width:40rem){.public-events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:75rem){.public-events-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
