/* GP Sites Table v2.1 — Frontend CSS
   Colors: #1a1a2e | #fcaf3b | #fff6dc | #fffdf5  (NO red) */

.gpst-wrap{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:14px;color:#1a1a2e;background:#fffdf5;box-sizing:border-box}
.gpst-wrap *,.gpst-wrap *::before,.gpst-wrap *::after{box-sizing:border-box}

/* TOP BAR */
.gpst-topbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 0;border-bottom:2px solid #fcaf3b;margin-bottom:0}
.gpst-search{flex:1;min-width:180px;height:38px;padding:0 12px;font-size:14px;border:1.5px solid #d4c9a0;border-radius:6px;background:#fff;color:#1a1a2e;outline:none;transition:border-color .2s}
.gpst-search:focus{border-color:#fcaf3b}
.gpst-topbar-right{display:flex;gap:8px;flex-wrap:wrap}

.gpst-btn{height:36px;padding:0 16px;font-size:13px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .15s;background:#fcaf3b;color:#1a1a2e;border:1.5px solid #fcaf3b;white-space:nowrap}
.gpst-btn:hover{background:#e09b25;border-color:#e09b25}
.gpst-btn-outline{height:36px;padding:0 14px;font-size:13px;border:1.5px solid #d4c9a0;border-radius:6px;background:transparent;color:#1a1a2e;cursor:pointer;transition:all .15s;white-space:nowrap}
.gpst-btn-outline:hover{border-color:#fcaf3b;background:#fff6dc}

/* COLUMN TOGGLE */
.gpst-col-panel{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px;background:#fff6dc;border:1.5px solid #fcaf3b;border-top:none;align-items:center}
.gpst-col-label{font-size:12px;font-weight:600;color:#1a1a2e;margin-right:4px}
.gpst-col-chip{height:28px;padding:0 12px;font-size:12px;border:1.5px solid #d4c9a0;border-radius:20px;background:#fff;color:#555;cursor:pointer;transition:all .15s}
.gpst-col-chip.active{background:#1a1a2e;color:#fcaf3b;border-color:#1a1a2e}

/* FILTER PANEL */
.gpst-filter-panel{padding:14px 12px;background:#fffdf5;border:1.5px solid #e8deb8;border-top:none}
.gpst-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:12px}
.gpst-filter-group label{display:block;font-size:11px;font-weight:600;color:#666;margin-bottom:4px;text-transform:uppercase;letter-spacing:.4px}
.gpst-filter-group select,.gpst-filter-group input{width:100%;height:32px;padding:0 8px;font-size:13px;border:1.5px solid #d4c9a0;border-radius:5px;background:#fff;color:#1a1a2e;outline:none}
.gpst-filter-group select:focus,.gpst-filter-group input:focus{border-color:#fcaf3b}
.gpst-filter-actions{display:flex;gap:8px}

/* SORT BAR */
.gpst-sortbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:8px 4px;gap:8px;border-bottom:1px solid #e8deb8}
.gpst-results-count{font-size:13px;color:#666}
.gpst-total{font-weight:700;color:#1a1a2e}
.gpst-sortbar-right{display:flex;gap:8px}
.gpst-sort-select,.gpst-per-page{height:32px;padding:0 8px;font-size:12px;border:1.5px solid #d4c9a0;border-radius:5px;background:#fff;color:#1a1a2e;outline:none}
.gpst-sort-select:focus,.gpst-per-page:focus{border-color:#fcaf3b}

/* TABLE */
.gpst-table-wrap{overflow-x:auto;border:1.5px solid #e8deb8;border-radius:8px}
.gpst-table{width:100%;border-collapse:collapse;background:#fffdf5;min-width:600px}
.gpst-table thead tr{background:#fff6dc}
.gpst-th{padding:10px 12px;text-align:left;font-size:12px;font-weight:700;color:#1a1a2e;border-bottom:2px solid #fcaf3b;white-space:nowrap;user-select:none}
.gpst-th[data-sort]{cursor:pointer}
.gpst-th[data-sort]:hover{background:#fff0c4}
.gpst-sort-icon{margin-left:4px;opacity:.4;font-size:11px}
.gpst-th.sorted-asc .gpst-sort-icon,.gpst-th.sorted-desc .gpst-sort-icon{opacity:1;color:#fcaf3b}

/* ROWS — uniform, no color differences between cells */
.gpst-table tbody tr{border-bottom:1px solid #f0e8d0;transition:background .1s}
.gpst-table tbody tr:last-child{border-bottom:none}
.gpst-table tbody tr:hover{background:#fff6dc}
.gpst-table td{padding:9px 12px;font-size:13px;color:#1a1a2e;vertical-align:middle;white-space:nowrap}

/* CELL TYPES — all same color #1a1a2e, no colored backgrounds */
.gpst-cell-text{color:#1a1a2e}
.gpst-cell-num{color:#1a1a2e;font-weight:500}
.gpst-cell-price{color:#1a1a2e;font-weight:600}
.gpst-cell-bool{color:#1a1a2e;font-weight:700}
.gpst-cell-link{color:#1a1a2e;font-weight:600;text-decoration:none;max-width:180px;display:inline-block;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
.gpst-cell-link:hover{color:#fcaf3b;text-decoration:underline}
.gpst-empty-cell{color:#bbb}

/* ORDER BUTTON */
.gpst-order-btn{display:inline-block;padding:5px 14px;border-radius:5px;font-size:12px;font-weight:600;text-decoration:none;cursor:pointer;border:none;transition:opacity .15s;white-space:nowrap}
.gpst-order-btn:hover{opacity:.82}

/* LOADING / EMPTY */
.gpst-loading,.gpst-empty{text-align:center;padding:36px 20px;color:#888;font-size:14px}

/* PAGINATION */
.gpst-pagination{display:flex;flex-wrap:wrap;gap:6px;padding:12px 0;justify-content:center;align-items:center}
.gpst-page-btn{height:32px;min-width:32px;padding:0 10px;font-size:13px;border:1.5px solid #d4c9a0;border-radius:5px;background:#fff;color:#1a1a2e;cursor:pointer;transition:all .15s}
.gpst-page-btn:hover{border-color:#fcaf3b;background:#fff6dc}
.gpst-page-btn.active{background:#1a1a2e;color:#fcaf3b;border-color:#1a1a2e;font-weight:700}
.gpst-page-btn:disabled{opacity:.4;cursor:not-allowed}

/* RESPONSIVE */
@media(max-width:768px){
    .gpst-topbar{flex-direction:column;align-items:stretch}
    .gpst-filter-grid{grid-template-columns:1fr 1fr}
    .gpst-sortbar{flex-direction:column;align-items:flex-start}
    .gpst-th,.gpst-table td{padding:7px 8px;font-size:12px}
}
@media(max-width:480px){
    .gpst-filter-grid{grid-template-columns:1fr}
}
