/* Mobile app page — page-specific styles. Loads after product-page.css + product-shared.css. */

/* hero */
.ma-hero{display:grid;grid-template-columns:minmax(0,.68fr) minmax(0,1.32fr);gap:8px;align-items:center;max-width:1320px;margin:0 auto}
.ma-hero .pp-h1{max-width:17ch}
.pp-hero{overflow:hidden}
.ma-tilt{position:relative;grid-column:2;grid-row:1;justify-self:end;width:min(1100px,168%);margin:0 -26% -56px 0;transform:none}
.ma-tilt img{display:block;width:100%;height:auto;filter:drop-shadow(0 40px 70px rgba(15,43,30,.28))}
.ma-tilt::before{content:"";position:absolute;inset:2% -4% 6% 2%;z-index:-1;background:radial-gradient(48% 44% at 52% 50%,rgba(204,238,227,.95) 0%,rgba(204,238,227,0) 70%),radial-gradient(40% 38% at 76% 24%,rgba(213,243,130,.4) 0%,rgba(213,243,130,0) 72%);filter:blur(24px)}
.ma-copy{grid-column:1;grid-row:1;padding-bottom:64px}
.ma-tilt img{opacity:0;transform:translateY(24px) scale(.97);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.ma-tilt.is-in img{opacity:1;transform:none}

/* store badges — the page's primary action, so both stores read as one tier */
.st-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:30px 0 0}
.st-badge{display:inline-flex;align-items:center;gap:11px;min-height:56px;padding:0 26px;border-radius:999px;background:var(--ink-a);color:#fff;font:600 15.5px/1 var(--font-body);text-decoration:none;box-shadow:0 6px 18px -8px rgba(27,30,32,.4);transition:transform .18s cubic-bezier(.2,.7,.2,1),background-color .16s ease,box-shadow .2s ease}
.st-badge:hover{color:#fff;background:#000;transform:translateY(-2px);box-shadow:0 14px 30px -10px rgba(27,30,32,.55)}
.st-badge:active{transform:scale(.98)}
.st-badge img{width:21px;height:21px;filter:brightness(0) invert(1)}
.st-badge small{display:block;font:400 10.5px/1.2 var(--font-body);opacity:.72;letter-spacing:.02em}
.st-badge span{display:flex;flex-direction:column;gap:2px;text-align:left}
.st-web{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 6px;font:500 15px/1 var(--font-body);color:var(--ink-mutedb);text-decoration:none;transition:color .16s ease,gap .18s cubic-bezier(.2,.7,.2,1)}
.st-web:hover{color:var(--green-700b);gap:11px}

/* interactive screen switcher */
.sw2{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:64px;align-items:center}
.sw-stage{position:relative;justify-self:center;width:min(320px,100%);aspect-ratio:2164/4430}
.sw-stage::before{content:"";position:absolute;inset:-8% -22%;background:radial-gradient(50% 46% at 50% 44%,rgba(204,238,227,.9) 0%,rgba(204,238,227,0) 72%);filter:blur(20px)}
.sw-shot{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:translateY(14px) scale(.985);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1);filter:drop-shadow(0 26px 46px rgba(15,43,30,.2))}
.sw-shot.on{opacity:1;transform:none}
.sw-panel{display:flex;flex-direction:column;gap:22px}
.sw-tabs{display:flex;flex-wrap:wrap;gap:8px}
.sw-tab{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid var(--border-a);border-radius:999px;background:var(--surface);color:var(--ink-mutedb);font:500 14px/1 var(--font-body);cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .14s ease}
.sw-tab:hover{background:var(--mint-50);color:var(--green-700b)}
.sw-tab:active{transform:scale(.98)}
.sw-tab[aria-selected="true"]{background:var(--green-700b);border-color:var(--green-700b);color:#fff}
.sw-tab i{width:6px;height:6px;flex:0 0 6px;border-radius:999px;background:currentColor;opacity:.45}
.sw-tab[aria-selected="true"] i{opacity:1;background:var(--lime)}
.sw-body{min-height:220px}
.sw-body h3{margin:0;font:600 clamp(22px,2.4vw,29px)/1.25 var(--font-display);letter-spacing:-.024em;color:var(--ink-a);text-wrap:pretty}
.sw-body p{margin:14px 0 0;max-width:46ch;font:400 16px/1.65 var(--font-body);color:var(--ink-mutedb);text-wrap:pretty}
.sw-body ul{margin:20px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.sw-body li{display:flex;gap:10px;align-items:flex-start;font:400 14.5px/1.5 var(--font-body);color:var(--ink-a)}
.sw-body li svg{flex:0 0 17px;margin-top:2px;color:var(--green-500b)}
.sw-fade{animation:swFade .42s cubic-bezier(.16,1,.3,1) both}
@keyframes swFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sw-prog{display:flex;gap:5px;height:3px;margin-top:4px}
.sw-prog i{flex:1;border-radius:999px;background:var(--border-a);overflow:hidden;position:relative}
.sw-prog i.on::after{content:"";position:absolute;inset:0;background:var(--green-500b);transform-origin:left;animation:swBar 5s linear both}
.sw-prog i.done{background:var(--mint-200)}
@keyframes swBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* moments */
.mo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mo{display:flex;flex-direction:column;gap:14px;padding:28px;border:1px solid var(--border-a);border-radius:20px;background:var(--surface);box-shadow:0 1px 2px rgba(36,81,59,.05);opacity:0;transform:translateY(14px);transition:opacity .7s cubic-bezier(.16,1,.3,1) var(--md,0s),transform .34s cubic-bezier(.2,.7,.2,1) var(--md,0s),box-shadow .22s ease,border-color .22s ease}
.is-in .mo{opacity:1;transform:none}
.mo:hover{box-shadow:var(--shadow-md-g);border-color:var(--mint-200);transform:translateY(-3px);transition-delay:0s}
.mo-when{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;padding:6px 12px;border-radius:999px;background:var(--mint-100);font:500 11px/1 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--green-700b)}
.mo h3{margin:0;font:600 19px/1.35 var(--font-display);letter-spacing:-.015em;color:var(--ink-a);text-wrap:pretty}
.mo p{margin:0;font:400 14.5px/1.65 var(--font-body);color:var(--ink-mutedb)}
.mo-out{margin-top:auto;padding-top:14px;border-top:1px solid var(--border-a);font:500 13.5px/1.5 var(--font-body);color:var(--green-700b)}

/* parity band */
.par{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:60px;align-items:center}
.par-list{display:flex;flex-direction:column;gap:0;margin:26px 0 0}
.par-row{display:grid;grid-template-columns:1fr 92px 92px;align-items:center;gap:18px;padding:15px 0;border-top:1px solid rgba(255,255,255,.16);font:400 15.5px/1.4 var(--font-body);color:rgba(255,255,255,.9);opacity:0;transform:translateY(8px);transition:opacity .55s cubic-bezier(.16,1,.3,1) var(--pd,0s),transform .55s cubic-bezier(.16,1,.3,1) var(--pd,0s)}
.is-in .par-row{opacity:1;transform:none}
.par-row:last-child{border-bottom:1px solid rgba(255,255,255,.16)}
.par-row b,.par-row span.no,.par-row span.yes{display:inline-flex;align-items:center;gap:6px;font:500 12.5px/1 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.04em;white-space:nowrap}
.par-row b{color:var(--lime)}
.par-row span.yes{color:rgba(255,255,255,.62)}
.par-row span.no{color:rgba(255,255,255,.62)}
.par-head{display:grid;grid-template-columns:1fr 92px 92px;gap:18px;padding-bottom:10px;font:500 10.5px/1 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.par-head span:nth-child(2){color:var(--lime)}
.par-shot{position:relative;justify-self:center;width:min(280px,100%)}
.par-shot img{display:block;width:100%;height:auto;filter:drop-shadow(0 30px 56px rgba(0,0,0,.42))}
.par-shot::before{content:"";position:absolute;inset:-12% -20%;z-index:-1;background:radial-gradient(50% 46% at 50% 44%,rgba(61,130,94,.55) 0%,rgba(61,130,94,0) 70%);filter:blur(28px)}

/* notify strip */
.nt{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.nt-i{display:flex;flex-direction:column;gap:9px;padding:22px 20px;border:1px solid var(--border-a);border-radius:16px;background:var(--surface);opacity:0;transform:translateY(12px);transition:opacity .65s cubic-bezier(.16,1,.3,1) var(--nd,0s),transform .3s cubic-bezier(.2,.7,.2,1) var(--nd,0s),border-color .2s ease,box-shadow .2s ease}
.is-in .nt-i{opacity:1;transform:none}
.nt-i:hover{border-color:var(--mint-200);box-shadow:var(--shadow-md-g);transform:translateY(-2px);transition-delay:0s}
.nt-i span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--mint-100);color:var(--green-700b);transition:transform .3s cubic-bezier(.16,1,.3,1),background-color .2s ease}
.nt-i:hover span{transform:translateY(-2px) scale(1.06);background:var(--mint-200)}
.nt-i b{font:600 15px/1.3 var(--font-display);color:var(--ink-a)}
.nt-i p{margin:0;font:400 13.5px/1.6 var(--font-body);color:var(--ink-mutedb)}

@media(max-width:1000px){
 .ma-hero{grid-template-columns:1fr;gap:0;text-align:left}
 .ma-copy,.ma-tilt{grid-column:1}
 .ma-copy{grid-row:1;padding-bottom:0}
 .ma-tilt{grid-row:2;margin:20px -12% -56px;width:124%;transform:none}
 .sw2{grid-template-columns:1fr;gap:40px}
 .sw-body{min-height:0}
 .par{grid-template-columns:1fr;gap:40px}
 .par-row,.par-head{grid-template-columns:1fr 76px 76px;gap:12px}
 .nt{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
 .mo-grid{grid-template-columns:1fr;max-width:460px;margin:0 auto}
 .nt{grid-template-columns:1fr}
 .st-badge{flex:1 1 100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
 .ma-tilt img,.mo,.nt-i,.par-row{opacity:1!important;transform:none!important;transition:none!important}
 .sw-fade{animation:none}
 .sw-prog i.on::after{animation:none;transform:scaleX(1)}
 .st-badge:hover,.mo:hover,.nt-i:hover,.nt-i:hover span,.st-web:hover{transform:none}
 .sw-shot{transition:opacity .2s linear}
}
