:root{--bg:#f4f5f7;--card:#fff;--text:#20242c;--muted:#6c7480;--primary:#2563eb;--secondary:#475569;--dark:#111827;--border:#e5e7eb;--danger:#dc2626;--success:#16a34a;--warning:#f59e0b}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-bottom:1px solid var(--border)}
.topbar nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.logo{font-size:28px;font-weight:700}.btn,button{background:var(--primary);color:#fff;border:none;border-radius:10px;padding:12px 16px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.secondary{background:var(--secondary)}.btn.small,button.small{padding:8px 10px;font-size:13px}
.hero{padding:44px 24px;background:linear-gradient(90deg,#fff,#eef4ff)}.hero h1{margin:0 0 18px;font-size:36px}.searchbar{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;max-width:900px}.searchbar input,input,select,textarea{padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:#fff;width:100%}
textarea{resize:vertical}
.container{padding:24px}.grid{display:grid;grid-template-columns:280px 1fr;gap:24px}.sidebar-card,.content-card,.panel,.auth-card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:20px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.listing-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px}.thumb{height:120px;background:#f1f5f9;border-radius:12px;margin-bottom:12px}.listing-image{width:100%;height:180px;object-fit:cover;border-radius:12px;margin-bottom:12px;background:#f1f5f9}.muted{color:var(--muted)}.alert{background:#fee2e2;color:#991b1b;padding:12px;border-radius:10px;margin:12px 0}.success{background:#dcfce7;color:#166534;padding:12px;border-radius:10px;margin:12px 0}
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:min(460px,100%)}.auth-card.wide{width:min(700px,100%)}.auth-card form{display:grid;gap:12px}
.admin-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.admin-sidebar{background:linear-gradient(180deg,#111827,#1f2937);color:#fff;padding:22px;display:flex;flex-direction:column;gap:10px}.admin-sidebar .brand{font-size:24px;font-weight:700;margin-bottom:12px}.admin-sidebar a{padding:12px 14px;border-radius:12px;color:#e5e7eb}.admin-sidebar a:hover{background:rgba(255,255,255,.08)}.admin-main{padding:28px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.stat-card{background:#fff;border-radius:18px;padding:22px;border:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.stat-card strong{font-size:32px}.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden}.table th,.table td{padding:14px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.inline-form{display:grid;grid-template-columns:1fr 220px auto;gap:12px;align-items:center}.danger{background:var(--danger)}.page-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.actions{display:flex;gap:8px;flex-wrap:wrap}.stack-form{display:grid;gap:14px}.form-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-actions{display:flex;gap:12px;flex-wrap:wrap}.badge-row{margin-bottom:10px}.badge{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.badge-success{background:#dcfce7;color:#166534}.badge-warning{background:#fef3c7;color:#92400e}.mb16{margin-bottom:16px}.image-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.image-card form{margin-top:10px}
@media (max-width:900px){.grid,.admin-layout,.stat-grid,.searchbar,.inline-form,.form-grid-two{grid-template-columns:1fr}.topbar{flex-direction:column;gap:12px;align-items:flex-start}.page-head{flex-direction:column;align-items:flex-start}}

.searchbar-extended{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1200px}
.searchbar-extended .searchbar-actions{display:flex;gap:12px;align-items:center}
.results-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}
.category-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}.category-link{padding:10px 12px;border-radius:10px;color:var(--secondary)}.category-link:hover,.category-link.active{background:#eef4ff;color:var(--primary);font-weight:700}.category-link.sub{padding-left:24px;font-size:14px}.divider{border:none;border-top:1px solid var(--border);margin:18px 0}.empty-state{text-align:center}.listing-meta{display:inline-flex;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;margin-bottom:10px}.listing-description{color:var(--muted);min-height:48px}
@media (max-width:900px){.searchbar-extended{grid-template-columns:1fr}.searchbar-extended .searchbar-actions{flex-direction:column;align-items:stretch}}


.panel{background:#fff;border:1px solid #e6e6e6;border-radius:14px;padding:20px;box-shadow:0 4px 16px rgba(0,0,0,.04)}
.two-col-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}
.stack-form{display:grid;gap:10px}
.stack-form input,.stack-form textarea,.stack-form select,.inline-form input,.inline-form select,.message-actions select{width:100%;padding:12px;border:1px solid #d8d8d8;border-radius:10px;background:#fff}
.stack-form button,.inline-form button,.message-actions button{padding:12px 16px;border:none;border-radius:10px;background:#2563eb;color:#fff;font-weight:700;cursor:pointer}
.top-space{margin-top:20px}
.folder-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.folder-list{padding-left:18px;color:#4b5563}
.inline-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
.message-list{display:grid;gap:16px}
.message-card{border:1px solid #e5e7eb;border-radius:14px;padding:16px;background:#fcfcfd}
.message-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.message-folder-badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:700;margin:10px 0}
.message-actions{display:grid;grid-template-columns:180px 1fr auto;gap:10px;align-items:center;margin-top:14px}
.alert.success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}
.admin-sidebar a.active,.btn.active{background:#111827;color:#fff}
@media (max-width: 900px){.two-col-layout{grid-template-columns:1fr}.message-actions{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr}}


.badge{display:inline-block;background:#2563eb;color:#fff;border-radius:999px;padding:2px 8px;font-size:12px;margin-left:6px}
.three-col-layout{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:20px;align-items:start}
.thread-list{display:flex;flex-direction:column;gap:10px;max-height:70vh;overflow:auto}
.thread-item{display:block;padding:12px;border:1px solid #dbe2ea;border-radius:12px;text-decoration:none;color:inherit;background:#fff}
.thread-item.active{border-color:#2563eb;background:#eff6ff}
.thread-top{display:flex;justify-content:space-between;gap:10px}
.thread-preview{font-size:14px;color:#64748b;margin-top:4px}
.chat-panel{display:flex;flex-direction:column;min-height:70vh}
.chat-head{padding-bottom:10px;border-bottom:1px solid #e5e7eb;margin-bottom:10px}
.chat-messages{display:flex;flex-direction:column;gap:10px;flex:1;overflow:auto;padding:8px 0}
.chat-bubble{max-width:78%;padding:12px;border-radius:16px;background:#f1f5f9}
.chat-bubble.own{align-self:flex-end;background:#dbeafe}
.chat-bubble.other{align-self:flex-start;background:#f8fafc}
.chat-subject{font-weight:600;margin-bottom:4px}
.chat-meta{font-size:12px;color:#64748b;margin-top:6px}
.chat-form textarea{width:100%;margin-bottom:10px}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:20px 0}
.gallery-image{width:100%;height:180px;object-fit:cover;border-radius:14px;background:#f1f5f9}
.price-large{font-size:28px;font-weight:700;margin:14px 0}
.seller-box{margin-top:24px;padding:18px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}
.single-listing{max-width:900px;margin:0 auto}
@media (max-width: 1000px){.three-col-layout{grid-template-columns:1fr}.chat-panel{min-height:auto}}
