
    :root,[data-theme="dark"]{color-scheme:dark;--page:#111312;--page-glow:#20372d;--surface:#1f2220;--surface-raised:#2b2e2c;--ink:#f4f5f1;--muted:#b6bcb7;--line:#414743;--accent:#45ffbc;--accent-strong:#20d99b;--accent-soft:#293b34;--cta:#e3ffa8;--cta-ink:#142019;--event-a:#45ffbc;--event-b:#e3ffa8;--event-ink:#15211a;--event-meta:#26382d;--header:#191c1a;--shadow:#00000035}
    [data-theme="light"]{color-scheme:light;--page:#fff;--page-glow:#f4eeee;--surface:#fff;--surface-raised:#f1f1f1;--ink:#424a50;--muted:#5c6368;--line:#d8dadd;--accent:#e5554f;--accent-strong:#a40e0e;--accent-soft:#fff0ef;--cta:#a40e0e;--cta-ink:#fff;--event-a:#d73333;--event-b:#a40e0e;--event-ink:#fff;--event-meta:#fff1ef;--header:#fffffff0;--shadow:#3f44441c}
    [data-theme="light"] body{background:radial-gradient(ellipse 58% 42% at 7% 0%,#fbe8e6 0%,transparent 74%),radial-gradient(ellipse 46% 36% at 100% 23%,#f6eeee 0%,transparent 76%),radial-gradient(ellipse 55% 45% at 78% 100%,#f1f1f1 0%,transparent 76%),var(--page)}
    *{box-sizing:border-box}[hidden]{display:none!important}html{min-height:100%;scroll-behavior:smooth;scroll-padding-top:90px}
    body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 8% 8%,var(--page-glow),transparent 38%),var(--page);color:var(--ink);font:16px/1.55 "Be Vietnam Pro","Avenir Next",Avenir,system-ui,sans-serif;transition:background-color .2s,color .2s}
    .topbar{height:74px;position:sticky;top:0;z-index:10;background:var(--header);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.topbar-inner{width:min(1180px,calc(100% - 48px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center}.brand-logo{display:block;width:164px;height:auto;filter:brightness(0);transition:filter .2s}[data-theme="dark"] .brand-logo{filter:brightness(0) invert(1)}.topbar-tools{display:flex;align-items:center;gap:20px}.secure{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.secure svg{color:var(--accent)}
    .theme-toggle{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:5px 9px;border:0;border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:12px;font-weight:650;cursor:pointer;transition:background .2s}.theme-toggle:hover{background:var(--surface-raised)}.theme-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 50%,transparent);outline-offset:3px}.theme-switch{width:34px;height:20px;position:relative;display:inline-block;border-radius:999px;background:#535c56;transition:background .2s}.theme-switch span{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s}.theme-toggle[aria-pressed="true"] .theme-switch{background:var(--accent-strong)}.theme-toggle[aria-pressed="true"] .theme-switch span{transform:translateX(14px);background:#102019}
    main{width:min(1140px,calc(100% - 48px));margin:clamp(38px,6vh,68px) auto 72px;display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);column-gap:clamp(44px,7vw,96px);row-gap:27px;align-items:start}.invite-rail{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:27px;align-self:start;position:sticky;top:calc(74px + 30px)}
    .intro{text-align:left;margin:0;align-self:end}.eyebrow{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.intro h1{max-width:12ch;margin:19px 0 13px;font-size:clamp(42px,5vw,64px);line-height:1.02;letter-spacing:-.06em;font-weight:750;text-wrap:balance}.intro h1 span{color:var(--accent)}[data-theme="light"] .intro h1 span{color:var(--accent-strong)}.intro p{max-width:38ch;margin:0;color:var(--muted);font-size:17px;line-height:1.65}
    .event-card{position:relative;isolation:isolate;display:flex;align-items:center;gap:15px;min-height:122px;margin:0;padding:20px 18px;overflow:hidden;border:0;border-radius:18px;background:linear-gradient(125deg,var(--event-a),var(--event-b),var(--event-a));background-size:300% 300%;color:var(--event-ink);box-shadow:0 14px 34px var(--shadow);animation:event-gradient 6s ease-in-out infinite}@keyframes event-gradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.event-card:before{content:"";position:absolute;z-index:0;top:-60%;bottom:-60%;left:-38%;width:36%;transform:rotate(14deg);background:linear-gradient(90deg,transparent,#ffffff38,transparent);animation:event-sheen 5.2s ease-in-out infinite;pointer-events:none}@keyframes event-sheen{0%,12%{transform:translateX(-30%) rotate(14deg);opacity:0}28%{opacity:.8}70%,100%{transform:translateX(410%) rotate(14deg);opacity:0}}.event-card:after{content:"";position:absolute;z-index:-1;top:-76px;right:-31px;width:190px;height:190px;border:1px solid #173b2d38;border-radius:50%;box-shadow:0 0 0 15px #173b2d0d,0 0 0 32px #173b2d0a;pointer-events:none}.event-icon{position:relative;z-index:1;width:43px;height:43px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px;background:#142019;color:var(--event-a)}[data-theme="light"] .event-icon{background:#ffffff24;color:#fff}[data-theme="light"] .event-tag{background:#fff;color:#a40e0e;border-color:#fff}[data-theme="light"] .event-card:after{border-color:#ffffff38;box-shadow:0 0 0 15px #ffffff0d,0 0 0 32px #ffffff0a}.event-copy{position:relative;z-index:1;min-width:0;flex:1}.event-copy strong{display:block;color:var(--event-ink);font-size:16px;line-height:1.4;font-weight:750}.event-copy span{display:block;margin-top:5px;color:var(--event-meta);font-size:13px;line-height:1.5}.event-tag{position:relative;z-index:1;align-self:flex-end;margin-bottom:2px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--event-ink) 32%,transparent);border-radius:999px;background:#ffffff24;color:var(--event-ink);font-size:11px;font-weight:700;white-space:nowrap}
    .wizard{grid-column:2;grid-row:1;position:relative;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:0 24px 64px var(--shadow);transition:background .2s,border-color .2s}.wizard:before{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--accent),var(--cta))}.steps{padding:24px 28px 19px;border-bottom:1px solid var(--line);background:var(--surface)}.step-track{display:flex;gap:13px}.step{flex:1;min-width:0;display:flex;flex-direction:column;gap:9px;color:var(--muted);font-size:12px;font-weight:600;transition:color .2s}.step-indicator{height:5px;width:100%;border-radius:99px;background:var(--line);transition:background .25s,box-shadow .25s,transform .25s}.step.active{color:var(--ink)}.step.active .step-indicator{background:linear-gradient(90deg,var(--accent-strong),var(--accent));box-shadow:0 0 14px color-mix(in srgb,var(--accent) 26%,transparent);transform:scaleY(1.35)}.step.done{color:var(--accent-strong)}.step.done .step-indicator{background:var(--accent-strong)}
    .panel{min-height:360px;padding:29px 30px 30px;border-bottom:1px solid var(--line)}.page{animation:page-in .18s ease-out both}@keyframes page-in{from{opacity:.65}to{opacity:1}}.panel-head{margin-bottom:25px}.panel-head h2{margin:0 0 7px;color:var(--ink);font-size:25px;line-height:1.2;letter-spacing:-.04em;font-weight:750}.panel-head p{max-width:58ch;margin:0;color:var(--muted);font-size:15px;line-height:1.6}
    .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.contact-summary,.contact-editor{grid-column:1/-1}.contact-summary{display:flex;align-items:center;gap:14px;min-width:0;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,var(--surface-raised),var(--surface))}.contact-avatar{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px;background:var(--accent-soft);color:var(--accent-strong)}.contact-copy{display:grid;gap:3px;min-width:0;flex:1}.contact-kicker{color:var(--accent-strong);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contact-copy strong{overflow:hidden;color:var(--ink);font-size:16px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.contact-copy .contact-email{overflow-wrap:anywhere;color:var(--muted);font-size:13px}.contact-edit-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:inherit;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer;transition:border-color .18s,background .18s,color .18s}.contact-edit-button:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.contact-edit-button:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-strong) 45%,transparent);outline-offset:2px}.contact-editor{padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--surface-raised);animation:page-in .18s ease-out both}.contact-editor[hidden]{display:none}.contact-editor .field-grid{gap:13px}.contact-editor .field-grid .field:last-child{grid-column:1/-1}.contact-edit-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.contact-editor .btn{min-height:40px;padding:8px 13px;font-size:12px}.phone-control{display:grid;grid-template-columns:112px minmax(0,1fr);gap:8px}.phone-control select{padding-left:10px;padding-right:28px}.phone-control input{min-width:0}.field label,.field-label{color:var(--ink);font-size:14px;font-weight:700;letter-spacing:-.01em}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 13px;background:var(--surface-raised);color:var(--ink);font:inherit;font-size:15px;outline:none;transition:border-color .18s,box-shadow .18s,background .18s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent-strong);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-strong) 22%,transparent);background:var(--surface)}.field textarea{min-height:142px;resize:vertical;line-height:1.6;background:color-mix(in srgb,var(--surface-raised) 75%,var(--surface))}.field select{appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23929a94' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat}.optional-label{color:var(--muted);font-weight:400}.hint{display:block;position:relative;margin-top:3px;padding:10px 12px 10px 38px;border-left:2px solid var(--accent-strong);border-radius:0 9px 9px 0;background:var(--accent-soft);color:var(--muted);font-size:13px;line-height:1.5}.hint:before{content:"i";position:absolute;left:12px;top:10px;width:16px;height:16px;display:grid;place-items:center;border:1px solid var(--accent-strong);border-radius:50%;color:var(--accent-strong);font-size:10px;font-style:normal;font-weight:800;line-height:1}.notice{position:relative;margin-top:19px;padding:14px 16px 14px 46px;border:0;border-left:3px solid var(--accent-strong);border-radius:0 11px 11px 0;background:var(--accent-soft);color:var(--muted);font-size:13px;line-height:1.7}.notice:before{content:"i";position:absolute;left:15px;top:15px;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:var(--accent-strong);color:var(--surface);font-size:11px;font-style:normal;font-weight:800;line-height:1}.notice strong{color:var(--ink)}.check-row{display:flex;align-items:flex-start;gap:11px;margin-top:17px;padding:15px 2px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font-size:13px;line-height:1.6}.check-row input,.choice input{width:17px;height:17px;flex:0 0 auto;margin:2px 0 0;accent-color:var(--accent-strong)}.check-row a{color:var(--accent-strong);font-weight:650}
    .choice-list{display:grid;gap:11px}.choice{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface-raised);cursor:pointer;transition:background .18s,border-color .18s,transform .18s}.choice:hover{transform:translateY(-1px);border-color:var(--accent-strong)}.choice:has(input:checked){border-color:var(--accent-strong);background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent)}.choice strong{display:block;color:var(--ink);font-size:14px;font-weight:700}.choice span{display:block;margin-top:3px;color:var(--muted);font-size:13px;line-height:1.55}
    .review{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:18px;border-top:1px solid var(--line)}.review div{padding:12px 0;border-bottom:1px solid var(--line)}.review small{display:block;color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:700}.review strong{color:var(--ink);font-size:14px;font-weight:650}
    .actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 30px;background:var(--surface)}.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 17px;border:0;border-radius:10px;font:inherit;font-size:13px;font-weight:750;cursor:pointer;transition:transform .18s,background .18s,box-shadow .18s}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(1px) scale(.985)}.btn:focus-visible,.choice:focus-within,.theme-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-strong) 55%,transparent);outline-offset:3px}.btn-primary{background:var(--cta);color:var(--cta-ink);box-shadow:0 5px 14px var(--shadow)}.btn-primary:hover{filter:brightness(1.04);box-shadow:0 8px 18px var(--shadow)}.btn-quiet{border:1px solid var(--line);background:var(--surface-raised);color:var(--ink)}.btn-quiet:hover{border-color:var(--accent-strong);background:var(--accent-soft)}.btn[hidden]{display:none}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btn:disabled:hover{filter:none}.footnote{grid-column:1 / -1;grid-row:2;margin:0;text-align:left;color:var(--muted);font-size:13px}.footnote a{color:var(--accent);font-weight:650;text-decoration-thickness:1px;text-underline-offset:3px}
    .success{display:flex;min-height:100%;padding:42px 30px;text-align:left;flex-direction:column;align-items:flex-start;justify-content:center;animation:page-in .2s ease-out both}.success-mark{width:66px;height:66px;display:grid;place-items:center;margin-bottom:17px;color:var(--accent-strong);animation:success-pop .42s cubic-bezier(.2,.8,.2,1) both}.success-mark svg{width:100%;height:100%;overflow:visible}.success-ring,.success-check{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.success-ring{stroke-width:2.5;stroke-dasharray:170;stroke-dashoffset:170;animation:draw-ring .55s ease-out .05s forwards}.success-check{stroke-width:3.5;stroke-dasharray:40;stroke-dashoffset:40;animation:draw-check .34s cubic-bezier(.2,.8,.2,1) .42s forwards}@keyframes draw-ring{to{stroke-dashoffset:0}}@keyframes draw-check{to{stroke-dashoffset:0}}@keyframes success-pop{from{opacity:0;transform:scale(.84)}to{opacity:1;transform:scale(1)}}.success h2{margin:0 0 8px;color:var(--ink);font-size:29px;letter-spacing:-.04em}.success p{width:100%;max-width:none;margin:0;color:var(--muted);font-size:15px;line-height:1.65}.tickets-area,.guest-editor{width:100%;max-width:650px}.ticket-main{display:grid;grid-template-columns:148px minmax(0,1fr);align-items:center;gap:20px;width:100%;margin-top:24px;padding:16px;border:1px solid var(--line);border-radius:17px;background:var(--surface-raised);transition:grid-template-columns .3s,padding .3s,gap .3s}.ticket-qr{display:grid;place-items:center;width:148px;height:148px;padding:9px;border-radius:12px;background:#fff;transition:width .3s,height .3s,padding .3s}.ticket-qr img{display:block;width:100%;height:100%;image-rendering:pixelated}.ticket-copy{min-width:0}.ticket-label{display:block;margin-bottom:9px;color:var(--accent-strong);font-size:11px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.ticket-copy strong{display:block;color:var(--ink);font-size:16px;line-height:1.4}.ticket-copy span{display:block;margin-top:7px;color:var(--muted);font-size:13px;line-height:1.5}.ticket-copy .ref{margin-top:13px;color:var(--muted);font-size:12px}.ref strong{color:var(--ink);font-family:ui-monospace,monospace;letter-spacing:.07em}.success.has-guests .ticket-main{grid-template-columns:82px minmax(0,1fr);gap:14px;margin-top:17px;padding:12px}.success.has-guests .ticket-main .ticket-qr{width:82px;height:82px;padding:6px}.success.has-guests .ticket-main .ticket-label{margin-bottom:4px}.success.has-guests .ticket-main .ticket-copy strong{font-size:14px}.success.has-guests .ticket-main .ticket-copy span{margin-top:3px;font-size:12px}.success.has-guests .ticket-main .ticket-copy .ref{margin-top:5px}.guest-section{margin-top:22px}.guest-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.guest-section-head h3{margin:0;color:var(--ink);font-size:15px}.guest-count{min-width:26px;padding:3px 8px;border-radius:99px;background:var(--accent-soft);color:var(--accent-strong);font-size:12px;font-weight:750;text-align:center}.guest-list{display:grid;gap:6px;max-height:min(34vh,280px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:5px;scrollbar-color:var(--line) transparent;scrollbar-width:thin}.guest-list::-webkit-scrollbar{width:7px}.guest-list::-webkit-scrollbar-thumb{border-radius:99px;background:var(--line)}.guest-ticket{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 9px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.guest-qr{width:54px;height:54px;padding:3px;border-radius:8px;background:#fff}.guest-qr img{display:block;width:100%;height:100%;image-rendering:pixelated}.guest-info{min-width:0}.guest-info strong{display:block;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.guest-info span{display:block;margin-top:2px;overflow-wrap:anywhere;color:var(--muted);font-size:11px}.guest-reference{color:var(--muted);font-family:ui-monospace,monospace;font-size:9px;white-space:nowrap}.success-actions{display:flex;align-items:center;gap:10px;margin-top:22px}.guest-editor{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--surface-raised);animation:page-in .18s ease-out both}.guest-editor[hidden]{display:none}.guest-editor-head h3{margin:0 0 4px;color:var(--ink);font-size:17px}.guest-editor-head p{margin:0 0 15px;color:var(--muted);font-size:13px}.guest-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px 15px}.guest-fields .field:last-child{grid-column:1/-1}.guest-editor-actions{display:flex;justify-content:flex-end;align-items:center;gap:9px;margin-top:15px}.guest-feedback{flex:1;margin:0!important;color:var(--muted);font-size:12px!important}.guest-feedback.error{color:var(--accent-strong)}.guest-feedback.success-message{color:var(--accent-strong)}.guest-editor .btn{min-height:42px;padding:9px 14px}.guest-spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.finish-link{text-decoration:none}.finish-link:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-strong) 55%,transparent);outline-offset:3px}
    @media(max-width:840px){main{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);column-gap:34px}.intro h1{font-size:clamp(40px,5vw,56px)}.event-card{align-items:flex-start;flex-wrap:wrap}.event-tag{margin-left:58px}}
    @media(max-width:640px){.topbar{height:66px}.topbar-inner{width:calc(100% - 32px)}.brand-logo{width:140px}.topbar-tools{gap:9px}.secure{gap:0}.secure span{display:none}.theme-toggle{min-height:42px;padding:4px 9px;font-size:12px}.theme-switch{width:30px;height:18px}.theme-switch span{width:12px;height:12px}.theme-toggle[aria-pressed="true"] .theme-switch span{transform:translateX(12px)}main{width:calc(100% - 32px);margin:30px auto 48px;grid-template-columns:1fr;row-gap:18px}.invite-rail{grid-column:1;grid-row:auto;position:static;gap:14px}.wizard{grid-column:1;grid-row:auto}.footnote{grid-row:auto}.intro{align-self:auto}.intro h1{max-width:22ch;margin:12px 0 7px;font-size:clamp(30px,8.5vw,38px);line-height:1.05;letter-spacing:-.045em}.intro p{font-size:14px}.event-card{min-height:84px;padding:12px 13px;align-items:center;gap:11px}.event-icon{width:37px;height:37px}.event-copy{flex-basis:calc(100% - 50px)}.event-copy strong{font-size:14px}.event-copy span{font-size:12px}.event-tag{display:none}.wizard{margin-top:5px;border-radius:18px}.steps{padding:18px 15px 15px}.step-track{gap:8px}.step{gap:8px;font-size:11px}.step-indicator{height:4px}.panel{min-height:0;padding:23px 18px 24px}.panel-head{margin-bottom:20px}.panel-head h2{font-size:22px}.panel-head p{font-size:14px}.field-grid{grid-template-columns:1fr;gap:13px}.contact-editor .field-grid{grid-template-columns:1fr}.contact-editor .field-grid .field:last-child{grid-column:1}.contact-summary{gap:10px;padding:12px}.contact-avatar{width:40px;height:40px}.contact-copy strong{font-size:14px}.contact-copy .contact-email{font-size:12px}.contact-edit-button{min-height:38px;padding:7px 9px}.field input,.field textarea,.field select{font-size:16px}.notice,.check-row{font-size:13px}.actions{padding:14px 18px}.btn{min-height:46px;padding:10px 14px;font-size:13px}.success{padding:30px 20px}.success h2{font-size:25px}.ticket-main{grid-template-columns:112px minmax(0,1fr);gap:14px;margin-top:19px;padding:12px}.ticket-qr{width:112px;height:112px;padding:7px}.ticket-copy strong{font-size:14px}.ticket-copy span{font-size:12px}.success.has-guests .ticket-main{grid-template-columns:68px minmax(0,1fr);gap:11px}.success.has-guests .ticket-main .ticket-qr{width:68px;height:68px;padding:4px}.guest-list{max-height:min(30vh,220px)}.guest-ticket{grid-template-columns:46px minmax(0,1fr);gap:8px;padding:6px 8px}.guest-qr{width:46px;height:46px}.guest-reference{grid-column:2;white-space:normal}.success-actions{width:100%;flex-wrap:wrap}.success-actions .btn{flex:1}.guest-editor{padding:14px}.guest-fields{grid-template-columns:1fr}.guest-fields .field:last-child{grid-column:1}.guest-editor-actions{flex-wrap:wrap}.guest-feedback{flex-basis:100%}.review{grid-template-columns:1fr}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}.event-card{animation:none;background-position:50%}.event-card:before{display:none;animation:none}}
    @media(prefers-reduced-transparency:reduce){.topbar{background:var(--header)}}
  
