#panel-downloads .ds-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}#panel-downloads .ds-eyebrow{color:var(--accent);font-size:11px;letter-spacing:2px;font-weight:700}#panel-downloads .ds-status{display:inline-block;white-space:nowrap;background:var(--bg);color:var(--accent);padding:5px 12px;border-radius:6px;font-size:12px}#panel-downloads .ds-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}#panel-downloads .ds-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px}#panel-downloads .ds-card{border:1px solid var(--border);border-radius:12px;padding:22px;background:var(--surface);color:var(--ink);margin-bottom:20px}#panel-downloads .ds-card h3{margin:0 0 18px;font-size:17px}#panel-downloads .ds-card>label{display:block;margin:16px 0}#panel-downloads .ds-card input:not([type=checkbox]),#panel-downloads textarea,#panel-downloads select{width:100%;margin-top:7px}#panel-downloads .ds-checks{display:flex;gap:25px;flex-wrap:wrap;margin-top:20px}#panel-downloads .ds-checks label{display:flex;align-items:center;gap:8px}#panel-downloads .ds-placeholder{padding:30px;text-align:center;background:var(--bg);border:1px dashed var(--border);border-radius:10px;color:var(--muted);margin:15px 0}#panel-downloads .ds-cover{display:flex;gap:20px;align-items:center;flex-wrap:wrap}#panel-downloads .ds-cover>img{width:220px;max-height:140px;object-fit:contain;border-radius:8px}#panel-downloads .ds-upload{display:block;padding:12px;border:1px dashed var(--border);border-radius:8px;background:var(--bg)}#panel-downloads .ds-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}#panel-downloads .ds-gallery img{width:100%;height:100px;object-fit:cover;border-radius:8px}#panel-downloads .ds-gallery small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#panel-downloads .ds-gallery button{padding:5px 10px;margin:6px 5px 0 0}#panel-downloads .ds-video{width:100%;max-height:340px;background:#111;border-radius:10px;margin:10px 0}#panel-downloads .ds-summary p{line-height:1.9;color:var(--muted)}#panel-downloads #dsMessage{min-height:24px}@media(max-width:1050px){#panel-downloads .ds-grid{grid-template-columns:1fr}}@media(max-width:600px){#panel-downloads .ds-heading{display:block}#panel-downloads .ds-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}#panel-downloads .ds-card{padding:16px}}

#panel-downloads h2,#panel-downloads h3{color:var(--ink)}#panel-downloads label,#panel-downloads small,#panel-downloads .hint{color:var(--muted)}#panel-downloads button{background:var(--surface);border:1px solid var(--border);color:var(--ink)}#panel-downloads button:hover{border-color:var(--accent)}#panel-downloads button.primary{background:#2563d9;border-color:#3478ef;color:#fff}#panel-downloads button.primary:hover{background:#3074ed}#panel-downloads input:not([type=checkbox]),#panel-downloads textarea,#panel-downloads select{background:var(--bg);border-color:var(--border);color:var(--ink)}#panel-downloads input::file-selector-button{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:5px;padding:6px 10px;margin-right:10px}

#panel-downloads .ds-apk-version{align-items:start}#panel-downloads .ds-apk-version>label{margin:12px 0;min-width:0}#panel-downloads .ds-apk-version input{height:54px;box-sizing:border-box;margin-top:7px}#panel-downloads .ds-apk-version input[type=file]{padding:9px 10px}#panel-downloads .ds-apk-version input[data-field=version]{padding:9px 12px}

#dsDevice{width:auto;margin:0}#panel-downloads .ds-summary>img{width:100%;border-radius:10px;margin-top:15px}
#panel-downloads .ds-actions{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important}#panel-downloads #dsDevice{width:120px!important;margin:0!important;flex:0 0 120px}#panel-downloads #dsSave{background:#2563d9!important;border-color:#3478ef!important;color:#fff!important}
/* APK channel and upload aligned */
#panel-downloads .ds-apk-version>label:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;row-gap:7px}#panel-downloads .ds-apk-version #dsUploadChannel{grid-row:2;grid-column:1;margin:0;height:42px;min-width:0}#panel-downloads .ds-apk-version #dsRemoteUpload{grid-row:2;grid-column:2;margin:0;height:42px;white-space:nowrap}#panel-downloads .ds-apk-version #dsRemoteUpload+input{grid-row:3;grid-column:1/-1;margin:0;height:42px}#panel-downloads .ds-apk-version input[data-field=version]{height:42px;margin-top:7px}

