.pref{display:flex;gap:.65rem;align-items:center;min-height:42px;color:var(--color-text-secondary);font-size:13px;line-height:1.35;border:1px solid rgba(200,165,114,.13);background:#ffffff06;padding:.7rem .8rem;transition:border-color .2s ease,background .2s ease,color .2s ease}.pref:has(input:checked){border-color:#c8a5727a;background:#c8a57212;color:var(--color-text)}.pref input{width:1rem;height:1rem;accent-color:var(--color-accent);flex-shrink:0}.portal-nav{display:flex;justify-content:space-between;align-items:center;gap:1rem}.portal-link,.passport-action{border:1px solid rgba(200,165,114,.28);color:var(--color-text-secondary);padding:.65rem .85rem;border-radius:2px;font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.14em;transition:color .2s ease,border-color .2s ease,background .2s ease}.portal-link:hover,.passport-action:hover{color:var(--color-accent);border-color:#c8a5728c}.portal-link-primary,.passport-action-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg);font-weight:700}.portal-link-primary:hover,.passport-action-primary:hover{background:var(--color-accent-hover);color:var(--color-bg)}.passport-action-quiet{background:transparent;cursor:pointer}.passport-action-quiet:hover{color:var(--color-bg);border-color:var(--color-accent);background:var(--color-accent)}.access-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;padding:.25rem;border:1px solid rgba(200,165,114,.18);background:#ffffff06}.access-tab{min-height:42px;padding:.65rem .85rem;color:var(--color-text-secondary);border:1px solid transparent;font-size:11px;line-height:1.15;text-transform:uppercase;letter-spacing:.12em;transition:color .2s ease,border-color .2s ease,background .2s ease}.access-tab.is-active{background:#c8a5721a;border-color:#c8a5726b;color:var(--color-text)}.legal-consent-card{border:1px solid rgba(200,165,114,.18);background:#0f110e2e;padding:.95rem;display:grid;gap:.75rem}.legal-consent-card.hidden{display:none}.legal-check{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer;color:var(--color-text-secondary);font-size:12px;line-height:1.55}.legal-mini{color:var(--color-text-muted);font-size:11px;line-height:1.4}.guided-field{position:relative}.field-label{display:flex;align-items:center;gap:.45rem;margin-bottom:.45rem;color:var(--color-text-secondary);font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.12em}.field-required,.field-optional{display:inline-flex;align-items:center;min-height:18px;padding:0 .45rem;border:1px solid rgba(200,165,114,.24);color:var(--color-accent);font-size:9px;line-height:1;letter-spacing:.1em}.field-optional{color:var(--color-text-muted);border-color:#ffffff1f}.field-guidance{display:flex;align-items:flex-start;gap:.5rem;margin-top:.55rem;color:var(--color-text-secondary);font-size:12px;line-height:1.4}.field-guidance-dot{width:.38rem;height:.38rem;margin-top:.45rem;border-radius:999px;background:var(--color-accent);opacity:.72;flex-shrink:0}.field-example,.claim-example{margin-top:.25rem;color:var(--color-text-muted);font-size:11px;line-height:1.35}.guest-text-input{min-height:48px;border-color:#c8a57242;background:#ffffff09}.guest-text-input:focus{border-color:#c8a5729e;background:#ffffff0e}.email-sent-card{position:relative;overflow:hidden;display:grid;gap:.95rem;border:1px solid rgba(200,165,114,.34);border-left:3px solid var(--color-accent);background:linear-gradient(135deg,#c8a5721f,#ffffff06);padding:1rem;box-shadow:0 16px 50px #0000002e}.email-sent-card.hidden{display:none}.email-sent-card:after{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(200,165,114,.7),transparent);pointer-events:none}.email-sent-topline{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-accent);font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.12em}.email-sent-icon{display:inline-flex;width:1.65rem;height:1.65rem;align-items:center;justify-content:center;border-radius:999px;background:var(--color-accent);color:var(--color-bg);font-weight:800;letter-spacing:0}.email-sent-card h3{margin:0;color:var(--color-text);font-family:var(--font-heading);font-size:1.65rem;line-height:1.05;font-weight:400}.email-sent-card p{color:var(--color-text-secondary);font-size:13px;line-height:1.55}.email-sent-card strong{color:var(--color-text);font-weight:600;overflow-wrap:anywhere}.email-sent-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;list-style:none;margin:0;padding:0}.email-sent-steps li{display:grid;gap:.45rem;min-height:74px;align-content:center;justify-items:center;border:1px solid rgba(255,255,255,.1);background:#0f110e2e;color:var(--color-text-muted);text-align:center;font-size:11px;line-height:1.2}.email-sent-steps li span{display:inline-flex;width:1.8rem;height:1.8rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(255,255,255,.16);color:currentColor;font-weight:700}.email-sent-steps li.is-done{border-color:#c8a5726b;background:#c8a57214;color:var(--color-accent)}.email-sent-steps li.is-done span{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg)}.email-sent-actions{display:flex;flex-wrap:wrap;gap:.6rem}.email-sent-help{margin-top:-.25rem;color:var(--color-text-muted)!important;font-size:11px!important}.passport-hero{position:relative;overflow:hidden;padding:2rem;border-color:#c8a5723d;box-shadow:0 20px 70px #0000002e}.passport-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(200,165,114,.11),transparent 45%,rgba(224,122,95,.07));pointer-events:none}.passport-hero:after{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(200,165,114,.52),transparent);pointer-events:none}.passport-hero>*{position:relative}.passport-grid{display:grid;grid-template-columns:minmax(240px,.76fr) minmax(0,1.55fr);gap:1rem;align-items:stretch}.passport-feature{border:1px solid rgba(200,165,114,.2);border-left:2px solid var(--color-accent);padding:1.2rem;background:#0f110e3d;min-height:180px;display:flex;flex-direction:column;justify-content:center}.passport-feature strong{display:block;color:var(--color-accent);font-size:clamp(2.05rem,4vw,3rem);line-height:1;font-weight:400;margin:.5rem 0 1rem;overflow-wrap:anywhere}.passport-progress{height:7px;background:#ffffff14;overflow:hidden;border-radius:999px;margin-bottom:.75rem}.passport-progress span{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--color-accent),var(--color-ember));transition:width .4s ease}.passport-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.passport-stat{padding:.95rem;min-height:112px;border:1px solid rgba(200,165,114,.16);background:#0f110e33;display:grid;align-content:space-between;gap:.8rem}.passport-stat strong{display:block;font-size:clamp(1.75rem,3vw,2.35rem);line-height:1;color:var(--color-accent);font-weight:500}.passport-stat span{display:block;margin-top:.35rem;color:var(--color-text-secondary);font-size:12px;line-height:1.35}.passport-stat small{display:block;color:var(--color-text-muted);font-size:10px;line-height:1.3;text-transform:uppercase;letter-spacing:.12em}.passport-milestones{display:grid;grid-template-columns:repeat(5,minmax(124px,1fr));gap:.65rem}.passport-milestone{position:relative;border:1px solid rgba(200,165,114,.16);min-height:108px;padding:.9rem .75rem;background:#ffffff06;display:grid;gap:.45rem;align-content:start}.passport-milestone-count{display:inline-flex;width:2.15rem;height:2.15rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(200,165,114,.35);color:var(--color-accent);font-size:11px;font-weight:700}.passport-milestone strong{display:block;color:var(--color-text);font-size:12px;line-height:1.25}.passport-milestone small{display:block;color:var(--color-text-muted);font-size:10px;line-height:1.25;text-transform:uppercase;letter-spacing:.1em}.passport-milestone.is-unlocked{border-color:#c8a5728c;background:#c8a5720e}.passport-milestone.is-current{box-shadow:inset 0 -2px 0 var(--color-accent)}.passport-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.passport-badge{border:1px solid rgba(200,165,114,.22);color:var(--color-text-secondary);padding:.85rem .8rem;border-radius:2px;font-size:12px;line-height:1.25;min-height:86px;display:grid;align-content:space-between;gap:.55rem}.passport-badge strong{display:block;color:var(--color-text);font-size:12px;font-weight:600;line-height:1.25}.passport-badge span{display:block;color:var(--color-text-muted);font-size:10px;line-height:1.25;text-transform:uppercase;letter-spacing:.12em}.passport-badge.is-unlocked{border-color:#c8a57280;background:#c8a5720e}.passport-badge.is-locked{opacity:.52}.claim-card{position:relative;overflow:hidden;padding:2rem}.claim-card:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(200,165,114,.05),transparent);pointer-events:none}.claim-card>*{position:relative}.claim-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:end}.claim-input{text-transform:uppercase;letter-spacing:.08em}.claim-input::placeholder{color:#e7e2d85c;letter-spacing:0;text-transform:none}.claim-example{margin-top:.45rem;color:var(--color-text-muted);font-size:11px;line-height:1.35}.claim-status{margin-top:1rem;border:1px solid rgba(200,165,114,.24);padding:.9rem 1rem;color:var(--color-text-secondary);font-size:13px;line-height:1.45}.claim-status.is-win{border-color:#c8a57299;background:#c8a57212;color:var(--color-text)}.passport-profile-form{align-items:start}.passport-contact-card{align-self:start;padding:1.25rem}.passport-pref-card{padding:1.25rem;border-color:#c8a57224;background:#ffffff05}.passport-pref-card h2{font-size:1.35rem;line-height:1.15;margin-bottom:.9rem}.passport-requests-card{padding:2rem}@media(max-width:900px){.passport-grid{grid-template-columns:1fr}.passport-milestones{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.passport-badges{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.portal-nav{align-items:flex-start;flex-direction:column}.portal-link,.passport-action{padding:.7rem .8rem}.passport-stats{grid-template-columns:1fr}.passport-feature{min-height:0}.passport-milestones{grid-template-columns:repeat(2,minmax(0,1fr))}.passport-badges,.claim-form{grid-template-columns:1fr}.passport-hero,.claim-card,.passport-requests-card{padding:1.5rem}}
