/**
 * Generator Power Parts — Parts Lookup Styles
 * gpp-lookup.css v2.1
 * Targets exact PHP output: .rehlko-results-list > .search-result
 */

@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700;800&family=Barlow:wght@300;400;500;600&display=swap');

:root {
    --gpp-navy:#0D1B2A; --gpp-steel:#1C3149; --gpp-accent:#F4801A;
    --gpp-accent-dim:#C0600E; --gpp-mid-gray:#4A5568;
    --gpp-light-gray:#E8EDF2; --gpp-pale:#F4F6F9; --gpp-white:#FFFFFF;
    --gpp-green:#1A6B3A; --gpp-green-pale:#EAF5EE;
    --gpp-font-head:'Barlow Condensed',sans-serif;
    --gpp-font-body:'Barlow',sans-serif;
}

/* SEARCH INPUT */
#rehlko-search-input {
    width:100% !important; background:var(--gpp-white) !important;
    border:1.5px solid var(--gpp-light-gray) !important;
    border-radius:6px !important; padding:12px 44px 12px 16px !important;
    font-family:var(--gpp-font-body) !important; font-size:.95rem !important;
    color:var(--gpp-navy) !important; outline:none !important;
    box-shadow:none !important; transition:border-color .2s !important;
}
#rehlko-search-input:focus { border-color:var(--gpp-accent) !important; }
#rehlko-search-input::placeholder { color:#A0AEC0 !important; }
#rehlko-clear-input {
    background:var(--gpp-light-gray); border:none; border-radius:50%;
    width:22px; height:22px; color:var(--gpp-mid-gray); font-size:.7rem;
    cursor:pointer; display:inline-flex; align-items:center; justify-content:center;
}

/* SORT */
#rehlko-sort {
    background:var(--gpp-white) !important; border:1.5px solid var(--gpp-light-gray) !important;
    border-radius:6px !important; padding:10px 14px !important;
    font-family:var(--gpp-font-body) !important; font-size:.875rem !important;
    color:var(--gpp-navy) !important; outline:none !important; cursor:pointer;
}

/* FILTER CHIPS */
.rehlko-filters { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; padding:.85rem 0; }
.rehlko-filters label {
    display:inline-flex; align-items:center; gap:6px;
    background:var(--gpp-white); border:1.5px solid var(--gpp-light-gray);
    border-radius:20px; padding:5px 14px; font-family:var(--gpp-font-body);
    font-size:.8rem; font-weight:600; color:var(--gpp-mid-gray);
    cursor:pointer; transition:all .15s; user-select:none;
}
.rehlko-filters label:hover { border-color:var(--gpp-accent); color:var(--gpp-accent); }
.rehlko-filters input[type="checkbox"] { accent-color:var(--gpp-accent); }
#rehlko-clear-filters {
    background:transparent; border:1.5px solid var(--gpp-light-gray); border-radius:20px;
    padding:5px 14px; font-family:var(--gpp-font-body); font-size:.78rem; font-weight:700;
    color:var(--gpp-mid-gray); cursor:pointer; transition:all .15s;
}
#rehlko-clear-filters:hover { border-color:var(--gpp-accent); color:var(--gpp-accent); }

/* RESULTS COUNT */
#gpp-results-count { font-family:var(--gpp-font-body); font-size:.85rem; color:var(--gpp-mid-gray); padding:.75rem 0 .5rem; display:block; }
#gpp-results-count strong { color:var(--gpp-navy); font-weight:700; }
#gpp-results-count em { font-style:normal; color:var(--gpp-navy); }

/* RESULT ROWS — exact PHP class names */
.rehlko-results-list { display:flex; flex-direction:column; gap:.6rem; }

