/* Posting: the sticky upload bar, YouTube account line, upload progress, posted marks. */
/* sticky bottom bar */
.dock{position:sticky;bottom:0;z-index:20;margin:28px calc(-1 * clamp(16px,3.5vw,48px)) -48px;padding:14px clamp(16px,3.5vw,48px) calc(14px + env(safe-area-inset-bottom,0px));background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line);display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dock .grow{flex:1;color:var(--muted);font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:8px;min-width:12ch}
.dock .primary .ms{margin:0 0 0 6px;font-size:18px}
.acct{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.86rem;color:var(--muted);margin-bottom:12px}
.acct img{width:22px;height:22px;border-radius:50%;flex:none}
.acct b{color:var(--ink);font-weight:600}
.acct[hidden]{display:none}
.short .keep.posted{color:var(--good);font-weight:600}
#upPanel{margin-top:0}
.ytinfo{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:12px;background:var(--good-soft);font-size:.86rem;color:var(--ink)}
.ytinfo .ghost{align-self:flex-start;padding:7px 12px;font-size:.86rem}
.ytinfo small{color:var(--muted)}
/* the YouTube and Instagram cards on the Post view */
.when-lab{display:block;font-size:.8rem;font-weight:600;color:var(--muted);margin:2px 0 6px}
.plat .post-btns{margin-top:14px}
.plat.ig .hint{margin:10px 0 0}
#igWhenBox[hidden]{display:none}
.ig-btn{background:linear-gradient(135deg,#a92d74,#c8285e 50%,#d4581f);color:#fff}
.ig-warn{display:flex;gap:8px;align-items:flex-start;width:100%;margin-top:6px;padding:10px 12px;border-radius:12px;background:var(--warn-soft,var(--raised));color:var(--ink);font-size:.84rem;line-height:1.45}
.ig-warn .ms{color:var(--warn,#d97706);font-size:20px}
.post-list .igst{display:flex;align-items:center;gap:5px;margin-top:2px;flex-wrap:wrap}
.post-list .igst .ms{font-size:15px}
.post-list .igst.done{color:var(--good)}
.post-list .igst.error,.post-list .igst.check{color:var(--bad)}
.post-list .igst a,.post-list .igst .linkbtn{font:inherit;margin-left:6px}
#upMsg{font-weight:600}
/* Post view (step 3, after review): the chosen Shorts, when, where */
.post-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:20px;align-items:start;margin-top:20px}
.post-grid .card+.card{margin-top:0}
.post-side{display:flex;flex-direction:column;gap:16px}
.post-side .custom{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.post-side .custom[hidden]{display:none}
.post-btns{display:flex;flex-direction:column;gap:8px}
.post-btns button{width:100%;justify-content:center}
.post-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.post-list li{display:flex;align-items:center;gap:12px;padding:8px;border-radius:12px;background:var(--raised)}
.post-list img{width:46px;aspect-ratio:9/16;object-fit:cover;border-radius:8px;flex:none;background:#000}
.post-list b{display:block;font-size:.9rem;line-height:1.3}
.post-list small{color:var(--muted);font:600 12px var(--mono)}
.post-list .done{color:var(--good)}
.post-empty{color:var(--muted);font-size:.9rem}
@media (max-width:820px){.post-grid{grid-template-columns:minmax(0,1fr)}}

/* YouTube's daily limit line (js/youtube-today.js) */
.yt-today{margin:10px 0 0;padding:10px 12px;border-radius:10px;border:1px solid var(--line-2);background:var(--raised);
  color:var(--muted);font-size:.86rem;line-height:1.45}
.yt-today[hidden]{display:none}
