*,*:before,*:after{box-sizing:border-box;margin:0}body{min-width:280px;color:#243e32;font-family:Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}.santa-page{min-height:100svh;padding:36px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(120deg,#102e28ed,#102e28b8),url(/assets/christmas-background-DMJnTELo.jpg) center/cover fixed}.site-mark{color:#ebd4a0;font-size:.7rem;letter-spacing:.22em;margin-bottom:24px;text-align:center}.site-mark span{font-size:1.3rem;vertical-align:middle;margin-right:8px}.santa-card{width:100%;max-width:560px;padding:clamp(24px,5vw,48px);border:1px solid #eadfc9;border-radius:24px;background:#fffaf1;box-shadow:0 24px 80px #00171155;text-align:center}.gift-seal{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 20px;background:#f0e8d7;border-radius:50%;font-size:1.9rem}.eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:#875329;margin-bottom:12px}h1{font-family:Georgia,serif;font-size:clamp(1.9rem,5vw,2.7rem);font-weight:400;line-height:1.15;letter-spacing:-.035em;color:#173e32}.intro{margin:18px auto 28px;max-width:350px;color:#536359}.reveal-form{text-align:left}label{display:block;font-weight:650;font-size:.9rem}.field-help{color:#59665d;font-size:.8rem;margin:4px 0 10px}input{width:100%;min-height:52px;border:1px solid #aaa999;border-radius:10px;padding:12px 16px;font:inherit;background:#fffefa;color:#173e32}input::placeholder{color:#697269}input[aria-invalid=true]{border-color:#a52e32}button{cursor:pointer;min-height:48px;border-radius:10px;padding:12px 18px;font:inherit;font-weight:650;border:0}.primary{width:100%;background:#214f3d;color:#fffaf1;display:flex;justify-content:space-between;align-items:center}.primary:hover{background:#173e32}button:disabled{opacity:.65;cursor:wait}:focus-visible{outline:3px solid #a2681d;outline-offset:4px}.error{color:#a52e32;font-size:.85rem;margin:8px 0 12px}.error:empty{margin:0 0 16px}.recipient{margin:24px 0;padding:24px 16px;border:1px solid #c7d6c7;border-radius:14px;background:#eef3e9;overflow-wrap:anywhere}.recipient h2{font:2.3rem/1.2 Georgia,serif;color:#173e32;margin:12px 0}.secret-note{font-size:.85rem;color:#536359}.secondary{margin-top:18px;border:1px solid #214f3d;color:#214f3d;background:transparent}.group-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;text-align:left;border-top:1px solid #dfdfd0;margin-top:28px;padding-top:24px}.detail-label{font-size:.63rem;letter-spacing:.12em;color:#6b5a40;font-weight:700}.group-details p{font-size:.85rem;margin-top:4px;overflow-wrap:anywhere}.group-rules{grid-column:1 / -1;color:#536359}.footer-note{font-size:.75rem;color:#6b5a40;margin-top:28px}.page-footer{color:#d2e0d3;font-size:.75rem;margin-top:22px}.announcement{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:5}.confetti span{position:absolute;top:-20px;width:9px;height:16px;animation:fall 2.4s ease-in forwards}@keyframes fall{to{transform:translate(40px,110vh) rotate(640deg)}}@media (max-width: 380px){.santa-page{padding:24px 12px}.group-details{grid-template-columns:1fr;gap:12px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}.confetti{display:none}}.page-footer a{color:inherit;text-underline-offset:3px}a{color:#214f3d}.admin-card{max-width:800px;text-align:left}.admin-card h1,.admin-card>.eyebrow{text-align:center}.admin-top,.list-row,.actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-form{display:grid;gap:12px;margin-top:24px}.admin-form h3{margin-top:12px}textarea,select{width:100%;border:1px solid #aaa999;border-radius:10px;padding:12px;font:inherit;background:#fffefa;color:#173e32}textarea{resize:vertical}.link-button{text-decoration:none;min-height:48px;padding:12px 18px;border-radius:10px}.list-row{border-bottom:1px solid #dfdfd0;padding:20px 0;overflow-wrap:anywhere}.list-row a{font-weight:700}.list-row p{font-size:.8rem;margin-top:6px}.list-row .secondary,.actions .secondary{margin:0}.text-button{background:transparent;color:#214f3d;text-decoration:underline;padding:8px}.back-link{display:inline-block;margin:24px 0 12px}.exclusion-picker{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px}.exclusion-picker .secondary{margin:0}.exclusions{padding-left:20px}.generate{margin-top:20px}.personal-links{margin-top:32px;border-top:1px solid #dfdfd0;padding-top:24px}.invitation{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:20px}.invitation label{grid-column:1/-1}.invitation input{min-width:0;font-size:.8rem}.invitation .secondary{margin:0}@media (max-width:550px){.exclusion-picker{grid-template-columns:1fr}.list-row{align-items:flex-start;flex-direction:column}.admin-card{padding:24px 18px}.actions{flex-wrap:wrap}}
