.mkrq-app { max-width: 1040px; margin: 0 auto 80px; color: #232323; }
.mkrq-app [hidden] { display: none !important; }
.mkrq-app fieldset { min-width: 0; padding: 22px; margin: 26px 0; border: 1px solid #d9d9d9; border-radius: 5px; }
.mkrq-app legend { padding: 0 8px; font-size: 1.15em; font-weight: 700; }
.mkrq-app label, .mkrq-add-controls label { display: block; font-weight: 600; }
.mkrq-app input:not([type=checkbox]), .mkrq-app textarea, .mkrq-add-controls select { display: block; width: 100%; max-width: 100%; min-height: 44px; padding: 10px; margin: 5px 0 12px; border: 1px solid #aaa; border-radius: 3px; color: #222; background: #fff; font: inherit; box-sizing: border-box; }
.mkrq-app input:focus, .mkrq-app textarea:focus, .mkrq-add-controls input:focus, .mkrq-add-controls select:focus { outline: 2px solid #8b312d; outline-offset: 2px; }
.mkrq-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 24px; }
.mkrq-times { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.mkrq-times label { font-size: .9em; }
.mkrq-help { font-size: .92em; color: #555; line-height: 1.6; }
.mkrq-app .mkrq-check { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 18px; cursor: pointer; }
.mkrq-check input { flex: 0 0 auto; margin-top: 5px; width: 18px; height: 18px; }
.mkrq-table { width: 100%; border-collapse: collapse; font-size: .94em; }
.mkrq-table caption { text-align: left; padding-bottom: 12px; color: #555; }
.mkrq-table th, .mkrq-table td { padding: 12px 9px; text-align: left; border-bottom: 1px solid #ddd; vertical-align: middle; }
.mkrq-table th { background: #f6f6f6; }
.mkrq-table input[type=number] { width: 86px; margin: 0; }
.mkrq-app .mkrq-remove { background: transparent; color: #8b312d; border: 0; text-decoration: underline; padding: 10px 4px; cursor: pointer; font: inherit; }
.mkrq-sums { display: grid; grid-template-columns: 1fr auto; gap: 8px 20px; max-width: 550px; margin: 24px 0 12px auto; padding: 18px; background: #f6f6f6; }
.mkrq-sums dt, .mkrq-sums dd { margin: 0; }
.mkrq-sums dd { text-align: right; white-space: nowrap; }
.mkrq-sums dt:last-of-type, .mkrq-sums dd:last-of-type { font-weight: 700; border-top: 1px solid #ccc; padding-top: 10px; }
.mkrq-app .mkrq-submit, .mkrq-add-controls .mkrq-add, a.mkrq-choose { background: #8b312d; color: #fff; border: 1px solid #8b312d; border-radius: 3px; padding: 12px 18px; cursor: pointer; font: inherit; font-weight: 600; text-decoration: none; line-height: 1.4; }
.mkrq-app button:disabled, .mkrq-add-controls button:disabled { opacity: .65; cursor: wait; }
.mkrq-add-controls { margin: 12px 0; display: flex; gap: 12px; flex-wrap: wrap; align-items: end; clear: both; }
.mkrq-add-controls label { margin: 0; font-size: .92em; }
.mkrq-add-controls .mkrq-add-qty { display: block; width: 85px; min-height: 44px; margin-top: 5px; padding: 8px; border: 1px solid #aaa; border-radius: 3px; background: #fff; color: #222; }
.mkrq-add-controls select { margin-bottom: 0; }
.mkrq-basket-link { position: fixed; bottom: 24px; right: 24px; z-index: 9990; padding: 14px 20px; border-radius: 30px; background: #8b312d; color: #fff !important; font-weight: 700; box-shadow: 0 3px 18px #0003; text-decoration: none !important; font-size: 16px; }
.mkrq-basket-link:hover { background: #682420; }
.mkrq-count { display: inline-block; min-width: 24px; margin-left: 5px; padding: 0 6px; border-radius: 16px; background: #fff; color: #8b312d; text-align: center; }
.mkrq-toast { position: fixed; bottom: 92px; right: 24px; z-index: 9991; max-width: min(420px,calc(100vw - 48px)); padding: 14px 18px; border-radius: 5px; color: #fff; background: #252525; box-shadow: 0 3px 18px #0003; opacity: 0; pointer-events: none; transition: opacity .15s; }
.mkrq-toast.is-visible { opacity: 1; }
.mkrq-honeypot { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
#mkrq-error { padding: 16px; margin: 15px 0; background: #fff0ef; color: #84221d; border-left: 4px solid #a0322b; }
#mkrq-success { padding: 24px; margin: 24px 0; background: #eff7ee; border: 1px solid #bfd8ba; border-radius: 5px; }
@media (max-width: 650px) {
  .mkrq-grid { grid-template-columns: 1fr; gap: 6px; }
  .mkrq-app fieldset { padding: 15px; }
  .mkrq-table thead { display: none; }
  .mkrq-table, .mkrq-table tbody, .mkrq-table tr, .mkrq-table td { display: block; width: auto; }
  .mkrq-table tr { padding: 10px 0; border-bottom: 2px solid #ddd; }
  .mkrq-table td { padding: 6px 0; border: 0; }
  .mkrq-table td[data-label]::before { content: attr(data-label) ': '; font-weight: 600; }
  .mkrq-table td:first-child::before { display: none; }
  .mkrq-table td input { display: inline-block !important; }
  .mkrq-sums { font-size: .9em; gap: 8px 10px; padding: 12px; }
  .mkrq-basket-link { bottom: 14px; right: 14px; }
  .mkrq-toast { right: 14px; bottom: 82px; }
}
