.passport-heading{display:flex;align-items:center;gap:12px;margin:14px 0 20px}.passport-heading h1{font-size:25px;margin:0;min-width:0;overflow-wrap:anywhere}.passport-heading .row-action{flex:none}
.passport-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #56344d;margin-bottom:18px}.passport-tabs button{background:none;border:0;border-bottom:2px solid transparent;min-height:48px;padding:10px 4px;color:#c2aec6;font-size:13px;min-width:0;overflow-wrap:anywhere}.passport-tabs button[aria-pressed=true]{color:#ff7aca;border-color:#ff2daa}
.passport-status{font-size:14px;overflow-wrap:anywhere}.passport-status:empty{display:none}.passport-privacy{font-size:12px;line-height:1.5}.passport-map{height:260px;margin:14px 0}.passport-cities,.passport-stamps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.passport-city{display:grid;gap:8px;min-height:128px;text-align:start;color:#fff;background:#1a1020;border:1px solid #643054;border-radius:8px;padding:16px;min-width:0}.passport-city:hover,.passport-city:focus-visible{border-color:#ff2daa;background:#2b1327}.passport-city>svg{width:25px;height:25px;color:#53d9c6}.passport-city strong{font-size:17px;overflow-wrap:anywhere}.passport-city small{font-size:12px;color:#c7b0ca}
.passport-game-row{display:grid;grid-template-columns:28px minmax(0,1fr) 22px;align-items:center;gap:5px 10px;width:100%;min-height:90px;border:0;border-bottom:1px solid #42233f;color:white;background:none;text-align:start;padding:14px 0}.passport-game-row>svg:first-child{grid-row:1/4;color:#ff6dc7}.passport-game-row>svg:last-child{grid-column:3;grid-row:1/4}.passport-game-row strong,.passport-game-row span,.passport-game-row small{grid-column:2;overflow-wrap:anywhere}.passport-game-row small{color:#bba6c1}
.passport-stamp{padding:18px 12px;border:1px dashed #ff78c8;border-radius:8px;background:#201123;min-width:0;text-align:center}.passport-stamp>svg{width:34px;height:34px;color:#ff78c8}.passport-stamp h2{font-size:21px}.passport-stamp p,.passport-stamp small{font-size:13px;overflow-wrap:anywhere}.passport-stamp .row-action{margin:12px auto 0}.passport-count{font-size:14px;color:#f7c6e9}
.passport-planner select,.profile-dialog select{max-width:100%;width:100%;min-height:48px;background:#1b1120;color:#fff;border:1px solid #734566;border-radius:8px;padding:10px;margin:8px 0}.passport-board{padding-bottom:14px}.passport-board>h2{margin-bottom:4px;font-size:27px}.passport-peer{color:#77dbcd;margin-top:6px}.passport-board>.primary{margin:14px 0}.passport-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:22px 0 10px}.passport-progress span{height:6px;border-radius:4px;background:#41243c}.passport-progress .done{background:#b62f83}.passport-progress .current{background:#ff2daa}
.passport-answers{border:0;padding:0;margin:24px 0 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.passport-answers legend{padding:0;margin-bottom:12px;font-size:14px;color:#ceb9d2}.passport-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:122px;width:100%;padding:15px 10px;border:1px solid #79416e;border-radius:8px;background:#1b1021;color:#fff;font-size:17px;line-height:1.3;overflow-wrap:anywhere;transition:transform .18s,background .18s}.passport-option svg{width:28px;height:28px;color:#59d7c9;flex-shrink:0}.passport-option[aria-pressed=true]{border:2px solid #ff2daa;background:#3a1230}.passport-option[aria-pressed=true] svg{color:#ff78c8}.passport-option:active{transform:scale(.97)}.passport-round-controls{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;margin:24px 0}.passport-round-controls .primary{border-radius:24px;min-height:48px}.passport-board button:disabled{opacity:.55;cursor:default}.passport-cancel{display:block;border:0;background:none;color:#c2a1bd;min-height:48px;margin:14px auto;padding:10px;font-size:13px}.passport-mascot{display:block;height:180px;max-width:100%;object-fit:contain;margin:20px auto}.passport-mascots{height:200px;display:flex;justify-content:center;gap:4px;margin:16px 0}.passport-mascots img{height:100%;max-width:47%;object-fit:contain}.passport-earned{display:grid;justify-items:center;gap:8px;max-width:260px;margin:20px auto;padding:20px;border:1px dashed #ff7fcd;border-radius:8px;background:#281325;animation:passport-reveal .4s ease-out}.passport-earned svg{width:36px;height:36px;color:#ff78c8}.passport-earned strong{font-size:24px}.passport-earned small{color:#69ddcb}.passport-result-row{display:grid;gap:6px;padding:14px 0;border-bottom:1px solid #42253d;font-size:14px;overflow-wrap:anywhere}.passport-result-row small{color:#c5aac5}
.profile-connections{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.profile-connection{display:flex;gap:7px;align-items:center;text-align:start;min-height:40px;padding:8px 10px;border:1px solid #69405c;border-radius:8px;background:#201222;color:#ffb2df;max-width:100%;font-size:13px}.profile-connection svg{width:16px;flex:none}.profile-connection span{overflow-wrap:anywhere}.passport-profile-entry{margin:14px 0}.passport-profile-entry button,.passport-entry{display:flex;gap:10px;align-items:center;justify-content:center}.passport-entry{margin-bottom:14px}.passport-entry svg{width:22px;height:22px}.relationship-row{position:relative;display:grid;gap:12px;border-bottom:1px solid #54314a;padding:20px 0;overflow-wrap:anywhere}.relationship-person{display:flex;gap:10px;align-items:center;border:0;background:none;color:#fff;font-size:19px;text-align:start;padding:0}.relationship-person svg{width:24px;color:#ff79c9}.relationship-row>small{color:#baa4bd}.relationship-visibility{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;margin:10px 0}.relationship-visibility input{width:22px;height:22px;flex-shrink:0;accent-color:#ff2daa}.relationship-row>.row-action{justify-self:end}.relationships-list .primary{margin:0}
@keyframes passport-reveal{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
@media(max-width:350px){.passport-heading h1{font-size:22px}.passport-cities,.passport-stamps{gap:8px}.passport-option{font-size:15px;min-height:112px;padding:12px 6px}.passport-tabs button{font-size:12px}.passport-city{padding:12px}.passport-mascots{height:160px}}
@media(prefers-reduced-motion:reduce){.passport-earned{animation:none}.passport-option{transition:none}}
.passport-invitation-alert{display:flex;align-items:center;gap:8px;flex-shrink:0;border-block:1px solid #a93c7b;margin:6px 0 12px;min-width:0;background:#291124}.passport-invitation-open{display:flex;align-items:center;gap:10px;flex:1;min-width:0;min-height:48px;border:0;background:transparent;color:#ffd2eb;padding:8px;text-align:start;font-size:13px}.passport-invitation-open>svg{width:20px;height:20px;flex:none;color:#ff64bc}.passport-invitation-open>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.passport-invitation-open>svg:last-child{margin-inline-start:auto}.passport-invitation-alert>.row-action{flex:none;width:36px;height:36px;margin-inline-end:6px}#tabs button{position:relative}.passport-invitation-badge{position:absolute;inset-block-start:0;inset-inline-end:3px;display:grid;place-items:center;min-width:16px;height:16px;border-radius:50%;padding:0 3px;color:white;background:#d51686;font-size:10px}.keyboard-open .conversation-open .passport-invitation-alert,.very-compact-viewport .conversation-open .passport-invitation-alert{display:none}
@media(max-height:450px){.conversation-open .passport-invitation-alert{display:none}}
.passport-board>.passport-shared-result{font-size:22px;line-height:1.35;overflow-wrap:anywhere;color:#77dbcd}.passport-personal-scores{display:grid;gap:8px;padding:14px 0;border-bottom:1px solid #42253d}.passport-personal-scores p{margin:0;font-size:15px;line-height:1.4;overflow-wrap:anywhere}.passport-score-note{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.passport-stamp .passport-shared-result{font-weight:600;color:#77dbcd}