.guest-step-help{margin:18px 28px}.step[aria-disabled="true"]{opacity:.65}

/* El PNG original contiene margen transparente: encuadrar la marca visible. */
.brand{width:164px;height:54px;overflow:hidden;flex:0 0 auto;align-items:flex-start}
.brand-logo{width:272px;max-width:none;height:auto;flex:none;transform:translateY(-5px)}
.ticket-qr [data-ticket],.guest-qr [data-ticket]{display:block;width:100%;height:100%}
[data-ticket] canvas,[data-ticket] img{display:block;max-width:100%;width:100%;height:100%;object-fit:contain}
.ticket-qr,.guest-qr{aspect-ratio:1;text-decoration:none}
.ticket-qr{height:auto}
.guest-pending{display:grid;place-items:center;width:54px;height:54px;border-radius:8px;background:var(--accent-soft);color:var(--accent-strong);font-size:26px}
.guest-section>p{margin:10px 0 14px;font-size:13px}
.guest-editor-head h3{color:var(--ink)}
.btn{text-decoration:none}.guest-info strong,.ticket-copy strong{overflow-wrap:anywhere}
@media(max-width:640px){.brand{width:140px;height:47px}.brand-logo{width:232px;transform:translateY(-4px)}.guest-pending{width:46px;height:46px}.guest-step-help{margin:15px 18px}}
@media(max-width:380px){.topbar-tools{gap:3px}.theme-toggle{gap:4px;padding:4px}.secure{display:none}}

