/* アップロード画面 固有スタイル */
.drop{
	border:2px dashed var(--line);
	border-radius:var(--radius);
	background:var(--card);
	text-align:center;
	padding:46px 20px;
	cursor:pointer;
	transition:border-color .15s, background .15s;
}
.drop:hover{ border-color:var(--accent); }
.drop.over{ border-color:var(--accent); background:#eef3ff; }
.drop-ico{ font-size:38px; color:var(--accent); line-height:1; }
.drop-t1{ font-size:17px; font-weight:600; margin-top:10px; }
.drop-t2{ color:var(--muted); font-size:14px; margin-top:4px; }

.queue{ margin-top:16px; }
.q-row{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:10px;
	padding:10px 12px;
	margin-bottom:8px;
}
.q-top{ display:flex; justify-content:space-between; gap:10px; }
.q-name{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.q-stat{ color:var(--muted); font-size:13px; flex:none; }
.q-stat.s-done{ color:var(--ok); }
.q-stat.s-fail{ color:var(--err); }
.prog{
	height:7px;
	background:var(--line);
	border-radius:6px;
	overflow:hidden;
	margin-top:8px;
}
.prog-fill{ height:100%; width:0; background:var(--accent); transition:width .2s; }

.files{ margin-top:26px; }
.files-h{ font-weight:700; margin-bottom:8px; }
.list table{ border:1px solid var(--line); border-radius:10px; overflow:hidden; table-layout:fixed; }
/* 後続列は固定幅で潰さない。ファイル名だけ余白を取り、長い時は … で省略 */
.list td.c-name{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.list td.c-size{ width:84px;  white-space:nowrap; }
.list td.c-date{ width:172px; white-space:nowrap; }
.list td.c-act { width:208px; white-space:nowrap; text-align:right; }
.c-act .dl{ margin:0 0 0 6px; }
/* 共有ボタンは下載と区別（白地＋枠） */
.dl.sh{ background:#fff; color:var(--accent); border:1px solid var(--accent); }
.dl.sh:hover{ background:#eef3ff; }

/* 共有リンク発行行（行の下に展開） */
.share-row td{ background:#f3f6ff; border-bottom:1px solid var(--line); }
.share-cell{ padding:10px 12px; text-align:left; }
.share-inner{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.share-cell select{ padding:5px 8px; border:1px solid var(--line); border-radius:8px; background:#fff; color:var(--fg); font-size:13px; }
.share-out{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.share-url{ width:min(420px,58vw); padding:5px 8px; border:1px solid var(--line); border-radius:8px; background:#fff; color:var(--fg); font-size:13px; }
.share-exp{ color:var(--muted); font-size:13px; }

/* 共有ページ（s.php） */
.sharepage{ max-width:560px; margin:30px auto; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:30px 24px; text-align:center; }
.sp-name{ font-size:18px; font-weight:700; word-break:break-all; }
.sp-meta{ color:var(--muted); font-size:14px; margin:8px 0 20px; }
.sp-btn{ padding:10px 24px; font-size:15px; }
.sp-prog{ margin-top:18px; }
.sp-bad{ color:var(--err); font-weight:600; padding:12px; }
.list .empty{ color:var(--muted); padding:14px; background:var(--card); border:1px solid var(--line); border-radius:10px; }
.dl{ padding:4px 12px; font-size:13px; }
