/* Good Sundays in a physical, floating tablet shell. */
@media (min-width:640px){
  html,body{height:100%;overflow:hidden}
  body{
    display:grid;place-items:center;padding:clamp(18px,4vw,64px);
    background:radial-gradient(900px 600px at 15% 0%,#f9fbf6 0%,transparent 65%),linear-gradient(145deg,#d4e1d5,#edf1e9 48%,#cbdacf);
  }
  .shell{
    position:relative;isolation:isolate;
    width:min(1240px,calc(100vw - clamp(36px,8vw,128px)));
    height:min(820px,calc(100vh - clamp(36px,8vw,128px)));
    min-height:0;margin:0;overflow:hidden;
    grid-template-columns:220px minmax(0,1fr);
    border:16px solid #202823;border-top-width:28px;border-bottom-width:25px;border-radius:42px;
    background:#f8faf6;
    box-shadow:0 2px 0 rgba(255,255,255,.65) inset,0 5px 8px rgba(17,34,23,.18),0 34px 62px rgba(17,44,28,.26),0 82px 120px rgba(17,44,28,.18);
    transform:translateZ(0);
  }
  .shell::before{content:'';position:absolute;z-index:20;top:-19px;left:50%;width:9px;height:9px;transform:translateX(-50%);border-radius:50%;background:#0b110d;box-shadow:0 0 0 2px #354138,inset 0 1px 1px rgba(255,255,255,.14)}
  .sidebar{position:relative;top:auto;height:auto;min-height:0;overflow:auto;border-radius:23px 0 0 23px;padding:23px 14px 17px;background:linear-gradient(160deg,#f4f8f2,#eaf1e9)}
  main{height:100%;overflow:auto;border-radius:0 23px 23px 0}
  .topbar{position:sticky;top:0;padding:0 24px;height:60px;background:rgba(250,252,248,.9)}
  .view{padding:24px 30px 48px;max-width:none}
  .brand{font-size:26px}.brand-note{margin-bottom:20px}.sidebar nav a{padding:8px 9px;font-size:12px}.free-chip{font-size:8px}
  .signal{min-height:150px}
}
@media (min-width:640px) and (max-width:900px){
  .shell{width:calc(100vw - 36px);height:calc(100vh - 36px);grid-template-columns:170px minmax(0,1fr);border-width:12px;border-top-width:22px;border-bottom-width:20px;border-radius:32px}
  .sidebar{left:auto;width:auto;z-index:auto;box-shadow:none;transition:none}.sidebar.open{left:auto;box-shadow:none}.menu-btn{display:none}
  .view{padding:22px 20px 40px}.dash-kpis,.dash-grid{grid-template-columns:1fr 1fr}.recommend{grid-template-columns:30px 1fr}.recommend-actions{grid-column:2}
}
@media (max-width:639px){
  body{background:#eef3ec}
}
