/* Spacious desktop and tablet canvas for the signed-in FM Performance app.
   All rules are intentionally limited to widths above the mobile layout. */
@media (min-width:700px){
  body:has(#app>.shell:not(.new-home-shell):not(:has(.fm-market-page)):not(:has(.fm-ref))){
    min-height:100vh!important;
    background:#fff!important;
    background-image:none!important;
  }

  #app>.shell:not(.new-home-shell):not(:has(.fm-market-page)):not(:has(.fm-ref)){
    width:100%!important;
    max-width:none!important;
    min-height:100vh!important;
    margin:0!important;
    padding:24px clamp(24px,4vw,64px) 132px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  #app>.shell:not(.new-home-shell):not(:has(.welcome-poster-page)):not(:has(.fm-market-page)):not(:has(.fm-ref))>header.top{
    width:100%!important;
    max-width:none!important;
    min-height:74px!important;
    margin:0 0 24px!important;
    padding:8px 0 16px!important;
    border-bottom:1px solid #e2eaf0!important;
  }

  #app>.shell:not(.new-home-shell):not(:has(.fm-market-page)):not(:has(.fm-ref)) .home-dashboard,
  #app>.shell:not(.new-home-shell):not(:has(.fm-market-page)):not(:has(.fm-ref)) .planner-page,
  #app>.shell:not(.new-home-shell):not(:has(.fm-market-page)):not(:has(.fm-ref)) .mental-page,
  #app>.shell:not(.new-home-shell):not(:has(.fm-market-page)):not(:has(.fm-ref)) .bilan-dashboard{
    width:100%;
    max-width:1480px;
    margin-left:auto;
    margin-right:auto;
  }

  .planner-page .planner-week-strip{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:10px!important;
    padding:14px!important;
  }
  .planner-page .planner-day{
    min-width:0!important;
    min-height:168px!important;
    height:auto!important;
    padding:13px 10px!important;
    cursor:pointer;
    transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
  }
  .planner-page .planner-day:hover{
    transform:translateY(-2px);
    border-color:#1685df!important;
    box-shadow:0 8px 20px rgba(14,73,114,.12)!important;
  }
  .planner-page .planner-day:focus-visible{
    outline:3px solid #1685df!important;
    outline-offset:3px;
  }
  .planner-page .planner-day-head{
    width:100%;
    min-height:52px!important;
    padding:4px 5px 10px!important;
    display:flex!important;
    flex-direction:row!important;
    justify-content:space-between!important;
    align-items:center!important;
    gap:6px!important;
    cursor:pointer;
  }
  .planner-page .planner-day-head span{font-size:12px!important;line-height:1.2!important;}
  .planner-page .planner-day-head strong{font-size:25px!important;line-height:1!important;}
  .planner-page .planner-day-sessions{min-height:54px;gap:6px!important;}
  .planner-page .planner-day-add{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px;
    width:100%!important;
    min-height:42px!important;
    height:auto!important;
    margin:8px 0 0!important;
    padding:7px 8px!important;
    border-radius:10px!important;
    background:#edf7ff!important;
    color:#126da8!important;
    font-size:20px!important;
  }
  .planner-page .planner-day-add::after{
    content:"Planifier";
    font-size:12px;
    line-height:1.1;
    font-weight:700;
  }

  .fm-running-shell{
    width:100%!important;
    max-width:none!important;
    min-height:100vh!important;
    margin:0!important;
    padding:0 0 132px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .fm-running-shell .fm-running-prototype .fm-app{
    width:min(100%,1440px)!important;
    max-width:none!important;
    min-height:100vh;
    margin:0 auto!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .fm-running-shell .fm-running-prototype .fm-head{
    padding:26px clamp(28px,5vw,72px) 24px!important;
    background:linear-gradient(125deg,#081e42,#0c3671)!important;
    border-bottom:0!important;
  }
  .fm-running-shell .fm-running-prototype .fm-content{
    width:min(100%,1320px);
    margin:0 auto;
    padding:32px clamp(28px,5vw,72px) 44px!important;
  }
  .fm-running-shell .fm-running-prototype .fm-tabs{padding:10px clamp(20px,4vw,60px)!important;}
  .fm-running-shell .fm-running-prototype .fm-form{padding:24px!important;}

  /* Center the date within each planning tile and keep scheduling as one
     compact, clearly clickable plus control. */
  .planner-page .planner-day-head{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:5px!important;
    min-height:66px!important;
    text-align:center!important;
  }
  .planner-page .planner-day-head span,
  .planner-page .planner-day-head strong{
    display:block!important;
    width:100%!important;
    text-align:center!important;
  }
  .planner-page .planner-day-add{
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    height:38px!important;
    margin:10px auto 0!important;
    padding:0!important;
    border:1px solid #a9d8fa!important;
    border-radius:50%!important;
    background:#edf7ff!important;
    color:#126da8!important;
    font-size:24px!important;
    line-height:1!important;
  }
  .planner-page .planner-day-add::after{content:none!important;}

  /* Carry the dotted brand treatment across the complete desktop viewport. */
  #app>.shell:not(.new-home-shell):not(:has(.welcome-poster-page))>header.top{
    left:50%!important;
    width:100vw!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
    padding-left:clamp(24px,4vw,64px)!important;
    padding-right:clamp(24px,4vw,64px)!important;
    background-image:radial-gradient(circle,rgba(22,133,223,.44) 1px,transparent 1.6px)!important;
    background-size:18px 18px!important;
    border-bottom:3px solid #1685df!important;
  }

  .fm-running-shell .fm-running-prototype .fm-head{
    position:relative!important;
    left:50%!important;
    width:100vw!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
    background-color:#071a3a!important;
    background-image:
      radial-gradient(circle,rgba(22,133,223,.92) 1.5px,transparent 2px),
      linear-gradient(125deg,#081e42,#0c3671)!important;
    background-size:22px 22px,100% 100%!important;
    border-bottom:3px solid #1685df!important;
  }
}

@media (min-width:700px){.new-home .app-window picture{display:block;width:100%;}}

@media (min-width:700px){
  #app>.shell:not(.new-home-shell):not(:has(.welcome-poster-page))>header.top{
    min-height:108px!important;
    padding-top:14px!important;
    padding-bottom:14px!important;
    background-position:top left!important;
  }
}
