/* DL 入口ページ本体（フォーム・配布物一覧）。shell.css の変数を使う。 */

html {
  color-scheme: dark;
}

body.dl-page {
  margin: 0;
  background-color: var(--bg);
  color: var(--ink);
  font-family: var(--font-jp);
  font-size: 15px;
  line-height: 1.7;
}

.dl-main .wrap {
  max-width: 640px;
  margin: 0 auto;
  padding: clamp(32px, 6vw, 48px) clamp(16px, 4vw, 20px) clamp(64px, 10vw, 80px);
}

.dl-main h1 {
  font-size: clamp(23px, 5vw, 28px);
  letter-spacing: .01em;
  margin: 0 0 12px;
}

.dl-main .lead {
  font-size: 15px;
  line-height: 1.65;
  color: var(--ink-dim);
  margin: 0 0 28px;
}

.dl-main .run {
  margin: 16px 0 0;
  padding: 14px 16px;
  background: var(--bg);
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--ink-dim);
  overflow-x: auto;
  white-space: pre-wrap;
  font-family: ui-monospace, monospace;
}

.dl-main .run-h {
  font-size: 13px;
  color: var(--ink-dim);
  margin: 24px 0 0;
  font-weight: 600;
}

.dl-main .card {
  background: var(--surface-1);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 24px;
  margin: 24px 0;
}

.dl-main label {
  display: block;
  font-size: 13px;
  color: var(--ink-dim);
  margin-bottom: 6px;
}

.dl-main input {
  width: 100%;
  padding: 11px 13px;
  background: var(--bg);
  color: var(--ink);
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  font-size: 16px;
}

.dl-main input:focus {
  outline: none;
  border-color: var(--cyan);
}

.dl-main button[type="submit"] {
  margin-top: 16px;
  width: 100%;
  padding: 12px;
  background: linear-gradient(135deg, #00C6FF, #0BA8FF 52%, #0072FF);
  color: #fff;
  border: 0;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  font-family: var(--font-en);
  transform: skewX(-10deg);
}

.dl-main .note {
  font-size: 13px;
  color: var(--ink-dim);
  margin-top: 20px;
}

.dl-main .note a {
  color: var(--cyan);
  text-decoration: none;
}

.dl-main .note a:hover {
  text-decoration: underline;
}

.dl-main .msg {
  padding: 11px 14px;
  border-radius: 8px;
  margin-bottom: 20px;
  font-size: 14px;
}

.dl-main .msg.ok {
  background: rgba(31, 157, 85, .12);
  border: 1px solid rgba(31, 157, 85, .35);
  color: #8FE0AC;
}

.dl-main .msg.err {
  background: rgba(180, 60, 70, .15);
  border: 1px solid rgba(180, 60, 70, .4);
  color: #F0A2A8;
}

.dl-main .dl-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 13px 0;
  border-bottom: 1px solid var(--line);
}

.dl-main .dl-row:last-child {
  border-bottom: 0;
}

.dl-main .dl-row a {
  color: var(--cyan);
  text-decoration: none;
  font-weight: 600;
}

.dl-main .dl-row a:hover {
  text-decoration: underline;
}

.dl-main .sz {
  color: var(--ink-dim);
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}
