/* Tablet-first and hybrid-app overrides */
*{-webkit-tap-highlight-color:transparent}
html{min-height:100%;background:var(--cream)}
body{min-height:100vh;min-height:100dvh;font-family:Arial,'Apple SD Gothic Neo','Noto Sans KR',sans-serif;overscroll-behavior-y:none}
.app-shell{min-height:100vh;min-height:100dvh}
.bottom-nav{display:none}
button,input,select,textarea{touch-action:manipulation}

@media (max-width:1024px){
  .topbar{height:72px;padding-left:32px;padding-right:32px;padding-top:env(safe-area-inset-top)}
  main{padding:26px 28px calc(105px + env(safe-area-inset-bottom))}
  .hero{min-height:330px;padding:46px 42px}
  .hero h1{font-size:38px}
  .dashboard-grid{grid-template-columns:1fr;gap:18px}
  .course-results{grid-template-columns:repeat(2,1fr)}
  .round-card{padding:26px}
  .primary-btn,.course-search button,.course-item{min-height:48px}
  .score-input{width:42px;height:42px;font-size:16px}
  .score-turn .score-table{min-width:0}
  .bottom-nav{position:fixed;z-index:40;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(360px,calc(100% - 32px));height:66px;display:grid;grid-template-columns:1fr 82px 1fr;align-items:center;gap:0;margin:0;padding:0 18px;background:rgba(255,254,250,.94);border:1px solid rgba(22,60,46,.12);border-radius:22px;box-shadow:0 12px 35px rgba(19,56,43,.2);backdrop-filter:blur(18px)}
  .bottom-nav-item{height:58px;border:0;background:none;color:#8b958f;font-size:11px;font-weight:700;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center}
  .bottom-nav-item span{font-size:20px;line-height:18px}
  .bottom-nav-item.active{color:var(--green)}
  .bottom-add{width:58px;height:58px;justify-self:center;align-self:end;margin-bottom:14px;display:grid;place-items:center;border:5px solid var(--cream);border-radius:50%;background:var(--green);color:var(--lime);box-shadow:0 8px 20px rgba(22,60,46,.3);font-size:30px;line-height:1}  .toast{bottom:calc(95px + env(safe-area-inset-bottom))}
}

@media (max-width:700px){
  .topbar{height:64px;padding-left:18px;padding-right:18px}
  .topbar .profile{display:none}
  main{padding:18px 14px calc(105px + env(safe-area-inset-bottom))}
  .hero{min-height:390px;padding:34px 24px;align-items:flex-start;border-radius:20px}
  .hero h1{font-size:30px}.hero p{font-size:13px}.hero-art{width:115%;height:55%;opacity:.65}
  .panel,.round-card{border-radius:15px;padding:20px 16px}
  .stats>div{padding:4px 9px}.stats strong{font-size:26px}.stats small{display:none}
  .round-heading,.page-title{display:block}.round-heading h1,.page-title h1{font-size:28px}
  .page-title .primary-btn{display:none}
  .steps{margin-top:20px;justify-content:space-between}.steps li:not(:last-child):after{width:13px;margin:0 5px}.steps li{font-size:9px}.steps span{margin-right:4px}
  .course-results{grid-template-columns:1fr}.course-search input{min-width:0;font-size:16px}.course-search button{padding:0 18px}
  .score-top{display:block}.round-meta{margin-top:15px}.round-meta label{flex:1}.round-meta input,.round-meta select{width:100%;height:44px;font-size:16px}
  .score-summary{justify-content:space-between;gap:8px;padding:14px 10px}.score-summary div{min-width:60px}.score-summary .total{padding-left:12px}
  .score-turn .score-table th:first-child{width:44px}.score-turn .score-input{width:100%;height:40px;font-size:15px}
  .memo-row textarea{font-size:16px;min-height:90px}.save-row{display:block}.save-row .primary-btn{width:100%;margin-top:14px;min-height:52px}
  .record-cards{grid-template-columns:1fr}.record-card{padding:15px 12px}
}

@media (orientation:landscape) and (max-height:600px){
  .hero{min-height:280px}.hero-art{height:100%;width:55%}
  .bottom-nav{height:58px;bottom:calc(7px + env(safe-area-inset-bottom))}.bottom-add{width:52px;height:52px;margin-bottom:10px}
  main{padding-bottom:calc(85px + env(safe-area-inset-bottom))}
}
