/* Shared product language. Scoped away from the public landing page and admin. */
.mobile-product{--ink:#203e3a;--muted:#62766c;--background:#f7f9f6;--border:#e1e8e0;--page-title-size:26px;--page-title-gap:24px;font-size:1rem;line-height:1.5;color:var(--ink);background:var(--background)}
.mobile-product button,.mobile-product input,.mobile-product select,.mobile-product textarea{font:inherit}
.mobile-product .button,.mobile-product .icon-button{min-height:48px;border-radius:12px;font-size:0.9375rem;font-weight:600;box-shadow:none}
.mobile-product .icon-button{min-width:48px;padding:12px;display:inline-grid;place-items:center;flex-shrink:0}
.mobile-product .icon-button svg{width:22px;height:22px}
.mobile-product button:active,.mobile-product .button:active{transform:scale(.98)}
.mobile-product :focus-visible{outline:3px solid #8cab6e;outline-offset:3px}
.mobile-product .text-input{min-height:48px;border-radius:12px;font-size:1rem;padding:12px 14px;box-shadow:none}
.mobile-product .field-label{font-size:0.875rem;font-weight:600;margin:20px 0 0;display:block}
.mobile-product .field-label:first-child{margin-top:0}
.mobile-product .field-label>.text-input{margin-top:8px}
.mobile-product .button.full{width:100%;margin-top:16px}
.mobile-product h1{font-size:1.625rem;font-weight:700;letter-spacing:-.6px;line-height:1.2;margin:0 0 24px}
.mobile-product h2{font-size:1.25rem;font-weight:650;letter-spacing:-.3px;line-height:1.3}
.mobile-product h3{font-size:1.0625rem;line-height:1.4}
.mobile-product p{line-height:1.55}
.mobile-product .small-note,.mobile-product small{font-size:0.8125rem;line-height:1.5;color:var(--muted)}
.mobile-product .main-content{padding:24px 24px 40px;max-width:1040px;margin:auto}
.mobile-product .topbar{height:auto;min-height:72px;padding:12px 24px;background:var(--background);border-bottom:1px solid var(--border);box-shadow:none}
.mobile-product .topbar .logo{font-size:1.4375rem}
.mobile-product .topbar .logo img{width:32px;height:32px}
.mobile-product .topbar-actions{gap:8px;margin-left:auto}
.mobile-product .header-balance{min-height:44px;border-radius:24px;padding:10px 16px;font-size:1.0625rem;gap:8px}
.mobile-product .header-balance svg{width:19px;height:19px}
.mobile-product .panel{border:1px solid var(--border);border-radius:16px;box-shadow:none;background:#fff}
.mobile-product .welcome-row{margin:0 0 16px}
.mobile-product .welcome-row .eyebrow{display:none}
.mobile-product .welcome-row h1{font-size:1.1875rem;line-height:1.3;letter-spacing:-.35px;color:#547063;font-weight:500;white-space:normal;margin:0}
.mobile-product .mission-compact{border-radius:16px;padding:14px 16px;margin:0 0 12px;background:#eef3e7}
.mobile-product .mission-compact-heading{gap:12px}
.mobile-product .mission-emblem{width:32px;height:32px;border-radius:10px;font-size:1.375rem}
.mobile-product .mission-compact-heading small{font-size:0.6875rem;letter-spacing:.7px}
.mobile-product .mission-compact-heading strong{font-size:0.875rem;line-height:1.4}
.mobile-product .seven-days{margin:12px 0 0;justify-content:space-between;gap:8px}
.mobile-product .seven-days>span{width:26px;height:26px;font-size:0.75rem;flex-basis:26px}
.mobile-product .active-bonus-strip{padding:10px 14px;border-radius:12px;font-size:0.8125rem;min-height:48px;background:#eef2e8;color:#41653a;border-color:#dce5d3;margin-bottom:12px}
.mobile-product .section-heading{margin:20px 0 16px;gap:8px}
.mobile-product .section-heading h2{font-size:1.4375rem;margin:0}
.mobile-product .survey-tools{gap:4px}
.mobile-product .sort-select{font-size:0.8125rem;min-height:48px;max-width:134px;padding:8px}
.mobile-product .refresh-surveys{min-width:48px;width:48px;padding:10px;background:transparent}
.mobile-product .survey-status:empty{display:none}
.mobile-product .survey-grid,.mobile-product .reward-grid{gap:12px}
.mobile-product .compact-survey{border-radius:16px!important;padding:16px!important;min-height:166px;border:1px solid var(--border);box-shadow:none}
.mobile-product .compact-survey .duration{font-size:0.8125rem;gap:6px}
.mobile-product .survey-total{font-size:1.8125rem;line-height:1.15;letter-spacing:-.6px;margin:16px 0 4px}
.mobile-product .bonus-label{min-height:16px;margin-bottom:8px;font-size:0.6875rem}
.mobile-product .survey-card-bottom{padding-top:12px;gap:4px}
.mobile-product .survey-rating{flex-direction:row;align-items:center;gap:4px;flex-wrap:wrap}
.mobile-product .rating-stars{font-size:0.8125rem;letter-spacing:0}
.mobile-product .survey-rating small{font-size:0.6875rem}
.mobile-product .survey-start-arrow{width:28px;height:28px}
.mobile-product .rewards-heading{margin:0 0 24px;gap:16px}
.mobile-product .rewards-heading h1{margin:0}
.mobile-product .search-field{margin-bottom:20px}
.mobile-product .search-field .text-input{font-size:1rem}
.mobile-product .reward-card{border-radius:16px;box-shadow:none}
.mobile-product .reward-card strong{font-size:1rem}
.mobile-product .mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 24px}
.mobile-product .mini-stats>div{min-width:0;padding:16px;border-radius:16px}
.mobile-product .mini-stats strong{font-size:1.5625rem;margin-top:8px;display:block}
.mobile-product .mini-stats span{font-size:0.8125rem}
.mobile-product .empty-state{padding:40px 20px;min-height:180px}
.mobile-product .empty-state svg{width:32px;height:32px;margin-bottom:12px}
.mobile-product .rank-card{width:100%;font:inherit;text-align:left;color:inherit;display:flex;align-items:center;gap:16px;padding:16px;margin:0;border-radius:16px;background:#eef3e7;border:1px solid #dce5d4;cursor:pointer}
.mobile-product .rank-card .rank-planet{width:48px;height:48px;flex:0 0 48px;font-size:1.5rem}
.mobile-product .rank-card>svg{width:18px;height:18px;flex:none}
.mobile-product .rank-card h2{font-size:1.1875rem}
.mobile-product .rank-card p{font-size:0.75rem}
.mobile-product .profile-summary{gap:12px;margin-bottom:24px}
.mobile-product #profile-rank{margin-bottom:12px}
.mobile-product .profile-identity{padding:16px;margin:0;border:0;border-radius:0;background:transparent}
.mobile-product .profile-identity h2{font-size:1.125rem}
.mobile-product .profile-identity p{font-size:0.875rem;overflow-wrap:anywhere}
.mobile-product .profile-menu{border:0;background:transparent;border-radius:0;margin:0 0 24px;display:block}
.mobile-product .profile-menu-row{padding:14px 0;min-height:60px;border:0;border-bottom:1px solid var(--border);border-radius:0;gap:12px}
.mobile-product .profile-menu-row strong{font-size:1rem;font-weight:500}
.mobile-product .profile-menu-row>.row-icon{background:transparent;width:28px;height:28px;border-radius:0}
.mobile-product .group-title{font-size:0.8125rem;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);margin:24px 0 4px}
.mobile-product .signout-button{margin-top:0}
.mobile-product .page-surface.sheet{width:100%;max-width:720px;margin:0 auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;max-height:none;overflow:visible;animation:none}
.mobile-product .page-heading{display:flex;align-items:center;gap:12px;margin:0 0 24px;min-height:48px}
.mobile-product .page-heading h1{margin:0;font-size:1.625rem;flex:1;overflow-wrap:anywhere}
.mobile-product .back-button{border:0;background:transparent;margin-left:-12px}
.mobile-product .back-button svg{transform:rotate(180deg)}
.mobile-product .page-body>p:first-child{margin-top:0}
.mobile-product .page-body .sheet-actions{background:transparent;padding:16px 0;margin:0;border:0;position:static}
.mobile-product .detail-line{padding:16px 0;font-size:0.9375rem;gap:16px}
.mobile-product .detail-line strong{text-align:right;overflow-wrap:anywhere}
.mobile-product .page-body .button.full{margin-top:20px}
.mobile-product .page-body .reward-detail-value{font-size:2.5rem;line-height:1.2;padding:0;margin:0 0 20px}
.mobile-product .notification-expert{padding:24px 0 0;margin-top:24px}
.mobile-product .notification-expert h2{font-size:1.0625rem;margin:0}
.mobile-product .notification-category{font-size:0.875rem;padding:12px 0;grid-template-columns:minmax(0,1fr) 52px 52px}
.mobile-product .notification-category label{min-height:48px}
.mobile-product .notification-category-head{grid-template-columns:minmax(0,1fr) 52px 52px}
.mobile-product .preference-row{min-height:60px;gap:16px}
.mobile-product .preference-row input{width:24px;height:24px}
.mobile-product .settings-list{margin-top:24px}
.mobile-product .journey-stages{margin:24px 0}
.mobile-product .journey-stage{display:flex;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid var(--border)}
.mobile-product .journey-stage>div{flex:1}.mobile-product .journey-stage p{font-size:0.8125rem;margin:4px 0 0}
.mobile-product .journey-stage.current{color:#346536}.mobile-product .journey-mark{width:32px;display:grid;place-items:center}.mobile-product .journey-mark svg{width:20px}
.mobile-product .support-intro{background:transparent;padding:0;margin:0 0 24px}
.mobile-product .support-home-sheet .support-faq-list{max-height:none;overflow:visible}
.mobile-product .support-faq{padding:14px 0;border-bottom:1px solid var(--border)}
.mobile-product .support-faq summary{font-size:1rem;min-height:32px}
.mobile-product .support-faq p{font-size:0.9375rem}
.mobile-product .support-conversations{margin-top:32px;padding-top:0}
.mobile-product .support-chat-row{min-height:72px;padding:16px 0;border-radius:0;border-bottom:1px solid var(--border)}
.mobile-product .support-chat-sheet .page-body{display:flex;flex:1;flex-direction:column;min-height:0}
.mobile-product .support-chat-sheet{display:flex;flex-direction:column;height:calc(var(--app-height,100dvh) - 80px);max-width:800px!important}
.mobile-product .support-chat-sheet .page-heading{flex:none;margin-bottom:8px}
.mobile-product .chat-toolbar{padding:0;margin:0;min-height:0;justify-content:flex-end}
.mobile-product .chat-scroll{flex:1;min-height:120px;max-height:none;overflow-y:auto;overscroll-behavior:contain;padding:12px 0 20px}
.mobile-product .chat-message{font-size:0.9375rem;line-height:1.55;padding:14px 16px;border-radius:16px;margin:0 0 16px;max-width:92%}
.mobile-product .chat-message.from-user{background:#e8efdd}
.mobile-product .chat-message.from-support{background:#fff;border:1px solid var(--border)}
.mobile-product .chat-message header{font-size:0.6875rem;gap:8px}
.mobile-product .chat-compose-area{flex:none;padding:12px 0 max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--background)}
.mobile-product .chat-compose-area textarea{min-height:52px;max-height:120px;font-size:1rem;margin:0;resize:vertical}
.mobile-product .chat-compose-actions{margin:8px 0 0;gap:8px}
.mobile-product .chat-compose-actions .button{margin:0;min-height:48px}
.mobile-product .chat-upload-hint{font-size:0.6875rem;margin-top:8px;display:block}
.mobile-product .chat-attach span{display:none}
.mobile-product .chat-attach{min-width:48px}
.mobile-product .reply-rating .button{min-width:48px}
.mobile-product .phone-number-fields{gap:16px}
.mobile-product .question-sheet .question-scroll{max-height:none;overflow:visible}
.mobile-product .question-sheet #cpx-question{display:block;overflow:visible}
.mobile-product .question-sheet .sheet-actions{margin-top:24px}
.mobile-product .step-track{margin:0 0 24px}
.mobile-product .flow-step{font-size:0.8125rem;color:var(--muted);margin:0 0 16px}
.mobile-product .payout-step[hidden]{display:none!important}
.mobile-product .reward-dialog-brand{max-width:220px;margin:0 auto 24px}
.mobile-product .form-error:not(:empty){font-size:0.9375rem;padding:14px 16px;border-radius:12px;margin:16px 0}
.mobile-product .form-success{border-radius:12px;padding:16px}
.mobile-product .modal-backdrop{padding:24px;align-items:center;background:#122d2a66;backdrop-filter:blur(3px)}
.mobile-product .compact-sheet{max-width:440px;border-radius:20px;padding:24px;max-height:calc(var(--app-height,100dvh) - 48px);overflow:auto;box-shadow:0 12px 48px #122d2a22}
.mobile-product .sheet-heading{display:flex;align-items:center;gap:12px;margin:0 0 16px}
.mobile-product .sheet-heading h2{font-size:1.375rem;margin:0;flex:1}
.mobile-product .sheet-heading .icon-button{background:transparent;border:0}
.mobile-product .compact-sheet .sheet-actions{padding:0;margin:16px 0 0;background:transparent;border:0}
.mobile-product .compact-sheet .sheet-handle{display:none}
.mobile-product .sheet-heading,.mobile-product .sheet-handle{touch-action:none}
.mobile-product .compact-sheet .language-select{width:100%;max-width:none;min-height:48px;font-size:1rem}
.mobile-product .auth-page{padding:24px 20px;background:var(--background)}
.mobile-product .auth-page>header{padding:0;max-width:440px;margin:0 auto 28px}
.mobile-product .auth-card,.mobile-product .native-entry .auth-card{border:0;border-radius:0;box-shadow:none;padding:0;background:transparent;margin:0 auto 24px;max-width:440px}
.mobile-product .auth-card h1{font-size:1.75rem;margin-bottom:12px;letter-spacing:-.5px}
.mobile-product .auth-orbit,.mobile-product .auth-symbol{width:40px;height:40px;margin-bottom:16px}
.mobile-product .auth-intro{font-size:0.9375rem;line-height:1.5;margin-bottom:24px}
.mobile-product .entry-flow{margin-top:24px}
.mobile-product .entry-email{display:flex;align-items:center;gap:12px}.mobile-product .entry-email>span{flex:1;min-width:0;overflow-wrap:anywhere}
.mobile-product .panel-footer{font-size:0.75rem;margin:24px auto 0;padding:0;max-width:440px}
.mobile-product .screen{animation:screen-enter 160ms ease-out}
@keyframes screen-enter{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:760px){
 .mobile-product .main-content{padding:20px 16px calc(88px + env(safe-area-inset-bottom,0px));width:100%;max-width:none}
 .mobile-product .topbar{min-height:64px;padding:8px 16px;position:sticky;top:0;z-index:8}
 .mobile-product .topbar .logo{font-size:1.25rem}.mobile-product .topbar .logo img{width:28px;height:28px}
 .mobile-product .topbar-actions{gap:0}.mobile-product .header-balance{font-size:0.9375rem;padding:8px 12px;min-height:44px}
 .mobile-product .header-balance svg{display:none}
 .mobile-product .mobile-nav{min-height:72px;padding:6px 12px max(6px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fcfdfb;box-shadow:none;gap:4px}
 .mobile-product .mobile-nav a{min-height:56px;flex:1;gap:4px;font-size:0.6875rem;padding:4px;line-height:1.2;border-radius:12px}
 .mobile-product .mobile-nav a svg{width:22px;height:22px;padding:0;border-radius:0;background:none}
 .mobile-product .mobile-nav a.active{background:#edf2e5;color:#3f6138}
 .mobile-product .mobile-nav a.active:before{display:none}
 .mobile-product.has-subpage .topbar{display:none}
 .mobile-product.focused-flow .mobile-nav{display:none}
 .mobile-product.focused-flow .main-content{padding-bottom:max(20px,env(safe-area-inset-bottom))}
 .mobile-product .page-heading{margin-bottom:24px;gap:8px}
 .mobile-product .page-heading h1{font-size:1.5rem}
 .mobile-product .support-chat-sheet{height:calc(var(--app-height,100dvh) - var(--environment-height,0px) - 28px)}
 .mobile-product:has(.support-chat-sheet) .main-content{padding-bottom:0;padding-top:12px}
 .mobile-product .profile-summary{display:block}
 .mobile-product .rewards-heading{flex-direction:column;align-items:stretch}
 .mobile-product .rewards-heading .button{width:100%;min-height:48px;font-size:0.9375rem;justify-content:space-between;padding:12px 16px}
 .mobile-product .modal-backdrop{padding:0;align-items:flex-end}
 .mobile-product .compact-sheet{width:100%;max-width:none;border-radius:24px 24px 0 0;padding:8px 20px max(24px,env(safe-area-inset-bottom));max-height:calc(var(--app-height,100dvh) - 32px);animation:bottom-sheet-enter 220ms ease-out}
 .mobile-product .compact-sheet .sheet-handle{display:block;width:36px;height:5px;border-radius:4px;background:#ccd7cb;margin:4px auto 12px;padding:0}
 .mobile-product .sheet-heading{margin-bottom:16px}
 .mobile-product .phone-number-fields{display:grid;grid-template-columns:1fr}
 .mobile-product .phone-channels{grid-template-columns:1fr 1fr;gap:12px}
 .mobile-product .push-prompt{padding:12px;margin-bottom:16px}.mobile-product .push-prompt p{font-size:0.8125rem}
 .mobile-product .environment-banner{font-size:0.625rem;padding:6px 8px;line-height:1.35}
}
@keyframes bottom-sheet-enter{from{transform:translateY(100%)}to{transform:none}}
@media(min-width:761px){.mobile-product .page-heading{margin-top:4px}.mobile-product .focused-flow .main-content{max-width:800px}.mobile-product .compact-sheet .sheet-handle{display:none}}
@media(prefers-reduced-motion:reduce){.mobile-product .screen,.mobile-product .compact-sheet,.mobile-product .modal-backdrop{animation:none!important}.mobile-product *{scroll-behavior:auto!important;transition:none!important}}
.mobile-product input[role=switch]{appearance:none;width:46px;height:28px;border:0;border-radius:16px;background:#becabe;position:relative;flex-shrink:0;cursor:pointer;transition:background 140ms}
.mobile-product input[role=switch]::before{content:'';position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #1233;transition:transform 140ms}
.mobile-product input[role=switch]:checked{background:#365f4d}.mobile-product input[role=switch]:checked::before{transform:translateX(18px)}
.mobile-product .sort-button{border:0;background:transparent;font-size:0.75rem;min-width:0;padding:8px;max-width:142px;color:var(--muted)}
.mobile-product .notification-expert>summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;font-size:1rem}
.mobile-product .notification-expert>summary::after{content:'+'}.mobile-product .notification-expert[open]>summary::after{content:'−'}
.mobile-product .support-faq-group>summary{min-height:48px;font-size:1rem;font-weight:600;padding:12px 0}
.mobile-product .page-loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:180px;color:var(--muted)}
.mobile-product .page-loading .button-spinner{color:var(--ink)}
.mobile-product .legal-content{font-size:1rem;line-height:1.6;overflow-wrap:anywhere}.mobile-product .legal-content h2{margin:32px 0 12px}.mobile-product .legal-content h2:first-child{display:none}

.mobile-product .screen h1:focus{outline:none}
.mobile-product .compact-sheet [aria-pressed=true]{background:#edf3e5;border-color:#8fa877;color:#315039}
.mobile-product .payout-heading{margin:0}
/* Survey outcomes intentionally float over the preserved survey list on all sizes. */
.mobile-product .survey-result-backdrop{padding:16px;align-items:center}
.mobile-product .survey-result-backdrop .compact-sheet{width:100%;max-width:440px;border-radius:20px;padding:24px;max-height:calc(var(--app-height,100dvh) - 32px);animation:none}
.mobile-product .survey-result-backdrop .sheet-handle{display:none}

.mobile-product{-webkit-text-size-adjust:100%}.mobile-product .button,.mobile-product .profile-menu-row{overflow-wrap:anywhere}.mobile-product .page-heading{align-items:flex-start}

.mobile-product .chat-compose-area{max-height:65%;overflow-y:auto}.mobile-product .chat-scroll{min-height:48px}
@media(max-width:760px){
 .mobile-product.large-text .topbar .logo>span{display:none}
 .mobile-product.large-text .survey-grid,.mobile-product.large-text .reward-grid,.mobile-product.large-text .phone-channels{grid-template-columns:1fr}
 .mobile-product.large-text .section-heading{flex-wrap:wrap}
 .mobile-product.large-text .main-content{padding-bottom:128px}
 .mobile-product.large-text.focused-flow .main-content{padding-bottom:env(safe-area-inset-bottom,0px)}
 .mobile-product.large-text .seven-days>span{width:auto;min-width:26px;height:auto;min-height:26px}
}

.mobile-product .country-results button,.mobile-product .search-clear{min-height:48px;min-width:48px}
.mobile-product .support-faq summary,.mobile-product .chat-survey-option summary{min-height:48px;display:flex;align-items:center}
