*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:#3d2b1f;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5ede3;font-family:"Source Sans 3",sans-serif}:root{--bg:#f5ede3;--text:#3d2b1f;--accent:#b8623e;--accent-light:#c4956a;--white:#fffdf9;--font-heading:"Cormorant Garamond", serif;--font-body:"Source Sans 3", sans-serif;--font-script:"Parisienne", cursive}.app{scroll-behavior:smooth}.fade-in{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(30px)}.fade-in.visible{opacity:1;transform:translateY(0)}.hero{background:linear-gradient(160deg,#f5ede3 0%,#ede4d8 50%,#e8dcd0 100%);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-content{text-align:center;z-index:1;position:relative}.names{font-family:var(--font-script);color:var(--text);letter-spacing:normal;margin:0;font-size:clamp(4rem,12vw,8.5rem);font-weight:400;line-height:1.1}.date{font-family:var(--font-body);color:var(--accent);letter-spacing:3px;text-transform:uppercase;margin-top:1rem;font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:300}.ornament{background:var(--accent-light);width:80px;height:2px;margin:2rem auto 0}.hero-photo{aspect-ratio:3/2;background:var(--accent-light);border:6px solid var(--white);border-radius:10px;width:clamp(280px,82vw,480px);margin:0 auto 2.2rem;overflow:hidden;box-shadow:0 10px 34px #3d2b1f2e}.hero-photo img{object-fit:cover;width:100%;height:100%;display:block}.mountains{pointer-events:none;width:100%;height:min(36vh,300px);display:block;position:absolute;bottom:0;left:0}.mtn{stroke:none}.mtn-back{fill:var(--accent-light);opacity:.16}.mtn-mid{fill:var(--accent-light);opacity:.28}.mtn-front{fill:var(--accent);opacity:.22}.countdown{background:var(--white);text-align:center;padding:3.5rem 2rem}.countdown-grid{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.countdown-item{flex-direction:column;align-items:center;min-width:80px;display:flex}.countdown-number{font-family:var(--font-heading);color:var(--text);font-size:clamp(2.5rem,6vw,4rem);font-weight:700;line-height:1}.countdown-label{font-family:var(--font-body);color:var(--accent-light);text-transform:uppercase;letter-spacing:2px;margin-top:.5rem;font-size:.85rem}.info-section{text-align:center;background:var(--bg);padding:3.5rem 2rem}.info-section:nth-of-type(2n){background:var(--white)}.info-section h2{font-family:var(--font-heading);color:var(--text);margin:0 0 1rem;font-size:clamp(2rem,5vw,3rem);font-weight:600}.info-time{font-family:var(--font-body);color:var(--accent);margin:.5rem 0;font-size:1.3rem}.info-place{font-family:var(--font-body);color:var(--text);margin:.5rem 0 2rem;font-size:1.1rem}.info-text{font-family:var(--font-body);color:var(--text);opacity:.9;max-width:640px;margin:0 auto 1.2rem;font-size:1.1rem;line-height:1.7}.info-text:last-child{margin-bottom:0}.info-note{font-family:var(--font-body);color:var(--accent-light);margin:.8rem 0 0;font-size:.9rem;font-style:italic}.program-intro{font-family:var(--font-body);color:var(--accent);margin:0 0 2.2rem;font-size:1.1rem}.program-list{text-align:left;max-width:440px;margin:0 auto;list-style:none;position:relative}.program-list:before{content:"";background:var(--accent-light);opacity:.5;width:1px;position:absolute;top:28px;bottom:28px;left:28px}.program-item{align-items:center;gap:1.3rem;padding:.55rem 0;display:flex;position:relative}.program-icon{background:var(--white);width:56px;height:56px;color:var(--text);border:1px solid #c4956a8c;border-radius:50%;flex:0 0 56px;place-items:center;display:grid}.info-section:nth-of-type(2n) .program-icon{background:var(--bg)}.program-icon svg{width:30px;height:30px}.program-title{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.16em;color:var(--text);font-size:.95rem;line-height:1.5}.program-time{font-family:var(--font-heading);color:var(--accent);white-space:nowrap;margin-left:auto;padding-left:.8rem;font-size:1.3rem;font-weight:600}@media (width<=600px){.program-list:before{top:24px;bottom:24px;left:24px}.program-icon{flex-basis:48px;width:48px;height:48px}.program-icon svg{width:26px;height:26px}.program-item{gap:1rem}.program-title{letter-spacing:.12em;font-size:.85rem}}.venue-grid{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:2.5rem;display:flex}.venue{flex-direction:column;flex:260px;align-items:center;max-width:360px;display:flex}.venue .info-place{flex:1}.btn{font-family:var(--font-body);color:var(--white);background:var(--accent);cursor:pointer;letter-spacing:.5px;border:none;border-radius:4px;padding:.8rem 2rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .3s,transform .2s;display:inline-block}.btn:hover{background:#9b5232;transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.rsvp{background:var(--white);text-align:center;padding:3.5rem 2rem}.rsvp h2{font-family:var(--font-heading);color:var(--text);margin:0 0 1rem;font-size:clamp(2rem,5vw,3rem);font-weight:600}.rsvp-subtitle{font-family:var(--font-body);color:var(--text);opacity:.85;max-width:600px;margin:0 auto 2.5rem;line-height:1.6}.rsvp-form{text-align:left;max-width:550px;margin:0 auto}.guest-block{background:var(--bg);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.guest-block h3{font-family:var(--font-heading);color:var(--accent);margin:0 0 1rem;font-size:1.4rem}.form-group{margin-bottom:1.2rem}.form-group label{font-family:var(--font-body);color:var(--text);margin-bottom:.4rem;font-size:.9rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{width:100%;font-family:var(--font-body);color:var(--text);background:var(--white);border:1px solid var(--accent-light);box-sizing:border-box;border-radius:4px;padding:.7rem .9rem;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);outline:none}.form-group textarea{resize:vertical}.form-error{color:#c0392b;font-family:var(--font-body);text-align:center;margin:1rem 0;font-size:.9rem}.btn-submit{width:100%;margin-top:1rem;padding:1rem;font-size:1.1rem;display:block}.rsvp-success{padding:3rem 2rem}.rsvp-success h2{font-family:var(--font-heading);color:var(--accent);font-size:2.5rem}.rsvp-success p{font-family:var(--font-body);color:var(--text);font-size:1.2rem}.footer{background:var(--text);text-align:center;color:var(--bg);padding:4rem 2rem}.footer p{font-family:var(--font-body);margin:.5rem 0;line-height:1.6}.footer-phone{color:var(--accent-light);font-size:1.2rem;font-weight:600;text-decoration:none}.footer-phone:hover{color:var(--white)}.footer-deadline{opacity:.8;font-style:italic;margin-top:1.5rem!important}.footer-copy{opacity:.5;font-size:.85rem;margin-top:2rem!important}@media (width<=600px){.hero-decoration.top-left,.hero-decoration.top-right,.hero-decoration.bottom-left,.hero-decoration.bottom-right{display:none}.countdown-grid{gap:1rem}.countdown-item{min-width:60px}.guest-block{padding:1rem}.rsvp,.info-section,.countdown{padding:3rem 1.2rem}}.transport-block{max-width:720px;margin:2.8rem auto 0}.transport-title{font-family:var(--font-heading);color:var(--accent);margin:0 0 .9rem;font-size:clamp(1.4rem,3.5vw,1.9rem);font-weight:600}.parking-list{text-align:left;max-width:460px;margin:0 auto 1.6rem;padding:0;list-style:none}.parking-list li{font-family:var(--font-body);color:var(--text);opacity:.9;align-items:flex-start;gap:.7rem;padding:.4rem 0;font-size:1.02rem;line-height:1.5;display:flex}.parking-tag{min-width:2.1rem;font-family:var(--font-body);letter-spacing:.5px;text-align:center;color:var(--white);background:var(--accent-light);border-radius:3px;flex:none;padding:.1rem .45rem;font-size:.85rem;font-weight:700}.parking-note{font-family:var(--font-body);color:var(--text);opacity:.8;text-align:left;border-left:3px solid var(--accent-light);box-sizing:border-box;background:#c4956a1f;border-radius:4px;max-width:460px;margin:-.6rem auto 1.6rem;padding:.9rem 1.1rem;font-size:.95rem;line-height:1.6}.parking-map{margin:0}.parking-map-btn{border:6px solid var(--white);background:var(--white);cursor:zoom-in;border-radius:8px;width:100%;padding:0;transition:transform .25s,box-shadow .25s;display:block;overflow:hidden;box-shadow:0 8px 26px #3d2b1f29}.parking-map-btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px #3d2b1f38}.parking-map-btn img{border-radius:3px;width:100%;height:auto;display:block}.lightbox{z-index:50;cursor:zoom-out;background:#3d2b1fe0;justify-content:center;align-items:center;padding:1.5rem;animation:.2s lightbox-in;display:flex;position:fixed;inset:0}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.lightbox img{border:5px solid var(--white);box-sizing:border-box;cursor:default;border-radius:6px;max-width:100%;max-height:90vh}.lightbox-close{color:var(--bg);cursor:pointer;background:0 0;border:none;padding:.2rem .5rem;font-size:2.4rem;line-height:1;position:absolute;top:1rem;right:1.4rem}@media (width<=600px){.transport-block{margin-top:2.2rem}.lightbox{padding:.8rem}}.tajnicka-page{--paper:#f3f1ec;--ink:#1f1c19;--cell:clamp(34px, 6vw, 64px);min-height:100vh;font-family:var(--font-body,"Source Sans 3", sans-serif);color:var(--text,#3d2b1f);background:#d9d3c9;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem 1rem 4rem;display:flex}.tajnicka-toolbar{flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;font-size:.9rem;display:flex}.tajnicka-toolbar label{cursor:pointer;align-items:center;gap:.4rem;display:inline-flex}.tajnicka-hint{opacity:.6;font-size:.8rem}.tajnicka-paper{background:var(--paper) url(/assets/tajnicka-papier-N9znpv-x.jpg) top left / 782px auto repeat;padding:calc(var(--cell) * .9);position:relative;overflow:hidden}.tajnicka-paper.plain{background:#fff}.tajnicka-grid{align-items:center;gap:6px;display:grid;position:relative}.row-num{font-family:var(--font-heading,"Cormorant Garamond", serif);font-size:calc(var(--cell) * .42);color:#3f3a35;padding-right:calc(var(--cell) * .35);text-align:right;line-height:1}.cell{width:var(--cell);height:var(--cell);border:1.5px solid var(--ink);font-family:var(--font-heading,"Cormorant Garamond", serif);font-weight:600;font-size:calc(var(--cell) * .55);color:var(--ink);background:0 0;border-radius:4px;justify-content:center;align-items:center;line-height:1;display:flex}.cell.empty{border-color:#0000}.cell.key:not(.empty){background:#1f1c191a;border-width:2.5px}.tajnicka-questions{margin:calc(var(--cell) * .6) 0 0;max-width:calc(var(--cell) * 12);font-size:calc(var(--cell) * .32);color:var(--ink);padding-left:1.6em;line-height:1.45}.tajnicka-questions .answer{opacity:.55}.dov{--dov-card:#fffdf9;--dov-line:#e4d6c6;--dov-muted:#8a7666;--dov-green:#6e8b5e;background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-body);line-height:1.55}.dov-hero{text-align:center;background:linear-gradient(160deg,#f5ede3 0%,#efd9c4 55%,#e6c3a5 100%);padding:4.5rem 1rem 6.5rem;position:relative;overflow:hidden}.dov-eyebrow{letter-spacing:.3em;text-transform:uppercase;color:var(--accent);font-size:.8rem}.dov-title{font-family:var(--font-script);margin:.2rem 0 .4rem;font-size:clamp(4.5rem,16vw,8rem);font-weight:400;line-height:1.05}.dov-dates{font-family:var(--font-heading);font-size:clamp(1.2rem,3.5vw,1.5rem)}.dov-route{color:var(--dov-muted);margin-top:.4rem;font-size:.9rem}.dov-badge{background:var(--accent);color:var(--white);letter-spacing:.04em;border-radius:999px;margin-top:1.4rem;padding:.4rem 1rem;font-size:.85rem;font-weight:600;display:inline-block}.dov-mtn{width:100%;height:90px;position:absolute;bottom:0;left:0}.dov-mtn path:first-child{fill:#c4956a;opacity:.35}.dov-mtn path:last-child{fill:var(--bg)}.dov-nav{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--dov-line);scrollbar-width:none;background:#f5ede3eb;gap:.4rem;padding:.6rem 1rem;display:flex;position:sticky;top:0;overflow-x:auto}.dov-nav::-webkit-scrollbar{display:none}.dov-nav button{font:inherit;border:1px solid var(--dov-line);background:var(--dov-card);color:var(--text);cursor:pointer;border-radius:999px;flex:none;padding:.35rem .85rem;font-size:.85rem}.dov-nav button:hover{border-color:var(--accent);color:var(--accent)}.dov-main{max-width:880px;margin:0 auto;padding:1rem 1rem 4rem}.dov-section{padding-top:2.8rem;scroll-margin-top:3.2rem}.dov-h2{font-family:var(--font-heading);margin-bottom:.5rem;font-size:clamp(1.8rem,5vw,2.3rem);font-weight:600;line-height:1.15}.dov-h3{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:1.2rem 0 .6rem;font-size:.78rem;font-weight:600}.dov-intro{color:var(--dov-muted);max-width:62ch;margin-bottom:1rem}.dov-k{letter-spacing:.08em;text-transform:uppercase;color:var(--dov-muted);font-size:.72rem;display:block}.dov-list{margin:1rem 0 0 1.1rem}.dov-list li{margin:.3rem 0}.dov-tags{flex-wrap:wrap;gap:.35rem;margin-top:.5rem;display:flex}.dov-tag{color:#7a4028;white-space:nowrap;background:#f1e1d2;border-radius:999px;padding:.15rem .6rem;font-size:.78rem;display:inline-block}.dov-today{background:var(--text);color:var(--white);border-radius:14px;margin-top:1.5rem;padding:1.2rem 1.3rem}.dov-today-label{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-light);font-size:.75rem}.dov-today h3{font-family:var(--font-heading);font-size:1.7rem;font-weight:600}.dov-today .dov-tag{color:var(--white);background:#fffdf924}.dov-route-list{counter-reset:stop;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.6rem;list-style:none;display:grid;position:relative}.dov-route-list li{background:var(--dov-card);border:1px solid var(--dov-line);counter-increment:stop;border-radius:12px;align-items:flex-start;gap:.7rem;padding:.8rem .9rem;display:flex}.dov-route-dot{background:var(--accent);width:1.6rem;height:1.6rem;color:var(--white);border-radius:50%;flex:none;place-items:center;font-size:.75rem;font-weight:600;display:grid}.dov-route-dot:before{content:counter(stop)}.dov-route-sub{color:var(--dov-muted);font-size:.85rem}.dov-route-meta{color:var(--dov-muted);font-size:.82rem}.dov-hotel{border-top:1px dashed var(--dov-line);flex-direction:column;margin-top:.45rem;padding-top:.45rem;font-size:.8rem;display:flex}.dov-hotel span{color:var(--dov-muted)}.dov-hotel a{color:var(--accent)}.dov-doc-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.6rem;display:grid}.dov-doc{background:var(--dov-card);border:1px solid var(--dov-line);color:inherit;border-radius:12px;align-items:center;gap:.75rem;padding:.75rem .9rem;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}a.dov-doc:hover{border-color:var(--accent);transform:translateY(-1px)}.dov-doc.missing{opacity:.7;background:0 0;border-style:dashed}.dov-doc-icon{width:2.2rem;height:2.2rem;color:var(--accent);background:#f1e1d2;border-radius:8px;flex:none;place-items:center;font-size:1.05rem;display:grid}.dov-doc-text{flex-direction:column;min-width:0;display:flex}.dov-doc-text strong{font-size:.95rem;font-weight:600}.dov-doc-text span{color:var(--dov-muted);font-size:.8rem}.dov-drive{background:var(--text);color:var(--white);border-radius:14px;align-items:center;gap:.9rem;padding:.9rem 1.1rem;font-size:1.4rem;text-decoration:none;display:flex}.dov-drive>span:last-child{flex-direction:column;font-size:.95rem;display:flex}.dov-drive>span:last-child span{opacity:.7;font-size:.8rem}.dov-drive:hover{background:var(--accent)}.dov-flights{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.9rem;display:grid}.dov-ticket{background:var(--dov-card);border:1px solid var(--dov-line);border-radius:14px;padding:1rem 1.1rem;position:relative}.dov-ticket.todo{background:0 0;border-style:dashed}.dov-ticket-top{justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;display:flex}.dov-pill{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:.15rem .6rem;font-size:.72rem}.dov-pill.done{color:#4c6440;background:#e3ebdc}.dov-pill.todo{color:#9a4524;background:#f6dccf}.dov-ticket-route{border-bottom:1.5px dashed var(--dov-line);justify-content:space-between;align-items:center;margin:.7rem 0;padding-bottom:.8rem;display:flex}.dov-ticket-route .right{text-align:right}.dov-iata{font-family:var(--font-heading);font-size:2.2rem;font-weight:700;line-height:1}.dov-city{color:var(--dov-muted);font-size:.82rem}.dov-plane{color:var(--accent);font-size:1.4rem}.dov-ticket-bottom{flex-wrap:wrap;gap:.5rem 1.4rem;font-size:.9rem;display:flex}.dov-ticket-note{color:#7a4028;background:#f8eadf;border-radius:8px;margin-top:.7rem;padding:.45rem .7rem;font-size:.83rem}.dov-days{list-style:none}.dov-day{border-bottom:1px solid var(--dov-line);grid-template-columns:5.5rem 1fr;gap:1rem;padding:.9rem 0;display:grid}.dov-day-date{color:var(--accent);padding-top:.2rem;font-size:.9rem;font-weight:600}.dov-day-body h3{font-family:var(--font-heading);font-size:1.35rem;font-weight:600;line-height:1.2}.dov-day-body p{font-size:.95rem}.dov-day.is-past{opacity:.5}.dov-day.is-highlight .dov-day-body h3:after{content:" ✦";color:var(--accent)}.dov-day.is-today{background:var(--dov-card);border:1.5px solid var(--accent);border-radius:12px;margin:.4rem -.9rem;padding:.9rem}.dov-mp-card{background:var(--dov-card);border:1px solid var(--dov-line);border-radius:14px;padding:1.1rem 1.2rem}.dov-mp-times{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem;font-size:.92rem;display:grid}.dov-mp-times .dov-k{color:var(--accent);letter-spacing:.02em;font-size:.85rem;font-weight:600}.dov-callout{border-left:3px solid var(--accent);background:#f8eadf;border-radius:0 8px 8px 0;margin-top:1rem;padding:.7rem .9rem;font-size:.92rem}.dov-details{border:1px solid var(--dov-line);border-radius:12px;margin-top:.9rem;padding:.7rem 1rem}.dov-details summary{cursor:pointer;font-weight:600}.dov-circuits{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:.8rem;font-size:.9rem;display:grid}.dov-circuits p{color:var(--dov-muted);margin:.2rem 0 .4rem}.dov-progress{background:#eadccd;border-radius:999px;height:1.8rem;margin-bottom:.5rem;position:relative;overflow:hidden}.dov-progress-bar{background:var(--dov-green);position:absolute;inset:0 auto 0 0}.dov-progress span{text-align:center;color:var(--white);text-shadow:0 0 4px #00000040;font-size:.8rem;font-weight:600;line-height:1.8rem;display:block;position:relative}.dov-todo-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:0 1.6rem;display:grid}.dov-todo-group ul{list-style:none}.dov-todo-group li{align-items:flex-start;gap:.6rem;padding:.35rem 0;font-size:.94rem;display:flex}.dov-check{border:1.5px solid var(--accent-light);width:1.15rem;height:1.15rem;color:var(--white);border-radius:5px;flex:none;place-items:center;margin-top:.15rem;font-size:.72rem;display:grid}.dov-todo-group li.done .dov-check{background:var(--dov-green);border-color:var(--dov-green)}.dov-todo-group li.done>span:last-child{color:var(--dov-muted);text-decoration:line-through}.dov-todo-note{color:var(--dov-muted);font-size:.85rem}.dov-weather{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem;display:grid}.dov-weather-card{background:var(--dov-card);border:1px solid var(--dov-line);border-radius:12px;padding:.9rem;font-size:.88rem}.dov-weather-icon{margin-bottom:.3rem;font-size:1.5rem;display:block}.dov-weather-card strong{line-height:1.3;display:block}.dov-weather-card p{color:var(--dov-muted);margin:.4rem 0}.dov-weather-temp{color:var(--accent);font-weight:600}.dov-links{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.6rem;display:grid}.dov-link{background:var(--dov-card);border:1px solid var(--dov-line);color:inherit;border-radius:12px;flex-direction:column;padding:.8rem 1rem;text-decoration:none;display:flex}.dov-link:hover{border-color:var(--accent)}.dov-link span{color:var(--accent);font-size:.82rem}.dov-back{color:var(--dov-muted);margin-top:3rem;font-size:.9rem;display:inline-block}@media (width<=520px){.dov-day{grid-template-columns:1fr;gap:.2rem}.dov-flights,.dov-todo-grid{grid-template-columns:1fr}.dov-day.is-today{margin:.4rem 0}}@media print{.dov-nav,.dov-back{display:none}.dov-hero{padding:1.5rem 1rem 2rem}.dov-mtn{display:none}}.zs{--zs-card:#fffdf9;--zs-line:#e4d6c6;--zs-muted:#8a7666;--zs-wood:#ead9c3;--zs-wood-2:#e1ccb1;--zs-kid:#6e8bb5;--zs-high:#3e5f8f;--zs-diet:#6e8b5e;--zs-over:#b8423e;background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-body);max-width:1200px;margin:0 auto;padding:1rem 1rem 4rem;line-height:1.5}.zs-toolbar{flex-wrap:wrap;align-items:center;gap:.6rem 1.25rem;padding:.5rem 0 1rem;font-size:.9rem;display:flex}.zs-toolbar label{cursor:pointer;align-items:center;gap:.4rem;display:inline-flex}.zs-toolbar button{font:inherit;border:1px solid var(--zs-line);background:var(--zs-card);color:var(--text);cursor:pointer;border-radius:999px;padding:.35rem .8rem;font-size:.85rem}.zs-toolbar button:hover{border-color:var(--accent-light)}.zs-head{text-align:center;margin-bottom:2rem}.zs-eyebrow{letter-spacing:.3em;text-transform:uppercase;color:var(--accent);font-size:.75rem}.zs-head h1{font-family:var(--font-heading);margin:.3rem 0 1rem;font-size:clamp(2rem,5vw,3rem);font-weight:600;line-height:1.1}.zs-totals{color:var(--zs-muted);flex-wrap:wrap;justify-content:center;gap:.4rem 1.2rem;font-size:.9rem;list-style:none;display:flex}.zs-totals b{color:var(--text);font-size:1.05rem}.zs-section{margin-bottom:3rem}.zs-section h2{font-family:var(--font-heading);border-bottom:1px solid var(--zs-line);margin-bottom:.8rem;padding-bottom:.3rem;font-size:1.6rem;font-weight:600}.zs-plan{background:var(--zs-card);border:1px solid var(--zs-line);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:10px;width:100%;height:auto;display:block}.zs-hall{fill:#fbf6ef;stroke:var(--text);stroke-width:.08px}.zs-parket-a{fill:var(--zs-wood)}.zs-parket-b{fill:var(--zs-wood-2)}.zs-floor{stroke:#c9ae8d;stroke-width:.04px}.zs-area-label{font-family:var(--font-heading);letter-spacing:.3px;fill:#9c7f5e;font-size:.9px;font-weight:600}.zs-dj{fill:#3d2b1f}.zs-dj-label{fill:#f5ede3;font-size:.42px;font-weight:600}.zs-table.editing{cursor:grab}.zs-table.editing:active{cursor:grabbing}.zs-top{fill:#fff;stroke:var(--text);stroke-width:.05px}.zs-table.over .zs-top{stroke:var(--zs-over);stroke-width:.09px}.zs-table.crew .zs-top{fill:#f1e7da;stroke-dasharray:.12 .08}.zs-chair{fill:#c4956a;stroke:#8e6844;stroke-width:.03px}.zs-chair.kid{fill:var(--zs-kid);stroke:#48638a}.zs-chair.high{fill:var(--zs-high);stroke:#243c60}.zs-chair.diet{stroke:var(--zs-diet);stroke-width:.1px}.zs-num{font-family:var(--font-heading);font-variant-numeric:lining-nums;fill:var(--text);font-size:.7px;font-weight:700}.zs-count{fill:var(--zs-muted);font-size:.3px;font-weight:600}.zs-chip rect{stroke-width:.03px}.zs-chip text{fill:#fff;font-size:.3px;font-weight:700}.zs-chip.kid rect{fill:var(--zs-kid);stroke:#48638a}.zs-chip.high rect{fill:var(--zs-high);stroke:#243c60}.zs-chip.veg rect{fill:#fff;stroke:var(--zs-diet);stroke-width:.06px}.zs-chip.veg text{fill:var(--zs-diet)}.zs-crew-label{fill:var(--zs-muted);font-size:.26px}.zs-name{fill:var(--text);paint-order:stroke;stroke:#fbf6ef;stroke-width:.08px;font-size:.24px}.zs-legend{color:var(--zs-muted);flex-wrap:wrap;gap:.4rem 1.2rem;margin-top:.6rem;font-size:.85rem;list-style:none;display:flex}.zs-legend li{align-items:center;gap:.35rem;display:inline-flex}.sw{border-radius:3px;width:14px;height:12px;display:inline-block}.sw.chair{background:#c4956a}.sw.kid{background:var(--zs-kid)}.sw.high{background:var(--zs-high)}.sw.diet{outline:2px solid var(--zs-diet);background:#c4956a}.zs-legend-inline{color:var(--zs-muted);margin-bottom:1rem;font-size:.85rem}.zs-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.zs-card{background:var(--zs-card);border:1px solid var(--zs-line);break-inside:avoid;border-radius:10px;padding:1rem}.zs-card.over{border-color:var(--zs-over)}.zs-card header{align-items:flex-start;gap:.75rem;display:flex}.zs-card-num{background:var(--text);width:2.4rem;height:2.4rem;color:var(--bg);font-family:var(--font-heading);border-radius:50%;flex:none;place-items:center;font-size:1.3rem;font-weight:700;display:grid}.zs-card h3{font-family:var(--font-heading);font-size:1.2rem;font-weight:600;line-height:1.2}.zs-card-meta{color:var(--zs-muted);font-size:.8rem}.zs-warn{color:var(--zs-over);font-size:.8rem;font-weight:600}.zs-mini{width:190px;height:190px;margin:.6rem auto;display:block}.zs-mini.wide{width:100%;max-width:260px;height:auto}.zs-mini .zs-num{font-size:.9px}.zs-mini .zs-count,.zs-mini .zs-chips,.zs-mini .zs-crew-label{display:none}.zs-mini-name{fill:var(--zs-muted);font-size:.32px;font-weight:600}.zs-list{padding-left:1.6rem;font-size:.9rem}.zs-list li{border-bottom:1px dotted var(--zs-line);padding:.1rem 0}.zs-list li:last-child{border-bottom:none}.zs-list li.kid .zs-list-name{color:var(--zs-high)}.zs-list-flags{margin-left:.4rem;font-size:.8rem}.zs-pill{color:var(--zs-high);background:#e3eaf3;border-radius:999px;margin-left:.3rem;padding:0 .45rem;font-size:.72rem;display:inline-block}.zs-pill.none{color:var(--zs-muted);background:#efe6dc}.zs-list-flags em{color:var(--zs-muted)}@media print{.no-print{display:none!important}.zs{background:#fff;max-width:none;padding:0}.zs-section:first-of-type{break-after:page}.zs-cards{grid-template-columns:repeat(3,1fr)}.zs-card{border-color:#bbb}}.fotky-page{background:var(--bg);min-height:100vh;color:var(--text);justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.fotky-card{text-align:center;background:var(--white);border-radius:16px;width:100%;max-width:440px;padding:2.5rem 1.5rem;box-shadow:0 8px 30px #3d2b1f14}.fotky-names{font-family:var(--font-script);font-size:2.6rem;line-height:1.1}.fotky-date{letter-spacing:.25em;opacity:.7;margin-top:.4rem;font-size:.8rem}.fotky-card h1{font-family:var(--font-heading);margin:1.8rem 0 .8rem;font-size:1.7rem;font-weight:600}.fotky-text{opacity:.85;line-height:1.6}.fotky-btn{background:var(--accent);color:#fff;border-radius:999px;margin:1.8rem 0;padding:1rem 1.2rem;font-size:1.15rem;font-weight:600;text-decoration:none;display:block;box-shadow:0 4px 14px #b8623e59}.fotky-btn:active{transform:scale(.98)}.fotky-steps{text-align:left;opacity:.8;max-width:300px;margin:0 auto;padding-left:1.4rem;font-size:.95rem;line-height:1.8}.fotky-thanks{font-family:var(--font-heading);margin-top:1.8rem;font-size:1.3rem;font-style:italic}
