{"id":332,"date":"2026-04-25T15:47:10","date_gmt":"2026-04-25T15:47:10","guid":{"rendered":"https:\/\/gamingwithdaopa.ellatha.com\/music\/?p=332"},"modified":"2026-04-27T17:52:23","modified_gmt":"2026-04-27T17:52:23","slug":"under-this-american-sky-lyrics","status":"publish","type":"post","link":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/","title":{"rendered":"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026"},"content":{"rendered":"\r\n<article id=\"custom-article\" style=\"line-height: 1.6; color: #e6e6e6; background: #0a0a0f; padding: 0; border-radius: 0; max-width: 100%; margin: 0; font-family: Arial, system-ui, sans-serif;\">\r\n<!-- ==================== JSON-LD SCHEMA ==================== -->\r\n<script type=\"application\/ld+json\">\r\n{\r\n  \"@context\": \"https:\/\/schema.org\",\r\n  \"@type\": \"MusicRecording\",\r\n  \"name\": \"Under This American Sky\",\r\n  \"byArtist\": {\r\n    \"@type\": \"MusicGroup\",\r\n    \"name\": \"DaOpa\"\r\n  },\r\n  \"duration\": \"PT4M44S\",\r\n  \"inLanguage\": \"en-US\",\r\n  \"isPartOf\": {\r\n    \"@type\": \"MusicAlbum\",\r\n    \"name\": \"Heartland Country Pop\"\r\n  },\r\n  \"lyrics\": {\r\n    \"@type\": \"CreativeWork\",\r\n    \"text\": \"Under This American Sky - Official Lyrics by DaOpa\\n\\nWakin\u2019 up with the rooster crowin\u2019 loud at first light\\nCoffee black and strong, boots laced up tight\\nFrom the rolling hills of Tennessee to the Pacific spray\\nThis land shaped every scar and every smile on my face\\n\\nNo matter the heartache, no matter the fight\\nOne truth keeps callin\u2019 through the dark of night\\n\\nUnder this American sky, I stand with my head held high\\nRed white and blue flowin\u2019 deep in my blood tonight\\nFrom the amber waves to the purple mountain glow\\nThis is the dream that my heart will always know\\nUnder this American sky, liberty\u2019s song rings true\\nProud and unbroken, forever me and you\\n\\nForever me and you\\n\\nFactory lights still burnin\u2019 late into the dark\\nFarmers tendin\u2019 soil with calloused hands and heart\\nDiverse voices liftin\u2019 as one beneath the same big moon\\nEvery hero\u2019s story woven into this grand tune\\n\\nHand over heart, eyes on the risin\u2019 sun\\nThe future\u2019s ours to claim, the battle\u2019s never done\\n\\nUnder this American sky, I stand with my head held high\\nRed white and blue flowin\u2019 deep in my blood tonight\\nFrom the amber waves to the purple mountain glow\\nThis is the dream that my heart will always know\\nUnder this American sky, liberty\u2019s song rings true\\nProud and unbroken, forever me and you\\n\\nCarried the weight of the fallen through the years\\nKept the torch burnin\u2019 bright through the joy and the tears\\nFor the ones comin\u2019 after, we\u2019ll guard this flame so bright\\nTogether we rise, in this land of endless light\\n\\nUnder this American sky, I stand with my head held high\\nRed white and blue flowin\u2019 deep in my blood tonight\\nFrom the amber waves to the purple mountain glow\\nThis is the dream that my heart will always know\\nUnder this American sky, liberty\u2019s song rings true\\nProud and unbroken, forever me and you\\nOh this sky, my home, forever true\"\r\n  },\r\n  \"url\": \"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/\"\r\n}\r\n<\/script>\r\n\r\n<style>\r\n    :root {\r\n        --red: #ef4444;\r\n        --gold: #fbbf24;\r\n        --blue: #3b82f6;\r\n    }\r\n    #custom-article {\r\n        font-family: Arial, system-ui, -apple-system, sans-serif;\r\n        color: #f1f5f9;\r\n        background: #0a0a0f;\r\n        max-width: 1200px;\r\n        margin: 0 auto;\r\n        padding: 0;\r\n        line-height: 1.6;\r\n    }\r\n    .heartland-container {\r\n        max-width: 1200px;\r\n        margin: 0 auto;\r\n    }\r\n    .fa-heart.heart-favorited {\r\n        animation: heartBeat 0.8s infinite;\r\n    }\r\n    @keyframes heartBeat {\r\n        0%, 100% { transform: scale(1); }\r\n        50% { transform: scale(1.35); }\r\n    }\r\n    .hero {\r\n        position: relative;\r\n        height: 55vh;\r\n        min-height: 460px;\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        overflow: hidden;\r\n        background-size: cover;\r\n        background-position: center;\r\n    }\r\n    .hero-overlay {\r\n        position: absolute;\r\n        inset: 0;\r\n        background: linear-gradient(to bottom, rgba(0,0,0,0.65), rgba(0,0,0,0.35), rgba(0,0,0,0.75));\r\n        z-index: 2;\r\n    }\r\n    .hero-content {\r\n        position: relative;\r\n        z-index: 10;\r\n        text-align: center;\r\n        padding: 0 20px;\r\n        max-width: 900px;\r\n    }\r\n    .patriot-badge {\r\n        display: inline-flex;\r\n        align-items: center;\r\n        gap: 8px;\r\n        background: rgba(255,255,255,0.1);\r\n        border: 1px solid rgba(255,255,255,0.2);\r\n        padding: 6px 16px;\r\n        border-radius: 9999px;\r\n        font-size: 11px;\r\n        letter-spacing: 2px;\r\n        margin-bottom: 24px;\r\n    }\r\n    .gradient-text {\r\n        background: linear-gradient(90deg, #ef4444, #fbbf24, #3b82f6);\r\n        -webkit-background-clip: text;\r\n        -webkit-text-fill-color: transparent;\r\n        background-size: 200% 100%;\r\n        animation: patriot-shift 4s linear infinite;\r\n    }\r\n    @keyframes patriot-shift {\r\n        0% { background-position: 0% 50%; }\r\n        100% { background-position: 200% 50%; }\r\n    }\r\n    .subtitle {\r\n        font-size: 26px;\r\n        color: #94a3b8;\r\n        margin-bottom: 32px;\r\n    }\r\n    .hero-buttons {\r\n        display: flex;\r\n        gap: 16px;\r\n        justify-content: center;\r\n        flex-wrap: wrap;\r\n    }\r\n    .btn-primary {\r\n        background: transparent;\r\n        color: #fff;\r\n        border: 2px solid #fbbf24;\r\n        padding: 16px 36px;\r\n        border-radius: 9999px;\r\n        font-weight: 700;\r\n        font-size: 17px;\r\n        display: inline-flex;\r\n        align-items: center;\r\n        gap: 10px;\r\n        text-decoration: none;\r\n        transition: all 0.2s;\r\n        box-shadow: 0 10px 30px rgba(0,0,0,0.3);\r\n    }\r\n    .btn-primary:hover {\r\n        background: #fbbf24;\r\n        color: #000;\r\n        transform: translateY(-2px);\r\n    }\r\n    .btn-secondary {\r\n        background: transparent;\r\n        color: #fff;\r\n        border: 1px solid rgba(255,255,255,0.3);\r\n        padding: 16px 28px;\r\n        border-radius: 9999px;\r\n        font-weight: 600;\r\n        display: inline-flex;\r\n        align-items: center;\r\n        gap: 10px;\r\n        transition: all 0.2s;\r\n    }\r\n    .btn-secondary:hover {\r\n        background: rgba(255,255,255,0.1);\r\n    }\r\n    .smart-player {\r\n        position: sticky;\r\n        top: 0;\r\n        z-index: 100;\r\n        background: rgba(18, 18, 24, 0.92);\r\n        backdrop-filter: blur(16px);\r\n        border-bottom: 1px solid rgba(255,255,255,0.1);\r\n        padding: 14px 24px;\r\n        box-shadow: 0 8px 30px rgba(0,0,0,0.4);\r\n    }\r\n    .player-inner {\r\n        max-width: 1200px;\r\n        margin: 0 auto;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 20px;\r\n        flex-wrap: wrap;\r\n    }\r\n    .song-info {\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 14px;\r\n        min-width: 220px;\r\n    }\r\n    .album-art {\r\n        width: 46px;\r\n        height: 46px;\r\n        background: linear-gradient(135deg, #ef4444, #fbbf24);\r\n        border-radius: 12px;\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        color: white;\r\n        font-size: 22px;\r\n    }\r\n    .waveform {\r\n        display: flex;\r\n        align-items: flex-end;\r\n        height: 42px;\r\n        gap: 3px;\r\n        margin-left: 12px;\r\n    }\r\n    .waveform-bar {\r\n        width: 4px;\r\n        background: linear-gradient(to top, #ef4444, #fbbf24);\r\n        border-radius: 9999px;\r\n        animation: waveform-dance 1.1s infinite ease-in-out;\r\n        box-shadow: 0 0 6px rgba(239, 68, 68, 0.5);\r\n    }\r\n    .waveform-bar:nth-child(2) { animation-delay: 120ms; }\r\n    .waveform-bar:nth-child(3) { animation-delay: 280ms; }\r\n    .waveform-bar:nth-child(4) { animation-delay: 90ms; }\r\n    .waveform-bar:nth-child(5) { animation-delay: 410ms; }\r\n    @keyframes waveform-dance {\r\n        0%, 100% { height: 22%; }\r\n        50% { height: 100%; }\r\n    }\r\n    .progress-container {\r\n        flex: 1;\r\n        min-width: 220px;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 12px;\r\n    }\r\n    .time {\r\n        font-family: monospace;\r\n        font-size: 12px;\r\n        color: #64748b;\r\n        width: 42px;\r\n        text-align: center;\r\n    }\r\n    .progress-bar {\r\n        flex: 1;\r\n        height: 5px;\r\n        background: rgba(255,255,255,0.15);\r\n        border-radius: 9999px;\r\n        position: relative;\r\n        cursor: pointer;\r\n    }\r\n    .progress-fill {\r\n        height: 100%;\r\n        background: linear-gradient(to right, #ef4444, #fbbf24);\r\n        border-radius: 9999px;\r\n        transition: width 0.1s linear;\r\n    }\r\n    .lyrics-wrapper {\r\n        background: #121218;\r\n        border-radius: 20px;\r\n        padding: 32px;\r\n        margin: 24px 0;\r\n        box-shadow: 0 25px 50px -12px rgb(0 0 0 \/ 0.4);\r\n        border: 1px solid rgba(255,255,255,0.06);\r\n    }\r\n    .lyric-line {\r\n        display: flex;\r\n        align-items: flex-start;\r\n        gap: 16px;\r\n        padding: 14px 20px;\r\n        border-radius: 16px;\r\n        margin-bottom: 6px;\r\n        transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\r\n        cursor: pointer;\r\n    }\r\n    .lyric-line:hover {\r\n        background: rgba(239, 68, 68, 0.07);\r\n        transform: translateX(6px);\r\n    }\r\n    .lyric-line.active {\r\n        background: linear-gradient(90deg, rgba(239,68,68,0.18), rgba(251,191,36,0.08));\r\n        box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.35);\r\n        transform: scale(1.015);\r\n    }\r\n    .lyric-line.chorus {\r\n        background: rgba(239, 68, 68, 0.13);\r\n        border-left: 6px solid #ef4444;\r\n        font-weight: 700;\r\n        color: #fecaca;\r\n    }\r\n    .lyric-number {\r\n        font-family: monospace;\r\n        font-size: 12px;\r\n        color: #64748b;\r\n        width: 26px;\r\n        flex-shrink: 0;\r\n        padding-top: 3px;\r\n    }\r\n    .lyric-text {\r\n        flex: 1;\r\n        font-size: 1.05rem;\r\n        line-height: 1.5;\r\n    }\r\n    .lyric-note-preview {\r\n        margin-top: 10px;\r\n        padding: 10px 14px;\r\n        background: rgba(16, 185, 129, 0.12);\r\n        border-left: 4px solid #10b981;\r\n        border-radius: 8px;\r\n        font-size: 14.5px;\r\n        line-height: 1.45;\r\n        color: #a7f3d0;\r\n        white-space: pre-wrap;\r\n    }\r\n    .lyric-actions {\r\n        display: flex;\r\n        gap: 4px;\r\n        opacity: 0;\r\n        transition: opacity 0.2s;\r\n    }\r\n    .lyric-line:hover .lyric-actions {\r\n        opacity: 1;\r\n    }\r\n    .action-btn {\r\n        width: 32px;\r\n        height: 32px;\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        color: #64748b;\r\n        border-radius: 9999px;\r\n        transition: all 0.2s;\r\n    }\r\n    .action-btn:hover {\r\n        color: #ef4444;\r\n        background: rgba(239,68,68,0.1);\r\n    }\r\n    .annotation-view {\r\n        background: #1a1a20;\r\n        border-radius: 16px;\r\n        padding: 20px;\r\n        margin-bottom: 16px;\r\n    }\r\n    .annotation-note {\r\n        margin-top: 12px;\r\n        padding: 12px 16px;\r\n        background: rgba(16, 185, 129, 0.12);\r\n        border-left: 4px solid #10b981;\r\n        border-radius: 8px;\r\n        font-size: 15px;\r\n        color: #a7f3d0;\r\n        white-space: pre-wrap;\r\n    }\r\n    .annotation-input {\r\n        width: 100%;\r\n        background: rgba(255,255,255,0.08);\r\n        border: 1px solid rgba(255,255,255,0.15);\r\n        border-radius: 12px;\r\n        padding: 12px 16px;\r\n        color: #e2e8f0;\r\n        font-size: 15px;\r\n        resize: vertical;\r\n        min-height: 68px;\r\n        margin-top: 8px;\r\n    }\r\n    .annotation-saved {\r\n        font-size: 13px;\r\n        color: #10b981;\r\n        margin-top: 4px;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 6px;\r\n    }\r\n    .tabs {\r\n        display: flex;\r\n        border-bottom: 1px solid rgba(255,255,255,0.1);\r\n        margin-bottom: 24px;\r\n        gap: 8px;\r\n    }\r\n    .tab-btn {\r\n        padding: 14px 26px;\r\n        font-weight: 600;\r\n        color: #94a3b8;\r\n        background: transparent;\r\n        border: none;\r\n        cursor: pointer;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 8px;\r\n        font-size: 15px;\r\n        transition: all 0.2s;\r\n    }\r\n    .tab-btn.active {\r\n        color: #ef4444;\r\n        border-bottom: 3px solid #ef4444;\r\n        margin-bottom: -1px;\r\n    }\r\n    .karaoke-modal {\r\n        position: fixed;\r\n        inset: 0;\r\n        background: rgba(0,0,0,0.96);\r\n        z-index: 200;\r\n        display: none;\r\n        align-items: center;\r\n        justify-content: center;\r\n        padding: 20px;\r\n    }\r\n    .karaoke-content {\r\n        max-width: 820px;\r\n        width: 100%;\r\n        text-align: center;\r\n        position: relative;\r\n    }\r\n    .karaoke-text {\r\n        font-size: 42px;\r\n        line-height: 1.15;\r\n        font-weight: 800;\r\n        color: white;\r\n        min-height: 110px;\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        padding: 0 30px;\r\n        text-shadow: 0 4px 30px rgba(0,0,0,0.6);\r\n    }\r\n    .karaoke-annotation {\r\n        margin-top: 24px;\r\n        font-size: 18px;\r\n        color: #a7f3d0;\r\n        background: rgba(16, 185, 129, 0.15);\r\n        padding: 16px 24px;\r\n        border-radius: 16px;\r\n        border-left: 5px solid #10b981;\r\n        max-width: 620px;\r\n        margin-left: auto;\r\n        margin-right: auto;\r\n    }\r\n    .toast {\r\n        position: fixed;\r\n        bottom: 24px;\r\n        right: 24px;\r\n        background: #1e2937;\r\n        color: white;\r\n        padding: 14px 22px;\r\n        border-radius: 16px;\r\n        box-shadow: 0 10px 40px rgba(0,0,0,0.4);\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 12px;\r\n        z-index: 300;\r\n        max-width: 320px;\r\n        font-size: 14px;\r\n        border: 1px solid rgba(255,255,255,0.1);\r\n    }\r\n<\/style>\r\n\r\n<!-- INTRO PARAGRAPH -->\r\n<div style=\"margin-bottom: 48px; padding: 0 20px; max-width: 820px; margin-left: auto; margin-right: auto;\">\r\n    <p style=\"font-size: 1.15rem; line-height: 1.7; color: #cbd5e1; text-align:center;\"><br>\r\n        <strong>Under This American Sky<\/strong> is a powerful patriotic anthem by DaOpa from the Heartland Country Pop album (2026). This heartfelt track celebrates the vast beauty of America, unity, freedom, and the unbreakable heartland spirit under one sky.\r\n        Read the full lyrics below, sync them with the official music video, enter karaoke mode, or add your own personal notes.\r\n    <\/p>\r\n<\/div>\r\n\r\n<!-- HERO -->\r\n<div class=\"hero\" id=\"hero-section\">\r\n    <div class=\"hero-overlay\"><\/div>\r\n    <div class=\"hero-content\">\r\n        <div class=\"patriot-badge\">\r\n            <i class=\"fa fa-flag\" style=\"color:#ef4444;\"><\/i>\r\n            <span style=\"letter-spacing:2.5px; font-size:10px;\">HEARTLAND COUNTRY POP<\/span>\r\n        <\/div>\r\n        <h1 id=\"hero-title\" style=\"font-size:72px; font-weight:900; line-height:0.92; letter-spacing:-3.5px; margin-bottom:8px;\"><\/h1>\r\n        <p id=\"hero-subtitle\" class=\"subtitle\"><\/p>\r\n        <div class=\"hero-buttons\">\r\n            <button onclick=\"enterKaraokeMode()\" class=\"btn-primary\" aria-label=\"Enter karaoke mode\">\r\n                <i class=\"fa fa-play\" style=\"margin-right:6px;\"><\/i> ENTER KARAOKE MODE\r\n            <\/button>\r\n            <button onclick=\"startPlayback()\" class=\"btn-secondary\" aria-label=\"Start playback\">\r\n                <i class=\"fa fa-headset\"><\/i> <span>Play Along<\/span>\r\n            <\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<!-- STICKY SMART PLAYER -->\r\n<div class=\"smart-player\">\r\n    <div class=\"player-inner\">\r\n        <div class=\"song-info\">\r\n            <div class=\"album-art\"><i class=\"fa fa-music\"><\/i><\/div>\r\n            <div>\r\n                <div id=\"player-song-title\" style=\"font-weight:700; font-size:17px;\"><\/div>\r\n                <div id=\"player-artist\" style=\"font-size:12px; color:#64748b;\"><\/div>\r\n            <\/div>\r\n        <\/div>\r\n        <div style=\"display:flex; align-items:center; gap:12px; flex:1; min-width:280px;\">\r\n            <button onclick=\"togglePlayback()\" id=\"play-btn\"\r\n                    style=\"width:48px;height:48px;background:transparent;border:2px solid #f1f5f9;color:#f1f5f9;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(0,0,0,0.3);\"\r\n                    aria-label=\"Play or pause song\">\r\n                <i class=\"fa fa-play\" id=\"play-icon\" style=\"font-size:20px;margin-left:3px;\"><\/i>\r\n            <\/button>\r\n            <button onclick=\"restartPlayback()\" style=\"width:36px;height:36px;background:transparent;border:none;color:#64748b;cursor:pointer;\" aria-label=\"Restart song\">\r\n                <i class=\"fa fa-repeat\"><\/i>\r\n            <\/button>\r\n            <div class=\"progress-container\">\r\n                <div class=\"time\" id=\"current-time\" aria-live=\"polite\">0:00<\/div>\r\n                <div class=\"progress-bar\" id=\"progress-bar\" onclick=\"seekFromClick(event)\" role=\"slider\" aria-label=\"Seek through song\" aria-valuemin=\"0\" aria-valuemax=\"100\" aria-valuenow=\"0\">\r\n                    <div class=\"progress-fill\" id=\"progress-fill\" style=\"width:0%\"><\/div>\r\n                    <input type=\"range\" id=\"progress-slider\" min=\"0\" max=\"100\" step=\"0.1\" value=\"0\" style=\"position:absolute;top:-6px;left:0;width:100%;height:18px;opacity:0;cursor:pointer;\" oninput=\"seekTo(this.value)\" aria-label=\"Song progress slider\">\r\n                <\/div>\r\n                <div class=\"time\" id=\"total-time\">4:10<\/div>\r\n            <\/div>\r\n            <div class=\"waveform\" id=\"waveform\">\r\n                <div class=\"waveform-bar\" style=\"height:28%\"><\/div>\r\n                <div class=\"waveform-bar\" style=\"height:65%\"><\/div>\r\n                <div class=\"waveform-bar\" style=\"height:92%\"><\/div>\r\n                <div class=\"waveform-bar\" style=\"height:48%\"><\/div>\r\n                <div class=\"waveform-bar\" style=\"height:78%\"><\/div>\r\n            <\/div>\r\n        <\/div>\r\n        <div style=\"display:flex;align-items:center;gap:12px;\">\r\n            <div style=\"display:flex;background:rgba(255,255,255,0.08);border-radius:9999px;padding:2px;font-size:12px;\">\r\n                <button onclick=\"setPlaybackSpeed(0.75)\" id=\"speed-075\" style=\"padding:5px 11px;border-radius:9999px;border:none;background:transparent;color:#94a3b8;cursor:pointer;\">0.75\u00d7<\/button>\r\n                <button onclick=\"setPlaybackSpeed(1)\" id=\"speed-1\" style=\"padding:5px 11px;border-radius:9999px;border:none;background:rgba(255,255,255,0.2);color:white;font-weight:700;cursor:pointer;\">1\u00d7<\/button>\r\n                <button onclick=\"setPlaybackSpeed(1.25)\" id=\"speed-125\" style=\"padding:5px 11px;border-radius:9999px;border:none;background:transparent;color:#94a3b8;cursor:pointer;\">1.25\u00d7<\/button>\r\n            <\/div>\r\n            <button onclick=\"toggleKaraoke()\" style=\"padding:8px 14px;border:1px solid rgba(255,255,255,0.2);background:transparent;color:white;border-radius:9999px;font-size:13px;display:flex;align-items:center;gap:6px;\" aria-label=\"Toggle karaoke mode\">\r\n                <i class=\"fa fa-microphone\"><\/i> <span style=\"font-size:13px;\">Karaoke<\/span>\r\n            <\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div class=\"heartland-container\" style=\"padding:0 20px 80px;\">\r\n    <!-- TABS -->\r\n    <div class=\"tabs\" role=\"tablist\">\r\n        <button onclick=\"switchTab(0)\" class=\"tab-btn active\" id=\"tab-0\" role=\"tab\" aria-selected=\"true\"><i class=\"fa fa-align-left\"><\/i> FULL LYRICS<\/button>\r\n        <button onclick=\"switchTab(1)\" class=\"tab-btn\" id=\"tab-1\" role=\"tab\"><i class=\"fa fa-microphone\"><\/i> KARAOKE<\/button>\r\n        <button onclick=\"switchTab(2)\" class=\"tab-btn\" id=\"tab-2\" role=\"tab\"><i class=\"fa fa-book\"><\/i> ANNOTATED<\/button>\r\n    <\/div>\r\n    <!-- LYRICS WRAPPER -->\r\n    <div class=\"lyrics-wrapper\">\r\n        <div id=\"lyrics-full\"><\/div>\r\n        <div id=\"lyrics-karaoke\" style=\"display:none;\"><\/div>\r\n        <div id=\"lyrics-annotated\" style=\"display:none;\"><\/div>\r\n    <\/div>\r\n    <!-- YOUTUBE PLAYER -->\r\n    <div style=\"max-width:1200px; margin:40px auto 20px; padding:0 20px;\">\r\n        <div style=\"font-size:13px; letter-spacing:1px; color:#64748b; margin-bottom:12px; text-align:center;\">OFFICIAL MUSIC PLAYER<\/div>\r\n        <div id=\"yt-player\" style=\"width:100%; aspect-ratio:16\/9; background:#000; border-radius:12px; overflow:hidden;\"><\/div>\r\n    <\/div>\r\n    <!-- LINKS -->\r\n    <div style=\"text-align:center; margin-top:56px;\">\r\n        <a id=\"youtube-link\" href=\"#\" target=\"_blank\" style=\"display:inline-flex;align-items:center;gap:10px;background:#ef4444;color:white;padding:14px 32px;border-radius:9999px;text-decoration:none;font-weight:600;margin-right:12px;\" aria-label=\"Watch on YouTube\"><i class=\"fa fa-youtube-play\" style=\"font-size:18px;\"><\/i> WATCH ON YOUTUBE<\/a>\r\n        <a id=\"spotify-link\" href=\"#\" target=\"_blank\" style=\"display:inline-flex;align-items:center;gap:10px;background:#1DB954;color:white;padding:14px 32px;border-radius:9999px;text-decoration:none;font-weight:600;\" aria-label=\"Listen on Spotify\"><i class=\"fa fa-spotify\" style=\"font-size:18px;\"><\/i> LISTEN ON SPOTIFY<\/a>\r\n    <\/div>\r\n    <noscript>\r\n        <div style=\"margin-top: 40px; padding-top: 30px; border-top: 1px dashed rgba(255,255,255,0.2); font-size: 1.05rem; line-height: 1.7; color: #cbd5e1;\">\r\n            <strong>\ud83d\udccb JavaScript is disabled.<\/strong> Here are the full official lyrics for you:<br><br>\r\nWakin\u2019 up with the rooster crowin\u2019 loud at first light<br>\r\nCoffee black and strong, boots laced up tight<br>\r\nFrom the rolling hills of Tennessee to the Pacific spray<br>\r\nThis land shaped every scar and every smile on my face<br><br>\r\n\r\nNo matter the heartache, no matter the fight<br>\r\nOne truth keeps callin\u2019 through the dark of night<br><br>\r\n\r\nUnder this American sky, I stand with my head held high<br>\r\nRed white and blue flowin\u2019 deep in my blood tonight<br>\r\nFrom the amber waves to the purple mountain glow<br>\r\nThis is the dream that my heart will always know<br>\r\nUnder this American sky, liberty\u2019s song rings true<br>\r\nProud and unbroken, forever me and you<br><br>\r\n\r\nForever me and you<br><br>\r\n\r\nFactory lights still burnin\u2019 late into the dark<br>\r\nFarmers tendin\u2019 soil with calloused hands and heart<br>\r\nDiverse voices liftin\u2019 as one beneath the same big moon<br>\r\nEvery hero\u2019s story woven into this grand tune<br><br>\r\n\r\nHand over heart, eyes on the risin\u2019 sun<br>\r\nThe future\u2019s ours to claim, the battle\u2019s never done<br><br>\r\n\r\nUnder this American sky, I stand with my head held high<br>\r\nRed white and blue flowin\u2019 deep in my blood tonight<br>\r\nFrom the amber waves to the purple mountain glow<br>\r\nThis is the dream that my heart will always know<br>\r\nUnder this American sky, liberty\u2019s song rings true<br>\r\nProud and unbroken, forever me and you<br><br>\r\n\r\nCarried the weight of the fallen through the years<br>\r\nKept the torch burnin\u2019 bright through the joy and the tears<br>\r\nFor the ones comin\u2019 after, we\u2019ll guard this flame so bright<br>\r\nTogether we rise, in this land of endless light<br><br>\r\n\r\nUnder this American sky, I stand with my head held high<br>\r\nRed white and blue flowin\u2019 deep in my blood tonight<br>\r\nFrom the amber waves to the purple mountain glow<br>\r\nThis is the dream that my heart will always know<br>\r\nUnder this American sky, liberty\u2019s song rings true<br>\r\nProud and unbroken, forever me and you<br>\r\nOh this sky, my home, forever true\r\n        <\/div>\r\n    <\/noscript>\r\n    <p style=\"text-align:center; margin-top:32px; font-size:13px; color:#64748b;\">\r\n        Official Under This American Sky lyrics by DaOpa \u2022\r\n        <a href=\"#lyrics-full\" style=\"color:#3b82f6;\">Jump to interactive synced version \u2191<\/a>\r\n    <\/p>\r\n<\/div>\r\n\r\n<!-- KARAOKE MODAL -->\r\n<div id=\"karaoke-modal\" class=\"karaoke-modal\" onclick=\"if (event.target.id === 'karaoke-modal') closeKaraoke()\" aria-hidden=\"true\">\r\n    <div class=\"karaoke-content\" onclick=\"event.stopImmediatePropagation()\">\r\n        <button onclick=\"closeKaraoke()\" style=\"position:absolute;top:-12px;right:-12px;background:#1e2937;border:none;color:#94a3b8;width:42px;height:42px;border-radius:50%;font-size:24px;cursor:pointer;\" aria-label=\"Close karaoke mode\">\u00d7<\/button>\r\n        <div id=\"karaoke-current\" class=\"karaoke-text\"><\/div>\r\n        <div id=\"karaoke-annotation-display\" class=\"karaoke-annotation\" style=\"display:none;\"><\/div>\r\n        <div style=\"margin:32px 0;display:flex;justify-content:center;gap:40px;font-size:13px;color:#64748b;\">\r\n            <div>PREV: <span id=\"karaoke-prev\" style=\"color:#475569;\"><\/span><\/div>\r\n            <div>NEXT: <span id=\"karaoke-next\" style=\"color:#94a3b8;\"><\/span><\/div>\r\n        <\/div>\r\n        <div>\r\n            <button onclick=\"togglePlayback()\" style=\"padding:12px 32px;border:1px solid rgba(255,255,255,0.3);background:transparent;color:white;border-radius:9999px;margin-right:12px;\">PLAY \/ PAUSE<\/button>\r\n            <button onclick=\"closeKaraoke()\" style=\"padding:12px 32px;background:transparent;color:#fff;border:1px solid rgba(255,255,255,0.3);border-radius:9999px;font-weight:700;\">EXIT KARAOKE<\/button>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<!-- TOAST CONTAINER -->\r\n<div id=\"toast-container\" style=\"position:fixed; bottom:24px; right:24px; z-index:300; display:flex; flex-direction:column; gap:10px;\"><\/div>\r\n\r\n<script>\r\n\/\/ ==================== CONFIG ====================\r\nconst CONFIG = {\r\n    songTitle: \"Under This American Sky\",\r\n    artist: \"DaOpa\",\r\n    youtubeVideoId: \"vqRFIVoBJG0\",\r\n    spotifyUrl: \"https:\/\/open.spotify.com\/playlist\/5po0rFHwSPKY91nyrvLuAJ\",\r\n    appleMusicUrl: \"\",\r\n    srtUrl: \"https:\/\/gamingwithdaopa.ellatha.com\/media\/music\/Under-This-American-Sky.txt\",\r\n    heroBackgroundImage: \"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2026\/04\/Under-This-American-Sky.jpg\"\r\n};\r\n\r\n\/\/ ==================== GLOBAL VARIABLES ====================\r\nlet player;\r\nlet isPlaying = false;\r\nlet currentTime = 0;\r\nlet currentLyricIndex = -1;\r\nlet favorites = JSON.parse(localStorage.getItem(CONFIG.songTitle.replace(\/\\s+\/g, '-') + 'Favorites') || '[]');\r\nlet lyricsData = [];\r\nlet annotations = {};\r\nlet annotationMode = 'view';\r\n\r\n\/\/ ==================== SECURITY ====================\r\nfunction escapeHtml(unsafe) {\r\n    if (!unsafe) return '';\r\n    return unsafe\r\n        .replace(\/&\/g, \"&amp;\")\r\n        .replace(\/<\/g, \"&lt;\")\r\n        .replace(\/>\/g, \"&gt;\")\r\n        .replace(\/\"\/g, \"&quot;\")\r\n        .replace(\/'\/g, \"&#039;\");\r\n}\r\n\r\n\/\/ ==================== LOAD SRT ====================\r\nasync function loadSRT() {\r\n    try {\r\n        const response = await fetch(CONFIG.srtUrl);\r\n        if (!response.ok) throw new Error(\"Failed to fetch SRT\");\r\n        const srtText = await response.text();\r\n        lyricsData = parseSRT(srtText);\r\n        console.log(`\u2705 Loaded ${lyricsData.length} timed lyrics`);\r\n    } catch (e) {\r\n        console.error(\"SRT load failed\", e);\r\n        alert(\"Could not load the SRT file. Please make sure the SRT file is uploaded.\");\r\n    }\r\n}\r\n\r\nfunction parseSRT(srtText) {\r\n    const blocks = srtText.trim().split(\/\\n\\s*\\n\/);\r\n    const lyrics = [];\r\n    blocks.forEach((block, index) => {\r\n        const lines = block.trim().split('\\n');\r\n        if (lines.length < 3) return;\r\n        const timeLine = lines[1];\r\n        const [startStr] = timeLine.split(' --> ');\r\n        if (!startStr) return;\r\n        const [h, m, s] = startStr.split(':');\r\n        const [sec, ms] = (s || '0,0').split(',');\r\n        const timeMs = (parseInt(h||0)*3600000) + (parseInt(m||0)*60000) + (parseInt(sec||0)*1000) + parseInt(ms||0);\r\n        const text = lines.slice(2).join(' ').trim();\r\n        lyrics.push({\r\n            id: `l${index+1}`,\r\n            time: timeMs,\r\n            text: text,\r\n            type: (text.toLowerCase().includes(\"under this american sky\") || text.toLowerCase().includes(\"forever me and you\")) ? \"chorus\" : \"verse\"\r\n        });\r\n    });\r\n    return lyrics;\r\n}\r\n\r\n\/\/ ==================== ANNOTATIONS ====================\r\nfunction loadAnnotations() {\r\n    const key = `annotations-${CONFIG.songTitle.replace(\/\\s+\/g, '-')}`;\r\n    const saved = localStorage.getItem(key);\r\n    if (saved) annotations = JSON.parse(saved);\r\n}\r\nfunction saveAnnotations() {\r\n    const key = `annotations-${CONFIG.songTitle.replace(\/\\s+\/g, '-')}`;\r\n    localStorage.setItem(key, JSON.stringify(annotations));\r\n}\r\nfunction updateAnnotation(id, value) {\r\n    annotations[id] = value.trim();\r\n    saveAnnotations();\r\n    renderFullLyrics();\r\n    renderKaraokeList();\r\n    const indicator = document.getElementById(`saved-${id}`);\r\n    if (indicator) {\r\n        indicator.style.display = 'flex';\r\n        setTimeout(() => indicator.style.display = 'none', 1400);\r\n    }\r\n}\r\nfunction exportAnnotations() {\r\n    const dataStr = JSON.stringify(annotations, null, 2);\r\n    const dataUri = 'data:application\/json;charset=utf-8,'+ encodeURIComponent(dataStr);\r\n    const link = document.createElement('a');\r\n    link.setAttribute('href', dataUri);\r\n    link.setAttribute('download', `${CONFIG.songTitle}-annotations.json`);\r\n    link.click();\r\n    showToast(\"\u2705 Annotations exported\", \"success\");\r\n}\r\nfunction clearAllAnnotations() {\r\n    if (confirm(\"Clear ALL notes for this song?\")) {\r\n        annotations = {};\r\n        saveAnnotations();\r\n        renderAnnotatedTab();\r\n        renderFullLyrics();\r\n        renderKaraokeList();\r\n        showToast(\"All notes cleared\", \"success\");\r\n    }\r\n}\r\n\r\n\/\/ ==================== SHARE LYRIC LINE ====================\r\nfunction shareLyricLine(idx) {\r\n    const line = lyricsData[idx];\r\n    const timestamp = Math.floor(line.time \/ 1000);\r\n    const shareUrl = `${window.location.origin}${window.location.pathname}?t=${timestamp}#${line.id}`;\r\n    navigator.clipboard.writeText(shareUrl).then(() => {\r\n        showToast(\"\u2705 Link copied with timestamp!\", \"success\");\r\n    }).catch(() => {\r\n        showToast(\"Could not copy link\", \"info\");\r\n    });\r\n    const tweetText = encodeURIComponent(`\"${line.text}\" \u2014 ${CONFIG.songTitle} by ${CONFIG.artist}`);\r\n    const xUrl = `https:\/\/x.com\/intent\/tweet?text=${tweetText}&url=${encodeURIComponent(shareUrl)}`;\r\n    setTimeout(() => {\r\n        if (confirm(\"Also share this line on X?\")) {\r\n            window.open(xUrl, '_blank');\r\n        }\r\n    }, 800);\r\n}\r\n\r\n\/\/ ==================== YOUTUBE PLAYER ====================\r\nfunction loadYouTubeAPI() {\r\n    const tag = document.createElement('script');\r\n    tag.src = \"https:\/\/www.youtube.com\/iframe_api\";\r\n    document.head.appendChild(tag);\r\n}\r\nwindow.onYouTubeIframeAPIReady = function() {\r\n    player = new YT.Player('yt-player', {\r\n        videoId: CONFIG.youtubeVideoId,\r\n        playerVars: { 'autoplay': 0, 'controls': 1, 'rel': 0, 'modestbranding': 1, 'playsinline': 1 },\r\n        events: { 'onReady': onPlayerReady, 'onStateChange': onPlayerStateChange }\r\n    });\r\n};\r\nfunction onPlayerReady(event) {\r\n    const checkDuration = setInterval(() => {\r\n        if (player.getDuration() > 0) {\r\n            const totalSec = Math.floor(player.getDuration());\r\n            document.getElementById('total-time').textContent = `${Math.floor(totalSec\/60)}:${(totalSec%60).toString().padStart(2,'0')}`;\r\n            clearInterval(checkDuration);\r\n        }\r\n    }, 500);\r\n}\r\nfunction onPlayerStateChange(event) {\r\n    if (event.data === YT.PlayerState.PLAYING) {\r\n        isPlaying = true;\r\n        const btn = document.getElementById('play-btn');\r\n        btn.style.background = '#ef4444';\r\n        btn.style.color = 'white';\r\n        document.getElementById('play-icon').classList.replace('fa-play', 'fa-pause');\r\n    } else {\r\n        isPlaying = false;\r\n        const btn = document.getElementById('play-btn');\r\n        btn.style.background = 'transparent';\r\n        btn.style.color = '#f1f5f9';\r\n        document.getElementById('play-icon').classList.replace('fa-pause', 'fa-play');\r\n    }\r\n}\r\n\r\n\/\/ Real-time sync\r\nsetInterval(() => {\r\n    if (!player || !isPlaying) return;\r\n    currentTime = Math.floor(player.getCurrentTime() * 1000);\r\n    updateProgressUI();\r\n    updateLyricHighlight();\r\n}, 150);\r\n\r\n\/\/ ==================== RENDER FUNCTIONS ====================\r\nfunction init() {\r\n    document.getElementById('hero-title').innerHTML = `${CONFIG.songTitle}<br><span class=\"gradient-text\">${CONFIG.artist}<\/span>`;\r\n    document.getElementById('hero-subtitle').innerHTML = `${CONFIG.artist} \u2022 ${CONFIG.songTitle}`;\r\n    document.getElementById('player-song-title').textContent = CONFIG.songTitle;\r\n    document.getElementById('player-artist').textContent = CONFIG.artist;\r\n    document.getElementById('hero-section').style.backgroundImage = `url('${CONFIG.heroBackgroundImage}')`;\r\n    document.getElementById('youtube-link').href = `https:\/\/www.youtube.com\/watch?v=${CONFIG.youtubeVideoId}`;\r\n    document.getElementById('spotify-link').href = CONFIG.spotifyUrl;\r\n    loadSRT().then(() => {\r\n        loadAnnotations();\r\n        renderAllLyrics();\r\n    });\r\n    loadFavorites();\r\n    document.addEventListener('keydown', function(e) {\r\n        if (e.key === \" \" && document.activeElement.tagName === \"BODY\") { e.preventDefault(); togglePlayback(); }\r\n        if (e.key.toLowerCase() === \"k\") { e.preventDefault(); enterKaraokeMode(); }\r\n    });\r\n    console.log('%c\u2705 Lyrics page loaded \u2013 fully accessible & shareable', 'color:#fbbf24;font-weight:700');\r\n}\r\n\r\nfunction renderAllLyrics() {\r\n    renderFullLyrics();\r\n    renderKaraokeList();\r\n    renderAnnotatedTab();\r\n}\r\n\r\nfunction renderFullLyrics() {\r\n    const full = document.getElementById('lyrics-full');\r\n    let html = '';\r\n    lyricsData.forEach((line, idx) => {\r\n        const isChorus = line.type === 'chorus';\r\n        const fav = favorites.includes(line.id);\r\n        const note = annotations[line.id] || '';\r\n        const escapedNote = escapeHtml(note);\r\n        html += `\r\n            <div class=\"lyric-line ${isChorus ? 'chorus' : ''}\"\r\n                 data-id=\"${line.id}\"\r\n                 data-index=\"${idx}\"\r\n                 onclick=\"highlightLine(${idx}, true)\"\r\n                 role=\"button\"\r\n                 aria-label=\"Lyric line ${idx+1}: ${line.text}\">\r\n                <div class=\"lyric-number\">${(idx+1).toString().padStart(2,'0')}<\/div>\r\n                <div style=\"flex:1;\">\r\n                    <div class=\"lyric-text\" style=\"${isChorus ? 'color:#fecaca;font-weight:700;' : ''}\">${line.text}<\/div>\r\n                    ${note ? `<div class=\"lyric-note-preview\">${escapedNote}<\/div>` : ''}\r\n                <\/div>\r\n                <div class=\"lyric-actions\">\r\n                    <button onclick=\"event.stopImmediatePropagation(); toggleFavorite('${line.id}', this)\" class=\"action-btn\" style=\"color:${fav ? '#ef4444' : '#64748b'};\" aria-label=\"Favorite this line\">\r\n                        <i class=\"fa fa-heart ${fav ? 'heart-favorited' : ''}\"><\/i>\r\n                    <\/button>\r\n                    <button onclick=\"event.stopImmediatePropagation(); singThisLine(${idx})\" class=\"action-btn\" aria-label=\"Sing this line\">\r\n                        <i class=\"fa fa-microphone\"><\/i>\r\n                    <\/button>\r\n                    <button onclick=\"event.stopImmediatePropagation(); shareLyricLine(${idx})\" class=\"action-btn\" aria-label=\"Share this lyric line\">\r\n                        <i class=\"fa fa-share-alt\"><\/i>\r\n                    <\/button>\r\n                    <button onclick=\"event.stopImmediatePropagation(); editNoteFromFullLyrics('${line.id}')\" class=\"action-btn\" title=\"Edit personal note\" aria-label=\"Edit note for this line\">\r\n                        <i class=\"fa fa-edit\"><\/i>\r\n                    <\/button>\r\n                <\/div>\r\n            <\/div>\r\n        `;\r\n    });\r\n    full.innerHTML = html;\r\n}\r\n\r\nfunction renderKaraokeList() {\r\n    const kar = document.getElementById('lyrics-karaoke');\r\n    kar.innerHTML = `<div style=\"max-width:620px;margin:0 auto;text-align:center;padding:20px 10px;\">\r\n        <div style=\"font-size:11px;letter-spacing:2px;color:#fbbf24;margin-bottom:16px;\">TAP ANY LINE TO JUMP \u2022 Personal notes shown below<\/div>\r\n        ${lyricsData.map((l,i) => {\r\n            const note = annotations[l.id] || '';\r\n            const escapedNote = escapeHtml(note);\r\n            return `\r\n            <div onclick=\"jumpToLineInKaraoke(${i})\" style=\"padding:12px 18px;margin:6px 0;border-radius:12px;cursor:pointer;background:#1a1a20;color:${l.type==='chorus'?'#fecaca':'#e2e8f0'};font-size:17px;${l.type==='chorus'?'font-weight:700;':''}\">\r\n                ${l.text}\r\n                ${note ? `<div style=\"margin-top:8px;font-size:14px;color:#a7f3d0;padding:8px 12px;background:rgba(16,185,129,0.1);border-left:3px solid #10b981;border-radius:6px;\">${escapedNote}<\/div>` : ''}\r\n            <\/div>`;\r\n        }).join('')}\r\n    <\/div>`;\r\n}\r\n\r\nfunction renderAnnotatedTab() {\r\n    const ann = document.getElementById('lyrics-annotated');\r\n    let html = `\r\n        <div style=\"margin-bottom:24px; display:flex; gap:12px; justify-content:space-between; flex-wrap:wrap; align-items:center;\">\r\n            <div style=\"font-size:13px; color:#64748b;\">Your personal notes \u2022 Saved in your browser<\/div>\r\n            <div style=\"display:flex; gap:8px;\">\r\n                <button onclick=\"toggleAnnotationMode()\" id=\"mode-toggle-btn\"\r\n                        style=\"padding:10px 20px; background:#27272e; color:#f1f5f9; border:none; border-radius:9999px; font-weight:600; cursor:pointer;\">\r\n                    ${annotationMode === 'edit' ? '\u2705 Switch to View Mode' : '\u270f\ufe0f Switch to Edit Mode'}\r\n                <\/button>\r\n                <button onclick=\"exportAnnotations()\" style=\"padding:10px 20px; background:#10b981; color:white; border:none; border-radius:9999px; font-weight:600; cursor:pointer;\">\r\n                    <i class=\"fa fa-download\"><\/i> Export\r\n                <\/button>\r\n                <button onclick=\"clearAllAnnotations()\" style=\"padding:10px 20px; background:#ef4444; color:white; border:none; border-radius:9999px; font-weight:600; cursor:pointer;\">\r\n                    <i class=\"fa fa-trash\"><\/i> Clear All\r\n                <\/button>\r\n            <\/div>\r\n        <\/div>\r\n    `;\r\n    lyricsData.forEach((line, idx) => {\r\n        const note = annotations[line.id] || '';\r\n        const escapedNote = escapeHtml(note);\r\n        if (annotationMode === 'edit') {\r\n            html += `\r\n                <div style=\"background:#1a1a20; border-radius:16px; padding:20px; margin-bottom:16px;\">\r\n                    <div style=\"display:flex; gap:12px;\">\r\n                        <div class=\"lyric-number\" style=\"background:#27272e; padding:4px 10px; border-radius:8px;\">${(idx+1).toString().padStart(2,'0')}<\/div>\r\n                        <div style=\"flex:1;\">\r\n                            <div style=\"font-size:1.05rem; line-height:1.5; color:#e2e8f0;\">${line.text}<\/div>\r\n                            <textarea class=\"annotation-input\" placeholder=\"Write your personal note here...\" oninput=\"updateAnnotation('${line.id}', this.value)\">${note}<\/textarea>\r\n                            <div class=\"annotation-saved\" id=\"saved-${line.id}\" style=\"display:none;\"><i class=\"fa fa-check-circle\"><\/i> Saved to browser<\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>`;\r\n        } else {\r\n            html += `\r\n                <div class=\"annotation-view\">\r\n                    <div style=\"display:flex; gap:12px;\">\r\n                        <div class=\"lyric-number\" style=\"background:#27272e; padding:4px 10px; border-radius:8px;\">${(idx+1).toString().padStart(2,'0')}<\/div>\r\n                        <div style=\"flex:1;\">\r\n                            <div style=\"font-size:1.05rem; line-height:1.5; color:#e2e8f0;\">${line.text}<\/div>\r\n                            ${note ? `<div class=\"annotation-note\">${escapedNote}<\/div>` : '<div style=\"font-size:13px;color:#64748b;margin-top:8px;\">No note yet<\/div>'}\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>`;\r\n        }\r\n    });\r\n    ann.innerHTML = html;\r\n}\r\n\r\nfunction editNoteFromFullLyrics(id) {\r\n    switchTab(2);\r\n    annotationMode = 'edit';\r\n    renderAnnotatedTab();\r\n    setTimeout(() => {\r\n        const el = document.getElementById(`saved-${id}`);\r\n        if (el) el.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n    }, 300);\r\n}\r\n\r\nfunction toggleAnnotationMode() {\r\n    annotationMode = annotationMode === 'edit' ? 'view' : 'edit';\r\n    renderAnnotatedTab();\r\n}\r\n\r\n\/\/ ==================== LYRIC & PLAYER FUNCTIONS ====================\r\nfunction highlightLine(index, manual = false) {\r\n    document.querySelectorAll('.lyric-line').forEach(el => el.classList.remove('active'));\r\n    const el = document.querySelector(`.lyric-line[data-index=\"${index}\"]`);\r\n    if (el) {\r\n        el.classList.add('active');\r\n        el.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n    }\r\n    currentLyricIndex = index;\r\n    if (manual && player) player.seekTo(lyricsData[index].time \/ 1000);\r\n}\r\n\r\nfunction toggleFavorite(id, btn) {\r\n    const i = favorites.indexOf(id);\r\n    const heart = btn.querySelector('i');\r\n    if (i === -1) {\r\n        favorites.push(id);\r\n        heart.classList.add('heart-favorited');\r\n        showToast(\"Line favorited \u2764\ufe0f\", \"success\");\r\n    } else {\r\n        favorites.splice(i, 1);\r\n        heart.classList.remove('heart-favorited');\r\n    }\r\n    localStorage.setItem(CONFIG.songTitle.replace(\/\\s+\/g, '-') + 'Favorites', JSON.stringify(favorites));\r\n}\r\n\r\nfunction loadFavorites() {\r\n    favorites.forEach(id => {\r\n        const heart = document.querySelector(`[data-id=\"${id}\"] .fa-heart`);\r\n        if (heart) heart.classList.add('heart-favorited');\r\n    });\r\n}\r\n\r\nfunction singThisLine(idx) {\r\n    highlightLine(idx, true);\r\n    showToast(`Singing: \"${lyricsData[idx].text}\"`, \"info\");\r\n}\r\n\r\nfunction startPlayback() { if (player) player.playVideo(); }\r\nfunction pausePlayback() { if (player) player.pauseVideo(); }\r\nfunction togglePlayback() { if (player) isPlaying ? pausePlayback() : startPlayback(); }\r\nfunction restartPlayback() { if (player) { player.seekTo(0); player.playVideo(); } }\r\n\r\nfunction updateProgressUI() {\r\n    if (!player) return;\r\n    const pct = (player.getCurrentTime() \/ (player.getDuration() || 250)) * 100;\r\n    document.getElementById('progress-slider').value = pct;\r\n    document.getElementById('progress-fill').style.width = pct + '%';\r\n    document.getElementById('progress-bar').setAttribute('aria-valuenow', Math.round(pct));\r\n    const sec = Math.floor(player.getCurrentTime());\r\n    document.getElementById('current-time').textContent = `${Math.floor(sec\/60)}:${(sec%60).toString().padStart(2,'0')}`;\r\n}\r\n\r\nfunction updateLyricHighlight() {\r\n    let newIdx = -1;\r\n    for (let i = 0; i < lyricsData.length; i++) {\r\n        if (currentTime >= lyricsData[i].time) newIdx = i;\r\n        else break;\r\n    }\r\n    if (newIdx !== currentLyricIndex && newIdx !== -1) {\r\n        currentLyricIndex = newIdx;\r\n        highlightLine(newIdx);\r\n        if (lyricsData[newIdx].type === 'chorus') launchConfetti(12);\r\n        const modal = document.getElementById('karaoke-modal');\r\n        if (modal.style.display === 'flex') updateKaraokeDisplay(newIdx);\r\n    }\r\n}\r\n\r\nfunction seekTo(pct) {\r\n    if (!player) return;\r\n    const duration = player.getDuration() || 250;\r\n    player.seekTo((pct \/ 100) * duration);\r\n}\r\n\r\nfunction seekFromClick(e) {\r\n    const bar = document.getElementById('progress-bar');\r\n    const pct = ((e.clientX - bar.getBoundingClientRect().left) \/ bar.offsetWidth) * 100;\r\n    document.getElementById('progress-slider').value = pct;\r\n    seekTo(pct);\r\n}\r\n\r\nfunction setPlaybackSpeed(sp) {\r\n    document.querySelectorAll('[id^=\"speed-\"]').forEach(el => el.style.background = 'transparent');\r\n    let id = 'speed-1';\r\n    if (sp === 0.75) id = 'speed-075';\r\n    if (sp === 1.25) id = 'speed-125';\r\n    const b = document.getElementById(id);\r\n    if (b) b.style.background = 'rgba(255,255,255,0.2)';\r\n    if (player) player.setPlaybackRate(sp);\r\n}\r\n\r\n\/\/ ==================== KARAOKE ====================\r\nfunction enterKaraokeMode() {\r\n    const m = document.getElementById('karaoke-modal');\r\n    m.style.display = 'flex';\r\n    if (player && !isPlaying) player.playVideo();\r\n    updateKaraokeDisplay(currentLyricIndex >= 0 ? currentLyricIndex : 0);\r\n}\r\n\r\nfunction closeKaraoke() {\r\n    document.getElementById('karaoke-modal').style.display = 'none';\r\n}\r\n\r\nfunction updateKaraokeDisplay(idx) {\r\n    const cur = document.getElementById('karaoke-current');\r\n    const annDisplay = document.getElementById('karaoke-annotation-display');\r\n    const prv = document.getElementById('karaoke-prev');\r\n    const nxt = document.getElementById('karaoke-next');\r\n    cur.innerHTML = `<span style=\"color:#ef4444;\">${lyricsData[idx].text}<\/span>`;\r\n    const note = annotations[lyricsData[idx].id] || '';\r\n    if (note) {\r\n        annDisplay.innerHTML = `<strong style=\"color:#10b981;\">YOUR NOTE:<\/strong><br>${escapeHtml(note)}`;\r\n        annDisplay.style.display = 'block';\r\n    } else {\r\n        annDisplay.style.display = 'none';\r\n    }\r\n    prv.textContent = idx > 0 ? lyricsData[idx-1].text : '\u2014';\r\n    nxt.textContent = idx < lyricsData.length-1 ? lyricsData[idx+1].text : '\u2014';\r\n}\r\n\r\nfunction jumpToLineInKaraoke(idx) {\r\n    if (player) player.seekTo(lyricsData[idx].time \/ 1000);\r\n    highlightLine(idx, true);\r\n    const m = document.getElementById('karaoke-modal');\r\n    if (m.style.display === 'flex') updateKaraokeDisplay(idx);\r\n}\r\n\r\nfunction toggleKaraoke() {\r\n    const m = document.getElementById('karaoke-modal');\r\n    m.style.display === 'flex' ? closeKaraoke() : enterKaraokeMode();\r\n}\r\n\r\nfunction switchTab(tab) {\r\n    document.getElementById('lyrics-full').style.display = 'none';\r\n    document.getElementById('lyrics-karaoke').style.display = 'none';\r\n    document.getElementById('lyrics-annotated').style.display = 'none';\r\n    document.querySelectorAll('.tab-btn').forEach(b => b.classList.remove('active'));\r\n    document.getElementById('tab-' + tab).classList.add('active');\r\n    document.getElementById('tab-' + tab).setAttribute('aria-selected', 'true');\r\n    if (tab === 0) document.getElementById('lyrics-full').style.display = 'block';\r\n    else if (tab === 1) document.getElementById('lyrics-karaoke').style.display = 'block';\r\n    else if (tab === 2) {\r\n        document.getElementById('lyrics-annotated').style.display = 'block';\r\n        renderAnnotatedTab();\r\n    }\r\n}\r\n\r\n\/\/ ==================== UTILS ====================\r\nfunction showToast(msg, type = \"info\") {\r\n    const c = document.getElementById('toast-container');\r\n    const t = document.createElement('div');\r\n    t.className = 'toast';\r\n    t.innerHTML = `<i class=\"fa fa-${type==='success'?'check-circle':'info-circle'}\" style=\"margin-right:8px;\"><\/i> <span>${msg}<\/span>`;\r\n    c.appendChild(t);\r\n    setTimeout(() => t.remove(), 2800);\r\n}\r\n\r\nfunction launchConfetti(count = 12) {\r\n    for (let i = 0; i < count; i++) {\r\n        setTimeout(() => {\r\n            const c = document.createElement('div');\r\n            c.style.cssText = `position:fixed;left:${Math.random()*100}vw;top:-20px;font-size:28px;z-index:400;pointer-events:none;`;\r\n            c.textContent = ['\ud83c\udf89','\ud83c\uddfa\ud83c\uddf8','\u2764\ufe0f'][Math.floor(Math.random()*3)];\r\n            document.body.appendChild(c);\r\n            setTimeout(() => c.remove(), 3000);\r\n        }, i * 30);\r\n    }\r\n}\r\n\r\n\/\/ Boot\r\nwindow.onload = function() {\r\n    loadYouTubeAPI();\r\n    init();\r\n};\r\n<\/script>\r\n<\/article>\r\n","protected":false},"excerpt":{"rendered":"<p>Under This American Sky is a powerful patriotic anthem by DaOpa from the Heartland Country Pop album (2026). This heartfelt track celebrates the vast beauty of America, unity, freedom, and the unbreakable heartland spirit under one sky. Read the full lyrics below, sync them with the official music video, enter karaoke mode, or add your [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":334,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-332","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-lyrics"],"yoast_head":"<title>Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026 - DaOpa&#039;s Music<\/title>\r\n<meta name=\"description\" content=\"Under This American Sky is a powerful patriotic anthem by DaOpa from the Heartland Country Pop album (2026). This heartfelt track celebrates the vast\" \/>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/\" \/>\r\n<meta property=\"og:locale\" content=\"en_US\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026 - DaOpa&#039;s Music\" \/>\r\n<meta property=\"og:description\" content=\"Under This American Sky is a powerful patriotic anthem by DaOpa from the Heartland Country Pop album (2026). This heartfelt track celebrates the vast\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/\" \/>\r\n<meta property=\"og:site_name\" content=\"DaOpa&#039;s Music\" \/>\r\n<meta property=\"article:publisher\" content=\"facebook.com\/gamingwithdaopa\/\" \/>\r\n<meta property=\"article:author\" content=\"facebook.com\/gamingwithdaopa\/\" \/>\r\n<meta property=\"article:published_time\" content=\"2026-04-25T15:47:10+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2026-04-27T17:52:23+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2026\/04\/Under-This-American-Sky-Lyrics.jpg\" \/>\r\n\t<meta property=\"og:image:width\" content=\"400\" \/>\r\n\t<meta property=\"og:image:height\" content=\"263\" \/>\r\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\r\n<meta name=\"author\" content=\"daopa\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:creator\" content=\"@gamingwithdaopa\" \/>\r\n<meta name=\"twitter:site\" content=\"@gamingwithdaopa\" \/>\r\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"daopa\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/\"},\"author\":{\"name\":\"daopa\",\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/#\\\/schema\\\/person\\\/fb03a927907d90f409fac550ba375638\"},\"headline\":\"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026\",\"datePublished\":\"2026-04-25T15:47:10+00:00\",\"dateModified\":\"2026-04-27T17:52:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/\"},\"wordCount\":449,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/#\\\/schema\\\/person\\\/fb03a927907d90f409fac550ba375638\"},\"image\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/wp-content\\\/uploads\\\/sites\\\/31\\\/2026\\\/04\\\/Under-This-American-Sky-Lyrics.jpg\",\"articleSection\":[\"Lyrics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/\",\"url\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/\",\"name\":\"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026 - DaOpa&#039;s Music\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/wp-content\\\/uploads\\\/sites\\\/31\\\/2026\\\/04\\\/Under-This-American-Sky-Lyrics.jpg\",\"datePublished\":\"2026-04-25T15:47:10+00:00\",\"dateModified\":\"2026-04-27T17:52:23+00:00\",\"description\":\"Under This American Sky is a powerful patriotic anthem by DaOpa from the Heartland Country Pop album (2026). This heartfelt track celebrates the vast\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/#primaryimage\",\"url\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/wp-content\\\/uploads\\\/sites\\\/31\\\/2026\\\/04\\\/Under-This-American-Sky-Lyrics.jpg\",\"contentUrl\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/wp-content\\\/uploads\\\/sites\\\/31\\\/2026\\\/04\\\/Under-This-American-Sky-Lyrics.jpg\",\"width\":400,\"height\":263,\"caption\":\"Under This American Sky Lyrics\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/under-this-american-sky-lyrics\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/#website\",\"url\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/\",\"name\":\"DaOpa&#039;s Music\",\"description\":\"Welcome to DaOpa&#039;s Music, where I share my original songs, lyrics, and musical journey. Dive into the sounds and stories behind my music, and experience the creative process that shapes each track. This is my personal space to connect through music, straight from my heart to your ears.\",\"publisher\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/#\\\/schema\\\/person\\\/fb03a927907d90f409fac550ba375638\"},\"alternateName\":\"daopa music\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/#\\\/schema\\\/person\\\/fb03a927907d90f409fac550ba375638\",\"name\":\"daopa\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/wp-content\\\/uploads\\\/sites\\\/31\\\/2024\\\/09\\\/90-90-Logo.png\",\"url\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/wp-content\\\/uploads\\\/sites\\\/31\\\/2024\\\/09\\\/90-90-Logo.png\",\"contentUrl\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/wp-content\\\/uploads\\\/sites\\\/31\\\/2024\\\/09\\\/90-90-Logo.png\",\"width\":90,\"height\":90,\"caption\":\"daopa\"},\"logo\":{\"@id\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/wp-content\\\/uploads\\\/sites\\\/31\\\/2024\\\/09\\\/90-90-Logo.png\"},\"description\":\"DaOpa has been variety streamer since 2009 with game focuses on primarily MMOs, Sandbox, RPG and FPS genres. For inquires comment in the comments sections. This channel is syndicated across various micro niche gaming related blogs operated by DaOpa. He creates fansites, guides, tools for gamers\",\"sameAs\":[\"https:\\\/\\\/gamingwithdaopa.ellatha.com\",\"facebook.com\\\/gamingwithdaopa\\\/\",\"https:\\\/\\\/x.com\\\/gamingwithdaopa\",\"youtube.com\\\/@daopa\"],\"url\":\"https:\\\/\\\/gamingwithdaopa.ellatha.com\\\/music\\\/author\\\/daopa\\\/\"}]}<\/script>","yoast_head_json":{"title":"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026 - DaOpa&#039;s Music","description":"Under This American Sky is a powerful patriotic anthem by DaOpa from the Heartland Country Pop album (2026). This heartfelt track celebrates the vast","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/","og_locale":"en_US","og_type":"article","og_title":"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026 - DaOpa&#039;s Music","og_description":"Under This American Sky is a powerful patriotic anthem by DaOpa from the Heartland Country Pop album (2026). This heartfelt track celebrates the vast","og_url":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/","og_site_name":"DaOpa&#039;s Music","article_publisher":"facebook.com\/gamingwithdaopa\/","article_author":"facebook.com\/gamingwithdaopa\/","article_published_time":"2026-04-25T15:47:10+00:00","article_modified_time":"2026-04-27T17:52:23+00:00","og_image":[{"width":400,"height":263,"url":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2026\/04\/Under-This-American-Sky-Lyrics.jpg","type":"image\/jpeg"}],"author":"daopa","twitter_card":"summary_large_image","twitter_creator":"@gamingwithdaopa","twitter_site":"@gamingwithdaopa","twitter_misc":{"Written by":"daopa","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/#article","isPartOf":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/"},"author":{"name":"daopa","@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/#\/schema\/person\/fb03a927907d90f409fac550ba375638"},"headline":"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026","datePublished":"2026-04-25T15:47:10+00:00","dateModified":"2026-04-27T17:52:23+00:00","mainEntityOfPage":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/"},"wordCount":449,"commentCount":0,"publisher":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/#\/schema\/person\/fb03a927907d90f409fac550ba375638"},"image":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/#primaryimage"},"thumbnailUrl":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2026\/04\/Under-This-American-Sky-Lyrics.jpg","articleSection":["Lyrics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/","url":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/","name":"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026 - DaOpa&#039;s Music","isPartOf":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/#website"},"primaryImageOfPage":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/#primaryimage"},"image":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/#primaryimage"},"thumbnailUrl":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2026\/04\/Under-This-American-Sky-Lyrics.jpg","datePublished":"2026-04-25T15:47:10+00:00","dateModified":"2026-04-27T17:52:23+00:00","description":"Under This American Sky is a powerful patriotic anthem by DaOpa from the Heartland Country Pop album (2026). This heartfelt track celebrates the vast","breadcrumb":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/#primaryimage","url":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2026\/04\/Under-This-American-Sky-Lyrics.jpg","contentUrl":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2026\/04\/Under-This-American-Sky-Lyrics.jpg","width":400,"height":263,"caption":"Under This American Sky Lyrics"},{"@type":"BreadcrumbList","@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/under-this-american-sky-lyrics\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/gamingwithdaopa.ellatha.com\/music\/"},{"@type":"ListItem","position":2,"name":"Under This American Sky Lyrics by DaOpa | Heartland Country Pop 2026"}]},{"@type":"WebSite","@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/#website","url":"https:\/\/gamingwithdaopa.ellatha.com\/music\/","name":"DaOpa&#039;s Music","description":"Welcome to DaOpa&#039;s Music, where I share my original songs, lyrics, and musical journey. Dive into the sounds and stories behind my music, and experience the creative process that shapes each track. This is my personal space to connect through music, straight from my heart to your ears.","publisher":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/#\/schema\/person\/fb03a927907d90f409fac550ba375638"},"alternateName":"daopa music","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/gamingwithdaopa.ellatha.com\/music\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/#\/schema\/person\/fb03a927907d90f409fac550ba375638","name":"daopa","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2024\/09\/90-90-Logo.png","url":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2024\/09\/90-90-Logo.png","contentUrl":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2024\/09\/90-90-Logo.png","width":90,"height":90,"caption":"daopa"},"logo":{"@id":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-content\/uploads\/sites\/31\/2024\/09\/90-90-Logo.png"},"description":"DaOpa has been variety streamer since 2009 with game focuses on primarily MMOs, Sandbox, RPG and FPS genres. For inquires comment in the comments sections. This channel is syndicated across various micro niche gaming related blogs operated by DaOpa. He creates fansites, guides, tools for gamers","sameAs":["https:\/\/gamingwithdaopa.ellatha.com","facebook.com\/gamingwithdaopa\/","https:\/\/x.com\/gamingwithdaopa","youtube.com\/@daopa"],"url":"https:\/\/gamingwithdaopa.ellatha.com\/music\/author\/daopa\/"}]}},"_links":{"self":[{"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/posts\/332","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/comments?post=332"}],"version-history":[{"count":3,"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/posts\/332\/revisions"}],"predecessor-version":[{"id":420,"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/posts\/332\/revisions\/420"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/media\/334"}],"wp:attachment":[{"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/media?parent=332"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/categories?post=332"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gamingwithdaopa.ellatha.com\/music\/wp-json\/wp\/v2\/tags?post=332"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}