/*
Theme Name: Nifere15
Description: Магазин секондхенда и небрендированных вещей. Заказ через Telegram.
Version: 0.1.0
Text Domain: nifere
*/

:root {
	--nf-bg: #faf7f2;
	--nf-card: #ffffff;
	--nf-text: #22201c;
	--nf-muted: #7a746a;
	--nf-accent: #2f3a2f;
	--nf-accent-dark: #1d251d;
	--nf-line: #e6e0d4;
	--nf-ph: #ece6da;
	--nf-radius: 6px;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--nf-bg); color: var(--nf-text); font: 16px/1.55 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
h1, h2, h3 { line-height: 1.2; margin: 0 0 .6em; font-weight: 600; }
h1 { font-size: clamp(1.8rem, 4vw, 2.8rem); }
h2 { font-size: clamp(1.4rem, 3vw, 1.9rem); }

.nf-wrap { width: 100%; max-width: 1180px; margin: 0 auto; padding: 0 16px; }
.nf-section { padding-top: 40px; padding-bottom: 40px; }
.nf-center { text-align: center; margin-top: 28px; }
.nf-empty { color: var(--nf-muted); }

/* Header */
.nf-header { background: var(--nf-bg); border-bottom: 1px solid var(--nf-line); position: sticky; top: 0; z-index: 10; }
.nf-header__in { display: flex; align-items: center; gap: 20px; min-height: 64px; flex-wrap: wrap; }
.nf-logo { font-weight: 700; font-size: 1.3rem; letter-spacing: .02em; text-decoration: none; }
.nf-nav { display: flex; gap: 18px; flex: 1; flex-wrap: wrap; }
.nf-nav a { text-decoration: none; color: var(--nf-muted); }
.nf-nav a:hover { color: var(--nf-text); }
.nf-header__right { display: flex; align-items: center; gap: 14px; }
.nf-lang { list-style: none; display: flex; gap: 8px; margin: 0; padding: 0; text-transform: uppercase; font-size: .85rem; }
.nf-lang a { text-decoration: none; color: var(--nf-muted); }
.nf-lang .current-lang a { color: var(--nf-text); font-weight: 700; }

/* Buttons */
.nf-btn { display: inline-block; background: var(--nf-accent); color: #fff; padding: 12px 22px; border-radius: var(--nf-radius); text-decoration: none; border: 1px solid var(--nf-accent); }
.nf-btn:hover { background: var(--nf-accent-dark); }
.nf-btn--small { padding: 8px 14px; font-size: .9rem; }
.nf-btn--ghost { background: transparent; color: var(--nf-accent); }
.nf-btn--ghost:hover { background: var(--nf-accent); color: #fff; }

/* Hero */
.nf-hero { padding: 72px 0; background: linear-gradient(135deg, #efe8da, #e2dac8); }
.nf-hero p { max-width: 560px; color: var(--nf-muted); font-size: 1.1rem; margin-bottom: 1.4em; }

/* Placeholder for photos */
.nf-ph { width: 100%; aspect-ratio: 4 / 5; background: repeating-linear-gradient(45deg, var(--nf-ph), var(--nf-ph) 12px, #e6dfd0 12px, #e6dfd0 24px); display: flex; align-items: center; justify-content: center; color: var(--nf-muted); font-size: .9rem; }

/* Categories */
.nf-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 16px; }
.nf-cat { text-decoration: none; }
.nf-cat .nf-ph { aspect-ratio: 1; border-radius: var(--nf-radius); }
.nf-cat__name { display: block; margin-top: 8px; font-weight: 600; }

/* Catalog */
.nf-filter { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.nf-filter a { padding: 6px 14px; border: 1px solid var(--nf-line); border-radius: 999px; text-decoration: none; background: var(--nf-card); }
.nf-filter a.is-active { background: var(--nf-accent); color: #fff; border-color: var(--nf-accent); }
.nf-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 20px; }
.nf-card { background: var(--nf-card); border: 1px solid var(--nf-line); border-radius: var(--nf-radius); overflow: hidden; text-decoration: none; display: block; }
.nf-card__img { position: relative; }
.nf-card__img img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.nf-card__body { padding: 12px 14px 16px; }
.nf-card__body h3 { font-size: 1rem; margin-bottom: .3em; }
.nf-card__meta { color: var(--nf-muted); font-size: .88rem; margin-bottom: .3em; }
.nf-card.is-sold .nf-card__img img, .nf-card.is-sold .nf-ph, .nf-single__img.is-sold img { opacity: .5; }
.nf-badge { position: absolute; top: 10px; left: 10px; background: var(--nf-text); color: #fff; font-size: .8rem; padding: 3px 10px; border-radius: 999px; }
.nf-price__eur { font-weight: 700; }
.nf-price__rsd { color: var(--nf-muted); font-size: .88rem; }
.nf-pager { margin-top: 28px; text-align: center; }

/* Single item */
.nf-single__grid { display: grid; grid-template-columns: 1fr; gap: 28px; }
@media (min-width: 800px) { .nf-single__grid { grid-template-columns: 1fr 1fr; } }
.nf-single__img { position: relative; }
.nf-single__img img { width: 100%; border-radius: var(--nf-radius); }
.nf-single__price { font-size: 1.4rem; margin-bottom: 1em; }
.nf-facts { list-style: none; padding: 0; margin: 0 0 1.4em; color: var(--nf-muted); }
.nf-facts li { margin-bottom: .3em; }
.nf-content { margin-bottom: 1.6em; }

/* About + footer */
.nf-about p { max-width: 640px; color: var(--nf-muted); }
.nf-footer { background: var(--nf-accent); color: #f3efe6; margin-top: 40px; padding: 40px 0 24px; }
.nf-footer .nf-btn { background: #f3efe6; color: var(--nf-accent); border-color: #f3efe6; }
.nf-footer__copy { margin: 28px 0 0; font-size: .85rem; opacity: .7; }

@media (max-width: 600px) {
	.nf-header__in { gap: 10px; padding-top: 8px; padding-bottom: 8px; }
	.nf-nav { order: 3; flex-basis: 100%; }
}
