/*
 * Public page „Стани таен Дядо Коледа“.
 * Ported 1:1 from docs/claude-design/fe-design/stani-taen-dyado-koleda.html (spec: docs/claude-design/FRONTEND_SPEC.md).
 * Every selector is scoped to #zd-xmas so the theme (Hello Elementor reset, Elementor kit) cannot reach in,
 * keyframes are prefixed zd-. Order: scoped reset, design rules (same order and cascade as the prototype), build fixes.
 */

/* ---- scoped reset: undo theme/kit defaults that the design does not set ---- */
#zd-xmas button{margin:0;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;line-height:normal;letter-spacing:inherit;text-transform:none;text-align:center;white-space:normal;box-shadow:none;transition:none;min-height:0;width:auto}
#zd-xmas input,#zd-xmas textarea{margin:0;letter-spacing:inherit;text-transform:none;box-shadow:none}
#zd-xmas label{display:inline;line-height:inherit;vertical-align:baseline;margin:0;font-weight:inherit}
#zd-xmas h1,#zd-xmas h2,#zd-xmas h3,#zd-xmas p,#zd-xmas ul,#zd-xmas ol,#zd-xmas li,#zd-xmas figure{color:inherit;letter-spacing:normal;text-transform:none;line-height:inherit}
#zd-xmas h1,#zd-xmas h2,#zd-xmas h3{font-family:inherit;font-weight:700;margin:0}
#zd-xmas a{text-decoration:none}
#zd-xmas svg{overflow:visible}
#zd-xmas svg:not(.garland):not(.scribble):not(.env){overflow:hidden}

