/* 카탈로그 밖의 화면 (체험 신청·사장님 고치는 곳·안내) — 어르신도 보기 쉽게 크게 */
body { margin: 0; background: #F5F6F8; color: #15171A; font: 400 17px/1.6 'Noto Sans KR', sans-serif; }
a { color: #1D4ED8; }
.wrap { max-width: 520px; margin: 0 auto; padding: 0 16px 48px; box-sizing: border-box; }
.top { background: #15171A; color: #FFFFFF; padding: 20px 16px; }
.top .wrap { padding-bottom: 0; }
.top h1 { margin: 0; font-size: 22px; font-weight: 900; line-height: 1.35; }
.top p { margin: 6px 0 0; color: #D1D5DB; font-size: 15px; }
.card { background: #FFFFFF; border-radius: 16px; padding: 18px; margin-top: 14px; display: flex; flex-direction: column; gap: 14px; }
.card h2 { margin: 0; font-size: 19px; font-weight: 700; }
.hint { margin: 0; font-size: 14px; color: #4B5563; }
label { display: flex; flex-direction: column; gap: 6px; font-weight: 700; font-size: 16px; }
input[type=text], input[type=tel], textarea { font: inherit; font-weight: 400; min-height: 52px; padding: 10px 14px; border: 1px solid #C9CDD3;
  border-radius: 10px; box-sizing: border-box; width: 100%; background: #FFFFFF; color: #15171A; }
textarea { min-height: 96px; resize: vertical; }
.check { flex-direction: row; align-items: flex-start; gap: 10px; font-weight: 500; font-size: 15px; }
.check input { width: 24px; height: 24px; margin: 2px 0 0; flex-shrink: 0; }
.btn { font: inherit; font-weight: 700; display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 56px; border: 0; border-radius: 12px;
  background: #15171A; color: #FFFFFF; font-size: 18px; text-decoration: none; cursor: pointer; width: 100%; box-sizing: border-box; }
.btn.yellow { background: #FACC15; color: #15171A; }
.btn.light { background: #FFFFFF; color: #15171A; border: 2px solid #15171A; }
.btn.small { min-height: 44px; font-size: 15px; width: auto; padding: 0 14px; }
.msg { background: #DCFCE7; color: #14532D; border-radius: 12px; padding: 14px 16px; font-weight: 700; margin-top: 14px; }
.err { background: #FEE2E2; color: #7F1D1D; border-radius: 12px; padding: 14px 16px; margin-top: 14px; }
.err p { margin: 0; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
/* 메뉴(품목) 표 */
.rows { display: flex; flex-direction: column; gap: 10px; }
.row { display: grid; grid-template-columns: 5.5em minmax(0, 1fr); gap: 6px; padding: 10px; border: 1px solid #E5E7EB; border-radius: 12px; }
.row input { min-height: 46px; }
.row .full { grid-column: 1 / -1; }
.row .remove { flex-direction: row; align-items: center; gap: 8px; font-weight: 500; font-size: 14px; color: #7F1D1D; }
.row .remove input { width: 22px; height: 22px; }
/* 사진 */
.thumbs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.thumbs figure { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.thumbs img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 10px; display: block; }
.hero img { width: 100%; max-height: 260px; object-fit: cover; border-radius: 12px; display: block; }
.sticky-save { position: sticky; bottom: 0; padding: 12px 0; background: linear-gradient(transparent, #F5F6F8 30%); }
.pick { margin: 0; background: #FEF3C7; color: #78350F; border-radius: 10px; padding: 10px 14px; font-weight: 700; font-size: 15px; }
.btn:disabled { opacity: .6; }
.pickers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.pickers .btn { font-size: 16px; min-height: 60px; position: relative; overflow: hidden; }
.file-hidden { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
