/* LNZ Tenders — front-end (brand-aligned with lnz.com.ua)
   Colours mirror the theme tokens; fallbacks keep the plugin self-contained
   if the theme stylesheet is absent. */
:root{
	--lnzt-green:#1e7a46;
	--lnzt-green-d:#155e35;
	--lnzt-green-soft:#eaf3ed;
	--lnzt-ink:#222a2e;
	--lnzt-text:#2b2f33;
	--lnzt-muted:#5a6675;
	--lnzt-border:#e3e8e5;
	--lnzt-border-2:#d7ddd9;
	--lnzt-card:#fff;
	--lnzt-radius:10px;
	--lnzt-shadow:0 1px 2px rgba(34,42,46,.05),0 6px 18px rgba(34,42,46,.06);
	--lnzt-shadow-h:0 4px 10px rgba(34,42,46,.08),0 14px 30px rgba(34,42,46,.10);
}

.lnzt-panel{margin:1.5rem 0;font-size:16px;line-height:1.55;color:var(--lnzt-text)}

/* Grid + cards */
.lnzt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin:1.5rem 0}
.lnzt-card{
	display:flex;flex-direction:column;gap:10px;
	border:1px solid var(--lnzt-border);border-radius:var(--lnzt-radius);
	padding:18px;background:var(--lnzt-card);box-shadow:var(--lnzt-shadow);
	transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease;
}
.lnzt-card:hover{box-shadow:var(--lnzt-shadow-h);transform:translateY(-2px);border-color:var(--lnzt-border-2)}
.lnzt-card__title{font-weight:700;font-size:1.05rem;line-height:1.3;text-decoration:none;color:var(--lnzt-ink)}
.lnzt-card__title:hover{color:var(--lnzt-green)}
.lnzt-card__meta{display:flex;flex-wrap:wrap;gap:6px}
.lnzt-card__qty{color:var(--lnzt-muted);font-size:.95rem}
.lnzt-card__foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;gap:8px;flex-wrap:wrap}

