:root{--bg: #0b1120;--bg-2: #0f172a;--bg-elev: #16213a;--bg-card: #131c30;--bg-glass: rgba(15, 23, 42, .72);--text: #eef2f8;--text-soft: #c3ccdb;--text-muted: #8b97ac;--brand-1: #7ce7b0;--brand-2: #2ec4a6;--brand-3: #1f9bbf;--accent: #45d3ab;--accent-soft: rgba(69, 211, 171, .16);--brand-grad: linear-gradient(135deg, #7ce7b0 0%, #2ec4a6 52%, #1f9bbf 100%);--brand-grad-soft: linear-gradient(135deg, rgba(124, 231, 176, .18), rgba(31, 155, 191, .18));--border: #243049;--border-soft: rgba(255, 255, 255, .06);--danger: #fb7185;--star: #fcd34d;--radius: 18px;--radius-sm: 12px;--shadow-card: 0 10px 30px -12px rgba(0, 0, 0, .6);--shadow-glow: 0 12px 34px -10px rgba(46, 196, 166, .5);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(620px 420px at 12% -6%,rgba(46,196,166,.16),transparent 60%),radial-gradient(560px 420px at 100% 4%,rgba(31,155,191,.14),transparent 58%),radial-gradient(700px 600px at 50% 120%,rgba(124,231,176,.08),transparent 60%);pointer-events:none}a{color:inherit;text-decoration:none}::selection{background:#45d3ab4d}.app{min-height:100%;display:flex;flex-direction:column}.app__bar{position:sticky;top:0;z-index:20;padding:calc(12px + var(--safe-top)) 20px 12px;background:var(--bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-soft)}.app__brand{display:inline-flex;align-items:center;gap:10px}.app__brand-tag{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);padding:3px 9px;border-radius:999px;background:var(--accent-soft);border:1px solid rgba(69,211,171,.28)}.brand{display:inline-flex;align-items:center;gap:9px;line-height:1}.brand__mark{width:22px;height:28px;flex-shrink:0;filter:drop-shadow(0 4px 10px rgba(31,155,191,.45))}.brand__word{font-size:20px;font-weight:800;letter-spacing:-.025em;color:var(--text)}.brand__word--accent{background:var(--brand-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.app__main{flex:1;width:100%;max-width:920px;margin:0 auto;padding:22px 16px calc(48px + var(--safe-bottom))}.btn{border:none;border-radius:14px;padding:15px 20px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .12s ease,box-shadow .2s ease,opacity .2s ease,background .2s ease;letter-spacing:-.01em}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn--primary{background:var(--brand-grad);color:#042018;box-shadow:var(--shadow-glow)}.btn--primary:hover:not(:disabled){box-shadow:0 16px 40px -10px #2ec4a69e}.btn--secondary{background:#ffffff0a;color:var(--text);border:1px solid var(--border)}.btn--secondary:hover:not(:disabled){border-color:var(--accent);background:#ffffff0f}.btn--block{display:block;width:100%}.link-btn{background:none;border:none;color:var(--accent);font-size:14px;font-weight:600;cursor:pointer;padding:4px 0}.link-btn:hover{text-decoration:underline}input,textarea,select{width:100%;background:#ffffff08;border:1px solid var(--border);border-radius:14px;padding:14px 16px;color:var(--text);font-size:15px;font-family:inherit;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:#ffffff0d}.chip{background:#ffffff0a;border:1px solid var(--border);color:var(--text-soft);border-radius:999px;padding:9px 16px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .16s ease}.chip:hover{border-color:var(--accent);color:var(--text)}.chip--active{background:var(--brand-grad);color:#042018;border-color:transparent;box-shadow:0 6px 16px -8px #2ec4a6b3}.onboarding{display:flex;flex-direction:column;gap:18px;padding-top:18px}.onboarding__hero{padding:16px 2px 6px}.onboarding__eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.onboarding__hero h1{font-size:clamp(30px,8vw,40px);line-height:1.08;margin:0 0 12px;letter-spacing:-.03em;font-weight:800}.onboarding__hero h1 em{font-style:normal;background:var(--brand-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.onboarding__hero p{color:var(--text-soft);margin:0;font-size:16px;line-height:1.55;max-width:36ch}.divider{display:flex;align-items:center;gap:14px;color:var(--text-muted);font-size:13px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border)}.onboarding__search{display:flex;gap:10px}.onboarding__search input{flex:1}.onboarding__radius label{display:block;color:var(--text-muted);font-size:13px;margin-bottom:10px;font-weight:600}.onboarding__privacy{color:var(--text-muted);font-size:12px;text-align:center;line-height:1.5}.radius-options{display:flex;gap:8px;flex-wrap:wrap}.radius-options--inline{margin-bottom:16px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.discover__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.discover__eyebrow{color:var(--accent);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.discover__header h2{margin:5px 0 0;font-size:24px;letter-spacing:-.025em;font-weight:800}.filterbar{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.filterbar__chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.filterbar__chips::-webkit-scrollbar{display:none}.filterbar__sort select{max-width:240px}.offer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:16px}.offer-card{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-card);transition:transform .18s ease,border-color .2s ease,box-shadow .2s ease}.offer-card:hover{transform:translateY(-4px);border-color:#45d3ab66;box-shadow:0 18px 40px -16px #000000b3}.offer-card:active{transform:translateY(-1px) scale(.995)}.offer-card__image{position:relative;aspect-ratio:3 / 2;background-size:cover;background-position:center;background-color:var(--bg-elev)}.offer-card__image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 45%,rgba(11,17,32,.55) 100%)}.badge{position:absolute;top:10px;padding:5px 11px;border-radius:999px;font-size:11px;font-weight:700;z-index:1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.badge--sponsored{left:10px;background:var(--brand-grad);color:#042018;box-shadow:0 4px 12px -4px #2ec4a6b3}.badge--distance{right:10px;background:#0b1120b8;color:var(--text);border:1px solid var(--border-soft)}.offer-card__body{padding:15px;display:flex;flex-direction:column;gap:6px}.offer-card__category{color:var(--accent);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.offer-card__title{margin:0;font-size:16px;line-height:1.28;font-weight:700;letter-spacing:-.01em}.offer-card__desc{margin:0;color:var(--text-muted);font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.offer-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.offer-card__price{font-weight:800;font-size:15px}.offer-card__rating{color:var(--star);font-size:13px;font-weight:600}.offer-card__partner{color:var(--text-muted);font-size:12px}.state{padding:28px 24px;text-align:center;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius);display:flex;flex-direction:column;gap:12px;align-items:center;line-height:1.55}.state--error{color:var(--danger);border-color:#fb71854d}.error-text{color:var(--danger);font-size:14px;margin:0}.detail{display:flex;flex-direction:column;gap:18px}.detail__back{align-self:flex-start}.detail__hero{aspect-ratio:16 / 10;border-radius:var(--radius);background-size:cover;background-position:center;background-color:var(--bg-elev);box-shadow:var(--shadow-card)}.detail__thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:none}.detail__thumbs::-webkit-scrollbar{display:none}.detail__thumb{width:68px;height:50px;border-radius:10px;border:2px solid transparent;background-size:cover;background-position:center;cursor:pointer;flex-shrink:0;transition:border-color .15s ease}.detail__thumb.is-active{border-color:var(--accent)}.detail__body h1{margin:8px 0 12px;font-size:26px;letter-spacing:-.025em;font-weight:800;line-height:1.15}.detail__meta{display:flex;flex-wrap:wrap;gap:14px;color:var(--text-muted);font-size:14px;align-items:center}.detail__price{color:var(--text);font-weight:800;font-size:20px}.detail__lead{font-size:16px;color:var(--text-soft)}.detail__desc{color:var(--text-soft);line-height:1.65}.detail__desc img{max-width:100%;border-radius:12px}.detail__partner{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-card)}.detail__partner span{color:var(--text-muted);font-size:14px}.detail__cta{position:sticky;bottom:calc(14px + var(--safe-bottom))}.checkout{display:flex;flex-direction:column;gap:18px}.checkout h1{margin:4px 0;font-size:26px;font-weight:800;letter-spacing:-.025em}.checkout__summary{background:var(--brand-grad-soft);border:1px solid rgba(69,211,171,.22);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:5px}.checkout__summary strong{font-size:16px}.checkout__summary span{color:var(--text-soft);font-size:14px}.checkout__total{color:var(--text)!important;font-weight:800;font-size:20px;margin-top:4px}.checkout__form{display:flex;flex-direction:column;gap:16px}.checkout__form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;color:var(--text-muted)}.checkbox{flex-direction:row!important;align-items:flex-start;gap:11px;font-weight:400!important}.checkbox input{width:auto;margin-top:2px;accent-color:var(--accent)}.checkbox span{color:var(--text-soft);line-height:1.5}.payment-form{display:flex;flex-direction:column;gap:16px}.consent{position:fixed;left:0;right:0;bottom:0;z-index:60;padding:16px 16px calc(16px + var(--safe-bottom));background:var(--bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border-soft);box-shadow:0 -12px 40px -16px #000000b3}.consent__inner{max-width:920px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.consent__text strong{display:block;margin-bottom:4px}.consent__text p{margin:0;color:var(--text-muted);font-size:13px;line-height:1.55}.consent__text a{color:var(--accent);text-decoration:underline}.consent__actions{display:flex;gap:10px}.consent__actions .btn{flex:1;padding:12px 16px}@media (min-width: 640px){.consent__inner{flex-direction:row;align-items:center;justify-content:space-between}.consent__actions,.consent__actions .btn{flex:0 0 auto}}.confirmation{display:flex;flex-direction:column;gap:16px;align-items:center;text-align:center;padding-top:36px}.confirmation__icon{width:80px;height:80px;border-radius:999px;display:grid;place-items:center;font-size:38px;background:#ffffff0a;border:1px solid var(--border);color:var(--text-muted)}.confirmation__icon.is-paid{background:var(--brand-grad);color:#042018;border-color:transparent;box-shadow:var(--shadow-glow)}.confirmation h1{font-size:24px;font-weight:800;letter-spacing:-.02em;margin:0}.confirmation__details{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:6px;width:100%;box-shadow:var(--shadow-card)}.confirmation__details span{color:var(--text-muted);font-size:14px}.confirmation__hint{color:var(--text-muted);font-size:14px;line-height:1.55}
