/* ViLo v8.7.0 mobile, PWA, onboarding, verification, and icon polish. */
:root{--v870-mobile-nav-height:74px}
.v870-icon{width:21px;height:21px;display:block;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.profile-dropdown-v822 a{display:flex;align-items:center;gap:12px}
.profile-dropdown-v822 a>.profile-menu-icon-v870{width:20px;height:20px;color:var(--accent2)}
.profile-dropdown-v822 footer a{justify-content:flex-start}
.nav-bell-icon-v870{width:20px;height:20px}

/* Decorative line patterns are removed. Responsive layout systems remain available. */

.onboarding-v64{position:relative}
.onboarding-dismiss-v870{position:absolute;top:14px;right:14px;z-index:3;margin:0}
.onboarding-dismiss-v870 button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel2) 88%,transparent);color:var(--muted);cursor:pointer;transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease}
.onboarding-dismiss-v870 button:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent2) 38%,var(--line));background:color-mix(in srgb,var(--accent2) 10%,var(--panel2))}
.onboarding-dismiss-v870 .v870-icon{width:18px;height:18px}
.v870-compact-setup{position:sticky;top:78px;z-index:90;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0;padding:13px 15px;border:1px solid color-mix(in srgb,var(--accent2) 30%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(20px);box-shadow:0 12px 34px rgba(0,0,0,.18)}
.v870-compact-setup>div:first-child{display:flex;align-items:center;gap:11px;min-width:0}.v870-compact-setup>div:first-child>.v870-icon{color:var(--accent2)}
.v870-compact-setup span{display:flex;flex-direction:column;min-width:0}.v870-compact-setup strong{font-size:.92rem}.v870-compact-setup small{color:var(--muted)}
.v870-compact-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.v870-compact-actions form{margin:0}.v870-compact-actions .btn.text{background:transparent;border-color:transparent;color:var(--muted)}

.verification-result-v870{min-height:58vh;display:flex;align-items:center;justify-content:center;padding:36px 0}.verification-result-v870>.card{width:min(680px,100%);padding:clamp(24px,5vw,44px)}.verification-result-v870 h1{margin:10px 0 12px;font-size:clamp(2rem,6vw,3.5rem);line-height:1}.verification-result-v870 p{color:var(--muted);line-height:1.7}

.v870-mobile-nav{display:none}
.v870-connectivity{position:fixed;left:50%;bottom:calc(var(--v870-mobile-nav-height) + 22px + env(safe-area-inset-bottom));z-index:16000;transform:translateX(-50%);align-items:center;gap:9px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 14px 38px rgba(0,0,0,.28);backdrop-filter:blur(18px)}
.v870-connectivity span{width:9px;height:9px;border-radius:50%;background:var(--warning)}.v870-connectivity.online span{background:var(--accent2)}.v870-connectivity b{font-size:.8rem}
.v870-update-ready{position:fixed;right:16px;bottom:18px;z-index:16000;display:flex;align-items:center;gap:18px;max-width:440px;padding:15px 16px;border:1px solid color-mix(in srgb,var(--accent2) 32%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 18px 54px rgba(0,0,0,.32);backdrop-filter:blur(20px)}
.v870-update-ready>div{display:flex;flex-direction:column;gap:3px}.v870-update-ready span{color:var(--muted);font-size:.82rem;line-height:1.35}.v870-update-ready button{flex:0 0 auto}

@media(max-width:820px){
  body{padding-bottom:calc(var(--v870-mobile-nav-height) + 28px + env(safe-area-inset-bottom))!important}
  .mobile-app-nav-v780,.mobile-app-nav-v75{display:none!important}
  .v870-mobile-nav{position:fixed;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:13000;display:flex;align-items:stretch;justify-content:space-between;gap:4px;padding:7px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:22px;background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(22px);box-shadow:0 18px 52px rgba(0,0,0,.34)}
  .v870-mobile-nav a{position:relative;display:flex;flex:1 1 20%;min-width:0;min-height:56px;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:5px 3px;border-radius:16px;color:var(--muted);text-decoration:none;transition:background-color 160ms ease,color 160ms ease,transform 160ms ease}
  .v870-mobile-nav a.active{color:var(--text);background:color-mix(in srgb,var(--accent) 16%,transparent)}
  .v870-mobile-nav a:active{transform:scale(.97)}.v870-mobile-nav .v870-icon{width:22px;height:22px}.v870-mobile-nav span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;font-weight:850}
  .nav{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}.nav>.brand{flex:1 1 auto;min-width:0}.nav-account-actions-v753{flex:0 0 auto}
  .navlinks{grid-template-columns:none!important}.navlinks.is-open{display:flex!important;flex-direction:column!important}
  .profile-dropdown,.notify-dropdown{top:70px!important;bottom:calc(var(--v870-mobile-nav-height) + 18px + env(safe-area-inset-bottom));max-height:none!important}
  .profile-dropdown-v822 section a{min-height:48px}
  .v870-compact-setup{top:68px;align-items:flex-start;flex-direction:column;gap:10px}.v870-compact-actions{width:100%}.v870-compact-actions .btn{flex:1;text-align:center;justify-content:center}
  .v870-update-ready{left:10px;right:10px;bottom:calc(var(--v870-mobile-nav-height) + 20px + env(safe-area-inset-bottom));max-width:none}
  .member-app-hero,.creator-studio-hero,.v860-earnings-hero{border-radius:22px!important}
  .table-scroll{margin-inline:-4px;padding-inline:4px;overscroll-behavior-inline:contain}
  button,.btn,input,select,textarea,summary{touch-action:manipulation}
  .btn,button,input,select{min-height:44px}
  .sticky-save,.v853-save-bar{bottom:calc(var(--v870-mobile-nav-height) + 12px + env(safe-area-inset-bottom))!important}
}
@media(max-width:520px){
  .v870-mobile-nav{left:7px;right:7px;padding:6px;border-radius:20px}.v870-mobile-nav a{min-height:54px}.v870-mobile-nav span{font-size:9px}
  .onboarding-v64{padding-top:54px}.onboarding-dismiss-v870{top:10px;right:10px}.onboarding-head-v64{padding-right:0!important}
  .v870-compact-actions{align-items:stretch;flex-direction:column}.v870-compact-actions form,.v870-compact-actions button{width:100%}
  .v870-update-ready{align-items:flex-start;flex-direction:column;gap:12px}.v870-update-ready button{width:100%}
}
@media(prefers-reduced-motion:reduce){.onboarding-dismiss-v870 button,.v870-mobile-nav a{transition:none!important}}
