.mnm { max-width: 760px; margin: 0 auto; padding: 24px 12px 80px; }
.mnm h1 { font-size: 1.9rem; margin-bottom: .25rem; }
.mnm .lead { color: #555; }
.mnm-card { background: #fff; border: 1px solid #e3e0d6; border-radius: 10px; padding: 18px 18px 8px; margin: 18px 0; }
.mnm-card h3 { font-size: 1.15rem; color: #887840; margin-bottom: 12px; }
.mnm-card label { font-weight: 600; font-size: .9rem; margin-bottom: 2px; }
.mnm-card .form-control, .mnm-card .form-select { min-height: 44px; }
.mnm-card .hint { color: #777; font-size: .8rem; margin-top: 2px; }
.mnm-err { color: #b00020; font-size: .85rem; margin-top: 2px; }
.mnm-bigbtn { background: #887840; color: #fff; border: 0; border-radius: 8px; min-height: 52px; font-size: 1.1rem; width: 100%; font-weight: 600; }
.mnm-bigbtn:disabled { background: #bdb6a0; }
.mnm-formerr { background: #fdecea; border: 1px solid #f5c2c0; color: #8a1c14; border-radius: 8px; padding: 10px 14px; margin: 12px 0; }
.mnm-hidden { display: none; }
.mnm-trap { position: absolute; left: -5000px; height: 0; overflow: hidden; }

.mnm-order { max-width: 900px; margin: 0 auto; padding: 8px 10px 150px; }
.mnm-top { background: #fffdf7; padding: 10px 0 8px; border-bottom: 1px solid #e3e0d6; }
.mnm-top h2 { font-size: 1.25rem; margin: 0 0 6px; }
.mnm-tools { display: flex; gap: 8px; flex-wrap: wrap; }
.mnm-tools input { flex: 1 1 220px; min-height: 44px; }
.mnm-section h3 { font-size: 1.05rem; color: #887840; margin: 22px 0 4px; padding-bottom: 4px; border-bottom: 2px solid #887840; text-transform: uppercase; letter-spacing: .06em; }
.mnm-row { display: flex; align-items: center; gap: 10px; padding: 9px 0; border-bottom: 1px solid #eee; }
.mnm-name { flex: 1 1 auto; line-height: 1.25; }
.mnm-name small { display: block; color: #777; }
.mnm-price { flex: 0 0 auto; font-weight: 700; color: #887840; text-align: right; min-width: 92px; }
.mnm-price small { color: #777; font-weight: 400; }
.mnm-qty { flex: 0 0 auto; display: flex; align-items: center; }
.mnm-qty input { width: 64px; min-height: 44px; text-align: center; border: 1px solid #cfc9b8; border-radius: 6px; margin: 0 4px; font-size: 1.05rem; }
.mnm-qty button { width: 44px; height: 44px; border: 1px solid #cfc9b8; background: #f6f3e8; border-radius: 6px; font-size: 1.4rem; line-height: 1; }
.mnm-row.has-qty { background: #f7f3e3; }
.mnm-bottom { position: fixed; left: 0; right: 0; bottom: 0; background: #fff; border-top: 2px solid #887840; padding: 10px 12px; z-index: 30; box-shadow: 0 -4px 10px rgba(0,0,0,.08); }
.mnm-bottom .inner { max-width: 900px; margin: 0 auto; }
.mnm-bottom .line { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 6px; }
.mnm-bottom .line > * { flex: 1 1 150px; min-height: 40px; }
.mnm-total { font-size: 1.2rem; font-weight: 700; }
.mnm-note { color: #7a5b00; background: #fff6d6; border-radius: 6px; padding: 6px 10px; font-size: .85rem; display: none; margin-bottom: 6px; }
@media (max-width: 560px) { .mnm-row { flex-wrap: wrap; } .mnm-price { text-align: left; } .mnm-qty { margin-left: auto; } }

.mnm .btn-secondary, .mnm-tools .btn-secondary { background: #887840; border-color: #887840; color: #fff; min-height: 44px; font-weight: 600; }
.mnm-bottom details { margin-bottom: 6px; }
.mnm-bottom summary { cursor: pointer; color: #887840; font-size: .9rem; padding: 2px 0; }
.mnm-bottom details[open] summary { margin-bottom: 6px; }
.mnm-bottom .row2 { display: flex; gap: 8px; align-items: center; }
.mnm-bottom .row2 select { flex: 1 1 45%; min-height: 48px; }
.mnm-bottom .row2 .mnm-bigbtn { flex: 1 1 55%; min-height: 48px; font-size: 1.05rem; }
.mnm-bottom .sum { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 6px; }
.mnm-last { color: #2e7d32 !important; }

/* standing orders */
.mnm-days { display: flex; gap: 6px; flex-wrap: wrap; margin: 6px 0 14px; }
.mnm-days input { position: absolute; opacity: 0; pointer-events: none; }
.mnm-days label { min-width: 52px; text-align: center; padding: 11px 6px; border: 2px solid #cfc9b8; border-radius: 8px; background: #fff; font-weight: 600; cursor: pointer; user-select: none; }
.mnm-days input:checked + label { background: #887840; border-color: #887840; color: #fff; }
.mnm-days input:focus-visible + label { outline: 3px solid #c9bd8e; }
.mnm-mode label { display: block; padding: 12px 14px; border: 2px solid #cfc9b8; border-radius: 8px; margin-bottom: 8px; background: #fff; cursor: pointer; font-weight: 600; }
.mnm-mode input { margin-right: 8px; }
.mnm-mode input:checked + span { color: #887840; }
.mnm-standing { border-left: 5px solid #887840; }
.mnm-standing h3 { margin-bottom: 2px; }
.mnm-standing .when { font-size: 1.15rem; font-weight: 700; }
.mnm-standing .items { color: #444; margin: 8px 0; }
.mnm-next { display: flex; align-items: center; gap: 8px; padding: 7px 0; border-top: 1px solid #eee; flex-wrap: wrap; }
.mnm-next .d { flex: 1 1 140px; font-weight: 600; }
.mnm-tag { font-size: .78rem; padding: 2px 8px; border-radius: 10px; background: #eee; color: #444; }
.mnm-tag.requested { background: #fff2cc; color: #7a5b00; }
.mnm-tag.confirmed { background: #e2efda; color: #2e6b1f; }
.mnm-tag.skipped, .mnm-tag.holiday, .mnm-tag.paused { background: #f4dcd6; color: #8a1c14; }
.mnm-mini { min-height: 38px; padding: 4px 12px; border: 1px solid #887840; background: #fff; color: #887840; border-radius: 6px; font-weight: 600; }
.mnm-flash { background: #e2efda; border-radius: 8px; padding: 10px 14px; margin: 12px 0; }
.mnm-flash.warn { background: #fff2cc; }

.mnm-urgent { background: #fdecea; border: 1px solid #f0b8b3; border-radius: 8px; padding: 8px 10px; margin-bottom: 6px; }
.mnm-urgent input { width: 22px; height: 22px; }

/* order history */
.mnm-recent { background: #fff; border: 1px solid #e3e0d6; border-radius: 10px; padding: 8px 12px; margin: 12px 0; }
.mnm-recent summary { font-weight: 700; color: #887840; cursor: pointer; padding: 6px 0; }
.mnm-ord { padding: 8px 0; border-top: 1px solid #eee; }
.mnm-ord .top { display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; }
.mnm-ord .d { font-weight: 700; min-width: 86px; } .mnm-ord .r { color: #777; flex: 1; } .mnm-ord .t { font-weight: 700; color: #887840; }
.mnm-ord .s { color: #444; font-size: .9rem; margin: 2px 0 6px; }
.mnm-hist summary { cursor: pointer; display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; }
.mnm-hist .d { font-weight: 700; } .mnm-hist .r { color: #777; flex: 1; } .mnm-hist .t { font-weight: 700; color: #887840; } .mnm-hist .s { flex-basis: 100%; color: #444; font-size: .9rem; }

.mnm-name small.mnm-mprice { color: #7a5b00; font-size: .8rem; }

.mnm-season { display: block; font-size: .8rem; } .mnm-season.in { color: #2e7d32; font-weight: 600; } .mnm-season.out { color: #8a8a8a; }
