*{box-sizing:border-box}html,body{font-size:var(--font-size-root, 100%)}body{margin:0;background:var(--color-bg-gradient);color:var(--color-text);font-family:var(--font-family);letter-spacing:var(--letter-spacing-body, 0);line-height:1;font-weight:500;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100dvh}.icon-fade-bg{position:fixed;right:0;bottom:0;z-index:0;width:100%;height:100%;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none}h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{font-family:var(--font-family-heading, var(--font-family));line-height:1;margin:0 0 1.5rem;font-weight:800;text-transform:uppercase;letter-spacing:var(--letter-spacing-heading, .025em);font-variation-settings:"wdth" 75}h1.lowercase,.h1.lowercase,h2.lowercase,.h2.lowercase,h3.lowercase,.h3.lowercase,h4.lowercase,.h4.lowercase,h5.lowercase,.h5.lowercase,h6.lowercase,.h6.lowercase{text-transform:none}h1,.h1{font-size:4.625rem;text-transform:uppercase}@media (max-width: 768px){h1,.h1{font-size:3rem}}h2,.h2{font-size:4rem;text-transform:uppercase}@media (max-width: 768px){h2,.h2{font-size:2.5rem}}h2 span,h2 strong,.h2 span,.h2 strong{color:var(--color-text)}h3,.h3{font-size:1.875rem}@media (max-width: 768px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:1.375rem}@media (max-width: 768px){h4,.h4{font-size:1.25rem}}h5,.h5{font-size:1.25rem}@media (max-width: 768px){h5,.h5{font-size:1rem}}h6,.h6{font-size:1rem}@media (max-width: 768px){h6,.h6{font-size:.875rem}}p,.p{font-size:1rem;margin:0 0 1.5rem;line-height:1.3}@media (max-width: 768px){p,.p{font-size:.875rem}}a{color:var(--color-link)}.app-shell{position:relative;z-index:1;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.content{flex:1 0 auto;width:100%;padding-bottom:88px}.screen{padding:16px;max-width:460px;margin:0 auto}.center-screen{min-height:100vh;display:grid;place-content:center;gap:12px}.name-gate{position:relative;justify-items:center;text-align:center;padding:1.5rem}.name-gate .event-logo,.name-gate .watchit-logo{height:60px;margin-bottom:.25rem}.name-gate .form-card{width:min(100%,420px)}.card{background:var(--color-card-bg);color:var(--color-card-text);border-radius:var(--radius-lg);padding:1rem 1.5rem}.card>*:first-child{margin-top:1rem}.card>*:last-child{margin-bottom:1rem}header.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.event-logo-link,.watchit-logo-link{display:block;line-height:0}.event-logo,.watchit-logo{height:42px;width:auto;display:block;max-width:min(100%,280px);object-fit:contain}.icon-btn{width:44px;height:44px;border-radius:var(--radius-circle);border:1px solid var(--color-icon-btn-border);background:transparent;color:var(--color-icon-btn-text)}.scanner-wrap{margin-top:10px}.scanner-view{width:100%;min-height:min(72vw,360px);aspect-ratio:1 / 1;border-radius:var(--radius-md);overflow:hidden;background:var(--color-scanner-bg);position:relative}.scanner-view-live{isolation:isolate}.scanner-view .scanner-video{width:100%;height:100%;object-fit:cover;display:block;background:var(--color-scanner-bg)}.scan-landing-card{margin-top:18px}.scan-back-link{display:inline-block;margin-top:1rem;text-align:center;text-decoration:none}.scanner-message{margin-top:.75rem;color:var(--color-text);line-height:1.4}.scanner-message-error{color:var(--color-error)}.scanner-tips{margin:.75rem 0 1rem;padding-left:1.2rem;color:var(--color-text-muted);line-height:1.4}.scanner-tips li+li{margin-top:.35rem}.scan-fallback{margin-top:1rem}.scanner-checkin-btn{display:block;margin-top:.5rem;text-align:center;text-decoration:none;line-height:1.3}.grid-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.action-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:140px;text-align:center;text-decoration:none;color:var(--color-text)}.action-card-icon{display:flex;line-height:0}.action-card h3{margin:0}.action-card p{font-size:.875rem;margin:0}.bottom-nav{position:fixed;bottom:10px;left:50%;transform:translate(-50%);z-index:100;width:min(460px,calc(100% - 20px));display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:var(--color-nav-bg);border:2px solid var(--color-nav-border);border-radius:var(--radius-pill);padding:8px}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--color-nav-text);text-decoration:none;text-align:center;padding:8px 10px;border-radius:var(--radius-pill);text-transform:uppercase;font-variation-settings:"wdth" 75;font-weight:800;font-size:.7rem;line-height:1}.nav-item span{font-size:.7rem}.scan-pill{background:var(--color-nav-pill-bg)}.nav-item.active{background:var(--color-nav-active-bg)}.primary-btn,.option-btn{width:100%;border-radius:var(--radius-md);border:1px solid var(--color-btn-border);background:var(--color-btn-bg);color:var(--color-btn-text);padding:12px;font-weight:700;margin-top:8px}.option-btn.selected{background:var(--color-btn-selected-bg)}.text-input,.text-area{font-family:var(--font-family);width:100%;border-radius:var(--radius-sm);border:1px solid var(--color-input-border);background:var(--color-input-bg);color:var(--color-input-text);padding:12px;font-size:1rem}.text-area{min-height:120px}.muted{color:var(--color-text-muted)}.home-intro-card{margin-bottom:12px}.home-intro-card .copy{margin:0 0 .75rem}.intro-list{list-style:none;margin:0 0 2rem;padding:0;display:flex;flex-direction:column;gap:.5rem}.intro-list li{display:flex;align-items:flex-start;gap:8px}.intro-list-icon{flex-shrink:0;display:inline-flex;line-height:0}.intro-list li>span:last-child{flex:1;min-width:0}.home-intro-title{margin:0 0 .75rem}.progress-wrap{display:grid;gap:10px;margin-bottom:12px}.badge-progress{display:grid;gap:.85rem}.badge-progress-current{display:flex;gap:.75rem;align-items:flex-start}.badge-progress-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-pill);background:var(--color-badge-icon-bg);color:var(--color-badge-icon-text);flex-shrink:0}.badge-progress-label{margin:0;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;opacity:.85}.badge-progress-name{margin:.15rem 0 0;font-size:1.15rem;line-height:1.25}.badge-progress-desc{margin:.35rem 0 0;line-height:1.4}.badge-progress-count{margin:0;font-size:.95rem}.badge-progress-next{display:grid;gap:.35rem}.badge-progress-hint{margin:0;line-height:1.4;font-size:.92rem}.badge-progress-complete{padding-top:.15rem}.badge-unlock-toast-wrap{position:fixed;left:0;right:0;bottom:calc(4.75rem + env(safe-area-inset-bottom,0px));z-index:150;padding:0 1rem;pointer-events:none}.badge-unlock-toast{pointer-events:auto;display:flex;gap:.75rem;align-items:flex-start;max-width:28rem;margin:0 auto;padding:.9rem 1rem;border-radius:var(--radius-md);background:var(--color-badge-icon-text);color:var(--color-card-bg);box-shadow:0 10px 30px #00000047;animation:badge-unlock-in .35s ease-out}.badge-unlock-icon{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-pill);background:rgba(30,72,64,.1);flex-shrink:0}.badge-unlock-copy{flex:1;min-width:0}.badge-unlock-kicker{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.badge-unlock-name{margin:.15rem 0 0;font-size:1.05rem;font-weight:700;line-height:1.25}.badge-unlock-desc{margin:.35rem 0 0;font-size:.92rem;line-height:1.35}.badge-unlock-dismiss{flex-shrink:0;color:var(--color-card-bg);font-size:1.35rem;line-height:1;padding:.15rem .35rem}@keyframes badge-unlock-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.giveaway-entry-cta{margin-top:4px}.giveaway-entry-btn{width:100%;margin-top:4px}.giveaway-entry-form{display:flex;flex-direction:column;gap:.65rem;margin-top:.5rem}.giveaway-entry-form .giveaway-entry-intro{margin:0;font-size:.95rem}.giveaway-entry-optin{font-size:.9rem;line-height:1.35}.giveaway-entry-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.giveaway-entry-status{margin-top:.5rem}.giveaway-entry-confirmed{margin:0;font-size:.95rem;color:var(--color-link)}.progress-head{display:flex;justify-content:space-between}progress{width:100%;height:10px;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;border-radius:var(--radius-pill);background:var(--color-surface-light);overflow:hidden}progress::-webkit-progress-bar{background:var(--color-surface-light);border-radius:var(--radius-pill)}progress::-webkit-progress-value{background:var(--color-text);border-radius:var(--radius-pill)}progress::-moz-progress-bar{background:var(--color-text);border-radius:var(--radius-pill)}.admin-screen{max-width:960px;margin:0 auto}.admin-top-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.admin-top-row h1{margin:0}.admin-sign-out{font-size:.9rem}.admin-login-card{max-width:400px;padding:16px}.admin-login-title{margin:0 0 .35rem;font-size:1.1rem}.admin-login-copy{margin:0 0 1rem;font-size:.9rem;line-height:1.4}.admin-login-form{display:flex;flex-direction:column;gap:.35rem}.admin-login-label{margin-top:.35rem;font-size:.85rem}.admin-nav{display:flex;gap:8px;margin-bottom:1.25rem;flex-wrap:wrap}.admin-nav-link{display:inline-flex;align-items:center;padding:.5rem 1rem;border-radius:var(--radius-pill);border:1px solid rgba(210,204,172,.35);color:var(--color-text-muted);text-decoration:none;font-weight:600;font-size:.9rem;transition:background .15s,border-color .15s,color .15s}.admin-nav-link:hover{border-color:#d2ccac99;color:var(--color-btn-text)}.admin-nav-link--active{background:rgba(143,178,161,.35);border-color:var(--color-btn-border);color:var(--color-btn-text)}.admin-view-title{margin:0;font-size:1.1rem}.admin-view-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.admin-export-btn{width:auto;margin-top:0;flex-shrink:0}.admin-danger-panel{margin-top:1.25rem;padding:12px;border:1px solid rgba(240,140,140,.45)}.admin-danger-copy{margin:0 0 .65rem;line-height:1.4;font-size:.9rem}.admin-danger-label{display:block;margin-bottom:.35rem;font-size:.85rem}.admin-danger-input{margin-bottom:.75rem}.admin-danger-btn{width:100%;border-radius:var(--radius-md);border:1px solid #a85a5a;background:#5a2a2a;color:#f5d4d4;padding:12px;font-weight:700;font-family:var(--font-family);cursor:pointer}.admin-danger-btn:disabled{opacity:.45;cursor:not-allowed}.admin-danger-btn:not(:disabled):hover{background:#6e3434}.admin-reset-success{margin:.65rem 0 0;color:#b8e0c8;line-height:1.35}.admin-view{margin-bottom:1rem}.admin-error{margin:0 0 1rem;color:var(--color-error);line-height:1.35}.admin-analytics{margin-bottom:1.25rem}.admin-section-title{margin:0 0 .75rem;font-size:1.15rem}.admin-metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:1rem}.admin-metric{margin-bottom:0;padding:12px}.admin-metric-label{margin:0 0 .25rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted)}.admin-metric-value{margin:0;font-size:1.5rem;font-weight:700;line-height:1.2}.admin-metric-hint{margin:.35rem 0 0;font-size:.75rem;line-height:1.3}.admin-table-panel{margin-bottom:12px;padding:12px}.admin-panel-title{margin:0;font-size:1rem}.admin-panel-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.75rem;text-align:left;margin-bottom:.5rem}.admin-panel-toggle .admin-panel-title{flex:1}.admin-table-summary{margin:0;font-size:.9rem}.admin-table-scroll{overflow-x:auto;margin-top:.5rem}.admin-table{width:100%;border-collapse:collapse;font-size:.85rem}.admin-table th,.admin-table td{padding:.4rem .5rem;text-align:left;border-bottom:1px solid var(--color-divider);vertical-align:top}.admin-table th{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);font-weight:700}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tfoot tr.admin-table-total th,.admin-table tfoot tr.admin-table-total td{border-top:1px solid var(--color-divider-strong);border-bottom:none;font-weight:700}.admin-table tfoot tr.admin-table-total th{font-size:.85rem;text-transform:none;letter-spacing:normal;color:inherit}.admin-page-path{font-size:.8rem;word-break:break-all}.admin-giveaway-intro{margin:0 0 .75rem;line-height:1.4}.admin-giveaway-count{margin:0 0 .75rem}.admin-pick-winner-btn{width:auto;margin-top:0;margin-bottom:1rem}.admin-giveaway-winner{margin-bottom:1rem;padding:14px;border:1px solid rgba(143,178,161,.55);background:rgba(143,178,161,.2)}.admin-giveaway-winner-name{margin:0 0 .25rem;font-size:1.15rem;font-weight:700}.admin-giveaway-winner-email{margin:0 0 .35rem;word-break:break-all}.admin-giveaway-winner-meta{margin:0;font-size:.85rem}.admin-giveaway-row-winner td{background:rgba(143,178,161,.15)}.admin-giveaway-prizes-panel{margin-bottom:1rem}.giveaway-result{margin-top:.85rem}.giveaway-result-winner-panel{padding:1.25rem 1rem;border:2px solid rgba(143,178,161,.65);border-radius:var(--radius-xs);background:rgba(143,178,161,.22);text-align:center}.giveaway-result-winner-heading{display:flex;align-items:center;justify-content:center;gap:.4rem;margin:0 0 .65rem;font-size:clamp(1.5rem,6vw,1.85rem);font-weight:700;line-height:1.2;color:var(--color-link)}.giveaway-result-winner-prize{margin:0 0 .85rem;font-size:clamp(1.25rem,5vw,1.5rem);font-weight:600;line-height:1.35;color:var(--color-link)}.giveaway-result-winner-prize strong{font-weight:800}.giveaway-result-winner-claim{margin:0;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.15);font-size:1.05rem;line-height:1.45;color:#e8e4d4}.giveaway-result-miss{margin:0;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.08);line-height:1.45}.admin-opt-in-download-btn{font-size:.85rem;white-space:nowrap}.admin-brand-tag{display:inline-block;margin-left:.35rem;padding:.1rem .35rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-xs);background:rgba(210,204,172,.2);color:var(--color-text-muted);vertical-align:middle}.admin-stats{margin-bottom:1rem}.admin-stats-visitors{font-size:inherit}.admin-visitors-panel{margin-top:.75rem}.admin-visitors-title{margin:0 0 .75rem;font-size:1.1rem}.admin-visitors-list{margin:0;padding:0;list-style:none}.admin-visitor-row{display:grid;grid-template-columns:minmax(0,1.1fr) 3.5rem minmax(0,1.5fr) 5.5rem 4.5rem;gap:.5rem .75rem;padding:.5rem 0;border-bottom:1px solid var(--color-divider);font-size:.9rem}.admin-visitor-row:last-child{border-bottom:none}.admin-visitor-row--head{font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);padding-bottom:.35rem}.admin-visitor-row--total{font-weight:700;border-top:1px solid var(--color-divider-strong);border-bottom:none}.admin-visitor-email{display:block;margin-top:.15rem;font-size:.8rem;color:var(--color-text-muted);word-break:break-all}.admin-visitor-brands{font-size:.85rem;line-height:1.35}.admin-visitor-status{font-size:.8rem}.admin-visitor-delete-btn{border:none;background:none;padding:0;font:inherit;font-size:.8rem;color:#e8a0a0;text-decoration:underline;cursor:pointer}.admin-visitor-delete-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.admin-visitor-row{grid-template-columns:1fr}.admin-visitor-row--head{display:none}.admin-visitor-row:not(.admin-visitor-row--head):not(.admin-visitor-row--total)>span:before{display:block;font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);margin-bottom:.15rem}.admin-visitor-row:not(.admin-visitor-row--head):not(.admin-visitor-row--total)>span:nth-child(1):before{content:"Name"}.admin-visitor-row:not(.admin-visitor-row--head):not(.admin-visitor-row--total)>span:nth-child(2):before{content:"Scanned"}.admin-visitor-row:not(.admin-visitor-row--head):not(.admin-visitor-row--total)>span:nth-child(3):before{content:"Brands visited"}.admin-visitor-row:not(.admin-visitor-row--head):not(.admin-visitor-row--total)>span:nth-child(4):before{content:"Status"}}.admin-screen .card{margin-bottom:12px}.admin-download-all{margin-bottom:1rem}.admin-brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.admin-brand-card{margin-bottom:0;padding:12px}.admin-brand-card>*:first-child{margin-top:0}.admin-brand-card>*:last-child{margin-bottom:0}.admin-brand-name{margin:0 0 8px;font-size:1rem;line-height:1.2}.admin-brand-name-inner{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.admin-brand-premium-star{display:inline-flex;color:#d4af37;flex-shrink:0}.admin-brand-card--premium{box-shadow:inset 0 0 0 1px #d4af3759}.admin-brand-body{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.admin-brand-logo-wrap{flex:1;min-width:0;margin:0;padding:6px 8px;background:var(--color-surface-light);border-radius:var(--radius-xs)}.admin-brand-logo-wrap .brand-logo{width:100%;max-width:120px;height:40px;object-fit:contain}.admin-brand-body svg{flex-shrink:0;display:block;border-radius:var(--radius-xs);background:var(--color-surface-light);padding:4px}.admin-scan-link{display:block;word-break:break-all;font-size:.75rem;line-height:1.3;margin:0;color:var(--color-text)}.admin-qr-export-layer{position:absolute;left:-9999px;top:0;width:0;height:0;overflow:hidden;pointer-events:none}.inline-icon{display:inline-flex;align-items:center;margin-right:6px;vertical-align:middle}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;margin-top:1rem;margin-bottom:.5rem;font-size:.9rem}.breadcrumbs a{color:var(--color-text);text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumb-sep{color:#d2ccac99}.breadcrumb-current{color:var(--color-btn-text)}.brand-view .card{margin-top:12px;margin-bottom:12px}.brand-view .brand-card-top:first-of-type,.brand-view .card:first-of-type{margin-top:12px}.scan-checkin-prompt{background:#0f3d38;color:var(--color-text);padding:.75rem 1rem;border-radius:var(--radius-sm);margin:0 0 1rem;line-height:1.1}.brand-card-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--color-surface-light);border-radius:var(--radius-lg);padding:1rem 1.5rem;margin:12px 0}.brand-card-top .brand-status,.brand-card-top .brand-table{color:var(--color-card-bg)}.brand-card-top .brand-logo-wrap{margin:0;padding:0;background:transparent}.brand-card-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;flex-shrink:0}.brand-status,.brand-table{margin:0;text-align:right}.brand-table-plan-link{color:var(--color-card-bg);font-size:inherit;vertical-align:baseline}.brand-logo-wrap{background:var(--color-surface-light);border-radius:var(--radius-sm);padding:12px;display:inline-flex;align-items:center;justify-content:center;margin-top:.5rem;margin-bottom:0}.brand-logo{display:block;width:110px;height:55px;object-fit:contain}.brand-logo-placeholder{width:110px;min-height:55px;padding:8px}.brand-logo-placeholder-text{display:block;width:100%;font-size:.7rem;font-weight:700;line-height:1.15;text-align:center;text-transform:none;letter-spacing:normal;font-variation-settings:normal;color:var(--color-surface-light-text);word-break:break-word}.brand-link{display:inline-flex;align-items:center;gap:.5rem;color:#c8d6be;text-decoration:none;max-width:100%}.brand-link-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;line-height:0}.brand-link-text{text-decoration:underline;line-height:1.35;word-break:break-word}.note-explainer{margin-top:.35rem;line-height:1.35}.note-save-status{display:inline-flex;align-items:center;gap:6px;margin-top:8px;min-height:1.25rem}.note-save-spinner{width:14px;height:14px;border:2px solid rgba(210,204,172,.35);border-top-color:var(--color-text);border-radius:var(--radius-circle);animation:note-save-spin .8s linear infinite}@keyframes note-save-spin{to{transform:rotate(360deg)}}.explore-screen{position:relative}.explore-sticky-rail{position:absolute;top:0;right:0;bottom:0;width:0;z-index:10;pointer-events:none}.explore-table-plan-sticky{position:sticky;top:1rem;width:max-content;transform:translate(calc(-100% - 1rem));margin-top:calc(66px + 1rem);pointer-events:auto}.explore-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.explore-heading-row h1{margin:0;flex:1;min-width:0;padding-right:7.5rem}.explore-table-plan-btn{flex-shrink:0;margin:0;border-radius:var(--radius-pill);border:1px solid var(--color-btn-border);background:var(--color-btn-bg);color:var(--color-btn-text);padding:8px 12px;font-family:inherit;font-weight:700;font-size:.7rem;line-height:1.1;text-transform:uppercase;letter-spacing:.02em;cursor:pointer;white-space:nowrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--color-modal-backdrop)}.modal{display:flex;flex-direction:column;width:min(100%,420px);max-height:min(90vh,90dvh);background:var(--color-card-bg);border:2px solid var(--color-modal-border);border-radius:var(--radius-lg);overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 12px 16px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.modal-header h2{margin:0;font-size:1.25rem}.modal-close-btn{flex-shrink:0;font-size:1.5rem;line-height:1}.modal-body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px}.table-plan-zoom-controls{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.table-plan-zoom-btn{width:36px;height:36px;border-radius:var(--radius-xs);border:1px solid var(--color-btn-border);background:var(--color-btn-bg);color:var(--color-btn-text);font-size:1.25rem;line-height:1;font-weight:700;cursor:pointer}.table-plan-zoom-btn:disabled{opacity:.4;cursor:not-allowed}.table-plan-zoom-label{min-width:3.5rem;text-align:center;font-size:.85rem;font-weight:700}.table-plan-zoom-reset{margin-left:auto;border-radius:var(--radius-xs);border:1px solid var(--color-btn-border);background:transparent;color:var(--color-btn-text);padding:8px 12px;font-family:inherit;font-weight:700;font-size:.8rem;cursor:pointer}.table-plan-zoom-reset:disabled{opacity:.4;cursor:not-allowed}.table-plan-modal-body{overflow:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.table-plan-zoom-stage{margin:0 auto}.table-plan-image{display:block;width:100%;height:auto;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.explore-section{margin-top:1rem}.explore-section-all{margin-top:1.75rem;padding-top:1.75rem;border-top:1px solid var(--color-divider)}.explore-section-title{margin:0 0 .75rem;text-transform:uppercase}.explore-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.explore-brand-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background:var(--color-surface-light);border-radius:var(--radius-sm);padding:12px;text-decoration:none;color:var(--color-surface-light-text);min-height:120px}.explore-brand-card .explore-brand-logo-wrap{margin:0;padding:8px;background:var(--color-surface-light)}.explore-brand-card .brand-logo{width:100px;height:56px}.explore-brand-card .brand-logo-placeholder{width:100px;min-height:56px}.explore-brand-card .brand-logo-placeholder-text{font-size:.65rem}.explore-brand-name{font-size:.85rem;font-weight:500;line-height:1.2;text-align:center;text-transform:none;letter-spacing:normal;font-variation-settings:normal}.explore-brand-badges{position:absolute;top:8px;left:8px;display:flex;align-items:center;gap:4px;color:var(--color-btn-bg)}.explore-brand-shortlist,.explore-brand-saved{display:flex;align-items:center}.explore-brand-status{position:absolute;top:8px;right:8px;color:#2e8b57}.brand-actions{display:flex;gap:8px;margin-top:8px}.brand-actions .primary-btn,.brand-actions .secondary-btn{flex:1;margin-top:0}.brand-contact-opt-in h2,.brand-contact-opt-in h3{margin-top:0}.brand-contact-opt-in-body{margin-bottom:12px}.brand-contact-checkbox-label{display:flex;align-items:flex-start;gap:10px;font-weight:700;cursor:pointer}.brand-contact-checkbox-label input{margin-top:3px;flex-shrink:0}.brand-contact-opted-in-note,.brand-contact-saving{margin:8px 0 0}.brand-contact-privacy{margin:12px 0 0;font-size:.9rem}.brand-contact-details-form{display:grid;gap:8px;margin-top:8px}.brand-contact-details-form h3{margin:0}.brand-contact-label{display:grid;gap:4px;font-weight:700;font-size:.9rem}.brand-contact-form-actions{display:flex;gap:8px;margin-top:4px}.brand-contact-form-actions .primary-btn,.brand-contact-form-actions .secondary-btn{flex:1;margin-top:0}.brand-contact-success,.brand-contact-error{margin:8px 0 0;font-size:.9rem}.brand-contact-error{color:var(--color-error)}.my-day-name-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;margin:0 0 .5rem}.my-day-name-form{margin-bottom:.75rem}.my-day-name-label{display:block;margin-bottom:.35rem;font-weight:700}.my-day-name-actions{display:flex;gap:8px;margin-top:8px}.my-day-name-actions .primary-btn,.my-day-name-actions .secondary-btn{flex:1;margin-top:0}.linkish-btn{background:none;border:none;padding:0;color:var(--color-text);text-decoration:underline;font:inherit;font-weight:700;cursor:pointer}.icon-btn-plain{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:4px;color:var(--color-text);cursor:pointer;line-height:0}.secondary-btn{width:100%;border-radius:var(--radius-md);border:1px solid var(--color-btn-border);background:transparent;color:var(--color-btn-text);padding:12px;font-weight:700}.danger-btn{width:100%;border-radius:var(--radius-md);border:1px solid #c97a7a;background:transparent;color:var(--color-error);padding:12px;font-weight:700;cursor:pointer}.my-day-email-section{margin-top:1rem}.my-day-email-btn{margin-top:0}.my-day-email-form{display:grid;gap:8px}.my-day-email-label{font-size:.9rem}.my-day-email-form .secondary-btn{width:100%;border-radius:var(--radius-md);border:1px solid var(--color-btn-border);background:transparent;color:var(--color-btn-text);padding:12px;font-weight:700}.my-day-email-success-wrap .my-day-email-success,.my-day-email-success,.my-day-email-error{margin:8px 0 0;font-size:.9rem}.my-day-email-hint{margin:6px 0 0;font-size:.82rem;line-height:1.4}.my-day-email-error{color:var(--color-error)}.my-day-clear-btn{margin-top:1rem}.my-day-view .card,.challenge-view .card{margin-top:12px;margin-bottom:12px}.my-day-list{margin:0;padding:0;list-style:none}.my-day-list li+li{margin-top:.5rem}.my-day-challenge-status{margin:.25rem 0 .75rem}.unanswered-questions,.unanswered-questions-btn,.unanswered-questions-panel{margin-top:.75rem}.unanswered-questions-item+.unanswered-questions-item{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--color-divider)}.unanswered-questions-item h4{margin:0 0 .5rem;font-size:1rem}.my-day-shortlist-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.my-day-visit-status{display:flex;align-items:center;gap:.35rem;flex-shrink:0;font-size:.85rem;color:var(--color-text-muted)}.bingo-intro p{margin:0 0 .75rem;color:var(--color-text-muted)}.bingo-intro p:last-child{margin-bottom:1rem}.bingo-progress{margin-bottom:.75rem}.bingo-regenerate-btn{margin-top:1rem}.bingo-regenerate-desc{margin:0 0 1rem;color:var(--color-text-muted)}.modal-actions{display:flex;gap:8px}.modal-actions .primary-btn,.modal-actions .secondary-btn{flex:1;margin-top:0}.bingo-card{background:var(--color-btn-text);border:3px solid var(--color-text);border-radius:var(--radius-lg);padding:10px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.bingo-grid{display:grid;grid-template-columns:repeat(4,100px);gap:8px;width:max-content;min-width:100%}.bingo-cell{position:relative;width:100px;height:100px;margin:0;padding:8px;border:2px solid var(--color-card-bg);border-radius:var(--radius-xs);background:var(--color-surface-light);color:var(--color-surface-light-text);font-family:inherit;font-size:.68rem;font-weight:500;line-height:1.15;text-transform:none;letter-spacing:normal;font-variation-settings:normal;display:flex;align-items:center;justify-content:center;text-align:center;cursor:pointer}.bingo-cell-text{display:block;overflow:hidden}.bingo-cell-done{background:var(--color-card-bg);color:var(--color-text);border-color:var(--color-btn-selected-bg)}.bingo-cell-check{position:absolute;top:3px;right:3px;color:var(--color-text)}.learn-page h1{margin-bottom:1rem}.learn-copy{line-height:1.45;text-transform:none;letter-spacing:normal;font-variation-settings:normal;font-weight:500;margin:0 0 .75rem}.learn-section{margin-top:2rem;scroll-margin-top:12px}.learn-section-title{font-size:1.35rem;margin:0 0 .75rem}.learn-toc{margin-top:0}.learn-toc-title{font-size:1.1rem;margin-top:0}.learn-toc-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}@media (min-width: 400px){.learn-toc-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.learn-toc-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:var(--radius-xs);border:1px solid rgba(127,161,143,.5);background:rgba(20,63,58,.45);color:var(--color-btn-text);text-decoration:none;font-size:.9rem;text-transform:none;letter-spacing:normal;font-variation-settings:normal;font-weight:600;line-height:1.25}.learn-toc-link:hover{background:rgba(42,80,73,.65)}.learn-callout{margin:.75rem 0 0;padding:.75rem 1rem;border-radius:var(--radius-sm);border:1px solid rgba(127,161,143,.6);background:rgba(15,61,56,.85);line-height:1.4;font-size:.95rem}.learn-tips-grid{display:grid;gap:12px;margin-top:.75rem}.learn-tip-card{border:1px solid rgba(127,161,143,.55);display:flex;flex-direction:column;gap:.5rem}.learn-tip-card h3{margin:0;font-size:1.1rem}.learn-tip-icon{display:inline-flex;line-height:0;color:var(--color-btn-text)}.learn-accordion{display:flex;flex-direction:column;gap:8px;margin-top:.75rem}.learn-accordion-item{border:1px solid rgba(127,161,143,.45);border-radius:var(--radius-sm);overflow:hidden;background:rgba(20,63,58,.35)}.learn-accordion-heading{margin:0}.learn-accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:none;background:transparent;color:var(--color-btn-text);font-family:inherit;font-size:.95rem;font-weight:700;text-align:left;cursor:pointer;text-transform:none;letter-spacing:normal;font-variation-settings:normal;line-height:1.3}.learn-accordion-trigger-text{flex:1;min-width:0}.learn-accordion-chevron{flex-shrink:0;display:inline-flex;transition:transform .2s ease}.learn-accordion-chevron.open{transform:rotate(180deg)}.learn-accordion-panel{padding:0 14px 14px}.learn-accordion-panel .learn-copy{margin:0}.learn-prompt-card{margin-top:1.5rem}.learn-prompt-card h3{margin-top:0;font-size:1.1rem}.learn-prompt-question{margin:.75rem 0;padding:.75rem 1rem;border-radius:var(--radius-sm);background:rgba(15,61,56,.85);border:1px solid rgba(127,161,143,.5);line-height:1.4;font-size:1rem;text-transform:none;letter-spacing:normal;font-variation-settings:normal;font-weight:600}.learn-subsection{margin-top:1.5rem}.learn-subsection h3{font-size:1.15rem;margin:0 0 .5rem}.learn-category-grid{display:grid;gap:10px;margin-top:.75rem}.learn-category-card{border:1px solid rgba(127,161,143,.45)}.learn-category-card h4{margin:0 0 .35rem;font-size:1rem;text-transform:none;letter-spacing:normal;font-variation-settings:normal}.learn-category-label{margin:0 0 .5rem;font-size:.85rem;color:var(--color-text-muted);line-height:1.35;font-weight:600}.learn-category-card-note{border-color:#efe8cf8c;background:rgba(15,61,56,.6)}.learn-quiz{margin-top:.75rem}.learn-quiz-progress{margin:0 0 .75rem}.learn-quiz-fieldset{margin:0;padding:0;border:none}.learn-quiz-legend{display:block;margin:0 0 .75rem;padding:0;font-size:1.1rem;font-weight:800;text-transform:uppercase;letter-spacing:.025em;font-variation-settings:"wdth" 75;line-height:1.25;color:var(--color-btn-text)}.learn-quiz-options{display:grid;gap:8px}.learn-quiz-back{margin-top:.75rem}.learn-quiz-result-label{margin:0 0 .25rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-weight:700}.learn-quiz-result h3{margin:0 0 .75rem;font-size:1.25rem}.learn-quiz-result-block{margin-top:1rem}.learn-quiz-result-block h4{margin:0 0 .35rem;font-size:.95rem;text-transform:uppercase;letter-spacing:.03em}.learn-quiz-actions{display:grid;gap:8px;margin-top:1.25rem}.learn-quiz-cta{display:block;text-align:center;text-decoration:none;margin-top:0}.learn-etiquette-list{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:10px}.learn-etiquette-card{display:flex;gap:12px;align-items:flex-start;border:1px solid rgba(127,161,143,.45)}.learn-etiquette-card>*:first-child,.learn-etiquette-card>*:last-child{margin-top:0;margin-bottom:0}.learn-etiquette-card h4{margin:0 0 .35rem;font-size:1rem;text-transform:none;letter-spacing:normal;font-variation-settings:normal}.learn-etiquette-card .learn-copy{margin-bottom:0}.learn-etiquette-icon{flex-shrink:0;display:inline-flex;margin-top:2px;color:var(--color-progress-fill)}.learn-page-footer{margin-top:2rem;padding-bottom:.5rem}.learn-explore-btn{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;margin-top:0;text-align:center;line-height:1.3}.learn-footer-note{margin:.75rem 0 0;text-align:center;line-height:1.4}
