Team Ai
Datasetpublic

GD-ML/AndroidCode

sourceHugging Facemitupdated 6mo agoView on Hugging Face
1likes3.4kdownloads
10163_9.html257 linesDownload Raw Back to 10163
1<!DOCTYPE html>2<html lang="en">3<head>4<meta charset="UTF-8">5<meta name="viewport" content="width=1080, initial-scale=1.0">6<title>Playlists Screen</title>7<style>8  body { margin: 0; padding: 0; background: transparent; font-family: Arial, Helvetica, sans-serif; }9  #render-target {10    width: 1080px; height: 2400px; position: relative; overflow: hidden;11    background: #121212; color: #FFFFFF;12  }13 14  /* Status bar */15  .status-bar {16    position: absolute; top: 0; left: 0; width: 100%; height: 90px;17    display: flex; align-items: center; justify-content: space-between;18    padding: 0 36px; color: #fff; font-size: 36px; opacity: 0.9;19  }20  .status-icons { display: flex; gap: 24px; align-items: center; }21 22  /* Header */23  .header {24    position: absolute; top: 90px; left: 0; width: 100%; height: 220px;25    padding: 0 36px;26  }27  .header-top {28    display: flex; align-items: center; justify-content: space-between;29  }30  .left-group { display: flex; align-items: center; gap: 24px; }31  .title { font-weight: 700; font-size: 96px; line-height: 1.1; margin-top: 12px; }32  .actions { display: flex; gap: 36px; align-items: center; }33  .icon-btn { width: 60px; height: 60px; display: inline-flex; align-items: center; justify-content: center; }34  .icon-btn svg { width: 48px; height: 48px; }35 36  /* Filter pill */37  .filter-row { margin-top: 24px; display: flex; align-items: center; gap: 24px; }38  .pill {39    background: #2A2A2A; border-radius: 48px; padding: 20px 28px;40    display: inline-flex; align-items: center; gap: 14px; font-size: 40px;41  }42  .pill svg { width: 36px; height: 36px; }43 44  /* List */45  .content {46    position: absolute; top: 310px; left: 0; right: 0; bottom: 400px;47    padding: 0 36px; overflow-y: auto;48  }49  .list-row {50    display: flex; gap: 28px; align-items: center;51    margin-bottom: 34px;52  }53  .thumb {54    width: 480px; height: 270px; border-radius: 28px;55    background: #E0E0E0; border: 1px solid #BDBDBD;56    display: flex; align-items: center; justify-content: center;57    color: #757575; font-size: 34px; text-align: center; padding: 12px;58    position: relative;59  }60  .badge {61    position: absolute; bottom: 16px; right: 16px;62    background: rgba(0,0,0,0.7); color: #fff; font-size: 32px;63    padding: 8px 14px; border-radius: 14px;64    display: flex; align-items: center; gap: 8px;65  }66  .row-info { flex: 1; }67  .row-title { font-size: 52px; font-weight: 700; margin-bottom: 8px; }68  .row-sub { font-size: 36px; color: #B0B0B0; }69  .row-menu { width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; }70 71  /* Create new playlist button */72  .create-btn {73    width: 100%; height: 120px; background: #2A2A2A; border-radius: 60px;74    display: flex; align-items: center; justify-content: center;75    font-size: 44px; font-weight: 600; margin: 24px 0 36px 0;76  }77 78  /* Toast card */79  .toast {80    background: #FFFFFF; color: #000; border-radius: 28px;81    padding: 28px; display: flex; align-items: center; justify-content: space-between;82    font-size: 42px; margin-bottom: 24px;83  }84  .toast .action { color: #3AB4FF; font-weight: 600; }85 86  /* Mini player */87  .mini-player {88    position: absolute; left: 0; right: 0; bottom: 220px;89    height: 180px; background: #1A1A1A; border-top: 1px solid #2A2A2A;90    display: flex; align-items: center; padding: 0 24px; gap: 24px;91  }92  .mini-thumb {93    width: 210px; height: 140px; border-radius: 14px;94    background: #E0E0E0; border: 1px solid #BDBDBD;95    display: flex; align-items: center; justify-content: center;96    color: #757575; font-size: 28px;97  }98  .mini-info { flex: 1; min-width: 0; }99  .mini-title {100    font-size: 40px; color: #FFFFFF; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;101  }102  .mini-sub { font-size: 32px; color: #B0B0B0; }103  .mini-actions { display: flex; gap: 24px; }104 105  /* Bottom navigation */106  .bottom-nav {107    position: absolute; left: 0; right: 0; bottom: 0;108    height: 220px; background: #0F0F0F; display: flex;109    align-items: center; justify-content: space-around; border-top: 1px solid #202020;110  }111  .nav-item { display: flex; flex-direction: column; align-items: center; gap: 12px; color: #CCCCCC; }112  .nav-item .label { font-size: 30px; }113  .nav-item svg { width: 56px; height: 56px; }114  .nav-center {115    width: 120px; height: 120px; background: #2A2A2A; border-radius: 60px;116    display: flex; align-items: center; justify-content: center; margin-top: -40px;117  }118  .notif-dot {119    position: absolute; width: 18px; height: 18px; background: #E53935; border-radius: 50%;120    right: -6px; top: -6px;121  }122 123  /* Gesture bar */124  .gesture {125    position: absolute; left: 50%; transform: translateX(-50%);126    bottom: 240px; width: 180px; height: 10px; border-radius: 5px; background: #EAEAEA; opacity: 0.8;127  }128 129  /* Simple helper */130  .muted { color: #B0B0B0; }131</style>132</head>133<body>134<div id="render-target">135 136  <!-- Status Bar -->137  <div class="status-bar">138    <div>8:29</div>139    <div class="status-icons">140      <!-- simple dots to represent status icons -->141      <svg width="28" height="28"><circle cx="14" cy="14" r="6" fill="#fff"/></svg>142      <svg width="28" height="28"><rect x="6" y="6" width="16" height="16" fill="#fff"/></svg>143      <svg width="28" height="28"><circle cx="14" cy="14" r="12" fill="none" stroke="#fff" stroke-width="2"/></svg>144      <svg width="28" height="28"><circle cx="14" cy="14" r="3" fill="#fff"/></svg>145      <svg width="28" height="28"><path d="M4 22 L24 22" stroke="#fff" stroke-width="3"/></svg>146    </div>147  </div>148 149  <!-- Header -->150  <div class="header">151    <div class="header-top">152      <div class="left-group">153        <div class="icon-btn" aria-label="Back">154          <svg viewBox="0 0 48 48">155            <path d="M30 10 L16 24 L30 38" stroke="#fff" stroke-width="4" fill="none" stroke-linecap="round" stroke-linejoin="round"/>156          </svg>157        </div>158      </div>159      <div class="actions">160        <!-- Cast -->161        <div class="icon-btn" aria-label="Cast">162          <svg viewBox="0 0 48 48">163            <rect x="6" y="10" width="30" height="22" rx="3" ry="3" stroke="#fff" stroke-width="3" fill="none"/>164            <path d="M6 34 Q12 34 16 38" stroke="#fff" stroke-width="3" fill="none"/>165            <path d="M6 34 Q8 34 10 36" stroke="#fff" stroke-width="3" fill="none"/>166          </svg>167        </div>168        <!-- Search -->169        <div class="icon-btn" aria-label="Search">170          <svg viewBox="0 0 48 48">171            <circle cx="21" cy="21" r="12" stroke="#fff" stroke-width="3" fill="none"/>172            <path d="M32 32 L42 42" stroke="#fff" stroke-width="3" stroke-linecap="round"/>173          </svg>174        </div>175        <!-- Kebab -->176        <div class="icon-btn" aria-label="More">177          <svg viewBox="0 0 48 48">178            <circle cx="24" cy="10" r="3" fill="#fff"/>179            <circle cx="24" cy="24" r="3" fill="#fff"/>180            <circle cx="24" cy="38" r="3" fill="#fff"/>181          </svg>182        </div>183      </div>184    </div>185    <div class="title">Playlists</div>186    <div class="filter-row">187      <div class="pill">188        <span>Recently added</span>189        <svg viewBox="0 0 24 24">190          <path d="M6 9 L12 15 L18 9" stroke="#fff" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"/>191        </svg>192      </div>193    </div>194  </div>195 196  <!-- Content -->197  <div class="content">198    <!-- Row: Watch later -->199    <div class="list-row">200      <div class="thumb">[IMG: Watch later tile]201        <div class="badge">202          <svg width="28" height="28" viewBox="0 0 24 24">203            <circle cx="12" cy="12" r="9" stroke="#fff" stroke-width="2" fill="none"/>204            <path d="M12 7 L12 12 L16 14" stroke="#fff" stroke-width="2" fill="none" stroke-linecap="round"/>205          </svg>206          <span>0</span>207        </div>208      </div>209      <div class="row-info">210        <div class="row-title">Watch later</div>211        <div class="row-sub">Private</div>212      </div>213    </div>214 215    <!-- Row: wedding dresses and makeup ideas -->216    <div class="list-row">217      <div class="thumb">[IMG: Fashion runway video]</div>218      <div class="row-info">219        <div class="row-title">wedding dresses and makeup ideas</div>220        <div class="row-sub">Private · Playlist<span class="muted"> · Updated today</span></div>221      </div>222      <div class="row-menu">223        <svg viewBox="0 0 48 48">224          <circle cx="24" cy="12" r="4" fill="#fff"/>225          <circle cx="24" cy="24" r="4" fill="#fff"/>226          <circle cx="24" cy="36" r="4" fill="#fff"/>227        </svg>228      </div>229    </div>230 231    <!-- Row: News video playlist -->232    <div class="list-row">233      <div class="thumb">[IMG: News video thumbnail]234        <div class="badge">235          <svg width="28" height="28" viewBox="0 0 24 24">236            <rect x="4" y="6" width="16" height="12" stroke="#fff" stroke-width="2" fill="none" rx="2" ry="2"/>237            <path d="M10 9 L15 12 L10 15 Z" fill="#fff"/>238          </svg>239          <span>5</span>240        </div>241      </div>242      <div class="row-info">243        <div class="row-title">News & clips</div>244        <div class="row-sub">Private</div>245      </div>246    </div>247 248    <!-- Row: Scenic portrait video -->249    <div class="list-row">250      <div class="thumb">[IMG: Scenic portrait video]</div>251      <div class="row-info">252        <div class="row-title">Travel moments</div>253        <div class="row-sub">Private</div>254      </div>255      <div class="row-menu">256        <svg viewBox="0 0 48 48">257