/* Shared smart-device navigation and portrait recommendation. Desktop remains unchanged. */
.smart-nav-toggle{display:none}
.smart-nav-drawer{display:none}
.orientation-recommendation{display:none}

@media(max-width:1180px){
  .site-header .header-inner{position:relative}
  .site-header .nav{display:none!important}
  .smart-nav-toggle{
    display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;
    border:1px solid var(--border-300,#DED8CF);border-radius:12px;background:#fff;color:var(--forest-950,#0C231E);cursor:pointer;
  }
  .smart-nav-toggle-lines,.smart-nav-toggle-lines::before,.smart-nav-toggle-lines::after{display:block;width:22px;height:2px;border-radius:2px;background:currentColor;content:"";transition:transform .18s ease,opacity .18s ease}
  .smart-nav-toggle-lines{position:relative}.smart-nav-toggle-lines::before{position:absolute;left:0;top:-7px}.smart-nav-toggle-lines::after{position:absolute;left:0;top:7px}
  .smart-nav-toggle[aria-expanded="true"] .smart-nav-toggle-lines{background:transparent}
  .smart-nav-toggle[aria-expanded="true"] .smart-nav-toggle-lines::before{transform:translateY(7px) rotate(45deg)}
  .smart-nav-toggle[aria-expanded="true"] .smart-nav-toggle-lines::after{transform:translateY(-7px) rotate(-45deg)}
  .site-header .header-actions>.logout-link{display:none}
  .smart-nav-drawer{
    display:block;position:fixed;inset:0;z-index:1700;pointer-events:none;visibility:hidden;
  }
  .smart-nav-drawer.is-open{pointer-events:auto;visibility:visible}
  .smart-nav-backdrop{position:absolute;inset:0;z-index:0;background:rgba(12,35,30,.48);opacity:0;transition:opacity .2s ease}
  .smart-nav-drawer.is-open .smart-nav-backdrop{opacity:1}
  .smart-nav-panel{
    position:absolute;right:0;top:0;z-index:1;height:100%;width:min(86vw,390px);padding:calc(18px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));
    background:var(--ivory-50,#FDFAF5);border-left:1px solid var(--border-300,#DED8CF);box-shadow:-22px 0 55px rgba(12,35,30,.16);
    transform:translateX(104%);transition:transform .22s ease;overflow:auto;
  }
  .smart-nav-drawer.is-open .smart-nav-panel{transform:translateX(0)}
  .smart-nav-head{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--border-300,#DED8CF)}
  .smart-nav-head strong{font-family:Georgia,"Times New Roman",serif;font-size:24px;color:var(--forest-950,#0C231E)}
  .smart-nav-close{width:42px;height:42px;border:1px solid var(--border-300,#DED8CF);border-radius:11px;background:#fff;color:var(--forest-950,#0C231E);font-size:26px;cursor:pointer}
  .smart-nav-menu-content{position:relative;z-index:2;display:block;visibility:visible;opacity:1}
  .smart-nav-links{position:relative;z-index:2;display:grid;gap:6px;padding:18px 0;visibility:visible;opacity:1}
  .smart-nav-links a{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:10px 12px;border-radius:11px;color:var(--forest-950,#0C231E);text-decoration:none;font-weight:750}
  .smart-nav-links a:hover,.smart-nav-links a.active{background:var(--sage-200,#DDE1D9)}
  .smart-nav-actions{position:relative;z-index:2;display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--border-300,#DED8CF);visibility:visible;opacity:1}
  .smart-nav-actions .btn,.smart-nav-actions .logout-link{width:100%;justify-content:center;text-align:center}
  .smart-nav-plan{display:flex;justify-content:center;margin-bottom:4px}
  body.smart-nav-open{overflow:hidden}
  html[data-theme="dark"] .smart-nav-toggle,html[data-theme="dark"] .smart-nav-close{background:#17352f;color:#f6f3ed;border-color:#31534b}
  html[data-theme="dark"] .smart-nav-panel{background:#102923;border-color:#31534b}
  html[data-theme="dark"] .smart-nav-head{border-color:#31534b}
  html[data-theme="dark"] .smart-nav-head strong,html[data-theme="dark"] .smart-nav-links a{color:#f6f3ed}
  html[data-theme="dark"] .smart-nav-links a:hover,html[data-theme="dark"] .smart-nav-links a.active{background:#25463e}
  html[data-theme="dark"] .smart-nav-actions{border-color:#31534b}
}

@media(max-width:1100px) and (orientation:portrait) and (pointer:coarse){
  .orientation-recommendation{
    position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:1600;
    display:grid;grid-template-columns:62px 1fr auto;gap:14px;align-items:center;padding:14px 14px;
    border:1px solid var(--sage-500,#A0BDB5);border-radius:18px;background:rgba(253,250,245,.97);box-shadow:0 18px 44px rgba(12,35,30,.18);backdrop-filter:blur(10px);
  }
  .orientation-recommendation[hidden]{display:none!important}
  .orientation-device{position:relative;width:46px;height:64px;margin:auto;border:4px solid var(--forest-800,#134339);border-radius:9px;animation:maqam-device-rotate 2.4s ease-in-out infinite;transform-origin:center}
  .orientation-device::before{content:"";position:absolute;left:50%;bottom:4px;width:5px;height:5px;border-radius:50%;background:var(--forest-800,#134339);transform:translateX(-50%)}
  .orientation-device::after{content:"↻";position:absolute;right:-25px;top:14px;color:var(--gold-600,#D39A4A);font-size:24px;font-weight:800}
  .orientation-copy strong{display:block;color:var(--forest-950,#0C231E);font-size:15px;margin-bottom:3px}
  .orientation-copy span{display:block;color:var(--muted-600,#5F6966);font-size:12px;line-height:1.45}
  .orientation-dismiss{align-self:start;width:34px;height:34px;border:0;border-radius:9px;background:var(--sand-100,#F1EDE6);color:var(--forest-950,#0C231E);font-size:21px;cursor:pointer}
  html[data-theme="dark"] .orientation-recommendation{background:rgba(16,41,35,.97);border-color:#41685e}
  html[data-theme="dark"] .orientation-copy strong{color:#f6f3ed}html[data-theme="dark"] .orientation-copy span{color:#b8c6c2}
  html[data-theme="dark"] .orientation-dismiss{background:#25463e;color:#f6f3ed}
}
@keyframes maqam-device-rotate{0%,28%,100%{transform:rotate(0deg)}50%,78%{transform:rotate(90deg)}}
@media(prefers-reduced-motion:reduce){.orientation-device{animation:none}.smart-nav-panel,.smart-nav-backdrop{transition:none}}
@media(max-width:500px){
  .orientation-recommendation{grid-template-columns:50px 1fr auto;gap:10px;padding:12px}
  .orientation-device{width:36px;height:51px;border-width:3px}
  .orientation-copy strong{font-size:14px}.orientation-copy span{font-size:11px}
}

/* v22.2 — The smart-device drawer mirrors the entitlement-aware Academy
   navigation. Keep it explicit so page-specific nav breakpoints cannot hide
   its contents. */
@media(max-width:1180px){
  .smart-nav-panel .smart-nav-links{display:grid!important;visibility:visible!important;opacity:1!important}
  .smart-nav-panel .smart-nav-menu-content{display:block!important;visibility:visible!important;opacity:1!important}
  .smart-nav-panel .smart-nav-links{display:grid!important;visibility:visible!important;opacity:1!important}
  .smart-nav-panel .smart-nav-links>a{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:3!important;color:var(--forest-950,#0C231E)!important}
  .smart-nav-panel .smart-nav-actions{display:grid!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:3!important}
}
