
/* CANTAIMY v7.6.91 — Desktop Info modal: fit active tab in one viewport */

@media (min-width:821px){
  #legalModal.legal-modal{
    padding:14px !important;
    overflow:hidden !important;
  }

  #legalModal .legal-modal-card{
    width:min(1180px,96vw) !important;
    max-height:none !important;
    overflow:visible !important;
    padding:16px 20px 14px !important;
    transform:scale(var(--legal-fit-scale,1));
    transform-origin:center center;
    transition:transform .12s ease-out;
  }

  #legalModal .legal-modal-head{
    margin-bottom:9px !important;
  }

  #legalModal .legal-logo{
    width:172px !important;
  }

  #legalModal .legal-close{
    width:32px !important;
    height:32px !important;
    font-size:19px !important;
  }

  #legalModal .legal-tabs{
    gap:5px !important;
    padding-bottom:7px !important;
  }

  #legalModal .legal-tab{
    min-height:30px !important;
    padding:0 9px !important;
    border-radius:8px !important;
    font-size:10px !important;
  }

  #legalModal .legal-panel{
    max-width:none !important;
    padding:12px 2px 2px !important;
    font-size:11.5px !important;
    line-height:1.42 !important;
  }

  #legalModal .legal-panel h2{
    margin:0 0 8px !important;
    font-size:21px !important;
    line-height:1.12 !important;
  }

  #legalModal .legal-panel h3{
    margin:10px 0 3px !important;
    font-size:12px !important;
  }

  #legalModal .legal-panel p{
    margin:0 0 7px !important;
  }

  #legalModal .legal-panel ul{
    margin:5px 0 8px 18px !important;
  }

  #legalModal .legal-panel li{
    margin:2px 0 !important;
  }

  #legalModal .cantaimy-story-kicker{
    margin-bottom:3px !important;
    font-size:8.5px !important;
  }

  #legalModal .info-lead,
  #legalModal .cantaimy-story-lead{
    font-size:12.5px !important;
    line-height:1.42 !important;
  }

  #legalModal .info-feature-grid,
  #legalModal .privacy-summary-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
    margin:10px 0 !important;
  }

  #legalModal .info-feature-grid article,
  #legalModal .privacy-summary-grid article{
    padding:9px 10px !important;
    border-radius:10px !important;
  }

  #legalModal .info-feature-grid strong,
  #legalModal .privacy-summary-grid strong{
    margin-bottom:3px !important;
    font-size:10.5px !important;
  }

  #legalModal .info-feature-grid span,
  #legalModal .privacy-summary-grid span{
    font-size:9.5px !important;
    line-height:1.32 !important;
  }

  #legalModal .info-note{
    margin:9px 0 !important;
    padding:9px 11px !important;
  }

  #legalModal .info-note strong,
  #legalModal .info-note p{
    font-size:9.5px !important;
    line-height:1.34 !important;
  }

  #legalModal .legal-contact-email{
    margin-top:8px !important;
    padding:8px 10px !important;
  }

  #legalModal .legal-contact-email strong{
    font-size:9.5px !important;
  }

  #legalModal .legal-contact-email span{
    font-size:10.5px !important;
  }

  #legalModal .guide-steps{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px !important;
    margin-top:9px !important;
  }

  #legalModal .guide-steps article{
    grid-template-columns:26px minmax(0,1fr) !important;
    gap:8px !important;
    padding:7px 9px !important;
  }

  #legalModal .guide-steps article > span{
    width:23px !important;
    height:23px !important;
    font-size:8.5px !important;
  }

  #legalModal .guide-steps strong{
    font-size:9.5px !important;
  }

  #legalModal .guide-steps p{
    font-size:9px !important;
    line-height:1.3 !important;
  }

  #legalModal .interface-guide-wrap{
    margin-top:9px !important;
    padding-top:8px !important;
  }

  #legalModal .interface-guide-wrap h3{
    margin-bottom:3px !important;
    font-size:12px !important;
  }

  #legalModal .interface-guide-wrap p{
    margin-bottom:6px !important;
    font-size:9.5px !important;
  }

  #legalModal .interface-guide-link{
    height:128px !important;
    overflow:hidden !important;
  }

  #legalModal .interface-guide-link img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:top center !important;
  }

  /* Longer legal tabs become multi-column before scaling, keeping text readable. */
  #legalModal [data-legal-panel="terms"].active,
  #legalModal [data-legal-panel="copyright"].active,
  #legalModal [data-legal-panel="disclaimer"].active,
  #legalModal [data-legal-panel="notice"].active{
    columns:2;
    column-gap:28px;
  }

  #legalModal [data-legal-panel="terms"] h2,
  #legalModal [data-legal-panel="copyright"] h2,
  #legalModal [data-legal-panel="disclaimer"] h2,
  #legalModal [data-legal-panel="notice"] h2,
  #legalModal [data-legal-panel="terms"] .cantaimy-story-kicker,
  #legalModal [data-legal-panel="copyright"] .cantaimy-story-kicker,
  #legalModal [data-legal-panel="disclaimer"] .cantaimy-story-kicker,
  #legalModal [data-legal-panel="notice"] .cantaimy-story-kicker{
    column-span:all;
  }

  #legalModal [data-legal-panel="terms"] h3,
  #legalModal [data-legal-panel="terms"] p,
  #legalModal [data-legal-panel="terms"] ul,
  #legalModal [data-legal-panel="copyright"] h3,
  #legalModal [data-legal-panel="copyright"] p,
  #legalModal [data-legal-panel="copyright"] ul,
  #legalModal [data-legal-panel="disclaimer"] h3,
  #legalModal [data-legal-panel="disclaimer"] p,
  #legalModal [data-legal-panel="disclaimer"] ul,
  #legalModal [data-legal-panel="notice"] h3,
  #legalModal [data-legal-panel="notice"] p,
  #legalModal [data-legal-panel="notice"] ul{
    break-inside:avoid;
  }

  #legalModal .cantaimy-name-parts{
    margin:10px 0 !important;
    gap:7px !important;
  }

  #legalModal .cantaimy-name-parts > div{
    padding:9px 10px !important;
  }

  #legalModal .cantaimy-name-parts strong{
    margin-bottom:3px !important;
    font-size:16px !important;
  }

  #legalModal .cantaimy-name-parts span{
    font-size:9px !important;
    line-height:1.3 !important;
  }

  #legalModal .cantaimy-story-quote{
    margin:10px 0 2px !important;
    padding:9px 11px !important;
    font-size:13px !important;
  }

  #legalModal .legal-foot{
    margin-top:7px !important;
    padding-top:7px !important;
  }
}

/* Mobile/tablet keeps the current scrollable, readable model. */
@media (max-width:820px){
  #legalModal .legal-modal-card{
    transform:none !important;
    max-height:90dvh !important;
    overflow:auto !important;
  }
}