/* Chips */
.lnzt-chip{display:inline-block;padding:3px 11px;border-radius:999px;background:var(--lnzt-green-soft);color:var(--lnzt-green);font-size:.8rem;font-weight:600}
.lnzt-chip--region{background:#eef1f6;color:#3a5a8c}
.lnzt-chip a{text-decoration:none;color:inherit}

/* Status pills */
.lnzt-status{display:inline-block;padding:3px 12px;border-radius:999px;font-size:.85rem;font-weight:600;background:#eee;color:#333}
.lnzt-status--open{background:#e6f4ea;color:#1e7a46}
.lnzt-status--closed,.lnzt-status--cancelled{background:#fdecea;color:#b3261e}
.lnzt-status--awarded{background:#e8eefc;color:#2c4fb0}
.lnzt-status--draft{background:#f1f1f1;color:#666}
.lnzt-deadline{color:var(--lnzt-muted);font-size:.9rem;font-weight:400}

/* Specs table */
.lnzt-specs{width:100%;border-collapse:collapse;margin:1rem 0}
.lnzt-specs th,.lnzt-specs td{text-align:left;padding:10px 12px;border-bottom:1px solid #eef0f2;vertical-align:top}
.lnzt-specs th{width:38%;color:var(--lnzt-muted);font-weight:600}

/* Price box */
.lnzt-price{padding:14px 16px;border-radius:var(--lnzt-radius);margin:1rem 0;font-size:1.02rem}
.lnzt-price--open{background:var(--lnzt-green-soft);border:1px solid #cfe8d5}
.lnzt-price--sealed,.lnzt-price--hidden{background:#f5f7f6;border:1px solid #e6e9ee;color:var(--lnzt-text)}

/* Offer form */
.lnzt-offer-form{max-width:560px;border:1px solid var(--lnzt-border);border-radius:12px;padding:22px;background:#fafbfb;box-shadow:var(--lnzt-shadow)}
.lnzt-form-title{margin:0 0 .25rem;color:var(--lnzt-ink)}
.lnzt-form-hint{margin:0 0 1rem;color:var(--lnzt-muted);font-size:.92rem}
.lnzt-field{display:flex;flex-direction:column;gap:5px;margin:0 0 .9rem}
.lnzt-field label{font-weight:600;font-size:.92rem;color:var(--lnzt-ink)}
.lnzt-field input[type=text],.lnzt-field input[type=tel],.lnzt-field input[type=email],.lnzt-field input[type=number],.lnzt-field textarea{
	padding:11px 13px;border:1px solid var(--lnzt-border-2);border-radius:8px;font-size:1rem;width:100%;
	background:#fff;color:var(--lnzt-text);min-height:44px;transition:border-color .15s ease,box-shadow .15s ease;
}
.lnzt-field textarea{min-height:96px;resize:vertical}
.lnzt-field input:focus,.lnzt-field textarea:focus{outline:0;border-color:var(--lnzt-green);box-shadow:0 0 0 3px rgba(30,122,70,.15)}
.lnzt-req{color:#b3261e}
.lnzt-consent label{font-weight:400;font-size:.9rem}

/* Buttons */
.lnzt-btn{
	display:inline-block;background:var(--lnzt-green);color:#fff;border:0;border-radius:8px;
	padding:12px 22px;font-size:1rem;font-weight:600;cursor:pointer;text-decoration:none;
	line-height:1.2;min-height:44px;transition:background .15s ease,transform .05s ease;
}
.lnzt-btn:hover{background:var(--lnzt-green-d);color:#fff}
.lnzt-btn:active{transform:translateY(1px)}
.lnzt-btn--sm{padding:9px 16px;font-size:.9rem;min-height:40px}

/* Notices / states */
.lnzt-closed{padding:13px 16px;background:#fdecea;border:1px solid #f5c6c0;border-radius:var(--lnzt-radius);color:#b3261e}
.lnzt-empty{color:var(--lnzt-muted);padding:8px 0}
.lnzt-notice{padding:13px 16px;border-radius:var(--lnzt-radius);margin:0 0 1rem;font-weight:500}
.lnzt-notice--ok{background:#e6f4ea;border:1px solid #b7dfc1;color:#1e7a46}
.lnzt-notice--err{background:#fdecea;border:1px solid #f5c6c0;color:#b3261e}

/* honeypot — keep in DOM, hide from users */
.lnzt-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* Small screens */
@media (max-width:560px){
	.lnzt-grid{grid-template-columns:1fr;gap:14px}
	.lnzt-offer-form{padding:18px}
	.lnzt-specs th{width:42%}
}

/* ============================================================
   Premium card upgrade v2 (stronger, on-brand for LNZ)
   ============================================================ */
.lnzt-grid{gap:20px}
.lnzt-card{
	position:relative;border:1px solid #e3e8e5;border-radius:16px;padding:24px 20px 20px;
	background:#fff;box-shadow:0 6px 20px rgba(20,40,30,.06);overflow:hidden;
	transition:transform .16s ease, box-shadow .16s ease;
}
.lnzt-card::before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:linear-gradient(90deg,#1e7a46,#2c9456)}
.lnzt-card:hover{transform:translateY(-4px);box-shadow:0 16px 38px rgba(20,40,30,.13)}
.lnzt-card__title{font-size:1.25rem;font-weight:800;color:#1c2429;line-height:1.25}
.lnzt-card__meta{gap:8px;flex-wrap:wrap}
.lnzt-chip{background:#eef4ef;color:#1e7a46;font-weight:700;border-radius:999px;padding:5px 12px;font-size:.82rem}
.lnzt-chip--region{background:#eef1f6;color:#3a5a8c}
.lnzt-card__qty{font-weight:700;color:#1c2429;background:#f5f8f5;border:1px solid #e6efe8;border-radius:8px;padding:8px 12px;display:inline-block;font-size:.95rem}
.lnzt-card__foot{margin-top:14px;padding-top:14px;border-top:1px solid #eef0ee}
.lnzt-status{border-radius:999px;font-weight:700;padding:4px 12px}
.lnzt-status--open{background:#e6f4ea;color:#1e7e34}
.lnzt-deadline{color:#6b7680;font-weight:600}
.lnzt-btn{width:100%;text-align:center;border-radius:10px;padding:13px;font-weight:700;font-size:1.02rem;box-shadow:0 6px 16px rgba(30,122,70,.20);margin-top:14px}
.lnzt-btn:hover{box-shadow:0 10px 22px rgba(30,122,70,.28)}
