/*
Theme Name: Kupiprodaj World
Theme URI: https://kupiprodaj.world/
Author: Kupiprodaj.world
Description: Responsive Macedonian classifieds theme designed to work with Kupiprodaj Core.
Version: 1.3.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: kupiprodaj-world
*/
:root{--blue:#175cd3;--blue-dark:#123b85;--yellow:#ffca3a;--ink:#182230;--muted:#667085;--line:#e4e7ec;--bg:#f6f8fb;--white:#fff;--green:#07845a;--radius:16px;--shadow:0 8px 30px rgba(16,24,40,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.6}a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-dark)}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.kpw-wrap{width:min(1180px,calc(100% - 32px));margin-inline:auto}.kpw-top{background:#101828;color:#e4e7ec;font-size:12px}.kpw-top .kpw-wrap{display:flex;justify-content:space-between;gap:14px;padding:7px 0}.kpw-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:30}.kpw-headrow{min-height:78px;display:flex;align-items:center;gap:22px}.kpw-logo{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:900;font-size:24px;letter-spacing:-.8px;white-space:nowrap}.kpw-mark{width:38px;height:38px;display:grid;place-items:center;background:var(--blue);color:#fff;border-radius:12px;font-size:20px}.kpw-logo em{font-style:normal;color:var(--blue)}.kpw-mk{font-size:10px;letter-spacing:0;display:block;color:#667085;font-weight:700;margin-top:-3px}.kpw-nav{display:flex;align-items:center;gap:19px;margin-left:auto}.kpw-nav a{color:#344054;font-size:14px;font-weight:750}.kpw-actions{display:flex;gap:8px;align-items:center}.kpw-menu{display:none}.kpw-btn,.button,button[type=submit],input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:10px;min-height:44px;padding:10px 15px;background:var(--blue);color:#fff;font-weight:800;cursor:pointer;line-height:1.2}.kpw-btn:hover,.button:hover,button[type=submit]:hover,input[type=submit]:hover{background:var(--blue-dark);color:#fff}.kpw-yellow{background:var(--yellow);color:#172033}.kpw-yellow:hover{background:#f4b820;color:#172033}.kpw-outline{background:#fff;color:var(--blue);border-color:#cbd5e1}.kpw-outline:hover{background:#f8fafc;color:var(--blue-dark)}.kpw-cart{background:#ecfdf3;color:#027a48;border-color:#abefc6}.kpw-cart:hover{background:#d1fadf;color:#05603a}.kpw-hero{background:radial-gradient(ellipse at 85% 0%,#4386f5 0,transparent 38%),linear-gradient(120deg,#102a56,#175cd3);color:#fff;padding:58px 0 50px}.kpw-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}.kpw-kicker{display:inline-flex;border:1px solid #ffffff44;background:#ffffff12;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:800}.kpw-hero h1{font-size:clamp(34px,4.2vw,54px);line-height:1.08;letter-spacing:-1.5px;margin:18px 0 15px}.kpw-hero p{color:#e0eaff;font-size:18px;max-width:650px;margin:0 0 22px}.kpw-hero-art{padding:22px;border:1px solid #ffffff38;border-radius:22px;background:#ffffff12}.kpw-demo-item{display:flex;align-items:center;gap:13px;background:#fff;color:var(--ink);border-radius:13px;padding:13px;margin-top:10px}.kpw-demo-icon{width:66px;height:58px;display:grid;place-items:center;background:#eff4ff;border-radius:10px;font-size:29px;flex:none}.kpw-demo-item strong{display:block;line-height:1.3}.kpw-demo-item small{color:var(--muted)}.kpw-section{padding:34px 0}.kpw-section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px}.kpw-section-head h2{font-size:25px;line-height:1.25;letter-spacing:-.6px;margin:0}.kpw-muted{color:var(--muted)}.kpw-section-head p{margin:5px 0 0;color:var(--muted)}.kpw-cats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.kpw-cat{display:flex;align-items:center;gap:10px;min-height:76px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:13px;color:var(--ink);font-weight:750}.kpw-cat:hover{border-color:#b2ccff;box-shadow:var(--shadow);transform:translateY(-1px);color:var(--blue)}.kpw-cat-icon{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;background:#eff4ff;font-size:20px;flex:none}.kpw-panel,.kpw-content{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin:28px auto;box-shadow:var(--shadow)}.kpw-content{max-width:900px}.kpw-content h1{margin-top:0}.kpw-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.kpw-footer{background:#101828;color:#d0d5dd;margin-top:36px;padding:38px 0 24px}.kpw-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}.kpw-footer h3{color:#fff;margin:0 0 10px}.kpw-footer a{color:#d0d5dd}.kpw-footer a:hover{color:#fff}.kpw-footer p{margin:7px 0}.kpw-footer small{color:#98a2b3}.kpw-footer-bottom{border-top:1px solid #344054;margin-top:24px;padding-top:16px;font-size:12px;color:#98a2b3}.kpw-search-fallback{display:grid;grid-template-columns:1.4fr 1fr auto;gap:9px;background:#fff;border-radius:13px;padding:10px;max-width:850px}.kpw-search-fallback input,.kpw-search-fallback select{min-width:0;width:100%;padding:12px;border:1px solid var(--line);border-radius:9px}.kpw-notice{padding:12px 15px;border-radius:10px;background:#fffaeb;border:1px solid #fedf89}.kpw-pagination{padding:24px 0}.kpw-pagination .page-numbers{display:inline-block;margin:3px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.kpw-404{text-align:center;padding:65px 0}.kpw-404 h1{font-size:44px;margin:0}.kpw-breadcrumb{font-size:13px;color:var(--muted);margin-bottom:10px}.kpw-breadcrumb a{color:var(--blue)}
/* compatible styling for Kupiprodaj Core plugin */
.kp-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin:22px 0;box-shadow:var(--shadow)}.kp-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.kp-field{min-width:0}.kp-field-full{grid-column:1/-1}.kp-field label{display:block;font-weight:750;margin-bottom:6px}.kp-field input:not([type=checkbox]):not([type=radio]):not([type=file]),.kp-field select,.kp-field textarea{width:100%;border:1px solid #d0d5dd;border-radius:9px;padding:11px 12px;background:#fff}.kp-field textarea{min-height:150px}.kp-field small{display:block;color:var(--muted);margin-top:6px}.kp-notice{padding:12px;border-radius:10px;margin:12px 0}.kp-notice-success{background:#ecfdf3;color:#027a48}.kp-notice-error{background:#fef3f2;color:#b42318}.kp-gallery-thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.kp-listing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kp-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;min-width:0}.kp-card-media{display:block;aspect-ratio:4/3;background:#f2f4f7;overflow:hidden}.kp-card-media img{width:100%;height:100%;object-fit:cover}.kp-card-body{padding:13px}.kp-card-title{font-weight:800;color:var(--ink);line-height:1.35}.kp-price{font-size:18px;font-weight:900;color:var(--blue);margin:6px 0}.kp-search-form{display:grid;grid-template-columns:1.4fr 1fr auto;gap:8px}.kp-search-form input,.kp-search-form select{min-width:0;width:100%;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff}
@media(max-width:1000px){.kpw-headrow{gap:12px;flex-wrap:wrap;padding:12px 0}.kpw-menu{display:inline-flex;margin-left:auto;background:#fff;color:var(--blue);border:1px solid var(--line)}.kpw-nav{display:none;order:5;flex-basis:100%;margin:0;padding:10px 0;align-items:stretch;flex-direction:column;gap:0}.kpw-nav.kpw-open{display:flex}.kpw-nav a{padding:10px 4px;border-top:1px solid var(--line)}.kpw-actions{margin-left:auto;flex-wrap:wrap}.kpw-hero-grid{grid-template-columns:1fr}.kpw-hero-art{display:none}.kpw-cats{grid-template-columns:repeat(3,minmax(0,1fr))}.kp-listing-grid,.kpw-listing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.kpw-wrap{width:min(100% - 24px,1180px)}.kpw-top .kpw-wrap span:last-child{display:none}.kpw-logo{font-size:20px}.kpw-mark{width:34px;height:34px}.kpw-actions .kpw-outline{display:none}.kpw-actions .kpw-btn{padding:9px 10px;font-size:13px}.kpw-hero{padding:42px 0 35px}.kpw-hero h1{font-size:36px}.kpw-hero p{font-size:16px}.kpw-cats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kpw-cat{padding:10px;font-size:13px}.kpw-cat-icon{width:34px;height:34px}.kpw-section{padding:25px 0}.kpw-section-head{align-items:start;flex-direction:column}.kpw-footer-grid{grid-template-columns:1fr;gap:20px}.kpw-search-fallback,.kp-search-form{grid-template-columns:1fr}.kpw-content,.kpw-panel,.kp-panel{padding:16px}.kp-form{grid-template-columns:1fr}.kp-field-full{grid-column:auto}.kp-listing-grid,.kpw-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}

/* Kupiprodaj World 1.1.0 polish: accessibility, mobile UX and listing cards */
.kpw-skip-link{position:absolute;left:12px;top:-60px;background:#fff;color:#101828;padding:10px 14px;border-radius:8px;z-index:1000;box-shadow:var(--shadow)}.kpw-skip-link:focus{top:12px}
:focus-visible{outline:3px solid #fdb022;outline-offset:3px}
.kpw-header{position:sticky;top:0;box-shadow:0 4px 18px rgba(16,24,40,.04)}
.kpw-logo .custom-logo{max-height:48px;width:auto;max-width:220px;object-fit:contain}
.kpw-trust{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.kpw-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:17px 0}.kpw-trust-grid>div{display:grid;grid-template-columns:38px 1fr;column-gap:10px;align-items:center}.kpw-trust-grid>div>span{grid-row:span 2;width:38px;height:38px;border-radius:12px;background:#eff4ff;color:var(--blue);display:grid;place-items:center;font-size:22px;font-weight:900}.kpw-trust-grid strong{font-size:14px;line-height:1.3}.kpw-trust-grid small{font-size:12px;color:var(--muted)}
.kp-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.kp-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(16,24,40,.10);border-color:#c7d7fe}.kp-card-media img{transition:transform .25s ease}.kp-card:hover .kp-card-media img{transform:scale(1.025)}
.kp-card-title a{color:inherit}.kp-card-title a:hover{color:var(--blue)}.kp-gallery-thumbs img{border-radius:9px;object-fit:cover}
.kp-form input:focus,.kp-form select:focus,.kp-form textarea:focus,.kp-search-form input:focus,.kp-search-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(23,92,211,.12);outline:0}
.kpw-404{max-width:800px;margin-inline:auto}.kpw-404 h1{color:var(--blue);font-weight:950;letter-spacing:-2px}.kpw-404 .kpw-btn{margin-top:6px}
@media(max-width:640px){.kpw-trust-grid{grid-template-columns:1fr;gap:12px;padding:14px 0}.kpw-trust-grid>div{max-width:360px}.kpw-header{position:relative}.kpw-logo .custom-logo{max-width:170px;max-height:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}


/* Kupiprodaj World 1.2.0: mobile layout stability */
html,body{width:100%;max-width:100%;overflow-x:clip}
body{overflow-wrap:anywhere}
.kpw-wrap,.kpw-header,.kpw-footer,.kpw-section,.kpw-hero,.kpw-trust{min-width:0}
.kpw-headrow>*{min-width:0}
.kpw-nav a,.kpw-actions a,.kpw-btn,.button{overflow-wrap:normal;word-break:normal}
.kpw-actions{min-width:0}
.kpw-menu{align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:9px 12px}
.kpw-nav{min-width:0}
.kpw-hero-grid>*{min-width:0}
.kpw-hero h1,.kpw-section-head h2,.kp-card-title{overflow-wrap:anywhere}
.kp-listing-grid,.kpw-listing-grid,.kp-form,.kp-search-form,.kpw-search-fallback{width:100%;min-width:0}
.kp-card,.kp-card-body,.kp-card-media,.kp-field,.kp-panel,.kpw-content{min-width:0;max-width:100%}
.kp-card-media img{display:block}
.kp-field input,.kp-field select,.kp-field textarea,.kp-search-form input,.kp-search-form select,.kpw-search-fallback input,.kpw-search-fallback select{max-width:100%;min-width:0}
.kp-form input[type=file]{display:block;width:100%;max-width:100%;font-size:14px}
.kp-gallery-thumbs img{max-width:100%;height:auto}
.kpw-content table,.kp-panel table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse}
.kpw-content pre,.kp-panel pre{max-width:100%;overflow-x:auto}
.kpw-content iframe,.kp-panel iframe,.kpw-content video,.kp-panel video{max-width:100%}
.kpw-content input,.kpw-content select,.kpw-content textarea,.kp-panel input,.kp-panel select,.kp-panel textarea{max-width:100%}
@media(max-width:767px){
  .kpw-wrap{width:calc(100% - 24px)}
  .kpw-top .kpw-wrap{gap:8px;flex-wrap:wrap}
  .kpw-headrow{display:flex;gap:8px;padding:10px 0;align-items:center}
  .kpw-logo{font-size:clamp(17px,4.5vw,20px);gap:7px;letter-spacing:-.4px;max-width:calc(100% - 56px)}
  .kpw-mark{width:32px;height:32px;flex:0 0 32px;font-size:17px;border-radius:9px}
  .kpw-logo .custom-logo{max-width:min(52vw,155px);max-height:36px}
  .kpw-menu{margin-left:auto;flex:0 0 44px}
  .kpw-actions{width:100%;margin:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
  .kpw-actions .kpw-btn,.kpw-actions .kpw-yellow,.kpw-actions .kpw-cart{width:100%;min-width:0;padding:10px 8px;font-size:13px;white-space:normal;text-align:center}
  .kpw-nav{flex-basis:100%;width:100%;padding:5px 0 8px}
  .kpw-nav a{display:block;width:100%;padding:12px 4px}
  .kpw-hero{padding:32px 0 28px}
  .kpw-hero h1{font-size:clamp(29px,8vw,38px);letter-spacing:-.8px}
  .kpw-hero p{font-size:15px}
  .kpw-section-head{gap:8px}
  .kpw-trust-grid{grid-template-columns:minmax(0,1fr)}
  .kpw-panel,.kpw-content,.kp-panel{padding:14px;border-radius:12px;margin:16px auto}
  .kp-listing-grid,.kpw-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .kp-card-body{padding:9px}
  .kp-card-title{font-size:14px;line-height:1.35}
  .kp-price{font-size:16px}
  .kpw-cat{min-width:0;overflow-wrap:anywhere}
  .kpw-cta{align-items:stretch;gap:12px}
  .kpw-cta .kpw-btn{width:100%}
  .kp-form{grid-template-columns:minmax(0,1fr);gap:12px}
  .kp-field-full{grid-column:1/-1}
  .kp-field label{overflow-wrap:anywhere}
  .kpw-footer-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:380px){
  .kpw-wrap{width:calc(100% - 20px)}
  .kpw-actions{grid-template-columns:minmax(0,1fr)}
  .kp-listing-grid,.kpw-listing-grid{grid-template-columns:minmax(0,1fr)}
  .kpw-cats{grid-template-columns:minmax(0,1fr)}
  .kpw-section-head h2{font-size:22px}
}


/* Kupiprodaj World 1.3.0: horizontal swipe navigation on mobile */
@media (max-width: 1000px) {
  .kpw-headrow { gap: 10px; }
  .kpw-nav, .kpw-nav.kpw-open {
    display: flex;
    order: 6;
    flex: 0 0 calc(100% + 0px);
    width: 100%;
    max-width: 100%;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 8px 0 10px;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
    scroll-snap-type: x proximity;
  }
  .kpw-nav a, .kpw-nav.kpw-open a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: auto;
    min-height: 40px;
    padding: 9px 13px;
    border: 1px solid #e4e7ec;
    border-radius: 999px;
    background: #f8fafc;
    font-size: 13px;
    line-height: 1.2;
    scroll-snap-align: start;
  }
  .kpw-nav a:active, .kpw-nav a:focus-visible {
    background: #eff4ff;
    border-color: #84adff;
    outline-offset: 2px;
  }
  .kpw-menu { display: none !important; }
  .kpw-actions { margin-left: auto; gap: 6px; }
}
@media (max-width: 640px) {
  .kpw-headrow { padding: 10px 0 4px; row-gap: 6px; }
  .kpw-logo { font-size: 19px; max-width: calc(100% - 8px); }
  .kpw-logo .custom-logo { max-width: 145px; max-height: 38px; }
  .kpw-nav, .kpw-nav.kpw-open { margin-inline: -2px; padding: 7px 2px 11px; }
  .kpw-nav a, .kpw-nav.kpw-open a { min-height: 38px; padding: 9px 12px; }
  .kpw-actions { width: 100%; margin: 0; display: flex; }
  .kpw-actions .kpw-btn { flex: 1 1 0; min-width: 0; padding: 10px 8px; font-size: 12px; }
}
