.guest-root{max-width:780px;margin:0 auto;padding:35px 35px 80px}.guest-brand{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:45px;font:28px var(--serif)}.guest-brand img{width:54px;height:64px;object-fit:contain}.guest-brand small{display:block;font:10px var(--sans);margin-top:5px;color:var(--muted)}.guest-welcome{text-align:center;padding:20px 0}.guest-welcome h1{margin:20px 0 25px}.guest-welcome>p{max-width:480px;margin:20px auto;line-height:1.8}.guest-choices{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:35px 0}.guest-choice{display:flex;flex-direction:column;gap:15px;padding:35px 25px;text-align:left;background:#eee9df;border:1px solid #d6cbbb;border-radius:45px 7px 30px 7px}.guest-choice:nth-child(2){background:#ece5e3;border-radius:7px 45px 7px 30px}.guest-choice strong{font:32px/1.1 var(--serif)}.guest-choice>span:last-child{font-size:12px;color:var(--muted)}.guest-form{padding:35px;background:#fffcf6;border:1px solid #e3dbcc;border-radius:35px 8px 25px 8px}.guest-form h1{font-size:44px;margin-bottom:25px}.guest-form form{margin-top:25px}.guest-form input[type=checkbox]{flex:0 0 17px;width:17px;height:17px}.guest-form progress{width:100%;accent-color:var(--plum)}.guest-root .invitation-sheet{max-width:none}.guest-footer{border-top:1px solid #ded4c2;margin-top:45px;padding-top:25px;text-align:center;font-size:11px;color:var(--muted)}.guest-status{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);max-width:550px;width:calc(100% - 28px);padding:14px 20px;background:var(--plum);color:var(--paper);border-radius:18px 5px;z-index:100;font-size:13px;box-shadow:0 4px 30px #0002}.guest-status:empty{display:none}.legal-links{display:flex;flex-wrap:wrap;gap:10px 20px;justify-content:center;font-size:12px;margin:15px 0}.guest-reply-note{text-align:center;margin-top:20px}.guest-link-card{margin:25px 0;padding:28px;background:#ede8dd;border-radius:8px 38px 8px 28px;border:1px solid #d8cebd}.guest-link-card h3{margin:10px 0}.guest-link-card .actions{flex-wrap:wrap}.guest-link-url{width:100%;font-size:12px;margin:12px 0;overflow-wrap:anywhere}.payment-note{padding:20px;background:#eee7df;border-radius:24px 5px;margin:20px 0}.payment-note p{font-size:13px}.payment-status{font-size:12px;color:#6a625a}.legal-index{display:grid;gap:12px;margin-top:24px}.legal-index a{display:block;padding:15px 0;border-bottom:1px solid #d9cbbb;font:24px var(--serif)}
@media(max-width:600px){.guest-root{padding:24px 17px 90px}.guest-brand{font-size:25px;margin-bottom:25px}.guest-choices{grid-template-columns:1fr}.guest-choice{padding:26px}.guest-welcome h1{font-size:43px}.guest-form{padding:25px 20px}.guest-form h1{font-size:36px}.guest-link-card{padding:24px 20px}.guest-root .invitation-actions{flex-wrap:wrap}}

.guest-code-note{display:grid;grid-template-columns:auto minmax(140px,210px);align-items:center;gap:10px 22px;margin:10px 0 24px;padding:18px 0;border-block:1px solid #cfc3ae}.guest-code-note label{font:italic 23px var(--serif);color:var(--ink)}.guest-code-note input{font:20px var(--sans);letter-spacing:3px;text-align:center;min-width:0;width:100%;margin:0;padding:13px}.guest-code-note p{grid-column:1/-1;margin:0;max-width:520px;font:12px/1.7 var(--sans);color:var(--muted)}.guest-unlock{max-width:540px;margin:auto}.guest-unlock>p{line-height:1.8}.guest-unlock input{text-transform:uppercase;letter-spacing:3px;font-size:20px}.guest-unlock input::placeholder{font-size:17px;letter-spacing:2px}.guest-unlock .small{margin:25px 0 0}.guest-link-card .actions{display:flex;align-items:center;gap:14px 20px;margin-top:16px}.guest-link-card .actions .text-button{margin:0;line-height:1.35}
@media(max-width:480px){.guest-code-note{grid-template-columns:1fr;gap:12px}.guest-code-note input{max-width:210px;text-align:left}.guest-code-note p{grid-column:1}.guest-link-card{padding:24px 20px}.guest-link-card .actions{align-items:stretch;flex-direction:column}.guest-link-card .actions .btn{text-align:center;justify-content:center}.guest-link-card .actions .text-button{text-align:left;padding:7px 0}.guest-unlock{padding:28px 22px}.guest-unlock h1{font-size:39px}}