.guest-info a{display:inline-block;margin-top:4px;color:var(--accent-strong);font-size:11px;text-underline-offset:3px}

/* Pantalla final compacta; el formulario sustituye temporalmente al resumen. */
#success{padding:28px 30px;min-height:0;justify-content:flex-start}
#success .success-mark{width:48px;height:48px;margin-bottom:12px}
#success .confirmation-heading>p{font-size:14px;line-height:1.5}
#success .tickets-area .ticket-main{grid-template-columns:76px minmax(0,1fr);gap:14px;margin-top:18px;padding:12px}
#success .tickets-area .ticket-main .ticket-qr{width:76px;height:76px;padding:5px}
#success .tickets-area .ticket-main .ticket-label{margin:0 0 4px;font-size:10px}
#success .tickets-area .ticket-main .ticket-copy>strong{font-size:14px;line-height:1.35}
#success .tickets-area .ticket-main .ref{margin-top:5px;font-size:11px}
#success .tickets-area .ticket-main .ref strong{display:inline;font-size:12px}
#success .success-actions{margin-top:10px}
#success .guest-section{margin-top:18px}
#success .guest-editor{margin-top:0}
#success .guest-editor .notice{margin:12px 0 16px}
@media(max-width:640px){#success{padding:23px 18px}#success .tickets-area .ticket-main{grid-template-columns:64px minmax(0,1fr);gap:11px}#success .tickets-area .ticket-main .ticket-qr{width:64px;height:64px;padding:4px}}

#confirmation-summary{width:100%;min-width:0}
#confirmation-summary[hidden],#guest-editor[hidden]{display:none!important}

.guest-fields{margin:0;padding:0;border:0;min-width:0}
.guest-card-actions{grid-column:2/-1;display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.guest-action{appearance:none;min-height:32px;padding:5px 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface-raised);color:var(--ink);font:inherit;font-size:11px;font-weight:650;cursor:pointer}
.guest-action:hover{border-color:var(--accent-strong);background:var(--accent-soft)}
.guest-action:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}
.guest-action-delete{color:var(--accent-strong)}
#success .guest-delete-prompt{margin:14px 0;font-size:14px}

