:root{
  --o:#f45a16;
  --od:#d94708;
  --o2:#ff812f;
  --os:#fff2e9;
  --os2:#fff8f3;
  --g:#168a47;
  --gd:#0f6f3a;
  --gs:#edf9f2;
  --n:#0f1f3a;
  --n2:#1d2e4a;
  --t:#2d3a50;
  --m:#6f7a8d;
  --m2:#8d97a7;
  --l:#e7eaf0;
  --l2:#dce1e9;
  --bg:#f6f7fa;
  --w:#fff;
  --d:#d92d20;
  --ds:#fff1f0;
  --warn:#b54708;
  --warns:#fff7e8;
  --shadow-xs:0 4px 14px rgba(15,31,58,.05);
  --shadow-sm:0 10px 28px rgba(15,31,58,.07);
  --shadow:0 24px 64px rgba(15,31,58,.10);
  --shadow-o:0 14px 32px rgba(244,90,22,.24);
  --r:22px;
  --r2:28px;
  --max:1220px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{
  margin:0;
  min-height:100vh;
  color:var(--t);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  background:
    radial-gradient(circle at 3% 11%,rgba(244,90,22,.09),transparent 25%),
    radial-gradient(circle at 93% 71%,rgba(22,138,71,.07),transparent 23%),
    linear-gradient(180deg,#fbfbfd 0%,var(--bg) 54%,#f4f6f9 100%);
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.16;
  background-image:radial-gradient(rgba(15,31,58,.18) .5px,transparent .5px);
  background-size:18px 18px;
  mask-image:linear-gradient(to bottom,black,transparent 42%);
}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{text-decoration:none;color:inherit}
svg{display:block}
::selection{background:rgba(244,90,22,.18);color:var(--n)}

.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.row{display:flex;align-items:center;gap:12px}
.between{justify-content:space-between}
.stack{display:grid;gap:14px}
.muted{color:var(--m)}
.small{font-size:.89rem}
.tiny{font-size:.76rem}

.brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:var(--n);
  font-weight:900;
  font-size:1.18rem;
  letter-spacing:-.025em;
  white-space:nowrap;
}
.logo{
  width:44px;
  height:44px;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(145deg,var(--o),var(--o2));
  box-shadow:0 10px 24px rgba(244,90,22,.26),inset 0 1px 0 rgba(255,255,255,.32);
  font-weight:950;
  letter-spacing:-.04em;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
.brand:hover .logo{transform:translateY(-2px) rotate(-2deg);box-shadow:0 15px 30px rgba(244,90,22,.3)}
.icon{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(20px) saturate(150%);
  -webkit-backdrop-filter:blur(20px) saturate(150%);
  border-bottom:1px solid rgba(220,225,233,.72);
  box-shadow:0 4px 20px rgba(15,31,58,.035);
}
.header-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.desktop-nav{display:flex;align-items:center;gap:28px;color:#536078;font-size:.94rem;font-weight:700}
.desktop-nav a{position:relative;padding:26px 0}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:18px;height:2px;border-radius:999px;background:var(--o);transition:right .24s var(--ease)}
.desktop-nav a:hover{color:var(--n)}
.desktop-nav a:hover:after{right:0}
.header-actions{display:flex;align-items:center;gap:10px}

.btn{
  min-height:46px;
  border:0;
  border-radius:14px;
  padding:0 19px;
  font-weight:850;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  line-height:1;
  transition:transform .18s var(--ease),box-shadow .18s var(--ease),background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease);
  user-select:none;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn:focus-visible,.icon-btn:focus-visible,.input:focus-visible,.select:focus-visible,a:focus-visible{outline:3px solid rgba(244,90,22,.2);outline-offset:3px}
.btn-primary{color:#fff;background:linear-gradient(135deg,var(--o),var(--o2));box-shadow:var(--shadow-o)}
.btn-primary:hover{box-shadow:0 18px 40px rgba(244,90,22,.3)}
.btn-secondary{color:var(--od);background:rgba(255,255,255,.86);border:1px solid rgba(244,90,22,.3);box-shadow:var(--shadow-xs)}
.btn-secondary:hover{background:var(--os);border-color:rgba(244,90,22,.48)}
.btn-soft{color:var(--n);background:#f0f3f7}
.btn-success{background:linear-gradient(135deg,var(--g),#22a95b);color:#fff;box-shadow:0 10px 24px rgba(22,138,71,.18)}
.btn-danger{background:var(--ds);color:var(--d)}
.btn-block{width:100%}
.btn-xs{min-height:35px;padding:0 11px;border-radius:10px;font-size:.76rem}
.btn:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}
.icon-btn{
  width:44px;height:44px;border:1px solid var(--l);border-radius:14px;background:rgba(255,255,255,.9);
  display:grid;place-items:center;color:var(--n);transition:.18s var(--ease);box-shadow:var(--shadow-xs)
}
.icon-btn:hover{background:var(--os);border-color:#ffd7c4;color:var(--o);transform:translateY(-1px)}

h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(2.55rem,4.35vw,4.55rem);line-height:1.015;letter-spacing:-.058em;color:var(--n);margin-bottom:22px;font-weight:950}
h2{font-size:clamp(1.9rem,3.15vw,3rem);line-height:1.08;letter-spacing:-.045em;color:var(--n);font-weight:900}
h3{color:var(--n);letter-spacing:-.025em;font-weight:850}

.hero{padding:84px 0 64px;position:relative;overflow:hidden}
.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}
.hero:before{width:340px;height:340px;left:-180px;top:20px;background:radial-gradient(circle,rgba(244,90,22,.12),transparent 69%)}
.hero:after{width:320px;height:320px;right:-150px;bottom:-120px;background:radial-gradient(circle,rgba(22,138,71,.10),transparent 69%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);gap:64px;align-items:center;position:relative;z-index:1}
.kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 13px;
  border:1px solid #d7efdf;
  border-radius:999px;
  background:rgba(237,249,242,.9);
  color:var(--gd);
  box-shadow:0 8px 24px rgba(22,138,71,.06);
  font-weight:850;
  font-size:.83rem;
}
.kicker .icon{width:18px;height:18px}
.hero-copy{max-width:720px}
.hero-copy p{max-width:665px;color:var(--m);font-size:1.07rem;line-height:1.78;margin-bottom:0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}

.card,.panel,.form-card,.feed-card,.stat-card{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(226,230,237,.92);
  border-radius:var(--r);
  box-shadow:var(--shadow-xs);
}
.hero-card{
  position:relative;
  padding:28px;
  border-radius:32px;
  border:1px solid rgba(226,230,237,.86);
  background:linear-gradient(160deg,rgba(255,255,255,.97),rgba(255,255,255,.86));
  box-shadow:var(--shadow);
  overflow:hidden;
  isolation:isolate;
}
.hero-card:before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:linear-gradient(135deg,rgba(244,90,22,.12),transparent 35%,rgba(22,138,71,.08));opacity:.7}
.hero-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-80px;top:-80px;background:radial-gradient(circle,rgba(244,90,22,.18),transparent 68%);z-index:-1}
.hero-bonus{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:24px;
  border:1px solid #ffe3d3;
  border-radius:22px;
  background:linear-gradient(135deg,#fff6ef,#fffdfa);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.hero-bonus strong{display:block;font-size:clamp(2rem,3.2vw,2.75rem);line-height:1;color:var(--o);letter-spacing:-.05em;margin-top:8px}
.hero-card>.panel{background:rgba(255,255,255,.9);box-shadow:0 14px 38px rgba(15,31,58,.07)}
.progress{height:10px;border-radius:999px;background:#edf0f4;overflow:hidden;box-shadow:inset 0 1px 3px rgba(15,31,58,.08)}
.progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--o),var(--o2));box-shadow:0 3px 12px rgba(244,90,22,.3)}

.trust-grid,.feature-grid,.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.trust-card,.feature-card{padding:24px;position:relative;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease)}
.trust-card:hover,.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-sm);border-color:#dfe4ec}
.trust-card h3,.feature-card h3{margin:16px 0 8px}
.trust-card p,.feature-card p{margin-bottom:0;line-height:1.65}
.badge-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gs),#f8fffb);color:var(--g);border:1px solid #d9efe1;box-shadow:0 8px 18px rgba(22,138,71,.08)}