/* ---- design ---- */
#zd-xmas a{color:#0B6A99}
#zd-xmas a:hover{color:#084E70}
#zd-xmas ::selection{background:#FFD43B;color:#1F1A17}
#zd-xmas{position:relative;overflow:clip;font-size:16px;line-height:normal;font-family:'Montserrat',system-ui,sans-serif;color:#1F1A17;background:#FFF8EE;min-height:100vh}
#zd-xmas .wrap{max-width:calc(var(--container-max-width,1200px) + 100px);margin:0 auto;padding:0 50px;box-sizing:border-box} /* as the site's sections: global width + 50 / 30 / 20 sides */
#zd-xmas .site{position:relative;z-index:4;background:#FFFFFF}
#zd-xmas .site .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:96px;flex-wrap:wrap}
#zd-xmas .logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#E3266F;font:800 14px 'Montserrat',sans-serif}
#zd-xmas .nav{display:flex;gap:28px;flex-wrap:wrap}
#zd-xmas .nav a{color:#1F1A17;text-decoration:none;font-size:15px;font-weight:500}
#zd-xmas .give{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 22px;border-radius:999px;background:#E3266F;color:#FFFFFF;text-decoration:none;font:400 18px 'Neucha',cursive}
#zd-xmas .snow{position:fixed;inset:0;pointer-events:none;z-index:3;overflow:hidden}
#zd-xmas .flake{position:absolute;top:-24px;border-radius:50%;background:#FFFFFF;box-shadow:0 0 0 1px rgba(30,159,219,.25),0 1px 3px rgba(11,106,153,.15)}
#zd-xmas .f1{animation:zd-fall1 linear infinite}
#zd-xmas .f2{animation:zd-fall2 linear infinite}
#zd-xmas .f3{animation:zd-fall3 linear infinite}
@keyframes zd-fall1{0%{transform:translate3d(0,-30px,0)}50%{transform:translate3d(26px,55vh,0)}100%{transform:translate3d(-8px,112vh,0)}}
@keyframes zd-fall2{0%{transform:translate3d(0,-30px,0)}50%{transform:translate3d(-30px,55vh,0)}100%{transform:translate3d(14px,112vh,0)}}
@keyframes zd-fall3{0%{transform:translate3d(0,-30px,0)}35%{transform:translate3d(16px,38vh,0)}70%{transform:translate3d(-14px,78vh,0)}100%{transform:translate3d(6px,112vh,0)}}
@keyframes zd-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
#zd-xmas .garland{position:relative;z-index:2;display:block;width:100%;height:auto;margin-top:-2px;overflow:visible}
#zd-xmas .bulb{animation:zd-chase 2.8s ease-in-out infinite}
#zd-xmas .bulb .halo{filter:url(#zd-glow);opacity:.55;transform-box:fill-box;transform-origin:center;animation:zd-haloP 2.8s ease-in-out infinite;animation-delay:inherit}
@keyframes zd-chase{0%,100%{filter:brightness(1.15) saturate(1.1)}45%{filter:brightness(.55) saturate(.7)}55%{filter:brightness(.55) saturate(.7)}}
@keyframes zd-haloP{0%,100%{opacity:.75;transform:scale(1.1)}45%,55%{opacity:.05;transform:scale(.6)}}
#zd-xmas .hero{position:relative;z-index:1;padding:34px 0 40px}
#zd-xmas .hero .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:40px}
#zd-xmas .hero-copy{flex:1 1 440px;min-width:0}
#zd-xmas .hero h1{margin:0;font:400 clamp(52px,6.4vw,84px)/1 'Neucha',cursive;letter-spacing:-.01em;text-wrap:balance}
#zd-xmas .hero h1 .pk{color:#E3266F;position:relative;display:inline-block;white-space:nowrap}
#zd-xmas .hero h1 .ln{display:block;white-space:nowrap}
#zd-xmas .hero h1 .pk2{color:#E3266F}
#zd-xmas .scribble{position:absolute;left:-4px;right:-4px;bottom:-14px;height:22px;overflow:visible}
#zd-xmas .scribble path{stroke-dasharray:1;stroke-dashoffset:1;animation:zd-draw 1.1s .65s cubic-bezier(.16,1,.3,1) forwards}
#zd-xmas .lead{margin:28px 0 0;font-size:18px;line-height:1.6;color:#3A4354}
#zd-xmas .lead .ll{display:block}
#zd-xmas .cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
#zd-xmas .btn-hero{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 30px;border:0;border-radius:999px;background:#E3266F;color:#FFFFFF;font:400 24px 'Neucha',cursive;cursor:pointer;text-decoration:none;box-shadow:0 6px 0 #B5164F,0 12px 24px rgba(227,38,111,.25);transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s}
#zd-xmas .btn-hero:active{transform:translateY(4px);box-shadow:0 2px 0 #B5164F,0 6px 12px rgba(227,38,111,.2)}
#zd-xmas .btn-hero:focus-visible,#zd-xmas .btn-ln:focus-visible{outline:3px solid #1E9FDB;outline-offset:3px}
#zd-xmas .btn-ln{display:inline-flex;align-items:center;gap:8px;min-height:56px;padding:0 10px;border:0;background:none;color:#0B6A99;font:400 22px 'Neucha',cursive;cursor:pointer;text-decoration:underline;text-decoration-style:wavy;text-decoration-color:#FFD43B;text-underline-offset:8px}
#zd-xmas .meter{margin-top:28px;max-width:470px}
#zd-xmas .meter p{margin:0 0 10px;font-size:15px;color:#3A4354}
#zd-xmas .meter b{font:400 28px 'Neucha',cursive;color:#1D2433}
#zd-xmas .bar{height:20px;border:2.5px solid #1D2433;border-radius:14px 10px 12px 9px;padding:2px;background:#FFFFFF}
#zd-xmas .bar i{display:block;height:100%;border-radius:10px 7px 9px 6px;background:repeating-linear-gradient(-45deg,#E3266F 0 8px,#F25891 8px 16px);transform-origin:left center;animation:zd-grow 1.4s .9s cubic-bezier(.16,1,.3,1) both}
@keyframes zd-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
#zd-xmas .drawing{flex:1 1 440px;min-width:0;position:relative;background:#FFFFFF;border-radius:6px;padding:18px;box-shadow:0 2px 0 rgba(29,36,51,.05),0 18px 40px rgba(29,36,51,.10);transform:rotate(1.6deg);animation:zd-paperIn .9s .1s cubic-bezier(.16,1,.3,1) both}
@keyframes zd-paperIn{from{opacity:0;transform:rotate(7deg) translateY(40px) scale(.94)}to{opacity:1;transform:rotate(1.6deg)}}
#zd-xmas .tape{position:absolute;width:96px;height:30px;background:rgba(255,212,59,.72);top:-12px;transform:rotate(-6deg);box-shadow:0 1px 2px rgba(0,0,0,.06)}
#zd-xmas .drawing svg{display:block;width:100%;height:auto}
#zd-xmas .dr path,#zd-xmas .dr circle,#zd-xmas .dr rect,#zd-xmas .dr line,#zd-xmas .dr polyline{stroke-dasharray:1;stroke-dashoffset:1;animation:zd-draw 1.2s cubic-bezier(.45,0,.2,1) forwards}
#zd-xmas .d1{animation-delay:.5s!important}
#zd-xmas .d2{animation-delay:.8s!important}
#zd-xmas .d3{animation-delay:1.1s!important}
#zd-xmas .d4{animation-delay:1.4s!important}
#zd-xmas .d5{animation-delay:1.7s!important}
#zd-xmas .d6{animation-delay:2s!important}
#zd-xmas .fillin{opacity:0;transform-box:fill-box;transform-origin:50% 100%;animation:zd-pop .5s cubic-bezier(.16,1,.3,1) forwards}
@keyframes zd-draw{to{stroke-dashoffset:0}}
@keyframes zd-pop{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}
#zd-xmas .twinkle{transform-box:fill-box;transform-origin:center;animation:zd-twinkle 2.4s ease-in-out infinite}
@keyframes zd-twinkle{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.18) rotate(12deg)}}
#zd-xmas .caption{margin:8px 6px 0;font:400 22px 'Neucha',cursive;color:#3A4354;text-align:center}
#zd-xmas .how{position:relative;z-index:1;padding:4px 0 34px}
#zd-xmas .how ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 8px;align-items:center}
#zd-xmas .how li{display:flex;align-items:center;gap:12px;font-size:15px;color:#3A4354;line-height:1.4}
#zd-xmas .how li b{display:block;color:#1D2433;font:400 22px 'Neucha',cursive}
#zd-xmas .num{flex:none;width:44px;height:44px;border:2.5px solid currentColor;border-radius:52% 48% 50% 46%;display:inline-flex;align-items:center;justify-content:center;font:400 24px 'Neucha',cursive}
#zd-xmas .arrow{flex:none;color:#9AA3B2}
#zd-xmas .letter{margin:20px 6px 0;position:relative;background:#FFFFFF;background-image:repeating-linear-gradient(#FFFFFF 0 37px,#D6E8F3 37px 38px);border-radius:4px;padding:40px 34px 34px 64px;box-shadow:0 14px 34px rgba(29,36,51,.12);transform:rotate(-.6deg);font:400 25px/38px 'Neucha',cursive;color:#2A3242;animation:zd-paperIn2 .9s .15s cubic-bezier(.16,1,.3,1) both}
@keyframes zd-paperIn2{from{opacity:0;transform:rotate(-6deg) translateY(30px)}to{opacity:1;transform:rotate(-.6deg)}}
#zd-xmas .letter::before{content:"";position:absolute;left:46px;top:0;bottom:0;width:2px;background:rgba(227,38,111,.35)}
#zd-xmas .letter p{margin:0}
#zd-xmas .letter .big{color:#A8134A;font:700 22px/38px 'Montserrat',sans-serif}
#zd-xmas .sign{margin-top:14px!important;color:#0B6A99}
#zd-xmas .sign span{border-bottom:2px dashed #1E9FDB;padding:0 4px;transition:color .2s}
#zd-xmas .letter .tape{left:40%;width:90px;height:26px}
#zd-xmas .from{font:500 13px/1.4 'Montserrat',sans-serif;color:#596274;margin-top:18px!important}
#zd-xmas .letter .tape{position:absolute;top:-12px;background:rgba(255,212,59,.72);transform:rotate(-6deg)}
#zd-xmas .fhead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}
#zd-xmas .backlink{min-height:44px;padding:0;border:0;background:none;color:#6E5F55;font:500 14px 'Montserrat',sans-serif;cursor:pointer}
#zd-xmas .backlink:focus-visible{outline:3px solid #1E9FDB;outline-offset:2px;border-radius:6px}
#zd-xmas .lettop{display:flex;justify-content:flex-end;margin:4px 0 -6px}
#zd-xmas .enter{animation:zd-rise .7s cubic-bezier(.16,1,.3,1) both}
#zd-xmas .sayb{cursor:pointer;outline:none}
#zd-xmas .sayb .bb{fill:#FFFFFF;transition:fill .25s}
#zd-xmas .sayb:focus-visible .bb{fill:#FFE3EE}
#zd-xmas .sayb:focus-visible .bb{stroke:#1E9FDB;stroke-width:4}
#zd-xmas .sayb{opacity:0;transform-box:fill-box;transform-origin:80% 100%;animation:zd-sayIn .6s 2.5s cubic-bezier(.34,1.56,.64,1) forwards}
@keyframes zd-sayIn{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}
#zd-xmas{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}
#zd-xmas button,#zd-xmas a,#zd-xmas label.consent{touch-action:manipulation}
#zd-xmas button,#zd-xmas .chip,#zd-xmas .pg,#zd-xmas .mtoggle{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
#zd-xmas .pick,#zd-xmas .pg,#zd-xmas .mtoggle,#zd-xmas .hrow,#zd-xmas .sheetx,#zd-xmas .btn-pk{transition-duration:.12s}
#zd-xmas .pick:active,#zd-xmas .pg:active,#zd-xmas .mtoggle:active,#zd-xmas .sheetx:active{transform:scale(.96)}
#zd-xmas .hrow:active{transform:scale(.98);background:#FFEFF5}
#zd-xmas .btn-pk:active{transform:scale(.98)}
#zd-xmas .scrim,#zd-xmas .grab,#zd-xmas .sheethead{display:none}
#zd-xmas .hrow .ct2,#zd-xmas .swipehint{display:none}
#zd-xmas .agei{display:none}
#zd-xmas .drawing .drw-m{display:none}
#zd-xmas .paper.formmode .listview{display:none}
#zd-xmas .submitbar{margin-top:26px}
@keyframes zd-sheetUp{from{transform:translateY(100%)}to{transform:none}}
@keyframes zd-fadeIn{from{opacity:0}}
@media (hover:hover) and (pointer:fine){
#zd-xmas .nav a:hover{color:#1E9FDB}
#zd-xmas .give:hover{color:#FFFFFF;background:#C9165C}
#zd-xmas .btn-hero:hover{color:#FFFFFF;transform:translateY(-2px);box-shadow:0 8px 0 #B5164F,0 16px 28px rgba(227,38,111,.3)}
#zd-xmas .backlink:hover{color:#C2185B}
#zd-xmas .sayb:hover .bb{fill:#FFE3EE}
#zd-xmas .left.wide .hrow:hover{border-color:#E3266F;background:#FFFFFF;transform:translateY(-2px);box-shadow:0 8px 18px rgba(227,38,111,.10)}
#zd-xmas .chip:hover{background:#EFE2D3}
#zd-xmas .hrow:hover{background:#FFF4E6;transform:translateX(3px)}
#zd-xmas .pg:hover{border-color:#E3266F;transform:translateY(-1px)}
#zd-xmas .krow:hover{border-color:#E3266F;box-shadow:0 8px 20px rgba(227,38,111,.10);transform:translateY(-2px)}
#zd-xmas .pick:hover{background:#C9165C;transform:translateY(-1px)}
#zd-xmas .krow.taken:hover{transform:none;box-shadow:none;border-color:#EAE3DC}
#zd-xmas .btn-pk:hover{background:#C9165C;transform:translateY(-2px)}
}
#zd-xmas .mhome{display:none;align-items:center;gap:12px}
#zd-xmas .mhome .hi{flex:none;width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center}
#zd-xmas .mtx{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
#zd-xmas .mtx small{font-size:12px;font-weight:600;color:#7A6E66;text-transform:uppercase;letter-spacing:.06em}
#zd-xmas .mtx b{font-size:17px}
#zd-xmas .mtx span{font-size:14px;color:#5A4F48}
#zd-xmas .mtoggle{flex:none;min-height:48px;padding:0 16px;border:2px solid #1F1A17;border-radius:999px;background:#FFFFFF;color:#1F1A17;font:700 14px 'Montserrat',sans-serif;cursor:pointer}
#zd-xmas .mtoggle:focus-visible{outline:3px solid #1E9FDB;outline-offset:2px}
#zd-xmas .lbody{display:flex;flex-direction:column;flex:1;min-height:0}
#zd-xmas *{-webkit-tap-highlight-color:transparent}
#zd-xmas .office{position:relative;z-index:2;padding:10px 0 100px}
#zd-xmas .panes{display:flex;flex-wrap:wrap;gap:24px;align-items:stretch}
#zd-xmas .left{flex:1 1 340px;min-width:0;max-width:420px;display:flex;flex-direction:column;background:#FFFFFF;border-radius:22px;box-shadow:0 14px 34px rgba(80,40,10,.08);padding:22px;animation:zd-rise .7s .2s cubic-bezier(.16,1,.3,1) both}
#zd-xmas .left h2,#zd-xmas .right h2{margin:0;font:400 32px/1.1 'Neucha',cursive}
#zd-xmas .left.wide{flex:1 1 100%;max-width:none;padding:28px}
#zd-xmas .left.wide h2{font-size:38px}
#zd-xmas .left.wide .hscroll{max-height:none;overflow:visible;-webkit-mask-image:none;mask-image:none;margin:0;padding:0}
#zd-xmas .left.wide .grp{animation:zd-rise .5s cubic-bezier(.16,1,.3,1) both}
#zd-xmas .left.wide .gh{position:static;padding:18px 4px 10px;font-size:14px}
#zd-xmas .left.wide .hlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
#zd-xmas .left.wide .hrow{min-height:64px;border:1.5px solid #F1E6DA;background:#FFFAF3}
#zd-xmas .left.wide .srch{max-width:520px}
#zd-xmas .left h2{margin-bottom:14px}
#zd-xmas .lsub{margin:6px 0 16px;font-size:15px;color:#5A4F48}
#zd-xmas .srch{margin-bottom:12px;display:flex;align-items:center;gap:10px;min-height:54px;padding:0 16px;box-sizing:border-box;border:2px solid #EADBCB;border-radius:14px;background:#FFFCF7;color:#1F1A17;transition:border-color .2s,box-shadow .2s}
#zd-xmas .srch:focus-within{border-color:#1E9FDB;box-shadow:0 0 0 4px rgba(30,159,219,.18)}
#zd-xmas .srch input{flex:1;min-width:0;border:0;outline:none;background:transparent;font:500 16px 'Montserrat',sans-serif;color:#1F1A17}
#zd-xmas .srch input::placeholder{color:#7A6E66}
#zd-xmas .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#zd-xmas .chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 14px}
#zd-xmas .chip{min-height:40px;padding:0 14px;border:0;border-radius:999px;background:#F6EEE4;color:#1F1A17;font:600 14px 'Montserrat',sans-serif;cursor:pointer;transition:background .2s,color .2s}
#zd-xmas .chip.on{background:#1F1A17;color:#FFFFFF}
#zd-xmas .hscroll{flex:1 1 0;min-height:320px;max-height:none;overflow-y:auto;overscroll-behavior:contain;margin:0 -8px;padding:0 8px 24px;scrollbar-width:thin;scrollbar-color:#E3266F #F6EEE4;-webkit-mask-image:linear-gradient(#000 calc(100% - 36px),transparent);mask-image:linear-gradient(#000 calc(100% - 36px),transparent)}
#zd-xmas .hscroll::-webkit-scrollbar{width:8px}
#zd-xmas .hscroll::-webkit-scrollbar-thumb{background:#E3266F;border-radius:8px}
#zd-xmas .hscroll::-webkit-scrollbar-track{background:#F6EEE4;border-radius:8px}
#zd-xmas .hscroll:focus-visible{outline:3px solid #1E9FDB;outline-offset:2px;border-radius:12px}
#zd-xmas .gh{position:sticky;top:0;z-index:1;margin:0;padding:10px 6px 6px;background:#FFFFFF;font:700 13px 'Montserrat',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#1F1A17;display:flex;justify-content:space-between}
#zd-xmas .gh>span:last-child{font-weight:500;letter-spacing:0;text-transform:none;color:#7A6E66}
#zd-xmas .gname{display:inline-flex;align-items:center;gap:8px}
#zd-xmas .gico{width:24px;height:24px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center}
#zd-xmas .grp+.grp{margin-top:6px}
#zd-xmas .chip small{font-weight:500;opacity:.6}
#zd-xmas .hlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
#zd-xmas .hrow{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:8px 12px;box-sizing:border-box;border:2px solid transparent;border-radius:14px;background:none;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:background .2s,border-color .2s,transform .2s cubic-bezier(.16,1,.3,1)}
#zd-xmas .hrow.on{background:#FFEFF5;border-color:#E3266F}
#zd-xmas .hrow .hi{flex:none;width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center}
#zd-xmas .hrow .tx{flex:1;min-width:0}
#zd-xmas .hrow .nm{display:block;font-size:15px;font-weight:700;line-height:1.3}
#zd-xmas .hrow .ct{display:block;font-size:14px;color:#5A4F48;margin-top:2px}
#zd-xmas .hrow .fr{flex:none;max-width:84px;text-align:right;font-size:13px;color:#5A4F48;line-height:1.25}
#zd-xmas .hrow .fr b{display:block;font-size:17px;color:#1F7A47}
#zd-xmas .empty{padding:22px;border-radius:14px;background:#FFF4E6;text-align:center;font-size:15px;color:#4A403A}
#zd-xmas .empty button{margin-top:10px;min-height:44px;padding:0 18px;border:0;border-radius:999px;background:#E3266F;color:#FFFFFF;font:600 14px 'Montserrat',sans-serif;cursor:pointer}
#zd-xmas .right{flex:999 1 520px;min-width:0;position:relative;display:flex;flex-direction:column;border-radius:24px;padding:10px;background:repeating-linear-gradient(-45deg,#E3266F 0 18px,#FFFFFF 18px 30px,#1E9FDB 30px 48px,#FFFFFF 48px 60px);box-shadow:0 16px 40px rgba(80,40,10,.10);animation:zd-rise .7s .3s cubic-bezier(.16,1,.3,1) both}
#zd-xmas .paper{flex:1;position:relative;background:#FFFFFF;border-radius:16px;font-family:'Montserrat',sans-serif;padding:24px 28px 24px}
#zd-xmas .postmark{position:absolute;right:24px;top:20px;width:92px;height:92px;border-radius:50%;border:3px solid rgba(30,159,219,.55);color:rgba(11,106,153,.75);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-12deg);font:400 15px/1.1 'Neucha',cursive;text-align:center;pointer-events:none}
#zd-xmas .postmark b{font:700 18px 'Montserrat',sans-serif}
#zd-xmas .steps{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 120px 18px 0;font-size:15px;font-weight:600;color:#7A6E66}
#zd-xmas .steps .s{display:inline-flex;align-items:center;gap:8px}
#zd-xmas .steps .s i{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-style:normal;background:#F1E6DA;color:#5A4F48;font-size:14px;transition:background .3s,color .3s}
#zd-xmas .steps .s.on{color:#1F1A17}
#zd-xmas .steps .s.on i{background:#E3266F;color:#FFFFFF}
#zd-xmas .steps .s.done i{background:#2E9E5B;color:#FFFFFF}
#zd-xmas .steps .sep{width:26px;height:2px;background:#E6D8C8}
#zd-xmas .hhead{margin-right:0}
#zd-xmas .hhead p{margin:6px 0 0;font-size:15px;color:#5A4F48}
#zd-xmas .klist{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
#zd-xmas .pager{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;padding-top:14px;border-top:1.5px dashed #F1E6DA}
#zd-xmas .pg{min-width:44px;height:44px;padding:0 10px;border:1.5px solid #EADBCB;border-radius:12px;background:#FFFFFF;color:#1F1A17;font:700 15px 'Montserrat',sans-serif;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,color .2s,transform .15s cubic-bezier(.16,1,.3,1)}
#zd-xmas .pg.on{background:#E3266F;border-color:#E3266F;color:#FFFFFF}
#zd-xmas .pg[disabled]{opacity:.35;cursor:default;transform:none}
#zd-xmas .pg:focus-visible{outline:3px solid #1E9FDB;outline-offset:2px}
#zd-xmas .pginfo{margin-left:auto;font-size:14px;color:#5A4F48}
#zd-xmas .krow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:9px 14px;border-radius:16px;background:#FFFAF3;border:1.5px solid #F1E6DA;animation:zd-rise .55s cubic-bezier(.16,1,.3,1) both;transition:border-color .2s,box-shadow .2s,transform .2s cubic-bezier(.16,1,.3,1)}
#zd-xmas .av{flex:none;width:46px;height:46px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#FFFFFF;line-height:1}
#zd-xmas .av b{font:700 16px 'Montserrat',sans-serif;letter-spacing:-.02em;white-space:nowrap}
#zd-xmas .av small{font-size:10px;font-weight:700}
#zd-xmas .kinfo{flex:1 1 220px;min-width:0}
#zd-xmas .kinfo .nm{display:block;font-size:16px;font-weight:700;line-height:1.3}
#zd-xmas .kinfo .ws{display:block;margin-top:2px;font-size:15px;line-height:1.4;color:#1F1A17}
#zd-xmas .kinfo .ws span{font-weight:600;color:#6E5F55}
#zd-xmas .kinfo .ws b{color:#A8134A}
#zd-xmas .pick{flex:none;min-height:44px;padding:0 22px;border:0;border-radius:999px;background:#E3266F;color:#FFFFFF;font:600 15px 'Montserrat',sans-serif;cursor:pointer;transition:background .2s,transform .15s cubic-bezier(.16,1,.3,1)}
#zd-xmas .pick:active{transform:scale(.97)}
#zd-xmas .krow.taken{background:#F5F2EF;border-color:#EAE3DC}
#zd-xmas .krow.taken .av{filter:grayscale(1) opacity(.6)}
#zd-xmas .krow.taken .kinfo{opacity:.65}
#zd-xmas .has{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:48px;font-size:14px;font-weight:600;color:#1F7A47}
#zd-xmas .chosen{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:18px 20px;border-radius:16px;background:#FFF4E6;margin:18px 0 0 0;animation:zd-rise .6s cubic-bezier(.16,1,.3,1) both}
#zd-xmas .chosen .kinfo .nm{font-size:18px}
#zd-xmas .change{min-height:44px;padding:0 4px;border:0;background:none;color:#0B6A99;font:600 15px 'Montserrat',sans-serif;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#zd-xmas .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
#zd-xmas .full{grid-column:1/-1}
#zd-xmas label.l{display:block;font-size:15px;font-weight:600;margin-bottom:7px;color:#2F2722}
#zd-xmas .inp{width:100%;min-height:54px;box-sizing:border-box;padding:12px 16px;border:2px solid #EADBCB;border-radius:14px;background:#FFFCF7;font:500 16px 'Montserrat',sans-serif;color:#1F1A17;caret-color:#E3266F;transition:border-color .2s,box-shadow .2s}
#zd-xmas .inp::placeholder{color:#7A6E66}
#zd-xmas .inp:focus{outline:none;border-color:#1E9FDB;box-shadow:0 0 0 4px rgba(30,159,219,.18)}
#zd-xmas .inp.err{border-color:#C0163F}
#zd-xmas .errt{margin:6px 0 0;font-size:14px;color:#A8123A}
#zd-xmas .consent{display:flex;gap:12px;align-items:center;margin-top:20px;cursor:pointer;font-size:14px;line-height:1.4;color:#4A403A;white-space:nowrap}
@media (max-width:640px){
#zd-xmas .consent{white-space:normal}
}
#zd-xmas .consent input{flex:none;width:22px;height:22px;margin:0;accent-color:#E3266F;cursor:pointer}
#zd-xmas .consent b{color:#1F1A17}
#zd-xmas .btn-pk{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:0 32px;border:0;border-radius:999px;background:#E3266F;color:#FFFFFF;font:700 17px 'Montserrat',sans-serif;cursor:pointer;box-shadow:0 10px 24px rgba(227,38,111,.28);transition:background .2s,transform .2s cubic-bezier(.16,1,.3,1)}
#zd-xmas .btn-pk:active{transform:scale(.98)}
#zd-xmas .hrow:focus-visible,#zd-xmas .chip:focus-visible,#zd-xmas .pick:focus-visible,#zd-xmas .btn-pk:focus-visible,#zd-xmas .change:focus-visible{outline:3px solid #1E9FDB;outline-offset:3px}
#zd-xmas .done{text-align:center;padding:20px 10px 10px}
#zd-xmas .env{width:220px;height:auto;display:block;margin:10px auto 0;overflow:visible;animation:zd-envOff 1.6s .3s cubic-bezier(.45,0,.2,1) both}
@keyframes zd-envOff{0%{transform:translate(0,30px) scale(.8);opacity:0}30%{transform:none;opacity:1}55%{transform:rotate(-4deg)}100%{transform:none}}
#zd-xmas .flap{transform-box:fill-box;transform-origin:50% 0;animation:zd-seal .5s 1.1s cubic-bezier(.16,1,.3,1) both}
@keyframes zd-seal{from{transform:scaleY(-1)}to{transform:scaleY(1)}}
#zd-xmas .heart{transform-box:fill-box;transform-origin:center;animation:zd-stamp .5s 1.5s cubic-bezier(.34,1.56,.64,1) both}
@keyframes zd-stamp{from{transform:scale(2.4);opacity:0}to{transform:scale(1);opacity:1}}
#zd-xmas .done h2{margin:18px 0 0!important;font:400 40px/1.1 'Neucha',cursive}
#zd-xmas .done .lead2{margin:12px auto 0;max-width:34em;font-size:17px;line-height:1.6;color:#4A403A}
#zd-xmas .next{margin:24px auto 0;max-width:520px;text-align:left;list-style:none;padding:20px 24px;background:#FFFAF3;border-radius:16px;display:flex;flex-direction:column;gap:12px}
#zd-xmas .next li{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.55;color:#4A403A}
#zd-xmas .next li b{color:#1F1A17}
#zd-xmas .ck{flex:none;width:28px;height:28px;border-radius:50%;background:#2E9E5B;color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}
#zd-xmas .appear{animation:zd-rise .7s 1.2s cubic-bezier(.16,1,.3,1) both}
@media (max-width:1023px){
#zd-xmas .wrap{padding:0 30px}
#zd-xmas .panes{gap:16px}
#zd-xmas .left{max-width:none;flex-basis:100%;padding:16px 16px}
#zd-xmas .left h2{display:none}
#zd-xmas .mhome{display:flex}
#zd-xmas .lbody{display:none}
#zd-xmas .left.open .lbody{display:flex;margin-top:16px;animation:zd-rise .45s cubic-bezier(.16,1,.3,1) both}
#zd-xmas .hscroll{flex:none;max-height:60vh}
#zd-xmas .right{flex-basis:100%}
}
@media (max-width:760px){
#zd-xmas .wrap{padding:0 20px}
#zd-xmas .nav{display:none}
#zd-xmas .site .wrap{min-height:72px}
#zd-xmas .logo svg{width:38px;height:35px}
#zd-xmas .give{min-height:44px;padding:0 16px;font-size:17px}
#zd-xmas .hero{padding:10px 0 24px}
#zd-xmas .hero .wrap{gap:22px}
#zd-xmas .hero-copy{flex-basis:100%;text-align:center}
#zd-xmas .hero h1{font-size:clamp(46px,14.5vw,60px);line-height:1.04}
#zd-xmas .hero h1 .ln{margin-bottom:2px}
#zd-xmas .lead{margin:24px auto 0;max-width:20em;font-size:17px;line-height:1.5;color:#2F3746;text-wrap:balance}
#zd-xmas .lead .ll{display:block}
#zd-xmas .lead .ll+.ll{margin-top:4px}
#zd-xmas .meter{margin:22px auto 0;max-width:320px;text-align:center}
#zd-xmas .meter p{font-size:15px;line-height:1.4}
#zd-xmas .mcount{white-space:nowrap;font-size:clamp(13px,4vw,15px)!important}
#zd-xmas .meter b{font-size:26px;vertical-align:-2px}
#zd-xmas .lead{font-size:17px;margin-top:18px}
#zd-xmas .drawing{transform:rotate(.8deg);padding:12px}
#zd-xmas .how{padding-bottom:22px}
#zd-xmas .how ol{flex-direction:column;align-items:flex-start;gap:12px}
#zd-xmas .how li b{font-size:21px;white-space:nowrap}
#zd-xmas .how .arrow{display:none}
#zd-xmas .right{padding:6px;border-radius:18px}
#zd-xmas .paper{padding:20px 16px;border-radius:13px;min-height:0}
#zd-xmas .right h2{font-size:28px}
#zd-xmas .krow{padding:14px;gap:10px 12px}
#zd-xmas .kinfo .nm{font-size:17px}
#zd-xmas .kinfo .ws{font-size:16px}
#zd-xmas .krow .pick{width:100%;min-height:52px;font-size:16px}
#zd-xmas .pager{justify-content:center}
#zd-xmas .pg{min-width:46px;height:46px}
#zd-xmas .pginfo{width:100%;margin:6px 0 0;text-align:center}
#zd-xmas .fields{grid-template-columns:minmax(0,1fr);gap:16px}
#zd-xmas .inp{min-height:56px;font-size:17px}
#zd-xmas label.l{font-size:16px}
#zd-xmas .btn-pk{width:100%;min-height:60px;font-size:18px}
#zd-xmas .letter{margin:16px 2px 0;padding:30px 16px 22px 40px;font-size:21px;line-height:34px;background-image:repeating-linear-gradient(#FFFFFF 0 33px,#D6E8F3 33px 34px)}
#zd-xmas .letter .big{font-size:19px;line-height:34px}
#zd-xmas .letter::before{left:28px}
#zd-xmas .done h2{font-size:34px}
#zd-xmas .next{padding:18px}
}
@media (max-width:760px){
#zd-xmas .paper.formmode .listview{display:block}
#zd-xmas .left{padding:18px 0 12px;border-radius:20px}
#zd-xmas .left h2{display:block;font-size:26px;margin:0 16px 10px}
#zd-xmas .mhome{display:none}
#zd-xmas .left .scrim{display:none}
#zd-xmas .lbody,#zd-xmas .left.open .lbody{display:flex;flex-direction:column;margin:0}
#zd-xmas .left .srch{margin:0 16px 12px}
#zd-xmas .hscroll,#zd-xmas .left.open .hscroll{position:relative;display:flex;gap:10px;flex:none;overflow-x:auto;overflow-y:hidden;max-height:none;min-height:0;margin:0;padding:4px 16px 12px;scroll-snap-type:x mandatory;scroll-padding:0 16px;overscroll-behavior-x:contain;-webkit-mask-image:none;mask-image:none;scrollbar-width:none}
#zd-xmas .hscroll::-webkit-scrollbar{display:none}
#zd-xmas .grp,#zd-xmas .hlist{display:contents}
#zd-xmas .gh{display:none}
#zd-xmas .hlist li{flex:none;width:68%;max-width:280px;scroll-snap-align:start}
#zd-xmas .hrow{height:100%;min-height:128px;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px;border:1.5px solid #F1E6DA;background:#FFFAF3;border-radius:16px}
#zd-xmas .hrow.on{background:#FFEFF5;border-color:#E3266F;box-shadow:inset 0 0 0 1.5px #E3266F}
#zd-xmas .hrow .hi{width:38px;height:38px}
#zd-xmas .hrow .nm{font-size:16px;line-height:1.25}
#zd-xmas .hrow .ct2{display:block;margin-top:2px;font-size:14px;color:#5A4F48}
#zd-xmas .hrow .fr{text-align:left;font-size:14px}
#zd-xmas .hrow .fr b{display:inline;margin-right:4px;font-size:18px}
#zd-xmas .swipehint{display:flex;align-items:center;gap:6px;margin:0 16px;font-size:14px;color:#7A6E66}
#zd-xmas .scrim{display:block;position:fixed;inset:0;z-index:70;border:0;padding:0;background:rgba(31,26,23,.45);animation:zd-fadeIn .25s ease-out both}
#zd-xmas .grab{display:block;width:44px;height:5px;border-radius:3px;background:#D9CDC1;margin:2px auto 12px}
#zd-xmas .fsheet{position:fixed;left:0;right:0;bottom:0;z-index:80;max-height:92dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#FFFFFF;border-radius:24px 24px 0 0;padding:8px 18px 0;box-shadow:0 -12px 40px rgba(31,26,23,.22);animation:zd-sheetUp .45s cubic-bezier(.32,.72,0,1) both}
#zd-xmas .fsheet .fhead h2{font-size:28px}
#zd-xmas .fsheet .letter{margin:10px 2px 0;padding:22px 14px 18px 38px;font-size:19px;line-height:30px;transform:none;background-image:repeating-linear-gradient(#FFFFFF 0 29px,#D6E8F3 29px 30px);animation:none}
#zd-xmas .fsheet .letter .big{font-size:18px;line-height:30px}
#zd-xmas .fsheet .letter .tape{display:none}
#zd-xmas .fsheet .letter::before{left:26px}
#zd-xmas .fsheet .letter .from{display:none}
#zd-xmas .fsheet .letter .sign{margin-top:4px!important}
#zd-xmas .submitbar{position:sticky;bottom:0;z-index:2;margin:18px -18px 0;padding:14px 18px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(rgba(255,255,255,0),#FFFFFF 22%)}
#zd-xmas .submitbar .btn-pk{box-shadow:0 8px 20px rgba(227,38,111,.35);white-space:nowrap;padding:0 14px;font-size:clamp(15px,4.6vw,18px)}
#zd-xmas .shrow{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
#zd-xmas .shrow b{font:400 28px 'Neucha',cursive}
#zd-xmas .sheetx{width:44px;height:44px;border:0;border-radius:50%;background:#F6EEE4;color:#1F1A17;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
#zd-xmas .mhome{padding:2px 0}
#zd-xmas .krow{position:relative}
#zd-xmas .krow .av{display:none}
#zd-xmas .agei{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:999px;color:#FFFFFF;font:700 14px/1.4 'Montserrat',sans-serif;vertical-align:1px;white-space:nowrap}
#zd-xmas .hero .drawing{max-width:none;margin:0}
#zd-xmas .drawing .drw-d{display:none}
#zd-xmas .drawing .drw-m{display:block}
}
@media (prefers-reduced-motion:reduce){
#zd-xmas .snow{display:none}
#zd-xmas *,#zd-xmas *::before,#zd-xmas *::after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
#zd-xmas .letter::before{display:none!important}
#zd-xmas .letter{padding-left:30px!important}
@media (max-width:760px){
#zd-xmas .letter{padding-left:16px!important;padding-right:16px!important}
}
#zd-xmas .letter .sign,#zd-xmas .letter .from{margin-top:0!important}
#zd-xmas .letter{background-position:0 32px!important}
@media (max-width:760px){
#zd-xmas .fsheet .letter{background-position:0 16px!important;padding-top:22px!important}
}
#zd-xmas .hrow .frm{display:none}
@media (max-width:760px){
#zd-xmas .hrow .frm{display:inline}
}
#zd-xmas .hrow .fr{white-space:nowrap;max-width:none!important}
#zd-xmas .hrow .fr b{display:inline!important;margin-right:4px}
#zd-xmas .gnum{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:2px;border-radius:999px;background:#F1E6DA;color:#5A4F48;font:700 12px/1 'Montserrat',sans-serif;letter-spacing:0;box-sizing:border-box}
@media (max-width:760px){
#zd-xmas .hero-copy{text-align:left!important}
#zd-xmas .hero h1{font-size:clamp(48px,15vw,62px)!important}
#zd-xmas .lead{margin:18px 0 0!important;max-width:none!important;font-size:18px!important;line-height:1.5!important;text-wrap:pretty}
#zd-xmas .lead .ll{display:inline!important}
#zd-xmas .lead .ll+.ll{margin-top:0!important}
#zd-xmas .meter{margin:20px 0 0!important;max-width:none!important;text-align:left!important}
#zd-xmas .how ol{padding-left:2px}
}
#zd-xmas .done{position:relative}
#zd-xmas .burst{position:absolute;left:50%;top:70px;width:0;height:0;pointer-events:none;z-index:3}
#zd-xmas .cf{position:absolute;top:0;width:10px;height:14px;border-radius:3px;opacity:0}
#zd-xmas .q0{animation:zd-cf0 1.7s cubic-bezier(.16,1,.3,1) forwards}
#zd-xmas .q1{animation:zd-cf1 1.7s cubic-bezier(.16,1,.3,1) forwards}
#zd-xmas .q2{animation:zd-cf2 1.7s cubic-bezier(.16,1,.3,1) forwards}
#zd-xmas .q3{animation:zd-cf3 1.7s cubic-bezier(.16,1,.3,1) forwards}
#zd-xmas .q4{animation:zd-cf4 1.7s cubic-bezier(.16,1,.3,1) forwards}
#zd-xmas .q5{animation:zd-cf5 1.7s cubic-bezier(.16,1,.3,1) forwards}
@keyframes zd-cf0{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(-190px,170px) rotate(520deg)}}
@keyframes zd-cf1{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(180px,190px) rotate(-480deg)}}
@keyframes zd-cf2{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(-110px,-90px) rotate(400deg)}}
@keyframes zd-cf3{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(120px,-80px) rotate(-420deg)}}
@keyframes zd-cf4{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(-40px,230px) rotate(620deg)}}
@keyframes zd-cf5{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(60px,220px) rotate(-560deg)}}
#zd-xmas .ticket{margin:24px auto 0;max-width:520px;text-align:left;background:#FFFFFF;border:2px dashed #EADBCB;border-radius:18px;overflow:hidden}
#zd-xmas .tk-top{display:flex;align-items:center;gap:12px;padding:14px 16px}
#zd-xmas .tk-age{flex:none;min-width:46px;height:46px;padding:0 6px;box-sizing:border-box;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#FFFFFF;font:700 15px 'Montserrat',sans-serif}
#zd-xmas .tk-who{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
#zd-xmas .tk-who b{font-size:16px}
#zd-xmas .tk-who span{font-size:14px;color:#5A4F48}
#zd-xmas .tk-ref{flex:none;display:flex;flex-direction:column;align-items:flex-end;font:700 15px 'Montserrat',sans-serif;color:#1F1A17}
#zd-xmas .tk-ref small,#zd-xmas .tk-wish small{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7A6E66}
#zd-xmas .tk-wish{display:flex;flex-direction:column;gap:2px;padding:12px 16px 14px;background:#FFF4E6;border-top:2px dashed #EADBCB}
#zd-xmas .tk-wish b{font-size:18px;color:#A8134A}
#zd-xmas .mailnote{margin:18px auto 0;max-width:520px;font-size:14px;line-height:1.55;color:#5A4F48}
#zd-xmas .doneacts{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px}
@media (max-width:760px){
#zd-xmas .done{padding:12px 0 6px}
#zd-xmas .done h2{font-size:34px}
#zd-xmas .ticket{margin-top:20px}
#zd-xmas .tk-top{flex-wrap:wrap}
#zd-xmas .doneacts{flex-direction:column}
#zd-xmas .doneacts .btn-pk{width:100%}
}
#zd-xmas .done .one{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
@media (max-width:380px){
#zd-xmas .done .one{white-space:normal}
}
#zd-xmas .done .next li>span:last-child{white-space:nowrap}
@media (max-width:380px){
#zd-xmas .done .next li>span:last-child{white-space:normal}
}
@media (max-width:760px){
#zd-xmas .done .one{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;text-wrap:balance}
#zd-xmas .done .lead2{font-size:17px;max-width:20em}
#zd-xmas .done .mailnote{font-size:15px;max-width:22em}
#zd-xmas .done .next{padding:16px 16px;gap:14px}
#zd-xmas .done .next li{align-items:flex-start;font-size:15px;line-height:1.45}
#zd-xmas .done .next li>span:last-child{white-space:normal!important}
#zd-xmas .done .next li b{display:block;font-size:16px;margin-bottom:1px}
#zd-xmas .done .ck{margin-top:1px}
}
@media (max-width:760px){
#zd-xmas .tk-top{flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px}
#zd-xmas .tk-ref{order:-1;width:100%;flex-direction:row;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1.5px dashed #EADBCB}
#zd-xmas .tk-who{order:0;flex:1 1 0}
#zd-xmas .tk-who b{font-size:16px}
#zd-xmas .tk-age{order:1;min-width:0;height:30px;padding:0 10px;font-size:14px}
#zd-xmas .tk-wish{padding:10px 14px 12px}
}
@media (min-width:761px){
#zd-xmas .done{padding:4px 0 2px}
#zd-xmas .done .env{width:120px}
#zd-xmas .done h2{margin:8px 0 0!important;font-size:36px}
#zd-xmas .done .lead2{margin:6px auto 0}
#zd-xmas .donerow{display:flex;flex-direction:column;gap:12px;width:100%;max-width:520px;margin:18px auto 0}
#zd-xmas .donerow .ticket,#zd-xmas .donerow .next{margin:0;max-width:none}
#zd-xmas .donerow .next{padding:14px 20px;gap:8px}
#zd-xmas .done .mailnote{margin:14px auto 0}
#zd-xmas .done .doneacts{margin-top:14px}
}
@media (min-width:761px){
#zd-xmas .right{min-height:704px;box-sizing:border-box}
#zd-xmas .paper{display:flex;flex-direction:column;min-height:0}
#zd-xmas .paper > .listview{flex:1;display:flex;flex-direction:column}
#zd-xmas .paper.formmode > .listview{display:none}
#zd-xmas .listview .pager{margin-top:auto}
#zd-xmas .paper > .done{flex:1;display:flex;flex-direction:column;justify-content:center}
}
#zd-xmas .consent.err input{outline:2px solid #A8123A;outline-offset:2px}
#zd-xmas .consent.err b{color:#A8123A}
#zd-xmas .errsum{margin:0;font-size:15px;font-weight:600;color:#A8123A}
@media (min-width:761px){
#zd-xmas .fsheet .errt{display:none}
#zd-xmas .submitbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
}
@media (max-width:760px){
#zd-xmas .errsum{display:none}
}
@media (min-width:761px){
#zd-xmas .hrow .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media (max-width:760px){
#zd-xmas .hrow{min-height:96px}
}
@media (max-width:760px){
#zd-xmas .mcount{text-align:center}
}