/* Invitados: referencia bajo el QR y acciones a la derecha, sin fila extra. */
.guest-ticket{grid-template-columns:60px minmax(0,1fr) auto;gap:10px;padding:8px 9px}
.guest-code{display:grid;justify-items:center;align-content:center;gap:4px;min-width:0}
.guest-code .guest-reference{grid-column:auto;width:100%;font-size:9px;line-height:1.2;text-align:center;white-space:normal;overflow-wrap:anywhere}
.guest-card-controls{display:grid;justify-items:end;gap:6px;align-self:center}
.guest-card-actions{grid-column:auto;display:flex;flex-wrap:nowrap;gap:4px;margin:0}
.guest-action{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:32px;padding:6px}
.guest-status-pending{color:var(--accent-strong);font-size:10px;font-weight:650;line-height:1.3}
@media(max-width:640px){.guest-ticket{grid-template-columns:50px minmax(0,1fr) auto;gap:8px;padding:8px}.guest-code .guest-reference{grid-column:auto}}

.guest-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:3px}
.guest-info .guest-meta span,.guest-info .guest-meta a{margin:0}

@media(max-width:350px){.guest-ticket-confirmed .guest-card-actions{flex-direction:column}}

/* Información contextual: paleta neutra independiente del rojo de marca. */
.notice:not([role="alert"]),.hint{border-left-color:var(--line);background:var(--surface-raised);color:var(--ink)}
.notice:not([role="alert"]):before,.hint:before{background:transparent;color:var(--muted);border:1px solid var(--muted)}
.notice.legal-copy{padding:16px;border:1px solid var(--line);border-radius:10px;line-height:1.8}
.notice.legal-copy:before{display:none}
.notice[role="alert"]:before{content:"!"}
.attendance-cancel{margin-top:26px;padding-top:16px;border-top:1px solid var(--line)}
.attendance-cancel summary{width:fit-content;color:var(--muted);font-size:13px;cursor:pointer}
.attendance-cancel summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
#success .attendance-cancel p{margin-top:14px;font-size:14px}
.btn-danger{background:var(--surface);color:var(--accent-strong);border:1px solid currentColor}
.attendance-cancel .check-row{border-top:0}

.logout-inline{display:inline;margin:0}
.logout-link{appearance:none;padding:0;border:0;background:transparent;color:var(--accent);font:inherit;font-weight:650;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.logout-link:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.success>form{margin-top:16px}
