/* Manage Stores Component */ .manage-stores { display: flex; flex-direction: column; gap: 1.5rem; max-width: 800px; margin: 0 auto; width: 100%; } /* Section Styling */ .manage-section { background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px; padding: 2rem; width: 100%; box-sizing: border-box; } .manage-section h2 { font-size: 1.3rem; font-weight: 600; color: var(--text-primary); margin-bottom: 1rem; } .manage-stores-help { margin: -0.25rem 0 1rem; color: var(--text-secondary); } .manage-stores-note { margin: -0.25rem 0 1rem; padding: 0.875rem 1rem; border: 1px solid var(--border); border-radius: 8px; background: var(--background); color: var(--text-secondary); } /* Stores List */ .stores-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; } .store-card { background: var(--background); border: 1px solid var(--border); border-radius: 8px; padding: 1.25rem; transition: all 0.2s; display: flex; flex-direction: column; gap: 1rem; } .store-card:hover { border-color: var(--primary); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .store-info h3 { font-size: 1.1rem; font-weight: 600; color: var(--text-primary); margin: 0 0 0.5rem 0; } .store-location { color: var(--text-secondary); font-size: 0.9rem; margin: 0; } .default-badge { display: inline-block; background: var(--primary); color: white; padding: 0.25rem 0.5rem; border-radius: 4px; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; margin-top: 0.5rem; } .store-actions { display: flex; gap: 0.5rem; flex-wrap: wrap; } .store-location-list { display: flex; flex-direction: column; gap: 1rem; } .store-location-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.75rem; padding: 1rem; border: 1px solid var(--border); border-radius: 8px; background: var(--card-bg); } .store-location-row > .store-zones-panel, .store-location-row > .store-available-items-trigger { grid-column: 1 / -1; } .add-location-panel, .store-zone-create-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; } .add-location-panel input, .add-store-panel input, .store-zone-create-row input { width: 100%; box-sizing: border-box; padding: 0.75rem; border: 1px solid var(--border); border-radius: 8px; background: var(--input-bg); color: var(--text-primary); } .store-zones-panel { display: flex; flex-direction: column; gap: 0.75rem; } .store-zones-content { display: flex; flex-direction: column; gap: 0.75rem; padding: 0.75rem; border: 1px solid var(--border); border-radius: 8px; background: var(--background); } .store-zone-list { display: flex; flex-direction: column; gap: 0.5rem; } .store-zone-row { display: grid; grid-template-columns: 2rem minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; } .store-zone-order { color: var(--text-secondary); font-size: 0.85rem; text-align: right; } .store-zone-name { min-width: 0; color: var(--text-primary); } .store-zone-actions { display: flex; gap: 0.5rem; flex-wrap: wrap; justify-content: flex-end; } /* Add Store Panel */ .add-store-panel { display: flex; flex-direction: column; gap: 1rem; margin-top: 1rem; } .available-stores { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; } .available-store-card { background: var(--background); border: 1px solid var(--border); border-radius: 8px; padding: 1.25rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; transition: all 0.2s; } .available-store-card:hover { border-color: var(--primary); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .available-store-card .store-info { flex: 1; } .available-store-card h3 { font-size: 1rem; font-weight: 600; color: var(--text-primary); margin: 0 0 0.25rem 0; } .available-store-card .store-location { color: var(--text-secondary); font-size: 0.85rem; margin: 0; } /* Empty State */ .empty-message { color: var(--text-secondary); text-align: center; padding: 2rem; font-style: italic; } /* Responsive */ @media (max-width: 600px) { .stores-list, .available-stores { grid-template-columns: 1fr; } .store-actions { width: 100%; } .store-actions button { flex: 1; } .available-store-card { flex-direction: column; align-items: flex-start; } .available-store-card button { width: 100%; } .store-location-row, .add-location-panel, .store-zone-create-row, .store-zone-row { grid-template-columns: 1fr; } .store-zone-order { text-align: left; } .store-zone-actions { justify-content: stretch; } .store-zone-actions button { flex: 1; } }