
/* =========================================================
   IMMOVIA Responsive Mobile 1.6 — Full Display / Near Edge-to-Edge
   Goal: use nearly the full smartphone display width
   ========================================================= */

@media (max-width: 700px){

  :root{
    --immovia-mobile-gap: 4px;
    --immovia-mobile-inner: 10px;
  }

  html, body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  /* Main wrappers: almost edge-to-edge */
  .wrap,
  .intel-search-page .wrap,
  .intel-search-hero .wrap,
  .intel-search-page > .wrap{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:var(--immovia-mobile-gap) !important;
    padding-right:var(--immovia-mobile-gap) !important;
    box-sizing:border-box !important;
  }

  /* AI Search module nearly full screen width */
  #immovia-ai-search,
  #immovia-ai-search.ai-search-shell,
  #immovia-ai-search.intel-assistant-shell{
    width:calc(100vw - (var(--immovia-mobile-gap) * 2)) !important;
    max-width:none !important;
    margin-left:calc(50% - 50vw + var(--immovia-mobile-gap)) !important;
    margin-right:0 !important;
    border-radius:18px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  /* Header inside AI Search */
  #immovia-ai-search .intel-assistant-head{
    padding:12px var(--immovia-mobile-inner) !important;
  }

  #immovia-ai-search .intel-assistant-brand{
    gap:10px !important;
  }

  #immovia-ai-search .intel-assistant-logo,
  #immovia-ai-search .intel-assistant-icon{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    border-radius:14px !important;
  }

  #immovia-ai-search .intel-assistant-brand strong{
    font-size:17px !important;
    line-height:1.12 !important;
  }

  #immovia-ai-search .intel-assistant-brand span{
    font-size:12.5px !important;
    line-height:1.28 !important;
  }

  #immovia-ai-search .intel-live{
    margin-top:4px !important;
    padding:6px 10px !important;
    font-size:11px !important;
  }

  /* Conversation / assistant text */
  #immovia-ai-search .intel-conversation{
    width:100% !important;
    padding:8px !important;
    box-sizing:border-box !important;
  }

  #immovia-ai-search .intel-message-ai,
  #immovia-ai-search .intel-message{
    width:100% !important;
    max-width:100% !important;
  }

  #immovia-ai-search .intel-message-ai .intel-message-avatar{
    display:none !important;
  }

  #immovia-ai-search .intel-message-ai .intel-message-bubble{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:14px 14px !important;
    border-radius:16px !important;
    font-size:15px !important;
    line-height:1.45 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
    hyphens:none !important;
    -webkit-hyphens:none !important;
  }

  /* User bubbles */
  #immovia-ai-search .intel-message-user .intel-message-bubble{
    max-width:88% !important;
    font-size:14px !important;
    padding:9px 12px !important;
  }

  /* Input block: wide and less padded */
  #immovia-ai-search .intel-chat-form{
    padding:8px !important;
    width:100% !important;
    box-sizing:border-box !important;
  }

  #immovia-ai-search .intel-chat-input-wrap{
    width:100% !important;
    max-width:100% !important;
    padding:7px !important;
    gap:8px !important;
    border-radius:16px !important;
    box-sizing:border-box !important;
  }

  #immovia-ai-search .intel-chat-input-wrap textarea{
    width:100% !important;
    min-width:0 !important;
    min-height:82px !important;
    height:82px !important;
    max-height:140px !important;
    padding:10px 11px !important;
    font-size:14.5px !important;
    line-height:1.38 !important;
    box-sizing:border-box !important;
  }

  #immovia-ai-search .intel-chat-send{
    width:100% !important;
    min-height:48px !important;
    padding:10px 14px !important;
    border-radius:14px !important;
    font-size:15px !important;
  }

  /* Suggestion chips: full horizontal use */
  #immovia-ai-search .intel-search-suggestions{
    width:100% !important;
    padding:5px 0 2px !important;
    gap:6px !important;
  }

  #immovia-ai-search .intel-search-suggestions button{
    padding:7px 11px !important;
    min-height:36px !important;
    font-size:12px !important;
  }

  /* =========================================================
     RESULTS AREA — nearly edge-to-edge
     ========================================================= */

  .intel-search-results{
    width:calc(100vw - (var(--immovia-mobile-gap) * 2)) !important;
    max-width:none !important;
    margin-left:calc(50% - 50vw + var(--immovia-mobile-gap)) !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }

  .intel-search-results > *{
    max-width:100% !important;
  }

  .ais-results-head,
  .ais-results-summary,
  .ais-result-card{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  .ais-results-head,
  .ais-results-summary{
    padding-left:10px !important;
    padding-right:10px !important;
  }

  .ais-result-card{
    grid-template-columns:1fr !important;
    margin-left:0 !important;
    margin-right:0 !important;
    border-radius:18px !important;
    overflow:hidden !important;
  }

  /* Images: nearly full viewport width */
  .ais-media,
  .ais-main-media,
  .ais-main-media img,
  .ais-main-media video{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .ais-main-media img,
  .ais-main-media video{
    display:block !important;
    aspect-ratio:16/11 !important;
    object-fit:cover !important;
  }

  .ais-thumbs{
    width:100% !important;
    padding:6px !important;
    gap:5px !important;
    box-sizing:border-box !important;
  }

  .ais-thumbs img,
  .ais-thumbs video{
    border-radius:8px !important;
  }

  /* Listing content: less side padding */
  .ais-content{
    width:100% !important;
    max-width:100% !important;
    padding:12px !important;
    box-sizing:border-box !important;
  }

  .ais-content h3{
    font-size:26px !important;
    line-height:1.04 !important;
    margin-bottom:14px !important;
  }

  /* price/facts fill available width */
  .ais-primary-facts,
  .ais-facts,
  .ais-score-grid,
  .ais-value-grid{
    width:100% !important;
    max-width:100% !important;
    gap:7px !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ais-primary-facts > *,
  .ais-facts > *,
  .ais-score-grid > *,
  .ais-value-grid > *{
    min-width:0 !important;
    padding:10px !important;
    box-sizing:border-box !important;
  }

  .ais-actions{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }

  .ais-actions .btn,
  .ais-actions a,
  .ais-actions button{
    width:100% !important;
    min-height:48px !important;
    padding:10px 12px !important;
    justify-content:center !important;
    box-sizing:border-box !important;
  }

  /* Result header card / title area */
  .intel-search-results h2{
    font-size:34px !important;
    line-height:1.02 !important;
    letter-spacing:-.04em !important;
  }

  /* Floating AI: keep tiny and out of content */
  .immovia-ai-launcher{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    min-height:44px !important;
    right:6px !important;
    bottom:calc(6px + env(safe-area-inset-bottom, 0px)) !important;
    border-radius:14px !important;
  }

  .immovia-ai-spark{
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
  }

  .immovia-ai-launcher-copy{
    display:none !important;
  }
}

/* Very small smartphones */
@media (max-width: 390px){

  :root{
    --immovia-mobile-gap: 2px;
    --immovia-mobile-inner: 8px;
  }

  #immovia-ai-search,
  #immovia-ai-search.ai-search-shell,
  #immovia-ai-search.intel-assistant-shell,
  .intel-search-results{
    width:calc(100vw - 4px) !important;
    margin-left:calc(50% - 50vw + 2px) !important;
  }

  .ais-content{
    padding:10px !important;
  }

  .ais-content h3{
    font-size:24px !important;
  }

  .ais-primary-facts,
  .ais-facts,
  .ais-score-grid,
  .ais-value-grid{
    gap:6px !important;
  }

  #immovia-ai-search .intel-message-ai .intel-message-bubble{
    padding:12px !important;
    font-size:14.5px !important;
  }

  #immovia-ai-search .intel-chat-form{
    padding:6px !important;
  }
}

/* RTL */
@media (max-width: 700px){
  html[dir="rtl"] #immovia-ai-search .intel-message-ai .intel-message-bubble{
    text-align:right !important;
  }

  html[dir="rtl"] #immovia-ai-search .intel-message-user{
    justify-content:flex-start !important;
  }
}
