:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;--ink:#013c47;--ink-soft:#3d6670;--paper:#fbf6f4;--mint:#e3f5f4;--sage:#afe2e1;--coral:#ce797c;--rose:#b0606a;--white:#fff;--line:#e4dcd8;--danger:#a3343f;--radius:16px;--serif:Georgia, "Times New Roman", serif;--sans:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);margin:0}body{font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;font-size:19px;line-height:1.5}h1,h2,h3{font-family:var(--serif);margin:.6em 0 .35em;font-weight:700;line-height:1.2}h1{font-size:1.75rem}h2{font-size:1.35rem}h3{font-size:1.1rem}p{margin:.5em 0}a{color:var(--ink)}code{background:var(--mint);border-radius:4px;padding:0 4px}.app{flex-direction:column;min-height:100dvh;display:flex}.app.with-nav{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.top{padding:calc(12px + env(safe-area-inset-top)) 16px 8px;justify-content:center;align-items:center;display:flex}.logo{width:auto;height:40px;display:block}.page{flex:1;width:100%;max-width:520px;margin:0 auto;padding:0 20px 32px}.muted{color:var(--ink-soft)}.small{font-size:.88rem}.lead{font-size:1.1rem}.center{text-align:center;display:block}.tight{margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--rose);margin:0;font-size:.8rem;font-weight:600}.step-count{color:var(--ink-soft);margin:0;font-size:.85rem;font-weight:600}.optional{font:400 .8rem var(--sans);color:var(--ink-soft);vertical-align:middle}.error{color:var(--danger);font-weight:500}.success{color:#1d6b4f;font-weight:600}.break{word-break:break-all}.stack{flex-direction:column;gap:14px;margin:16px 0;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0;display:flex}.row-between{justify-content:space-between;align-items:center;display:flex}.grow{flex:1}.center-col{text-align:center;flex-direction:column;align-items:center;display:flex}.btn{border:2px solid var(--ink);background:var(--ink);width:100%;min-height:58px;color:var(--white);font:600 1.05rem var(--sans);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;justify-content:center;align-items:center;padding:12px 20px;text-decoration:none;display:flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.55;cursor:default}.btn-outline{background:var(--white);color:var(--ink)}.btn-heart{background:var(--rose);border-color:var(--rose);min-height:64px;font-size:1.15rem}.btn-danger{background:var(--danger);border-color:var(--danger)}.btn-light{background:var(--white);color:var(--ink);border-color:var(--white)}.row .btn{white-space:nowrap;flex:1;width:auto}.link{color:var(--ink);font:500 1rem var(--sans);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:8px 0;text-decoration:underline}.link.danger{color:var(--danger)}.chip{background:var(--ink);color:var(--white);border-radius:999px;padding:6px 14px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}label{flex-direction:column;gap:6px;font-weight:600;display:flex}input,textarea{width:100%;font:400 1.1rem var(--sans);color:var(--ink);border:2px solid var(--line);background:var(--white);border-radius:12px;padding:14px 16px}input:focus,textarea:focus{border-color:var(--ink);outline:none}textarea{resize:vertical}.photo-pick{border:3px dashed var(--sage);background:var(--mint);width:180px;height:180px;color:var(--ink);font:600 1.05rem var(--sans);cursor:pointer;border-radius:50%;margin:0 auto;padding:0;overflow:hidden}.photo-pick img{object-fit:cover;width:100%;height:100%;display:block}.private-box{background:var(--mint);border-radius:var(--radius);flex-direction:column;gap:14px;padding:4px 18px 18px;display:flex}.private-box p{color:var(--ink-soft);margin:0}.private-box h3{margin-bottom:0}.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);margin:18px 0;padding:18px}.event-banner{background:var(--mint);border-radius:var(--radius);text-align:center;margin:4px 0 12px;padding:12px 16px}.event-banner h1{margin:4px 0}.event-banner p:last-child{color:var(--ink-soft);margin:0}.hero{text-align:center;padding:32px 0}.hero .btn{margin-top:24px}.steps{margin:0;padding-left:1.3em;font-size:.93rem}.steps li{margin-bottom:8px}.card-hero{flex-direction:column;align-items:center;gap:12px;margin:8px 0;display:flex}.me-row{align-items:center;gap:14px;width:100%;display:flex}.me-row>div:not(.avatar){flex:1;min-width:0}.qr{background:var(--white);box-sizing:content-box;border-radius:20px;padding:14px;box-shadow:0 4px 20px #013c471a}.qr img{display:block}.badge-chip{background:var(--coral);min-width:52px;color:var(--white);border-radius:12px;justify-content:center;align-items:center;padding:6px 12px;font-size:1.05rem;font-weight:700;display:inline-flex}.avatar{object-fit:cover;background:var(--mint);border-radius:50%;flex-shrink:0}.avatar-empty{color:var(--ink-soft);justify-content:center;align-items:center;display:flex}.badge-picker fieldset{border:none;margin:0 0 12px;padding:0}.badge-picker legend{margin-bottom:8px;font-weight:700}.badge-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.badge-btn{border:2px solid var(--line);background:var(--white);min-height:52px;font:700 1rem var(--sans);color:var(--ink);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:0;display:flex}.badge-btn small{font-size:.7rem;font-weight:500}.badge-btn.selected{background:var(--ink);border-color:var(--ink);color:var(--white)}.badge-btn:disabled{opacity:.4;cursor:default}.sticky-action{padding:12px 0 calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent, var(--paper) 30%);position:sticky;bottom:0}.reveal-banner{background:var(--rose);color:var(--white);border-radius:16px;flex-direction:column;align-items:center;gap:2px;margin:8px 0 4px;padding:14px;text-decoration:none;display:flex}.reveal-banner strong{font:700 1.4rem var(--serif)}.name-card{background:var(--white);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:4px;margin:16px 0 20px;padding:32px 20px 24px;display:flex;box-shadow:0 6px 24px #013c471a}.name-card h1{margin:8px 0 0;font-size:2.4rem}.badge-chip.big{padding:8px 18px;font-size:1.4rem}.profile-card{background:var(--white);border-radius:24px;margin:8px 0 20px;overflow:hidden;box-shadow:0 6px 24px #013c471a}.profile-photo{aspect-ratio:1;object-fit:cover;background:var(--mint);width:100%;display:block}.profile-photo.empty{color:var(--sage);justify-content:center;align-items:center;display:flex}.profile-name{justify-content:space-between;align-items:center;gap:12px;padding:4px 20px 0;display:flex}.bio{margin:0;padding:0 20px 18px}.profile-card .profile-name:last-child{padding-bottom:18px}.sent-box{background:var(--mint);border-radius:var(--radius);padding:16px 18px}.sent-title{margin:0 0 4px;font-size:1.1rem;font-weight:700}.match-banner{background:var(--rose);color:var(--white);border-radius:var(--radius);text-align:center;margin:8px 0 16px;padding:18px}.match-title{font:700 1.8rem var(--serif);margin:0}.quiet-actions{justify-content:center;gap:28px;margin-top:8px;display:flex}.quiet-actions .link{color:var(--ink-soft);font-size:.95rem}.scanner{aspect-ratio:1;background:#0b2a30;border-radius:24px;width:100%;margin:12px 0;position:relative;overflow:hidden}.scanner video{object-fit:cover;width:100%;height:100%;display:block}.match-list,.pending-list,.event-list,.guest-list,.report-list{margin:0;padding:0;list-style:none}.match{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);margin:14px 0;padding:16px}.contact-list{flex-direction:column;gap:8px;margin-top:14px;display:flex}.contact-row{background:var(--mint);word-break:break-word;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:12px 14px;font-weight:600;text-decoration:none;display:flex}.contact-actions{gap:8px;display:flex}.more{margin-top:10px}.more summary{color:var(--ink-soft);cursor:pointer;font-size:.95rem}.pending-list li{align-items:center;gap:12px;padding:8px 0;font-weight:600;display:flex}.queue{background:var(--mint);border-radius:var(--radius);margin:12px 0 18px;padding:16px}.queue-list{flex-direction:column;gap:10px;margin:10px 0 0;padding:0;list-style:none;display:flex}.queue-item{background:var(--white);border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex}.queue-who{align-items:center;gap:12px;font-size:1.15rem;display:flex}.queue-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.answer{border:2px solid var(--ink);min-height:72px;font:600 .95rem var(--sans);cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:2px;display:flex}.answer span{font-size:1.6rem;line-height:1.1}.answer-yes{background:var(--ink);color:var(--white)}.answer-no{background:var(--white);color:var(--ink)}.queue-confirm{flex-direction:column;gap:10px;display:flex}.tabbar{z-index:10;background:var(--white);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.tab{min-height:68px;color:var(--ink-soft);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.85rem;font-weight:600;text-decoration:none;display:flex}.tab-icon{display:flex}.tab.active{color:var(--ink)}.tab.active .tab-icon{color:var(--rose)}.all-set{text-align:center;flex-direction:column;gap:14px;padding:32px 4px;display:flex}.all-set h1{margin:0;font-size:2rem}.build-stamp{text-align:center;color:var(--ink-soft);opacity:.7;margin:0 0 8px;font-size:.7rem}.guests-intro{margin:14px 0 10px}.guest-search{margin-bottom:10px}.guest-list-big{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.guest-row{border-bottom:1px solid var(--line);padding:10px 0}.guest-main{align-items:center;gap:14px;display:flex}.guest-name{text-align:left;min-width:0;font:600 1.15rem var(--sans);color:var(--ink);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 0}.heart{border:2px solid var(--line);background:var(--white);width:56px;height:56px;color:var(--rose);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.7rem;line-height:1;display:flex}.heart.picked{background:var(--rose);border-color:var(--rose);color:var(--white)}.roster-list{flex-direction:column;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.roster-list li{flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:.95rem;display:flex}.danger-zone{border-top:1px solid var(--line);margin-top:28px;padding-top:12px}.event-link{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:2px;margin:10px 0;padding:16px;text-decoration:none;display:flex}.pill{background:var(--line);border-radius:999px;width:fit-content;padding:4px 12px;font-size:.85rem;font-weight:600;display:inline-block}.pill-open{background:var(--sage)}.stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0;display:grid}.stats div{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);text-align:center;flex-direction:column;padding:14px 8px;display:flex}.stats strong{font:700 1.8rem var(--serif)}.stats span{color:var(--ink-soft);font-size:.9rem}.guest-list li{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 0;display:flex}.report-list li{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);margin:10px 0;padding:14px}.report-list li.resolved{opacity:.55}.print-only{display:none}@media print{body{background:#fff}.top,.no-print,.link,.tabbar,.page>h1,.page>p.muted{display:none!important}.print-only{display:block}.print-sheet{border:none;padding-top:60px}.print-sheet h2{font-size:2.4rem}.qr{box-shadow:none}}