.search-result.gpp-result-row {
    background:var(--gpp-white); border:1.5px solid var(--gpp-light-gray);
    border-radius:8px; padding:.9rem 1.1rem; display:flex; align-items:center;
    gap:1rem; transition:border-color .15s,background .15s;
    font-family:var(--gpp-font-body); cursor:default;
}
.search-result.gpp-result-row:hover { border-color:var(--gpp-accent); background:#FFFAF6; }

/* h4 = part number */
.search-result.gpp-result-row h4.gpp-col-num {
    font-family:var(--gpp-font-head) !important; font-size:1.05rem !important;
    font-weight:800 !important; text-transform:uppercase; letter-spacing:.04em;
    color:var(--gpp-accent) !important; margin:0 !important; min-width:140px; flex-shrink:0;
}
/* p = description */
.search-result.gpp-result-row p.gpp-col-desc {
    flex:1; font-size:.875rem !important; color:var(--gpp-navy) !important;
    font-weight:500; margin:0 !important; line-height:1.4;
}
/* p.price = price */
.search-result.gpp-result-row p.gpp-col-price {
    font-family:var(--gpp-font-head) !important; font-size:1.1rem !important;
    font-weight:800 !important; color:var(--gpp-navy) !important; margin:0 !important;
    min-width:80px; text-align:right; flex-shrink:0;
}
.search-result.gpp-result-row p.gpp-col-price::after {
    content:' ex.VAT'; font-family:var(--gpp-font-body); font-size:.62rem;
    font-weight:400; color:var(--gpp-mid-gray); display:block;
}

/* ADD BUTTON */
.gpp-add-btn {
    background:var(--gpp-navy); color:var(--gpp-white); border:none;
    padding:7px 16px; border-radius:4px; font-family:var(--gpp-font-body);
    font-weight:700; font-size:.78rem; cursor:pointer; white-space:nowrap;
    transition:background .15s; flex-shrink:0;
}
.gpp-add-btn:hover { background:var(--gpp-accent); }
.gpp-add-btn.gpp-added { background:var(--gpp-green); }

/* LOADING */
.gpp-loading { display:flex; align-items:center; justify-content:center; gap:.75rem; padding:3rem 1rem; color:var(--gpp-mid-gray); font-family:var(--gpp-font-body); font-size:.9rem; }
.gpp-loading-spinner { width:20px; height:20px; border:2px solid var(--gpp-light-gray); border-top-color:var(--gpp-accent); border-radius:50%; animation:gpp-spin .7s linear infinite; flex-shrink:0; }
@keyframes gpp-spin { to { transform:rotate(360deg); } }

.gpp-error { background:#FEF2F2; border:1px solid #FCA5A5; border-radius:6px; padding:1rem 1.25rem; font-size:.875rem; color:#B91C1C; font-family:var(--gpp-font-body); }

.gpp-no-results { padding:3rem 1rem; text-align:center; font-family:var(--gpp-font-body); }
.gpp-no-results-icon { width:56px; height:56px; background:var(--gpp-pale); border-radius:8px; margin:0 auto 1.25rem; display:flex; align-items:center; justify-content:center; }
.gpp-no-results-title { font-family:var(--gpp-font-head); font-size:1.3rem; font-weight:800; text-transform:uppercase; color:var(--gpp-navy); margin-bottom:.5rem; }
.gpp-no-results-text { font-size:.875rem; color:var(--gpp-mid-gray); max-width:400px; margin:0 auto; line-height:1.6; }

/* PAGINATION */
.gpp-pagination { display:flex; align-items:center; justify-content:center; gap:.4rem; padding:1.5rem 0 .5rem; flex-wrap:wrap; }
.gpp-page-btn { min-width:36px; height:36px; padding:0 10px; border:1px solid var(--gpp-light-gray); border-radius:4px; background:var(--gpp-white); font-family:var(--gpp-font-body); font-size:.82rem; color:var(--gpp-navy); cursor:pointer; display:inline-flex; align-items:center; justify-content:center; transition:all .15s; }
.gpp-page-btn:hover { border-color:var(--gpp-accent); color:var(--gpp-accent); }
.gpp-page-btn.active { background:var(--gpp-navy); border-color:var(--gpp-navy); color:var(--gpp-white); }

/* BASKET PANEL */
#selected-parts-list { max-height:340px; overflow-y:auto; margin-bottom:.75rem; padding-right:2px; }
#selected-parts-list::-webkit-scrollbar { width:3px; }
#selected-parts-list::-webkit-scrollbar-thumb { background:var(--gpp-light-gray); border-radius:2px; }

.gpp-basket-empty { text-align:center; padding:1.5rem .5rem; color:var(--gpp-mid-gray); font-size:.82rem; font-family:var(--gpp-font-body); line-height:1.6; }
.gpp-basket-empty svg { display:block; margin:0 auto .75rem; opacity:.4; }

.gpp-basket-item { display:flex; align-items:flex-start; justify-content:space-between; gap:.5rem; background:var(--gpp-pale); border:1px solid var(--gpp-light-gray); border-radius:5px; padding:.65rem .75rem; margin-bottom:.5rem; transition:border-color .15s; }
.gpp-basket-item:hover { border-color:var(--gpp-accent); }
.gpp-basket-item-num { font-family:var(--gpp-font-head); font-size:.9rem; font-weight:800; color:var(--gpp-accent); text-transform:uppercase; letter-spacing:.03em; }
.gpp-basket-item-desc { font-size:.75rem; color:var(--gpp-mid-gray); line-height:1.4; margin-top:1px; }
.gpp-basket-item-price { font-size:.75rem; font-weight:700; color:var(--gpp-navy); margin-top:2px; }
.gpp-basket-remove { background:none; border:none; color:var(--gpp-mid-gray); cursor:pointer; padding:2px; flex-shrink:0; transition:color .15s; line-height:1; }
.gpp-basket-remove:hover { color:#B91C1C; }

#rehlko-clear-selected {
    display:none; width:100%; margin-bottom:.5rem; padding:9px 12px;
    background:transparent; border:1.5px solid var(--gpp-light-gray); border-radius:5px;
    font-family:var(--gpp-font-body); font-size:.82rem; font-weight:700;
    color:var(--gpp-mid-gray); cursor:pointer; transition:all .15s;
}
#rehlko-clear-selected:hover { border-color:#B91C1C; color:#B91C1C; }

#rehlko-continue-btn {
    display:none; width:100%; padding:13px 12px; background:var(--gpp-accent);
    border:none; border-radius:6px; font-family:var(--gpp-font-body); font-weight:700;
    font-size:.95rem; color:var(--gpp-white); cursor:pointer; transition:background .2s; text-align:center;
}
#rehlko-continue-btn:hover { background:var(--gpp-accent-dim); }

/* RESPONSIVE */
@media (max-width:700px) {
    .search-result.gpp-result-row { flex-wrap:wrap; gap:.5rem; }
    .search-result.gpp-result-row h4.gpp-col-num { min-width:auto; width:100%; }
    .search-result.gpp-result-row p.gpp-col-price { min-width:auto; text-align:left; }
}