.section{padding:68px 0}
.section-head{max-width:780px;margin:0 auto 34px;text-align:center}
.section-head h2{margin-bottom:13px}
.section-head p{color:var(--m);line-height:1.75;margin-bottom:0}
.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}
.step{position:relative;padding:22px 20px 20px;background:rgba(255,255,255,.95);border:1px solid var(--l);border-radius:20px;box-shadow:var(--shadow-xs);transition:.23s var(--ease)}
.step:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}
.step:not(:last-child):after{content:"";position:absolute;right:-11px;top:35px;width:20px;height:2px;background:linear-gradient(90deg,#ffd0b8,#dbeee2);z-index:2}
.step-num{width:36px;height:36px;border-radius:12px;background:linear-gradient(145deg,var(--os),#fff8f4);color:var(--o);display:grid;place-items:center;font-weight:950;margin-bottom:15px;border:1px solid #ffe0d0}
.step h3{margin-bottom:7px}.step p{margin-bottom:0;line-height:1.62}
.disclaimer{padding:20px;border:1px solid #ffdcc8;background:linear-gradient(135deg,#fff8f3,#fffdfa);border-radius:20px;color:#75442a;line-height:1.7;box-shadow:var(--shadow-xs)}

.feed-card{padding:15px!important;box-shadow:var(--shadow-sm)}
.feed-list{display:grid;gap:9px}
.feed-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.72fr) 110px 78px;align-items:center;gap:14px;padding:15px 17px;border:1px solid var(--l);border-radius:16px;background:linear-gradient(180deg,#fff,#fdfdfd);transition:.2s var(--ease)}
.feed-row:hover{border-color:#dce1e9;transform:translateX(3px);box-shadow:var(--shadow-xs)}
.feed-row strong:first-child{color:var(--n)}
.feed-row strong:nth-child(3){color:var(--o);font-variant-numeric:tabular-nums}
.sample,.real{justify-self:end;padding:6px 9px;border-radius:999px;font-size:.69rem;font-weight:850;letter-spacing:.015em}
.sample{background:#f0f2f5;color:#697386}
.real{background:var(--gs);color:var(--gd);border:1px solid #d3ebdc}

.faq{display:grid;gap:11px;max-width:860px;margin:auto}
.faq details{background:rgba(255,255,255,.95);border:1px solid var(--l);border-radius:17px;padding:18px 19px;box-shadow:var(--shadow-xs);transition:.2s var(--ease)}
.faq details[open]{border-color:#ffd7c4;box-shadow:0 10px 28px rgba(244,90,22,.07)}
.faq summary{cursor:pointer;font-weight:850;color:var(--n);list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";width:28px;height:28px;border-radius:9px;background:var(--os);color:var(--o);display:grid;place-items:center;font-size:1.15rem}
.faq details[open] summary:after{content:"–"}
.faq p{color:var(--m);line-height:1.72;margin:13px 0 0}

footer{position:relative;background:linear-gradient(145deg,#0d1b31,#132844);color:#cfd7e5;margin-top:58px;overflow:hidden}
footer:before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-160px;top:-190px;background:radial-gradient(circle,rgba(244,90,22,.18),transparent 66%)}
.footer-inner{position:relative;padding:50px 0 42px;display:grid;grid-template-columns:1.35fr .8fr .8fr;gap:36px}
footer .brand{color:#fff}footer a{display:block;margin:10px 0;color:#b9c4d5;transition:.18s}footer a:hover{color:#fff;transform:translateX(3px)}
.copyright{position:relative;border-top:1px solid rgba(255,255,255,.1);padding:19px 0;color:#9ba9bc;font-size:.84rem}

.auth-page{min-height:100vh;display:grid;place-items:center;padding:34px 18px;background:radial-gradient(circle at 10% 15%,rgba(244,90,22,.08),transparent 26%),radial-gradient(circle at 90% 85%,rgba(22,138,71,.07),transparent 24%)}
.auth-shell{width:min(100%,1040px);display:grid;grid-template-columns:.93fr 1.07fr;background:rgba(255,255,255,.96);border:1px solid var(--l);border-radius:32px;overflow:hidden;box-shadow:0 30px 90px rgba(15,31,58,.13)}
.auth-art{position:relative;padding:44px;background:linear-gradient(155deg,#fff1e8 0%,#fffaf7 42%,#eefaf3 100%);display:flex;flex-direction:column;justify-content:space-between;min-height:680px;overflow:hidden}
.auth-art:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-100px;top:70px;background:radial-gradient(circle,rgba(244,90,22,.17),transparent 67%)}
.auth-art:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;left:-130px;bottom:-80px;background:radial-gradient(circle,rgba(22,138,71,.13),transparent 67%)}
.auth-art>*{position:relative;z-index:1}
.auth-art h2{font-size:clamp(2.15rem,3vw,2.7rem);margin-bottom:13px}
.auth-visual{height:245px;border-radius:30px;background:radial-gradient(circle at 28% 32%,rgba(255,138,0,.28),transparent 25%),radial-gradient(circle at 69% 63%,rgba(22,138,71,.22),transparent 24%),linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,249,245,.94));display:grid;place-items:center;font-size:5.6rem;border:1px solid rgba(255,255,255,.9);box-shadow:0 18px 44px rgba(15,31,58,.08)}
.auth-panel{padding:46px;display:flex;align-items:center;background:rgba(255,255,255,.98)}
.auth-inner{width:100%;max-width:470px;margin:auto}
.form-grid{display:grid;gap:16px}
.field{display:grid;gap:8px}
.field label{font-weight:820;color:var(--n);font-size:.91rem}
.input,.select{width:100%;height:53px;border:1px solid var(--l2);border-radius:15px;padding:0 15px;outline:none;background:#fff;color:var(--t);transition:border-color .16s,box-shadow .16s,background .16s}
.input:hover,.select:hover{border-color:#cfd5df}
.input:focus,.select:focus{border-color:var(--o);box-shadow:0 0 0 4px rgba(244,90,22,.09);background:#fff}
.input::placeholder{color:#a1a9b6}
.input-wrap{position:relative}.input-wrap .input{padding-right:50px}.input-action{position:absolute;right:7px;top:6px;width:41px;height:41px;border:0;border-radius:11px;background:transparent;color:var(--m);display:grid;place-items:center}.input-action:hover{background:var(--os);color:var(--o)}
.check-row{display:flex;align-items:flex-start;gap:10px;color:var(--m);font-size:.9rem;line-height:1.5}.check-row input{width:18px;height:18px;margin-top:2px;accent-color:var(--o)}
.error{display:none;padding:12px 14px;border:1px solid #ffd4d0;border-radius:13px;background:var(--ds);color:var(--d);font-size:.86rem}.error.show{display:block}
.link{color:var(--o);font-weight:850}.link:hover{text-decoration:underline;text-underline-offset:3px}
.note{padding:14px;border:1px solid var(--l);border-radius:14px;background:#f7f8fa;color:var(--m);font-size:.84rem;line-height:1.55}

.app-shell{min-height:100vh;display:grid;grid-template-columns:268px minmax(0,1fr);background:#f5f7fa}
.sidebar{position:sticky;top:0;height:100vh;background:rgba(255,255,255,.96);border-right:1px solid var(--l);padding:22px 16px;display:flex;flex-direction:column;gap:25px;z-index:30;box-shadow:8px 0 28px rgba(15,31,58,.035)}
.sidebar-nav{display:grid;gap:7px}
.nav-item{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:14px;color:#58657a;font-weight:780;transition:.18s var(--ease)}
.nav-item:hover{background:#f5f7fa;color:var(--n);transform:translateX(2px)}
.nav-item.active{background:linear-gradient(135deg,var(--os),#fff8f4);color:var(--o);box-shadow:inset 0 0 0 1px #ffe0d0}
.sidebar-user{margin-top:auto;border-top:1px solid var(--l);padding-top:17px}
.avatar{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#fff1e7,#fff8f3);color:var(--o);font-weight:900;border:1px solid #ffe0d1}
.main-area{min-width:0}
.topbar{height:74px;background:rgba(255,255,255,.86);backdrop-filter:blur(16px);border-bottom:1px solid var(--l);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}
.page{padding:30px;max-width:1320px;margin:auto}
.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px}
.page-title h1{font-size:2.05rem;margin:0 0 5px;letter-spacing:-.045em}
.page-title p{margin-bottom:0}
.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stat-card{position:relative;padding:21px;overflow:hidden;transition:.22s var(--ease)}
.stat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.stat-card:after{content:"";position:absolute;width:84px;height:84px;border-radius:50%;right:-38px;bottom:-42px;background:radial-gradient(circle,rgba(244,90,22,.1),transparent 68%)}
.stat-label{color:var(--m);font-size:.83rem;font-weight:760}
.stat-value{font-size:1.72rem;color:var(--n);font-weight:930;margin-top:9px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.panel{padding:21px;box-shadow:var(--shadow-xs)}
.panel h3{margin-bottom:14px}
.chip{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;font-size:.76rem;font-weight:880;letter-spacing:.015em;white-space:nowrap}
.ok{background:var(--gs);color:var(--gd);border:1px solid #d2ebdc}.warn{background:var(--warns);color:var(--warn);border:1px solid #fbe6b4}.bad{background:var(--ds);color:var(--d);border:1px solid #ffd4d0}.neutral{background:#f0f2f5;color:#596579;border:1px solid #e4e7ec}
.slab{padding:19px;border:1px solid var(--l);border-radius:19px;background:linear-gradient(180deg,#fff,#fdfdfd);transition:.2s var(--ease)}
.slab:hover{border-color:#dce1e9;box-shadow:var(--shadow-xs)}
.slab+.slab{margin-top:13px}.slab-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.slab-metrics{display:flex;justify-content:space-between;gap:14px;margin-top:13px;color:var(--m);font-size:.88rem}
.timeline{display:grid}.timeline-item{display:grid;grid-template-columns:34px 1fr;gap:13px;min-height:72px}.marker{position:relative}.marker:before{content:"";position:absolute;left:16px;top:30px;bottom:-8px;width:2px;background:#e1e5eb}.timeline-item:last-child .marker:before{display:none}.dot{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#eef1f5;color:#8791a1;font-size:.8rem;font-weight:900;border:3px solid #fff;box-shadow:0 0 0 1px #e3e7ed}.timeline-item.done .dot{background:var(--g);color:#fff;box-shadow:0 0 0 4px rgba(22,138,71,.09)}.timeline-item.current .dot{background:var(--o);color:#fff;box-shadow:0 0 0 4px rgba(244,90,22,.11)}.timeline-content{padding:4px 0 19px}.timeline-content strong{display:block;color:var(--n);margin-bottom:3px}
.table-wrap{overflow:auto;border:1px solid var(--l);border-radius:19px;background:#fff;box-shadow:var(--shadow-xs)}
table{width:100%;border-collapse:collapse;min-width:840px}th,td{padding:14px 15px;border-bottom:1px solid var(--l);text-align:left;font-size:.85rem;vertical-align:middle}th{position:sticky;top:0;background:#f8f9fb;color:#667085;font-size:.73rem;text-transform:uppercase;letter-spacing:.055em;font-weight:850}tbody tr{transition:.15s}tbody tr:hover{background:#fffaf7}tbody tr:last-child td{border-bottom:0}.action-row{display:flex;flex-wrap:wrap;gap:7px}.empty{padding:40px;text-align:center;color:var(--m)}
.bottom-nav{display:none}
#toast{position:fixed;right:18px;top:92px;z-index:200}.toast{min-width:270px;max-width:390px;background:var(--n);color:#fff;border-radius:15px;padding:14px 16px;box-shadow:var(--shadow);animation:toastIn .22s var(--ease)}.toast.success{background:var(--gd)}.toast.error{background:#9f1f18}@keyframes toastIn{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:none}}

@media (max-width:1100px){
  .hero-grid{gap:38px;grid-template-columns:minmax(0,1fr) minmax(390px,.9fr)}
  .steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  .step:not(:last-child):after{display:none}
}

@media (max-width:980px){
  .container{width:min(calc(100% - 30px),var(--max))}
  .hero{padding:60px 0 44px}
  .hero-grid,.auth-shell{grid-template-columns:1fr}
  .hero-copy{max-width:760px}
  .hero-card{max-width:720px;width:100%;margin:auto}
  .auth-art{display:none}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .desktop-nav{display:none}
  .app-shell{grid-template-columns:1fr}
  .sidebar{display:none}
  .main-area{padding-bottom:86px}
  .bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:60;padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);backdrop-filter:blur(20px);border-top:1px solid var(--l);box-shadow:0 -8px 24px rgba(15,31,58,.06)}
  .bottom-nav .nav-item{display:grid;place-items:center;gap:3px;padding:7px 3px;border-radius:11px;font-size:.7rem;transform:none}
  .bottom-nav .nav-item.active{background:var(--os)}
  .bottom-nav .icon{width:22px;height:22px}
}

@media (max-width:720px){
  .container{width:min(calc(100% - 22px),var(--max))}
  .site-header{background:rgba(255,255,255,.94)}
  .header-inner{min-height:66px}
  .header-actions .btn-secondary{display:none}
  .header-actions .btn{min-height:42px;padding-inline:14px;font-size:.84rem}
  .logo{width:40px;height:40px;border-radius:13px}
  .brand{font-size:1.06rem}
  .hero{padding:42px 0 26px}
  h1{font-size:clamp(2.45rem,12vw,3.3rem);line-height:1.02}
  h2{font-size:clamp(1.75rem,8vw,2.3rem)}
  .hero-copy p{font-size:1rem;line-height:1.72}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
  .hero-actions .btn{padding-inline:12px}
  .hero-card{padding:16px;border-radius:24px}
  .hero-bonus{padding:18px;border-radius:18px}
  .hero-bonus strong{font-size:1.85rem}
  .hero-card>.panel{padding:16px!important}
  .trust-grid,.feature-grid,.grid-2,.grid-3,.stats-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .section{padding:44px 0}
  .section-head{margin-bottom:24px;text-align:left}
  .trust-card,.feature-card{padding:20px}
  .feed-row{grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;padding:14px}
  .feed-row>span:nth-child(2){grid-column:1;grid-row:2}
  .feed-row>strong:nth-child(3){grid-column:2;grid-row:1}
  .feed-row>.sample,.feed-row>.real{grid-column:2;grid-row:2}
  .footer-inner{grid-template-columns:1fr;padding:38px 0 32px;gap:24px}
  .auth-page{padding:0}
  .auth-shell{border-radius:0;min-height:100vh;border:0;box-shadow:none}
  .auth-panel{padding:28px 18px}
  .topbar{height:66px;padding:0 14px}
  .topbar .brand span:not(.logo){display:none}
  .page{padding:18px 13px 22px}
  .page-title{margin-bottom:18px}
  .page-title h1{font-size:1.68rem}
  .panel{padding:16px}
  .slab{padding:16px}
  .slab-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .slab-metrics strong:last-child{grid-column:1/-1}
  #toast{left:12px;right:12px;top:76px}.toast{width:100%;min-width:0;max-width:none}
}

@media (max-width:430px){
  .container{width:min(calc(100% - 18px),var(--max))}
  .header-actions .btn{font-size:.79rem;padding-inline:11px}
  .hero-actions{grid-template-columns:1fr}
  .hero-bonus{align-items:flex-start}.hero-bonus>div:last-child{font-size:3.2rem!important}
  .kicker{font-size:.74rem}
  .page{padding-inline:10px}
  .panel,.stat-card{border-radius:18px}
}

@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}


/* =========================================================
   V3 — MOBILE APP-STYLE UI
   ========================================================= */
.brand-mark{
  width:48px;height:48px;object-fit:contain;flex:0 0 auto;
  filter:drop-shadow(0 8px 14px rgba(244,90,22,.16));
}
.app-brand{gap:10px}
.app-brand span{font-size:1.18rem;color:var(--n);font-weight:950}
.auth-appbar{display:flex;align-items:center;justify-content:space-between;gap:16px}
.auth-support{
  width:46px;height:46px;border:2px solid var(--o);color:var(--o);border-radius:50%;
  display:grid;place-items:center;background:#fff;box-shadow:0 7px 20px rgba(244,90,22,.09)
}
.auth-support .icon{width:23px;height:23px}
.auth-intro{text-align:center;margin-top:20px}
.auth-intro h1{font-size:clamp(2.15rem,4vw,3.2rem);margin:0 0 8px;letter-spacing:-.045em}
.auth-intro p{margin:0;color:#58647a;font-size:1.05rem}
.auth-visual{
  height:270px;background:transparent;border:0;box-shadow:none;border-radius:0;
  display:flex;align-items:flex-end;justify-content:center
}
.auth-visual img{width:min(100%,590px);height:100%;object-fit:contain;object-position:center bottom}
.auth-form{gap:17px}
.input-shell{position:relative}
.input-shell .input,.input-shell .select{padding-left:54px}
.field-glyph{
  position:absolute;left:16px;top:50%;transform:translateY(-50%);z-index:2;
  color:var(--o);display:grid;place-items:center;pointer-events:none
}
.field-glyph .icon{width:23px;height:23px}
.forgot-row{display:flex;justify-content:flex-end;margin-top:-2px}
.auth-main-btn{min-height:58px;border-radius:16px;font-size:1.08rem}
.auth-divider{display:flex;align-items:center;gap:13px;color:#7a8495;font-weight:800}
.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--l)}
.auth-divider span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--l);background:#fff;box-shadow:var(--shadow-xs);font-size:.82rem}
.create-account-btn{min-height:56px;font-size:1.02rem}
.auth-trust{
  border:1px solid #dcebe1;background:linear-gradient(145deg,#fbfffc,#f4fbf7);
  border-radius:22px;padding:18px;box-shadow:0 10px 28px rgba(22,138,71,.05)
}
.auth-trust-title{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--n);font-weight:900;margin-bottom:16px}
.auth-trust-title .icon{color:var(--g)}
.auth-trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.auth-trust-grid>div{display:grid;justify-items:center;text-align:center;padding:0 10px;border-right:1px solid #dfe8e2;gap:5px}
.auth-trust-grid>div:last-child{border-right:0}
.auth-trust-grid strong{font-size:.81rem;color:var(--n)}
.auth-trust-grid small{font-size:.73rem;color:var(--g);font-weight:800}
.trust-round{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(145deg,#2ca948,#188a3b);color:#fff;font-weight:900;margin-bottom:4px
}
.trust-round .icon{width:22px;height:22px}
.auth-footnote{display:flex;align-items:center;justify-content:center;gap:8px;color:#7a8495;font-size:.82rem}
.auth-footnote .icon{color:var(--g);width:19px;height:19px}
.auth-demo{font-size:.78rem;text-align:center}
.auth-login-link{text-align:center}
.registration-benefits{
  display:grid;grid-template-columns:1fr 1fr;border:1px solid #dcebe1;border-radius:18px;
  background:#fbfffc;padding:14px
}
.registration-benefits>div{display:flex;align-items:center;gap:11px;padding:4px 12px}
.registration-benefits>div+div{border-left:1px solid #dfe8e2}
.registration-benefits .icon{color:var(--g);width:30px;height:30px}
.registration-benefits span{display:grid;gap:3px}
.registration-benefits strong{font-size:.8rem;color:var(--n)}
.registration-benefits small{color:var(--g);font-weight:850}

.mobile-welcome{display:none}
.dashboard-duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.status-feature,.bonus-feature{
  position:relative;min-height:190px;border-radius:24px;padding:23px;overflow:hidden;
  border:1px solid var(--l);background:#fff;box-shadow:var(--shadow-xs)
}
.status-feature{background:linear-gradient(145deg,#f8fff9,#fff);border-color:#cfe7d7}
.bonus-feature{background:linear-gradient(145deg,#fff8f1,#fff);border-color:#ffd4b8}
.status-feature>span,.bonus-feature>span{font-size:.9rem;color:var(--m);font-weight:800}
.feature-value{display:flex;align-items:center;gap:12px;color:var(--g);margin:22px 0 12px}
.feature-value .icon{width:48px;height:48px;fill:var(--g);stroke:#fff}
.feature-value strong{font-size:2rem}
.status-feature p,.bonus-feature p{margin:0;color:#596579;max-width:220px}
.bonus-feature>strong{display:block;color:var(--o);font-size:2.65rem;margin:15px 0 8px;letter-spacing:-.05em}
.coin-stack{
  position:absolute;right:20px;bottom:20px;width:72px;height:72px;border-radius:50%;
  display:grid;place-items:center;color:#fff;font-size:2rem;font-weight:950;
  background:linear-gradient(145deg,#ffc532,#f19b00);border:7px solid #ffe79c;
  box-shadow:-18px 7px 0 -8px #f7a800,-34px 13px 0 -15px #ef9700
}
.dashboard-slabs{margin-top:18px}
.section-inline-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.section-inline-title h3{margin:0 0 4px}
.section-inline-title p{margin:0;color:var(--m);font-size:.86rem}
.app-slab{border-radius:20px;padding:20px}
.app-slab h3{margin:0 0 5px}
.app-progress{height:10px;margin-top:20px}
.slab-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px}
.slab-summary>span{color:var(--m)}
.slab-summary>span strong{color:var(--n);font-size:1.15rem}
.slab-summary .earned{color:var(--g)}
.slab-summary .pending{color:var(--o)}
.unlock-note{margin-top:15px;padding:12px 14px;border:1px solid var(--l);border-radius:13px;background:#fbfcfd;color:#596579;font-size:.86rem}
.unlock-note strong{color:var(--o)}
.slab-dates{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-size:.73rem;color:var(--m)}
.quick-metrics{
  display:grid;grid-template-columns:repeat(3,1fr);margin-top:18px;padding:20px;
  background:#fff;border:1px solid var(--l);border-radius:23px;box-shadow:var(--shadow-xs)
}
.quick-metrics>div{display:flex;align-items:center;justify-content:center;gap:13px;padding:6px 16px;border-right:1px solid var(--l)}
.quick-metrics>div:last-child{border-right:0}
.quick-metrics .icon{color:var(--g);width:28px;height:28px}
.quick-metrics span{display:grid;color:var(--m);font-size:.82rem}
.quick-metrics strong{color:var(--n);font-size:1rem}
.encouragement{
  display:flex;align-items:center;gap:14px;margin-top:18px;padding:17px 20px;border-radius:20px;
  border:1px solid #d5eadc;background:linear-gradient(145deg,#f5fcf7,#fff);box-shadow:var(--shadow-xs)
}
.encouragement>.icon{width:36px;height:36px;color:var(--g)}
.encouragement strong{color:var(--n)}
.encouragement p{margin:2px 0 0;color:var(--m);font-size:.85rem}
.sparkles{margin-left:auto;font-size:1.45rem}

.tracking-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:18px}
.tracking-card{
  border-radius:26px;padding:24px;background:#fff;border:1px solid var(--l);box-shadow:var(--shadow-xs)
}
.eligible-card{background:linear-gradient(145deg,#f9fffa,#fff);border-color:#cde7d5}
.ineligible-card{background:linear-gradient(145deg,#fff7f6,#fff);border-color:#ffd1cc}
.tracking-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.tracking-card-head>strong{display:flex;align-items:center;gap:7px;color:#4f5b70}
.tracking-card-head .icon{width:20px;height:20px}
.eligibility-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:var(--gs);color:var(--gd);font-weight:900;border:1px solid #cfe9d8}
.eligibility-pill.bad{background:var(--ds);color:var(--d);border-color:#ffd4d0}
.tracking-card h3{margin:22px 0 15px}
.target-slab-list{border:1px solid var(--l);border-radius:19px;background:#fff;padding:7px 18px}
.target-slab-list>div{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:13px;padding:14px 0;border-bottom:1px solid var(--l)}
.target-slab-list>div:last-child{border-bottom:0}
.target-slab-list small{display:block;color:var(--m);margin-top:3px}
.target-slab-list b{font-size:1.35rem;color:var(--g)}
.target-bag{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:var(--gs);color:var(--g)}
.target-bag .icon{width:25px;height:25px}
.tracking-summary{margin-top:16px;border:1px solid var(--l);border-radius:19px;background:#fff;padding:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;text-align:center}
.tracking-summary>div span{display:block;color:var(--m);font-size:.78rem}
.tracking-summary>div strong{font-size:1.55rem;color:var(--g)}
.tracking-summary .orange{color:var(--o)}
.tracking-summary .wide{grid-column:1/-1;margin-top:1px}
.tracking-summary p{grid-column:1/-1;margin:0;display:flex;align-items:center;justify-content:center;gap:8px;color:#536078;font-size:.82rem}
.tracking-summary p .icon{color:var(--g);width:19px;height:19px}
.journey-panel{height:max-content}

@media (max-width:980px){
  .auth-shell{max-width:720px}
  .auth-art{display:flex;min-height:400px;padding:24px 28px 0;background:linear-gradient(180deg,#fff,#fff8f2)}
  .auth-appbar{width:100%}
  .auth-intro{margin-top:14px}
  .auth-intro h1{font-size:2.4rem}
  .auth-visual{height:215px}
  .auth-panel{margin-top:-8px;border-radius:30px 30px 0 0;position:relative;z-index:2}
  .tracking-layout{grid-template-columns:1fr}
}

@media (max-width:720px){
  body{background:#fffaf6}
  .auth-page{display:block;background:#fffaf6}
  .auth-shell{display:block;min-height:100vh;background:#fff;border-radius:0}
  .auth-art{
    min-height:365px;padding:18px 18px 0;display:flex;flex-direction:column;
    background:linear-gradient(180deg,#fff 0,#fff 26%,#fff7ef 100%)
  }
  .auth-art .app-brand span{font-size:1.12rem}
  .auth-art .brand-mark{width:50px;height:50px}
  .auth-support{width:42px;height:42px}
  .auth-intro{margin-top:18px}
  .auth-intro h1{font-size:2.15rem;margin-bottom:5px}
  .auth-intro p{font-size:1rem}
  .auth-visual{height:205px;margin-top:2px}
  .auth-panel{
    margin-top:-28px;padding:28px 18px 24px;border-radius:31px 31px 0 0;
    box-shadow:0 -12px 36px rgba(15,31,58,.08)
  }
  .auth-inner{max-width:520px}
  .input,.select{height:55px;border-radius:14px}
  .auth-main-btn{min-height:58px}
  .auth-trust{padding:16px 10px}
  .auth-trust-grid>div{padding:0 6px}
  .auth-trust-grid strong{font-size:.7rem}
  .auth-trust-grid small{font-size:.64rem}
  .trust-round{width:38px;height:38px}
  .auth-demo{order:20}
  .register-shell .auth-art{min-height:340px}
  .register-shell .auth-visual{height:180px}
  .auth-two-col{grid-template-columns:1fr}
  .registration-benefits strong{font-size:.72rem}
  .registration-benefits small{font-size:.68rem}
  .topbar{height:74px;background:#fff}
  .topbar .app-brand span{display:block!important;font-size:1.05rem}
  .topbar .brand-mark{width:45px;height:45px}
  .route-home .page-title{display:none}
  .mobile-welcome{display:flex;align-items:center;gap:15px;margin:4px 4px 20px}
  .profile-avatar{
    width:78px;height:78px;border-radius:50%;display:grid;place-items:center;
    background:linear-gradient(145deg,#ffe3c9,#ff7c2b);color:#fff;font-size:1.8rem;font-weight:950;
    border:5px solid #fff;box-shadow:0 10px 28px rgba(244,90,22,.22)
  }
  .mobile-welcome h2{font-size:1.75rem;margin:0 0 2px}
  .mobile-welcome p{margin:0;color:var(--m)}
  .dashboard-duo{gap:12px}
  .status-feature,.bonus-feature{min-height:170px;padding:17px;border-radius:20px}
  .feature-value{margin:16px 0 9px;gap:8px}
  .feature-value .icon{width:35px;height:35px}
  .feature-value strong{font-size:1.55rem}
  .status-feature p,.bonus-feature p{font-size:.79rem}
  .bonus-feature>strong{font-size:2.05rem;margin:13px 0 7px}
  .coin-stack{width:50px;height:50px;font-size:1.4rem;right:15px;bottom:15px;border-width:5px;box-shadow:-13px 6px 0 -7px #f7a800,-25px 10px 0 -12px #ef9700}
  .dashboard-slabs{padding:14px}
  .section-inline-title{display:block}
  .section-inline-title .chip{margin-top:9px}
  .app-slab{padding:16px;border-radius:17px}
  .slab-head{align-items:center}
  .slab-head h3{font-size:1.08rem}
  .slab-summary{font-size:.82rem}
  .slab-summary .earned,.slab-summary .pending{font-size:.78rem}
  .slab-dates{display:none}
  .quick-metrics{padding:15px 5px;border-radius:19px}
  .quick-metrics>div{display:grid;justify-items:center;text-align:center;gap:6px;padding:4px 5px}
  .quick-metrics .icon{width:24px;height:24px}
  .quick-metrics span{font-size:.71rem}
  .quick-metrics strong{font-size:.82rem;margin-top:2px}
  .encouragement{padding:14px}
  .encouragement p{font-size:.76rem}
  .route-tracking .page-title{text-align:center;display:block}
  .route-tracking .page-title h1{font-size:2rem}
  .tracking-card{padding:16px;border-radius:20px}
  .tracking-card-head{align-items:flex-start}
  .tracking-card-head>strong{font-size:.82rem}
  .target-slab-list{padding:4px 13px}
  .target-slab-list>div{grid-template-columns:42px 1fr auto;gap:10px}
  .target-slab-list b{font-size:1rem}
  .target-bag{width:38px;height:38px}
  .tracking-summary{padding:14px 8px;gap:8px}
  .tracking-summary>div strong{font-size:1.25rem}
  .journey-panel{margin-bottom:8px}
  .bottom-nav{padding-top:10px}
  .bottom-nav .nav-item{font-size:.72rem}
  .bottom-nav .nav-item.active{color:var(--o);background:transparent}
  .bottom-nav .nav-item.active:after{content:"";width:30px;height:3px;border-radius:999px;background:var(--o)}
}
@media (max-width:390px){
  .auth-art{min-height:348px}
  .auth-visual{height:188px}
  .auth-intro h1{font-size:1.95rem}
  .auth-trust-title{font-size:.83rem}
  .dashboard-duo{grid-template-columns:1fr 1fr}
  .status-feature,.bonus-feature{padding:14px;min-height:160px}
  .feature-value strong{font-size:1.35rem}
  .bonus-feature>strong{font-size:1.8rem}
}


/* =========================================================
   V4 — ONE APP DESIGN ON DESKTOP + MOBILE
   No public marketing layout. The website behaves like an app.
   ========================================================= */
html{background:#fffaf6}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at -6% 20%,rgba(255,123,34,.15),transparent 17%),
    radial-gradient(circle at 107% 76%,rgba(255,123,34,.13),transparent 18%),
    #fffaf6;
}
.site-header,footer{display:none!important}

/* Login and register are always one centered app screen */
.app-only-auth{
  display:block;
  min-height:100vh;
  padding:32px 14px;
}
.app-only-auth .auth-shell{
  width:100%;
  max-width:440px;
  margin:0 auto;
  display:block;
  overflow:hidden;
  border:1px solid rgba(224,226,231,.85);
  border-radius:42px;
  background:#fff;
  box-shadow:0 28px 80px rgba(29,36,52,.16);
}
.app-only-auth .auth-art{
  display:flex!important;
  min-height:385px;
  padding:24px 24px 0;
  background:linear-gradient(180deg,#fff 0,#fff 27%,#fff8f1 100%);
}
.app-only-auth .auth-appbar{width:100%}
.app-only-auth .auth-intro{margin-top:18px}
.app-only-auth .auth-intro h1{font-size:2.3rem}
.app-only-auth .auth-intro p{font-size:1rem}
.app-only-auth .auth-visual{height:215px;margin-top:4px}
.app-only-auth .auth-panel{
  padding:30px 24px 26px;
  margin-top:-30px;
  position:relative;
  z-index:2;
  background:#fff;
  border-radius:32px 32px 0 0;
  box-shadow:0 -14px 34px rgba(18,31,52,.08);
}
.app-only-auth .auth-inner{max-width:none}
.app-only-auth .input,.app-only-auth .select{height:56px}
.app-only-auth .auth-main-btn{min-height:58px}
.app-only-auth .auth-trust{margin-top:4px}
.app-only-auth .register-shell .auth-art{min-height:355px}
.app-only-auth .register-shell .auth-visual{height:185px}

/* Policies are also displayed inside the same app frame */
.policy-app{
  width:100%;
  max-width:440px;
  min-height:calc(100vh - 64px);
  margin:0 auto;
  background:#fff;
  border:1px solid rgba(224,226,231,.85);
  border-radius:38px;
  box-shadow:0 28px 80px rgba(29,36,52,.16);
  overflow:hidden;
}
.policy-top{
  display:flex;align-items:center;justify-content:space-between;
  min-height:82px;padding:15px 20px;border-bottom:1px solid var(--l)
}
.policy-app article{padding:26px 24px 36px;line-height:1.7}
.policy-app article h1{font-size:2rem}
.policy-app article h3{margin-top:25px}

/* User app stays phone-width even on desktop */
.user-shell{
  display:block;
  width:100%;
  max-width:440px;
  min-height:calc(100vh - 48px);
  margin:24px auto;
  border:1px solid rgba(224,226,231,.85);
  border-radius:42px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 28px 80px rgba(29,36,52,.16);
}
.user-shell .sidebar{display:none!important}
.user-shell .main-area{
  min-height:calc(100vh - 48px);
  width:100%;
  padding-bottom:86px;
  background:linear-gradient(180deg,#fff,#fffaf6 48%,#fff);
}
.user-shell .topbar{
  height:84px;
  padding:0 22px;
  background:#fff;
  border-bottom:1px solid var(--l);
}
.user-shell .topbar .app-brand span{display:block!important;font-size:1.08rem}
.user-shell .topbar .brand-mark{width:50px;height:50px}
.user-shell .topbar .icon-btn{
  width:44px;height:44px;border:2px solid var(--o);color:var(--o);border-radius:50%
}
.user-shell .page{
  width:100%;
  max-width:none;
  padding:22px 16px 24px;
}
.user-shell .page-title{
  display:block;
  text-align:center;
  margin:4px 0 22px;
}
.user-shell .page-title h1{font-size:2rem}
.user-shell .page-title p{font-size:.92rem}
.user-shell.route-home .page-title{display:none}
.user-shell .bottom-nav{
  display:grid!important;
  grid-template-columns:repeat(4,1fr);
  position:fixed;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  width:min(440px,calc(100% - 28px));
  z-index:60;
  padding:10px 8px;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(18px);
  border:1px solid var(--l);
  border-radius:0 0 34px 34px;
  box-shadow:0 -8px 30px rgba(20,32,54,.08);
}
.user-shell .bottom-nav .nav-item{
  display:grid;
  justify-items:center;
  gap:3px;
  padding:7px 3px;
  font-size:.72rem;
  border-radius:12px;
}
.user-shell .bottom-nav .nav-item.active{
  color:var(--o);
  background:transparent;
}
.user-shell .bottom-nav .nav-item.active:after{
  content:"";width:30px;height:3px;border-radius:999px;background:var(--o)
}

/* User pages never expand into desktop grids */
.user-shell .grid-2,
.user-shell .grid-3,
.user-shell .stats-grid,
.user-shell .tracking-layout{
  grid-template-columns:1fr!important;
}
.user-shell .stats-grid{gap:12px}
.user-shell .stat-card{padding:17px}
.user-shell .panel{border-radius:20px;padding:16px}
.user-shell .dashboard-duo{grid-template-columns:1fr 1fr}
.user-shell .quick-metrics{grid-template-columns:repeat(3,1fr)}
.user-shell .tracking-summary{grid-template-columns:repeat(3,1fr)}
.user-shell .table-wrap{border-radius:16px}

/* Admin remains desktop-friendly and separate */
.admin-shell{min-height:100vh}
.admin-shell .topbar .app-brand{display:none}

/* Exact compact app details */
.app-only-auth .app-brand span,
.user-shell .app-brand span{white-space:nowrap}
.auth-trust-title{font-size:.9rem}
.auth-trust-grid strong{line-height:1.25}
.check-row{font-size:.78rem}
.registration-benefits{margin-top:2px}

@media(max-width:720px){
  body{background:#fff}
  .app-only-auth{padding:0}
  .app-only-auth .auth-shell,
  .policy-app,
  .user-shell{
    max-width:none;
    width:100%;
    min-height:100vh;
    margin:0;
    border:0;
    border-radius:0;
    box-shadow:none;
  }
  .policy-app{min-height:100vh}
  .user-shell .main-area{min-height:100vh}
  .user-shell .bottom-nav{
    left:0;right:0;bottom:0;transform:none;width:100%;
    border-left:0;border-right:0;border-bottom:0;border-radius:0;
    padding-bottom:calc(9px + env(safe-area-inset-bottom))
  }
  .app-only-auth .auth-shell{min-height:100vh}
  .app-only-auth .auth-art{min-height:365px}
  .app-only-auth .auth-panel{padding-left:18px;padding-right:18px}
}
@media(max-width:390px){
  .app-only-auth .auth-art{min-height:348px}
  .app-only-auth .auth-intro h1{font-size:2rem}
  .app-only-auth .auth-visual{height:192px}
  .user-shell .dashboard-duo{gap:10px}
}


/* =========================================================
   V5 — PREMIUM BRAND APP UI
   Same visual language on desktop and mobile.
   ========================================================= */
:root{
  --brand-orange:#ff5f0a;
  --brand-orange-2:#ff7a18;
  --brand-green:#199447;
  --brand-navy:#101f3a;
  --brand-text:#26344b;
  --brand-muted:#6e788a;
  --brand-line:#e6e8ed;
  --brand-soft:#fff7f1;
  --brand-shadow:0 30px 90px rgba(31,42,62,.16);
  --brand-shadow-soft:0 12px 36px rgba(31,42,62,.09);
}

/* Background */
html,body{min-height:100%}
body{
  color:var(--brand-text);
  background:
    radial-gradient(circle at 14% 16%,rgba(255,95,10,.13),transparent 26%),
    radial-gradient(circle at 86% 79%,rgba(255,162,87,.13),transparent 28%),
    linear-gradient(135deg,#fffdfb 0%,#fff9f5 46%,#fffdfb 100%);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}

/* App frame */
.app-only-auth{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:28px 18px;
}
.app-only-auth .auth-shell{
  width:min(100%,520px);
  max-width:520px;
  margin:0;
  border-radius:30px;
  border:1px solid rgba(225,228,234,.94);
  background:#fff;
  box-shadow:var(--brand-shadow);
  overflow:hidden;
  isolation:isolate;
}
.app-only-auth .auth-shell:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

/* Header + illustration */
.app-only-auth .auth-art{
  min-height:332px;
  padding:21px 30px 0;
  background:
    radial-gradient(circle at 52% 95%,rgba(255,161,75,.18),transparent 42%),
    linear-gradient(180deg,#fff 0%,#fff 27%,#fff9f4 100%);
}
.auth-appbar{min-height:58px}
.app-only-auth .app-brand{gap:12px}
.app-only-auth .brand-mark{
  width:54px;
  height:54px;
  filter:drop-shadow(0 8px 13px rgba(255,95,10,.18));
}
.app-only-auth .app-brand span{
  font-size:1.35rem;
  letter-spacing:-.025em;
  font-weight:900;
}
.app-only-auth .auth-support{
  width:46px;
  height:46px;
  border-width:1.5px;
  box-shadow:0 8px 22px rgba(255,95,10,.09);
}
.app-only-auth .auth-intro{margin-top:13px}
.app-only-auth .auth-intro h1{
  margin:0 0 5px;
  color:var(--brand-navy);
  font-size:2.35rem;
  line-height:1.04;
  letter-spacing:-.045em;
  font-weight:900;
}
.app-only-auth .auth-intro p{
  color:var(--brand-muted);
  font-size:1rem;
  line-height:1.5;
}
.app-only-auth .auth-visual{
  height:174px;
  margin-top:4px;
}
.app-only-auth .auth-visual img{
  width:100%;
  max-width:445px;
  object-fit:contain;
  filter:drop-shadow(0 16px 20px rgba(92,55,27,.08));
}

/* Form card */
.app-only-auth .auth-panel{
  margin-top:-20px;
  padding:27px 31px 28px;
  border-radius:28px 28px 0 0;
  background:rgba(255,255,255,.98);
  box-shadow:
    0 -16px 34px rgba(21,35,57,.07),
    inset 0 1px 0 rgba(255,255,255,.95);
}
.app-only-auth .auth-form{gap:15px}
.app-only-auth .field{gap:8px}
.app-only-auth .field label{
  color:var(--brand-navy);
  font-size:.91rem;
  font-weight:800;
  letter-spacing:-.01em;
}
.app-only-auth .input-shell{position:relative}
.app-only-auth .input,
.app-only-auth .select{
  height:57px;
  border:1px solid #d9dde5;
  border-radius:14px;
  background:#fff;
  color:var(--brand-text);
  font-size:.97rem;
  box-shadow:
    0 1px 0 rgba(255,255,255,.95),
    inset 0 1px 2px rgba(19,31,51,.025);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease;
}
.app-only-auth .input{padding-left:54px}
.app-only-auth .select{padding-left:54px}
.app-only-auth .field>.select{padding-left:15px}
.app-only-auth .input::placeholder{color:#969eab}
.app-only-auth .input:hover,
.app-only-auth .select:hover{border-color:#c7ccd5}
.app-only-auth .input:focus,
.app-only-auth .select:focus{
  border-color:var(--brand-orange);
  background:#fff;
  box-shadow:0 0 0 4px rgba(255,95,10,.095),0 8px 20px rgba(24,34,51,.05);
  outline:0;
}
.app-only-auth .field-glyph{
  left:17px;
  color:var(--brand-orange);
}
.app-only-auth .field-glyph .icon{width:22px;height:22px}

/* Remove browser autofill purple/blue */
.app-only-auth input:-webkit-autofill,
.app-only-auth input:-webkit-autofill:hover,
.app-only-auth input:-webkit-autofill:focus,
.app-only-auth input:-webkit-autofill:active{
  -webkit-text-fill-color:var(--brand-text)!important;
  -webkit-box-shadow:0 0 0 1000px #fff inset!important;
  box-shadow:0 0 0 1000px #fff inset!important;
  caret-color:var(--brand-text);
  transition:background-color 9999s ease-out 0s;
}

/* Links and buttons */
.app-only-auth .forgot-row{margin-top:-1px}
.app-only-auth .link{
  color:var(--brand-orange);
  font-weight:800;
}
.app-only-auth .auth-main-btn{
  min-height:57px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--brand-orange),var(--brand-orange-2));
  box-shadow:0 14px 26px rgba(255,95,10,.23);
  font-size:1.06rem;
  letter-spacing:-.01em;
}
.app-only-auth .auth-main-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 17px 32px rgba(255,95,10,.29);
}
.app-only-auth .auth-main-btn:active{transform:translateY(0)}
.app-only-auth .create-account-btn{
  min-height:54px;
  border:1.5px solid rgba(255,95,10,.64);
  border-radius:14px;
  background:#fff;
  color:var(--brand-orange);
  box-shadow:0 7px 18px rgba(255,95,10,.045);
  font-size:.99rem;
}
.app-only-auth .create-account-btn:hover{background:#fff8f2}
.app-only-auth .auth-divider{margin:1px 0}
.app-only-auth .auth-divider span{
  width:39px;
  height:39px;
  font-size:.75rem;
  background:#fff;
  border-color:#e5e8ed;
  box-shadow:0 7px 17px rgba(26,36,53,.06);
}

/* Trust card */
.app-only-auth .auth-trust{
  margin-top:4px;
  padding:15px 13px 14px;
  border:1px solid #dbe9df;
  border-radius:18px;
  background:
    linear-gradient(145deg,rgba(251,255,252,.98),rgba(246,252,248,.98));
  box-shadow:0 10px 24px rgba(22,137,67,.045);
}
.app-only-auth .auth-trust-title{
  margin-bottom:13px;
  color:var(--brand-navy);
  font-size:.88rem;
  font-weight:900;
}
.app-only-auth .auth-trust-grid>div{
  gap:5px;
  padding:0 8px;
}
.app-only-auth .trust-round{
  width:39px;
  height:39px;
  margin-bottom:3px;
  box-shadow:0 8px 18px rgba(25,148,71,.16);
}
.app-only-auth .auth-trust-grid strong{
  color:var(--brand-navy);
  font-size:.72rem;
  line-height:1.25;
}
.app-only-auth .auth-trust-grid small{
  color:var(--brand-green);
  font-size:.66rem;
  line-height:1.25;
}
.app-only-auth .auth-footnote{
  color:#7c8594;
  font-size:.76rem;
  padding-top:1px;
}
.app-only-auth .auth-demo{
  padding:9px 11px;
  border:1px dashed #e4e6eb;
  border-radius:11px;
  background:#fafbfc;
  color:#6f7887;
}

/* Registration */
.app-only-auth .register-shell .auth-art{min-height:310px}
.app-only-auth .register-shell .auth-visual{height:146px}
.app-only-auth .registration-benefits{
  border-radius:15px;
  padding:12px 8px;
  background:linear-gradient(145deg,#fbfffc,#f5fbf7);
}
.app-only-auth .registration-benefits>div{padding:3px 10px}
.app-only-auth .check-row{
  color:#667184;
  font-size:.77rem;
  line-height:1.45;
}
.app-only-auth .check-row input{accent-color:var(--brand-orange)}

/* User app frame */
.user-shell{
  max-width:520px;
  min-height:calc(100vh - 48px);
  border-radius:30px;
  box-shadow:var(--brand-shadow);
}
.user-shell .topbar{
  height:80px;
  padding:0 25px;
}
.user-shell .topbar .brand-mark{width:52px;height:52px}
.user-shell .topbar .app-brand span{font-size:1.2rem!important}
.user-shell .page{padding:21px 18px 28px}
.user-shell .bottom-nav{
  width:min(520px,calc(100% - 28px));
  border-radius:0 0 28px 28px;
  box-shadow:0 -10px 28px rgba(22,33,52,.075);
}
.user-shell .panel,
.user-shell .status-feature,
.user-shell .bonus-feature,
.user-shell .quick-metrics,
.user-shell .encouragement,
.user-shell .tracking-card{
  box-shadow:var(--brand-shadow-soft);
}

/* Desktop scale */
@media(min-width:721px){
  .app-only-auth .auth-shell{max-height:none}
  .app-only-auth .auth-trust-grid strong{font-size:.75rem}
  .app-only-auth .auth-trust-grid small{font-size:.68rem}
}

/* Mobile keeps exactly the same design, without fake phone border */
@media(max-width:720px){
  body{background:#fff}
  .app-only-auth{padding:0;display:block}
  .app-only-auth .auth-shell,
  .user-shell,
  .policy-app{
    width:100%;
    max-width:none;
    min-height:100svh;
    margin:0;
    border:0;
    border-radius:0;
    box-shadow:none;
  }
  .app-only-auth .auth-art{
    min-height:357px;
    padding:18px 19px 0;
  }
  .app-only-auth .auth-intro{margin-top:16px}
  .app-only-auth .auth-intro h1{font-size:2.15rem}
  .app-only-auth .auth-visual{height:197px}
  .app-only-auth .auth-panel{
    margin-top:-25px;
    padding:27px 18px calc(25px + env(safe-area-inset-bottom));
    border-radius:29px 29px 0 0;
  }
  .app-only-auth .input,
  .app-only-auth .select{height:57px}
  .app-only-auth .register-shell .auth-art{min-height:336px}
  .app-only-auth .register-shell .auth-visual{height:172px}
  .user-shell .bottom-nav{
    width:100%;
    border-radius:0;
  }
}

@media(max-width:390px){
  .app-only-auth .auth-art{min-height:340px}
  .app-only-auth .auth-intro h1{font-size:1.98rem}
  .app-only-auth .auth-visual{height:180px}
  .app-only-auth .auth-panel{padding-left:15px;padding-right:15px}
  .app-only-auth .auth-trust{padding-left:8px;padding-right:8px}
  .app-only-auth .auth-trust-grid>div{padding:0 5px}
  .app-only-auth .auth-trust-grid strong{font-size:.66rem}
  .app-only-auth .auth-trust-grid small{font-size:.61rem}
}


/* =========================================================
   V5.1 — OLD APP DESIGN, CSS REFINEMENT ONLY
   No HTML/JS/logic redesign.
   ========================================================= */

/* Core polish */
:root{
  --v51-shadow:0 24px 70px rgba(21,31,48,.14);
  --v51-shadow-soft:0 10px 30px rgba(21,31,48,.075);
  --v51-border:#e4e7ec;
}
html,body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
body{
  background:
    radial-gradient(circle at 10% 16%,rgba(255,95,10,.10),transparent 25rem),
    radial-gradient(circle at 90% 82%,rgba(255,143,58,.09),transparent 26rem),
    #fffaf7;
}
button,input,select,a{-webkit-tap-highlight-color:transparent}
button,input,select{font-size:16px}

/* Same app card, better proportions */
.app-only-auth{
  min-height:100dvh;
  display:grid;
  place-items:center;
  padding:22px 16px;
}
.app-only-auth .auth-shell{
  width:min(100%,500px);
  max-width:500px;
  border-radius:28px;
  border:1px solid var(--v51-border);
  box-shadow:var(--v51-shadow);
  background:#fff;
}
.app-only-auth .auth-art{
  min-height:292px;
  padding:19px 27px 0;
}
.app-only-auth .auth-appbar{min-height:52px}
.app-only-auth .brand-mark{width:48px;height:48px}
.app-only-auth .app-brand span{
  font-size:1.22rem;
  letter-spacing:-.025em;
}
.app-only-auth .auth-support{
  width:43px;
  height:43px;
}
.app-only-auth .auth-intro{margin-top:8px}
.app-only-auth .auth-intro h1{
  margin-bottom:4px;
  font-size:2.12rem;
  letter-spacing:-.04em;
}
.app-only-auth .auth-intro p{
  font-size:.94rem;
  line-height:1.45;
}
.app-only-auth .auth-visual{
  height:154px;
  margin-top:0;
}
.app-only-auth .auth-visual img{
  max-width:410px;
  filter:drop-shadow(0 12px 17px rgba(75,48,26,.07));
}

/* Compact professional form */
.app-only-auth .auth-panel{
  margin-top:-17px;
  padding:23px 28px 24px;
  border-radius:25px 25px 0 0;
}
.app-only-auth .auth-form{gap:13px}
.app-only-auth .field{gap:6px}
.app-only-auth .field label{
  font-size:.87rem;
  font-weight:800;
}
.app-only-auth .input,
.app-only-auth .select{
  height:52px;
  border-radius:13px;
  border-color:#d9dde4;
  background:#fff;
  box-shadow:inset 0 1px 2px rgba(16,31,58,.025);
}
.app-only-auth .input:hover,
.app-only-auth .select:hover{
  border-color:#c9ced7;
}
.app-only-auth .input:focus,
.app-only-auth .select:focus{
  border-color:#ff6817;
  box-shadow:0 0 0 4px rgba(255,104,23,.09);
}
.app-only-auth .field-glyph{left:16px}
.app-only-auth .field-glyph .icon{width:21px;height:21px}
.app-only-auth .input-shell .input,
.app-only-auth .input-shell .select{
  padding-left:50px;
}
.app-only-auth .forgot-row{
  margin-top:-2px;
  font-size:.86rem;
}
.app-only-auth .auth-main-btn{
  min-height:52px;
  border-radius:13px;
  box-shadow:0 11px 23px rgba(255,95,10,.20);
  font-size:1rem;
}
.app-only-auth .create-account-btn{
  min-height:50px;
  border-radius:13px;
  font-size:.94rem;
}
.app-only-auth .auth-divider span{
  width:36px;
  height:36px;
  font-size:.72rem;
}
.app-only-auth .auth-divider{gap:11px}

/* Browser autofill stays white */
.app-only-auth input:-webkit-autofill,
.app-only-auth input:-webkit-autofill:hover,
.app-only-auth input:-webkit-autofill:focus,
.app-only-auth input:-webkit-autofill:active{
  -webkit-text-fill-color:#26344b!important;
  -webkit-box-shadow:0 0 0 1000px #fff inset!important;
  box-shadow:0 0 0 1000px #fff inset!important;
  caret-color:#26344b;
  transition:background-color 9999s ease-out 0s;
}

/* Trust section: same content, cleaner */
.app-only-auth .auth-trust{
  margin-top:1px;
  padding:13px 11px;
  border-radius:16px;
  box-shadow:none;
}
.app-only-auth .auth-trust-title{
  margin-bottom:11px;
  font-size:.82rem;
}
.app-only-auth .auth-trust-grid>div{
  padding:0 6px;
  gap:4px;
}
.app-only-auth .trust-round{
  width:35px;
  height:35px;
  margin-bottom:2px;
  box-shadow:0 7px 14px rgba(25,148,71,.13);
}
.app-only-auth .trust-round .icon{
  width:19px;
  height:19px;
}
.app-only-auth .auth-trust-grid strong{
  font-size:.66rem;
  line-height:1.2;
}
.app-only-auth .auth-trust-grid small{
  font-size:.60rem;
  line-height:1.2;
}
.app-only-auth .auth-footnote{
  padding-top:0;
  font-size:.70rem;
}
.app-only-auth .auth-demo{
  padding:8px 10px;
  font-size:.72rem;
}

/* Registration stays same but fits better */
.app-only-auth .register-shell .auth-art{
  min-height:270px;
}
.app-only-auth .register-shell .auth-visual{
  height:132px;
}
.app-only-auth .register-shell .auth-panel{
  padding-top:21px;
}
.app-only-auth .registration-benefits{
  padding:10px 7px;
  border-radius:14px;
}
.app-only-auth .registration-benefits>div{
  padding:2px 8px;
}
.app-only-auth .registration-benefits .icon{
  width:25px;
  height:25px;
}
.app-only-auth .registration-benefits strong{
  font-size:.69rem;
}
.app-only-auth .registration-benefits small{
  font-size:.64rem;
}
.app-only-auth .check-row{
  font-size:.73rem;
  line-height:1.4;
}

/* User app: same old mobile-app layout, refined */
.user-shell{
  width:min(calc(100% - 28px),500px);
  max-width:500px;
  min-height:calc(100dvh - 28px);
  margin:14px auto;
  border-radius:28px;
  border:1px solid var(--v51-border);
  box-shadow:var(--v51-shadow);
}
.user-shell .main-area{
  min-height:calc(100dvh - 28px);
}
.user-shell .topbar{
  height:75px;
  padding:0 20px;
}
.user-shell .topbar .brand-mark{
  width:46px;
  height:46px;
}
.user-shell .topbar .app-brand span{
  font-size:1.08rem!important;
}
.user-shell .page{
  padding:19px 15px 27px;
}
.user-shell .page-title{
  margin:2px 0 18px;
}
.user-shell .page-title h1{
  font-size:1.85rem;
}
.user-shell .page-title p{
  font-size:.84rem;
}
.user-shell .panel,
.user-shell .status-feature,
.user-shell .bonus-feature,
.user-shell .quick-metrics,
.user-shell .encouragement,
.user-shell .tracking-card,
.user-shell .stat-card{
  border-color:var(--v51-border);
  box-shadow:var(--v51-shadow-soft);
}
.user-shell .dashboard-duo{gap:10px}
.user-shell .status-feature,
.user-shell .bonus-feature{
  min-height:158px;
  padding:15px;
}
.user-shell .feature-value{
  margin:13px 0 7px;
}
.user-shell .feature-value strong{
  font-size:1.42rem;
}
.user-shell .bonus-feature>strong{
  margin:10px 0 5px;
  font-size:1.88rem;
}
.user-shell .dashboard-slabs{
  padding:14px;
}
.user-shell .app-slab{
  padding:15px;
}
.user-shell .quick-metrics{
  padding:13px 4px;
}
.user-shell .encouragement{
  padding:13px 14px;
}
.user-shell .bottom-nav{
  width:min(500px,calc(100% - 28px));
  border-radius:0 0 27px 27px;
}

/* Wallet / tracking / profile fit */
.user-shell .stats-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.user-shell .stat-card{
  min-height:96px;
  padding:15px;
}
.user-shell .stat-value{
  font-size:1.35rem;
}
.user-shell .grid-2,
.user-shell .grid-3,
.user-shell .tracking-layout,
.user-shell .profile-layout{
  grid-template-columns:1fr!important;
}
.user-shell .tracking-card{
  padding:15px;
}
.user-shell .tracking-summary{
  padding:12px 7px;
}
.user-shell .target-slab-list{
  padding-inline:11px;
}
.user-shell .table-wrap{
  max-width:100%;
  overflow-x:auto;
}

/* Desktop: exact same app look, centered and balanced */
@media(min-width:721px){
  .app-only-auth .auth-shell,
  .user-shell{
    transform:translateZ(0);
  }
  .app-only-auth .auth-shell:hover,
  .user-shell:hover{
    box-shadow:0 28px 78px rgba(21,31,48,.16);
  }
}

/* Tablet and phone */
@media(max-width:720px){
  body{background:#fff}
  .app-only-auth{
    display:block;
    padding:0;
  }
  .app-only-auth .auth-shell,
  .user-shell,
  .policy-app{
    width:100%;
    max-width:none;
    min-height:100dvh;
    margin:0;
    border:0;
    border-radius:0;
    box-shadow:none;
  }
  .app-only-auth .auth-art{
    min-height:286px;
    padding:16px 18px 0;
  }
  .app-only-auth .auth-intro{
    margin-top:8px;
  }
  .app-only-auth .auth-intro h1{
    font-size:2rem;
  }
  .app-only-auth .auth-visual{
    height:151px;
  }
  .app-only-auth .auth-panel{
    margin-top:-16px;
    padding:22px 17px calc(22px + env(safe-area-inset-bottom));
    border-radius:24px 24px 0 0;
  }
  .app-only-auth .register-shell .auth-art{
    min-height:254px;
  }
  .app-only-auth .register-shell .auth-visual{
    height:120px;
  }
  .user-shell .main-area{
    min-height:100dvh;
  }
  .user-shell .bottom-nav{
    width:100%;
    border-radius:0;
  }
}

/* Small phones */
@media(max-width:390px){
  .app-only-auth .auth-art{
    min-height:273px;
  }
  .app-only-auth .auth-intro h1{
    font-size:1.82rem;
  }
  .app-only-auth .auth-intro p{
    font-size:.86rem;
  }
  .app-only-auth .auth-visual{
    height:143px;
  }
  .app-only-auth .auth-panel{
    padding-inline:14px;
  }
  .app-only-auth .auth-trust{
    padding-inline:6px;
  }
  .app-only-auth .auth-trust-grid>div{
    padding-inline:4px;
  }
  .user-shell .dashboard-duo{
    grid-template-columns:1fr 1fr;
  }
  .user-shell .status-feature,
  .user-shell .bonus-feature{
    min-height:150px;
    padding:13px;
  }
  .user-shell .feature-value strong{
    font-size:1.27rem;
  }
  .user-shell .bonus-feature>strong{
    font-size:1.7rem;
  }
}

/* Short desktop screens: avoid excessive page height */
@media(min-width:721px) and (max-height:820px){
  .app-only-auth{
    align-items:start;
    padding-top:12px;
    padding-bottom:12px;
  }
  .app-only-auth .auth-art{
    min-height:254px;
  }
  .app-only-auth .auth-visual{
    height:126px;
  }
  .app-only-auth .auth-panel{
    padding-top:19px;
    padding-bottom:19px;
  }
  .app-only-auth .auth-form{
    gap:11px;
  }
  .app-only-auth .auth-trust{
    padding-top:10px;
    padding-bottom:10px;
  }
}


/* =========================================================
   V5.2 — SINGLE VIEWPORT / NO PAGE SCROLL
   Old V5 design preserved.
   ========================================================= */
html,body{
  width:100%;
  height:100%;
  min-height:100%;
  overflow:hidden!important;
  overscroll-behavior:none;
}
#app{
  width:100%;
  height:100dvh;
  min-height:0;
  overflow:hidden;
}

/* Authentication fits one viewport */
.app-only-auth{
  width:100%;
  height:100dvh;
  min-height:0;
  padding:8px;
  overflow:hidden;
  display:grid;
  place-items:center;
}
.app-only-auth .auth-shell{
  width:min(100%,480px);
  height:min(100%,820px);
  max-height:calc(100dvh - 16px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  overflow:hidden;
}
.app-only-auth .auth-art{
  min-height:0!important;
  height:220px;
  padding:13px 22px 0;
  overflow:hidden;
}
.app-only-auth .auth-appbar{min-height:43px}
.app-only-auth .brand-mark{width:42px;height:42px}
.app-only-auth .app-brand span{font-size:1.08rem}
.app-only-auth .auth-support{width:38px;height:38px}
.app-only-auth .auth-intro{margin-top:2px}
.app-only-auth .auth-intro h1{
  margin-bottom:2px;
  font-size:1.72rem;
}
.app-only-auth .auth-intro p{font-size:.79rem}
.app-only-auth .auth-visual{
  height:119px!important;
  margin-top:-2px;
}
.app-only-auth .auth-visual img{max-width:350px}
.app-only-auth .auth-panel{
  min-height:0;
  margin-top:-12px;
  padding:16px 22px 17px;
  overflow:hidden;
  border-radius:22px 22px 0 0;
}
.app-only-auth .auth-inner{
  height:100%;
  min-height:0;
}
.app-only-auth .auth-form{
  height:100%;
  min-height:0;
  gap:9px;
  align-content:center;
}
.app-only-auth .field{gap:4px}
.app-only-auth .field label{font-size:.78rem}
.app-only-auth .input,
.app-only-auth .select{
  height:45px;
  min-height:45px;
  border-radius:11px;
  font-size:15px;
}
.app-only-auth .input-shell .input,
.app-only-auth .input-shell .select{padding-left:44px}
.app-only-auth .field-glyph{left:14px}
.app-only-auth .field-glyph .icon{width:18px;height:18px}
.app-only-auth .forgot-row{font-size:.76rem}
.app-only-auth .auth-main-btn{
  min-height:45px;
  height:45px;
  border-radius:11px;
  font-size:.91rem;
}
.app-only-auth .create-account-btn{
  min-height:43px;
  height:43px;
  font-size:.84rem;
}
.app-only-auth .auth-divider span{
  width:30px;height:30px;font-size:.63rem
}
.app-only-auth .auth-trust{
  padding:9px 6px;
  border-radius:13px;
}
.app-only-auth .auth-trust-title{
  margin-bottom:7px;
  font-size:.72rem;
}
.app-only-auth .trust-round{
  width:29px;height:29px
}
.app-only-auth .trust-round .icon{width:16px;height:16px}
.app-only-auth .auth-trust-grid strong{font-size:.57rem}
.app-only-auth .auth-trust-grid small{font-size:.52rem}
.app-only-auth .auth-footnote{font-size:.61rem}
.app-only-auth .auth-demo{
  padding:6px 8px;
  font-size:.64rem;
}

/* Two-step registration */
.register-wizard{align-content:start!important}
.register-step{display:none;min-height:0}
.register-step.active{
  display:grid;
  gap:9px;
  animation:registerStepIn .16s ease;
}
@keyframes registerStepIn{
  from{opacity:0;transform:translateX(8px)}
  to{opacity:1;transform:none}
}
.register-progress{
  display:grid;
  grid-template-columns:1fr 1fr auto;
  align-items:center;
  gap:5px;
  margin-bottom:1px;
}
.register-progress>span{
  height:4px;
  border-radius:999px;
  background:#e7e9ee;
}
.register-progress>span.active{background:var(--orange)}
.register-progress small{
  margin-left:6px;
  color:var(--muted);
  font-size:.65rem;
  white-space:nowrap;
}
.register-inline-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.register-actions{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:8px;
}
.register-actions .btn{height:45px;min-height:45px}
.register-wizard .check-row{
  font-size:.65rem;
  line-height:1.25;
}
.register-wizard .registration-benefits{
  padding:7px 5px;
}
.register-wizard .registration-benefits>div{padding:1px 5px}
.register-wizard .registration-benefits .icon{
  width:21px;height:21px
}
.register-wizard .registration-benefits strong{font-size:.60rem}
.register-wizard .registration-benefits small{font-size:.55rem}
.register-wizard .auth-login-link{font-size:.67rem}

/* User app fits the viewport */
.user-shell{
  width:min(calc(100% - 12px),480px);
  height:calc(100dvh - 12px);
  min-height:0;
  margin:6px auto;
  overflow:hidden;
}
.user-shell .main-area{
  height:100%;
  min-height:0;
  display:grid;
  grid-template-rows:64px minmax(0,1fr) 66px;
  padding-bottom:0;
  overflow:hidden;
}
.user-shell .topbar{
  position:static;
  height:64px;
  min-height:64px;
  padding:0 16px;
}
.user-shell .topbar .brand-mark{width:39px;height:39px}
.user-shell .topbar .app-brand span{font-size:.96rem!important}
.user-shell .topbar .icon-btn{width:38px;height:38px}
.user-shell .page{
  min-height:0;
  height:100%;
  padding:11px 11px 9px;
  overflow:hidden;
}
.user-shell .page-title{
  margin:0 0 7px;
}
.user-shell .page-title h1{font-size:1.45rem}
.user-shell .page-title p{font-size:.70rem;margin-bottom:0}
.user-shell.route-home .page-title{display:none}
.user-shell .bottom-nav{
  position:static;
  width:100%;
  height:66px;
  transform:none;
  border-radius:0;
  padding:5px 7px;
}
.user-shell .bottom-nav .nav-item{
  padding:4px 2px;
  font-size:.63rem;
}
.user-shell .bottom-nav .icon{width:19px;height:19px}

/* Home compact */
.mobile-welcome{
  margin:0 2px 7px;
  gap:9px;
}
.profile-avatar{
  width:49px;height:49px;
  border-width:3px;
  font-size:1.15rem;
}
.mobile-welcome h2{font-size:1.25rem;margin-bottom:0}
.mobile-welcome p{font-size:.69rem}
.dashboard-duo{gap:7px}
.user-shell .status-feature,
.user-shell .bonus-feature{
  min-height:102px;
  padding:10px;
  border-radius:14px;
}
.status-feature>span,.bonus-feature>span{font-size:.65rem}
.feature-value{margin:8px 0 4px;gap:5px}
.feature-value .icon{width:23px;height:23px}
.feature-value strong{font-size:1.05rem}
.status-feature p,.bonus-feature p{font-size:.57rem;line-height:1.25}
.bonus-feature>strong{
  font-size:1.35rem;
  margin:7px 0 3px;
}
.coin-stack{
  width:32px;height:32px;
  right:9px;bottom:9px;
  border-width:3px;
  font-size:.85rem;
  box-shadow:none;
}
.dashboard-slabs{
  margin-top:7px!important;
  padding:9px!important;
}
.section-inline-title{
  margin-bottom:6px;
}
.section-inline-title h3{font-size:.88rem}
.section-inline-title p{font-size:.58rem}
.section-inline-title .chip{
  padding:4px 6px;
  font-size:.52rem;
}
.app-slab{
  padding:8px!important;
  border-radius:12px!important;
}
.app-slab+.app-slab{margin-top:5px}
.app-slab h3{font-size:.78rem!important}
.app-slab .small{font-size:.55rem}
.slab-head .chip{font-size:.49rem;padding:4px 5px}
.app-progress{height:6px!important;margin-top:7px!important}
.slab-summary{
  margin-top:5px!important;
  font-size:.58rem!important;
}
.slab-summary>span strong{font-size:.72rem!important}
.unlock-note,.slab-dates{display:none!important}
.quick-metrics{
  margin-top:7px!important;
  padding:7px 2px!important;
  border-radius:12px!important;
}
.quick-metrics>div{
  padding:2px 3px!important;
  gap:3px!important;
}
.quick-metrics .icon{width:17px!important;height:17px!important}
.quick-metrics span{font-size:.52rem!important}
.quick-metrics strong{font-size:.62rem!important}
.encouragement{
  margin-top:7px!important;
  padding:7px 9px!important;
  border-radius:12px!important;
}
.encouragement>.icon{width:22px!important;height:22px!important}
.encouragement strong{font-size:.68rem}
.encouragement p{font-size:.53rem!important}
.sparkles{font-size:.85rem!important}

/* Tracking compact */
.route-tracking .page-title{text-align:center}
.route-tracking .page-title h1{font-size:1.3rem}
.tracking-layout{gap:6px}
.tracking-card{
  padding:9px!important;
  border-radius:13px!important;
}
.eligibility-pill{
  padding:4px 7px!important;
  font-size:.58rem!important;
}
.tracking-card-head>strong{font-size:.62rem}
.tracking-card h3{
  font-size:.82rem;
  margin:8px 0 6px!important;
}
.target-slab-list{
  padding:2px 7px!important;
  border-radius:11px!important;
}
.target-slab-list>div{
  grid-template-columns:30px 1fr auto!important;
  gap:6px!important;
  padding:5px 0!important;
}
.target-bag{width:26px!important;height:26px!important}
.target-bag .icon{width:15px!important;height:15px!important}
.target-slab-list strong{font-size:.66rem}
.target-slab-list small{font-size:.49rem!important}
.target-slab-list b{font-size:.70rem!important}
.tracking-summary{
  margin-top:6px!important;
  padding:6px 4px!important;
  gap:4px!important;
  border-radius:11px!important;
}
.tracking-summary>div span{font-size:.49rem!important}
.tracking-summary>div strong{font-size:.83rem!important}
.tracking-summary .wide{height:5px!important}
.tracking-summary p{font-size:.48rem!important}
.journey-panel{
  padding:8px!important;
}
.journey-panel h3{font-size:.82rem;margin-bottom:4px}
.timeline-item{
  min-height:31px!important;
  grid-template-columns:23px 1fr!important;
  gap:6px!important;
}
.timeline .dot{
  width:21px!important;height:21px!important;
  font-size:.54rem!important;
}
.timeline .marker:before{
  left:10px!important;
  top:20px!important;
}
.timeline-content{
  padding:1px 0 5px!important;
}
.timeline-content strong{font-size:.61rem}
.timeline-content span{font-size:.49rem!important}

/* Wallet compact */
.route-wallet .stats-grid{
  grid-template-columns:repeat(4,1fr)!important;
  gap:5px!important;
}
.route-wallet .stat-card{
  min-height:59px!important;
  padding:7px!important;
  border-radius:11px!important;
}
.route-wallet .stat-label{font-size:.46rem!important}
.route-wallet .stat-value{font-size:.78rem!important;margin-top:4px!important}
.route-wallet .grid-2{
  margin-top:7px!important;
  display:grid!important;
  grid-template-columns:1.05fr .95fr!important;
  gap:6px!important;
}
.route-wallet .panel{padding:8px!important}
.route-wallet .panel h3{font-size:.78rem;margin-bottom:5px}
.route-wallet .form-grid{gap:5px!important}
.route-wallet .field{gap:2px!important}
.route-wallet .field label{font-size:.56rem!important}
.route-wallet .input,.route-wallet .select{
  height:34px!important;
  min-height:34px!important;
  font-size:12px!important;
  padding:0 8px!important;
  border-radius:8px!important;
}
.route-wallet .btn{height:35px!important;min-height:35px!important;font-size:.60rem!important}
.route-wallet .note{font-size:.48rem!important;padding:5px!important}
.route-wallet .panel .row{
  padding:5px 0!important;
}
.route-wallet .panel .row strong{font-size:.58rem}
.route-wallet .panel .tiny{font-size:.46rem}

/* Profile compact */
.route-profile .grid-2{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:7px!important;
}
.route-profile .panel{
  padding:10px!important;
}
.route-profile .panel h3{font-size:.82rem;margin-bottom:7px}
.route-profile .stack{gap:7px!important}
.route-profile .tiny{font-size:.50rem}
.route-profile .stack strong{font-size:.66rem}
.route-profile .btn{
  min-height:34px!important;
  height:34px!important;
  font-size:.58rem!important;
}

/* Policies fit, with compact content */
.policy-app{
  width:min(100%,480px);
  height:calc(100dvh - 12px);
  min-height:0;
  margin:6px auto;
  overflow:hidden;
}
.policy-top{min-height:60px;padding:8px 14px}
.policy-app article{
  height:calc(100% - 60px);
  padding:13px 16px;
  overflow:hidden;
  font-size:.72rem;
  line-height:1.35;
}
.policy-app article h1{font-size:1.35rem}
.policy-app article h3{font-size:.84rem;margin:10px 0 3px}
.policy-app article p{margin-bottom:6px}

/* Admin body can use its own internal area */
.admin-shell{
  height:100dvh;
  overflow:hidden;
}
.admin-shell .main-area{
  height:100dvh;
  overflow:auto;
}

/* Mobile uses the whole screen without any outer page scroll */
@media(max-width:720px){
  .app-only-auth{padding:0}
  .app-only-auth .auth-shell,
  .user-shell,
  .policy-app{
    width:100%;
    height:100dvh;
    max-height:100dvh;
    margin:0;
    border:0;
    border-radius:0;
    box-shadow:none;
  }
  .app-only-auth .auth-art{
    height:205px;
    padding-inline:15px;
  }
  .app-only-auth .auth-panel{
    margin-top:-9px;
    padding:13px 14px calc(13px + env(safe-area-inset-bottom));
  }
  .app-only-auth .auth-form{gap:7px}
  .user-shell .main-area{
    grid-template-rows:60px minmax(0,1fr) 62px;
  }
  .user-shell .topbar{height:60px;min-height:60px}
  .user-shell .bottom-nav{height:62px}
}

/* Short screens become even tighter */
@media(max-height:700px){
  .app-only-auth .auth-art{height:170px}
  .app-only-auth .auth-visual{height:82px!important}
  .app-only-auth .auth-panel{padding-top:10px;padding-bottom:10px}
  .app-only-auth .auth-trust{display:none}
  .app-only-auth .auth-footnote{display:none}
  .app-only-auth .auth-form{gap:6px}
  .user-shell .encouragement{display:none}
  .user-shell .page{padding-top:7px}
}


/* =========================================================
   V5.3 — SCREENSHOT FIXES
   1. Prevent inherited desktop two-column auth layout.
   2. Remove phone-height scrollbar.
   3. Preserve the old V5 visual design and logic.
   ========================================================= */

/* Critical fix: old base CSS had grid-template-columns on .auth-shell */
.app-only-auth .auth-shell{
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:210px minmax(0,1fr)!important;
  grid-auto-flow:row!important;
}
.app-only-auth .auth-art,
.app-only-auth .auth-panel{
  grid-column:1/-1!important;
  width:100%!important;
  min-width:0!important;
}
.app-only-auth .auth-art{
  grid-row:1!important;
  height:210px!important;
}
.app-only-auth .auth-panel{
  grid-row:2!important;
  margin-top:-10px!important;
}
.app-only-auth .auth-inner,
.app-only-auth .auth-form{
  min-width:0!important;
  max-width:none!important;
}

/* Desktop: one clean vertical app card, no empty white area */
@media(min-width:721px){
  .app-only-auth{
    padding:10px!important;
  }
  .app-only-auth .auth-shell{
    width:min(100%,480px)!important;
    height:min(720px,calc(100dvh - 20px))!important;
    max-height:calc(100dvh - 20px)!important;
    border-radius:28px!important;
  }
  .app-only-auth .auth-art{
    height:210px!important;
    padding:13px 22px 0!important;
  }
  .app-only-auth .auth-panel{
    padding:15px 24px 17px!important;
  }
}

/* Normal phones */
@media(max-width:720px){
  .app-only-auth .auth-shell{
    grid-template-rows:190px minmax(0,1fr)!important;
  }
  .app-only-auth .auth-art{
    height:190px!important;
    min-height:0!important;
  }
  .app-only-auth .auth-panel{
    min-height:0!important;
    height:auto!important;
    padding:12px 14px calc(11px + env(safe-area-inset-bottom))!important;
  }
  .app-only-auth .auth-inner,
  .app-only-auth .auth-form{
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
  }
}

/* Small/short phone viewports such as 365 × 576 */
@media(max-width:720px) and (max-height:700px){
  .app-only-auth .auth-shell{
    grid-template-rows:148px minmax(0,1fr)!important;
  }
  .app-only-auth .auth-art{
    height:148px!important;
    padding:8px 13px 0!important;
  }
  .app-only-auth .auth-appbar{
    min-height:34px!important;
  }
  .app-only-auth .brand-mark{
    width:35px!important;
    height:35px!important;
  }
  .app-only-auth .app-brand{
    gap:8px!important;
  }
  .app-only-auth .app-brand span{
    font-size:.93rem!important;
  }
  .app-only-auth .auth-support{
    width:34px!important;
    height:34px!important;
  }
  .app-only-auth .auth-support .icon{
    width:18px!important;
    height:18px!important;
  }
  .app-only-auth .auth-intro{
    margin-top:0!important;
  }
  .app-only-auth .auth-intro h1{
    margin:0 0 1px!important;
    font-size:1.52rem!important;
    line-height:1.02!important;
  }
  .app-only-auth .auth-intro p{
    margin:0!important;
    font-size:.68rem!important;
  }
  .app-only-auth .auth-visual{
    height:72px!important;
    margin-top:-2px!important;
  }
  .app-only-auth .auth-visual img{
    max-width:260px!important;
  }
  .app-only-auth .auth-panel{
    margin-top:-7px!important;
    padding:8px 13px 7px!important;
    border-radius:19px 19px 0 0!important;
  }
  .app-only-auth .auth-form{
    gap:5px!important;
    align-content:center!important;
  }
  .app-only-auth .field{
    gap:2px!important;
  }
  .app-only-auth .field label{
    font-size:.68rem!important;
  }
  .app-only-auth .input,
  .app-only-auth .select{
    height:41px!important;
    min-height:41px!important;
    border-radius:10px!important;
    font-size:14px!important;
  }
  .app-only-auth .input-shell .input,
  .app-only-auth .input-shell .select{
    padding-left:40px!important;
  }
  .app-only-auth .field-glyph{
    left:12px!important;
  }
  .app-only-auth .field-glyph .icon{
    width:16px!important;
    height:16px!important;
  }
  .app-only-auth .forgot-row{
    min-height:15px!important;
    font-size:.67rem!important;
  }
  .app-only-auth .auth-main-btn{
    height:41px!important;
    min-height:41px!important;
    font-size:.82rem!important;
  }
  .app-only-auth .auth-divider{
    gap:7px!important;
  }
  .app-only-auth .auth-divider span{
    width:27px!important;
    height:27px!important;
    font-size:.56rem!important;
  }
  .app-only-auth .create-account-btn{
    height:40px!important;
    min-height:40px!important;
    font-size:.76rem!important;
  }
  .app-only-auth .auth-trust,
  .app-only-auth .auth-footnote,
  .app-only-auth .auth-demo{
    display:none!important;
  }
}

/* Ultra-short browser/device landscape */
@media(max-height:520px){
  .app-only-auth .auth-shell{
    grid-template-rows:112px minmax(0,1fr)!important;
  }
  .app-only-auth .auth-art{
    height:112px!important;
  }
  .app-only-auth .auth-visual{
    height:42px!important;
  }
  .app-only-auth .auth-intro h1{
    font-size:1.2rem!important;
  }
  .app-only-auth .auth-intro p{
    display:none!important;
  }
}

/* Absolutely no browser or inner login scrollbar */
html,body,#app,.app-only-auth,
.app-only-auth .auth-shell,
.app-only-auth .auth-art,
.app-only-auth .auth-panel,
.app-only-auth .auth-inner,
.app-only-auth .auth-form{
  overflow:hidden!important;
}


/* =========================================================
   V5.4 — FLAT OUTER FRAME
   - Outer border radius: 0
   - Top and bottom gap: 0
   - Heavy shadows removed
   - Old V5 design and logic preserved
   ========================================================= */

:root{
  --v51-shadow:0 2px 10px rgba(21,31,48,.045)!important;
  --v51-shadow-soft:0 1px 5px rgba(21,31,48,.035)!important;
}

/* No outer spacing */
.app-only-auth{
  width:100%!important;
  height:100dvh!important;
  min-height:100dvh!important;
  padding:0!important;
  margin:0!important;
}

/* Desktop keeps app width, but fills full screen height */
.app-only-auth .auth-shell{
  height:100dvh!important;
  max-height:100dvh!important;
  margin:0 auto!important;
  border-radius:0!important;
  box-shadow:0 1px 8px rgba(21,31,48,.045)!important;
  border-top:0!important;
  border-bottom:0!important;
}

/* Remove curved join between image and form */
.app-only-auth .auth-panel{
  border-radius:0!important;
  box-shadow:none!important;
}

/* User app frame */
.user-shell{
  height:100dvh!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  border-radius:0!important;
  box-shadow:0 1px 8px rgba(21,31,48,.045)!important;
  border-top:0!important;
  border-bottom:0!important;
}

.user-shell .main-area{
  height:100dvh!important;
  min-height:100dvh!important;
}

/* Bottom navigation must stay flat */
.user-shell .bottom-nav{
  border-radius:0!important;
  box-shadow:0 -1px 6px rgba(21,31,48,.035)!important;
}

/* Cards retain design but use lighter shadows */
.user-shell .panel,
.user-shell .status-feature,
.user-shell .bonus-feature,
.user-shell .quick-metrics,
.user-shell .encouragement,
.user-shell .tracking-card,
.user-shell .stat-card,
.app-only-auth .auth-trust{
  box-shadow:0 1px 5px rgba(21,31,48,.035)!important;
}

/* Disable desktop hover shadow increase */
@media(min-width:721px){
  .app-only-auth .auth-shell:hover,
  .user-shell:hover{
    box-shadow:0 1px 8px rgba(21,31,48,.045)!important;
  }
}

/* Mobile: true edge-to-edge */
@media(max-width:720px){
  .app-only-auth .auth-shell,
  .user-shell,
  .policy-app{
    width:100%!important;
    height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  .app-only-auth .auth-panel,
  .user-shell .bottom-nav{
    border-radius:0!important;
  }
}

/* Policy pages */
.policy-app{
  height:100dvh!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  border-radius:0!important;
  box-shadow:0 1px 8px rgba(21,31,48,.045)!important;
}


/* =========================================================
   V5.5 — LOGIN BUTTON SHADOW FIX
   ========================================================= */
.app-only-auth .auth-main-btn{
  box-shadow:none!important;
  border:1px solid transparent!important;
}
.app-only-auth .auth-main-btn:hover{
  box-shadow:none!important;
  transform:none!important;
}
.app-only-auth .auth-main-btn:active{
  box-shadow:none!important;
  transform:translateY(1px)!important;
}


/* =========================================================
   V5.6 — RESTORE "WHY USERS TRUST SUPER SAATHI"
   Visible on desktop and mobile without page scrolling.
   ========================================================= */

/* Always show the trust section */
.app-only-auth .auth-trust{
  display:block!important;
}

/* Compact trust block for all login screens */
.app-only-auth .auth-trust{
  margin-top:1px!important;
  padding:7px 6px!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
.app-only-auth .auth-trust-title{
  margin-bottom:5px!important;
  font-size:.66rem!important;
  line-height:1.1!important;
}
.app-only-auth .auth-trust-title .icon{
  width:13px!important;
  height:13px!important;
}
.app-only-auth .auth-trust-grid{
  gap:2px!important;
}
.app-only-auth .auth-trust-grid>div{
  padding:0 3px!important;
  gap:2px!important;
}
.app-only-auth .trust-round{
  width:23px!important;
  height:23px!important;
  margin-bottom:1px!important;
  border-width:1px!important;
  box-shadow:none!important;
  font-size:.66rem!important;
}
.app-only-auth .trust-round .icon{
  width:13px!important;
  height:13px!important;
}
.app-only-auth .auth-trust-grid strong{
  font-size:.51rem!important;
  line-height:1.08!important;
}
.app-only-auth .auth-trust-grid small{
  font-size:.45rem!important;
  line-height:1.05!important;
}

/* Short screens: keep trust visible and make the rest slightly tighter */
@media(max-height:700px){
  .app-only-auth .auth-trust{
    display:block!important;
  }
  .app-only-auth .auth-footnote,
  .app-only-auth .auth-demo{
    display:none!important;
  }
}

/* 365×576 and similar small screens */
@media(max-width:720px) and (max-height:700px){
  .app-only-auth .auth-shell{
    grid-template-rows:134px minmax(0,1fr)!important;
  }
  .app-only-auth .auth-art{
    height:134px!important;
  }
  .app-only-auth .auth-visual{
    height:60px!important;
  }
  .app-only-auth .auth-panel{
    padding-top:7px!important;
    padding-bottom:6px!important;
  }
  .app-only-auth .auth-form{
    gap:4px!important;
  }
  .app-only-auth .input,
  .app-only-auth .select{
    height:39px!important;
    min-height:39px!important;
  }
  .app-only-auth .auth-main-btn{
    height:39px!important;
    min-height:39px!important;
  }
  .app-only-auth .create-account-btn{
    height:38px!important;
    min-height:38px!important;
  }
  .app-only-auth .auth-divider span{
    width:24px!important;
    height:24px!important;
  }
  .app-only-auth .auth-trust{
    padding:5px 4px!important;
  }
  .app-only-auth .auth-trust-title{
    margin-bottom:3px!important;
    font-size:.58rem!important;
  }
  .app-only-auth .trust-round{
    width:19px!important;
    height:19px!important;
  }
  .app-only-auth .auth-trust-grid strong{
    font-size:.46rem!important;
  }
  .app-only-auth .auth-trust-grid small{
    display:none!important;
  }
}

/* Ultra-short landscape: title + three compact trust labels remain visible */
@media(max-height:520px){
  .app-only-auth .auth-trust{
    display:block!important;
    padding:3px!important;
  }
  .app-only-auth .auth-trust-title{
    display:none!important;
  }
  .app-only-auth .trust-round{
    display:none!important;
  }
  .app-only-auth .auth-trust-grid strong{
    font-size:.43rem!important;
  }
  .app-only-auth .auth-trust-grid small{
    display:none!important;
  }
}


/* =========================================================
   V5.7 — MOBILE SCREEN CORRECTIONS
   Wallet, tracking and profile corrected for 365×576.
   No business-logic changes.
   ========================================================= */

/* General user screen */
.user-shell .page{
  display:block!important;
  min-height:0!important;
  overflow:hidden!important;
}
.user-shell .page-title{
  margin:0 0 8px!important;
  text-align:center!important;
}
.user-shell .page-title h1{
  font-size:1.45rem!important;
  line-height:1.05!important;
}
.user-shell .page-title p{
  margin-top:3px!important;
  font-size:.68rem!important;
  line-height:1.25!important;
}
.user-shell .panel{
  box-shadow:none!important;
  border-color:#e5e7eb!important;
}

/* Wallet */
.wallet-screen{
  display:grid;
  gap:8px;
  min-height:0;
}
.wallet-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
}
.wallet-summary-grid article{
  min-width:0;
  padding:9px 8px;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#fff;
}
.wallet-summary-grid span{
  display:block;
  min-height:20px;
  color:var(--muted);
  font-size:.52rem;
  font-weight:800;
  line-height:1.15;
}
.wallet-summary-grid strong{
  display:block;
  margin-top:3px;
  color:var(--navy);
  font-size:.91rem;
  line-height:1;
}
.wallet-summary-grid .positive,
.wallet-activity-row .positive{color:var(--green)!important}
.wallet-activity-row .negative{color:var(--orange)!important}
.wallet-content-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:7px;
  min-height:0;
}
.wallet-withdraw-panel,
.wallet-activity-panel{
  min-width:0;
  margin:0!important;
  padding:10px!important;
  border-radius:12px!important;
}
.wallet-panel-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:6px;
}
.wallet-panel-title h3,
.wallet-activity-panel h3{
  margin:0!important;
  font-size:.86rem!important;
}
.wallet-panel-title>span{
  color:var(--muted);
  font-size:.52rem;
  font-weight:800;
}
.wallet-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
}
.wallet-form label{
  display:grid;
  gap:2px;
  min-width:0;
}
.wallet-form label>span{
  font-size:.55rem;
  font-weight:800;
}
.wallet-form .input,
.wallet-form .select{
  width:100%;
  height:35px!important;
  min-height:35px!important;
  padding:0 9px!important;
  border-radius:8px!important;
  font-size:12px!important;
}
.wallet-details-field{
  grid-column:1/-1;
}
.wallet-form .btn{
  grid-column:1/-1;
  height:36px!important;
  min-height:36px!important;
  font-size:.65rem!important;
  border-radius:9px!important;
  box-shadow:none!important;
}
.wallet-note{
  margin:6px 0 0;
  padding:5px 6px;
  border-radius:8px;
  background:#f8f9fb;
  color:var(--muted);
  font-size:.49rem;
  line-height:1.2;
}
.wallet-activity-list{
  display:grid;
  gap:0;
  margin-top:6px;
}
.wallet-activity-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:7px;
  padding:7px 0;
  border-bottom:1px solid #edf0f3;
}
.wallet-activity-row:last-child{border-bottom:0}
.wallet-activity-row div{min-width:0}
.wallet-activity-row strong{
  display:block;
  font-size:.60rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.wallet-activity-row small{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:.46rem;
}
.wallet-activity-row b{
  flex:0 0 auto;
  font-size:.61rem;
}
.wallet-empty{
  min-height:120px;
  display:grid;
  place-content:center;
  justify-items:center;
  gap:3px;
  text-align:center;
  color:var(--muted);
}
.wallet-empty>span .icon{
  width:23px;
  height:23px;
}
.wallet-empty strong{
  color:var(--navy);
  font-size:.68rem;
}
.wallet-empty small{
  font-size:.50rem;
}

/* Profile */
.profile-screen{
  display:grid;
  gap:8px;
}
.profile-overview{
  margin:0!important;
  padding:12px!important;
  border-radius:13px!important;
}
.profile-identity{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  padding-bottom:10px;
  border-bottom:1px solid #eceff2;
}
.profile-avatar-text{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff2e9;
  color:var(--orange-dark);
  font-size:.83rem;
  font-weight:900;
}
.profile-identity-copy{
  min-width:0;
}
.profile-identity-copy h2{
  margin:0;
  font-size:.94rem;
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.profile-identity-copy p{
  margin:3px 0 0;
  color:var(--muted);
  font-size:.62rem;
}
.profile-info-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  padding:10px 0;
}
.profile-info-grid>div{
  min-width:0;
  padding:8px;
  border:1px solid #eceff2;
  border-radius:9px;
  background:#fbfcfd;
}
.profile-info-grid span{
  display:block;
  margin-bottom:3px;
  color:var(--muted);
  font-size:.50rem;
  font-weight:800;
}
.profile-info-grid strong{
  display:block;
  min-width:0;
  color:var(--navy);
  font-size:.64rem;
}
.application-id-row{
  grid-column:1/-1;
}
.application-id-row strong{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.profile-info-grid .chip{
  max-width:100%;
  padding:4px 6px;
  font-size:.49rem;
}
.profile-action-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}
.profile-action-grid .btn{
  height:38px!important;
  min-height:38px!important;
  padding:0 8px!important;
  border-radius:9px!important;
  box-shadow:none!important;
  font-size:.61rem!important;
}
.profile-security-note{
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:9px 10px;
  border:1px solid #e5e7eb;
  border-radius:11px;
  background:#fff;
}
.profile-security-note>.icon{
  flex:0 0 auto;
  width:19px;
  height:19px;
  color:var(--green);
}
.profile-security-note strong{
  display:block;
  font-size:.62rem;
}
.profile-security-note p{
  margin:2px 0 0;
  color:var(--muted);
  font-size:.50rem;
  line-height:1.25;
}

/* Tracking */
.tracking-screen{
  display:grid;
  gap:7px;
  min-height:0;
}
.tracking-status-card{
  padding:10px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#fff;
}
.tracking-status-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.tracking-city{
  display:flex;
  align-items:center;
  gap:4px;
  min-width:0;
  font-size:.60rem;
}
.tracking-city .icon{
  width:16px;
  height:16px;
}
.tracking-status-card h3{
  margin:9px 0 4px;
  font-size:.82rem;
}
.tracking-status-card p{
  margin:0;
  color:var(--muted);
  font-size:.61rem;
  line-height:1.35;
}
.tracking-support-btn{
  height:35px!important;
  min-height:35px!important;
  margin-top:8px;
  padding:0 13px!important;
  border-radius:9px!important;
  box-shadow:none!important;
  font-size:.61rem!important;
}
.tracking-result-copy{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  margin:9px 0 7px;
}
.tracking-result-copy>div{
  padding:6px;
  border-radius:8px;
  background:#f8f9fb;
  text-align:center;
}
.tracking-result-copy small{
  display:block;
  color:var(--muted);
  font-size:.48rem;
}
.tracking-result-copy strong{
  display:block;
  margin-top:2px;
  font-size:.75rem;
}
.journey-compact{
  margin:0!important;
  padding:9px!important;
  border-radius:12px!important;
}
.journey-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:6px;
}
.journey-heading h3{
  margin:0!important;
  font-size:.80rem!important;
}
.journey-heading span{
  color:var(--muted);
  font-size:.52rem;
  font-weight:800;
}
.journey-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
}
.journey-step{
  min-width:0;
  display:grid;
  grid-template-columns:23px minmax(0,1fr);
  align-items:center;
  gap:6px;
  padding:5px;
  border:1px solid #eceff2;
  border-radius:8px;
  background:#fbfcfd;
}
.journey-step:last-child:nth-child(odd){
  grid-column:1/-1;
}
.journey-dot{
  width:23px;
  height:23px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid #dfe3e8;
  background:#fff;
  color:var(--muted);
  font-size:.55rem;
  font-weight:900;
}
.journey-step.done .journey-dot{
  border-color:#cfe7d6;
  background:#eaf7ee;
  color:var(--green);
}
.journey-step.current{
  border-color:#ffd8c4;
  background:#fff8f3;
}
.journey-step.current .journey-dot{
  border-color:#ffcab0;
  background:#fff0e7;
  color:var(--orange-dark);
}
.journey-step strong{
  display:block;
  min-width:0;
  font-size:.53rem;
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.journey-step small{
  display:block;
  margin-top:1px;
  color:var(--muted);
  font-size:.43rem;
}

/* Mobile 365×576 */
@media(max-width:720px){
  .user-shell .page{
    padding:9px 11px 7px!important;
  }
  .user-shell .page-title{
    margin-bottom:7px!important;
  }
  .wallet-summary-grid{
    grid-template-columns:1fr 1fr;
  }
  .wallet-summary-grid article{
    padding:6px 8px;
  }
  .wallet-summary-grid span{
    min-height:0;
    font-size:.49rem;
  }
  .wallet-summary-grid strong{
    font-size:.78rem;
  }
  .wallet-content-grid{
    grid-template-columns:1fr;
    gap:6px;
  }
  .wallet-activity-panel{
    padding:8px 10px!important;
  }
  .wallet-empty{
    min-height:42px;
    grid-template-columns:auto 1fr;
    grid-template-rows:auto auto;
    place-content:center stretch;
    justify-items:start;
    column-gap:7px;
    text-align:left;
  }
  .wallet-empty>span{
    grid-row:1/3;
  }
  .wallet-empty small{
    display:none;
  }
}

/* Very short viewport */
@media(max-width:720px) and (max-height:620px){
  .user-shell .main-area{
    grid-template-rows:56px minmax(0,1fr) 58px!important;
  }
  .user-shell .topbar{
    height:56px!important;
    min-height:56px!important;
  }
  .user-shell .bottom-nav{
    height:58px!important;
  }
  .user-shell .page-title h1{
    font-size:1.28rem!important;
  }
  .user-shell .page-title p{
    display:none;
  }
  .wallet-screen,
  .tracking-screen,
  .profile-screen{
    gap:6px;
  }
  .wallet-summary-grid{
    gap:5px;
  }
  .wallet-summary-grid article{
    padding:5px 7px;
  }
  .wallet-withdraw-panel{
    padding:8px!important;
  }
  .wallet-form .input,
  .wallet-form .select{
    height:32px!important;
    min-height:32px!important;
  }
  .wallet-form .btn{
    height:33px!important;
    min-height:33px!important;
  }
  .wallet-note{
    margin-top:4px;
    padding:4px 5px;
  }
  .wallet-activity-panel h3{
    font-size:.74rem!important;
  }
  .profile-overview{
    padding:10px!important;
  }
  .profile-info-grid{
    padding:8px 0;
    gap:5px;
  }
  .profile-info-grid>div{
    padding:6px 7px;
  }
  .profile-security-note{
    padding:7px 8px;
  }
  .tracking-status-card{
    padding:8px;
  }
  .tracking-status-card p{
    font-size:.56rem;
  }
  .journey-compact{
    padding:7px!important;
  }
  .journey-grid{
    gap:4px;
  }
  .journey-step{
    padding:4px;
  }
}

/* Desktop app width keeps clean spacing */
@media(min-width:721px){
  .wallet-summary-grid article{
    min-height:70px;
  }
  .wallet-content-grid{
    min-height:260px;
  }
  .profile-screen,
  .tracking-screen{
    max-width:100%;
  }
}


/* =========================================================
   V5.8 — LOGIN SCREEN FINAL FIT
   - Reward illustration fully visible
   - No footer bottom gap
   - Footer visible on desktop
   - No page scrolling
   - Existing design and login logic unchanged
   ========================================================= */

/* Keep the illustration inside its own area */
.app-only-auth .auth-art{
  overflow:hidden!important;
}

.app-only-auth .auth-visual{
  overflow:hidden!important;
  padding:0 10px 7px!important;
  box-sizing:border-box!important;
}

.app-only-auth .auth-visual img{
  width:100%!important;
  max-width:340px!important;
  height:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
}

/* Do not overlap/crop the illustration with the form section */
.app-only-auth .auth-panel{
  margin-top:0!important;
}

/* Fill the available panel height correctly */
.app-only-auth .auth-inner{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}

.app-only-auth .auth-form{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  align-content:initial!important;
  justify-content:flex-start!important;
}

/* Footer stays at the actual bottom instead of leaving a blank area */
.app-only-auth .auth-footnote{
  display:flex!important;
  width:100%!important;
  flex:0 0 auto!important;
  margin-top:auto!important;
  padding:8px 0 max(7px, env(safe-area-inset-bottom))!important;
  border-top:1px solid #eef0f3!important;
  line-height:1.25!important;
}

/* Desktop */
@media(min-width:721px){
  .app-only-auth .auth-shell{
    grid-template-rows:205px minmax(0,1fr)!important;
  }

  .app-only-auth .auth-art{
    height:205px!important;
    padding-bottom:0!important;
  }

  .app-only-auth .auth-visual{
    height:105px!important;
    padding-bottom:5px!important;
  }

  .app-only-auth .auth-visual img{
    max-width:285px!important;
  }

  .app-only-auth .auth-panel{
    padding-top:13px!important;
    padding-bottom:0!important;
  }

  .app-only-auth .auth-form{
    gap:8px!important;
  }

  .app-only-auth .auth-footnote{
    font-size:.64rem!important;
  }
}

/* Normal mobile phones */
@media(max-width:720px){
  .app-only-auth .auth-shell{
    grid-template-rows:205px minmax(0,1fr)!important;
  }

  .app-only-auth .auth-art{
    height:205px!important;
  }

  .app-only-auth .auth-visual{
    height:112px!important;
    margin-top:0!important;
    padding-bottom:7px!important;
  }

  .app-only-auth .auth-visual img{
    max-width:330px!important;
  }

  .app-only-auth .auth-panel{
    padding-top:12px!important;
    padding-bottom:0!important;
  }

  .app-only-auth .auth-form{
    gap:8px!important;
  }

  .app-only-auth .auth-footnote{
    font-size:.64rem!important;
  }
}

/* Short mobile screens: keep all items visible without cropping */
@media(max-width:720px) and (max-height:700px){
  .app-only-auth .auth-shell{
    grid-template-rows:145px minmax(0,1fr)!important;
  }

  .app-only-auth .auth-art{
    height:145px!important;
  }

  .app-only-auth .auth-visual{
    height:62px!important;
    padding-bottom:3px!important;
  }

  .app-only-auth .auth-visual img{
    max-width:255px!important;
  }

  .app-only-auth .auth-panel{
    padding-top:7px!important;
  }

  .app-only-auth .auth-form{
    gap:4px!important;
  }

  .app-only-auth .auth-footnote{
    display:flex!important;
    margin-top:auto!important;
    padding:4px 0!important;
    border-top:1px solid #eef0f3!important;
    font-size:.50rem!important;
  }
}

/* Extra-tall phones: use the space neatly instead of showing a blank footer gap */
@media(max-width:720px) and (min-height:801px){
  .app-only-auth .auth-shell{
    grid-template-rows:225px minmax(0,1fr)!important;
  }

  .app-only-auth .auth-art{
    height:225px!important;
  }

  .app-only-auth .auth-visual{
    height:128px!important;
  }

  .app-only-auth .auth-form{
    gap:10px!important;
  }

  .app-only-auth .auth-footnote{
    padding-top:10px!important;
    padding-bottom:max(10px, env(safe-area-inset-bottom))!important;
  }
}

/* The login screen itself must never scroll */
html,
body,
#app,
.app-only-auth,
.app-only-auth .auth-shell,
.app-only-auth .auth-art,
.app-only-auth .auth-panel,
.app-only-auth .auth-inner{
  overflow:hidden!important;
}


/* =========================================================
   V5.9 — NEW LOGO + HEADER SPACING
   Uploaded logo is used locally for header, favicon and PWA icons.
   ========================================================= */

.app-only-auth .auth-art{
  position:relative!important;
}

/* Brand fixed at top-left; support fixed at top-right */
.app-only-auth .auth-appbar{
  position:absolute!important;
  top:13px!important;
  left:16px!important;
  right:16px!important;
  width:auto!important;
  min-height:46px!important;
  z-index:5!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}

.app-only-auth .app-brand{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
  min-width:0!important;
}

.app-only-auth .brand-mark{
  width:44px!important;
  height:44px!important;
  flex:0 0 44px!important;
  object-fit:contain!important;
  filter:none!important;
}

.app-only-auth .app-brand span{
  color:var(--navy)!important;
  font-size:1.05rem!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}

.app-only-auth .auth-support{
  position:static!important;
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  margin:0!important;
  box-shadow:none!important;
}

/* Proper breathing room below brand/help row */
.app-only-auth .auth-intro{
  margin-top:62px!important;
  padding:0 8px!important;
}

.app-only-auth .auth-intro h1{
  margin-top:0!important;
}

/* Keep reward art clear of title and form */
.app-only-auth .auth-visual{
  margin-top:6px!important;
}

/* All in-app header logos use the same uploaded asset */
.user-shell .topbar .brand-mark,
.policy-app .brand-mark,
.admin-shell .brand-mark{
  object-fit:contain!important;
  filter:none!important;
}

/* Desktop balance */
@media(min-width:721px){
  .app-only-auth .auth-appbar{
    top:14px!important;
    left:22px!important;
    right:22px!important;
  }

  .app-only-auth .auth-intro{
    margin-top:64px!important;
  }

  .app-only-auth .auth-visual{
    height:100px!important;
    margin-top:5px!important;
  }
}

/* Mobile balance */
@media(max-width:720px){
  .app-only-auth .auth-appbar{
    top:12px!important;
    left:15px!important;
    right:15px!important;
  }

  .app-only-auth .auth-intro{
    margin-top:59px!important;
  }

  .app-only-auth .auth-visual{
    margin-top:4px!important;
  }
}

/* Short phone heights retain spacing without scroll */
@media(max-width:720px) and (max-height:700px){
  .app-only-auth .auth-appbar{
    top:7px!important;
    left:12px!important;
    right:12px!important;
    min-height:36px!important;
  }

  .app-only-auth .brand-mark{
    width:35px!important;
    height:35px!important;
    flex-basis:35px!important;
  }

  .app-only-auth .app-brand span{
    font-size:.88rem!important;
  }

  .app-only-auth .auth-support{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
  }

  .app-only-auth .auth-intro{
    margin-top:43px!important;
  }

  .app-only-auth .auth-visual{
    margin-top:1px!important;
  }
}


/* =========================================================
   V5.10 — FINAL HEADER FIT
   Keeps logo/help at the top and guarantees reward art is not cropped.
   ========================================================= */

/* Desktop */
@media(min-width:721px){
  .app-only-auth .auth-intro{
    margin-top:59px!important;
  }

  .app-only-auth .auth-visual{
    height:78px!important;
    margin-top:3px!important;
    padding-bottom:2px!important;
  }

  .app-only-auth .auth-visual img{
    max-width:270px!important;
  }
}

/* Standard mobile */
@media(max-width:720px){
  .app-only-auth .auth-intro{
    margin-top:55px!important;
  }

  .app-only-auth .auth-visual{
    height:88px!important;
    margin-top:2px!important;
    padding-bottom:3px!important;
  }

  .app-only-auth .auth-visual img{
    max-width:300px!important;
  }
}

/* Short mobile */
@media(max-width:720px) and (max-height:700px){
  .app-only-auth .auth-intro{
    margin-top:40px!important;
  }

  .app-only-auth .auth-visual{
    height:48px!important;
    margin-top:0!important;
    padding-bottom:1px!important;
  }

  .app-only-auth .auth-visual img{
    max-width:220px!important;
  }
}


/* =========================================================
   V5.11 — HELP BUTTON 20% SMALLER
   ========================================================= */

.app-only-auth .auth-support{
  width:34px!important;
  height:34px!important;
  flex-basis:34px!important;
}

.app-only-auth .auth-support .icon{
  width:18px!important;
  height:18px!important;
}

@media(max-width:720px){
  .app-only-auth .auth-support{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
  }
}

@media(max-width:720px) and (max-height:700px){
  .app-only-auth .auth-support{
    width:28px!important;
    height:28px!important;
    flex-basis:28px!important;
  }

  .app-only-auth .auth-support .icon{
    width:15px!important;
    height:15px!important;
  }
}


/* =========================================================
   V5.12 — MOBILE PAINT REFERENCE MATCH
   Desktop is unchanged.
   ========================================================= */

@media (max-width:720px) and (min-height:701px){

  /* Clean original backgrounds — no painted/image background colors */
  .app-only-auth,
  .app-only-auth .auth-shell,
  .app-only-auth .auth-panel,
  .app-only-auth .auth-inner,
  .app-only-auth .auth-form{
    background:#ffffff!important;
  }

  .app-only-auth .auth-art{
    background:
      radial-gradient(circle at 10% 70%,rgba(73,196,119,.10),transparent 42%),
      radial-gradient(circle at 90% 70%,rgba(255,107,24,.10),transparent 42%),
      linear-gradient(180deg,#ffffff 0%,#fffdfb 100%)!important;
  }

  /* Paint reference: header stays in place, welcome block moves slightly down */
  .app-only-auth .auth-shell{
    grid-template-rows:236px minmax(0,1fr)!important;
  }

  .app-only-auth .auth-art{
    height:236px!important;
  }

  .app-only-auth .auth-intro{
    margin-top:66px!important;
  }

  .app-only-auth .auth-visual{
    height:96px!important;
    margin-top:3px!important;
    padding-bottom:4px!important;
  }

  .app-only-auth .auth-visual img{
    max-width:300px!important;
  }

  /* Paint reference: extra white breathing room before Mobile Number */
  .app-only-auth .auth-panel{
    margin-top:0!important;
    padding-top:38px!important;
    padding-right:14px!important;
    padding-bottom:0!important;
    padding-left:14px!important;
  }

  .app-only-auth .auth-form{
    height:100%!important;
    min-height:0!important;
    gap:8px!important;
    justify-content:flex-start!important;
  }

  /* Paint reference: trust card sits near the bottom, not directly below button */
  .app-only-auth .auth-trust{
    margin-top:auto!important;
    margin-bottom:12px!important;
  }

  /* Footer remains attached to the screen bottom */
  .app-only-auth .auth-footnote{
    display:flex!important;
    flex:0 0 auto!important;
    margin-top:0!important;
    padding:10px 0 max(10px,env(safe-area-inset-bottom))!important;
    background:#ffffff!important;
    border-top:1px solid #eef0f3!important;
  }
}

/* Tall phones such as the supplied 720×1600 screenshot */
@media (max-width:720px) and (min-height:801px){
  .app-only-auth .auth-shell{
    grid-template-rows:242px minmax(0,1fr)!important;
  }

  .app-only-auth .auth-art{
    height:242px!important;
  }

  .app-only-auth .auth-intro{
    margin-top:68px!important;
  }

  .app-only-auth .auth-panel{
    padding-top:40px!important;
  }

  .app-only-auth .auth-trust{
    margin-bottom:14px!important;
  }
}
