*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{max-width:100vw;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}a[href^="mailto:"]{color:#667eea;font-weight:800;text-decoration:underline;-webkit-text-decoration-color:rgba(102,126,234,.35);text-decoration-color:rgba(102,126,234,.35)}.bg-gradient{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.bg-gradient-center,.bg-gradient-padded{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}.bg-gradient-center,.bg-gradient-center-col{display:flex;align-items:center;justify-content:center}.bg-gradient-center-col{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;flex-direction:column;padding:20px;position:relative}.container{max-width:1200px;margin:0 auto}.container-card{background:white;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.2);max-width:550px;width:100%;padding:40px;text-align:center}.logo-container{display:flex;justify-content:center;margin-bottom:25px}.logo-container-center{text-align:center;margin-bottom:30px}.logo-container-center img{height:80px;margin-bottom:15px;border-radius:16px;filter:drop-shadow(0 4px 20px rgba(0,0,0,.2))}.logo-container-center h1{color:white;font-size:32px;font-weight:700;text-shadow:0 2px 10px rgba(0,0,0,.2)}.logo{max-width:180px;height:auto;border-radius:15px}.gradient-text{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{color:#666;font-size:18px;margin-bottom:30px;line-height:1.6}.btn{padding:12px 30px;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;text-decoration:none;display:inline-block}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,.4)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-lg{padding:16px 40px;font-size:18px;font-weight:600;border-radius:10px;margin:10px}.btn-secondary{background:rgba(102,126,234,.1);color:#667eea;border:2px solid #667eea}.btn-secondary:hover{background:rgba(102,126,234,.2)}.btn-green{background:linear-gradient(135deg,#27ae60,#229954)}.btn-green:hover{box-shadow:0 5px 15px rgba(39,174,96,.4)}.btn-link{background:rgba(255,255,255,.95);color:#667eea;padding:8px 14px;border-radius:6px;text-decoration:none;font-weight:600;font-size:.85em;box-shadow:0 2px 8px rgba(0,0,0,.15);transition:all .2s;display:inline-flex;align-items:center;gap:5px;border:none;cursor:pointer;white-space:nowrap}.btn-link:hover{background:white;box-shadow:0 4px 12px rgba(0,0,0,.25)}.submit-btn{width:100%;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;border-radius:10px;font-size:17px;font-weight:700;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px rgba(102,126,234,.3)}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 25px rgba(102,126,234,.4)}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.features-list{text-align:left;margin:30px 0;background:#f8f9fa;padding:25px;border-radius:10px}.features-list h3{color:#333;font-size:18px;margin-bottom:15px;text-align:center}.feature-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;color:#555;line-height:1.5}.feature-item:last-child{margin-bottom:0}.feature-icon{font-size:20px;flex-shrink:0}.guest-note{margin-top:25px;padding:20px;background:#e3f2fd;border-radius:8px;font-size:14px;line-height:1.6}.guest-note,.guest-note strong{color:#0d47a1}.marketing-note{margin-top:18px;color:#5d6475;font-size:14px;line-height:1.6}.top-nav{position:absolute;top:20px;right:20px}.top-nav a{color:white;text-decoration:none;font-size:15px;font-weight:500;transition:all .3s;display:inline-flex;align-items:center;gap:6px}.top-nav a:hover{opacity:.8}.top-nav .auth-back-btn{min-height:40px;padding:9px 16px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:8px;font-weight:800;box-shadow:0 4px 16px rgba(0,0,0,.12)}.top-nav .auth-back-btn:hover{opacity:1;background:rgba(255,255,255,.24);transform:translateY(-1px)}.auth-container{background:white;border-radius:20px;box-shadow:0 10px 50px rgba(0,0,0,.3);width:100%;max-width:440px;overflow:hidden}.auth-tabs{display:flex;background:#f8f8f8}.auth-tab{flex:1 1;padding:20px;text-align:center;font-weight:600;font-size:17px;cursor:pointer;border:none;background:transparent;color:#999;transition:all .3s;position:relative}.auth-tab.active{background:white;color:#667eea}.auth-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(135deg,#667eea,#764ba2)}.auth-form{padding:35px;display:none}.auth-form.active{display:block}.form-group{margin-bottom:22px;display:flex;flex-direction:column}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:600;font-size:14px}.form-group input,.form-group select{width:100%;padding:14px 16px;border:2px solid #e5e5e5;border-radius:10px;font-size:15px;transition:all .3s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1)}.form-group input[readonly]{background:#f6f8ff;border-color:#cdd6ff;color:#4b5563;cursor:not-allowed}.form-helper-text{margin-top:8px;color:#667085;font-size:13px;line-height:1.4}.auth-policy-consent{display:grid;grid-template-columns:18px 1fr;grid-gap:10px;gap:10px;align-items:flex-start;margin:4px 0 20px;color:#5f6673;font-size:13px;line-height:1.5}.auth-policy-consent input{width:18px;height:18px;margin-top:1px;accent-color:#667eea}.auth-policy-consent a{color:#667eea;font-weight:800;text-decoration:underline;-webkit-text-decoration-color:rgba(102,126,234,.35);text-decoration-color:rgba(102,126,234,.35)}.error-message{background:linear-gradient(135deg,#fee,#fdd);color:#c33;border-left:4px solid #c33}.error-message,.success-message{padding:14px;border-radius:10px;margin-bottom:20px;font-size:14px}.success-message{background:linear-gradient(135deg,#efe,#dfd);color:#2a7c2a;border-left:4px solid #2a7c2a}.page-header{justify-content:space-between;color:white;margin-bottom:30px}.header-left,.page-header{display:flex;align-items:flex-start;gap:15px}.header-brand-logo{width:56px;height:56px;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.22);flex-shrink:0}.header-title{display:flex;flex-direction:column}.page-header h1{font-size:1.8em;margin:0;font-weight:700}.page-header .subtitle{font-size:.95em;opacity:.9;margin-top:4px;color:rgba(255,255,255,.9);margin-bottom:0}.header-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.page-header.page-header-shell{background:rgba(0,0,0,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 20px rgba(0,0,0,.1);padding:16px 18px;border-radius:12px;margin-bottom:24px}.filters{background:white;padding:25px;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,.2);margin-bottom:30px;display:grid;grid-template-columns:1fr 1fr auto;grid-gap:15px;gap:15px;align-items:end}.filters label{font-weight:600;margin-bottom:8px;color:#333;font-size:.9em}.filters input[type=date],.filters select{padding:12px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:1em;transition:border-color .3s}.filters input[type=date]:focus,.filters select:focus{outline:none;border-color:#667eea}.section-header{background:white;padding:20px 25px;border-radius:12px;margin-bottom:20px;box-shadow:0 5px 15px rgba(0,0,0,.1)}.section-header h2{font-size:1.8em;color:#333;display:flex;align-items:center;gap:10px}.section-header p{margin-top:8px;color:#666;font-size:.95em}.tee-times-grid{display:grid;grid-gap:20px;gap:20px;margin-bottom:30px;grid-template-columns:1fr;max-width:600px;margin-left:auto;margin-right:auto}.tee-time-card{background:white;border-radius:12px;padding:20px;box-shadow:0 5px 15px rgba(0,0,0,.1);transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden;min-width:0}.tee-time-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,.2)}.card-time{font-size:1.8em;font-weight:700;color:#667eea;margin-bottom:10px;padding-right:70px}.card-course-name{font-size:1.1em;font-weight:600;color:#333;margin-bottom:8px;word-wrap:break-word}.card-date{color:#666;margin-bottom:15px;font-size:.9em}.card-pricing{display:flex;align-items:baseline;gap:10px;margin-bottom:15px;flex-wrap:wrap}.card-price{font-size:2em;font-weight:700;color:#27ae60}.card-details{display:flex;justify-content:space-between;margin-bottom:15px;color:#666;font-size:.9em}.card-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.card-tag{background:#f0f4ff;color:#667eea;padding:3px 10px;border-radius:12px;font-size:.8em;font-weight:600}.book-btn{width:100%;padding:12px;background:#27ae60;color:white;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .3s,transform .2s,box-shadow .2s;font-size:1em;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.book-btn:hover{background:#229954;transform:translateY(-2px);box-shadow:0 5px 15px rgba(39,174,96,.4)}.deal-card{background:white;border-radius:15px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.2);transition:transform .3s,box-shadow .3s;position:relative}.deal-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,.3)}.deal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:15px;position:relative}.deal-card-badge{position:absolute;top:12px;right:12px;z-index:3;background:#f39c12;color:#fff;border-radius:999px;min-width:44px;height:32px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;font-size:.95em;font-weight:700;box-shadow:0 3px 10px rgba(243,156,18,.35)}.deal-title{font-size:1.1em;font-weight:700;margin-bottom:6px;line-height:1.3}.deal-meta{font-size:.85em;opacity:.95;display:flex;gap:10px;flex-wrap:wrap}.deal-body{padding:15px}.deal-description{color:#666;line-height:1.4;font-size:.9em}.deal-description,.whats-included{margin-bottom:15px}.whats-included h3{font-size:.8em;color:#333;margin-bottom:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.items-list{list-style:none;padding:0}.item{display:flex;align-items:flex-start;gap:8px;padding:8px;background:#f8f9fa;border-radius:6px;margin-bottom:6px}.item-icon{font-size:1.1em;flex-shrink:0}.item-details{flex:1 1}.item-name{font-weight:600;color:#333;margin-bottom:2px;font-size:.9em}.item-desc{font-size:.8em;color:#666}.pricing-section{border-top:2px solid #f0f0f0;padding-top:12px;margin-top:12px}.price-breakdown{display:flex;justify-content:space-between;margin-bottom:6px;color:#666;font-size:.85em}.price-breakdown.total{border-top:2px solid #e0e0e0;padding-top:8px;margin-top:8px;font-size:1em;font-weight:700;color:#333}.price-value{color:#27ae60;font-weight:700;font-size:1.2em}.dash-header{background:rgba(0,0,0,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:white;padding:20px;box-shadow:0 2px 20px rgba(0,0,0,.1)}.dash-header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo-section{display:flex;align-items:center;gap:12px}.logo-section img{height:40px;border-radius:8px}.logo-section h1{font-size:24px;font-weight:600}.header-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);color:white;border-radius:6px;font:inherit;line-height:1;-moz-appearance:none;appearance:none;-webkit-appearance:none;text-decoration:none;font-size:14px;cursor:pointer;transition:all .3s}.header-btn:hover{background:rgba(255,255,255,.25);transform:translateY(-1px)}.header-action-support{background:rgba(255,255,255,.22)}.header-notification-link{position:relative;width:42px;height:42px;padding:0;border-radius:999px}.notification-bell-icon{width:18px;height:18px}.notification-bell-label{display:none}.notification-badge{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:linear-gradient(135deg,#27ae60,#229954);color:white;font-size:11px;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(39,174,96,.38);border:2px solid rgba(255,255,255,.95)}.welcome-section{background:white;border-radius:12px;padding:30px;margin-bottom:30px;box-shadow:0 4px 20px rgba(0,0,0,.1);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.welcome-text{flex:1 1;min-width:200px}.welcome-section h2{font-size:28px;margin-bottom:10px}.welcome-section p{color:#666;font-size:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:20px;gap:20px;margin-bottom:30px}.stat-card{background:white;border-radius:12px;padding:25px;text-align:center;box-shadow:0 4px 20px rgba(0,0,0,.1);transition:transform .3s}.stat-card:hover{transform:translateY(-3px)}.stat-card h3{font-size:14px;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.stat-sub{font-size:12px;color:#888;margin-bottom:8px}.stat-value{font-size:28px;font-weight:700;color:#333}.stat-value.gradient-text{font-size:28px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-value-credits{background:linear-gradient(135deg,#27ae60,#2ecc71);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-points-count{font-size:14px;color:#666;margin-top:6px;font-weight:600}.stats-grid-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.stats-grid-dashboard .stat-card{min-height:190px}.stat-card{border:2px solid transparent}.stat-card:hover{border-color:#667eea}.profile-section{background:white;border-radius:12px;padding:30px;margin-bottom:30px;box-shadow:0 4px 20px rgba(0,0,0,.1)}.profile-section h3{font-size:20px;color:#333;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.info-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f5f5f5}.info-row:last-child{border-bottom:none}.info-label{color:#888;font-weight:500}.info-value{color:#333;font-weight:600;text-align:right}.welcome-referral{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#f8f9ff,#f0f4ff);padding:15px 20px;border-radius:10px;border:1px solid rgba(102,126,234,.2)}.ref-code-welcome{font-family:SF Mono,Monaco,Courier New,monospace;font-size:16px;font-weight:600;color:#667eea;background:white;padding:8px 14px;border-radius:6px;border:1px solid rgba(102,126,234,.3);cursor:pointer;transition:all .2s}.ref-code-welcome:hover{background:#667eea;color:white}.share-btn{padding:8px 14px;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.share-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.4)}.qr-btn{background:linear-gradient(135deg,#f39c12,#e67e22);color:white;padding:8px 16px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s}.qr-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(243,156,18,.4)}.ref-code-container{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ref-code{background:linear-gradient(135deg,rgba(102,126,234,.08),rgba(118,75,162,.08));padding:8px 16px;border-radius:8px;font-family:monospace;font-size:16px;color:#667eea;font-weight:700;cursor:pointer;transition:all .3s;border:2px solid #667eea}.ref-code:hover{background:linear-gradient(135deg,rgba(102,126,234,.15),rgba(118,75,162,.15));transform:scale(1.02)}.copy-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:8px 16px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s}.copy-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(102,126,234,.4)}.ref-link-helper{font-size:12px;color:#999;margin-top:5px}.info-row-referral{align-items:flex-start}.info-row-referral .info-value{display:grid;justify-items:end;grid-gap:10px;gap:10px}.info-row-referral .ref-code-container{width:min(154px,100%);flex-direction:column;align-items:stretch;gap:10px}.info-row-referral .copy-btn,.info-row-referral .qr-btn,.info-row-referral .ref-code{width:100%;min-height:46px;display:inline-flex;align-items:center;justify-content:center;text-align:center}.info-row-referral .ref-link-helper{max-width:220px;margin-top:0;text-align:right}.toast{position:fixed;bottom:30px;right:30px;background:linear-gradient(135deg,#27ae60,#2ecc71);color:white;padding:16px 24px;border-radius:10px;box-shadow:0 4px 20px rgba(0,0,0,.2);font-weight:600;opacity:0;transform:translateY(20px);transition:all .3s;z-index:1000}.toast-show{opacity:1;transform:translateY(0)}.qr-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:9999;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.qr-modal-show{display:flex}.qr-modal-content{background:white;padding:30px;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.3);text-align:center;max-width:400px}.qr-modal-content h3{margin:0 0 15px;color:#333;font-size:24px}.qr-modal-content p{color:#666;margin-bottom:20px;font-size:14px}.qr-code-image{margin:20px 0;padding:20px;background:white;border-radius:12px;box-shadow:0 4px 15px rgba(0,0,0,.1)}.qr-code-image img{max-width:100%;height:auto;border-radius:8px}.qr-modal-hint{font-size:12px;color:#999}.close-qr-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;margin-top:15px;transition:all .2s}.close-qr-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(102,126,234,.4)}.profile-info{display:grid;grid-gap:0;gap:0}.cta-section{background:white;border-radius:12px;padding:40px;text-align:center;margin-bottom:30px;box-shadow:0 4px 20px rgba(0,0,0,.1)}.cta-section h3{font-size:24px;margin-bottom:10px}.cta-section p{color:#666;margin-bottom:20px}.cta-btn{display:inline-block;padding:14px 35px;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border-radius:10px;font-weight:700;font-size:16px;text-decoration:none;transition:transform .2s,box-shadow .2s}.cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 25px rgba(102,126,234,.4)}.loading-spinner{display:inline-block;width:24px;height:24px;border:3px solid #f3f3f3;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-container{text-align:center;padding:60px 20px;color:white}.loading-container p{margin-top:16px;font-size:1.1em;opacity:.9}.status-message{padding:20px;margin:20px 0;font-size:1.1em;color:#666}.no-results,.status-message{background:white;border-radius:12px;text-align:center}.no-results{padding:60px 20px}.no-results h2{color:#333;margin-bottom:10px}.no-results p{color:#666}.placeholder-card{background:white;border-radius:12px;padding:40px;text-align:center;box-shadow:0 4px 20px rgba(0,0,0,.1);margin-bottom:30px}.placeholder-card h3{color:#333;margin-bottom:8px}.placeholder-card p{color:#888}.rewards-banner{background:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:16px 20px;margin-bottom:24px;color:white}.rewards-banner-content{display:flex;align-items:center;gap:14px;font-size:.95em;line-height:1.5}.rewards-banner-icon{font-size:1.6em;flex-shrink:0}.catalog-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px;gap:20px;margin-bottom:30px}.my-deals-toolbar{background:rgba(255,255,255,.95);border:1px solid rgba(102,126,234,.2);border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:0 6px 18px rgba(0,0,0,.12)}.my-deals-toolbar-title{font-size:.85em;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#5b4fb5;margin-bottom:10px}.my-deals-toolbar-controls{display:grid;grid-template-columns:minmax(0,1fr) 180px 220px;grid-gap:10px;gap:10px}.my-deals-search-input,.my-deals-status-select{border:1px solid #cdd6ff;border-radius:8px;padding:10px 12px;font-size:.95em;color:#2f2f3a;background:white}.my-deals-search-input:focus,.my-deals-status-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.14)}.my-deals-toolbar-meta{margin-top:10px;color:#666;font-size:.85em}.my-deals-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.my-deal-card{border:1px solid rgba(102,126,234,.18)}.my-deal-header{display:grid;grid-gap:6px;gap:6px;align-items:start;padding-right:92px}.my-deal-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.my-deal-title-row .deal-title{margin-bottom:0;min-width:0;flex:1 1}.my-deal-status-chip{border-radius:999px;font-size:12px;font-weight:700;padding:5px 12px;white-space:nowrap;border:1px solid rgba(0,0,0,.05)}.my-deal-body{display:grid;grid-gap:14px;gap:14px}.my-deal-code-stack{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:10px;gap:10px}.my-deal-code-box{background:#f8fbff;border:2px dashed #7f8cff;border-radius:10px;padding:14px 16px;display:grid;grid-gap:8px;gap:8px}.my-deal-code-box-teepay{background:#f3fff8;border-color:#7cd9a5}.my-deal-code-label{color:#666;font-size:13px}.my-deal-code-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.my-deal-code-note{font-size:12px;color:#2d8a57;margin-top:2px}.my-deal-code-status-chip{border-radius:999px;font-size:11px;font-weight:700;padding:4px 10px;white-space:nowrap;border:1px solid rgba(0,0,0,.05)}.my-deal-code-value{font-size:24px;font-weight:800;letter-spacing:1.5px;line-height:1.15}.my-deal-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:8px;gap:8px;color:#333;font-size:.9em}.my-deal-included-title{margin:0 0 8px;font-size:.92em;color:#333}.my-deal-included-list{list-style:none;margin:0;padding-left:0;display:grid;grid-gap:6px;gap:6px}.my-deal-included-item{display:flex;gap:8px;align-items:baseline;color:#444;font-size:.88em}.notification-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.notification-info-banner{background:rgba(255,255,255,.92);border:1px solid rgba(102,126,234,.18);border-radius:12px;padding:14px 16px;margin-bottom:18px;color:#4a4a57;box-shadow:0 6px 18px rgba(0,0,0,.1)}.notifications-list{display:grid;grid-gap:16px;gap:16px;margin-bottom:30px}.notification-card{background:white;border-radius:14px;padding:20px 22px;border:1px solid rgba(102,126,234,.14);box-shadow:0 8px 24px rgba(0,0,0,.12)}.notification-card-highlight{border-color:rgba(102,126,234,.45);box-shadow:0 10px 30px rgba(102,126,234,.16);background:linear-gradient(180deg,#ffffff,#f9faff)}.notification-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.notification-pill{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700}.notification-pill-par{background:#fff8e1;color:#c76c00;border:1px solid #ffd978}.notification-pill-player{background:#f1ebff;color:#5b4fb5;border:1px solid #cec0ff}.notification-status-chip{border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;background:#edf2f7;color:#5f6673}.notification-status-chip-new{background:linear-gradient(135deg,#667eea,#764ba2);color:white}.notification-card-main{display:grid;grid-template-columns:140px minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}.notification-card-amount{font-size:32px;font-weight:800;line-height:1;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.notification-card-copy h3{color:#2c2c37;font-size:1.08em;margin-bottom:8px}.notification-card-copy p{color:#666;line-height:1.6}.notification-card-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid #eef1f7;color:#666;font-size:.86em}.course-toolbar-form{display:grid;grid-template-columns:1fr 190px auto auto;grid-gap:8px;gap:8px;align-items:center}.course-toolbar-input,.course-toolbar-select{width:100%;padding:10px 12px;border-radius:8px;border:1px solid #d9d9d9;font-size:14px}.course-toolbar-input:focus,.course-toolbar-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.14)}.course-toolbar-btn{padding:10px 14px}.course-toolbar-btn-clear{background:#555}.course-vouchers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.course-voucher-card{border:1px solid rgba(102,126,234,.18)}.course-voucher-header{display:grid;grid-gap:6px;gap:6px;align-items:start;padding-right:92px}.course-voucher-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.course-voucher-title-row .deal-title{margin-bottom:0}.course-voucher-status-chip{border-radius:999px;font-size:12px;font-weight:700;padding:5px 12px;white-space:nowrap;border:1px solid rgba(0,0,0,.05)}.course-voucher-body{display:grid;grid-gap:12px;gap:12px}.course-voucher-tags{display:flex;flex-wrap:wrap;gap:6px}.course-voucher-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:8px;gap:8px;color:#333;font-size:.9em}.course-voucher-actions{margin-top:2px}.catalog-card{background:white;border-radius:14px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.15);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column;position:relative;border:1px solid rgba(102,126,234,.14)}.catalog-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px rgba(0,0,0,.22)}.catalog-card--sold-out{opacity:.7}.catalog-card--sold-out:hover{transform:none}.catalog-card-header{background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:16px 18px 14px}.catalog-card-title{font-size:1.18em;font-weight:700;margin-bottom:6px;line-height:1.3;padding-right:72px}.catalog-card-meta{font-size:.78em;opacity:.9;display:flex;gap:8px;flex-wrap:wrap}.catalog-card-body{padding:16px 18px;display:flex;flex-direction:column;gap:0;flex:1 1}.catalog-card-description{color:#666;font-size:.85em;line-height:1.45;margin-bottom:14px}.catalog-inclusions{margin-bottom:14px;display:flex;flex-direction:column;gap:6px}.catalog-inclusion-item{display:flex;align-items:center;gap:8px;font-size:.87em;color:#333;font-weight:500}.catalog-inclusion-item span:first-child{font-size:1.1em;flex-shrink:0}.catalog-card-badge{position:absolute;top:12px;right:12px;z-index:2;background:#f39c12;color:#fff;border-radius:999px;min-width:44px;height:32px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;font-size:.95em;font-weight:700;box-shadow:0 3px 10px rgba(243,156,18,.35)}.catalog-points-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.catalog-points-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:.78em;font-weight:700}.catalog-points-badge.points-par{background:#fff8e1;color:#e67e00;border:1px solid #ffe082}.catalog-points-badge.points-player{background:#ede7f6;color:#667eea;border:1px solid #b39ddb}.points-star{font-size:1em}.catalog-business-rule{background:#fff3e0;border-left:3px solid #ff9800;padding:8px 12px;border-radius:0 8px 8px 0;font-size:.82em;color:#666;margin-bottom:12px}.catalog-card-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:14px;border-top:2px solid #f0f0f0;margin-bottom:14px}.catalog-card-footer-savings{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);align-items:stretch;grid-gap:16px;gap:16px}.catalog-total-value-block{display:flex;flex-direction:column;justify-content:center;min-width:0}.catalog-total-label{color:#666;font-size:.78em;line-height:1.2}.catalog-strike-price{color:#666;font-size:1.05em;line-height:1.2;font-weight:600;text-decoration:line-through}.catalog-off-line,.catalog-save-line{color:#27ae60;font-weight:700;line-height:1.25}.catalog-save-line{font-size:.88em}.catalog-off-line{font-size:.78em}.catalog-price-divider{width:1px;background:#f0f0f0}.catalog-price-block{display:flex;flex-direction:column}.catalog-price-block-offer{align-items:flex-end;justify-content:center;text-align:right}.catalog-price{font-size:2em;font-weight:800;color:#27ae60;line-height:1}.catalog-price-sub{font-size:.75em;color:#888;margin-top:2px}.catalog-availability{font-size:.85em;text-align:right}.catalog-price-block-offer .catalog-availability{margin-top:4px}.sold-out-badge{background:#e74c3c;color:white;padding:3px 10px;border-radius:20px;font-size:.8em;font-weight:700}.catalog-share-btn{width:100%;padding:10px;background:rgba(102,126,234,.1);color:#667eea;border:2px solid #667eea;border-radius:8px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .2s;margin-top:8px;display:flex;align-items:center;justify-content:center;gap:8px}.catalog-share-btn:hover{background:#667eea;color:white}.catalog-share-btn.copied{background:#27ae60;color:white;border-color:#27ae60}.referral-explainer{background:white;border-radius:14px;padding:28px 30px;margin-bottom:30px;box-shadow:0 5px 20px rgba(0,0,0,.12)}.referral-explainer h3{font-size:1.2em;color:#333;margin-bottom:12px}.referral-explainer p{color:#555;font-size:.92em;line-height:1.6}.referral-levels{margin:16px 0;display:flex;flex-direction:column;gap:10px}.referral-level{display:flex;align-items:center;gap:12px;font-size:.88em;color:#444}.referral-level-badge{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.8em;flex-shrink:0;color:white}.referral-level-badge.level-1{background:linear-gradient(135deg,#667eea,#764ba2)}.referral-level-badge.level-2{background:linear-gradient(135deg,#a78bfa,#7c3aed)}.referral-level-badge.level-3{background:linear-gradient(135deg,#c4b5fd,#8b5cf6)}.detail-points-section{background:#f8f6ff;border:1px solid #e0d9ff;border-radius:10px;padding:14px 16px;margin-bottom:16px}.detail-section-label{font-size:.78em;text-transform:uppercase;letter-spacing:.6px;color:#333;margin-bottom:10px;font-weight:700}.detail-points-grid{display:flex;flex-direction:column;gap:8px}.detail-point-row{display:flex;justify-content:space-between;align-items:center;font-size:.9em;color:#444}.points-green{color:#27ae60}.detail-referral-note{font-size:.78em;color:#888;background:white;border-radius:6px;padding:6px 10px;border:1px solid #e0d9ff}.points-redemption-title{font-weight:700;margin-bottom:8px}.points-redemption-controls{display:grid;grid-template-columns:1fr auto;grid-gap:8px;gap:8px;align-items:center}.points-redemption-input{border:1px solid #ccd5ff;border-radius:8px;padding:8px 10px;font-size:14px;width:100%}.points-redemption-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.12)}.points-redemption-button{border:none;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.points-redemption-button:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(102,126,234,.25)}.points-redemption-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.points-redemption-button-remove{background:#eef2ff;color:#4f46e5;border:1px solid #c7d2fe}.points-redemption-meta{margin-top:8px;color:#555;font-size:13px;display:flex;flex-wrap:wrap;gap:10px}.points-redemption-total{margin-top:4px;color:#555;font-size:13px}.points-redemption-applied{color:#1e7e34}.checkout-auth-error{display:grid;grid-gap:10px;gap:10px;margin-bottom:14px}.checkout-auth-error .error-message{margin-bottom:0}.inline-action-btn{display:inline-flex;align-items:center;justify-content:center;justify-self:start;min-height:42px;padding:10px 18px;border-radius:8px;background:rgba(102,126,234,.12);border:1px solid rgba(102,126,234,.32);color:#667eea;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s}.inline-action-btn:hover{background:rgba(102,126,234,.18);box-shadow:0 5px 14px rgba(102,126,234,.18);transform:translateY(-1px)}.detail-availability{display:flex;align-items:center;gap:8px;font-size:.9em;color:#555;margin-bottom:4px;padding:10px 0;border-top:1px solid #f0f0f0}.site-footer{background:#1f1740;color:rgba(255,255,255,.92);border-top:1px solid rgba(255,255,255,.08)}.site-footer-inner{max-width:1200px;margin:0 auto;padding:20px;display:flex;justify-content:space-between;gap:20px;align-items:center}.site-footer-title{font-size:14px;font-weight:700;margin-bottom:6px}.site-footer-text{color:rgba(255,255,255,.78);font-size:13px;line-height:1.6}.site-footer-text a{color:white;text-decoration:underline}.site-footer-text a[href^="mailto:"]{color:#667eea}.site-footer-links{display:flex;flex-wrap:wrap;gap:14px;font-size:14px;font-weight:600}.site-footer-link-button{color:inherit;background:transparent;border:0;font:inherit;font-weight:600;cursor:pointer;padding:0}.site-footer-link-button:hover,.site-footer-links a:hover{text-decoration:underline}.static-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;color:white;margin-bottom:20px}.static-page-eyebrow{font-size:12px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;opacity:.82;margin-bottom:10px}.static-page-header h1{font-size:2.1em;margin-bottom:10px}.static-page-header p{max-width:680px;line-height:1.6;color:rgba(255,255,255,.9)}.static-page-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.static-page-card{background:white;border-radius:18px;padding:30px;box-shadow:0 10px 30px rgba(0,0,0,.18)}.static-page-section+.static-page-section{margin-top:28px}.static-page-section h2{font-size:1.2em;color:#2f3142;margin-bottom:10px}.static-page-list,.static-page-section p{color:#4f5668;line-height:1.75}.static-page-list{padding-left:18px;display:grid;grid-gap:8px;gap:8px}.static-page-muted{color:#7c8397;font-size:14px}@media (max-width:768px){.page-header{flex-direction:column;align-items:stretch;gap:14px}.page-header .header-left{width:100%;min-width:0;align-items:center;gap:12px}.page-header .header-title{min-width:0}.page-header .header-actions{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;justify-content:stretch;align-items:stretch}.page-header .header-actions .btn-link,.page-header .header-actions .header-btn{width:100%;justify-content:center;min-height:40px;padding:9px 12px;white-space:nowrap}.page-header .header-actions .header-notification-link{width:100%;min-width:0;height:auto;min-height:40px;padding:9px 12px;border-radius:6px;justify-self:stretch;gap:8px;grid-column:auto}.dash-header .header-actions:has(.header-action-signout) .header-action-signout,.page-header .header-actions:has(.header-action-signout) .header-action-signout{grid-column:2;grid-row:1}.page-header .header-actions:has(.header-action-wallet) .header-action-wallet{grid-column:1;grid-row:1}.page-header .header-actions:has(.header-action-wallet):has(.header-notification-link) .header-action-browse,.page-header .header-actions:has(.header-action-wallet):has(.header-notification-link) .header-action-mydeals{grid-column:1;grid-row:2}.page-header .header-actions:has(.header-action-wallet):has(.header-notification-link) .header-notification-link{grid-column:2;grid-row:2}.page-header .header-actions:has(.header-action-wallet):not(:has(.header-notification-link)) .header-action-browse{grid-column:1;grid-row:2}.page-header .header-actions:has(.header-action-wallet):not(:has(.header-notification-link)) .header-action-mydeals{grid-column:2;grid-row:2}.page-header .header-actions:has(.header-action-wallet) .header-action-support{grid-column:1/-1;grid-row:3}.header-brand-logo{width:44px;height:44px;border-radius:10px}.page-header h1{font-size:1.4em;line-height:1.12;overflow-wrap:anywhere}.page-header .subtitle{line-height:1.45}.dash-header-content{flex-direction:column;align-items:stretch;gap:14px}.dash-header .header-actions{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;justify-content:stretch}.dash-header .header-btn{width:100%;min-height:40px}.dash-header .header-actions .header-notification-link{width:100%;min-width:0;height:auto;min-height:40px;padding:9px 12px;border-radius:6px;gap:8px}.dash-header .header-actions:has(.header-action-signout) .header-action-browse{grid-column:1;grid-row:1}.dash-header .header-actions:has(.header-action-signout) .header-action-mydeals{grid-column:1;grid-row:2}.dash-header .header-actions:has(.header-action-signout) .header-notification-link{grid-column:2;grid-row:2}.dash-header .header-actions:has(.header-action-course) .header-action-course{grid-column:1/-1;grid-row:3}.notification-bell-label{display:inline;font-weight:700}.filters{grid-template-columns:1fr}.tee-times-grid{max-width:100%;padding:0}.welcome-section{flex-direction:column}.stats-grid{grid-template-columns:1fr}.container-card{padding:25px}.catalog-grid,.course-toolbar-form,.course-vouchers-grid,.my-deals-grid,.my-deals-toolbar-controls,.notification-card-main,.notification-stats-grid{grid-template-columns:1fr}.notification-card-main{gap:12px}.referral-explainer{padding:20px}.site-footer-inner,.static-page-header{flex-direction:column;align-items:flex-start}.static-page-card{padding:22px}}@media (max-width:480px){.page-header{gap:12px}.page-header.page-header-shell{padding:14px}.page-header .header-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.page-header .header-actions .btn-link,.page-header .header-actions .header-btn{padding:8px 9px;font-size:13px}.page-header .header-actions .header-notification-link{width:100%;min-width:0;height:auto;padding:8px 9px}.page-header h1{font-size:1.25em}.auth-container{border-radius:16px}.auth-form{padding:25px}.logo-container-center h1{font-size:26px}}