/* mobile-optimized.css */
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif; background:#fafafa; }
.hero { position: relative; width: 100%; max-width:1080px; margin:0 auto; overflow:hidden; border-radius:12px; }
.hero img { width:100%; height:clamp(160px,28vw,300px); object-fit:cover; display:block; }
.hero__overlay { position:absolute; inset:0; display:grid; place-content:center; padding:0 16px; color:#fff; text-align:left; background:linear-gradient(to bottom, rgba(0,0,0,.25), rgba(0,0,0,.45)); }
.hero__overlay h1 { font-size:clamp(18px,4.8vw,28px); margin:0 0 6px; }
.hero__overlay p { font-size:clamp(12px,3.6vw,16px); margin:0 0 12px; opacity:.9; }
.hero__overlay .btn { display:inline-block; background:#1677ff; color:#fff; text-decoration:none; padding:10px 14px; border-radius:10px; font-size:14px; }
.container, #wizard { width:min(960px, 100% - 24px); margin:12px auto 20px; }
.card { background:#fff; border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.06); padding:16px; }
input, select, .ant-input, .ant-select-selector, .ant-picker { min-height:44px; font-size:16px; }
.table-scroll { overflow-x:auto; -webkit-overflow-scrolling:touch; }
.table-scroll table { min-width:720px; }
@media (max-width:600px){
  .form-grid { display:block; }
  .ant-descriptions-bordered .ant-descriptions-item-label,
  .ant-descriptions-bordered .ant-descriptions-item-content { padding:8px 10px; }
  .ant-steps { padding:0 6px; }
  .ant-steps-item-title { font-size:12px; }
  .ant-steps-item-icon { width:22px; height:22px; line-height:22px; }
}
.modal { height:auto; max-height:calc(var(--vh)*90); overflow:auto; }