/* ========================================================================
   VORA Uganda — Mobile Experience Seal 1.0.0
   Public-site responsive authority for header, LIVE ticker, home hero,
   public cards, footer and floating NEXA guide. Desktop is preserved except
   for the proven ticker-to-main spacing defect.
   ======================================================================== */

/* The LIVE ticker already occupies the page-start position. An older home
   #main-content !important rule left a desktop-size spacer underneath it. */
.home-page .vora-pulse-public + .nav-backdrop + main#main-content{
  padding-top:12px!important;
}

@media (max-width:820px){
  :root{--vora-mobile-edge:10px}
  body{background:#f8f5ee!important}

  /* Compact, high-contrast mobile navigation. */
  .floating-header.vora-system-header{
    width:calc(100% - (var(--vora-mobile-edge) * 2))!important;
    min-height:60px!important;
    padding:6px 7px 6px 9px!important;
    border-radius:20px!important;
    border-color:rgba(25,166,151,.34)!important;
    background:rgba(255,255,255,.98)!important;
    box-shadow:0 13px 32px rgba(6,52,68,.14),0 4px 0 -2px rgba(229,174,42,.34)!important;
    backdrop-filter:blur(18px) saturate(1.12)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.12)!important;
  }
  .vora-system-header .brand-lift{width:116px!important;min-height:44px!important;padding:0!important}
  .vora-system-header .brand img{width:111px!important;height:39px!important;filter:drop-shadow(0 5px 8px rgba(8,58,68,.09))!important}
  .vora-system-header .header-actions{gap:5px!important}
  .vora-system-header .vora-pwa-install-button,
  .vora-system-header .v2-emergency-button,
  .vora-system-header .menu-toggle{width:42px!important;min-width:42px!important;height:42px!important;border-radius:13px!important}
  .vora-system-header .vora-pwa-install-button{padding:0!important;justify-content:center!important;background:linear-gradient(145deg,#fafffd,#e5f7f3)!important;border-color:rgba(12,139,132,.24)!important}
  .vora-system-header .vora-pwa-install-icon{width:27px!important;height:27px!important}
  .vora-system-header .v2-emergency-button{padding:0!important;justify-content:center!important;background:linear-gradient(145deg,#fff8f7,#ffeae6)!important;border-color:#f4c1ba!important}
  .vora-system-header .v2-emergency-button .emergency-label{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
  .vora-system-header .v2-emergency-button .emergency-mark{width:27px!important;height:27px!important;font-size:.84rem!important}
  .vora-system-header .menu-toggle{background:linear-gradient(145deg,#fbffff,#edf8f8)!important;border-color:rgba(12,100,111,.17)!important}
  .vora-system-header .menu-toggle span{left:11px!important;width:20px!important}
  .vora-system-header .main-nav{left:8px!important;right:8px!important;top:70px!important;border-radius:21px!important;box-shadow:0 22px 60px rgba(7,39,55,.22)!important}

  /* LIVE ticker: smaller and denser on phones/tablets. */
  .vora-pulse-public{width:calc(100% - 16px)!important;margin-top:78px!important;margin-bottom:0!important}
  .vora-pulse-frame{min-height:58px!important;border-radius:18px!important}
  .vora-pulse-brand{min-width:48px!important;padding:7px 8px!important}
  .vora-pulse-item{padding:7px 8px!important}
  .vora-pulse-category{font-size:.49rem!important}
  .vora-pulse-run-unit b{font-size:.68rem!important}
  .vora-pulse-run-unit>span{font-size:.61rem!important}
  .vora-pulse-controls{padding:5px!important}
  .vora-pulse-controls button{width:30px!important;min-width:30px!important;height:32px!important;border-radius:10px!important}
  .home-page .vora-pulse-public + .nav-backdrop + main#main-content{padding-top:7px!important}

  /* Home hero: use a crisp photo canvas, not a stretched full-screen poster. */
  .vora-home-gateway{
    width:calc(100% - 12px)!important;
    min-height:clamp(680px,72svh,820px)!important;
    margin:0 auto 10px!important;
    padding:24px 17px 14px!important;
    border-radius:24px!important;
    box-shadow:0 22px 48px rgba(3,45,58,.19),0 6px 0 -3px rgba(231,179,39,.48)!important;
  }
  .vora-home-media img{
    object-position:60% 45%!important;
    filter:saturate(1.12) contrast(1.055) brightness(1.015)!important;
    animation:none!important;
  }
  .vora-home-atmosphere{
    background:
      radial-gradient(circle at 78% 23%,rgba(22,178,158,.10),transparent 30%),
      linear-gradient(0deg,rgba(2,30,40,.97) 0%,rgba(2,31,41,.90) 24%,rgba(2,33,43,.67) 43%,rgba(2,35,45,.28) 61%,rgba(2,35,45,.08) 77%,transparent 100%)!important;
  }
  .vora-home-content{
    align-self:end!important;width:100%!important;
    padding:min(38vh,290px) 0 8px!important;
    text-shadow:0 2px 12px rgba(0,0,0,.22)!important;
  }
  .vora-home-welcome{font-size:.80rem!important;color:#f3fffd!important}
  .vora-home-descriptor{font-size:.64rem!important;margin-bottom:10px!important;color:#ffd568!important}
  .vora-home-gateway h1{font-size:clamp(2.28rem,9.8vw,3.32rem)!important;line-height:.92!important;max-width:100%!important}
  .vora-home-live{font-size:.84rem!important;margin-top:12px!important;min-height:25px!important}
  .vora-home-intro{font-size:.84rem!important;line-height:1.48!important;margin-top:9px!important;max-width:98%!important}
  .vora-home-primary-actions{margin-top:12px!important;gap:7px!important;overflow-x:auto!important;padding-bottom:3px!important;scrollbar-width:none}
  .vora-home-primary-actions::-webkit-scrollbar{display:none}
  .vora-home-primary-actions .button{flex:0 0 auto!important;min-height:43px!important;padding:8px 11px!important;font-size:.74rem!important}
  .vora-home-trust{font-size:.64rem!important;margin-top:11px!important;gap:6px 9px!important}
  .vora-home-pathways{gap:7px!important;padding:4px 0 3px!important}
  .vora-home-pathways a{min-width:170px!important;min-height:55px!important}

  /* Public page rhythm: less dead space, cleaner cards, stronger mobile colour. */
  .page-section,.split-story,.community-balance,.safety-strip,.directory-section{padding-top:34px!important;padding-bottom:34px!important}
  .section-heading{margin-bottom:22px!important}
  :is(.shine-card,.listing-card,.hub-record-card,.vora-need-tile,.access-card,.den-gateway,.den-principle,.contact-method,.den-welcome-card,.guides-library-card,.guides-authority-card){
    border-radius:20px!important;box-shadow:0 12px 25px rgba(8,59,76,.09),0 5px 0 -3px color-mix(in srgb,var(--card-edge,#18a896) 35%,transparent)!important
  }
  .vora-home-field-visual{margin-top:14px!important;margin-bottom:18px!important}
  .vora-home-field-visual figure{border-radius:22px!important;overflow:hidden!important}

  /* Footer: phone-first composition rather than a squeezed desktop grid. */
  .site-footer.vora-system-footer{
    width:calc(100% - 12px)!important;margin:12px auto 8px!important;border-radius:26px!important;
    background:
      radial-gradient(circle at 12% 6%,rgba(31,196,178,.17),transparent 28%),
      radial-gradient(circle at 88% 94%,rgba(144,87,210,.16),transparent 32%),
      linear-gradient(155deg,#063b49 0%,#07545a 46%,#0a424e 100%)!important;
    border-color:rgba(238,187,58,.62)!important;
    box-shadow:0 20px 42px rgba(2,40,51,.20),0 7px 0 -4px rgba(239,184,61,.64)!important;
  }
  .vora-system-footer .footer-main{grid-template-columns:1fr!important;gap:10px!important;padding:22px 12px 13px!important}
  .vora-system-footer .footer-brand{grid-column:auto!important;padding:3px 9px 11px!important}
  .vora-system-footer .footer-logo-transparent{width:min(190px,60vw)!important}
  .vora-system-footer .footer-descriptor{font-size:.72rem!important;margin-top:10px!important}
  .vora-system-footer .footer-system-line{font-size:.69rem!important;line-height:1.46!important;max-width:100%!important}
  .vora-system-footer .footer-tagline{margin-top:11px!important;font-size:.73rem!important;padding:6px 9px!important}
  .footer-trust-row{margin-top:9px!important}
  .footer-trust-row span{font-size:.61rem!important;padding:4px 7px!important}
  .vora-system-footer .footer-nav-card{padding:13px 12px!important;border-radius:18px!important;background:linear-gradient(150deg,rgba(255,255,255,.13),rgba(255,255,255,.055))!important}
  .vora-system-footer .footer-nav-card h2{font-size:.70rem!important;margin-bottom:7px!important}
  .vora-system-footer .footer-nav-card>a{min-height:35px!important;padding:6px 8px!important;font-size:.75rem!important;color:#f3fffd!important}
  .vora-system-footer .footer-contact{grid-column:auto!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:2px 8px!important}
  .vora-system-footer .footer-contact h2,.vora-system-footer .footer-contact-line.is-address{grid-column:1/-1!important}
  .vora-system-footer .footer-contact-line{grid-template-columns:42px minmax(0,1fr)!important}
  .vora-system-footer .footer-bottom{grid-template-columns:1fr!important;gap:7px!important;margin:0 8px 8px!important;padding:10px 11px!important}
  .vora-system-footer .footer-legal{justify-content:flex-start!important;gap:3px!important}
  .vora-system-footer .footer-legal a{font-size:.62rem!important;padding:5px 6px!important}
  .vora-system-footer .footer-copyright{font-size:.59rem!important}

  /* Floating guide remains the same character; on mobile it becomes compact
     once the visitor is reading, especially over the footer. */
  .vora-help-floating-widget{right:10px!important;bottom:calc(30px + env(safe-area-inset-bottom,0px))!important;gap:8px!important;max-width:min(94vw,315px)!important}
  .vora-help-widget-character{width:min(92px,24vw)!important}
  .vora-help-widget-bubble{max-width:min(61vw,205px)!important;padding:12px!important}
  .vora-help-floating-widget.is-mobile-compact .vora-help-widget-bubble{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(8px) scale(.96)!important}
  .vora-help-floating-widget.is-footer-zone .vora-help-widget-character{width:min(78px,20vw)!important}

  /* Public NEXA support should read like a native mobile sheet. */
  .vora-nexa-public{
    left:6px!important;right:6px!important;top:calc(68px + env(safe-area-inset-top,0px))!important;bottom:6px!important;
    width:auto!important;height:auto!important;border-radius:22px!important;
    border-color:rgba(100,54,145,.20)!important;box-shadow:0 26px 68px rgba(4,25,45,.28)!important;
  }
  .vora-nexa-public-head{min-height:70px!important;padding:9px 10px!important}
  .vora-nexa-public-orb{width:44px!important;height:44px!important;flex-basis:44px!important;border-radius:14px!important}
  .vora-nexa-public-title h2{font-size:.98rem!important}
  .vora-nexa-public-title p{font-size:.51rem!important}.vora-nexa-public-title span{font-size:.54rem!important;max-width:180px!important}
  .vora-nexa-public-body{height:calc(100% - 70px)!important}
  .vora-nexa-case-head{padding:9px 10px!important}
  .vora-nexa-messages{padding:13px 9px 16px!important}
  .vora-nexa-msg{max-width:96%!important;margin:8px 0!important}
  .vora-nexa-msg-avatar{display:none!important}
  .vora-nexa-bubble{padding:10px 11px 8px!important;border-radius:17px 17px 17px 6px!important}
  .vora-nexa-msg.mine .vora-nexa-bubble{border-radius:17px 17px 6px 17px!important}
  .vora-nexa-bubble p{font-size:.72rem!important;line-height:1.52!important}
  .vora-nexa-msg-actions{opacity:1!important;gap:4px!important}
  .vora-nexa-msg-actions button{min-height:28px!important;padding:4px 8px!important;font-size:8.5px!important}
  .vora-nexa-compose-v2{grid-template-columns:40px 40px minmax(0,1fr) 58px!important;gap:6px!important;margin:0 7px 8px!important;padding:7px!important}
  .vora-nexa-compose-v2 textarea{min-width:0!important;min-height:50px!important;font-size:12px!important}
  .vora-nexa-compose-v2 label,.vora-nexa-emoji-toggle{width:40px!important;height:40px!important;min-width:40px!important}
  .vora-nexa-compose-v2 button[type="submit"]{min-width:58px!important}
}

@media (max-width:480px){
  .floating-header.vora-system-header{min-height:58px!important;padding-inline:6px!important}
  .vora-system-header .brand-lift{width:106px!important}.vora-system-header .brand img{width:101px!important;height:36px!important}
  .vora-system-header .vora-pwa-install-button,.vora-system-header .v2-emergency-button,.vora-system-header .menu-toggle{width:40px!important;min-width:40px!important;height:40px!important}
  .vora-home-gateway{min-height:690px!important;padding-inline:15px!important}
  .vora-home-content{padding-top:245px!important}
  .vora-home-gateway h1{font-size:clamp(2.05rem,10.4vw,2.85rem)!important}
  .vora-home-live-label{display:block!important;width:100%!important}
  .vora-home-primary-actions .vora-home-secondary{display:none!important}
  .vora-system-footer .footer-contact{grid-template-columns:1fr!important}.vora-system-footer .footer-contact-line.is-address{grid-column:auto!important}
  .vora-help-widget-character{width:min(82px,23vw)!important}
  .vora-nexa-public{left:4px!important;right:4px!important;bottom:4px!important;border-radius:18px!important}
}

@media (display-mode:standalone) and (max-width:820px), (display-mode:fullscreen) and (max-width:820px){
  .floating-header.vora-system-header{top:calc(var(--vora-pwa-safe-top,0px) + 5px)!important}
  .vora-pulse-public{margin-top:calc(76px + var(--vora-pwa-safe-top,0px))!important}
  .home-page .vora-pulse-public + .nav-backdrop + main#main-content{padding-top:6px!important}
  .vora-nexa-public{top:calc(66px + var(--vora-pwa-safe-top,0px))!important}
}
