/* RUN — Mobile Experience v1 | progressive enhancement, keeps desktop design */
:root{color-scheme:dark}
html{scroll-padding-top:84px}
button,select,a{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #f6c747;outline-offset:3px}
.card-art img{display:block;width:100%;height:100%;margin:0;object-fit:cover;filter:none}
.effect-card{min-width:0}
@media (max-width: 820px){
  .nav{min-height:68px}
  .nav nav{display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;background:#101b2b;border-bottom:1px solid var(--line);padding:14px max(18px,calc((100vw - 1180px)/2));box-shadow:0 15px 24px #0007;flex-direction:column;gap:0}
  .nav nav.is-open{display:flex}
  .nav nav a,.nav nav a:nth-child(1),.nav nav a:nth-child(3){display:block;padding:13px 8px;font-size:14px;border-bottom:1px solid #ffffff12}
  .mobile-menu-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-left:auto;min-width:48px;min-height:44px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-size:22px}
  .mobile-quick-action{display:flex}
  .filter-bar{margin-top:15px}
  .chips{display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scroll-snap-type:x proximity;gap:9px;padding:0 0 12px}
  .chip{flex:0 0 auto;scroll-snap-align:start;min-height:42px;padding:9px 15px}
}
@media (min-width: 821px){.mobile-menu-button,.mobile-quick-action{display:none!important}}
@media (max-width: 640px){
  body{overflow-x:hidden;padding-bottom:calc(79px + env(safe-area-inset-bottom,0px))}
  .container{width:calc(100% - 28px)}
  .header{z-index:50}
  .logo{font-size:19px}.logo small{font-size:9px}
  .hero{padding:28px 0 18px;gap:15px;min-height:auto}
  .hero h1{font-size:clamp(37px,11vw,54px);margin:13px 0 17px;letter-spacing:-.047em}
  .hero p{font-size:15px;margin-bottom:20px}
  .primary-link{min-height:48px;align-items:center;justify-content:center}
  .hero-stats{margin-top:25px;gap:12px;justify-content:space-between;flex-wrap:wrap}
  .hero-stats strong{font-size:20px}
  .hero-visual{min-height:225px;max-height:290px;border-radius:14px}
  .hero-visual img{height:100%;max-height:290px;min-height:0;width:100%;object-fit:cover}
  .hero-halo{display:none}
  .float-tag{font-size:9px;left:9px;bottom:10px;padding:7px 9px}
  .section,.section-heading{margin:25px 0 17px}
  .section h2,.section-heading h2,.how h2{font-size:clamp(28px,8.6vw,38px)}
  .section p{font-size:14px}
  .search-wrap{max-width:none}
  .search-wrap input{font-size:16px;min-height:48px}
  .effects-grid{grid-template-columns:1fr;gap:14px}
  .effect-card{border-radius:15px}
  .effect-card:hover{transform:none}
  .card-art{height:auto;aspect-ratio:16/9}
  .card-info{padding:15px}
  .card-info h3{font-size:18px;margin:5px 0}
  .card-info p{min-height:0;margin:0 0 13px}
  .select-effect{min-height:46px;font-size:13px}
  .customizer{padding-top:24px}
  .form-panel,.result-panel{padding:17px;border-radius:15px}
  .moment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .moment{min-width:0;padding:12px 2px;gap:3px}
  .moment strong{font-size:13px}.moment small{font-size:10px}
  .form-grid,.form-grid.cols-3{grid-template-columns:1fr;gap:15px}
  .form-grid label,.extra-label{font-size:13px}
  input:not([type=radio]):not([type=hidden]),select,textarea{min-height:48px;font-size:16px}
  textarea{min-height:105px}
  .submit-wrap{gap:8px}.submit-btn,.outline-btn{width:100%;min-height:50px}
  .result-panel{margin-top:30px}
  .result-panel textarea{min-height:280px;font-size:13px}
  .result-actions{flex-direction:column}
  .how{gap:20px;padding:50px 0}
  .how-steps{gap:22px}
  .footer-inner{gap:9px}
  .mobile-quick-action{position:fixed;z-index:40;bottom:0;left:0;right:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:#080f1cf2;border-top:1px solid #3b4860;backdrop-filter:blur(14px);align-items:center;gap:12px;box-shadow:0 -10px 25px #0006}
  .mobile-quick-action span{min-width:0;flex:1;font-size:11px;line-height:1.25;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-quick-action strong{display:block;font-size:12px;color:#fff}
  .mobile-quick-action a{flex:0 0 auto;min-height:46px;display:inline-flex;justify-content:center;align-items:center;background:var(--accent);color:#101725;font-size:12px;font-weight:850;padding:0 15px;border-radius:10px}
}
@media(max-width:360px){.hero h1{font-size:37px}.hero-stats{gap:8px}.logo{font-size:17px}.mobile-quick-action a{padding:0 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.effect-card,.card-art img{transition:none!important}}
