.refine-panel { margin: 14px 0; border: 1px solid #dce2dc; border-radius: 16px; background: #fff; }
.refine-panel summary { padding: 13px 16px; cursor: pointer; color: #243d32; font-weight: 800; }
.refine-panel summary span { margin-left: 8px; font-size: 12px; font-weight: 500; color: #626d65; }
.refine-fields { display: grid; grid-template-columns: minmax(150px, 1.2fr) 1fr 1fr; gap: 12px; padding: 0 16px 12px; }
.refine-fields label { display: grid; gap: 5px; min-width: 0; font-size: 13px; font-weight: 700; }
.refine-fields input, .refine-fields select { width: 100%; min-width: 0; min-height: 44px; padding: 10px; border: 1px solid #cdd5cf; border-radius: 9px; background: #fff; color: #22352a; font: inherit; font-weight: 400; }
.refine-note { padding: 0 16px 14px; margin: 0; font-size: 12px; line-height: 1.5; color: #606b64; }
.refine-note:empty { display:none; }
.active-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.active-filters:empty { display:none; }
.active-filters button { padding: 8px 12px; border-radius: 20px; border: 1px solid #c5d4c9; background:#edf5ee; color: #17472f; font:inherit; font-size:12px; cursor:pointer; }
.empty-results { grid-column: 1/-1; padding: 36px 22px; border:1px solid #dce2dc; border-radius:16px; background:#fff; text-align:center; }
.empty-results h3 { margin:0 0 10px; font-size:22px; }
.empty-results p { line-height:1.6; color:#626b65; }
.empty-results button, .empty-results a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; margin:6px; border:1px solid #cdd5cf; border-radius:10px; font:inherit; color:#17472f; background:#fff; text-decoration:none; cursor:pointer; }
.empty-results button { background:#edf5ee; font-weight:700; }
.result-row { flex-wrap:wrap; gap:8px; }
.catalog-shortcuts { display:flex; gap:8px; margin:0 0 12px; flex-wrap:wrap; }
.catalog-shortcuts a { font-size:13px; text-decoration:none; color:#26593f; padding:7px 11px; border-radius:8px; background:#edf2eb; }
@media(max-width:600px) { .refine-fields { grid-template-columns:1fr 1fr; } .refine-fields label:first-child { grid-column:1/-1; } .refine-panel summary span { display:block; margin:3px 0 0; } .empty-results { padding:24px 14px; } .top-actions .account-link { display:inline-flex; font-size:12px; } }
@media(max-width:620px) { .topbar .brand { flex:0 0 auto; } .topbar .brand span { display:none; } }
