/* =========================================================
   REAL TREZZANO V1.03 - iPHONE APP EXPERIENCE
   Solo smartphone: il desktop/tablet resta invariato.
   ========================================================= */

.rt-app-bottom-nav{display:none}

@media (max-width:640px){
  :root{
    --app-bg:#f3f4f6;
    --app-card:#ffffff;
    --app-ink:#111317;
    --app-muted:#6b7280;
    --app-line:#e5e7eb;
    --app-yellow:#ffd000;
    --app-radius:20px;
    --app-header-h:64px;
    --app-bottom-h:72px;
  }

  html{
    background:var(--app-bg);
    overscroll-behavior-y:none;
    -webkit-text-size-adjust:100%;
  }
  body{
    background:var(--app-bg)!important;
    padding-top:calc(var(--app-header-h) + env(safe-area-inset-top,0px))!important;
    padding-bottom:calc(var(--app-bottom-h) + env(safe-area-inset-bottom,0px))!important;
    min-height:100dvh;
    -webkit-font-smoothing:antialiased;
    touch-action:manipulation;
  }

  /* Header compatto da app */
  .rt-mobile-header{
    height:calc(var(--app-header-h) + env(safe-area-inset-top,0px))!important;
    padding:env(safe-area-inset-top,0px) 14px 0!important;
    background:rgba(12,13,15,.96)!important;
    backdrop-filter:saturate(160%) blur(18px);
    -webkit-backdrop-filter:saturate(160%) blur(18px);
    border-bottom:0!important;
    box-shadow:0 1px 0 rgba(255,255,255,.08),0 8px 24px rgba(0,0,0,.14)!important;
  }
  .rt-mobile-menu-btn{
    width:42px!important;height:42px!important;border-radius:14px!important;
    background:#1d1f22!important;
  }
  .rt-mobile-home-btn{display:none!important}
  .rt-mobile-brand{justify-content:flex-start!important}
  .rt-mobile-brand img{width:36px!important;height:40px!important;border-radius:9px!important}
  .rt-mobile-brand strong{font-size:14px!important;letter-spacing:.3px!important}
  .rt-mobile-brand small{font-size:10px!important;color:#aeb4bc!important;letter-spacing:.25px!important}

  /* Bottom tab bar stile app */
  .rt-app-bottom-nav{
    position:fixed;
    z-index:1060;
    left:0;right:0;bottom:0;
    height:calc(var(--app-bottom-h) + env(safe-area-inset-bottom,0px));
    padding:7px 7px env(safe-area-inset-bottom,0px);
    display:grid;
    grid-template-columns:repeat(5,1fr);
    align-items:start;
    background:rgba(250,250,251,.96);
    backdrop-filter:saturate(180%) blur(20px);
    -webkit-backdrop-filter:saturate(180%) blur(20px);
    border-top:1px solid rgba(17,19,23,.09);
    box-shadow:0 -10px 30px rgba(0,0,0,.07);
  }
  .rt-app-tab{
    appearance:none;border:0;background:transparent;text-decoration:none;
    color:#737982;min-width:0;height:58px;padding:4px 2px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    font-size:10px;font-weight:800;letter-spacing:.05px;
    -webkit-tap-highlight-color:transparent;
  }
  .rt-app-tab .tab-ico{
    width:29px;height:29px;border-radius:10px;
    display:grid;place-items:center;font-size:19px;line-height:1;
  }
  .rt-app-tab.active{color:#101216}
  .rt-app-tab.active .tab-ico{background:#fff0a8;color:#111;border:1px solid #f1d34d}
  .rt-app-tab.rt-app-add{transform:translateY(-13px);color:#111}
  .rt-app-tab.rt-app-add .tab-ico{
    width:52px;height:52px;border-radius:18px;background:var(--app-yellow);
    border:1px solid #dcb300;box-shadow:0 8px 18px rgba(167,132,0,.27);
    font-size:30px;font-weight:500;
  }
  .rt-app-tab.rt-app-add span:last-child{margin-top:-1px}

  /* Contenuto: niente effetto sito desktop compresso */
  .rt-global-content,.rt-workspace,.rt-main-v3,.app-main{
    background:var(--app-bg)!important;
  }
  .app-main,.rt-main-v3{
    padding:14px 12px 24px!important;
  }
  .rt-footer,.build-version{display:none!important}

  .page-heading{
    background:transparent!important;
    padding:4px 2px 2px!important;
    margin:0 0 12px!important;
    gap:10px!important;
  }
  .page-heading h1,.page-heading h2{font-size:29px!important;line-height:1.02!important;letter-spacing:-.7px!important}
  .page-heading p:not(.eyebrow){color:var(--app-muted)!important;font-size:13px!important;line-height:1.35!important}
  .eyebrow{color:#9b7e00!important;letter-spacing:.65px!important}

  /* Card native-like */
  .content-card,.rt-panel,.dash-card,.settings-section,.calendar-shell,
  .team-schedule-card,.team-schedule-head,.activity-list-panel,.rt-filterbar,
  .month-activities-collapsed,.roster-summary>*{
    background:var(--app-card)!important;
    border:1px solid var(--app-line)!important;
    border-radius:var(--app-radius)!important;
    box-shadow:0 3px 14px rgba(17,24,39,.045)!important;
  }
  .content-card,.settings-section,.calendar-shell,.team-schedule-card{padding:14px!important}
  .rt-dashboard-grid{gap:12px!important}
  .rt-panel{padding:14px!important}
  .rt-panel-head{align-items:center!important;gap:8px!important}
  .rt-panel-head h2{font-size:18px!important}

  /* CTA e controlli come app */
  button,.primary,.secondary-button,.action-link,.rt-primary,.rt-secondary-search,
  input,select,textarea{
    border-radius:14px!important;
  }
  button,.primary,.secondary-button,.action-link,.rt-primary,.rt-secondary-search{
    min-height:48px!important;font-weight:850!important;
    -webkit-tap-highlight-color:transparent;
  }
  input,select,textarea{
    min-height:48px!important;background:#fff!important;border:1px solid #d8dde4!important;
    box-shadow:none!important;padding-left:13px!important;padding-right:13px!important;
  }
  textarea{min-height:100px!important;padding-top:12px!important}
  select{background-color:#fff!important}
  label{font-size:12px!important;letter-spacing:.15px!important}

  /* Home: vere schede mobile */
  .dashboard-v3 .rt-main-v3{padding-top:10px!important}
  .dashboard-v3 .rt-topbar{display:none!important}
  .new-action-row.home-main-actions{
    display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin:5px 0 12px!important;
  }
  .new-action-row.home-main-actions a{width:100%!important;border-radius:16px!important;min-height:52px!important}
  .rt-filterbar{
    display:grid!important;grid-template-columns:1fr!important;gap:9px!important;padding:12px!important;
    margin-bottom:12px!important;
  }
  .home-away{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:6px!important}
  .home-away button{min-height:42px!important}
  .searchbox{width:100%!important}
  .searchbox input{width:100%!important}
  .rt-calendar-panel{overflow:hidden!important}
  .mini-calendar{font-size:12px!important}
  .dashboard-events .match-row,.dashboard-events>*{
    border-radius:16px!important;
  }
  .team-preview-head{display:none!important}
  #homeTeamsPreview>*{border-radius:14px!important;margin-bottom:8px!important}

  /* Tabelle: su iPhone diventano scroll orizzontale, senza schiacciare */
  table{font-size:13px!important}
  .content-card:has(table),.settings-section:has(table){overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  table{min-width:680px}

  /* Righe elenco in forma di card */
  .team-list-row,.match-row,.player-row,.observed-player-row,.profile-row-v853,
  .linear-appointment,.compact-appointment,.rt745-appointment,.tournament-card{
    background:#fff!important;border:1px solid var(--app-line)!important;border-radius:18px!important;
    box-shadow:0 2px 10px rgba(17,24,39,.035)!important;
  }

  /* Modali: sheet a tutto schermo come app */
  dialog,.profile-dialog-v4{
    width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;
    margin:0!important;border:0!important;border-radius:0!important;padding:0!important;
    inset:0!important;background:#f5f6f7!important;
  }
  dialog::backdrop{background:rgba(0,0,0,.38)!important;backdrop-filter:blur(2px)}
  dialog .dialog-body{
    height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;
    padding:calc(64px + env(safe-area-inset-top,0px)) 14px calc(24px + env(safe-area-inset-bottom,0px))!important;
    background:#f5f6f7!important;
  }
  .profile-dialog-v4 .dialog-x,.dialog-x{
    position:fixed!important;z-index:10!important;top:calc(10px + env(safe-area-inset-top,0px))!important;right:12px!important;
    width:44px!important;height:44px!important;border-radius:50%!important;background:#fff!important;
    color:#111!important;border:1px solid #dedfe2!important;box-shadow:0 3px 12px rgba(0,0,0,.1)!important;
  }
  .profile-dialog-head,.dialog-body>h2,.dialog-body>h3{position:relative!important}
  .form-grid label,.dialog-body label{background:#fff;border-radius:16px;padding:10px 11px;border:1px solid #e4e6e9}
  .form-grid label input,.form-grid label select,.form-grid label textarea,.dialog-body label input,.dialog-body label select,.dialog-body label textarea{
    margin-top:7px!important;border:0!important;background:#f5f6f8!important;
  }

  /* Toast e pannelli sopra la bottom bar */
  .toast{bottom:calc(var(--app-bottom-h) + 12px + env(safe-area-inset-bottom,0px))!important;left:12px!important;right:12px!important;width:auto!important}
  .floating-panel{left:10px!important;right:10px!important;bottom:calc(var(--app-bottom-h) + 10px)!important;max-height:58dvh!important;border-radius:20px!important}

  /* Drawer più simile a pannello app */
  .rt-mobile-drawer{width:min(88vw,360px)!important;border-radius:0 24px 24px 0!important;overflow:hidden!important}
  .rt-mobile-nav{padding:12px!important;gap:7px!important}
  .rt-mobile-nav-link{min-height:54px!important;border-radius:15px!important;font-size:15px!important}

  /* Non schiacciare il calendario mensile: swipe naturale */
  .calendar-layout-v5,.calendar-shell{scrollbar-width:none}
  .calendar-layout-v5::-webkit-scrollbar,.calendar-shell::-webkit-scrollbar{display:none}

  /* iPhone landscape */
  @media (orientation:landscape) and (max-height:500px){
    :root{--app-header-h:54px;--app-bottom-h:58px}
    .rt-app-tab{height:48px}.rt-app-tab.rt-app-add{transform:translateY(-8px)}
    .rt-app-tab.rt-app-add .tab-ico{width:44px;height:44px;border-radius:15px}
  }
}

@media print{
  .rt-app-bottom-nav,.rt-mobile-header,.rt-mobile-drawer,.rt-mobile-overlay{display:none!important}
  body{padding-top:0!important;padding-bottom:0!important;background:#fff!important}
}
