*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#111315;color:#f2f3f5}
.topbar{background:#1b1e21;border-bottom:1px solid #30343a;padding:16px 0}
.container{width:min(1400px,calc(100% - 32px));margin:0 auto}
.topbar .container{display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px}
.brand-logo{width:180px;height:56px;object-fit:contain;border-radius:8px;display:block}
h1{margin:0;font-size:28px}.topbar p{margin:0;color:#aeb4bc}
.header-actions{display:flex;align-items:center;gap:10px}.calc-link,.check-link{height:42px;padding:0 16px;border-radius:8px;border:1px solid #4b535d;background:#2b3036;color:#fff;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer}.calc-link:hover,.check-link:hover{background:#363c43}.check-link:disabled{opacity:.6;cursor:wait}.count{background:#272b30;border:1px solid #3a4047;padding:10px 14px;border-radius:10px;white-space:nowrap}
.filters{margin:24px 0;padding:18px;background:#1b1e21;border:1px solid #30343a;border-radius:14px;display:flex;flex-wrap:wrap;align-items:end;gap:12px}
.field{display:flex;flex-direction:column;gap:6px;min-width:150px}.search-field{flex:1 1 280px}.field.small{width:120px;min-width:120px}
label{color:#aeb4bc;font-size:13px}
input,select{height:42px;padding:0 11px;border-radius:8px;border:1px solid #3a4047;background:#111315;color:#f2f3f5;font-size:14px}
button,.reset{height:42px;padding:0 16px;border-radius:8px;border:1px solid #4b535d;background:#2b3036;color:white;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
button:hover,.reset:hover{background:#363c43}.reset{color:#c6cbd1}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;padding-bottom:40px}
.card{background:#1b1e21;border:1px solid #30343a;border-radius:14px;padding:16px;min-height:190px;display:flex;flex-direction:column}.purchased-card{background:#183322;border-color:#285438}
.card-main{display:flex;align-items:flex-start;gap:14px;min-width:0}
.card-thumb-wrap{flex:0 0 100px;width:100px;height:100px;border-radius:10px;overflow:hidden;background:#151719;display:flex;align-items:center;justify-content:center}
.card-thumb{width:100%;height:100%;object-fit:cover;display:block}.card-thumb-wrap.thumb-hidden{display:none}
.card-content{min-width:0;flex:1}.card-top{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.category,.source{font-size:12px;padding:5px 8px;border-radius:999px;background:#272b30;color:#cdd2d8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48%}
.card h2{margin:0;font-size:18px;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.title-link{color:inherit;text-decoration:none}.title-link:hover{text-decoration:underline}
.price{margin-top:12px;font-size:24px;font-weight:700}.break-even{margin-top:7px;color:#8b929a;font-size:12px;line-height:1.4}.break-even strong{color:#b7bdc4;font-weight:600}
.card-actions{margin-top:auto;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.found-time{color:#777f88;font-size:12px}
.card-buttons{display:flex;align-items:center;gap:8px}.favorite-form,.purchase-form,.delete-form{margin:0}.favorite-button{width:40px;height:40px;padding:0;border:1px solid #8a6b18;background:#5d4a13;color:#f1cf52;border-radius:8px;font-size:22px;line-height:1}.favorite-button:hover{background:#7a6218;border-color:#b18b22;color:#ffe27a}.favorite-button.is-favorite{background:#8a6b18;border-color:#d4aa2c;color:#ffe27a}.purchase-button{width:40px;height:40px;padding:0;border:1px solid #2f7a4a;background:#1d5632;color:#8ff0ae;border-radius:8px;font-size:19px;line-height:1}.purchase-button:hover{background:#286d40;border-color:#42a866;color:white}.purchase-button.is-purchased{background:#23633a;border-color:#42a866;color:#9ff3b8;font-size:22px}.delete-button{width:40px;height:40px;padding:0;border:1px solid #7a3030;background:#5a1f1f;color:#ffb4b4;border-radius:8px;font-size:19px;line-height:1}.delete-button:hover{background:#7b2828;border-color:#a33a3a;color:white}
.empty{text-align:center;margin:70px 0;color:#aeb4bc}
.refresh-status{margin:-14px 0 20px;color:#777f88;font-size:12px;text-align:right}
.pagination{display:flex;justify-content:center;align-items:center;gap:8px;padding:4px 0 40px;flex-wrap:wrap}.pagination a,.pagination span{min-width:40px;height:40px;padding:0 12px;border:1px solid #30343a;border-radius:8px;background:#1b1e21;color:#cdd2d8;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.pagination a:hover{background:#272b30;color:#fff}.pagination .current{background:#2b3036;border-color:#4b535d;color:#fff;font-weight:700}.pagination .dots{border-color:transparent;background:transparent;color:#777f88;min-width:20px;padding:0}
@media(max-width:700px){.topbar .container{align-items:flex-start;flex-direction:column}.header-actions{width:100%;display:flex;flex:0 0 auto;min-width:0}.header-actions .count{flex:1;min-width:0}.filters{display:grid;grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.field,.field.small{width:auto;min-width:0}button,.reset{width:100%}.grid{grid-template-columns:1fr}.card-thumb-wrap{flex-basis:88px;width:88px;height:88px}.card-main{gap:12px}}



/* Stav karty: oblibene = tmave zluta, zakoupene = tmave zelena */
.card.favorite-card {
  background: #332d18;
  border-color: #6f5a00;
}
.card.purchased-card {
  background: #183322;
  border-color: #285438;
}

/* Zakoupeno: puvodni inzerat jiz neni aktivni */
.inactive-label {
  margin-top: 7px;
  color: #9aa39d;
  font-size: 12px;
  line-height: 1.4;
}

.login-form input[type="checkbox"] {
  margin-right: 8px;
}

.login-form button[type="submit"] {
  margin-top: 8px;
}

.remember {
  display: flex;
  align-items: center;
  margin-top: 14px;
  margin-bottom: 10px;
}

.remember input[type="checkbox"] {
  margin: 0 8px 0 0;
}

.login-button {
  margin-top: 4px;
}

.remember {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  margin-bottom: 12px;
}

.remember input[type="checkbox"] {
  margin: 0;
  width: 16px;
  height: 16px;
}

.login-button {
  margin-top: 0;
}