.ds-apk-dialog{position:fixed;inset:0;margin:auto;padding:0;width:min(560px,calc(100vw - 32px));height:390px;max-height:calc(100vh - 32px);border:1px solid #34445b;border-radius:14px;background:#182332;color:#edf3ff;overflow:hidden}.ds-apk-dialog::backdrop{background:#0009}.ds-apk-dialog iframe{display:block;width:100%;height:100%;border:0}.ds-apk-dialog .ds-apk-close{width:32px;height:32px;padding:0;line-height:1;display:grid;place-items:center;position:absolute;right:12px;top:10px;z-index:2;background:transparent;color:#b8c8de;border:0;font-size:20px;cursor:pointer}

/* Compact APK controls on one desktop row */
#panel-downloads .form-grid.ds-apk-version{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:16px}#panel-downloads .ds-apk-version>label:first-child{grid-template-columns:150px auto minmax(180px,1fr)}#panel-downloads .ds-apk-version #dsRemoteUpload+input{grid-row:2;grid-column:3;min-width:0}#panel-downloads .ds-apk-version>label:last-child{width:120px}@media(max-width:800px){#panel-downloads .form-grid.ds-apk-version{grid-template-columns:minmax(0,1fr) 100px;gap:10px}#panel-downloads .ds-apk-version>label:last-child{width:100px}#panel-downloads .ds-apk-version>label:first-child{grid-template-columns:minmax(0,1fr) auto}#panel-downloads .ds-apk-version #dsRemoteUpload+input{grid-row:3;grid-column:1/-1}}

#panel-downloads #dsRemoteUpload{background:#2563d9;border-color:#3478ef;color:#fff;font-weight:600}#panel-downloads #dsRemoteUpload:hover:not(:disabled){background:#3074ed;border-color:#5895ff}#panel-downloads #dsRemoteUpload:disabled{opacity:.45;cursor:not-allowed}

#panel-downloads #dsSave{background:#cc3048!important;border-color:#dc4058!important;color:#fff!important}#panel-downloads #dsSave:hover:not(:disabled){background:#e03b54!important;border-color:#ed526a!important}#panel-downloads #dsRemoteUpload{background:#16834a;border-color:#22985b;color:#fff}#panel-downloads #dsRemoteUpload:hover:not(:disabled){background:#1b9957;border-color:#32b570}

#panel-downloads #dsCover::file-selector-button,#panel-downloads #dsImages::file-selector-button,#panel-downloads #dsVideo::file-selector-button{background:#16834a;border-color:#22985b;color:#fff;cursor:pointer}#panel-downloads #dsCover::file-selector-button:hover,#panel-downloads #dsImages::file-selector-button:hover,#panel-downloads #dsVideo::file-selector-button:hover{background:#1b9957;border-color:#32b570}

#panel-downloads .ds-file-picker{position:relative;display:flex;align-items:center;gap:10px;min-width:0;margin-top:7px;padding:9px 10px;border:1px solid var(--border);border-radius:7px;background:var(--bg)}#panel-downloads .ds-file-picker input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer;z-index:1}#panel-downloads .ds-file-button{flex-shrink:0;background:#16834a;color:#fff;border:1px solid #22985b;border-radius:5px;padding:6px 10px}#panel-downloads .ds-file-picker:hover .ds-file-button{background:#1b9957}#panel-downloads .ds-file-picker:focus-within{outline:2px solid #80b5ff;outline-offset:2px}#panel-downloads .ds-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:13px}

#panel-downloads .ds-apk-version>label:first-child{display:grid;grid-template-columns:150px minmax(0,1fr)}#panel-downloads #dsDownloadUrl{grid-column:2;grid-row:2;min-width:0}@media(max-width:650px){#panel-downloads .ds-apk-version>label:first-child{grid-template-columns:1fr}#panel-downloads #dsDownloadUrl{grid-column:1;grid-row:3}}

/* Distribution address controls: one aligned desktop row. */
#panel-downloads .form-grid.ds-apk-version{display:grid;grid-template-columns:150px minmax(0,1fr) 120px;gap:16px;align-items:start}
#panel-downloads .ds-apk-version>label,#panel-downloads .ds-apk-version>label:first-child,#panel-downloads .ds-apk-version>label:last-child{display:flex;flex-direction:column;gap:8px;width:auto;min-width:0;margin:0}
#panel-downloads .ds-apk-version input,#panel-downloads .ds-apk-version input[data-field=version],#panel-downloads .ds-apk-version select,#panel-downloads #dsDownloadUrl{display:block;width:100%;min-width:0;height:42px;min-height:42px;margin:0;padding:9px 12px;box-sizing:border-box;line-height:22px}
@media(max-width:650px){#panel-downloads .form-grid.ds-apk-version{grid-template-columns:minmax(0,1fr) 100px;gap:12px}#panel-downloads .ds-apk-version>label:nth-child(2){grid-column:1/-1;grid-row:2}#panel-downloads .ds-apk-version>label:last-child{grid-column:2;grid-row:1}}

#panel-downloads .ds-display-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}
#panel-downloads .ds-display-row>label,#panel-downloads .ds-display-row>.ds-category-field{display:flex;flex-direction:column;gap:8px;margin:0;min-width:0}
#panel-downloads .ds-category-controls{display:flex;align-items:center;gap:10px;min-width:0}
#panel-downloads .ds-display-row input,#panel-downloads .ds-display-row select,#panel-downloads #dsCategories{height:42px;min-height:42px;box-sizing:border-box;margin:0}
#panel-downloads .ds-category-controls select{flex:1;width:0;min-width:0}
#panel-downloads #dsCategories{flex:none;background:#2563eb;border:1px solid #3b82f6;color:#fff;padding:0 16px;white-space:nowrap;border-radius:8px}
#panel-downloads #dsCategories:hover{background:#1d4ed8}
@media(max-width:650px){#panel-downloads .ds-display-row{grid-template-columns:1fr}}

#panel-downloads .ds-category-field>label{display:block;margin:0;padding:0;line-height:inherit}

#panel-downloads .ds-display-row input[data-field=title]{margin:0}

/* Keep both display fields on the same baseline, including offline styles loaded later. */
#panel-downloads .ds-card .ds-display-row>label>input[data-field="title"],
#panel-downloads .ds-card .ds-display-row .ds-category-controls>select,
#panel-downloads .ds-card .ds-display-row .ds-category-controls>button{margin:0!important;height:42px;box-sizing:border-box}

#panel-downloads .ds-actions>.ds-checks{align-items:center;gap:22px;margin:0 0 0 16px}
#panel-downloads .ds-actions>.ds-checks label{margin:0;white-space:nowrap;color:var(--ink)}
#panel-downloads .ds-actions>.ds-checks input[type=checkbox]{flex:none;margin:0}
@media(max-width:720px){#panel-downloads .ds-actions>.ds-checks{width:100%;margin:4px 0 0}}

/* A fixed row for every channel, ordered by channel ID. */
#panel-downloads .ds-platform-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:5px;margin-bottom:14px;border:1px solid var(--border);border-radius:9px;background:var(--bg);width:fit-content;max-width:100%}
#panel-downloads .ds-platform-tabs button{margin:0;padding:8px 18px;min-height:40px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);font-size:13px}
#panel-downloads .ds-platform-tabs button[aria-pressed=true]{background:#2563d9;border-color:#3478ef;color:#fff}
#panel-downloads .ds-download-settings>.hint{margin:0 0 18px;line-height:1.8}
#panel-downloads .ds-pc-download{display:flex;align-items:center;gap:8px;min-width:0}
#panel-downloads .ds-pc-picker{flex:none;margin:0;padding:0;border:0;background:transparent}
#panel-downloads .ds-pc-picker .ds-file-button{display:flex;align-items:center;height:42px;padding:0 12px;box-sizing:border-box;white-space:nowrap}
#panel-downloads .ds-card .ds-channel-download .ds-pc-picker input[type=file]{height:100%;margin:0}
#panel-downloads .ds-pc-download>button{flex:none;height:42px;margin:0;padding:8px 10px;font-size:12px}
#panel-downloads .ds-pc-address{position:relative;flex:1;min-width:0}
#panel-downloads .ds-pc-address input[readonly]{width:100%;color:var(--muted)}
#panel-downloads .ds-pc-progress{position:absolute;inset:0;display:flex;align-items:center;min-width:0;padding:0 10px 3px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--ink);font-size:12px;overflow:hidden}
#panel-downloads .ds-pc-progress[hidden]{display:none}
#panel-downloads .ds-pc-progress span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#panel-downloads .ds-pc-progress progress{position:absolute;left:0;bottom:0;width:100%;height:4px;border:0;appearance:none;background:var(--border);color:#22b573}
#panel-downloads .ds-pc-progress progress::-webkit-progress-bar{background:var(--border)}
#panel-downloads .ds-pc-progress progress::-webkit-progress-value{background:#22b573}
#panel-downloads .ds-pc-progress progress::-moz-progress-bar{background:#22b573}
#panel-downloads .ds-pc-progress.is-error{color:#ff8793;border-color:#a94353}
#panel-downloads .ds-pc-progress.is-error progress::-webkit-progress-value{background:#dc4058}
#panel-downloads .ds-pc-progress.is-error progress::-moz-progress-bar{background:#dc4058}
@media(max-width:650px){#panel-downloads .ds-pc-download{grid-column:1/-1;grid-row:2}}
#panel-downloads #dsSitePreview{width:225px;margin:0;flex:0 1 225px}
#panel-downloads .ds-download-columns,#panel-downloads .ds-channel-download{display:grid;grid-template-columns:150px minmax(0,1fr) 120px;gap:16px;align-items:center}
#panel-downloads .ds-download-columns{font-size:12px;color:var(--muted);margin:0 0 10px}
#panel-downloads .ds-channel-download{padding:10px 0;border-top:1px solid var(--border)}
#panel-downloads .ds-channel-name{display:flex;align-items:center;height:42px;padding:9px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg);font-size:13px;color:var(--ink)}
#panel-downloads .ds-card .ds-channel-download input{display:block;margin:0;height:42px;min-width:0;font-size:13px;box-sizing:border-box}
@media(max-width:800px){#panel-downloads .ds-download-columns,#panel-downloads .ds-channel-download{grid-template-columns:120px minmax(0,1fr) 100px;gap:12px}}
@media(max-width:650px){#panel-downloads .ds-download-columns{display:none}#panel-downloads .ds-channel-download{grid-template-columns:minmax(0,1fr) 100px;gap:8px;padding:12px 0}#panel-downloads [data-download-channel]{grid-column:1/-1;grid-row:2}#panel-downloads [data-shared-version]{grid-column:2;grid-row:1}#panel-downloads #dsSitePreview{width:100%;flex-basis:100%}}

