:root{
    --ink:#162033;--muted:#7e8799;--surface:#fff;--soft:#fff0f4;--brand:#ef3f79;--brand-dark:#d92e66;
    --line:#f4cbd8;--shadow:0 16px 45px rgba(73,31,48,.10);--radius:26px;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff8fa;color:var(--ink)}a{color:inherit}.site-header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.94);border-bottom:1px solid #f5dde5;position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}.brand{text-decoration:none;font-weight:950;font-size:1.35rem}.site-header nav a{text-decoration:none;font-weight:800}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:950;color:var(--brand)}
.primary-button,.secondary-button,.presentation-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:15px 24px;font-weight:900;font-size:1rem;text-decoration:none;cursor:pointer;transition:.2s ease}.primary-button,.presentation-button{background:linear-gradient(135deg,var(--brand),#ff648f);color:#fff;box-shadow:0 10px 22px rgba(239,63,121,.25)}.primary-button:hover,.presentation-button:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(239,63,121,.32)}.secondary-button{background:#fff;border:1px solid #efcfda;color:var(--ink)}button[hidden]{display:none!important}
.language-rail{position:fixed;left:max(12px,calc((100vw - 1280px)/2));top:110px;display:grid;gap:8px;z-index:20}.language-pill{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:#fff;border:1px solid #f1dbe2;text-decoration:none;font-weight:900;font-size:.8rem;color:#9199a8;box-shadow:0 8px 25px rgba(66,31,43,.06)}.language-pill.is-active{background:var(--brand);color:#fff;border-color:var(--brand)}
.hero{max-width:1180px;margin:auto;padding:72px 24px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:64px}.hero h1{font-size:clamp(2.9rem,6vw,5.7rem);line-height:.98;margin:18px 0 22px;letter-spacing:-.055em}.hero p{font-size:1.2rem;line-height:1.6;color:var(--muted);max-width:650px}.phone-demo{justify-self:center;width:min(340px,90vw);padding:13px;border-radius:46px;background:#231c1f;box-shadow:0 32px 90px rgba(70,20,35,.22);transform:rotate(3deg)}.phone-screen{min-height:610px;border-radius:35px;background:linear-gradient(145deg,#fff2f5,#f5b8c8);padding:45px 26px;display:flex;flex-direction:column;justify-content:center;text-align:center}.phone-screen h2{font-size:2rem}.phone-screen button{align-self:center;border:0;border-radius:99px;background:#ef3f79;color:#fff;padding:13px 28px;font-weight:850}.tiny-heart{font-size:4rem}.product-grid{max-width:1180px;margin:0 auto 90px;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-card{background:#fff;border:1px solid #f3d9e1;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.product-card strong{font-size:2rem}.product-card.disabled{opacity:.5}
.editor-shell{max-width:1040px;margin:0 auto;padding:44px 24px 120px}.editor-topline{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:28px}.editor-topline h1{font-size:clamp(2.4rem,5vw,4.2rem);letter-spacing:-.05em;line-height:1;margin:10px 0 12px}.editor-topline p{color:var(--muted);font-size:1.05rem;margin:0}.current-language-badge{background:#fff;border:1px solid #f1dce3;border-radius:999px;padding:10px 16px;font-weight:850;color:var(--brand)}.editor-form{display:grid;gap:24px}
.wizard-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:start;padding:18px 8px 28px;max-width:780px;margin:0 auto}.wizard-step{border:0;background:transparent;display:grid;justify-items:center;gap:9px;min-width:110px;color:#a3aaba;font-weight:750;cursor:pointer}.wizard-step-circle{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#fdeaf1;color:#f3a0bd;font-size:1.25rem;font-weight:950;border:5px solid transparent;transition:.25s}.wizard-step.is-active{color:var(--brand)}.wizard-step.is-active .wizard-step-circle{background:var(--brand);color:#fff;border-color:#ffc8db;box-shadow:0 7px 20px rgba(239,63,121,.24)}.wizard-step.is-complete .wizard-step-circle{background:var(--brand);color:#fff}.wizard-line{height:2px;background:#f4b5ca;margin-top:27px;min-width:22px}
.wizard-panel{display:none}.wizard-panel.is-active{display:grid;gap:24px;animation:panel-in .3s ease}@keyframes panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.panel-heading{padding:16px 2px 2px}.panel-heading.centered{text-align:center}.panel-heading h2{font-size:clamp(1.7rem,4vw,2.5rem);letter-spacing:-.035em;margin:0 0 8px}.panel-heading p,.section-note{color:var(--muted);font-size:1.05rem;margin:0;line-height:1.5}
.recipient-gender-switch{display:grid;grid-template-columns:1fr 1fr;background:#fdebf2;border-radius:24px;padding:6px;gap:6px;max-width:620px;margin:0 auto 8px}.gender-card{position:relative}.gender-card input{position:absolute;opacity:0;pointer-events:none}.gender-card span{height:58px;border-radius:19px;display:flex;align-items:center;justify-content:center;gap:8px;color:#687184;font-size:1.15rem;font-weight:900;cursor:pointer}.gender-card.is-selected span{background:#fff;color:var(--brand);box-shadow:0 5px 14px rgba(76,34,50,.15)}
.editor-card{background:#fff;border:1px solid #f2dbe3;border-radius:30px;padding:24px;box-shadow:var(--shadow);overflow:hidden}.editor-card h3{font-size:1.15rem;margin:0 0 18px}.field-grid{display:grid;gap:16px}.field-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.field-stack{display:grid;gap:16px;margin-top:16px}.field-stack.compact{margin:0 0 20px;max-width:430px}.form-field{display:grid;gap:7px;min-width:0}.form-field label{font-weight:850;color:#364052}.form-field input,.form-field textarea,.form-field select{width:100%;border:1px solid #e8c9d4;border-radius:17px;padding:13px 15px;font:inherit;background:#fffafd;color:var(--ink);outline:none;transition:.18s}.form-field textarea{resize:vertical;min-height:92px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(239,63,121,.10);background:#fff}.form-field.has-error input,.form-field.has-error textarea,.form-field.has-error select{border-color:#d93352}.field-error,.form-errors{color:#b4233d;font-weight:750;font-size:.88rem}.form-errors{background:#fff0f3;border:1px solid #f4bdca;border-radius:14px;padding:12px 14px}.form-errors ul,.field-error ul{margin:0;padding-left:18px}
.date-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.date-card{border:1px solid #f2d2dc;background:#fff9fb;border-radius:22px;padding:16px;display:grid;gap:12px}.date-card-number{font-weight:900;color:var(--brand);font-size:.88rem}.delete-check{display:flex;gap:8px;align-items:center;font-size:.86rem;color:var(--muted)}.map-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:start}.map-fields{display:grid;gap:15px}.google-map,.map-placeholder{width:100%;height:370px;border-radius:22px;overflow:hidden;border:1px solid #f0cbd7;margin-top:14px}.map-placeholder{position:relative;background:linear-gradient(35deg,#fde6ee 25%,transparent 25%) 0 0/36px 36px,linear-gradient(35deg,transparent 75%,#fde6ee 75%) 0 0/36px 36px,#fff8fa;display:grid;place-items:center;text-align:center;padding:30px}.map-placeholder:after{content:"♥";font-size:2.2rem;color:var(--brand);position:absolute;top:45%;left:52%}.map-placeholder span{font-size:2rem;font-weight:950}.map-placeholder small{max-width:280px;color:var(--muted);font-weight:700}
.activity-builder{position:relative}.activity-filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:10px}.filter-chip{border:1px solid #f5bfd1;background:#fff6f9;color:var(--brand);border-radius:999px;padding:9px 15px;font-weight:850;white-space:nowrap;cursor:pointer}.filter-chip.is-active{background:var(--brand);color:#fff}.activity-count{position:absolute;right:24px;top:28px;font-weight:900;color:var(--brand)}.activity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:10px}.activity-card{position:relative;border:1.5px solid #f1d8e0;border-radius:19px;padding:10px;text-align:center;display:grid;gap:8px;cursor:pointer;background:#fff;min-height:126px;align-content:center;transition:.18s}.activity-card[hidden]{display:none}.activity-card input{position:absolute;opacity:0}.activity-card:hover{transform:translateY(-2px);border-color:#f58aad}.activity-card.is-selected{border-color:var(--brand);box-shadow:0 8px 20px rgba(239,63,121,.14)}.activity-placeholder{height:54px;border-radius:14px;background:linear-gradient(145deg,#fff0f5,#f7dce5);display:grid;place-items:center}.activity-placeholder.custom{font-size:1.55rem;color:#e79ab4}.activity-card strong{font-size:.9rem}.activity-check{position:absolute;right:7px;top:7px;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:.78rem;opacity:0;transform:scale(.7);transition:.18s}.activity-card.is-selected .activity-check{opacity:1;transform:scale(1)}.custom-activity-input{margin-top:18px;max-width:460px}
.final-preview-card{max-width:650px;margin:0 auto;background:#fff;border:1px solid #f1d8e0;border-radius:30px;padding:24px;box-shadow:var(--shadow)}.final-ticket-stub{border:2px solid var(--brand);border-radius:22px;overflow:hidden;display:grid;text-align:center}.final-ticket-stub>span,.final-ticket-stub>strong{background:var(--brand);color:#fff;padding:9px}.final-ticket-stub>strong{font-size:1.2rem}.final-ticket-stub>div{font-size:1.65rem;font-weight:950;padding:34px 18px}.summary-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 0}.summary-list div{background:#fff4f7;border-radius:15px;padding:12px}.summary-list dt{font-size:.76rem;color:var(--muted)}.summary-list dd{margin:4px 0 0;font-weight:900}.wizard-actions{position:sticky;bottom:14px;background:rgba(255,255,255,.94);border:1px solid #f0d6df;border-radius:999px;padding:9px;display:flex;gap:9px;justify-content:flex-end;box-shadow:0 15px 40px rgba(60,26,39,.15);backdrop-filter:blur(14px);z-index:25}
.messages{position:fixed;right:20px;bottom:20px;z-index:60}.message{background:#202a22;color:#fff;padding:14px 18px;border-radius:12px}
.presentation-body{margin:0;overflow:hidden;background:#21191c}.presentation{height:100dvh;max-width:520px;margin:auto;position:relative;background:var(--background);color:var(--text);box-shadow:0 0 80px rgba(0,0,0,.35)}.slide{position:absolute;inset:0;display:grid;place-items:center;padding:max(28px,env(safe-area-inset-top)) 24px max(28px,env(safe-area-inset-bottom));opacity:0;pointer-events:none;transform:translateY(22px) scale(.99);transition:.45s ease}.slide.is-active{opacity:1;pointer-events:auto;transform:none}.slide-inner{text-align:center;width:100%;max-width:420px}.slide h1{font-size:clamp(2rem,9vw,3.5rem);line-height:1.02;letter-spacing:-.04em}.slide h2{font-size:1.65rem}.salutation,.signature{font-family:Georgia,serif;font-style:italic;font-size:1.4rem}.heart-mark{font-size:4rem;color:var(--primary)}.large-copy{font-size:1.35rem;line-height:1.55}.presentation-button{background:var(--button);color:var(--accent);margin-top:20px}.answer-area{height:190px;position:relative;display:grid;place-items:center}.yes-button{z-index:2}.no-button{position:absolute;left:20px;top:120px;border:1px solid color-mix(in srgb,var(--text) 20%,transparent);background:transparent;color:var(--text);border-radius:999px;padding:11px 18px;font-weight:800;transition:left .16s,top .16s}.choice-form{overflow-y:auto;max-height:90dvh;padding:10px}.choice-list{display:grid;gap:10px;text-align:left}.choice-card{display:flex;gap:12px;align-items:flex-start;padding:15px;border:1px solid color-mix(in srgb,var(--text) 18%,transparent);border-radius:16px;background:color-mix(in srgb,var(--background) 84%,white)}.choice-card input{margin-top:5px}.choice-card span{display:grid}.choice-card small{opacity:.65;margin-top:4px}.meeting-summary{display:grid;gap:5px;margin:18px 0;padding:16px;border-radius:16px;background:color-mix(in srgb,var(--primary) 10%,var(--background))}.preview-ribbon{position:fixed;z-index:50;left:50%;top:12px;transform:translateX(-50%);background:#1f1b1d;color:#fff;text-decoration:none;padding:9px 16px;border-radius:999px;font-weight:800;font-size:.82rem}.ticket-page{min-height:100vh;display:grid;place-items:center;background:var(--background);color:var(--text);padding:24px}.ticket-wrap{width:min(650px,100%);display:grid;gap:20px}.date-ticket{background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 25px 90px rgba(60,20,30,.18);border:2px solid var(--primary)}.date-ticket header,.date-ticket footer{display:flex;justify-content:space-between;gap:20px;padding:18px 22px;background:var(--primary);color:#fff}.ticket-main{padding:32px}.ticket-names{font-size:clamp(1.8rem,6vw,3rem);font-weight:900;text-align:center}.ticket-names span{color:var(--primary)}.ticket-row{display:grid;gap:4px;border-top:1px dashed #d9cdd1;padding:16px 0}.ticket-row small{font-weight:900;letter-spacing:.12em;color:#8b777f}.ticket-note{text-align:center;color:#786970}.empty-state{max-width:650px;margin:15vh auto;padding:32px;text-align:center}.dashboard-shell{max-width:1050px;margin:0 auto;padding:56px 24px 120px}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.dashboard-card{background:#fff;border:1px solid #f0d9e1;border-radius:20px;padding:22px}.dashboard-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dashboard-card dl div{background:#fff1f5;border-radius:12px;padding:10px}.dashboard-card dt{font-size:.75rem;color:var(--muted)}.dashboard-card dd{margin:4px 0 0;font-weight:850}.card-actions{display:flex;gap:12px}.status{font-size:.78rem;font-weight:850;color:var(--brand)}
@media(max-width:900px){.language-rail{position:absolute;top:82px;left:18px;display:flex}.hero{grid-template-columns:1fr;padding-top:100px}.phone-demo{order:-1;width:270px}.phone-screen{min-height:470px}.product-grid,.dashboard-grid{grid-template-columns:1fr}.hero h1{font-size:3.2rem}.map-layout{grid-template-columns:1fr}.activity-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.editor-shell{padding:28px 12px 100px}.editor-topline{display:block}.current-language-badge{display:inline-flex;margin-top:16px}.wizard-progress{grid-template-columns:repeat(4,1fr);gap:4px;padding-inline:0}.wizard-line{display:none}.wizard-step{min-width:0;font-size:.72rem}.wizard-step-circle{width:46px;height:46px}.field-grid.two-columns,.date-card-grid{grid-template-columns:1fr}.editor-card{padding:18px;border-radius:24px}.activity-grid{grid-template-columns:repeat(3,1fr);gap:9px}.activity-card{min-height:112px;padding:7px}.activity-placeholder{height:45px}.activity-count{position:static;text-align:right;margin-top:7px}.summary-list{grid-template-columns:1fr}.wizard-actions{border-radius:22px;display:grid;grid-template-columns:1fr 1fr}.date-ticket header,.date-ticket footer{font-size:.72rem}.gender-card span{height:52px}}
@media(max-width:390px){.activity-grid{grid-template-columns:repeat(2,1fr)}.wizard-step span:last-child{font-size:.65rem}.hero h1{font-size:2.65rem}}

/* v2.2 — date period, voice recorder, larger recipient switch */
body.lang-cs .hero h1{font-size:clamp(2.55rem,5.25vw,5.05rem);text-wrap:balance}
.language-rail{left:auto;right:max(16px,calc((100vw - 1280px)/2));top:90px;display:flex;gap:7px}
.language-pill{width:42px;height:42px;border-radius:999px}
.recipient-gender-switch{max-width:820px;width:100%;padding:7px;border-radius:28px;gap:7px;margin-bottom:14px}
.gender-card-content{height:74px!important;border-radius:22px!important;font-size:1.32rem!important;gap:11px!important}
.gender-heart{font-size:1.45rem;line-height:1}
.date-period-card h3{font-size:1.35rem;margin-bottom:20px}
.date-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.date-mode-option{position:relative}
.date-mode-option input{position:absolute;opacity:0;pointer-events:none}
.date-mode-option span{min-height:58px;border:2px solid #f6c6d8;border-radius:20px;display:flex;align-items:center;justify-content:center;padding:12px 18px;text-align:center;font-size:1.05rem;font-weight:900;color:#667084;cursor:pointer;transition:.18s;background:#fff}
.date-mode-option.is-selected span{border-color:var(--brand);color:var(--brand);background:#fff8fb;box-shadow:0 8px 22px rgba(239,63,121,.10)}
.any-date-note{display:flex;align-items:flex-start;gap:10px;margin-top:18px;padding:14px 16px;border-radius:17px;background:#fff6f9;color:var(--muted)}
.any-date-note p{margin:0;line-height:1.45}
.period-controls{margin-top:20px}
.period-controls[hidden],.any-date-note[hidden]{display:none!important}
.quick-period-label{font-weight:950;font-size:.78rem;color:#f08bb0;letter-spacing:.03em;margin-bottom:10px}
.quick-period-buttons{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px}
.quick-period-chip{border:1.5px solid #f4bed2;background:#fff;color:var(--brand);border-radius:999px;padding:10px 16px;font-weight:850;cursor:pointer;transition:.18s}
.quick-period-chip:hover,.quick-period-chip.is-active{background:var(--brand);border-color:var(--brand);color:#fff;transform:translateY(-1px)}
.period-date-fields{margin-top:4px}
.voice-recorder-card{display:grid;gap:17px}
.voice-card-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.voice-card-heading h3{font-size:1.3rem;margin:0 0 6px}
.voice-card-heading p{margin:0;color:var(--muted);line-height:1.5}
.voice-limit{background:#f2bf48;color:#604807;border-radius:999px;padding:5px 12px;font-size:.78rem;font-weight:950;white-space:nowrap}
.voice-controls{display:flex;flex-wrap:wrap;gap:10px}
.voice-button{border:1px solid #f0cad7;background:#fff;color:#596174;border-radius:999px;padding:12px 17px;font-weight:850;cursor:pointer;transition:.18s}
.voice-button.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 8px 19px rgba(239,63,121,.2)}
.voice-button.danger{color:#b52d4d}
.voice-button:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}
.voice-status{min-height:21px;color:var(--brand);font-weight:850}
.voice-status.is-error{color:#b4233d}
.voice-recorder-card audio{width:100%;max-width:520px}
.voice-recorder-card audio[hidden]{display:none}
.map-runtime-error{margin-top:10px;padding:12px 14px;border-radius:14px;background:#fff0f3;border:1px solid #f4bdca;color:#a72945;font-weight:750}
.public-voice-message{margin:18px auto;display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--primary) 10%,var(--background));border-radius:18px;padding:12px 14px;max-width:390px}
.public-voice-message audio{width:100%;min-width:0}
.recipient-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:left}
.recipient-date-fields label{display:grid;gap:6px;font-weight:850}
.recipient-date-fields input{width:100%;border:1px solid color-mix(in srgb,var(--text) 18%,transparent);border-radius:15px;padding:13px;font:inherit;background:color-mix(in srgb,var(--background) 84%,white);color:var(--text)}
.public-form-error{margin-top:8px;color:#b4233d;font-weight:850}
@media(max-width:900px){.language-rail{left:auto;right:18px;top:82px}.hero{padding-top:105px}}
@media(max-width:700px){.gender-card-content{height:66px!important;font-size:1.16rem!important}.date-mode-switch,.recipient-date-fields{grid-template-columns:1fr}.voice-card-heading{display:block}.voice-limit{display:inline-flex;margin-top:10px}.voice-controls{display:grid;grid-template-columns:1fr 1fr}.quick-period-buttons{gap:7px}.quick-period-chip{padding:9px 12px;font-size:.88rem}}

/* Ode mne v2.3 — финальный декор и кино-билет */
.final-effect-card{max-width:760px;margin-inline:auto}
.final-effect-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.final-effect-option{position:relative;min-height:118px;border:2px solid #f0dbe3;border-radius:22px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;cursor:pointer;transition:.2s ease}
.final-effect-option:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--brand) 45%,#f0dbe3)}
.final-effect-option input{position:absolute;opacity:0;pointer-events:none}
.final-effect-option.is-selected{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 7%,white);box-shadow:0 10px 28px rgba(91,42,64,.12)}
.final-effect-icon{font-size:2rem;line-height:1}
.final-effect-option strong{font-size:.94rem}
.cinema-stub-preview{border:0!important;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,white),#fff);box-shadow:inset 0 0 0 2px var(--brand);padding:18px!important;position:relative}
.cinema-stub-preview:before,.cinema-stub-preview:after{content:"";position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:#fff;transform:translateY(-50%)}
.cinema-stub-preview:before{left:-11px}.cinema-stub-preview:after{right:-11px}
.preview-ticket-topline{display:flex!important;justify-content:space-between;padding:0 0 12px!important;background:transparent!important;color:var(--brand)!important;font-size:.74rem;letter-spacing:.12em}
.cinema-stub-preview>strong{background:transparent!important;color:var(--text)!important;font-family:Georgia,"Times New Roman",serif;font-size:1.35rem!important;padding:12px 0!important}
.preview-ticket-names{padding:20px 8px!important;font-size:1.55rem!important}.preview-ticket-names span{color:var(--brand)}
.preview-ticket-code{display:grid!important;grid-template-columns:1fr 48px;gap:14px;align-items:center;padding:12px 0 0!important;border-top:1px dashed color-mix(in srgb,var(--brand) 35%,transparent)}
.preview-ticket-code>span:first-child{height:38px;background:repeating-linear-gradient(90deg,#1d1720 0 3px,transparent 3px 6px,#1d1720 6px 8px,transparent 8px 11px)}
.preview-qr{height:48px!important;background:repeating-conic-gradient(#1d1720 0 25%,#fff 0 50%) 0/9px 9px!important;border:4px solid #fff;box-shadow:0 0 0 1px #d9cbd1}

.ticket-page{position:relative;overflow-x:hidden;background:radial-gradient(circle at 20% 0%,color-mix(in srgb,var(--primary) 15%,transparent),transparent 36%),var(--background)}
.cinema-ticket-wrap{width:min(980px,100%);position:relative;z-index:2}
.cinema-ticket{--stub-width:180px;width:100%;display:grid;grid-template-columns:minmax(0,1fr) var(--stub-width);position:relative;background:#fff;border-radius:28px;box-shadow:0 28px 95px rgba(51,24,68,.22);overflow:hidden;border:1px solid color-mix(in srgb,var(--primary) 32%,#ded6e2)}
.cinema-ticket:before,.cinema-ticket:after{content:"";position:absolute;z-index:3;left:calc(100% - var(--stub-width));width:34px;height:34px;border-radius:50%;background:var(--background);transform:translateX(-50%)}
.cinema-ticket:before{top:-17px}.cinema-ticket:after{bottom:-17px}
.cinema-ticket-main{padding:30px 36px 24px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 5%,white),#fff 48%,color-mix(in srgb,var(--secondary) 12%,white));min-width:0}
.cinema-ticket-brand{display:flex;justify-content:space-between;gap:20px;color:var(--primary);font:800 .72rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em;text-transform:uppercase}
.cinema-ticket-heading{text-align:center;padding:28px 12px 26px;border-bottom:1px dashed color-mix(in srgb,var(--primary) 38%,transparent)}
.cinema-ticket-kicker{display:inline-block;color:var(--primary);font:900 .72rem/1.2 system-ui,sans-serif;letter-spacing:.18em;margin-bottom:10px}
.cinema-ticket-heading h1{margin:0;font-family:"Bodoni 72",Didot,"Times New Roman",serif;font-size:clamp(2.2rem,6vw,4.2rem);line-height:.95;font-weight:700;letter-spacing:-.045em;color:var(--text)}
.cinema-ticket-heading p{margin:18px 0 0;font:700 1.18rem/1.2 system-ui,sans-serif}.cinema-ticket-heading p span{color:var(--primary)}

.ticket-approval-status{
  width:fit-content;max-width:100%;margin:18px auto 0;padding:9px 14px 9px 10px;
  display:flex;align-items:center;justify-content:center;gap:9px;text-align:left;
  border:1px solid color-mix(in srgb,#24a56a 38%,transparent);border-radius:999px;
  background:color-mix(in srgb,#24a56a 9%,white);color:#176b49;
  box-shadow:0 8px 24px rgba(22,107,73,.08);
}
.ticket-approval-icon{
  width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;border-radius:50%;
  background:#24a56a;color:#fff;font:900 .82rem/1 system-ui,sans-serif;
}
.ticket-approval-copy{display:grid;gap:2px;min-width:0}
.ticket-approval-copy strong{font:800 .76rem/1.2 system-ui,sans-serif;letter-spacing:.01em}
.ticket-approval-copy small{font:650 .62rem/1.2 system-ui,sans-serif;opacity:.72}
.cinema-ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;padding-top:12px}
.cinema-ticket-field{display:grid;align-content:start;gap:6px;padding:18px 0;border-bottom:1px dashed #d9cedd;min-width:0}
.cinema-ticket-field:nth-last-child(-n+2){border-bottom:0}
.cinema-ticket-field-wide{grid-column:1/-1}
.cinema-ticket-field small{color:color-mix(in srgb,var(--text) 54%,transparent);font:900 .68rem/1 system-ui,sans-serif;letter-spacing:.17em}
.cinema-ticket-field strong{font-size:1.17rem;overflow-wrap:anywhere}.cinema-ticket-field span{font-size:.88rem;opacity:.68}
.ticket-machine-font{font-family:"Roboto Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace!important;font-weight:800!important;letter-spacing:.025em}
.cinema-ticket-barcode{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding-top:18px;border-top:1px dashed color-mix(in srgb,var(--primary) 38%,transparent)}
.cinema-ticket-barcode img{display:block;width:100%;height:58px;object-fit:fill}.cinema-ticket-barcode span{font:700 .62rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;max-width:120px;overflow-wrap:anywhere;text-align:right;color:#766a79}
.cinema-ticket-stub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:25px 20px;background:var(--primary);color:var(--accent);border-left:2px dashed color-mix(in srgb,var(--accent) 50%,transparent)}
.stub-label{font:900 .7rem/1 system-ui,sans-serif;letter-spacing:.2em}.cinema-ticket-stub>strong{font-family:"Bodoni 72",Didot,Georgia,serif;font-size:1.35rem;line-height:1.05}
.ticket-qr-link{width:108px;height:108px;background:#fff;padding:8px;border-radius:10px;box-shadow:0 8px 24px rgba(29,13,39,.22)}.ticket-qr-link img{width:100%;height:100%;display:block}
.cinema-ticket-stub small{font-size:.64rem;font-weight:900;letter-spacing:.12em;line-height:1.35}.stub-serial{font:700 .58rem/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;opacity:.78;overflow-wrap:anywhere}
.ticket-route-button{justify-self:center;min-width:220px;text-align:center}
.final-effect-layer{position:fixed;inset:0;z-index:10;pointer-events:none;overflow:hidden}
.falling-decoration{position:absolute;top:-12vh;font-size:var(--fall-size);animation:odemne-fall var(--fall-duration) cubic-bezier(.2,.55,.35,1) var(--fall-delay) forwards;filter:drop-shadow(0 5px 5px rgba(52,21,61,.14));will-change:transform,opacity}
@keyframes odemne-fall{0%{transform:translate3d(0,-10vh,0) rotate(0);opacity:0}8%{opacity:1}100%{transform:translate3d(var(--fall-drift),115vh,0) rotate(var(--fall-rotate));opacity:.78}}
@media(max-width:760px){
  .final-effect-grid{grid-template-columns:1fr 1fr}
  .cinema-ticket{--stub-width:auto;grid-template-columns:1fr;overflow:visible;border-radius:24px}
  .cinema-ticket:before,.cinema-ticket:after{left:auto;top:auto;bottom:160px;transform:none;width:30px;height:30px}
  .cinema-ticket:before{left:-15px}.cinema-ticket:after{right:-15px}
  .cinema-ticket-main{padding:24px 20px 18px;border-radius:24px 24px 0 0}
  .cinema-ticket-stub{min-height:160px;border-left:0;border-top:2px dashed color-mix(in srgb,var(--accent) 50%,transparent);border-radius:0 0 24px 24px;display:grid;grid-template-columns:1fr 104px;grid-template-rows:auto auto auto;gap:7px 16px;text-align:left;justify-items:start}
  .ticket-qr-link{grid-column:2;grid-row:1/4;width:96px;height:96px;align-self:center}
  .cinema-ticket-stub small,.stub-serial{grid-column:1}
  .cinema-ticket-heading{padding-inline:0}.cinema-ticket-heading h1{font-size:2.5rem}
  .cinema-ticket-grid{gap:0 14px}.cinema-ticket-field strong{font-size:1rem}
  .cinema-ticket-barcode{grid-template-columns:1fr}.cinema-ticket-barcode span{text-align:left;max-width:none}
}
@media(prefers-reduced-motion:reduce){.falling-decoration{display:none}.final-effect-option{transition:none}}

/* Ode mne v2.4 — checkout, Comgate and account */
.site-header nav{display:flex;align-items:center;gap:16px}.header-logout{display:inline}.header-logout button{border:0;background:none;color:inherit;font:inherit;font-weight:750;cursor:pointer;padding:0}
.preview-checkout-button{position:fixed;right:18px;top:18px;z-index:50;background:#2f9f70;color:#fff;text-decoration:none;padding:12px 18px;border-radius:999px;font-weight:900;box-shadow:0 12px 30px rgba(28,95,68,.25)}
.preview-final-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.presentation-button.secondary{background:transparent!important;color:var(--button)!important;border:2px solid var(--button)}
.checkout-shell{width:min(1120px,calc(100% - 32px));margin:42px auto 80px;display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:30px;align-items:start}.checkout-main,.checkout-summary{background:#fff;border:1px solid #eadde5;border-radius:28px;box-shadow:0 22px 70px rgba(68,31,53,.09)}.checkout-main{padding:36px}.checkout-summary{padding:24px;position:sticky;top:90px}.checkout-back{display:inline-block;margin-bottom:24px;color:#716372;text-decoration:none;font-weight:800}.checkout-main h1{font-size:clamp(2rem,5vw,3.3rem);margin:.25em 0}.checkout-lead{max-width:660px;color:#716978;font-size:1.05rem;line-height:1.55}.checkout-form{margin-top:28px}.checkout-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.checkout-field{display:grid;gap:8px;font-weight:800}.checkout-field input{width:100%;border:1px solid #d9cdd6;border-radius:14px;padding:14px 15px;font:inherit;background:#fff}.checkout-field input:focus{outline:3px solid rgba(142,92,247,.16);border-color:#8e5cf7}.checkout-consents{display:grid;gap:14px;margin:26px 0}.checkout-consents label{display:flex;gap:11px;align-items:flex-start;line-height:1.4;font-size:.93rem}.checkout-consents input{margin-top:3px;width:18px;height:18px;flex:0 0 auto}.checkout-consents a{color:#8e5cf7}.optional-consent{opacity:.82}.checkout-pay-button{width:100%;border:0;border-radius:16px;padding:17px 20px;background:#8e5cf7;color:#fff;font:900 1.02rem/1 system-ui;cursor:pointer;box-shadow:0 14px 30px rgba(142,92,247,.24)}.checkout-pay-button:hover{transform:translateY(-1px)}.checkout-secure{text-align:center;color:#756b79;font-size:.88rem}.checkout-error,.field-error{color:#b52d4d}.checkout-error{background:#fff0f3;border:1px solid #efbdc9;padding:13px 15px;border-radius:14px;margin-bottom:16px}.field-error{font-size:.82rem;font-weight:750}.checkout-preview-ticket{background:linear-gradient(135deg,color-mix(in srgb,var(--checkout-primary) 12%,white),#fff);border:2px solid var(--checkout-primary);border-radius:20px;padding:22px;position:relative;overflow:hidden}.checkout-preview-ticket:before,.checkout-preview-ticket:after{content:"";position:absolute;top:50%;width:20px;height:20px;background:#fff;border-radius:50%;transform:translateY(-50%)}.checkout-preview-ticket:before{left:-11px}.checkout-preview-ticket:after{right:-11px}.checkout-preview-ticket small{color:var(--checkout-primary);font-weight:900;letter-spacing:.12em}.checkout-preview-ticket h2{font-family:Didot,Georgia,serif;font-size:2rem;margin:20px 0 8px}.checkout-preview-ticket p{margin:0;color:#635966}.checkout-summary dl{margin:20px 0}.checkout-summary dl div{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #eee5eb}.checkout-summary dt{color:#776c78}.checkout-summary dd{margin:0;font-weight:900}.payment-method-note{background:#f7f3fb;padding:16px;border-radius:16px}.payment-method-note p{font-size:.88rem;line-height:1.45;margin:10px 0 0}.payment-icons{display:flex;gap:8px}.payment-icons span{display:inline-grid;place-items:center;min-width:45px;height:30px;background:#fff;border:1px solid #ddd1df;border-radius:8px;font-size:.76rem;font-weight:900}.gpay-mark{font-family:Arial,sans-serif}.mock-warning{margin-top:13px;background:#fff3bf;color:#6c5511;border-radius:10px;padding:10px;font-weight:800;font-size:.82rem}
.payment-result-shell{width:min(660px,calc(100% - 32px));margin:80px auto;text-align:center;background:#fff;border:1px solid #eadde5;border-radius:30px;padding:48px 32px;box-shadow:0 25px 80px rgba(67,30,53,.1)}.payment-result-shell h1{font-size:clamp(2rem,6vw,3.3rem);margin:18px 0 10px}.payment-result-shell p{color:#706675;font-size:1.05rem}.result-icon{width:74px;height:74px;margin:auto;border-radius:50%;display:grid;place-items:center;font-size:2.5rem;font-weight:900}.result-icon.success{background:#e8f8ef;color:#27855c}.result-icon.cancelled{background:#fff0f3;color:#bd3657}.result-loader{width:64px;height:64px;margin:auto;border-radius:50%;border:6px solid #eee5f7;border-top-color:#8e5cf7;animation:result-spin .9s linear infinite}.result-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}.secondary-button{display:inline-block;border:2px solid #8e5cf7;color:#8e5cf7;text-decoration:none;padding:13px 20px;border-radius:14px;font-weight:900}@keyframes result-spin{to{transform:rotate(360deg)}}
.account-form-shell{width:min(520px,calc(100% - 32px));margin:70px auto;background:#fff;border:1px solid #eadde5;border-radius:28px;padding:34px;box-shadow:0 20px 70px rgba(65,31,51,.09)}.account-form-shell h1{font-size:2.2rem}.account-form{display:grid;gap:18px;margin:24px 0}.account-form label,.account-form p{display:grid;gap:8px;font-weight:800}.account-form input[type=email],.account-form input[type=password],.account-form input[type=text]{border:1px solid #d9cdd6;border-radius:14px;padding:14px;font:inherit}.account-check{grid-template-columns:auto 1fr!important;align-items:center}.account-check span{grid-column:2}.legal-shell{width:min(820px,calc(100% - 32px));margin:60px auto;background:#fff;padding:36px;border-radius:26px;border:1px solid #eadde5;line-height:1.7}.legal-warning{background:#fff4c7;padding:14px;border-radius:12px;font-weight:800}
@media(max-width:820px){.checkout-shell{grid-template-columns:1fr}.checkout-summary{position:static;order:-1}.checkout-fields{grid-template-columns:1fr}.preview-checkout-button{top:auto;bottom:18px;left:18px;right:18px;text-align:center}.presentation-body.preview-mode{padding-bottom:82px}}

/* v2.4.2 — activity response settings and dashboard deletion */
.activity-response-settings{margin-top:22px;padding:18px;border:1px solid #f0d9e1;border-radius:18px;background:#fff8fb;display:grid;gap:14px}.activity-multiple-toggle{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.activity-multiple-toggle input{width:21px;height:21px;margin-top:2px;accent-color:var(--brand)}.activity-multiple-toggle span{display:grid;gap:4px}.activity-multiple-toggle small{color:var(--muted);line-height:1.4}.activity-max-field{display:flex;align-items:center;justify-content:space-between;gap:16px}.activity-max-field select{width:92px;padding:10px 12px;border:1px solid #efcfda;border-radius:12px;background:#fff}.activity-max-field[hidden]{display:none}.choice-help{margin:-4px 0 12px;opacity:.72}.choice-card{cursor:pointer;transition:border-color .15s ease,transform .15s ease,opacity .15s ease}.choice-card:has(input:checked),.choice-card.is-selected{border-color:var(--button);box-shadow:0 5px 16px color-mix(in srgb,var(--button) 16%,transparent)}.choice-card:has(input:disabled){opacity:.55;cursor:not-allowed}.confirm-date-button{background:var(--button)!important;color:var(--accent)!important;box-shadow:0 9px 22px rgba(20,20,20,.14)!important}.confirm-date-button:hover{box-shadow:0 12px 26px rgba(20,20,20,.18)!important}.delete-creation-form{margin:0}.delete-creation-button{border:0;background:transparent;color:#b3274b;text-decoration:underline;text-underline-offset:3px;padding:0;font:inherit;font-weight:800;cursor:pointer}.delete-creation-button:hover{color:#7f1733}.card-actions{align-items:center;flex-wrap:wrap}.ticket-activity-list{line-height:1.45}


/* v2.4.3: public answer controls, clean confirmation action and ticket stub */
.answer-area{
    width:min(420px,100%);
    height:180px;
    margin:0 auto;
    position:relative;
    display:block;
}
.answer-area .yes-button{
    position:absolute;
    left:30%;
    top:50%;
    transform:translate(-50%,-50%);
    margin:0;
    z-index:3;
    min-width:128px;
}
.answer-area .no-button{
    position:absolute;
    left:70%;
    top:50%;
    transform:translate(-50%,-50%);
    margin:0;
    z-index:2;
    min-width:104px;
    pointer-events:none;
    user-select:none;
    touch-action:none;
    transition:left .09s linear,top .09s linear;
    background:color-mix(in srgb,var(--background) 92%,white);
}
.confirm-date-action{
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:20px;
    padding:0;
    background:transparent!important;
    box-shadow:none!important;
    filter:none!important;
}
.confirm-date-button,
.confirm-date-button:hover,
.confirm-date-button:focus,
.confirm-date-button:active{
    margin:0!important;
    background:var(--button)!important;
    color:var(--accent)!important;
    box-shadow:none!important;
    filter:none!important;
}
.cinema-ticket-stub>.stub-validity{
    font-size:1.04rem;
    line-height:1.12;
    max-width:100%;
    padding-inline:8px;
    overflow-wrap:normal;
}
@media(max-width:520px){
    .answer-area{height:170px}
    .answer-area .yes-button{left:29%;min-width:116px;padding-inline:18px}
    .answer-area .no-button{left:72%;min-width:92px;padding-inline:15px}
}

/* v2.4.4 — acceptance recovery */
.confirmation-error{max-width:680px;margin:14px auto 0;background:color-mix(in srgb,#c83255 9%,white);border:1px solid color-mix(in srgb,#c83255 32%,white);color:#8f1f3c;border-radius:14px;padding:12px 14px;font-weight:750;line-height:1.4}

/* v2.4.5: infinitely evasive No button */
.answer-area .no-button{
    width:108px;
    min-width:108px;
    max-width:108px;
    height:48px;
    padding:0 12px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    transition:none !important;
    user-select:none;
    -webkit-user-select:none;
    touch-action:none;
    cursor:default;
}

/* v2.4.7: smooth, directional escape without jitter */
.answer-area{
    width:min(520px,calc(100vw - 28px));
    height:clamp(220px,32vh,300px);
}
.answer-area .no-button{
    transition:left .32s cubic-bezier(.2,.8,.25,1),top .32s cubic-bezier(.2,.8,.25,1);
    will-change:left,top;
}
@media(max-width:520px){
    .answer-area{height:240px}
}


/* v2.4.8: proximity-triggered random escape with fast start and soft stop */
.answer-area .no-button{
    transform:none !important;
    transition:left .52s cubic-bezier(.12,.82,.18,1),top .52s cubic-bezier(.12,.82,.18,1);
}


/* v2.4.9: keep the evasive button inside the invitation and show reactions below the question */
.answer-slide .slide-inner{
    max-width:420px;
    overflow:visible;
}
.no-reaction-message{
    min-height:1.55em;
    margin:10px auto 2px;
    max-width:390px;
    color:var(--primary);
    font-weight:800;
    line-height:1.35;
    opacity:0;
    transform:translateY(5px);
    transition:opacity .18s ease,transform .24s ease;
}
.no-reaction-message.is-visible{
    opacity:1;
    transform:translateY(0);
}
.answer-area{
    width:100%;
    max-width:420px;
    height:clamp(220px,31vh,280px);
    margin-inline:auto;
    overflow:hidden;
    box-sizing:border-box;
}
@media(max-width:520px){
    .answer-slide{padding-inline:16px}
    .answer-area{width:100%;max-width:100%;height:230px}
    .no-reaction-message{font-size:.95rem;padding-inline:8px}
}

/* v2.4.11 — owner return from preview */
.dashboard-return-button{border-color:color-mix(in srgb,var(--button) 55%,transparent)!important;background:color-mix(in srgb,var(--button) 8%,transparent)!important}
@media(max-width:620px){.preview-final-actions{display:grid!important;width:100%}.preview-final-actions .presentation-button{width:100%;text-align:center}}

@media (max-width:560px){.ticket-approval-status{border-radius:18px;padding:9px 12px 9px 9px}.ticket-approval-copy strong{font-size:.7rem}.ticket-approval-copy small{font-size:.58rem}}


/* v2.4.13 — ticket approval stamp */
.cinema-ticket-main{position:relative;}
.ticket-approval-status{display:none!important;}
.ticket-approval-stamp{
    position:absolute;
    left:62%;
    bottom:24px;
    width:148px;
    height:148px;
    border-radius:50%;
    border:3px solid rgba(197,152,45,.78);
    box-shadow:inset 0 0 0 8px rgba(248,221,120,.18), inset 0 0 0 16px rgba(197,152,45,.12);
    background:radial-gradient(circle at center, rgba(255,245,196,.18) 0%, rgba(255,245,196,.08) 54%, rgba(255,245,196,0) 55%);
    color:rgba(151,112,24,.95);
    transform:rotate(-14deg);
    display:grid;
    place-items:center;
    pointer-events:none;
    z-index:2;
}
.ticket-approval-stamp::before,.ticket-approval-stamp::after{
    content:"";
    position:absolute;
    inset:10px;
    border-radius:50%;
    border:1.5px dashed rgba(197,152,45,.55);
}
.ticket-approval-stamp::after{inset:22px;border-style:solid;opacity:.42;}
.ticket-approval-stamp-inner{
    width:100px;
    display:grid;
    gap:4px;
    text-align:center;
    line-height:1.08;
}
.ticket-approval-stamp-kicker{
    font:800 .52rem/1.1 Inter,system-ui,sans-serif;
    letter-spacing:.22em;
    text-transform:uppercase;
    opacity:.75;
}
.ticket-approval-stamp strong{
    font:900 .9rem/1.02 Inter,system-ui,sans-serif;
    text-transform:uppercase;
    letter-spacing:.03em;
}
.ticket-approval-stamp small{
    font:700 .54rem/1.18 Inter,system-ui,sans-serif;
    opacity:.82;
}
@media (max-width:980px){
  .ticket-approval-stamp{left:auto;right:28px;bottom:26px;width:132px;height:132px;}
  .ticket-approval-stamp-inner{width:92px;}
  .ticket-approval-stamp strong{font-size:.82rem;}
}
@media (max-width:700px){
  .ticket-approval-stamp{position:relative;left:auto;right:auto;bottom:auto;margin:18px auto 0;width:126px;height:126px;transform:rotate(-10deg);}
}


/* v2.5.0 — optional continuation step and recipient probability slider */
.wizard-progress{grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr auto;max-width:920px;}
.continuation-editor-card{display:grid;gap:24px;background:linear-gradient(145deg,#fff,#fbf7ff);}
.continuation-toggle-card{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:16px;padding:20px;border:1px solid #eadcf1;border-radius:22px;background:#fff;cursor:pointer;transition:.22s ease;}
.continuation-toggle-card>input{position:absolute;opacity:0;pointer-events:none;}
.continuation-toggle-visual{width:60px;height:34px;border-radius:999px;background:#ded6e7;padding:4px;display:flex;align-items:center;transition:.22s ease;}
.continuation-toggle-visual i{display:block;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 3px 10px rgba(40,25,60,.18);transition:.22s ease;}
.continuation-toggle-copy{display:grid;gap:4px;text-align:left;}
.continuation-toggle-copy strong{font-size:1.08rem;}
.continuation-toggle-copy small{color:var(--muted);line-height:1.45;}
.continuation-editor-card.is-enabled .continuation-toggle-card{border-color:var(--brand);box-shadow:0 12px 30px color-mix(in srgb,var(--brand) 13%,transparent);}
.continuation-editor-card.is-enabled .continuation-toggle-visual{background:var(--brand);}
.continuation-editor-card.is-enabled .continuation-toggle-visual i{transform:translateX(26px);}
.continuation-editor-preview{position:relative;overflow:hidden;padding:30px 26px;border-radius:26px;text-align:center;background:radial-gradient(circle at 80% 10%,rgba(255,255,255,.7),transparent 30%),linear-gradient(145deg,#26173f,#7044b5 55%,#bb79da);color:#fff;box-shadow:0 24px 55px rgba(68,35,105,.22);transition:.28s ease;}
.continuation-editor-card:not(.is-enabled) .continuation-editor-preview{opacity:.36;filter:grayscale(.65);transform:scale(.985);}
.continuation-editor-preview::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.5px);background-size:38px 38px;opacity:.22;}
.continuation-editor-preview>*{position:relative;z-index:1;}
.continuation-moon{font-size:2.3rem;}
.continuation-editor-preview h3{font-family:Georgia,serif;font-size:clamp(1.35rem,3vw,2rem);max-width:650px;margin:12px auto 8px;}
.continuation-editor-preview p{max-width:560px;margin:0 auto 18px;opacity:.82;}
.continuation-demo-value{font:900 2.4rem/1 system-ui;margin-bottom:12px;}
.continuation-demo-track{width:min(520px,90%);height:12px;margin:auto;border-radius:999px;background:rgba(255,255,255,.25);overflow:hidden;}
.continuation-demo-track span{display:block;width:65%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffd8ef,#fff3a8);}
.continuation-scale-labels{display:flex;justify-content:space-between;gap:20px;margin:10px auto 0;width:min(520px,90%);font-size:.72rem;font-weight:800;opacity:.78;}
.continuation-editor-preview>small{display:block;margin-top:18px;opacity:.72;}
.continuation-response-card{position:relative;overflow:hidden;margin:22px 0;padding:24px 20px;border-radius:24px;background:radial-gradient(circle at 85% 12%,color-mix(in srgb,var(--accent) 65%,transparent),transparent 27%),linear-gradient(145deg,color-mix(in srgb,var(--primary) 82%,#21152f),color-mix(in srgb,var(--secondary) 70%,#5d3486));color:var(--accent);box-shadow:0 18px 44px color-mix(in srgb,var(--primary) 25%,transparent);}
.continuation-response-card::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.6) 0 1px,transparent 1.5px);background-size:34px 34px;opacity:.2;pointer-events:none;}
.continuation-response-card>*{position:relative;z-index:1;}
.continuation-response-icon{font-size:2rem;}
.continuation-response-card h2{font-family:Georgia,serif;font-size:1.45rem;line-height:1.18;margin:8px 0;}
.continuation-response-card p{margin:0 auto 16px;max-width:360px;opacity:.84;}
.continuation-response-value{display:flex;align-items:baseline;justify-content:center;gap:3px;margin:10px 0 14px;font-weight:950;}
.continuation-response-value output{font-size:3rem;line-height:1;}
.continuation-response-value span{font-size:1.2rem;}
.continuation-range{--continuation-progress:50%;appearance:none;width:100%;height:12px;border-radius:999px;outline:0;background:linear-gradient(90deg,#fff0a4 0 var(--continuation-progress),rgba(255,255,255,.28) var(--continuation-progress) 100%);cursor:pointer;}
.continuation-range::-webkit-slider-thumb{appearance:none;width:30px;height:30px;border-radius:50%;background:#fff;border:4px solid color-mix(in srgb,var(--primary) 75%,#6e3fa2);box-shadow:0 5px 18px rgba(30,15,55,.3);}
.continuation-range::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:4px solid color-mix(in srgb,var(--primary) 75%,#6e3fa2);box-shadow:0 5px 18px rgba(30,15,55,.3);}
.continuation-response-card .continuation-scale-labels{width:100%;font-size:.68rem;text-align:left;}
.continuation-response-card .continuation-scale-labels span:last-child{text-align:right;}
.continuation-response-card>small{display:block;margin-top:16px;opacity:.72;line-height:1.35;}
.dashboard-card dl{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));}
.dashboard-continuation{background:linear-gradient(145deg,#f3eaff,#fff0fa)!important;border:1px solid #dfc6f5;}
.dashboard-continuation dd{color:#7446b8;font-size:1.15rem;}
@media(max-width:700px){.wizard-progress{grid-template-columns:repeat(5,1fr);}.continuation-toggle-card{grid-template-columns:auto 1fr;}.continuation-toggle-card>input{display:none}.continuation-toggle-copy{grid-column:1/-1}.continuation-response-card{padding:22px 16px}.continuation-response-card h2{font-size:1.28rem}.continuation-scale-labels{font-size:.62rem}}


/* v2.5.1 — continuation is a separate presentation slide */
.accept-presentation-form{display:contents;}
.choice-slide .choice-form{
    overflow:visible;
    max-height:none;
    padding:0;
}
.choice-slide .choice-date-title{margin:20px 0 12px;}
.choice-slide .choice-list{gap:8px;}
.choice-slide .choice-card{padding:11px 14px;min-height:48px;align-items:center;}
.choice-slide .choice-card input{margin-top:0;flex:0 0 auto;}
.choice-slide .choice-help{margin:-4px 0 10px;}
.choice-slide .recipient-date-fields{margin-top:0;}
.choice-slide .meeting-summary{margin:12px 0;padding:12px 14px;}
.choice-next-button{margin-top:12px;}
.continuation-slide{overflow:hidden;}
.continuation-slide-inner{max-width:430px;display:grid;gap:18px;align-content:center;}
.continuation-slide .continuation-response-card{
    margin:0;
    padding:clamp(24px,5vh,40px) clamp(20px,5vw,34px);
    max-height:none;
}
.continuation-slide .continuation-response-card h2{
    font-size:clamp(1.45rem,5.6vw,2rem);
    margin:10px 0;
}
.continuation-slide .continuation-response-card p{margin-bottom:18px;}
.continuation-slide .continuation-response-value output{font-size:clamp(3.1rem,13vw,4.7rem);}
.continuation-slide-actions{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;}
.continuation-slide-actions .presentation-button{margin-top:0;}
@media(max-width:560px){
    .choice-slide{padding-inline:18px;}
    .choice-slide .slide-inner{max-width:390px;}
    .choice-slide h2{font-size:1.38rem;margin:0 0 8px;}
    .choice-slide .choice-date-title{margin:16px 0 9px;}
    .activity-choice-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;}
    .activity-choice-list .choice-card{padding:10px 11px;min-height:45px;border-radius:14px;}
    .activity-choice-list .choice-card span{min-width:0;}
    .activity-choice-list .choice-card strong{font-size:.91rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .activity-choice-list .choice-card small{display:none;}
    .choice-slide .recipient-date-fields{gap:8px;}
    .choice-slide .recipient-date-fields label{gap:5px;}
    .choice-slide .recipient-date-fields input{padding:10px 11px;min-height:46px;}
    .choice-slide .meeting-summary:empty{display:none;}
    .choice-next-button{margin-top:10px;padding:13px 22px;}
    .continuation-slide{padding:22px 18px;}
    .continuation-slide-inner{gap:14px;}
    .continuation-slide .continuation-response-card{padding:28px 18px;border-radius:26px;}
    .continuation-slide .continuation-response-icon{font-size:2.15rem;}
    .continuation-slide .continuation-response-card h2{font-size:1.55rem;line-height:1.13;}
    .continuation-slide .continuation-response-card p{font-size:.92rem;margin-bottom:15px;}
    .continuation-slide .continuation-response-value{margin:8px 0 15px;}
    .continuation-slide .continuation-response-value output{font-size:3.7rem;}
    .continuation-slide .continuation-response-card>small{margin-top:14px;font-size:.75rem;}
    .continuation-slide-actions{gap:8px;}
    .continuation-slide-actions .presentation-button{padding:12px 18px;font-size:.9rem;}
}
@media(max-height:720px) and (max-width:560px){
    .choice-slide{padding-top:22px;padding-bottom:18px;}
    .choice-slide h2{font-size:1.2rem;}
    .choice-slide .choice-card{min-height:40px;padding-block:8px;}
    .choice-slide .choice-date-title{margin-top:11px;}
    .choice-slide .meeting-summary{margin:8px 0;padding:9px 12px;}
    .continuation-slide .continuation-response-card{padding:20px 17px;}
    .continuation-slide .continuation-response-card h2{font-size:1.34rem;}
    .continuation-slide .continuation-response-value output{font-size:3rem;}
}


/* v2.5.2 logo integration */
.site-header{height:auto;min-height:82px;padding-top:10px;padding-bottom:10px;}
.brand-with-logo{display:inline-flex;align-items:center;text-decoration:none;}
.brand-logo{display:block;height:58px;width:auto;object-fit:contain;filter:drop-shadow(0 6px 16px rgba(127,79,57,.08));}
@media(max-width:700px){.site-header{min-height:72px;padding-top:8px;padding-bottom:8px;}.brand-logo{height:48px;max-width:clamp(150px,42vw,220px);}}


/* v2.5.3 — readable header logo */
.site-header{min-height:94px;padding-top:8px;padding-bottom:8px;}
.brand-with-logo{display:inline-flex;align-items:center;gap:12px;min-width:0;text-decoration:none;}
.brand-logo{display:none!important;}
.brand-logo-symbol{display:block;width:76px;height:76px;object-fit:contain;flex:0 0 auto;}
.brand-wordmark{font-family:Didot,"Bodoni MT",Georgia,serif;font-size:2rem;line-height:1;color:#b96f4e;font-weight:500;letter-spacing:.005em;white-space:nowrap;}
@media(max-width:700px){
  .site-header{min-height:78px;padding-top:6px;padding-bottom:6px;}
  .brand-with-logo{gap:8px;}
  .brand-logo-symbol{width:58px;height:58px;}
  .brand-wordmark{font-size:1.45rem;}
  .site-header nav{gap:10px;}
}
@media(max-width:430px){
  .brand-logo-symbol{width:50px;height:50px;}
  .brand-wordmark{font-size:1.25rem;}
}


/* v2.5.4 — large floating logo placement */
.site-header{
    height:58px!important;
    min-height:58px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    overflow:visible;
}
.site-header nav{
    margin-left:auto;
    min-height:58px;
    display:flex;
    align-items:center;
}
.brand-with-logo{
    position:absolute;
    left:max(76px,calc((100vw - 1180px)/2));
    top:3px;
    z-index:40;
    display:block;
    width:126px;
    height:auto;
    text-decoration:none;
}
.brand-logo-full{
    display:block;
    width:126px;
    height:auto;
    object-fit:contain;
}
.brand-logo-symbol,.brand-wordmark{display:none!important;}
@media(max-width:900px){
    .brand-with-logo{left:18px;width:108px;}
    .brand-logo-full{width:108px;}
    .hero{padding-top:104px;}
}
@media(max-width:560px){
    .brand-with-logo{left:12px;top:4px;width:88px;}
    .brand-logo-full{width:88px;}
    .site-header nav{gap:9px;font-size:.88rem;}
    .hero{padding-top:96px;}
    .editor-shell,.dashboard-shell{padding-top:92px;}
}


/* v2.5.5 — larger overlapping logo, layout only (source image unchanged) */
.brand-with-logo{
    overflow:hidden!important;
    aspect-ratio:809 / 918;
    background:transparent!important;
    box-shadow:none!important;
}
.brand-logo-full{
    position:absolute!important;
    display:block!important;
    width:126.6%!important;
    max-width:none!important;
    height:auto!important;
    left:-14%!important;
    top:-35.2%!important;
    object-fit:initial!important;
    mix-blend-mode:multiply;
    filter:saturate(1.04) contrast(1.025);
    background:transparent!important;
}

/* Large logo on the landing page: it deliberately overlaps the eyebrow. */
.landing-page .site-header{
    position:relative;
    z-index:45;
}
.landing-page .brand-with-logo{
    left:max(18px,calc((100vw - 1180px)/2 - 18px))!important;
    top:-10px!important;
    width:clamp(158px,15vw,184px)!important;
    height:auto!important;
    z-index:48!important;
}
.landing-page .site-header nav{
    position:relative;
    z-index:52;
}
.landing-page .hero{
    position:relative;
}
.landing-page .hero-copy .eyebrow{
    position:relative;
    z-index:1;
}

/* Other pages keep the same logo but in a more compact cropped presentation. */
body:not(.landing-page) .brand-with-logo{
    width:118px!important;
    height:auto!important;
    top:-5px!important;
}

@media(max-width:900px){
    .landing-page .brand-with-logo{
        left:12px!important;
        top:-7px!important;
        width:154px!important;
    }
    .landing-page .hero{
        padding-top:112px!important;
    }
}
@media(max-width:560px){
    .landing-page .brand-with-logo{
        left:6px!important;
        top:-3px!important;
        width:126px!important;
    }
    .landing-page .hero{
        padding-top:104px!important;
    }
    body:not(.landing-page) .brand-with-logo{
        width:92px!important;
    }
}

/* v2.5.6 — use the supplied transparent PNG and show it completely */
.brand-with-logo,
.landing-page .brand-with-logo,
body:not(.landing-page) .brand-with-logo{
    overflow:visible!important;
    aspect-ratio:auto!important;
    height:auto!important;
    background:transparent!important;
    box-shadow:none!important;
}
.brand-logo-full,
.landing-page .brand-logo-full,
body:not(.landing-page) .brand-logo-full{
    position:static!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    object-position:center!important;
    mix-blend-mode:normal!important;
    filter:none!important;
    background:transparent!important;
}
.landing-page .brand-with-logo{
    left:max(18px,calc((100vw - 1180px)/2 - 20px))!important;
    top:0!important;
    width:clamp(170px,17vw,205px)!important;
    z-index:48!important;
}
.landing-page .hero-copy{
    padding-top:82px;
}
body:not(.landing-page) .brand-with-logo{
    top:2px!important;
    width:128px!important;
}
@media(max-width:900px){
    .landing-page .brand-with-logo{
        left:12px!important;
        top:2px!important;
        width:156px!important;
    }
    .landing-page .hero-copy{
        padding-top:34px;
    }
}
@media(max-width:560px){
    .landing-page .brand-with-logo{
        left:8px!important;
        top:3px!important;
        width:128px!important;
    }
    .landing-page .hero-copy{
        padding-top:12px;
    }
    body:not(.landing-page) .brand-with-logo{
        width:96px!important;
    }
}

/* v2.5.8 — centered, 30% smaller pink logo */
.site-header{
    position:relative;
    overflow:visible;
}
.brand-with-logo,
.landing-page .brand-with-logo,
body:not(.landing-page) .brand-with-logo{
    position:absolute!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    margin:0!important;
    overflow:visible!important;
    background:transparent!important;
    box-shadow:none!important;
    z-index:48!important;
}
.landing-page .brand-with-logo{
    top:0!important;
    width:clamp(119px,12vw,144px)!important;
}
body:not(.landing-page) .brand-with-logo{
    top:2px!important;
    width:90px!important;
}
.brand-logo-full,
.landing-page .brand-logo-full,
body:not(.landing-page) .brand-logo-full{
    display:block!important;
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    object-position:center!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    background:transparent!important;
}
@media(max-width:900px){
    .landing-page .brand-with-logo{
        top:2px!important;
        width:110px!important;
    }
    body:not(.landing-page) .brand-with-logo{
        width:82px!important;
    }
}
@media(max-width:560px){
    .landing-page .brand-with-logo{
        top:3px!important;
        width:90px!important;
    }
    body:not(.landing-page) .brand-with-logo{
        width:72px!important;
    }
}

/* v2.5.9 — interactive landing showcase */
.landing-showcase{
    width:min(620px,calc(100% - 32px));
    margin:18px auto 110px;
    text-align:center;
}
.landing-showcase-heading{margin-bottom:22px;}
.landing-showcase-heading h2{
    margin:0;
    font-size:clamp(1.8rem,4vw,2.65rem);
    line-height:1.12;
    letter-spacing:-.035em;
}
.landing-showcase-heading h2 strong{color:var(--brand);white-space:nowrap;}
.landing-showcase-heading p{
    margin:18px 0 0;
    font-size:1.05rem;
    font-weight:850;
    color:var(--ink);
}
.showcase-invitation-card{
    width:min(460px,100%);
    margin:0 auto;
    overflow:hidden;
    border:1px solid #f1ceda;
    border-radius:32px;
    background:#fff;
    box-shadow:0 25px 70px rgba(103,43,66,.13);
}
.showcase-media{
    aspect-ratio:1 / .92;
    overflow:hidden;
    background:#f6c4cd;
}
.showcase-media video{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.showcase-question-area{
    position:relative;
    min-height:190px;
    padding:20px 18px 18px;
    background:#fff;
    overflow:hidden;
}
.showcase-question{
    margin:0;
    font-size:1.02rem;
    font-weight:900;
}
.showcase-answer-zone{
    position:relative;
    height:112px;
    margin-top:14px;
}
.showcase-yes-button,
.showcase-no-button{
    min-width:142px;
    height:58px;
    border-radius:20px;
    font:900 1.02rem/1 inherit;
}
.showcase-yes-button{
    position:absolute;
    left:18px;
    top:18px;
    border:0;
    color:#fff;
    background:linear-gradient(135deg,var(--brand),#ff6b9d);
    box-shadow:0 12px 25px rgba(239,63,121,.24);
}
.showcase-no-button{
    position:absolute;
    left:calc(100% - 160px);
    top:18px;
    border:2px solid #ff80ad;
    color:var(--brand-dark);
    background:#fff;
    transition:left .46s cubic-bezier(.16,.82,.25,1),top .46s cubic-bezier(.16,.82,.25,1);
    will-change:left,top;
    user-select:none;
}
.showcase-ready{
    margin:30px 0 16px;
    color:var(--muted);
}
.showcase-start-actions{
    display:grid;
    gap:12px;
    width:min(460px,100%);
    margin:0 auto;
}
.showcase-start-actions form{margin:0;}
.showcase-start-button{
    width:100%;
    border:0;
    border-radius:24px;
    padding:17px 22px;
    background:linear-gradient(135deg,var(--brand),#ff6699);
    color:#fff;
    font:900 1.08rem/1.2 inherit;
    cursor:pointer;
    box-shadow:0 13px 28px rgba(239,63,121,.23);
    transition:transform .18s ease,box-shadow .18s ease;
}
.showcase-start-button:hover{
    transform:translateY(-2px);
    box-shadow:0 17px 34px rgba(239,63,121,.29);
}
@media(max-width:560px){
    .landing-showcase{margin-top:4px;margin-bottom:78px;}
    .landing-showcase-heading h2{font-size:1.75rem;}
    .showcase-invitation-card{border-radius:26px;}
    .showcase-question-area{min-height:178px;padding-inline:14px;}
    .showcase-answer-zone{height:105px;}
    .showcase-yes-button,.showcase-no-button{min-width:124px;height:54px;font-size:.96rem;}
    .showcase-yes-button{left:10px;}
}


/* v2.6.0 — continuation skip, secure sharing and narrower ticket */
.continuation-skip-option{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    width:fit-content;
    max-width:100%;
    margin:18px auto 0;
    padding:10px 14px;
    border:1px solid rgba(255,255,255,.42);
    border-radius:999px;
    background:rgba(255,255,255,.12);
    color:inherit;
    font-size:.82rem;
    font-weight:850;
    cursor:pointer;
}
.continuation-skip-option input{width:18px;height:18px;accent-color:var(--accent);}
.continuation-response-card.is-skipped .continuation-range,
.continuation-response-card.is-skipped .continuation-scale-labels{opacity:.3;}
.continuation-response-card.is-skipped .continuation-response-value{opacity:.72;}
.copy-invitation-link{
    border:0;
    background:transparent;
    color:var(--brand-dark);
    padding:0;
    font:inherit;
    font-weight:800;
    text-decoration:underline;
    text-underline-offset:3px;
    cursor:pointer;
}
.copy-invitation-link.is-copied{color:#1f815a;}
.copy-link-status{font-size:.78rem;font-weight:750;color:#1f815a;}
.cinema-ticket-wrap{width:min(720px,100%);}
.cinema-ticket{--stub-width:150px;}
.cinema-ticket-main{padding:25px 28px 20px;}
.cinema-ticket-heading{padding:22px 8px 21px;}
.cinema-ticket-heading h1{font-size:clamp(2rem,5vw,3.35rem);}
.cinema-ticket-grid{gap:0 20px;}
.cinema-ticket-field{padding:14px 0;}
.cinema-ticket-stub{padding:22px 14px;gap:13px;}
.ticket-qr-link{width:94px;height:94px;}
.ticket-approval-stamp{right:18px!important;left:auto!important;width:120px;height:120px;bottom:20px;}
.ticket-approval-stamp-inner{width:84px;}
.ticket-approval-stamp strong{font-size:.73rem;}
.ticket-approval-stamp small{font-size:.48rem;}
@media(max-width:760px){
    .cinema-ticket-wrap{width:min(620px,100%);}
    .cinema-ticket-main{padding:22px 18px 17px;}
    .ticket-approval-stamp{position:relative!important;right:auto!important;bottom:auto!important;width:118px;height:118px;}
}


/* v2.6.1 — large activity illustrations */
.activity-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
}
.activity-card{
    min-height:0!important;
    padding:10px!important;
    gap:10px!important;
    align-content:start!important;
    border-radius:22px!important;
}
.activity-card-image{
    display:block;
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:16px;
    background:#fde7ef;
}
.activity-card strong{
    min-height:2.3em;
    display:grid;
    place-items:center;
    font-size:1rem!important;
    line-height:1.15;
}
.custom-activity-card .activity-placeholder{
    width:100%;
    height:auto!important;
    aspect-ratio:1 / 1;
    border-radius:16px;
}
.activity-choice-list{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
}
.activity-choice-list .activity-choice-card{
    position:relative;
    display:grid!important;
    grid-template-columns:1fr!important;
    align-content:start!important;
    gap:7px!important;
    min-width:0;
    min-height:0!important;
    padding:7px!important;
    border-radius:15px!important;
    text-align:center;
}
.activity-choice-card input{
    position:absolute;
    z-index:3;
    top:10px;
    right:10px;
    width:18px;
    height:18px;
    margin:0!important;
    accent-color:var(--button);
    filter:drop-shadow(0 1px 2px rgba(0,0,0,.15));
}
.activity-choice-image,
.activity-choice-placeholder{
    display:grid;
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    place-items:center;
    border-radius:11px;
    background:color-mix(in srgb,var(--primary) 12%,white);
}
.activity-choice-placeholder{
    font-size:2rem;
    color:var(--primary);
}
.activity-choice-copy{
    min-width:0;
    display:grid!important;
    place-items:center;
    padding:0 2px 3px;
}
.activity-choice-copy strong{
    display:block;
    max-width:100%;
    font-size:.78rem!important;
    line-height:1.15;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
}
.activity-choice-copy small{display:none!important;}
@media(max-width:700px){
    .activity-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:12px!important;
    }
    .activity-card{padding:8px!important;}
    .activity-card strong{font-size:.92rem!important;}
}
@media(max-width:390px){
    .activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .activity-choice-list{gap:7px!important;}
    .activity-choice-list .activity-choice-card{padding:5px!important;}
    .activity-choice-copy strong{font-size:.7rem!important;}
}

/* Ode mne v2.6.2 — mobile editor and preview action fixes */
.wizard-actions [data-preview-button]{white-space:nowrap}
@media(max-width:700px){
  .wizard-actions{justify-content:center;flex-wrap:nowrap;border-radius:24px;padding:8px;gap:7px}
  .wizard-actions .primary-button,.wizard-actions .secondary-button{min-width:0;padding:12px 11px;font-size:.85rem;white-space:nowrap}
  .wizard-actions [data-preview-button]{flex:0 1 auto}
}
@media(max-width:820px){
  .preview-checkout-button{bottom:calc(18px + env(safe-area-inset-bottom))}
  .presentation-body.preview-mode .slide{padding-bottom:calc(105px + env(safe-area-inset-bottom))}
}


/* Ode mne v2.6.3 — final preview actions, paid-link copy and ticket map */
.preview-checkout-button{display:none!important}
.preview-final-actions{
    width:min(620px,100%);
    margin:24px auto 0;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    align-items:stretch;
}
.preview-final-actions .presentation-button{
    width:100%;
    min-width:0;
    min-height:52px;
    margin:0;
    padding:13px 16px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    white-space:normal;
    line-height:1.15;
}
.continuation-slide-actions.preview-final-actions{display:grid!important}
.copy-payment-link-button{
    appearance:none;
    background:#fff;
    font:inherit;
    cursor:pointer;
}
.copy-payment-link-button.is-copied{border-color:#27855c;color:#27855c;background:#eefaf3}
.copy-payment-status{display:block;min-height:1.2em;margin-top:14px;color:#27855c;font-size:.86rem;font-weight:800}

.cinema-ticket{--stub-width:166px}
.cinema-ticket-stub{padding-inline:15px;overflow:hidden}
.stub-validity{
    display:block;
    width:100%;
    max-width:100%;
    padding:0 2px;
    box-sizing:border-box;
    font-size:1.05rem!important;
    line-height:1.12!important;
    overflow-wrap:anywhere;
    word-break:normal;
    hyphens:auto;
}
.ticket-place-field{gap:9px}
.ticket-place-map{
    width:100%;
    height:145px;
    margin:2px 0 4px;
    overflow:hidden;
    border:1px solid color-mix(in srgb,var(--primary) 28%,#d9cedd);
    border-radius:16px;
    background:linear-gradient(135deg,#eee9ef,#f8f6f8);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.65);
}
.ticket-place-map.is-error::after{
    content:"Map";
    height:100%;
    display:grid;
    place-items:center;
    color:#766a79;
    font-weight:850;
}
.ticket-place-title{font-size:1rem!important}
.cinema-ticket-barcode{padding-right:132px}

@media(max-width:760px){
    .preview-final-actions{grid-template-columns:1fr;width:100%;gap:10px}
    .cinema-ticket{--stub-width:auto}
    .stub-validity{font-size:1rem!important;text-align:left}
    .ticket-place-map{height:135px}
    .cinema-ticket-barcode{padding-right:0}
}