/* ---- build fixes and additions (docs/claude-design/FRONTEND_SPEC.md §3.4, §5.6, §7) ---- */
#zd-xmas [hidden]{display:none!important}
#zd-xmas .office{scroll-margin-top:24px}
/* hero: two columns from ~1000 px (the drawing is content-box in the prototype) */
#zd-xmas .drawing{box-sizing:border-box}
/* „Как работи“ arrows would dangle at the end of a wrapped row */
@media (max-width:1099px){#zd-xmas .how .arrow{display:none}}
/* phone speech bubble grows from its tail */
@media (max-width:760px){#zd-xmas .drw-m .sayb{transform-origin:54% 100%}}
/* search: no native chrome */
#zd-xmas .srch input{-webkit-appearance:none;appearance:none;padding:0;height:auto;min-height:0;border-radius:0}
#zd-xmas .srch input::-webkit-search-cancel-button,#zd-xmas .srch input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}
/* disabled pager arrows do not react to hover */
@media (hover:hover) and (pointer:fine){#zd-xmas .pg[disabled]:hover{border-color:#EADBCB;transform:none}}
@media (max-width:760px){#zd-xmas .left .empty{margin:0 16px}}
#zd-xmas .hscroll{padding-top:8px}
@media (min-width:761px){#zd-xmas .hscroll{padding-top:0}}

/* step 3 form lives in a <dialog>: inline on desktop/tablet (show()), bottom sheet on phones (showModal(), top layer) */
#zd-xmas dialog.zd-dlg{position:static;display:none;margin:0;padding:0;border:0;width:auto;height:auto;max-width:none;max-height:none;background:none;color:inherit;overflow:visible;inset:auto;outline:none}
#zd-xmas dialog.zd-dlg[open]{display:block}
#zd-xmas dialog.zd-dlg:modal{position:fixed;inset:0;width:100%;height:100%;max-width:100%;max-height:100%;overflow:hidden}
#zd-xmas dialog.zd-dlg::backdrop{background:rgba(31,26,23,.45);animation:zd-fadeIn .25s ease-out both}
@media (max-width:760px){#zd-xmas .fsheet{max-height:92vh;max-height:92dvh}}
html.zd-lock{overflow:hidden}

/* honeypot */
#zd-xmas .zd-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* privacy link under the consent */
#zd-xmas .zd-privacy{margin:8px 0 0 34px;font-size:13px;line-height:1.4}
#zd-xmas .zd-privacy a{color:#0B6A99;text-decoration:underline;text-underline-offset:3px}

/* loading, notices, preview, closed */
#zd-xmas .zd-loading{padding:28px 6px;font-size:15px;color:#5A4F48}
#zd-xmas .zd-notice{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:#FCE9E7;color:#A8123A;font-size:15px;font-weight:600}
#zd-xmas .zd-preview{margin:0 0 16px;padding:14px 18px;border-radius:12px;background:#FFF6E0;border:1px solid #F3D98F;color:#5C3A00;font-size:14px}
@media (max-width:760px){#zd-xmas .errsum.zd-server{display:block}}

/* off-screen or hidden tab: stop the never-ending animations */
#zd-xmas.zd-paused .snow{display:none}
#zd-xmas.zd-paused .bulb,#zd-xmas.zd-paused .bulb .halo,#zd-xmas.zd-paused .twinkle{animation-play-state:paused}

@media (prefers-reduced-motion:reduce){
  #zd-xmas svg .d1,#zd-xmas svg .d2,#zd-xmas svg .d3{animation-delay:0s!important}
}

/* Countdown for a draft with a start time (visitors only). Airmail envelope + letter, like the panels below it. */
#zd-xmas .soon{display:none;padding:34px 0 110px}
#zd-xmas.zd-soon .soon{display:block}
#zd-xmas.zd-soon .hero,#zd-xmas.zd-soon .how,#zd-xmas.zd-soon .office{display:none}
#zd-xmas .soon-env{max-width:880px;margin:0 auto;padding:12px;border-radius:26px;background:repeating-linear-gradient(-45deg,#E3266F 0 18px,#FFFFFF 18px 30px,#1E9FDB 30px 48px,#FFFFFF 48px 60px);box-shadow:0 22px 50px rgba(31,26,23,.12);animation:zd-rise .8s cubic-bezier(.16,1,.3,1) both}
#zd-xmas .soon-paper{position:relative;background:#FFFFFF;border-radius:18px;padding:58px 40px 46px;text-align:center}
#zd-xmas .soon-kicker{margin:0;font:600 14px 'Montserrat',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#1E9FDB}
#zd-xmas .soon h1{margin:14px 0 0;font:400 clamp(46px,6vw,78px)/1 'Neucha',cursive;letter-spacing:-.01em}
#zd-xmas .soon h1 .ln{display:block}
#zd-xmas .soon h1 .pk,#zd-xmas .soon h1 .pk2{color:#E3266F}
#zd-xmas .soon-lead{margin:22px auto 0;max-width:30em;font-size:18px;line-height:1.6;color:#4A403A}
#zd-xmas .soon-clock{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:30px}
#zd-xmas .soon-unit{width:132px;padding:20px 8px 14px;box-sizing:border-box;background:#FFFAF3;border:1.5px solid #F1E6DA;border-radius:18px;box-shadow:0 10px 22px rgba(31,26,23,.07);animation:zd-pop .5s cubic-bezier(.16,1,.3,1) both}
#zd-xmas .soon-unit:nth-child(1){rotate:-2deg;animation-delay:.25s}
#zd-xmas .soon-unit:nth-child(2){rotate:1.5deg;animation-delay:.35s}
#zd-xmas .soon-unit:nth-child(3){rotate:-1deg;animation-delay:.45s}
#zd-xmas .soon-unit:nth-child(4){rotate:2deg;animation-delay:.55s}
#zd-xmas .soon-unit b{display:block;font:400 64px/1 'Neucha',cursive}
#zd-xmas .soon-unit:nth-child(1) b{color:#E3266F}
#zd-xmas .soon-unit:nth-child(2) b{color:#1E9FDB}
#zd-xmas .soon-unit:nth-child(3) b{color:#1F7A47}
#zd-xmas .soon-unit:nth-child(4) b{color:#E8A600}
#zd-xmas .soon-unit b.tick{animation:zd-tick .45s cubic-bezier(.16,1,.3,1)}
#zd-xmas .soon-unit span{display:block;margin-top:8px;font-size:14px;font-weight:600;color:#6E5F55}
@keyframes zd-tick{from{transform:translateY(-12px);opacity:.15}to{transform:none;opacity:1}}
@media (max-width:760px){
#zd-xmas .soon{padding:18px 0 70px}
#zd-xmas .soon-env{padding:7px;border-radius:20px}
#zd-xmas .soon-paper{padding:44px 16px 34px;border-radius:14px}
#zd-xmas .soon-clock{gap:12px}
#zd-xmas .soon-unit{width:calc(50% - 6px);max-width:150px}
#zd-xmas .soon-unit b{font-size:52px}
#zd-xmas .soon-lead{font-size:17px}
}
@media (prefers-reduced-motion:reduce){
#zd-xmas .soon-env,#zd-xmas .soon-unit,#zd-xmas .soon-unit b.tick{animation:none}
}
