/* Desktop layout refinement for UbayBian v0.4.1 */
@media (min-width: 1100px){
  body{padding:12px 14px 0;}
  .shell{
    width:min(96vw,1540px);
    max-width:1540px;
    min-height:calc(100vh - 12px);
    display:flex;
    flex-direction:column;
    border-radius:28px 28px 0 0;
  }
  .topbar{
    min-height:70px;
    padding:12px 28px;
    gap:24px;
  }
  .brand{font-size:21px;}
  .brand-icon{font-size:29px;}
  .top-nav button{font-size:13px;padding:8px 13px;}
  .quiet{padding:9px 15px;}
  main{
    flex:1;
    min-height:0;
    padding:22px 26px 24px;
  }
  footer{padding:14px 26px;}

  .app-main-grid{
    grid-template-columns:300px minmax(0,1fr);
    gap:22px;
    min-height:calc(100vh - 152px);
    align-items:stretch;
  }
  .side-menu{
    height:100%;
    gap:14px;
  }
  .side-profile{padding:16px 17px;}
  .profile-avatar{width:50px;height:50px;font-size:31px;}
  .profile-info h2{font-size:17px;}
  .profile-info p{font-size:11px;}
  .xp-main,.coin-main,.xp-level{font-size:11px;padding:5px 9px;}
  .badge-card{padding:15px 16px;min-height:128px;}
  .badge-title{font-size:12px;margin-bottom:10px;}
  .badge-empty{font-size:11px;line-height:1.45;}
  .badge-chip{padding:8px 9px;}
  .badge-name{font-size:11px;}
  .badge-desc{font-size:10px;}
  .side-tile{
    padding:14px 15px;
    min-height:68px;
  }
  .side-tile-icon{width:42px;height:42px;font-size:22px;}
  .side-tile-text{font-size:13px;}
  .side-tile-sub{font-size:11px;}

  .main-col{height:100%;}
  .main-col>div{
    height:100%;
    display:grid;
    grid-template-rows:auto auto auto minmax(150px,1fr);
    gap:14px;
  }
  .hero-daily{
    min-height:150px;
    padding:26px 30px;
    border-radius:28px;
  }
  .hero-daily:after{width:230px;height:230px;right:-45px;top:-70px;}
  .hero-kicker{font-size:11px;}
  .hero-text h1{font-size:38px;margin-bottom:8px;}
  .hero-text p{font-size:13px;max-width:760px;}
  .hero-meta{font-size:11px;margin-top:10px;}
  .hero-trophy{font-size:62px;margin-right:16px;}

  .controls-panel{
    margin-top:0;
    padding:18px 20px;
    border-radius:22px;
  }
  .controls-row{gap:10px;}
  .controls-pill{padding:8px 12px;font-size:12px;}
  .control-label{font-size:10px;}
  .controls-pill select{font-size:12px;min-width:115px;}
  .start-row{margin-top:14px;gap:10px;}
  .start-btn,.review-btn,.primary{padding:11px 20px;font-size:13px;}
  .review-info,.start-status{font-size:11px;}

  .rules-strip{margin-top:0;gap:9px;}
  .rules-strip span{font-size:10px;padding:7px 11px;}

  .today-summary{
    margin-top:0;
    min-height:150px;
    padding:22px 24px;
    border-radius:20px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,rgba(13,71,161,.96),rgba(10,86,171,.88));
  }
  .today-summary strong{font-size:15px;}
  .today-summary p{font-size:12px;max-width:720px;line-height:1.6;margin-top:7px;}
  .today-summary:after{
    content:"🤖";
    position:absolute;
    right:34px;
    bottom:-14px;
    font-size:112px;
    line-height:1;
    opacity:.13;
    transform:rotate(-8deg);
    pointer-events:none;
  }

  .quiz-card,.result-panel,.report-card,.robotlab-card{min-height:calc(100vh - 188px);}
}

@media (min-width: 1500px){
  .shell{width:min(97vw,1600px);max-width:1600px;}
  .app-main-grid{grid-template-columns:320px minmax(0,1fr);gap:24px;}
  .hero-text h1{font-size:42px;}
  .hero-daily{padding:30px 34px;}
}
