.admin-media-page{width:100%;box-sizing:border-box;display:flex;flex-direction:column;height:100%}.media-action-bar{display:flex;flex-direction:column;gap:1rem;justify-content:space-between;align-items:flex-start;background:#fff;padding:1rem;border-radius:.375rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;margin-bottom:1.5rem}@media (min-width: 640px){.media-action-bar{flex-direction:row;align-items:center}}.media-page-title{font-size:1.125rem;font-weight:700;color:#1e293b;text-transform:uppercase;letter-spacing:.05em;margin:0}.media-upload-zone{border:2px dashed #cbd5e1;border-radius:.375rem;background:#f8fafc;padding:2.5rem;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.media-upload-zone:hover,.media-upload-zone.drag-over{background:#f1f5f9;border-color:#94a3b8}.media-upload-zone.uploading{opacity:.7;cursor:wait}.media-upload-icon{width:48px;height:48px;background:#fff;border-radius:.375rem;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#64748b;box-shadow:0 1px 2px #0000000d;transition:transform .2s}.media-upload-zone:hover .media-upload-icon{transform:scale(1.1)}.media-upload-title{font-size:.875rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .25rem}.media-upload-description{font-size:.75rem;color:#64748b;margin:0}.media-bulk-delete-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;font-size:.75rem;font-weight:600;border-radius:.375rem;border:1px solid #dc2626;background:#dc2626;color:#fff;cursor:pointer;transition:all .2s}.media-bulk-delete-btn:hover{background:#b91c1c;border-color:#b91c1c}.media-filters-card{background:#fff;padding:.5rem;border-radius:.375rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;margin-bottom:1.5rem}.media-filters-form{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.media-search-wrapper{position:relative;flex:1;min-width:200px}.media-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.media-search-form{width:100%}.media-search-input{width:100%;padding:.5rem .75rem .5rem 2.25rem;font-size:.875rem;border:none;background:transparent;color:#1e293b;outline:none}.media-search-input::placeholder{color:#94a3b8}.media-folder-input{flex:1;min-width:200px;padding:.5rem .75rem;font-size:.875rem;border:none;background:transparent;color:#1e293b;outline:none}.media-folder-input::placeholder{color:#94a3b8}.media-filter-clear-btn{padding:.5rem 1rem;font-size:.75rem;font-weight:500;border:1px solid #e2e8f0;border-radius:.375rem;background:#f8fafc;color:#475569;cursor:pointer;transition:all .2s;white-space:nowrap}.media-filter-clear-btn:hover{background:#e2e8f0;color:#1e293b}.media-empty-state{flex:1;background:#fff;border-radius:.375rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;min-height:300px}.media-empty-icon{width:64px;height:64px;background:#f8fafc;border-radius:.375rem;border:1px solid #f1f5f9;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:#cbd5e1}.media-empty-title{font-size:.875rem;font-weight:700;color:#1e293b;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.media-empty-description{font-size:.75rem;color:#64748b;margin:0;max-width:18rem}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.media-item{background:#fff;border:1px solid #e2e8f0;border-radius:.375rem;overflow:hidden;transition:all .2s;position:relative}.media-item:hover{border-color:#cbd5e1}.media-item.selected{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.media-item-checkbox{position:absolute;top:.5rem;left:.5rem;z-index:10;background:#fffffff2;padding:.25rem;border-radius:.25rem}.media-item-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.media-item-preview{width:100%;height:150px;background:#f8fafc;display:flex;align-items:center;justify-content:center;overflow:hidden}.media-item-preview img{width:100%;height:100%;object-fit:cover}.file-icon{font-size:3rem;color:#94a3b8}.media-item-info{padding:.75rem}.media-item-name{font-weight:600;color:#1e293b;margin-bottom:.5rem;font-size:.875rem;word-break:break-word}.media-item-meta{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:#64748b}.used-badge{background:#15803d;color:#fff;padding:.125rem .5rem;border-radius:.25rem;font-size:.625rem;font-weight:600}.unused-badge{background:#dc2626;color:#fff;padding:.125rem .5rem;border-radius:.25rem;font-size:.625rem;font-weight:600}.media-item-actions{display:flex;gap:.5rem;padding:.5rem .75rem;background:#f8fafc;border-top:1px solid #f1f5f9}.view-btn,.delete-btn{background:none;border:none;cursor:pointer;padding:.25rem;transition:color .2s;color:#64748b;display:flex;align-items:center;justify-content:center}.view-btn:hover{color:#3b82f6}.delete-btn:hover{color:#dc2626}.delete-btn:disabled{opacity:.5;cursor:not-allowed}.media-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;padding:1.5rem;background:#fff;border-radius:.375rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d}.pagination-btn{padding:.5rem 1rem;border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{color:#64748b;font-size:.875rem}@media (max-width: 768px){.media-action-bar{padding:.75rem}.media-upload-zone{padding:1.5rem}.media-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.media-item-preview{height:120px}.media-pagination{flex-wrap:wrap;gap:.5rem;padding:1rem}}@media (max-width: 480px){.media-page-title{font-size:1rem}.media-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.media-upload-zone{padding:1.25rem}.media-empty-state{padding:2rem 1rem}}
