.dictionary-list { padding-top: 0; position: relative; } .dictionary-back-button { position: absolute; top: 0; left: 0; background: transparent; border: none; border-radius: 8px; padding: 0.5rem; cursor: pointer; color: #2c3e50; transition: all 0.2s; z-index: 10; } .dictionary-back-button:hover { background: rgba(0, 0, 0, 0.05); } .dictionaries-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 1rem; padding-top: 2.5rem; } .dictionary-card { background: white; border: 1px solid #ddd; border-radius: 12px; padding: 1.5rem 1rem; transition: transform 0.2s, box-shadow 0.2s; display: flex; flex-direction: column; justify-content: center; align-items: center; cursor: pointer; min-height: 180px; position: relative; } .dictionary-list .dictionary-card .dictionary-menu-button { position: absolute; top: 0.5rem; right: 0; background: transparent !important; border: none !important; border-radius: 6px !important; width: 40px !important; height: 40px !important; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 1.5rem !important; color: #2c3e50 !important; font-weight: bold; transition: all 0.2s; z-index: 10; padding: 0; line-height: 1; } .dictionary-list .dictionary-card .dictionary-menu-button:hover { opacity: 0.7; transform: scale(1.1); } .dictionary-card:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); } .dictionary-words-count { font-size: 2.5rem; font-weight: bold; color: #2c3e50; margin-bottom: auto; display: flex; align-items: center; justify-content: center; flex: 1; } .dictionary-name { font-size: 1rem; font-weight: 500; color: #2c3e50; text-align: center; margin-top: auto; padding-top: 0.5rem; } .add-dictionary-button { background: transparent; border: 2px dashed #2c3e50; border-radius: 12px; padding: 1.5rem 1rem; transition: transform 0.2s, box-shadow 0.2s, background-color 0.2s; display: flex; flex-direction: column; justify-content: center; align-items: center; cursor: pointer; min-height: 180px; position: relative; } .add-dictionary-button:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(44, 62, 80, 0.2); background-color: rgba(44, 62, 80, 0.05); border-color: #1a252f; } .add-dictionary-icon { font-size: 3rem; font-weight: bold; color: #000000; margin-bottom: auto; display: flex; align-items: center; justify-content: center; flex: 1; line-height: 1; } .add-dictionary-text { font-size: 1rem; font-weight: 500; color: #000000; text-align: center; margin-top: auto; padding-top: 0.5rem; } /* Modal styles */ .dictionary-modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; z-index: 1000; } .dictionary-modal { background: white; border-radius: 12px; padding: 0; max-width: 400px; width: 90%; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); animation: dictionaryModalSlideIn 0.2s ease-out; } @keyframes dictionaryModalSlideIn { from { transform: translateY(-20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } } .dictionary-modal-header { display: flex; justify-content: center; align-items: center; padding: 1.5rem 1.5rem 0.5rem 1.5rem; position: relative; } .dictionary-modal-header h3 { margin: 0; color: #2c3e50; font-size: 1.75rem; text-align: center; } .dictionary-modal-actions { display: flex; flex-direction: column; gap: 0.75rem; padding: 0.5rem 1.5rem 1.5rem 1.5rem; } .dictionary-modal-delete { width: 100%; padding: 0.75rem 1.5rem; border: none; border-radius: 6px; font-size: 1rem; font-weight: 500; cursor: pointer; transition: all 0.2s; background-color: #e74c3c; color: white; } .dictionary-modal-delete:hover { background-color: #c0392b; transform: translateY(-1px); }