
body{font-family:Inter,Arial,sans-serif;background:#fff;color:#111;margin:0}
.inner{max-width:1100px;margin:0 auto;padding:0 16px}
.card{border:1px solid #e6e8ec;border-radius:16px;padding:16px;margin:14px 0}
.map{height:360px;border:1px solid #e6e8ec;border-radius:16px}
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e6e8ec}
.header-flex{display:flex;justify-content:space-between;align-items:center;padding:12px 0}
.logo{height:44px}
.btn{background:#e11d2e;color:#fff;padding:10px 14px;border-radius:12px;border:none;cursor:pointer}
.btn-outline{background:#fff;color:#111;border:1px solid #e6e8ec;padding:8px 12px;border-radius:10px}
/* ===== Tyre24 Basket polish (drop-in) ===== */
.t24 { font-family: Inter, system-ui, Arial, sans-serif; background:#fff; color:#111; }
.t24-container { width:min(1100px, 92%); margin:0 auto; }

.t24-header { border-bottom:1px solid #eee; background:#fff; position:sticky; top:0; z-index:5; }
.t24-header-inner { display:flex; align-items:center; justify-content:space-between; padding:14px 0; gap:16px; }
.t24-brand { display:flex; align-items:center; gap:12px; }
.t24-logo { height:34px; width:auto; display:block; }
.t24-title { font-weight:800; font-size:16px; line-height:1.1; }
.t24-subtitle { font-size:12px; color:#666; margin-top:2px; }
.t24-link { color:#111; text-decoration:none; font-weight:600; }
.t24-link:hover { text-decoration:underline; }

.t24-grid { display:grid; grid-template-columns: 1.1fr .9fr; gap:18px; padding:18px 0 32px; }
@media (max-width: 900px){ .t24-grid { grid-template-columns: 1fr; } }

.t24-card { border:1px solid #eee; border-radius:16px; padding:16px; box-shadow: 0 6px 22px rgba(0,0,0,.05); }
.t24-h2 { margin:0 0 12px; font-size:18px; }
.t24-muted { color:#666; font-size:13px; }
.t24-divider { height:1px; background:#eee; margin:14px 0; }

.t24-list { display:flex; flex-direction:column; gap:10px; }
.t24-item { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:12px; border:1px solid #eee; border-radius:12px; background:#fff; }
.t24-item-right { text-align:right; display:flex; flex-direction:column; gap:8px; align-items:flex-end; }
.t24-item-price { font-weight:800; }

.t24-check { display:flex; gap:10px; align-items:center; font-size:14px; }
.t24-total { margin-top:12px; display:flex; align-items:center; justify-content:space-between; font-size:16px; }
.t24-total b { font-size:18px; }

.t24-form { margin-top:6px; }
.t24-form-grid { display:grid; grid-template-columns: 1fr 1fr; gap:12px; }
@media (max-width: 600px){ .t24-form-grid { grid-template-columns:1fr; } }

.t24-field label { display:block; font-size:12px; color:#666; margin:0 0 6px; font-weight:600; }
.t24-field input, .t24-field textarea {
  width:100%; padding:10px 12px; border:1px solid #ddd; border-radius:10px;
  outline:none; font-size:14px; background:#fff;
}
.t24-field input:focus, .t24-field textarea:focus { border-color:#999; box-shadow:0 0 0 3px rgba(0,0,0,.06); }

.t24-pay { margin-top:12px; display:flex; flex-direction:column; gap:8px; }
.t24-btn {
  display:inline-flex; align-items:center; justify-content:center;
  background:#e11d2e; color:#fff; border:0; border-radius:12px;
  padding:12px 14px; font-weight:800; cursor:pointer;
}
.t24-btn:hover { filter: brightness(.95); }

.t24-btn-outline {
  background:#fff; border:1px solid #ddd; border-radius:10px;
  padding:8px 10px; cursor:pointer; font-weight:600;
}
.t24-btn-outline:hover { border-color:#bbb; }
/* MOBILE FORM STACKING */
@media (max-width: 768px) {

  .tyre-search-grid {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .tyre-search-grid input,
  .tyre-search-grid select,
  .tyre-search-grid button {
    width: 100%;
    font-size: 16px;
    padding: 12px;
  }
.slot-block { margin-top: 10px; }

.slot-header{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:10px;
}

.slot-status{
  font-size: 12px;
  color:#666;
}

.slot-grid{
  margin-top:10px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:10px;
}

.slot-btn{
  padding: 12px 10px;
  border: 1px solid #ddd;
  border-radius: 12px;
  background: #fff;
  cursor: pointer;
  font-weight: 700;
  font-size: 14px;
}

.slot-btn small{
  display:block;
  font-weight: 500;
  opacity:.75;
  margin-top:4px;
  font-size: 12px;
}

.slot-btn:hover{ border-color:#bbb; }

.slot-btn.selected{
  border-color:#111;
  box-shadow: 0 0 0 2px rgba(0,0,0,.08);
}

.slot-btn.disabled{
  opacity: .45;
  cursor: not-allowed;
  background: #f7f7f7;
}

/* Mobile: 2 columns for easier tapping */
@media (max-width: 520px){
  .slot-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .slot-btn{ font-size: 15px; }
}


