/* Ensure html and body take full height */ html, body { height: 100%; margin: 0; } /* Global Styles */ body { font-family: 'Helvetica Neue', Arial, sans-serif; background-color: #f4f7f9; padding: 0; color: #333; } .wrapper { display: grid; grid-template-rows: auto 1fr auto; min-height: 100%; } .container { width: 90%; max-width: 900px; margin: 0 auto; padding-bottom: 200px; } .container a { font-size: 18px; } /* Breadcrumb Styles */ .breadcrumb { margin-bottom: 20px; font-size: 18px; } .breadcrumb a { text-decoration: none; color: #3498db; margin-right: 5px; } .breadcrumb span { color: #7f8c8d; margin-right: 5px; } /* List Styles */ ul { list-style-type: none; padding: 0; } li { margin: 10px 0; padding: 10px; background-color: #fff; border-radius: 5px; box-shadow: 0 1px 3px rgba(0,0,0,0.1); } /* Directory Items (in a list) */ .directory-item { padding: 15px; /* Use flex for list items if needed */ } /* Grid Layout for Directories */ .directories-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; } .directories-grid .directory-item { background-color: #fff; padding: 15px 10px; border-radius: 5px; text-align: center; box-shadow: 0 1px 3px rgba(0,0,0,0.1); } /* File Item Styles (for both music and image files) */ .file-item { display: grid; grid-template-columns: 1fr auto; align-items: center; margin: 10px 0; padding: 15px; background-color: #fff; border-radius: 5px; box-shadow: 0 1px 3px rgba(0,0,0,0.1); } /* Link Styles */ a.directory-link, a.play-file { color: #2c3e50; text-decoration: none; word-break: break-all; } a.directory-link:hover, a.play-file:hover { color: #2980b9; } a.show-transcript { text-decoration: none; color: #e67e22; font-size: 20px; margin-left: 10px; } a.show-transcript:hover { color: #d35400; } .currently-playing { background-color: #a6bedf; /* Adjust to your preferred color */ } /* Footer Player Styles */ footer { position: fixed; bottom: 0; left: 0; right: 0; background-color: #34495e; color: #fff; padding: 7px; text-align: center; z-index: 1000; /* Make sure it sits on top */ display: flex; align-items: center; justify-content: center; } footer audio { width: 75%; transform: scale(1.3); /* Default for other devices */ padding: 10px 0; } /* Target Safari specifically */ @supports (-webkit-touch-callout: none) { footer audio { width: 60%; transform: scale(1.6); /* Different scale for Apple devices */ } } .audio-player-container { background-color: #fff; border-radius: 8px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); padding: 7px; width: 100%; } /* Now Playing Info */ .now-playing-info { margin-top: 5px; font-size: 16px; color: #2c3e50; text-align: center; } /* Modal Styles */ #transcriptModal { display: none; position: fixed; z-index: 2000; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.7); } #transcriptModal .modal-content { background-color: #fff; margin: 5% auto; padding: 20px; border-radius: 5px; width: 90%; max-width: 800px; position: relative; max-height: 80vh; overflow-y: auto; } #transcriptModal .close { position: absolute; right: 15px; top: 10px; font-size: 28px; font-weight: bold; cursor: pointer; } /* Basic Markdown Styles */ #transcriptContent h1, #transcriptContent h2, #transcriptContent h3 { border-bottom: 1px solid #eee; padding-bottom: 5px; } #transcriptContent p { line-height: 1.6; } #transcriptContent pre { background-color: #f6f8fa; padding: 10px; overflow-x: auto; }