/* withira — Marktplatz-Schaufenster (markt.html).
   Nutzt die hellen Tokens aus theme-bright.css. Nur seiten-spezifische Stile hier. */

/* ===== Testmodus-Banner ===== */
.mk-testbanner{
  position:relative;z-index:50;text-align:center;
  background:color-mix(in srgb,var(--wi-gold,#bd8e3f) 16%,#fff);
  border-bottom:1px solid color-mix(in srgb,var(--wi-gold,#bd8e3f) 40%,var(--wi-line));
  color:var(--wi-gold-hi,#9c7430);font-size:13.5px;font-weight:600;padding:9px 16px;line-height:1.4;
}

/* ===== Hero ===== */
.mk-hero{max-width:880px;margin:0 auto;padding:46px 20px 8px;text-align:center;}
.mk-hero__title{font-family:var(--serif,Georgia,serif);font-weight:400;
  font-size:clamp(1.9rem,4.4vw,3rem);line-height:1.12;margin:8px 0 14px;}
.mk-hero__sub{color:var(--wi-text-dim);font-size:16px;line-height:1.6;max-width:640px;margin:0 auto 20px;}

/* Vertragspartner-Hinweis */
.mk-note{
  background:var(--wi-ai-cyan-soft,rgba(36,150,210,.16));
  border:1px solid color-mix(in srgb,var(--wi-ai-cyan,#1487c4) 32%,transparent);
  border-radius:14px;padding:14px 18px;font-size:14.5px;line-height:1.6;color:var(--wi-text);
  max-width:680px;margin:0 auto;text-align:left;
}

/* ===== Such-/Filterleiste ===== */
.mk-controls{
  max-width:980px;margin:26px auto 0;padding:0 20px;
  display:flex;gap:12px;flex-wrap:wrap;align-items:center;
}
.mk-search{flex:1 1 280px;display:flex;align-items:center;gap:10px;
  background:#fff;border:1px solid var(--wi-line);border-radius:12px;padding:10px 14px;}
.mk-search svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--wi-text-dim);stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round;}
.mk-search input{flex:1;border:0;outline:0;background:transparent;color:var(--wi-text);font-size:15px;font-family:inherit;}
.mk-search input::placeholder{color:var(--wi-text-dim);}
.mk-select{background:#fff;border:1px solid var(--wi-line);border-radius:12px;
  padding:10px 14px;font-size:14.5px;color:var(--wi-text);font-family:inherit;cursor:pointer;}

/* ===== Ergebnis-Bereich ===== */
.mk-results{max-width:1180px;margin:18px auto 64px;padding:0 20px;}
.mk-count{color:var(--wi-text-dim);font-size:13.5px;margin:6px 2px 14px;}
.mk-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;}
.mk-empty,.mk-nofilter{text-align:center;color:var(--wi-text-dim);font-size:15px;
  padding:42px 16px;line-height:1.6;}
.mk-empty a,.mk-nofilter a{color:var(--wi-gold-hi,#9c7430);font-weight:600;}

/* ===== Inserat-Karte ===== */
.mk-card{
  display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--wi-line);
  border-radius:18px;padding:18px;box-shadow:0 18px 44px -26px rgba(28,60,110,.30);
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.mk-card:hover{border-color:color-mix(in srgb,var(--wi-gold,#bd8e3f) 45%,var(--wi-line));
  box-shadow:0 28px 56px -26px rgba(28,60,110,.42);transform:translateY(-2px);}
.mk-card__top{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.mk-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;
  border-radius:999px;padding:4px 10px;white-space:nowrap;}
.mk-badge--software{color:var(--wi-ai-cyan,#1487c4);background:var(--wi-ai-cyan-soft,rgba(36,150,210,.16));
  border:1px solid color-mix(in srgb,var(--wi-ai-cyan,#1487c4) 30%,transparent);}
.mk-badge--physical{color:var(--wi-gold-hi,#9c7430);background:color-mix(in srgb,var(--wi-gold,#bd8e3f) 14%,#fff);
  border:1px solid color-mix(in srgb,var(--wi-gold,#bd8e3f) 32%,transparent);}
.mk-card__cat{font-size:12px;color:var(--wi-gold-hi,#9c7430);font-weight:600;}
.mk-card__title{font-size:17px;font-weight:600;line-height:1.3;margin:2px 0;color:var(--wi-text);}
.mk-card__seller{font-size:12.5px;color:var(--wi-text-dim);}
.mk-card__seller b{color:var(--wi-text);font-weight:600;}
.mk-card__desc{font-size:13.5px;color:var(--wi-text-dim);line-height:1.55;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.mk-card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:8px;}
.mk-card__price{font-size:19px;font-weight:700;color:var(--wi-gold-hi,#9c7430);}
.mk-card__price small{font-size:12px;font-weight:600;color:var(--wi-text-dim);}

/* ===== Modal ===== */
.mk-modal[hidden]{display:none;}
.mk-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px;}
.mk-modal__backdrop{position:absolute;inset:0;background:rgba(20,40,70,.45);backdrop-filter:blur(2px);}
.mk-modal__box{position:relative;z-index:1;width:min(560px,100%);max-height:90vh;overflow:auto;
  background:#fff;border:1px solid var(--wi-line);border-radius:20px;padding:26px 24px;
  box-shadow:0 30px 70px -30px rgba(28,60,110,.5);}
.mk-modal__x{position:absolute;top:12px;right:14px;border:0;background:transparent;cursor:pointer;
  font-size:18px;color:var(--wi-text-dim);line-height:1;padding:4px;}
.mk-modal__x:hover{color:var(--wi-text);}
.mc-badge-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px;}
.mc-title{font-family:var(--serif,Georgia,serif);font-weight:400;font-size:1.5rem;line-height:1.2;margin:0 0 6px;color:var(--wi-text);}
.mc-seller{font-size:13.5px;color:var(--wi-text-dim);margin:0 0 14px;}
.mc-seller b{color:var(--wi-text);}
.mc-desc{font-size:14.5px;color:var(--wi-text-dim);line-height:1.65;white-space:pre-wrap;margin:0 0 16px;}
.mc-price{font-size:1.5rem;font-weight:700;color:var(--wi-gold-hi,#9c7430);margin:0 0 14px;}
.mc-note{background:var(--wi-ai-cyan-soft,rgba(36,150,210,.16));
  border:1px solid color-mix(in srgb,var(--wi-ai-cyan,#1487c4) 30%,transparent);
  border-radius:12px;padding:11px 14px;font-size:13px;line-height:1.55;color:var(--wi-text);margin:0 0 18px;}
.mc-actions{display:flex;flex-direction:column;gap:10px;}
.mc-msg{font-size:13.5px;line-height:1.55;border-radius:12px;padding:11px 14px;margin:0;}
.mc-msg--ok{background:color-mix(in srgb,#1d9b6c 14%,#fff);border:1px solid color-mix(in srgb,#1d9b6c 40%,transparent);color:#0f7a52;}
.mc-msg--err{background:color-mix(in srgb,#d6453c 12%,#fff);border:1px solid color-mix(in srgb,#d6453c 40%,transparent);color:#b23128;}
.mc-msg--info{background:var(--wi-ai-cyan-soft,rgba(36,150,210,.16));border:1px solid color-mix(in srgb,var(--wi-ai-cyan,#1487c4) 30%,transparent);color:var(--wi-text);}
.mc-actions .wi-btn{width:100%;justify-content:center;}
.wi-btn[disabled]{opacity:.6;cursor:default;}

@media (max-width:640px){
  .mk-controls{flex-direction:column;align-items:stretch;}
  .mk-select{width:100%;}
  .mk-grid{grid-template-columns:1fr;}
}
