\feff  .activity-pass-included{background:#00b8d91a;color:var(--aqua-blue);font-weight:600;border-radius:var(--radius);padding:.35rem .6rem;font-size:.9rem;display:inline-block;margin-bottom:.5rem}.activity-card-buttons{display:flex;justify-content:center}.activity-card-buttons .btn-primary{background:var(--aqua-blue);color:var(--white);font-weight:600;padding:.5rem 1.25rem;border:none;border-radius:var(--radius);transition:var(--transition)}.activity-card-buttons .btn-primary:hover{background:var(--deep-ocean);transform:translateY(-3px)}.tab{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;text-decoration:none;color:#ffffffbf;font-weight:700;font-size:12px;min-height:44px}.tab svg{opacity:.85}.tab.active svg{opacity:1}.ob-backdrop{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px}.ob-card{width:min(420px,100%);background:#121212f2;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px 16px;box-shadow:0 20px 60px #00000073;position:relative;text-align:center}.ob-skip{position:absolute;top:10px;right:10px;background:transparent;border:none;color:#ffffffb3;font-weight:700;padding:8px 10px;border-radius:10px}.ob-icon{width:56px;height:56px;margin:10px auto 12px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#ffffff14;border:1px solid rgba(255,255,255,.1)}.ob-title{margin:0 0 8px;font-size:20px;line-height:1.2}.ob-body{margin:0 0 14px;color:#fffc;font-size:14px;line-height:1.45}.ob-dots{display:flex;gap:8px;justify-content:center;margin:12px 0 14px}.ob-dot{width:8px;height:8px;border-radius:999px;background:#ffffff2e}.ob-dot.active{background:#ffffffd9}.ob-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ob-btn{border:none;border-radius:12px;padding:12px;font-weight:800;color:#111;background:#fff;min-height:44px}.ob-btn.secondary{background:#ffffff1a;color:#ffffffe6;border:1px solid rgba(255,255,255,.12)}.ob-btn:disabled{opacity:.5}.apphome{display:flex;flex-direction:column;gap:14px}.apphome-header{padding-top:calc(env(safe-area-inset-top) + 6px)}.apphome-kicker{margin:0 0 6px;color:#fffc;font-weight:700;font-size:13px}.apphome-title{margin:0;font-size:22px;line-height:1.2}.apphome-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:14px}.apphome-cardtitle{margin:0 0 6px;font-size:16px}.apphome-muted{margin:0 0 12px;color:#ffffffc7;font-size:13px;line-height:1.35}.apphome-status{text-transform:capitalize}.apphome-btn{width:100%;min-height:46px;border:none;border-radius:14px;font-weight:900;background:#fff;color:#111}.apphome-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.apphome-quickbtn{min-height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#ffffff14;color:#ffffffeb;font-weight:800}.apphome-quickbtn:active,.apphome-btn:active{transform:scale(.99)}.apphome-topspots .topspots-title{font-size:16px}.hero-banner{position:relative;width:100%;height:clamp(260px,55vh,520px);overflow:hidden;display:flex;align-items:flex-end;justify-content:center;color:var(--white);background-color:var(--deep-ocean)}.hero-carousel-slide{position:absolute;inset:0;width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center center;opacity:0;transform:scale(1.03);transition:opacity 1s ease,transform 1.2s ease;filter:brightness(.95)}.hero-carousel-slide.active{opacity:1;transform:scale(1);filter:brightness(1)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#004f6e59,#004f6ecc);z-index:1}.hero-content{position:relative;z-index:2;text-align:left;padding:1.75rem 2.25rem;max-width:900px;width:100%;animation:fadeInUp 1s ease both}.hero-content h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:.75rem;font-weight:800;text-shadow:0 3px 8px rgba(0,0,0,.4)}.hero-content p{font-size:1.1rem;line-height:1.6;margin-bottom:1.2rem;opacity:.96}.hero-dots{position:absolute;bottom:1.25rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem;z-index:3}.hero-dot{width:10px;height:10px;border-radius:50%;background:#ffffff80;border:none;transition:var(--transition);cursor:pointer}.hero-dot.active{background:var(--white);transform:scale(1.2)}.hero-button{background:linear-gradient(90deg,var(--aqua-blue),var(--sunset-coral))}@media(max-width:768px){.hero-banner{height:clamp(220px,45vh,380px);align-items:center}.hero-content{text-align:center;padding:1.25rem 1.5rem}.hero-content h1{font-size:1.8rem}.hero-content p{font-size:.98rem}}:root{--nav-font: "Inter", sans-serif}.navbar-classic{position:sticky;top:0;width:100%;z-index:50;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;transition:background .3s ease,box-shadow .3s ease,backdrop-filter .3s ease;font-family:var(--nav-font)}.navbar-classic.navbar--scrolled{background:#004f6eeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 18px #00000038}.navbar-inner{max-width:1250px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.navbar-logo{display:flex;align-items:center;gap:.75rem;border:none;background:none;cursor:pointer}.navbar-logo-img,.navbar-logo img{height:54px;width:auto;filter:drop-shadow(0 2px 3px rgba(0,0,0,.25));border-radius:6px}.navbar-brand-text{font-size:1.25rem;font-weight:700;letter-spacing:.03em;color:#000}.navbar-center{display:flex;align-items:center;gap:2rem;justify-content:center;flex:1}.nav-link{font-family:var(--nav-font);font-size:1rem;font-weight:500;color:#000;text-decoration:none;position:relative;transition:.25s ease}.nav-link:after{content:"";position:absolute;left:0;bottom:-4px;height:2px;width:0;border-radius:2px;background:var(--aqua-blue);transition:width .25s ease}.nav-link:hover{color:#fff}.nav-link:hover:after{width:100%}.nav-link--primary{color:var(--aqua-blue);font-weight:600}.nav-link--primary:hover{color:var(--white)}.navbar-right,.nav-auth-group{display:flex;align-items:center;gap:1rem}.nav-cta-pill{background:none;border:2px solid var(--aqua-blue);color:var(--aqua-blue);padding:.4rem 1rem;border-radius:8px;font-family:var(--nav-font);font-weight:600;cursor:pointer;transition:.25s ease}.nav-cta-pill:hover{background:var(--aqua-blue);color:#fff;border-color:var(--aqua-blue)}.nav-logout-btn{border-color:var(--sunset-coral);color:var(--sunset-coral)}.nav-logout-btn:hover{background:var(--sunset-coral);color:#fff}@media(max-width:768px){.navbar-center{display:none}.navbar-logo-img,.navbar-logo img{height:44px}.navbar-brand-text{font-size:1.05rem}.nav-auth-group{gap:.5rem}.nav-cta-pill{padding:.35rem .8rem;font-size:.85rem}}.topspots-section{padding:3rem 1.5rem;background:var(--sand-beige);text-align:center;animation:fadeInUp .8s ease-out}.topspots-title{font-size:1.8rem;color:var(--deep-ocean);margin-bottom:2rem;position:relative}.topspots-title:after{content:"";display:block;width:60px;height:4px;background:var(--aqua-blue);margin:.5rem auto 0;border-radius:2px}.topspots-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;justify-items:center}.topspot-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:var(--transition);cursor:pointer;width:100%;max-width:300px;animation:fadeInUp .6s ease-out}.topspot-card:hover{transform:translateY(-6px);box-shadow:0 6px 16px #00000026}.topspot-image-wrapper{overflow:hidden;border-bottom:3px solid var(--aqua-blue)}.topspot-image{width:100%;height:200px;object-fit:cover;transition:transform .5s ease}.topspot-card:hover .topspot-image{transform:scale(1.08)}.topspot-content{padding:1rem}.topspot-content h4{margin-bottom:.3rem;color:var(--deep-ocean)}.topspot-location{color:var(--aqua-blue);font-weight:600;font-size:.95rem}.topspot-visits{margin-top:.4rem;color:var(--sunset-coral);font-weight:500}.topspots-loading,.topspots-empty{text-align:center;color:#0009;padding:2rem 0}@media(max-width:600px){.topspots-title{font-size:1.4rem}.topspot-image{height:160px}}.trip-sidebar{position:fixed;top:0;right:-320px;width:320px;height:100vh;background:#ffffff40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:2px solid rgba(255,255,255,.4);box-shadow:-4px 0 20px #0000001a;transition:right .4s ease-in-out;z-index:1000;display:flex;flex-direction:column;animation:fadeInUp .8s ease-out}.trip-sidebar.open{right:0}.sidebar-toggle{position:absolute;top:50%;left:-32px;transform:translateY(-50%);background:var(--aqua-blue);color:var(--white);border:none;border-radius:8px 0 0 8px;padding:6px;cursor:pointer;box-shadow:var(--shadow);transition:var(--transition)}.sidebar-toggle:hover{background:var(--deep-ocean);transform:translateY(-50%) scale(1.05)}.trip-sidebar-inner{padding:1.5rem;color:var(--deep-ocean);overflow-y:auto;flex:1}.trip-sidebar-inner h3{text-align:center;margin-bottom:1rem;color:var(--deep-ocean)}.sidebar-empty{text-align:center;color:#0009}.sidebar-list{list-style:none;padding:0;margin:0}.sidebar-item{display:flex;justify-content:space-between;align-items:center;background:#ffffffb3;border-radius:var(--radius);padding:.6rem .8rem;margin-bottom:.6rem;box-shadow:var(--shadow)}.sidebar-item strong{color:var(--aqua-blue)}.sidebar-remove{background:none;border:none;color:var(--sunset-coral);font-size:1.25rem;cursor:pointer;transition:var(--transition)}.sidebar-remove:hover{transform:scale(1.15);color:var(--deep-ocean)}.sidebar-summary{border-top:1px solid rgba(0,0,0,.1);margin-top:1rem;padding-top:1rem;font-weight:500}.sidebar-checkout{width:100%;margin-top:1.5rem}@media(max-width:600px){.trip-sidebar{width:100%;right:-100%}.trip-sidebar.open{right:0}.sidebar-toggle{left:auto;right:10px;top:10px;border-radius:8px;transform:none}}.activity-card{background:var(--sand-beige);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;width:300px;transition:var(--transition);display:flex;flex-direction:column;animation:fadeInUp .6s ease-out}.activity-card-img{width:100%;height:180px;object-fit:cover}.activity-card-content{padding:1rem;flex:1;display:flex;flex-direction:column;justify-content:space-between}.activity-card h3{color:var(--deep-ocean);margin-bottom:.3rem}.activity-location{color:var(--aqua-blue);font-weight:600;margin-bottom:.3rem}.activity-pricing{font-size:.9rem;margin-bottom:.75rem;color:var(--deep-ocean)}.activity-duration{color:var(--sunset-coral);font-weight:500}.activity-card-buttons{display:flex;justify-content:space-between;gap:.5rem}.btn-primary,.btn-secondary{flex:1;padding:.5rem .8rem;font-size:.9rem;border:none;border-radius:var(--radius);cursor:pointer;transition:var(--transition);font-weight:600}.btn-primary{background:var(--aqua-blue);color:var(--white)}.btn-secondary{background:var(--white);color:var(--deep-ocean);border:2px solid var(--aqua-blue)}.btn-secondary:hover{background:var(--sunset-coral);color:var(--white);border-color:var(--sunset-coral)}@media(max-width:700px){.activity-card{width:100%;max-width:350px}.activity-card-buttons{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.modal-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:999999;pointer-events:auto;animation:modalFadeIn .22s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.activity-modal{background:#ffffffeb;border:1px solid rgba(0,0,0,.08);border-radius:18px;box-shadow:0 20px 60px #00000038;width:min(640px,calc(100vw - 28px));max-height:calc(100vh - 90px);overflow:auto;padding:18px 18px 16px;position:relative;color:var(--deep-ocean);animation:modalPop .22s ease-out}@keyframes modalPop{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-close{position:absolute;top:10px;right:10px;width:38px;height:38px;border-radius:12px;border:1px solid rgba(0,0,0,.1);background:#ffffffbf;color:var(--deep-ocean);font-size:20px;font-weight:900;cursor:pointer;transition:transform .14s ease,background .14s ease,color .14s ease}.modal-close:hover{background:#fffffff2;color:var(--sunset-coral);transform:scale(1.05)}.modal-image{width:100%;height:190px;object-fit:cover;border-radius:16px;margin-bottom:12px;box-shadow:0 10px 22px #0000001f}.modal-location{margin-top:6px;opacity:.8;font-weight:700}.modal-description{margin-top:10px;line-height:1.5;opacity:.92}.modal-info{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.1);display:grid;gap:8px}.discover-page,.activity-grid,.activity-card{overflow:visible}.category-tabs{display:flex;justify-content:center;align-items:center;gap:.75rem;flex-wrap:wrap;padding:1rem;background:var(--sand-beige);border-radius:var(--radius);animation:fadeInUp .8s ease-out}.category-tab{background:var(--white);color:var(--deep-ocean);border:2px solid var(--aqua-blue);border-radius:50px;padding:.6rem 1.2rem;font-weight:500;font-size:.95rem;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow);position:relative}.category-tab:hover{background:var(--aqua-blue);color:var(--white);transform:translateY(-2px)}.category-tab.active{background:var(--aqua-blue);color:var(--white);border-color:var(--aqua-blue);font-weight:600}.category-tab.active:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:40%;height:3px;background:var(--sunset-coral);border-radius:2px;animation:fadeInUp .4s ease-out}@media(max-width:600px){.category-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:.75rem}.category-tab{flex:0 0 auto;padding:.5rem 1rem;font-size:.9rem}}.destination-search{width:100%;background:linear-gradient(90deg,var(--aqua-blue),var(--deep-ocean));color:var(--white);text-align:center;padding:2rem 1rem;box-shadow:var(--shadow);border-radius:0 0 var(--radius) var(--radius);animation:fadeInUp .8s ease-out}.destination-inner{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1rem;font-weight:500;font-size:1.05rem}.destination-inner label{font-weight:600;letter-spacing:.5px}.destination-select{background:var(--white);color:var(--deep-ocean);padding:.6rem 1rem;border:none;border-radius:var(--radius);font-size:1rem;box-shadow:var(--shadow);transition:var(--transition);cursor:pointer}.destination-select:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.destination-select:focus{outline:2px solid var(--sunset-coral)}@media(max-width:600px){.destination-search{padding:1.5rem .5rem}.destination-inner{flex-direction:column;gap:.75rem;font-size:1rem}}.footer{background:var(--deep-ocean);color:var(--white);padding:2rem 1rem;text-align:center;border-top:4px solid var(--aqua-blue);animation:fadeInUp .8s ease-out}.footer-inner{max-width:900px;margin:0 auto}.footer-links a{color:var(--white);text-decoration:none;margin:0 .3rem;transition:color .3s ease}.footer-links a:hover{color:var(--sunset-coral)}@media(max-width:600px){.footer{font-size:.85rem;padding:1.5rem .5rem}}.why-choose{background:linear-gradient(180deg,var(--sand-beige),var(--white));text-align:center;padding:4rem 2rem;opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.why-choose.visible{opacity:1;transform:translateY(0)}.why-choose h2{font-size:clamp(1.8rem,3vw,2.4rem);color:var(--deep-ocean);margin-bottom:2rem;font-weight:800}.why-choose-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.why-card{background:var(--white);border-radius:16px;padding:2rem;width:300px;box-shadow:0 8px 20px #004f6e1a;transition:transform .4s ease,box-shadow .4s ease;opacity:0;transform:translateY(30px)}.why-card.visible{opacity:1;transform:translateY(0)}.why-card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 12px 24px #004f6e33}.why-card h3{color:var(--aqua-blue);font-size:1.4rem;margin-bottom:.5rem}.why-card p{color:#004f6ecc;font-size:1rem;line-height:1.6}.how-it-works{background:var(--app-bg, #fbf7ee);color:var(--deep-ocean);text-align:center;padding:4rem 1.25rem;position:relative;opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}.how-it-works.visible{opacity:1;transform:translateY(0)}.how-it-works:before{content:"";position:absolute;left:0;right:0;top:0;height:140px;pointer-events:none;background:radial-gradient(1000px 220px at 50% 0%,#00b8d91f,#fbf7ee00 70%)}.how-it-works h2{font-size:clamp(1.9rem,3vw,2.4rem);margin-bottom:.75rem;font-weight:900;letter-spacing:-.02em}.how-it-works .howitworks-subtitle{max-width:680px;margin:0 auto 2.25rem;color:#004f6ec7;font-weight:600;line-height:1.45}.how-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:980px;margin:0 auto 1.75rem}@media(max-width:860px){.how-steps{grid-template-columns:1fr;gap:.9rem}}.step{background:var(--app-surface-2, rgba(255,255,255,.92));border:1px solid var(--app-border, rgba(0, 79, 110, .14));border-radius:18px;padding:1.25rem 1.15rem;box-shadow:0 10px 28px #00000014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .35s ease,box-shadow .35s ease,opacity .6s ease;opacity:0;transform:translateY(18px)}.step.visible{opacity:1;transform:translateY(0)}.step:hover{transform:translateY(-4px);box-shadow:0 16px 38px #0000001f}.step-number{width:44px;height:44px;display:grid;place-items:center;margin:0 auto .65rem;border-radius:14px;background:#00b8d91f;color:var(--deep-ocean);font-weight:900;font-size:1.25rem}.step h3{font-size:1.15rem;margin:0 0 .35rem;font-weight:900;color:var(--deep-ocean)}.step p{font-size:.98rem;margin:0;color:#004f6ec7;line-height:1.45}.get-started-btn{background:linear-gradient(90deg,var(--sunset-coral),var(--aqua-blue));border:none;border-radius:14px;padding:.95rem 2.1rem;color:var(--white);font-weight:900;letter-spacing:.01em;box-shadow:0 14px 28px #00000024;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.get-started-btn:hover{transform:translateY(-2px);box-shadow:0 18px 34px #0000002e;filter:saturate(1.05)}.how-it-works-page{padding:18px 14px calc(96px + env(safe-area-inset-bottom))}.how-it-works-page__inner{max-width:1120px;margin:0 auto}.how-it-works-page__topbar{display:flex;align-items:center;gap:12px;margin:4px 0 14px}.how-it-works-page__back{border:1px solid var(--app-border, rgba(0, 79, 110, .18));background:var(--app-surface, rgba(255,255,255,.78));border-radius:14px;padding:.5rem .75rem;font-weight:900;color:var(--deep-ocean);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.how-it-works-page__back:hover{transform:translateY(-1px);box-shadow:0 10px 24px #0000001a}.how-it-works-page__title{margin:0;font-size:1.35rem;font-weight:1000;letter-spacing:-.02em;color:var(--deep-ocean)}.how-it-works-page__card{border:1px solid var(--app-border, rgba(0, 79, 110, .16));background:var(--app-surface, rgba(255,255,255,.78));border-radius:22px;padding:14px;box-shadow:0 14px 40px #0000001a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.how-it-works-page .how-it-works{border-radius:18px;padding:2.2rem 1.25rem;overflow:hidden;box-shadow:none}to{opacity:1;transform:translateY(0)}@media(max-width:768px){.why-choose-grid,.how-steps{flex-direction:column;align-items:center}.why-card,.step{width:90%;padding:1.5rem}.why-choose h2,.how-it-works h2{font-size:1.8rem}.get-started-btn{width:80%;padding:1rem}}.passes-page{width:100%;max-width:1120px;margin-left:auto;margin-right:auto;box-sizing:border-box;padding:20px 16px calc(96px + env(safe-area-inset-bottom));min-height:70vh;display:flex;flex-direction:column;gap:14px;background:radial-gradient(900px 520px at 12% -10%,rgba(0,184,217,.12),transparent 55%),radial-gradient(900px 520px at 92% 10%,rgba(255,107,107,.08),transparent 60%),linear-gradient(180deg,#fff0,#fff0)}.passes-header{text-align:center;margin:4px 0;padding:10px 12px 6px}.passes-header h1{font-size:clamp(1.9rem,3.3vw,2.5rem);color:var(--deep-ocean);margin:0 0 6px;font-weight:950;letter-spacing:-.2px;line-height:1.05}.passes-header p{margin:0 auto;max-width:56ch;font-size:1.02rem;color:#000000a8;line-height:1.35;font-weight:750}.passes-grid{width:100%;max-width:880px;margin-left:auto;margin-right:auto;display:grid;grid-template-columns:1fr;gap:14px;align-items:start;box-sizing:border-box}@media(min-width:980px){.passes-grid{max-width:920px}}.pass-card{width:100%;position:relative;overflow:hidden;border-radius:20px;background:#ffffffb8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(0,0,0,.07);box-shadow:0 16px 48px #004f6e1a,0 2px 10px #0000000f;padding:16px;color:var(--deep-ocean);transform:translateZ(0);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.pass-card:before{content:"";position:absolute;inset:-2px;background:radial-gradient(500px 120px at 18% 0%,rgba(0,184,217,.14),transparent 70%),radial-gradient(420px 120px at 82% 0%,rgba(255,107,107,.1),transparent 72%);pointer-events:none;opacity:.9}.pass-card:after{content:"";position:absolute;left:10px;right:10px;bottom:10px;height:26px;border-radius:999px;background:linear-gradient(90deg,#00b8d914,#ff6b6b0f);filter:blur(14px);opacity:.65;pointer-events:none}@media(hover:hover){.pass-card:hover{transform:translateY(-2px);border-color:#004f6e1f;box-shadow:0 20px 60px #004f6e24,0 3px 12px #00000014}}.pass-card h2{margin:0 0 6px;font-size:1.2rem;font-weight:950;letter-spacing:-.15px}.pass-duration{font-weight:900;font-size:.92rem;opacity:.9;margin:0 0 10px}.pass-description{font-size:.95rem;line-height:1.55;opacity:.92;margin:0 0 12px;font-weight:650}.pass-meta{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.pass-meta-label{font-size:12px;font-weight:900;opacity:.7}.pass-meta-val{font-weight:900;word-break:break-word}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.pass-qr-wrap{display:grid;place-items:center;padding:12px 0 10px}.pass-qr-caption{margin-top:8px;text-align:center;font-weight:850;font-size:13px;opacity:.8}.passes-page .app-btn{border-radius:16px;font-weight:950;letter-spacing:.1px;min-height:46px;transition:transform .14s ease,filter .14s ease,box-shadow .18s ease}.passes-page .app-btn:active{transform:scale(.985)}.passes-page .app-btn.accent{background:linear-gradient(180deg,#00b8d9,#00b8d9d9);color:#031016;box-shadow:0 14px 30px #00b8d92e}.passes-page .app-btn.secondary{background:#ffffff94;border:1px solid rgba(0,0,0,.08);color:var(--deep-ocean);box-shadow:0 10px 24px #004f6e14}.passes-field{display:grid;gap:6px;margin-bottom:12px}.passes-field select,.passes-field input[type=date]{min-height:46px;border-radius:16px;padding:10px 12px;background:#ffffffc7;border:1px solid rgba(0,0,0,.1);color:var(--deep-ocean);font-weight:850;outline:none;transition:box-shadow .16s ease,border-color .16s ease}.passes-field select:focus,.passes-field input[type=date]:focus{border-color:#00b8d98c;box-shadow:0 0 0 4px #00b8d929}.passes-actions{margin-top:12px;display:grid;gap:10px}.purchase-panel{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.08)}@media(prefers-reduced-motion:reduce){.pass-card,.passes-page .app-btn{transition:none!important;animation:none!important}}.app-shell{min-height:100vh}.app-main{padding:16px;padding-bottom:calc(72px + env(safe-area-inset-bottom))}.page-center{min-height:100vh;display:flex;align-items:center;justify-content:center}.tabbar{position:fixed;left:0;right:0;bottom:0;height:64px;padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);background:#0a0a0aeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.08);z-index:9999}.tab{display:flex;align-items:center;justify-content:center;text-decoration:none;color:#ffffffbf;font-weight:700;font-size:14px;min-height:44px}.app-shell{min-height:100vh;background:#0b0b0f;color:#fff}.app-main{padding:16px;padding-bottom:calc(86px + env(safe-area-inset-bottom))}.app-header{display:flex;align-items:flex-end;justify-content:space-between;padding-top:calc(env(safe-area-inset-top) + 6px);padding-bottom:12px}.app-header-left{display:flex;gap:10px;align-items:center}.app-header-title{margin:0;font-size:22px;line-height:1.1}.app-header-subtitle{margin:6px 0 0;color:#ffffffb8;font-size:13px}.app-header-back{width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#ffffffeb;font-weight:900}.app-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:14px}.app-muted{color:#ffffffbd;font-size:13px;line-height:1.35}.app-btn{width:100%;min-height:46px;border:none;border-radius:14px;font-weight:900;background:#fff;color:#111}.app-btn.secondary{background:#ffffff1a;color:#ffffffeb;border:1px solid rgba(255,255,255,.12)}.app-btn:active{transform:scale(.99)}.app-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.app-chip{min-height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#ffffff14;color:#ffffffeb;font-weight:800}.tabbar{position:fixed;left:0;right:0;bottom:0;height:72px;padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);background:#0a0a0ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.08);z-index:9999}.tab{position:relative;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;text-decoration:none;color:#ffffffb3;min-height:44px;font-weight:800;font-size:12px}.tab-icon{opacity:.85}.tab-label{letter-spacing:.2px}.tab-active-pill{position:absolute;bottom:7px;width:26px;height:3px;border-radius:999px;background:transparent}.tab.active{color:#fff}.tab.active .tab-icon{opacity:1}.tab.active .tab-active-pill{background:#ffffffe6}body.bbp-native{--app-bg: #fbf7ee;--app-bg-2: #f2ead8;--app-surface: rgba(255,255,255,.78);--app-surface-2: rgba(255,255,255,.92);--app-border: rgba(0,79,110,.12);--app-text: #003a53;--app-muted: rgba(0,58,83,.62);--app-accent: var(--aqua-blue, #00B8D9);--app-accent-2: rgba(0,184,217,.18);--app-danger: var(--sunset-coral, #FF6B6B);--bg: var(--app-bg);--surface: var(--app-surface);--surface-2: var(--app-surface-2);--border: var(--app-border);--text: var(--app-text);--muted: var(--app-muted);background:radial-gradient(900px 420px at 50% -140px,#00b8d938,#00b8d900 62%),radial-gradient(600px 420px at 20% 20%,#ff6b6b14,#ff6b6b00 55%),linear-gradient(180deg,var(--app-bg),var(--app-bg-2));color:var(--app-text)}body.bbp-native .home-container,body.bbp-native .discover-page,body.bbp-native .passes-page,body.bbp-native .account-page{background:transparent!important}body.bbp-native .app-shell{min-height:100vh;background:transparent;color:var(--app-text)}body.bbp-native .app-main{padding:0 16px 14px;padding-bottom:calc(90px + env(safe-area-inset-bottom))}body.bbp-native .app-card,body.bbp-native .apphome-card,body.bbp-native .activity-card,body.bbp-native .pass-card,body.bbp-native .modal-content,body.bbp-native .auth-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:18px;box-shadow:0 14px 40px #004f6e1f}body.bbp-native .app-muted,body.bbp-native .apphome-muted,body.bbp-native .muted,body.bbp-native .subtext{color:var(--app-muted)}body.bbp-native .app-btn,body.bbp-native .apphome-btn,body.bbp-native .btn-primary,body.bbp-native button.primary{width:100%;min-height:46px;border:0;border-radius:14px;font-weight:900;cursor:pointer;background:linear-gradient(180deg,#fff,#ffffffe6);color:#031016;box-shadow:0 12px 28px #004f6e24;transition:transform .14s ease,filter .14s ease}body.bbp-native .app-btn:active,body.bbp-native .apphome-btn:active,body.bbp-native .btn-primary:active{transform:scale(.985)}body.bbp-native .app-btn.secondary,body.bbp-native .btn-secondary,body.bbp-native button.secondary{background:#fff9;color:var(--app-text);border:1px solid var(--app-border);box-shadow:none}body.bbp-native .app-btn.accent{background:linear-gradient(180deg,#00b8d9,#00b8d9db);color:#031016}body.bbp-native input,body.bbp-native select,body.bbp-native textarea{background:#ffffffd9;border:1px solid var(--app-border);color:var(--app-text);border-radius:14px;padding:12px;outline:none}body.bbp-native input::placeholder,body.bbp-native textarea::placeholder{color:#003a5373}body.bbp-native input:focus,body.bbp-native select:focus,body.bbp-native textarea:focus{border-color:#00b8d98c;box-shadow:0 0 0 4px #00b8d924}body.bbp-native .app-header{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding-top:calc(max(env(safe-area-inset-top),12px) + 18px);padding-bottom:10px;background:#ffffffb8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--app-border)}body.bbp-native .app-header-title{margin:0;font-size:20px;line-height:1.1;letter-spacing:.2px;text-align:center;color:var(--app-text)}body.bbp-native .app-header-subtitle{margin:6px 0 0;color:var(--app-muted);font-size:13px;line-height:1.3;text-align:center}body.bbp-native .app-header-back{width:38px;height:38px;border-radius:14px;border:1px solid var(--app-border);background:#ffffffb3;color:var(--app-text);font-weight:900;transition:transform .14s ease,background .14s ease}body.bbp-native .app-header-back:active{transform:scale(.96);background:#ffffffeb}body.bbp-native .tabbar{position:fixed;left:0;right:0;bottom:0;height:74px;padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);background:#ffffffbd;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--app-border);z-index:9999}body.bbp-native .tabbar .tab{position:relative;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;text-decoration:none;color:#003a5399;min-height:44px;font-weight:850;font-size:12px}body.bbp-native .tabbar .tab-icon{opacity:.88}body.bbp-native .tabbar .tab-label{letter-spacing:.2px}body.bbp-native .tabbar .tab-active-pill{position:absolute;bottom:7px;width:26px;height:3px;border-radius:999px;background:transparent}body.bbp-native .tabbar .tab.active{color:var(--app-text)}body.bbp-native .tabbar .tab.active .tab-icon{opacity:1;filter:drop-shadow(0 6px 14px rgba(0,184,217,.18))}body.bbp-native .tabbar .tab.active .tab-active-pill{background:var(--app-accent);box-shadow:0 10px 26px #00b8d938}body.bbp-native .topspots-section{padding:10px 0 2px;background:transparent;text-align:left}body.bbp-native .topspots-title{font-size:16px;margin:12px 16px 10px;color:var(--app-text)}body.bbp-native .topspots-title:after{display:none}body.bbp-native .topspots-grid{display:flex;gap:12px;overflow-x:auto;padding:0 16px 10px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}body.bbp-native .topspots-grid::-webkit-scrollbar{display:none}body.bbp-native .topspot-card{flex:0 0 78%;max-width:320px;scroll-snap-align:start;background:var(--app-surface);border:1px solid var(--app-border);border-radius:18px;box-shadow:0 14px 40px #004f6e1f}body.bbp-native .discover-page{padding:0;min-height:auto}body.bbp-native .discover-header{text-align:left;margin:10px auto;max-width:720px;padding:0 16px}body.bbp-native .discover-header h1{font-size:18px;margin:0 0 6px;color:var(--app-text)}body.bbp-native .discover-header p{margin:0;color:var(--app-muted);font-size:13px}body.bbp-native .discover-filters{margin:10px auto 14px;max-width:720px;padding:12px;background:#ffffffbd;border:1px solid var(--app-border);border-radius:18px;box-shadow:0 14px 40px #004f6e1f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}body.bbp-native .destination-search{background:transparent;color:var(--app-text);padding:0;box-shadow:none;border-radius:0;text-align:left}body.bbp-native .destination-inner{justify-content:flex-start;gap:10px;font-size:13px}body.bbp-native .destination-inner label{font-weight:700;color:var(--app-muted);letter-spacing:0}body.bbp-native .destination-select{height:40px;border-radius:999px;border:1px solid var(--app-border);background:#ffffffe6;color:var(--app-text);padding:0 14px;outline:none}body.bbp-native .category-tabs{margin-top:10px;padding:0;background:transparent;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:8px;-webkit-overflow-scrolling:touch}body.bbp-native .category-tabs::-webkit-scrollbar{display:none}body.bbp-native .category-tab{border-radius:999px;border:1px solid var(--app-border);background:#ffffffc7;color:var(--app-text);box-shadow:none;padding:9px 12px;font-size:13px;white-space:nowrap}body.bbp-native .category-tab.active{background:var(--app-accent);border-color:#00b8d959;color:#fff}body.bbp-native .activity-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;overflow:visible!important;padding:0 16px!important;margin:0 auto!important;max-width:720px!important;scroll-snap-type:none!important}@media(min-width:520px){body.bbp-native .activity-grid{grid-template-columns:1fr 1fr!important}}body.bbp-native .activity-card{width:auto!important;background:var(--app-surface)!important;border:1px solid var(--app-border)!important;border-radius:18px!important;box-shadow:0 14px 40px #004f6e1f!important;overflow:hidden;transform:translateZ(0)}body.bbp-native .activity-card:hover{transform:none!important;box-shadow:0 14px 40px #004f6e1f!important}body.bbp-native .activity-card-img{height:150px!important;border-radius:18px 18px 0 0!important}body.bbp-native .activity-card-content{padding:12px!important}body.bbp-native .activity-duration{color:var(--app-muted)!important}body.bbp-native .passes-page{background:transparent;padding:0;min-height:auto}body.bbp-native .passes-header{text-align:left;margin:10px auto 12px;max-width:720px;padding:0 16px}body.bbp-native .passes-header h1{font-size:18px;margin:0 0 6px;color:var(--app-text)}body.bbp-native .passes-header p{margin:0;color:var(--app-muted);font-size:13px}body.bbp-native .passes-grid{display:grid;grid-template-columns:1fr;gap:12px;overflow:visible;padding:0 16px;margin:0 auto;max-width:720px;scroll-snap-type:none}body.bbp-native .pass-card{width:100%;text-align:left;background:var(--app-surface);border:1px solid var(--app-border);border-top:0;border-radius:18px;box-shadow:0 14px 40px #004f6e1f;padding:14px}body.bbp-native .pass-card h2{color:var(--app-text)}body.bbp-native .pass-duration,body.bbp-native .pass-description{color:var(--app-muted)}body.bbp-native .modal-overlay,body.bbp-native .ob-backdrop{background:#00141c59;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}body.bbp-native .modal-content,body.bbp-native .ob-card{background:#ffffffe0;border:1px solid var(--app-border);color:var(--app-text)}@media(prefers-reduced-motion:reduce){body.bbp-native *{transition:none!important;animation:none!important}}body.bbp-native .ob-card,body.bbp-native .ob-card *{color:var(--app-text)!important}body.bbp-native .ob-card .muted,body.bbp-native .ob-card .subtext{color:var(--app-muted)!important}body.bbp-native .passes-grid{margin:0 auto!important;max-width:720px!important;padding:0 16px!important}body.bbp-native .pass-card{margin:0 auto!important;width:100%!important}body.bbp-native .pass-card img{box-shadow:0 14px 40px #004f6e1a}:root{--bbp-radius-xl: 18px;--bbp-radius-lg: 14px;--bbp-radius-md: 12px;--bbp-shadow-soft: 0 14px 40px rgba(0,79,110,.1);--bbp-shadow-glow: 0 12px 32px rgba(0,184,217,.18);--bbp-ease: cubic-bezier(.2,.8,.2,1)}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.auth-shell button,.settings-shell button,.auth-shell a,.settings-shell a{-webkit-tap-highlight-color:transparent}.auth-shell{max-width:520px;margin:0 auto;padding:18px 16px 28px}body.bbp-native .auth-shell{padding-top:calc(env(safe-area-inset-top) + 14px);padding-bottom:calc(env(safe-area-inset-bottom) + 96px)}.auth-hero{text-align:center;padding:14px 10px 10px}body.bbp-native .auth-hero{text-align:left;padding:6px 2px 10px}.auth-title{margin:6px 0;font-size:22px;line-height:1.15;letter-spacing:.2px}.auth-subtitle{margin:0 auto;max-width:44ch;font-size:13px;opacity:.78;line-height:1.35}.auth-card{margin-top:12px;border-radius:var(--bbp-radius-xl);padding:14px;background:#ffffffc7;border:1px solid rgba(0,79,110,.12);box-shadow:var(--bbp-shadow-soft)}body.bbp-native .auth-card{background:#ffffff14;border:1px solid rgba(255,255,255,.12);box-shadow:none}.auth-form{display:grid;gap:12px}.auth-label{display:grid;gap:6px;font-weight:900;font-size:13px;color:#003a53e0}body.bbp-native .auth-label{color:#ffffffdb}.auth-input{height:48px;border-radius:var(--bbp-radius-lg);border:1px solid rgba(0,79,110,.14);background:#ffffffc7;padding:0 12px;outline:none;font-weight:850;transition:box-shadow .16s var(--bbp-ease),border-color .16s var(--bbp-ease),transform .16s var(--bbp-ease)}body.bbp-native .auth-input{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#ffffffeb}.auth-input::placeholder{opacity:.65}.auth-input:focus{border-color:#00b8d98c;box-shadow:0 0 0 4px #00b8d924}.auth-primary{height:50px;border-radius:var(--bbp-radius-lg);border:0;cursor:pointer;font-weight:950;color:#031016;background:linear-gradient(180deg,#00b8d9,#00b8d9db);box-shadow:var(--bbp-shadow-glow);transition:transform .14s var(--bbp-ease),filter .14s var(--bbp-ease),box-shadow .14s var(--bbp-ease)}.auth-primary:active{transform:scale(.99)}.auth-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.auth-row{display:flex;gap:10px;justify-content:center;align-items:center;font-size:13px;opacity:.92;margin-top:2px}body.bbp-native .auth-row{justify-content:flex-start}.auth-dot{opacity:.45}.auth-link,.auth-linkbtn{font-weight:950;text-decoration:underline;color:#003a53eb}body.bbp-native .auth-link,body.bbp-native .auth-linkbtn{color:#ffffffeb}.auth-linkbtn{border:0;background:transparent;cursor:pointer;padding:0}.auth-msg{padding:10px 12px;border-radius:var(--bbp-radius-lg);border:1px solid rgba(0,79,110,.12);background:#ffffffb8;font-weight:900;text-align:center}body.bbp-native .auth-msg{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#ffffffe6}.auth-legal{text-align:center;font-size:12px;opacity:.65;margin:12px 0 0}.auth-danger{width:100%;height:50px;border-radius:var(--bbp-radius-lg);border:1px solid rgba(255,107,107,.22);background:#ff6b6b1f;color:#ff6b6bfa;font-weight:950;cursor:pointer;transition:transform .14s var(--bbp-ease)}.auth-danger:active{transform:scale(.99)}.settings-shell{max-width:880px;margin:0 auto;padding:18px 16px 28px}body.bbp-native .settings-shell{padding-top:calc(env(safe-area-inset-top) + 12px);padding-bottom:calc(env(safe-area-inset-bottom) + 96px)}.settings-hero{text-align:center;padding:10px 8px 8px}body.bbp-native .settings-hero{text-align:left}.settings-h1{margin:0;font-size:22px;line-height:1.2}.settings-sub{margin:6px 0 0;opacity:.72;font-size:13px}.settings-card{margin-top:12px;border-radius:var(--bbp-radius-xl);padding:14px;background:#ffffffc7;border:1px solid rgba(0,79,110,.12);box-shadow:var(--bbp-shadow-soft)}body.bbp-native .settings-card{background:#ffffff14;border:1px solid rgba(255,255,255,.12);box-shadow:none}.settings-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.settings-title{font-weight:950;font-size:16px}.settings-badge{font-size:12px;font-weight:950;padding:8px 10px;border-radius:999px;border:1px solid rgba(0,79,110,.12);background:#ffffffa6}body.bbp-native .settings-badge{border:1px solid rgba(255,255,255,.12);background:#ffffff1a;color:#ffffffeb}.settings-badge.active{box-shadow:0 10px 26px #00b8d91f}.settings-badge.expired{opacity:.72}.settings-badge.scheduled{opacity:.85}.settings-badge.idle{opacity:.68}.settings-list{margin-top:10px;display:grid;gap:10px}.settings-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:var(--bbp-radius-lg);border:1px solid rgba(0,79,110,.12);background:#ffffff9e;text-align:left}body.bbp-native .settings-item{border:1px solid rgba(255,255,255,.12);background:#ffffff0f}.settings-item.btnlike{cursor:pointer;transition:transform .14s var(--bbp-ease),filter .14s var(--bbp-ease)}.settings-item.btnlike:active{transform:scale(.995)}.settings-item-left{display:grid;gap:4px}.settings-item-title{font-weight:950}.settings-item-sub{font-size:12.5px;opacity:.74}.settings-item-right{font-weight:900;opacity:.75}.settings-chevron{font-weight:950;opacity:.55;font-size:18px}.pass-panel{margin-top:12px;display:grid;grid-template-columns:1fr 280px;gap:12px;align-items:start}@media(max-width:720px){.pass-panel{grid-template-columns:1fr}}.pass-name{font-weight:950;font-size:16px;margin-bottom:8px}.pass-meta{display:grid;gap:10px;margin-bottom:12px}.pass-meta-label{display:block;font-size:12px;opacity:.68;font-weight:900;margin-bottom:2px}.pass-meta-val{font-weight:900;opacity:.9}.pass-actions{display:grid;gap:10px}.pass-qr-wrap{border-radius:var(--bbp-radius-xl);padding:12px;background:#ffffffb3;border:1px solid rgba(0,79,110,.12);display:flex;align-items:center;justify-content:center}body.bbp-native .pass-qr-wrap{background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.pass-qr{width:230px;max-width:100%;height:auto;border-radius:12px;background:#fff}.pass-qr-caption{margin-top:10px;font-size:12px;opacity:.72;text-align:center}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-weight:900}@media(max-width:480px){.auth-shell{padding:14px 14px 22px}.auth-card{padding:14px}.auth-title{font-size:21px}.auth-input{height:50px}.auth-primary{height:52px}.settings-shell{padding:14px 14px 22px}.settings-card{padding:14px}}@media(min-width:900px){.settings-shell{padding:22px 18px 34px}.settings-card{padding:16px}}.passes-web{max-width:1120px;margin:0 auto;padding:24px 16px 90px;color:var(--deep-ocean)}.passes-web-hero{border-radius:22px;overflow:hidden;border:1px solid rgba(0,0,0,.08);background:radial-gradient(900px 520px at 12% -10%,rgba(0,184,217,.16),transparent 55%),radial-gradient(900px 520px at 92% 10%,rgba(255,107,107,.1),transparent 60%),linear-gradient(180deg,#ffffffeb,#ffffffc7);box-shadow:0 18px 60px #004f6e1f,0 2px 10px #0000000f}.passes-web-hero-inner{padding:26px 18px;text-align:center}.passes-web-hero h1{margin:0 0 8px;font-size:clamp(2rem,3.2vw,2.6rem);font-weight:950;letter-spacing:-.2px}.passes-web-hero p{margin:0 auto;max-width:62ch;font-size:1.02rem;opacity:.85;line-height:1.4;font-weight:750}.passes-web-cta-row{margin-top:14px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.passes-web-cta{text-decoration:none;border-radius:16px;padding:12px 16px;font-weight:950;min-height:46px;display:inline-flex;align-items:center;justify-content:center;transition:transform .14s ease,box-shadow .18s ease,filter .14s ease}.passes-web-cta:active{transform:scale(.985)}.passes-web-cta.primary{background:linear-gradient(180deg,#00b8d9,#00b8d9d9);color:#031016;box-shadow:0 14px 30px #00b8d92e}.passes-web-cta.secondary{background:#ffffffb8;border:1px solid rgba(0,0,0,.08);color:var(--deep-ocean);box-shadow:0 10px 24px #004f6e14}.passes-web-section{margin-top:18px}.passes-web-section-head{text-align:center;margin:0 auto 12px;max-width:70ch}.passes-web-section-head h2{margin:0 0 6px;font-size:1.6rem;font-weight:950;letter-spacing:-.15px}.passes-web-section-head p{margin:0;opacity:.8;font-weight:750;line-height:1.4}.passes-web-grid{display:grid;grid-template-columns:1fr;gap:14px;align-items:stretch}@media(min-width:900px){.passes-web-grid{grid-template-columns:repeat(3,1fr)}}.passes-web-card{position:relative;border-radius:20px;padding:16px;background:#ffffffd1;border:1px solid rgba(0,0,0,.08);box-shadow:0 16px 48px #004f6e1a,0 2px 10px #0000000f;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}@media(hover:hover){.passes-web-card:hover{transform:translateY(-2px);border-color:#004f6e24;box-shadow:0 20px 60px #004f6e24,0 3px 12px #00000014}}.passes-web-badge{position:absolute;top:12px;right:12px;padding:6px 10px;border-radius:999px;font-weight:950;font-size:12px;color:#031016;background:#00b8d933;border:1px solid rgba(0,184,217,.25)}.passes-web-card h3{margin:0 0 6px;font-size:1.25rem;font-weight:950;letter-spacing:-.1px}.passes-web-sub{margin:0 0 12px;opacity:.85;font-weight:700;line-height:1.45}.passes-web-list{margin:0 0 14px;padding-left:18px;display:grid;gap:8px;opacity:.9;font-weight:700}.passes-web-price-row{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.passes-web-price{font-size:1.5rem;font-weight:950;letter-spacing:-.15px}.passes-web-muted{opacity:.75;font-weight:800}.passes-web-actions{display:grid;gap:10px}.passes-web-btn{text-decoration:none;border-radius:16px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;font-weight:950;transition:transform .14s ease,box-shadow .18s ease,filter .14s ease}.passes-web-btn:active{transform:scale(.985)}.passes-web-btn.primary{background:linear-gradient(180deg,#00b8d9,#00b8d9d9);color:#031016;box-shadow:0 14px 30px #00b8d92e}.passes-web-btn.secondary{background:#ffffffb8;border:1px solid rgba(0,0,0,.08);color:var(--deep-ocean);box-shadow:0 10px 24px #004f6e14}.passes-web-steps{display:grid;gap:12px;margin-top:12px}@media(min-width:900px){.passes-web-steps{grid-template-columns:repeat(3,1fr)}}.passes-web-step{border-radius:20px;padding:14px;background:#ffffffd1;border:1px solid rgba(0,0,0,.08);box-shadow:0 12px 34px #004f6e1a;display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start}.passes-web-step-num{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-weight:950;background:#00b8d929;border:1px solid rgba(0,184,217,.22);color:#031016}.passes-web-step h4{margin:2px 0 6px;font-weight:950}.passes-web-step p{margin:0;opacity:.85;font-weight:700;line-height:1.45}.passes-web-note{margin-top:12px;padding:14px;border-radius:20px;background:#00b8d91a;border:1px solid rgba(0,184,217,.16);font-weight:800;line-height:1.45}.passes-web-faq{display:grid;gap:10px;margin-top:12px}.passes-web-faq-item{border-radius:18px;background:#ffffffd1;border:1px solid rgba(0,0,0,.08);box-shadow:0 12px 34px #004f6e1a;padding:12px 14px}.passes-web-faq-item summary{cursor:pointer;font-weight:950;list-style:none}.passes-web-faq-item summary::-webkit-details-marker{display:none}.passes-web-faq-item p{margin:10px 0 0;opacity:.85;font-weight:700;line-height:1.5}@media(prefers-reduced-motion:reduce){.passes-web-card,.passes-web-btn,.passes-web-cta{transition:none!important}}.settings-hero-sticky{position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:18px;background:linear-gradient(180deg,#ffffffd1,#ffffff8c);border:1px solid rgba(0,79,110,.1);box-shadow:0 14px 38px #004f6e1a;margin-bottom:10px}body.bbp-native .settings-hero-sticky{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);box-shadow:none}.settings-hero-row{display:flex;align-items:center;gap:12px;padding:8px 4px}.settings-avatar{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;font-weight:950;color:#031016;background:radial-gradient(18px 18px at 30% 20%,rgba(0,184,217,.45),transparent 55%),radial-gradient(18px 18px at 70% 40%,rgba(255,107,107,.25),transparent 55%),#ffffffd9;border:1px solid rgba(0,79,110,.12)}body.bbp-native .settings-avatar{color:#ffffffeb;background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.settings-toast{margin:10px 6px 2px;padding:10px 12px;border-radius:16px;border:1px solid rgba(0,79,110,.1);background:#ffffff9e;font-weight:900;opacity:.92}body.bbp-native .settings-toast{background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.settings-item-left-row{display:flex;align-items:center;gap:10px}.settings-item-icon{width:36px;height:36px;border-radius:14px;display:grid;place-items:center;border:1px solid rgba(0,79,110,.12);background:#ffffffb8;font-size:16px}body.bbp-native .settings-item-icon{border:1px solid rgba(255,255,255,.12);background:#ffffff14}.settings-item-icon.danger{border-color:#ff6b6b38;background:#ff6b6b1a}.bbp-switch{position:relative;width:46px;height:28px;display:inline-block}.bbp-switch input{opacity:0;width:0;height:0}.bbp-switch span{position:absolute;inset:0;border-radius:999px;background:#0000001a;border:1px solid rgba(0,79,110,.12);transition:transform .16s ease,background .16s ease}.bbp-switch span:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:999px;background:#ffffffeb;border:1px solid rgba(0,0,0,.08)}.passes-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.passes-toast{margin:12px auto 0;max-width:56ch;padding:10px 12px;border-radius:16px;border:1px solid rgba(0,79,110,.1);background:#ffffff9e;font-weight:900;opacity:.92}body.bbp-native .passes-toast{background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.passes-lock{margin-top:12px;padding:10px 12px;border-radius:16px;border:1px solid rgba(0,79,110,.1);background:#ffffff9e;font-weight:900;opacity:.92}body.bbp-native .passes-lock{background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.pass-options{display:grid;gap:12px;margin-top:10px}.pass-option{border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:12px;background:#ffffff8c}body.bbp-native .pass-option{border:1px solid rgba(255,255,255,.12);background:#ffffff0f}.pass-option-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.pass-option-title{font-weight:950}.pass-option-sub{font-weight:850;opacity:.8;font-size:13px;margin-top:2px}.pass-option-desc{margin-top:8px;opacity:.88;font-weight:650;line-height:1.45}.vendor-page{width:100%;max-width:1220px;margin:0 auto;padding:18px 0 calc(96px + env(safe-area-inset-bottom));color:var(--text, #06283b)}.vendor-surface{position:relative;overflow:hidden;background:#ffffffd1;border:1px solid rgba(0,79,110,.12);border-radius:24px;box-shadow:0 18px 44px #004f6e1f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.vendor-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:20px;padding:26px;margin-bottom:18px;background:radial-gradient(460px 220px at 10% 0%,rgba(0,184,217,.18),transparent 62%),radial-gradient(320px 220px at 100% 0%,rgba(255,107,107,.1),transparent 65%),#ffffffe0}.vendor-badge{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border-radius:999px;background:#00b8d91f;border:1px solid rgba(0,184,217,.18);color:#05556b;font-weight:800;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.vendor-hero h1{margin:14px 0 8px;font-size:clamp(28px,4vw,42px);line-height:1.02;color:#05384b}.vendor-hero p,.vendor-intro-copy,.vendor-message,.vendor-info-item p,.vendor-mini-card p,.vendor-check-list li,.vendor-activity-card p{color:#05384bbd;line-height:1.5}.vendor-hero-meta,.vendor-side-stack{display:grid;gap:12px;align-content:start}.vendor-stat-card,.vendor-mini-card,.vendor-graphic-card{padding:16px 18px;border-radius:18px;background:#ffffffc7;border:1px solid rgba(0,79,110,.12);box-shadow:0 10px 26px #004f6e14}.vendor-stat-card strong,.vendor-mini-card strong,.vendor-result-card h3,.vendor-activity-card h3,.vendor-section-head h2,.vendor-section-head h3,.vendor-tab-copy h2{color:#043447}.vendor-label,.vendor-eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#05384b8a}.vendor-eyebrow{margin-bottom:6px}.vendor-ghost-btn,.vendor-primary-btn,.vendor-secondary-btn,.vendor-refresh-btn{min-height:48px;border-radius:16px;border:none;font-weight:900;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.vendor-primary-btn,.vendor-refresh-btn{background:linear-gradient(180deg,#10bdd4,#00a9c1);color:#062432;box-shadow:0 16px 28px #00b8d933}.vendor-secondary-btn{background:linear-gradient(180deg,#fff,#f6fdfd);color:#05384b;border:1px solid rgba(0,79,110,.12);box-shadow:0 12px 24px #004f6e1a}.vendor-ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;background:#ffffffad;color:#05384b;border:1px solid rgba(0,79,110,.12)}.vendor-ghost-btn:hover,.vendor-primary-btn:hover,.vendor-secondary-btn:hover,.vendor-refresh-btn:hover,.vendor-tab:hover{transform:translateY(-1px)}.vendor-primary-btn:disabled,.vendor-secondary-btn:disabled,.vendor-refresh-btn:disabled{opacity:.56;cursor:not-allowed;transform:none;box-shadow:none}.vendor-auth-grid,.vendor-content-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px}.vendor-history-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.4fr)}.vendor-auth-card,.vendor-info-card,.vendor-panel{padding:22px}.vendor-panel-main{min-width:0}.vendor-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.vendor-section-head h2,.vendor-section-head h3,.vendor-tab-copy h2{margin:0}.vendor-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.vendor-field{display:grid;gap:8px}.vendor-field>span{font-size:13px;font-weight:800;color:#08445b}.vendor-field-full{grid-column:1 / -1}.vendor-field input,.vendor-field select,.vendor-field textarea,.vendor-input-with-icon{width:100%;min-height:50px;border-radius:16px;border:1px solid rgba(0,79,110,.12);background:#ffffffe6;color:#05384b;box-sizing:border-box}.vendor-field textarea{min-height:104px;resize:vertical;padding:14px 16px;font-family:inherit}.vendor-field input,.vendor-field select{padding:0 14px}.vendor-field input::placeholder,.vendor-field textarea::placeholder{color:#05384b6b}.vendor-field input:focus,.vendor-field select:focus,.vendor-field textarea:focus,.vendor-input-with-icon:focus-within{outline:none;border-color:#00b8d96b;box-shadow:0 0 0 4px #00b8d91f}.vendor-input-with-icon{display:flex;align-items:flex-start;gap:10px;padding:12px 14px}.vendor-input-with-icon svg{flex:0 0 auto;margin-top:3px;color:#05384b94}.vendor-input-with-icon input,.vendor-input-with-icon textarea{border:none;background:transparent;padding:0;min-height:auto;box-shadow:none}.vendor-meta-grid,.vendor-result-grid,.vendor-activity-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vendor-tabs-shell{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:18px;align-items:center;padding:18px 20px;margin:18px 0}.vendor-tabs{display:flex;flex-wrap:wrap;gap:10px}.vendor-tab{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 16px;border-radius:999px;border:1px solid rgba(0,79,110,.1);background:#ffffffc7;color:#064257;font-weight:800;cursor:pointer}.vendor-tab.active{background:linear-gradient(180deg,#00b8d938,#00b8d91f);border-color:#00b8d93d;color:#05384b;box-shadow:inset 0 0 0 1px #ffffff6b}.vendor-tab-copy p,.vendor-empty{margin:6px 0 0;color:#05384bad}.vendor-checkbox-row{display:inline-flex;align-items:center;gap:10px;margin-top:14px;color:#08445b;font-weight:700}.vendor-checkbox-row input{width:18px;height:18px;accent-color:#00b8d9}.vendor-action-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.vendor-action-row>button{flex:1 1 220px;padding:0 18px}.vendor-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;background:color-mix(in srgb,var(--vendor-status) 16%,white 84%);border:1px solid color-mix(in srgb,var(--vendor-status) 26%,white 74%);color:#05384b;font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.vendor-result-card{border-top:4px solid var(--vendor-status, #1fa7b8)}.vendor-result-head,.vendor-history-top,.vendor-activity-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.vendor-history-top strong,.vendor-activity-top h3{display:block;margin:0}.vendor-history-top span,.vendor-history-meta{color:#05384b9e;font-size:13px}.vendor-history-list{display:grid;gap:12px;margin-top:18px}.vendor-history-card{padding:18px;border-radius:18px;background:#ffffffad;border:1px solid rgba(0,79,110,.1);border-left:5px solid var(--vendor-status, #1fa7b8)}.vendor-history-grid,.vendor-activity-grid{display:grid;gap:14px}.vendor-history-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.vendor-info-list,.vendor-check-list{display:grid;gap:12px}.vendor-info-item{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:start}.vendor-check-list{padding-left:18px;margin:0}.vendor-check-list li+li{margin-top:4px}.vendor-alert{margin:14px 0 0;padding:14px 18px;border-radius:18px;font-weight:700}.vendor-alert-info{background:#00b8d91a;border:1px solid rgba(0,184,217,.16);color:#0b5566}.vendor-alert-error{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.18);color:#a33a3a}.vendor-activity-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:18px}.vendor-activity-card{padding:18px;border-radius:20px;background:#ffffffc2;border:1px solid rgba(0,79,110,.1)}.vendor-activity-meta{margin-top:14px;grid-template-columns:1fr;font-size:13px;color:#05384bad}.vendor-hero-graphic{position:relative;min-height:220px;border-radius:24px;background:linear-gradient(180deg,#fffc,#ffffff9e);border:1px solid rgba(0,79,110,.1);overflow:hidden}.vendor-glow{position:absolute;border-radius:999px;filter:blur(8px)}.vendor-glow-a{width:180px;height:180px;top:-26px;right:-10px;background:#00b8d938}.vendor-glow-b{width:150px;height:150px;bottom:-28px;left:-18px;background:#ff6b6b1f}.vendor-graphic-card{position:absolute;inset:auto 18px 18px;display:flex;align-items:center;gap:12px;min-height:64px;color:#05384b;font-weight:900}body.bbp-native .vendor-page{padding:4px 0 calc(102px + env(safe-area-inset-bottom))}body.bbp-native .vendor-surface{background:#ffffffd1;border-color:#004f6e1a;box-shadow:0 18px 36px #004f6e1a}body.bbp-native .vendor-page,body.bbp-native .vendor-hero h1,body.bbp-native .vendor-section-head h2,body.bbp-native .vendor-section-head h3,body.bbp-native .vendor-tab-copy h2,body.bbp-native .vendor-stat-card strong,body.bbp-native .vendor-mini-card strong,body.bbp-native .vendor-result-card h3,body.bbp-native .vendor-activity-card h3,body.bbp-native .vendor-field>span,body.bbp-native .vendor-tab,body.bbp-native .vendor-status-pill,body.bbp-native .vendor-history-top strong{color:var(--app-text, #003a53)}body.bbp-native .vendor-primary-btn,body.bbp-native .vendor-refresh-btn{background:linear-gradient(180deg,#fff,#ffffffeb);color:#031016}body.bbp-native .vendor-secondary-btn,body.bbp-native .vendor-ghost-btn,body.bbp-native .vendor-tab,body.bbp-native .vendor-field input,body.bbp-native .vendor-field select,body.bbp-native .vendor-field textarea,body.bbp-native .vendor-input-with-icon,body.bbp-native .vendor-history-card,body.bbp-native .vendor-activity-card,body.bbp-native .vendor-mini-card,body.bbp-native .vendor-stat-card,body.bbp-native .vendor-graphic-card{background:#ffffffc7}body.bbp-native .vendor-tab.active{background:linear-gradient(180deg,#00b8d92e,#00b8d91a)}@media(max-width:980px){.vendor-hero,.vendor-auth-grid,.vendor-content-grid,.vendor-history-layout,.vendor-tabs-shell{grid-template-columns:1fr}.vendor-tabs-shell{padding:18px}.vendor-form-grid,.vendor-meta-grid,.vendor-result-grid,.vendor-history-grid{grid-template-columns:1fr}}@media(max-width:640px){.vendor-page{padding:10px 0 calc(104px + env(safe-area-inset-bottom))}.vendor-hero,.vendor-auth-card,.vendor-info-card,.vendor-panel,.vendor-tabs-shell{padding:18px;border-radius:20px}.vendor-hero h1{font-size:30px}.vendor-tabs{display:grid;grid-template-columns:1fr}.vendor-tab{width:100%;justify-content:center}.vendor-action-row>button,.vendor-refresh-btn,.vendor-primary-btn.vendor-field-full{width:100%}.vendor-history-card,.vendor-activity-card,.vendor-mini-card,.vendor-stat-card{border-radius:16px}}:root{--bg: #f7efe0;--surface: #ffffff;--surface-2: rgba(255, 255, 255, .76);--text: #0a455e;--muted: rgba(10, 69, 94, .72);--border: rgba(4, 71, 96, .1);--primary: #10b9d2;--accent: #ff7d6e;--deep-ocean: #0a455e;--aqua-blue: #10b9d2;--sunset-coral: #ff7d6e;--sand-beige: #f7efe0;--white: #ffffff;--radius: 16px;--radius-lg: 22px;--shadow: 0 16px 38px rgba(5, 70, 95, .12);--transition: .18s ease}html,body{background:radial-gradient(900px 380px at 50% -140px,#10b9d224,#10b9d200 60%),linear-gradient(180deg,#fffaf2,#f7efe0);color:var(--text)}body.bbp-native{background:radial-gradient(900px 420px at 50% -120px,#10b9d22e,#10b9d200 58%),linear-gradient(180deg,#fffaf2,#f6eddc);color:var(--text)}.navbar-classic{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.navbar-classic.navbar--scrolled{background:#0a455ee0;box-shadow:0 10px 30px #05465f33}.navbar-inner{max-width:1280px}.navbar-brand-text,.nav-link,.nav-link:hover{color:var(--deep-ocean)}.navbar--scrolled .navbar-brand-text,.navbar--scrolled .nav-link{color:#ffffffeb}.nav-link:after{background:linear-gradient(90deg,var(--primary),#63d8ea)}.nav-cta-pill,.nav-logout-btn{border-radius:999px;min-height:20px;padding-inline:1rem;font-weight:700}.topspot-card,.activity-card,.pass-card{border:1px solid rgba(4,71,96,.08);box-shadow:0 16px 34px #05465f1a}.topspot-card:hover,.activity-card:hover,.pass-card:hover{transform:translateY(-7px);box-shadow:0 18px 40px #05465f26}.activity-card,.pass-card{background:#ffffffeb}.btn-primary,.activity-card-buttons .btn-primary,.passes-page .app-btn,.app-btn{background:linear-gradient(180deg,var(--primary),#0ea6be);color:#fff;box-shadow:0 10px 24px #10b9d238}.btn-primary:hover,.activity-card-buttons .btn-primary:hover{background:linear-gradient(180deg,#0fb0c8,#0a8aa0)}body.bbp-native .app-shell{background:transparent;color:var(--text)}body.bbp-native .app-main{padding:16px;padding-bottom:calc(92px + env(safe-area-inset-bottom));max-width:980px;margin:0 auto}body.bbp-native .app-card,body.bbp-native .apphome-card,body.bbp-native .settings-card,body.bbp-native .auth-card{background:#ffffffc7;border:1px solid rgba(4,71,96,.1);box-shadow:0 14px 36px #05465f1a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}body.bbp-native .app-muted,body.bbp-native .apphome-muted,body.bbp-native .app-header-subtitle,body.bbp-native .settings-sub,body.bbp-native .auth-subtitle{color:#0a455eb3}body.bbp-native .app-btn,body.bbp-native .auth-primary{color:#fff;background:linear-gradient(180deg,var(--primary),#0ea5be);border:none;box-shadow:0 10px 26px #10b9d238}body.bbp-native .app-btn.secondary,body.bbp-native .app-chip,body.bbp-native .settings-item,body.bbp-native .settings-badge,body.bbp-native .apphome-quickbtn{background:#ffffffa3;color:var(--text);border:1px solid rgba(4,71,96,.1);box-shadow:0 8px 18px #05465f0f}body.bbp-native .tabbar{left:12px;right:12px;bottom:10px;height:74px;border-radius:24px;background:#093a4ee6;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 44px #05465f3d;overflow:hidden}body.bbp-native .tabbar .tab{color:#ffffffbd}body.bbp-native .tabbar .tab.active{color:#fff}body.bbp-native .tabbar .tab-active-pill{background:linear-gradient(90deg,#7de7f4,var(--primary));box-shadow:0 0 16px #7de7f459}.auth-card,.settings-card,.pass-qr-wrap{border-radius:20px}.auth-input,.settings-item,.passes-page .app-btn,.app-chip,.app-btn{border-radius:14px}.auth-input,body.bbp-native .auth-input{background:#ffffffdb;color:var(--text);border:1px solid rgba(4,71,96,.12)}.auth-input::placeholder{color:#0a455e75}.auth-msg{background:#10b9d214;color:var(--text);border:1px solid rgba(16,185,210,.18)}:root{--vendor-root-sel: ""}#root>div:has(input[placeholder="Vendor API key"]),.app-main>div:has(input[placeholder="Vendor API key"]),#root>div:has(textarea[placeholder*="BBP QR payload"]),.app-main>div:has(textarea[placeholder*="BBP QR payload"]){max-width:1240px!important;margin:0 auto!important;padding:1.25rem 1rem 3.5rem!important;color:var(--text)!important}#root>div:has(input[placeholder="Vendor API key"])>div,.app-main>div:has(input[placeholder="Vendor API key"])>div,#root>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child,.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child{background:linear-gradient(180deg,#fffffff5,#ffffffe6)!important;border:1px solid rgba(4,71,96,.1)!important;box-shadow:0 18px 40px #05465f1a!important;-webkit-backdrop-filter:blur(18px)!important;backdrop-filter:blur(18px)!important}body.bbp-native .app-main>div:has(input[placeholder="Vendor API key"])>div,body.bbp-native .app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child{background:linear-gradient(180deg,#ffffffe0,#fffc)!important}#root>div:has(input[placeholder="Vendor API key"]) h1,.app-main>div:has(input[placeholder="Vendor API key"]) h1,#root>div:has(textarea[placeholder*="BBP QR payload"]) h1,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) h1,#root>div:has(textarea[placeholder*="BBP QR payload"]) h2,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) h2,#root>div:has(textarea[placeholder*="BBP QR payload"]) h3,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) h3{color:var(--deep-ocean)!important;letter-spacing:-.02em}#root>div:has(input[placeholder="Vendor API key"]) p,.app-main>div:has(input[placeholder="Vendor API key"]) p,#root>div:has(textarea[placeholder*="BBP QR payload"]) p,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) p,#root>div:has(textarea[placeholder*="BBP QR payload"]) div,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) div{color:inherit}#root>div:has(input[placeholder="Vendor API key"]) p,.app-main>div:has(input[placeholder="Vendor API key"]) p,#root>div:has(textarea[placeholder*="BBP QR payload"]) p,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) p{color:#0a455ec7!important;line-height:1.55}#root>div:has(input[placeholder="Vendor API key"]) form,.app-main>div:has(input[placeholder="Vendor API key"]) form{gap:12px!important}#root>div:has(input[placeholder="Vendor API key"]) input,#root>div:has(textarea[placeholder*="BBP QR payload"]) input,#root>div:has(textarea[placeholder*="BBP QR payload"]) select,#root>div:has(textarea[placeholder*="BBP QR payload"]) textarea,.app-main>div:has(input[placeholder="Vendor API key"]) input,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) input,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) select,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) textarea{background:#f8fcfdf5!important;color:var(--text)!important;border:1px solid rgba(4,71,96,.12)!important;border-radius:14px!important;box-shadow:inset 0 1px #ffffffb8!important}#root>div:has(input[placeholder="Vendor API key"]) input::placeholder,#root>div:has(textarea[placeholder*="BBP QR payload"]) input::placeholder,#root>div:has(textarea[placeholder*="BBP QR payload"]) textarea::placeholder,.app-main>div:has(input[placeholder="Vendor API key"]) input::placeholder,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) input::placeholder,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) textarea::placeholder{color:#0a455e73!important}#root>div:has(input[placeholder="Vendor API key"]) input:focus,#root>div:has(textarea[placeholder*="BBP QR payload"]) input:focus,#root>div:has(textarea[placeholder*="BBP QR payload"]) select:focus,#root>div:has(textarea[placeholder*="BBP QR payload"]) textarea:focus,.app-main>div:has(input[placeholder="Vendor API key"]) input:focus,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) input:focus,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) select:focus,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) textarea:focus{outline:none!important;border-color:#10b9d28c!important;box-shadow:0 0 0 4px #10b9d224!important}#root>div:has(input[placeholder="Vendor API key"]) button,#root>div:has(textarea[placeholder*="BBP QR payload"]) button,.app-main>div:has(input[placeholder="Vendor API key"]) button,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) button{border-radius:14px!important;min-height:46px!important;border:1px solid transparent!important;font-weight:800!important;letter-spacing:.01em;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease!important}#root>div:has(input[placeholder="Vendor API key"]) button:hover,#root>div:has(textarea[placeholder*="BBP QR payload"]) button:hover,.app-main>div:has(input[placeholder="Vendor API key"]) button:hover,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) button:hover{transform:translateY(-1px)}#root>div:has(input[placeholder="Vendor API key"]) button[type=submit],.app-main>div:has(input[placeholder="Vendor API key"]) button[type=submit],#root>div:has(textarea[placeholder*="BBP QR payload"]) button[disabled=""],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) button[disabled=""]{box-shadow:0 12px 28px #10b9d233!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) button,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) button,#root>div:has(input[placeholder="Vendor API key"]) button,.app-main>div:has(input[placeholder="Vendor API key"]) button{background:linear-gradient(180deg,var(--primary),#0ea5be)!important;color:#fff!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) button[style*="231,76,60"],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) button[style*="231,76,60"]{background:linear-gradient(180deg,#ff7d6e,#f06453)!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) button[disabled],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) button[disabled]{opacity:.66!important;cursor:not-allowed!important}#root>div:has(textarea[placeholder*="BBP QR payload"])>div:nth-child(2),.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:nth-child(2),#root>div:has(textarea[placeholder*="BBP QR payload"])>div:nth-child(3),.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:nth-child(3){gap:18px!important}#root>div:has(textarea[placeholder*="BBP QR payload"])>div>div,.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div>div{min-width:0}#root>div:has(textarea[placeholder*="BBP QR payload"]) div[style*=borderTop],#root>div:has(textarea[placeholder*="BBP QR payload"]) div[style*=border-left],#root>div:has(textarea[placeholder*="BBP QR payload"]) div[style*="background: rgba(255,255,255,0.04)"],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) div[style*=borderTop],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) div[style*=border-left],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) div[style*="background: rgba(255,255,255,0.04)"]{background:#ffffffe6!important;border:1px solid rgba(4,71,96,.08)!important;box-shadow:0 12px 28px #05465f14!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) label,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) label{color:#0a455ee0!important;font-weight:700}#root>div:has(textarea[placeholder*="BBP QR payload"]) strong,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) strong{color:var(--deep-ocean)!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) [style*="color: #7bed9f"],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) [style*="color: #7bed9f"]{color:#178b65!important}#root>div:has(input[placeholder="Vendor API key"]) [style*="color: #ff7675"],#root>div:has(textarea[placeholder*="BBP QR payload"]) [style*="color: #ff7675"],.app-main>div:has(input[placeholder="Vendor API key"]) [style*="color: #ff7675"],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) [style*="color: #ff7675"]{color:#c45449!important}#root>div:has(input[placeholder="Vendor API key"]) [style*="color: #7bed9f"],#root>div:has(textarea[placeholder*="BBP QR payload"]) [style*="color: #7bed9f"],.app-main>div:has(input[placeholder="Vendor API key"]) [style*="color: #7bed9f"],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) [style*="color: #7bed9f"]{color:#178b65!important}@media(max-width:900px){#root>div:has(textarea[placeholder*="BBP QR payload"]),.app-main>div:has(textarea[placeholder*="BBP QR payload"]){padding:1rem .75rem 7rem!important}#root>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child>div,.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child>div{flex-direction:column!important;align-items:flex-start!important}#root>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child>div>div:last-child,.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child>div>div:last-child{width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}#root>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child>div>div:last-child>button,.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child>div>div:last-child>button{width:100%!important}#root>div:has(textarea[placeholder*="BBP QR payload"])>div:nth-child(2),.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:nth-child(2){grid-template-columns:1fr!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) div[style*="grid-template-columns: 1fr 1fr"],#root>div:has(textarea[placeholder*="BBP QR payload"]) div[style*="grid-template-columns: 1fr 220px"],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) div[style*="grid-template-columns: 1fr 1fr"],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) div[style*="grid-template-columns: 1fr 220px"]{grid-template-columns:1fr!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) div[style*="justify-content: space-between"],.app-main>div:has(textarea[placeholder*="BBP QR payload"]) div[style*="justify-content: space-between"]{align-items:flex-start!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) h1,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) h1{font-size:1.65rem!important}#root>div:has(textarea[placeholder*="BBP QR payload"]) h2,.app-main>div:has(textarea[placeholder*="BBP QR payload"]) h2{font-size:1.25rem!important}}@media(max-width:560px){body.bbp-native .tabbar{left:8px;right:8px;bottom:8px;height:70px;border-radius:22px}body.bbp-native .app-main{padding-inline:12px}.app-row,.topspots-grid{grid-template-columns:1fr}.activity-grid,.passes-grid{padding-bottom:.25rem}#root>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child>div>div:last-child,.app-main>div:has(textarea[placeholder*="BBP QR payload"])>div:first-child>div>div:last-child{grid-template-columns:1fr!important}}.vendor-portal{width:min(1180px,100%);margin:0 auto;padding:1.5rem 1rem 3rem;color:var(--text, #ffffff)}.vendor-portal--login{width:min(620px,100%);padding-top:2rem}.vendor-portal-card{background:var(--surface, rgba(255, 255, 255, .08));border:1px solid var(--border, rgba(255, 255, 255, .14));border-radius:22px;padding:1.25rem;box-shadow:0 18px 42px #0000002e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.vendor-portal-card+.vendor-portal-card{margin-top:1rem}.vendor-portal-eyebrow{display:inline-flex;align-items:center;gap:.45rem;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--aqua-blue, #00b8d9);margin-bottom:.65rem}.vendor-portal-title{margin:0;font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.08;color:inherit}.vendor-portal-subtitle{margin:.5rem 0 0;color:#fffc;line-height:1.6}.vendor-portal-divider{opacity:.6}.vendor-portal-copy{margin-bottom:1.15rem}.vendor-portal-form{display:grid;gap:.95rem}.vendor-portal-form--scan{grid-template-columns:repeat(2,minmax(0,1fr))}.vendor-field{display:grid;gap:.45rem}.vendor-field--full{grid-column:1 / -1}.vendor-field--action{align-self:end}.vendor-field-label{font-size:.86rem;font-weight:800;letter-spacing:.01em;color:#ffffffe0}.vendor-field-label--ghost{opacity:0;pointer-events:none}.vendor-field-input{min-height:48px}.vendor-field-textarea{min-height:112px;resize:vertical}.vendor-portal-submit{margin-top:.25rem}.vendor-message{margin:1rem 0 0;border-radius:16px;padding:.85rem 1rem;font-weight:700}.vendor-message--success{color:#c7ffe6;background:#2ecc7124;border:1px solid rgba(46,204,113,.26)}.vendor-message--error{color:#ffd3d0;background:#ff6b6b24;border:1px solid rgba(255,107,107,.26)}.vendor-portal-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.vendor-portal-tabs{display:flex;flex-wrap:wrap;gap:.65rem}.vendor-portal-tab{min-height:42px;padding:.75rem 1rem;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff14;color:inherit;font-weight:800;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}.vendor-portal-tab:hover,.vendor-portal-tab:focus-visible{transform:translateY(-1px);border-color:#fff3}.vendor-portal-tab.is-active{background:#00b8d92e;border-color:#00b8d96b;color:#fff}.vendor-portal-tab--danger{background:#ff6b6b1f;border-color:#ff6b6b42}.vendor-portal-grid{display:grid;gap:1rem;margin-top:1rem}.vendor-portal-grid--scan{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.vendor-portal-sidepanel,.vendor-portal-stack{display:grid;gap:1rem;margin-top:1rem}.vendor-section-head{margin-bottom:1rem}.vendor-section-head h2,.vendor-section-head h3{margin:0;color:inherit}.vendor-section-head p{margin:.45rem 0 0;color:#ffffffc7;line-height:1.6}.vendor-section-head--compact{margin-bottom:.75rem}.vendor-toggle{display:flex;align-items:center;gap:.75rem;min-height:48px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;padding:.85rem 1rem;font-weight:700}.vendor-toggle input{width:18px;height:18px;margin:0}.vendor-action-row{display:flex;flex-wrap:wrap;gap:.75rem}.vendor-action-btn{width:auto;min-width:190px}.vendor-status-card{border-top:4px solid transparent}.vendor-stat-list{display:grid;gap:.55rem}.vendor-stat-list p,.vendor-offline-card p{margin:0;line-height:1.55}.vendor-offline-count{margin-top:.8rem!important}.vendor-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.9rem}.vendor-empty{margin:0;color:#ffffffc2}.vendor-history-list{display:grid;gap:.85rem}.vendor-history-item{border-left:4px solid transparent;border-radius:18px;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.vendor-history-topline{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.vendor-history-meta,.vendor-history-time,.vendor-history-copy{color:#fffc}.vendor-history-copy{display:grid;gap:.45rem;margin-top:.65rem;line-height:1.55}.vendor-activity-list{display:grid;gap:.85rem}.vendor-activity-item{padding:1rem;border-radius:18px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.vendor-activity-meta{margin-top:.45rem;color:#fffc;line-height:1.55}.tone-success{border-color:#2ecc7147;border-top-color:#2ecc71;border-left-color:#2ecc71}.tone-warning{border-color:#f39c1247;border-top-color:#f39c12;border-left-color:#f39c12}.tone-caution{border-color:#f1c40f47;border-top-color:#f1c40f;border-left-color:#f1c40f}.tone-pending{border-color:#8e44ad47;border-top-color:#8e44ad;border-left-color:#8e44ad}.tone-danger{border-color:#e74c3c47;border-top-color:#e74c3c;border-left-color:#e74c3c}body.bbp-native .vendor-portal{color:var(--app-text);padding:.25rem 0 2rem}body.bbp-native .vendor-portal-card{background:var(--app-surface);border-color:var(--app-border);box-shadow:0 14px 36px #004f6e1f}body.bbp-native .vendor-field-label,body.bbp-native .vendor-portal-subtitle,body.bbp-native .vendor-section-head p,body.bbp-native .vendor-history-meta,body.bbp-native .vendor-history-time,body.bbp-native .vendor-history-copy,body.bbp-native .vendor-activity-meta,body.bbp-native .vendor-empty{color:var(--app-muted)}body.bbp-native .vendor-portal-tab{background:#ffffffad;border-color:var(--app-border);color:var(--app-text)}body.bbp-native .vendor-portal-tab.is-active{background:#00b8d929;border-color:#00b8d952}body.bbp-native .vendor-portal-tab--danger{background:#ff6b6b1f}body.bbp-native .vendor-toggle,body.bbp-native .vendor-history-item,body.bbp-native .vendor-activity-item{background:#ffffff94;border-color:var(--app-border)}@media(max-width:960px){.vendor-portal-grid--scan,.vendor-portal-form--scan{grid-template-columns:1fr}.vendor-action-row{flex-direction:column}.vendor-action-btn{width:100%}}@media(max-width:640px){.vendor-portal{padding:1rem .8rem 2rem}.vendor-portal--login{padding-top:1rem}.vendor-portal-card{padding:1rem;border-radius:18px}.vendor-portal-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.vendor-portal-tab{justify-content:center;text-align:center}.vendor-history-topline{flex-direction:column}}.vendor-camera-card{padding:14px;border-radius:18px;border:1px solid rgba(27,78,112,.14);background:linear-gradient(180deg,#ffffffeb,#f5fbfff0),#ffffffe0;box-shadow:0 18px 40px #12365414}.vendor-camera-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.vendor-camera-card__copy{margin:6px 0 0;font-size:.95rem;line-height:1.5;color:#1c394fd1}.vendor-camera-launch{min-width:180px}.vendor-camera-panel{margin-top:14px;display:grid;gap:12px}.vendor-camera-shell{position:relative;overflow:hidden;min-height:280px;border-radius:22px;background:radial-gradient(circle at top,#26afcb24,#08172ae0),#0e2236;border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px #ffffff24,0 20px 46px #07182938}.vendor-camera-video{display:block;width:100%;min-height:280px;max-height:58vh;object-fit:cover;background:linear-gradient(180deg,#040c15f2,#091c2ef2)}.vendor-camera-frame{pointer-events:none;position:absolute;inset:0;display:grid;place-items:center}.vendor-camera-frame__inner{width:min(72vw,260px);aspect-ratio:1 / 1;border-radius:26px;border:2px solid rgba(255,255,255,.92);box-shadow:0 0 0 999px #040f1b42,0 0 0 1px #26afcb7a,0 14px 38px #040f1b66}.vendor-camera-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.vendor-camera-toolbar__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.vendor-camera-btn{min-width:118px}.vendor-camera-status{margin:0;color:#123654e0;font-size:.95rem;line-height:1.45}.vendor-camera-hint{margin:0;color:#1c394fb8;font-size:.9rem;line-height:1.45}@media(max-width:780px){.vendor-camera-card{padding:12px;border-radius:16px}.vendor-camera-launch,.vendor-camera-btn{width:100%;min-width:0}.vendor-camera-toolbar,.vendor-camera-toolbar__actions{width:100%}.vendor-camera-video{min-height:240px;max-height:52vh}}.vendor-history-filters{align-items:end}.vendor-subtle-card{display:flex;align-items:center;min-height:48px;padding:12px 14px;border-radius:16px;background:#ffffffa8;border:1px solid rgba(0,79,110,.1)}.vendor-subtle-card p{margin:0;font-size:13px;color:#05384bb8}.vendor-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.vendor-chip{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#00b8d91a;border:1px solid rgba(0,184,217,.18);color:#064257;font-size:12px;font-weight:800}.vendor-chip-muted{background:#05384b0f;border-color:#004f6e1a;color:#05384bbd}.vendor-history-grid-tight{grid-template-columns:repeat(2,minmax(0,1fr))}.vendor-history-grid-tight strong,.vendor-activity-meta strong{display:block;margin-top:4px;color:#043447}.vendor-history-message{margin:14px 0 0;color:#05384bbd;line-height:1.55}.vendor-activity-grid-rich{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.vendor-activity-card .vendor-chip-row{margin-top:10px}.vendor-activity-card .vendor-status-pill{flex-shrink:0}@media(max-width:980px){.vendor-history-grid-tight{grid-template-columns:1fr}}@media(max-width:720px){.vendor-history-filters{grid-template-columns:1fr}.vendor-subtle-card{width:100%}.vendor-activity-top,.vendor-history-top{flex-direction:column}}.vendor-page .vendor-hero{gap:16px}.vendor-page .vendor-intro-copy{max-width:52ch;font-size:.96rem;line-height:1.5}.vendor-page .vendor-check-list{gap:8px}.vendor-page .vendor-check-list li{font-size:.93rem}.vendor-page .vendor-auth-card .vendor-primary-btn{min-height:44px;padding:0 16px;font-size:.95rem;box-shadow:0 10px 22px #00b8d929}.vendor-page .vendor-action-row{gap:10px}.vendor-page .vendor-action-row>button,.vendor-page .vendor-primary-btn,.vendor-page .vendor-secondary-btn,.vendor-page .vendor-refresh-btn{min-height:42px;padding:0 14px;font-size:.92rem;line-height:1}.vendor-page .vendor-tab{min-height:40px;padding:0 14px;font-size:.92rem}.vendor-page .vendor-mini-card,.vendor-page .vendor-stat-card{padding:14px 16px}.vendor-page .vendor-result-grid,.vendor-page .vendor-meta-grid,.vendor-page .vendor-history-list{gap:10px}.vendor-page .vendor-history-card{padding:14px 16px;border-radius:16px}.vendor-page .vendor-history-top{gap:8px}.vendor-page .vendor-history-top strong{font-size:.98rem}.vendor-page .vendor-history-meta,.vendor-page .vendor-history-top span{font-size:12px}.vendor-page .vendor-history-grid-tight{gap:10px;margin-top:10px}.vendor-page .vendor-history-grid-tight .vendor-label{font-size:10.5px;letter-spacing:.06em}.vendor-page .vendor-history-grid-tight strong{margin-top:2px;font-size:.92rem}.vendor-page .vendor-history-message{margin-top:10px;font-size:.92rem;line-height:1.45}.vendor-page .vendor-chip-row{gap:6px;margin-top:6px}.vendor-page .vendor-chip,.vendor-page .vendor-status-pill{min-height:28px;padding:0 10px;font-size:11px}.vendor-page .vendor-history-filters{gap:10px}.vendor-page .vendor-history-filters .vendor-field>span{font-size:12px}.vendor-page .vendor-history-filters select,.vendor-page .vendor-history-filters input{min-height:44px}.vendor-page .vendor-activity-grid-rich,.vendor-page .vendor-activity-grid{gap:10px}.vendor-page .vendor-activity-card{padding:14px 16px;border-radius:16px}.vendor-page .vendor-activity-top{gap:10px}.vendor-page .vendor-activity-top h3{font-size:1rem}.vendor-page .vendor-activity-meta{margin-top:10px;gap:10px;font-size:12.5px}.vendor-page .vendor-activity-meta strong{margin-top:3px;font-size:.92rem}@media(min-width:981px){.vendor-page .vendor-history-layout{grid-template-columns:minmax(0,1fr) minmax(250px,.34fr)}.vendor-page .vendor-tabs-shell{padding:16px 18px}.vendor-page .vendor-panel{padding:18px}}@media(max-width:720px){.vendor-page .vendor-hero{padding:18px}.vendor-page .vendor-hero h1{font-size:1.9rem}.vendor-page .vendor-intro-copy{font-size:.92rem}.vendor-page .vendor-tabs-shell{padding:14px 16px}.vendor-page .vendor-panel,.vendor-page .vendor-auth-card,.vendor-page .vendor-info-card{padding:16px}.vendor-page .vendor-history-card,.vendor-page .vendor-activity-card{padding:13px 14px}.vendor-page .vendor-action-row>button{width:100%}}.activity-status-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;font-weight:800;font-size:.76rem;letter-spacing:.01em;margin:6px 0 12px;border:1px solid rgba(255,255,255,.12);background:#ffffff12;color:#ffffffeb}.activity-status-pill:before{font-size:.92rem}.activity-status-pill.is-reservation:before{content:"📅"}.activity-status-pill.is-scan:before{content:"⚡"}.activity-card{overflow:hidden}.activity-card-content{gap:0}.activity-card h3{margin-bottom:6px}.activity-location{margin-bottom:0}.activity-pass-included{margin-top:2px;margin-bottom:10px}.activity-duration{margin-bottom:14px}.activity-card-buttons .btn-primary{min-height:44px;min-width:160px;box-shadow:0 14px 28px #00b8d92e}.activity-modal{width:min(760px,calc(100vw - 28px));padding:24px 24px 22px}.activity-modal-header{margin-top:14px}.activity-modal h2{margin-bottom:6px}.activity-modal-booking{margin-top:16px;padding:16px 18px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,#ffffff14,#ffffff0d);box-shadow:inset 0 1px #ffffff0d}.activity-modal-booking-title{font-weight:900;font-size:.98rem;margin-bottom:6px}.activity-modal-booking-copy{opacity:.92;line-height:1.5}.activity-modal-code-wrap{margin-top:12px}.activity-modal-code-label{font-weight:800;font-size:.84rem;margin-bottom:6px;color:#ffffffdb}.activity-modal-code-block{display:inline-block;padding:10px 12px;border-radius:14px;background:#050b187a;border:1px solid rgba(255,255,255,.09);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem;font-weight:800;letter-spacing:.04em}.activity-modal-meta{margin-top:16px}.activity-modal-actions{margin-top:18px;display:flex;flex-direction:column;gap:10px}.activity-modal-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;width:fit-content;text-decoration:none}.activity-modal-note{margin:0;font-size:.92rem;color:#ffffffc2;line-height:1.45}.discover-header{max-width:1080px;margin:0 auto 20px;padding:0 8px}.discover-header h1{margin-bottom:8px}.discover-header p{max-width:720px;color:#ffffffbd}.discover-filters{gap:16px;margin-bottom:26px}.category-tabs{padding:4px 0 2px}.category-tab{min-height:42px;padding:10px 16px}.topspots-heading{text-align:center;margin-bottom:20px}.topspots-subtitle{margin:10px auto 0;max-width:620px;color:#ffffffb8;line-height:1.5}.topspot-card{height:100%}.topspot-content{display:flex;flex-direction:column;gap:6px}.how-it-works .howitworks-subtitle{max-width:760px;margin-left:auto;margin-right:auto}.how-faq-header h3{margin:0 0 8px;font-size:clamp(1.35rem,2vw,1.75rem)}.how-faq-header p{margin:0;color:#ffffffb8}.how-faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.how-faq-item{padding:18px 18px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,#ffffff14,#ffffff0d);box-shadow:0 20px 45px #00000029}.how-faq-item h4{margin:0 0 10px;font-size:1rem;line-height:1.35}.how-faq-item p{margin:0;color:#ffffffc7;line-height:1.55;font-size:.95rem}@media(max-width:900px){.how-faq-grid{grid-template-columns:1fr}}@media(max-width:720px){.discover-header{margin-bottom:16px;padding:0}.activity-modal{width:min(100vw - 18px,760px);padding:20px 18px 18px}.activity-modal-link{width:100%}.category-tab{min-height:40px;padding:9px 14px}.topspots-heading{margin-bottom:16px}.how-faq{margin-top:28px}.how-faq-item{padding:16px}}.how-faq{margin-top:34px;text-align:left}.how-faq-shell{max-width:860px;margin:0 auto;padding:18px;border-radius:22px;border:1px solid rgba(0,79,110,.1);background:linear-gradient(180deg,#ffffffe0,#ffffffb8);box-shadow:0 16px 34px #004f6e1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.how-faq-header{text-align:center;margin-bottom:18px}.how-faq-header h3{margin:0 0 8px;font-size:clamp(1.35rem,2vw,1.75rem);color:var(--deep-ocean)}.how-faq-header p{margin:0 auto;max-width:54ch;color:#004f6eb8;line-height:1.5}.how-faq-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:16px}.how-faq-search{flex:1 1 340px;max-width:520px}.how-faq-search input{width:100%;min-height:48px;border-radius:999px;padding:0 16px;border:1px solid rgba(0,79,110,.12);background:#ffffffeb;color:var(--deep-ocean);font-weight:700;box-sizing:border-box;transition:box-shadow .16s ease,border-color .16s ease,transform .16s ease}.how-faq-search input::placeholder{color:#004f6e75}.how-faq-search input:focus{outline:none;border-color:#00b8d98c;box-shadow:0 0 0 4px #00b8d924}.how-faq-clear{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(0,79,110,.1);background:#ffffffc7;color:var(--deep-ocean);font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.how-faq-clear:hover{transform:translateY(-1px);box-shadow:0 10px 20px #004f6e14}.how-faq-list{display:grid;gap:0}.how-faq-entry{border-top:1px solid rgba(0,79,110,.1)}.how-faq-entry:first-child{border-top:none}.how-faq-question{margin:0}.how-faq-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 4px;border:none;background:transparent;color:var(--deep-ocean);text-align:left;font:inherit;font-weight:900;cursor:pointer}.how-faq-trigger:hover{color:#05556b}.how-faq-trigger:focus-visible{outline:none;box-shadow:0 0 0 4px #00b8d924;border-radius:14px}.how-faq-icon{position:relative;width:18px;height:18px;flex:0 0 auto}.how-faq-icon:before,.how-faq-icon:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:2px;border-radius:999px;background:currentColor;transform:translate(-50%,-50%);transition:transform .18s ease,opacity .18s ease}.how-faq-icon:after{transform:translate(-50%,-50%) rotate(90deg)}.how-faq-entry.is-open .how-faq-icon:after{opacity:0;transform:translate(-50%,-50%) rotate(90deg) scaleX(.4)}.how-faq-panel{overflow:hidden}.how-faq-panel-inner{padding:0 4px 18px;color:#004f6ecc;line-height:1.65}.how-faq-panel-inner p{margin:0}.how-faq-empty{padding:18px 4px 4px;color:#004f6eb8;text-align:center;line-height:1.55}.how-faq-footer{margin-top:14px;padding-top:14px;border-top:1px solid rgba(0,79,110,.1);text-align:center;color:#004f6eb8;line-height:1.5}.how-faq-footer strong{color:var(--deep-ocean)}@media(max-width:720px){.how-faq{margin-top:28px}.how-faq-shell{padding:16px 14px;border-radius:18px}.how-faq-trigger{padding:16px 2px;font-size:.98rem}.how-faq-panel-inner{padding:0 2px 16px;font-size:.95rem}.how-faq-clear{width:100%}}.btn-primary,.btn-secondary,.app-btn,.auth-primary,.get-started-btn{min-height:44px;padding-top:.82rem;padding-bottom:.82rem}.activity-card-buttons .btn-primary{min-height:42px;padding:.78rem 1rem}.get-started-btn{padding-left:1.35rem;padding-right:1.35rem;font-size:.98rem}.how-it-works-page__back{min-height:40px;padding:.55rem .85rem}body.bbp-native .app-btn,body.bbp-native .auth-primary,body.bbp-native .btn-primary,body.bbp-native .get-started-btn{min-height:44px;padding-top:.8rem;padding-bottom:.8rem}body.bbp-native .settings-item,body.bbp-native .apphome-quickbtn,body.bbp-native .settings-badge{min-height:0}@media(max-width:640px){.btn-primary,.btn-secondary,.app-btn,.auth-primary,.get-started-btn{font-size:.95rem}.activity-card-buttons .btn-primary{width:100%}}.passes-page{background:var(--sand-beige);padding:2rem;min-height:100vh;animation:fadeInUp .8s ease-out}.passes-header{text-align:center;margin-bottom:2rem}.passes-header h1{color:var(--deep-ocean);font-size:2rem;margin-bottom:.5rem}.passes-header p{color:var(--aqua-blue);font-weight:500;font-size:1.1rem}.passes-grid{display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem 0;-webkit-overflow-scrolling:touch}.passes-grid::-webkit-scrollbar{height:8px}.passes-grid::-webkit-scrollbar-thumb{background:var(--aqua-blue);border-radius:8px}.passes-grid::-webkit-scrollbar-track{background:#0000000d}.pass-card{flex:0 0 auto;width:300px;background:var(--white);border-radius:var(--radius);border-top:6px solid var(--aqua-blue);padding:1.5rem;box-shadow:var(--shadow);scroll-snap-align:start;text-align:center;transition:var(--transition);animation:fadeInUp .6s ease-out}.pass-card:hover{transform:translateY(-6px);box-shadow:0 6px 16px #00000026}.pass-card h2{color:var(--deep-ocean);margin-bottom:.4rem;font-size:1.25rem}.pass-duration{color:var(--aqua-blue);font-weight:600}.pass-description{font-size:.95rem;color:var(--deep-ocean);margin:1rem 0}.pass-price{color:var(--sunset-coral);font-weight:700;font-size:1.2rem;margin-bottom:1rem}.btn-primary{background:var(--aqua-blue);color:var(--white);font-weight:600;border:none;border-radius:var(--radius);padding:.6rem 1.4rem;cursor:pointer;transition:var(--transition)}.btn-primary:hover{background:var(--deep-ocean)}.discover-page{padding:2rem;background:var(--sand-beige);min-height:100vh;animation:fadeInUp .8s ease-out}.discover-header{text-align:center;margin-bottom:1.5rem}.discover-header h1{color:var(--deep-ocean);font-size:2rem;margin-bottom:.5rem;letter-spacing:.5px;animation:fadeInUp .8s ease-out}.discover-header p{color:var(--aqua-blue);font-weight:500;font-size:1.1rem}.activity-grid{display:flex;gap:1.5rem;overflow-x:auto;overflow-y:hidden;padding:1rem 0;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.activity-grid::-webkit-scrollbar{height:8px}.activity-grid::-webkit-scrollbar-thumb{background:var(--aqua-blue);border-radius:10px}.activity-grid::-webkit-scrollbar-track{background:#0000000d}.activity-card{flex:0 0 auto;scroll-snap-align:start;width:280px;background:var(--sand-beige);border-radius:var(--radius);box-shadow:var(--shadow);transition:var(--transition);display:flex;flex-direction:column;animation:fadeInUp .6s ease-out}.activity-card:hover{transform:translateY(-6px);box-shadow:0 6px 14px #00000026}.activity-card-img{width:100%;height:180px;object-fit:cover;border-radius:var(--radius) var(--radius) 0 0}.activity-card-content{padding:1rem;flex:1;display:flex;flex-direction:column;justify-content:space-between;text-align:left}.activity-pass-included{background:#00b8d91a;color:var(--aqua-blue);font-weight:600;border-radius:var(--radius);padding:.35rem .6rem;font-size:.9rem;display:inline-block;margin-bottom:.5rem}.activity-pass-included:before{content:"✔ ";color:var(--aqua-blue);font-weight:700}.activity-duration{font-size:.9rem;color:var(--deep-ocean)}.activity-card-buttons{display:flex;justify-content:center;margin-top:.75rem}.btn-primary{background:var(--aqua-blue);color:var(--white);font-weight:600;padding:.5rem 1.25rem;border:none;border-radius:var(--radius);cursor:pointer;transition:var(--transition)}.btn-primary:hover{background:var(--deep-ocean);transform:translateY(-3px)}.loading-text{text-align:center;color:var(--deep-ocean);margin-top:3rem;font-size:1.2rem}@media(max-width:768px){.discover-page{padding:1.25rem}.discover-header h1{font-size:1.6rem}.discover-header p{font-size:1rem}.activity-grid{gap:1rem;padding:.5rem}.activity-card{width:230px}.activity-card-img{height:150px}.btn-primary{font-size:.9rem;padding:.45rem 1rem}}@media(min-width:1280px){.discover-page{max-width:1300px;margin:0 auto}.activity-card{width:300px}.activity-card-img{height:200px}}.home-hero{position:relative;height:85vh;display:flex;align-items:center;justify-content:center;text-align:center;background:url(/assets/Graphics/Crab_Island.png) center/cover no-repeat;color:var(--white)}.home-container{background:linear-gradient(180deg,var(--sand-beige) 0%,#fff 100%);overflow-x:hidden;animation:fadeInUp .8s ease-out}.home-hero{position:relative;height:85vh;display:flex;align-items:center;justify-content:center;text-align:center;background:url(/assets/Graphics/Crab_Island.png) center/cover no-repeat;color:var(--white)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#004f6e66,#004f6ed9);z-index:1}.hero-content{position:relative;z-index:2;max-width:800px;animation:fadeUp 1s ease}.hero-content h1{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:1rem;font-weight:800;text-shadow:0 4px 10px rgba(0,0,0,.3)}.hero-content p{font-size:1.2rem;line-height:1.6;margin-bottom:2rem;color:#fffffff2}.hero-cta{background:linear-gradient(90deg,var(--aqua-blue),var(--sunset-coral));color:var(--white);border:none;border-radius:12px;padding:.9rem 2rem;font-size:1.1rem;font-weight:700;cursor:pointer;box-shadow:0 8px 16px #00b8d94d;transition:all .3s ease}.hero-cta:hover{transform:translateY(-3px);box-shadow:0 10px 18px #ff6b6b66}.home-features{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;padding:4rem 2rem;background:var(--white);text-align:center}.feature-card{background:var(--sand-beige);border-radius:16px;box-shadow:0 8px 20px #00000014;padding:1.5rem;max-width:320px;transition:all .3s ease;animation:fadeInUp .8s ease}.feature-card:hover{transform:translateY(-6px);box-shadow:0 10px 24px #004f6e26}.feature-card img{width:100%;height:200px;object-fit:contain;border-radius:12px;margin-bottom:1rem}.feature-card h3{color:var(--deep-ocean);font-size:1.3rem;margin-bottom:.5rem}.feature-card p{color:#004f6ecc;font-size:1rem}.home-about{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;padding:4rem 2rem;background:linear-gradient(90deg,var(--sand-beige),var(--aqua-blue));color:var(--deep-ocean)}.about-text{max-width:500px;animation:fadeInUp 1s ease}.about-text h2{font-size:2rem;font-weight:700;margin-bottom:1rem}.about-text p{font-size:1.1rem;line-height:1.6;color:#004f6ee6;margin-bottom:1.5rem}.about-btn{background:var(--deep-ocean);color:var(--white);border:none;border-radius:10px;padding:.8rem 1.6rem;font-weight:700;cursor:pointer;transition:all .3s ease}.about-btn:hover{background:var(--aqua-blue);transform:translateY(-3px)}.about-image img{width:320px;border-radius:16px;box-shadow:0 6px 18px #0000001a}.home-cta{text-align:center;padding:4rem 2rem;background:var(--deep-ocean);color:var(--white)}.home-cta h2{font-size:2rem;margin-bottom:1rem}.cta-btn{background:linear-gradient(90deg,var(--aqua-blue),var(--sunset-coral));color:var(--white);border:none;border-radius:12px;padding:.9rem 2rem;font-size:1.1rem;font-weight:700;cursor:pointer;box-shadow:0 8px 16px #00b8d94d;transition:all .3s ease}.cta-btn:hover{transform:translateY(-3px);box-shadow:0 10px 18px #ff6b6b66}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.home-hero{height:70vh}.hero-content h1{font-size:2rem}.home-features{padding:2rem 1rem}.feature-card img{height:160px}.home-about{flex-direction:column;text-align:center}.about-image img{width:260px}}.passes-page{background:linear-gradient(180deg,var(--sand-beige),#fff);padding:3rem 1.5rem;min-height:100vh;text-align:center;animation:fadeInUp .8s ease-out}.passes-header{margin-bottom:3rem}.passes-header h1{color:var(--deep-ocean);font-size:clamp(2rem,5vw,2.8rem);font-weight:800;margin-bottom:.5rem;letter-spacing:.5px}.passes-header p{color:var(--aqua-blue);font-size:1.1rem;font-weight:500}.passes-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;animation:fadeInUp 1s ease}.pass-card{background:linear-gradient(135deg,var(--aqua-blue),var(--sunset-coral));color:var(--white);border-radius:20px;width:300px;padding:2rem;box-shadow:0 8px 25px #00000026;transition:transform .4s ease,box-shadow .4s ease,background .4s ease;animation:fadeInUp .8s ease}.pass-card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 12px 28px #00000040;background:linear-gradient(135deg,var(--sunset-coral),var(--aqua-blue))}.pass-card-inner{display:flex;flex-direction:column;align-items:center;gap:.75rem}.pass-card h2{font-size:1.4rem;font-weight:700}.pass-duration{font-size:1.1rem;font-weight:600;color:var(--sand-beige)}.pass-description{font-size:1rem;line-height:1.5;opacity:.9}.btn-primary{background:linear-gradient(90deg,var(--white),var(--sand-beige));color:var(--deep-ocean);font-weight:700;border:none;border-radius:10px;padding:.8rem 1.8rem;cursor:pointer;margin-top:1rem;transition:all .3s ease;box-shadow:0 5px 14px #ffffff4d}.btn-primary:hover{transform:translateY(-3px);background:var(--white);box-shadow:0 8px 20px #fff6}.redeem-message{margin-top:2rem;font-weight:600;font-size:1rem;color:var(--deep-ocean);background:#ffffffb3;display:inline-block;padding:.8rem 1.4rem;border-radius:12px;box-shadow:0 4px 10px #0000001a}.reveal-delay-0{animation-delay:0s}.reveal-delay-1{animation-delay:.1s}.reveal-delay-2{animation-delay:.2s}@media(max-width:768px){.passes-grid{flex-direction:column;align-items:center;gap:1.5rem}.pass-card{width:90%;padding:1.5rem}.btn-primary{width:100%;padding:1rem}.passes-header h1{font-size:1.8rem}}:root{--aqua-blue: #00B8D9;--sunset-coral: #FF6B6B;--sand-beige: #F5E6CA;--deep-ocean: #004F6E;--white: #FFFFFF;--bg: var(--sand-beige);--surface: #ffffff;--surface-2: rgba(255,255,255,.65);--text: var(--deep-ocean);--muted: rgba(0,79,110,.75);--border: rgba(0,0,0,.1);--primary: var(--aqua-blue);--accent: var(--sunset-coral);--radius: 14px;--radius-lg: 18px;--shadow: 0 10px 26px rgba(0, 0, 0, .12);--transition: .18s ease;--font-web: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;--font-app: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif}html,body{margin:0;padding:0;font-family:var(--font-web);background:var(--bg);color:var(--text);scroll-behavior:smooth}html.bbp-native,body.bbp-native{--bg: #fbf7ee;--surface: rgba(255,255,255,.78);--surface-2: rgba(255,255,255,.92);--text: #003a53;--muted: rgba(0,58,83,.62);--border: rgba(0,79,110,.1);--shadow: 0 14px 40px rgba(0,79,110,.12);font-family:var(--font-app)}body.bbp-native{background:radial-gradient(900px 420px at 50% -120px,#00b8d938,#00b8d900 60%),linear-gradient(180deg,#fffaf0,#f3ead6)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}
