/* 基本情報(paste-classify)view-specific styles. Every selector starts with
   #page-paste-classify (SPEC: CSS の規律)。
   値はhub css/paste-v10.css の実値に合わせている(2026-09-04
   paste-classify-parityラウンド、既存テーマ変数への近似は行わない)。 */

/* 値はhub css/paste-v10.css 単体ではなく、同ページで実際に読み込まれる
   css/settings.css との詳細度勝負まで含めた「実測の計算値」に合わせて
   いる(2026-09-04 paste-classify-parityラウンド。settings.cssの
   より詳細度の高い .page-header .subtitle や、.card p のようなタグ
   結合セレクタが、paste-v10.css自身の指定を部分的に上書きしている
   箇所があり、ソースの見た目の値どおりにはならないため)。 */
#page-paste-classify { max-width: 900px; margin: 0 auto; }
#page-paste-classify .btn-primary { background: #2563eb; border-color: #2563eb; }
#page-paste-classify .btn-primary:hover { background: #1d4ed8; border-color: #1d4ed8; }
/* aicxo共通の.btn(app.css)は余白・角丸・太さがhubと異なるため、この
   ページ内のボタンだけhubの実測値に揃える。 */
#page-paste-classify .btn { padding: 10px 20px; border-radius: 6px; font-weight: 500; font-size: 14px; }
#page-paste-classify h1 { margin: 0 0 8px; font-size: 26px; font-weight: 700; color: #1d1d1f; }
#page-paste-classify .pc-subtitle { margin: 0; color: #5a6275; font-size: 14px; }

/* このページ内だけ、hubのカード見た目(角丸10px・枠線・影・
   パディング24px)に合わせる。共通.cardはページ横断の部品なので、
   全体を変えずここだけ上書きする。 */
#page-paste-classify .card {
  border: 1px solid #e3e6ed;
  border-radius: 10px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  padding: 24px;
}
#page-paste-classify .card h2,
#page-paste-classify .card h3 { margin: 0 0 12px; font-size: 18px; font-weight: 600; color: #0f1117; }

/* settings.css の .card p (タグ結合、.hint単体より詳細度が高い) が
   実際に効いている値。 */
#page-paste-classify .pc-hint { color: #3b4252; font-size: 14px; margin: 8px 0; line-height: 1.6; }
#page-paste-classify .pc-textarea {
  width: 100%;
  padding: 12px;
  border: 1px solid #d8d9de;
  border-radius: 6px;
  font-family: -apple-system, "system-ui", "Segoe UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size: 14px;
  resize: vertical;
}
#page-paste-classify .pc-textarea:focus {
  outline: none;
  border-color: #2563eb;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}
#page-paste-classify .pc-text-meta { margin-top: 8px; font-size: 12px; color: #6e7480; text-align: right; }

#page-paste-classify .pc-loading { text-align: center; padding: 40px; color: #5e6470; }

#page-paste-classify .pc-summary-main { font-size: 16px; color: #1d1d1f; line-height: 1.7; }
#page-paste-classify .pc-summary-count { font-weight: 700; }
#page-paste-classify .pc-summary-sub { margin-top: 12px; padding-top: 12px; border-top: 1px solid #e5e7eb; color: #5e6470; font-size: 13px; line-height: 1.6; }

#page-paste-classify .pc-applied-main { padding: 16px 0; font-size: 16px; color: #1d1d1f; line-height: 1.7; }
#page-paste-classify .pc-applied-count { font-weight: 700; }

#page-paste-classify .pc-error { background: #fef2f2; color: #991b1b; padding: 12px; border-radius: 6px; font-size: 13px; white-space: pre-wrap; word-break: break-all; }

#page-paste-classify .pc-actions { margin-top: 16px; display: flex; gap: 12px; justify-content: flex-start; }

/* 危険ゾーン(リセット): 入力カードとは別の、常時表示の専用カード */
#page-paste-classify .pc-danger-zone { margin-top: 40px; }
#page-paste-classify .pc-danger-zone .card { border: 1px solid #fecaca; background: #fef9f9; }
#page-paste-classify .pc-danger-zone .pc-actions { justify-content: flex-end; }
/* settings.css の .card p が同じく効いており、paste-v10.css自身が
   指定する赤(#7f1d1d)は実際には表示されない(hubの実測値)。 */
#page-paste-classify .pc-danger-zone-desc { color: #3b4252; font-size: 14px; line-height: 1.6; margin: 0; }

/* 登録済みデータの概況パネル(入力カードの先頭に挿入される) */
#page-paste-classify .pc-summary-panel {
  margin: 0 0 16px;
  padding: 12px 16px;
  border: 1px solid #d0d7de;
  border-radius: 8px;
  background: #f6f8fa;
  font-size: 14px;
}
#page-paste-classify .pc-summary-panel h3 { margin: 0 0 8px; font-size: 14px; font-weight: 700; }
#page-paste-classify .pc-summary-panel-note { color: #57606a; margin: 0 0 8px; }
#page-paste-classify .pc-summary-panel-list { margin: 0; padding-left: 20px; }

/* 登録済みの基本情報（141項目） */
#page-paste-classify .basic-info-section { margin-top: 20px; }
#page-paste-classify .basic-info-section > h2 { margin: 0 0 12px; font-size: 18px; font-weight: 600; }
#page-paste-classify .bi-summary { margin: 0 0 12px; color: #6b7280; font-size: 13px; }
#page-paste-classify .bi-summary b { color: #111827; }
#page-paste-classify .bi-note { margin: 0 0 12px; color: #9ca3af; font-size: 12px; }
#page-paste-classify .bi-warn { color: #b91c1c; font-size: 13px; }
#page-paste-classify .bi-tabs { display: flex; flex-wrap: wrap; gap: 2px; margin-bottom: 16px; border-bottom: 1px solid #e5e7eb; }
#page-paste-classify .bi-tab { appearance: none; padding: 8px 12px; border: 0; border-bottom: 2px solid transparent; background: none; color: #6b7280; font-size: 13px; cursor: pointer; white-space: nowrap; }
#page-paste-classify .bi-tab:hover { color: #111827; }
#page-paste-classify .bi-tab.is-active { border-bottom-color: #2563eb; color: #111827; font-weight: 600; }
#page-paste-classify .bi-section { margin-bottom: 22px; }
#page-paste-classify .bi-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 4px; }
#page-paste-classify .bi-section-head h3 { margin: 0; color: #9ca3af; font-size: 12px; font-weight: 600; }
#page-paste-classify .bi-section-actions { display: flex; align-items: center; gap: 8px; }
#page-paste-classify .bi-viewonly { color: #c4c4cc; font-size: 11px; }
#page-paste-classify .bi-field { display: grid; grid-template-columns: 220px 1fr; gap: 16px; align-items: start; padding: 11px 8px; border-bottom: 1px solid #f1f1f4; }
#page-paste-classify .bi-field:hover { background: #fafafb; }
#page-paste-classify .bi-field-label { display: flex; align-items: center; gap: 6px; color: #374151; font-size: 13px; font-weight: 500; line-height: 1.5; }
#page-paste-classify .bi-required { padding: 0 5px; border: 1px solid #fecaca; border-radius: 4px; background: #fef2f2; color: #b91c1c; font-size: 11px; font-weight: 500; }
#page-paste-classify .bi-field-value { color: #111827; font-size: 14px; line-height: 1.6; white-space: pre-wrap; word-break: break-word; }
#page-paste-classify .bi-field-value.bi-empty { color: #c4c4cc; }
#page-paste-classify .bi-input { box-sizing: border-box; width: 100%; padding: 6px 8px; border: 1px solid #d1d5db; border-radius: 6px; font: 14px/1.5 inherit; }
#page-paste-classify textarea.bi-input { min-height: 60px; resize: vertical; }
#page-paste-classify .bi-btn { appearance: none; padding: 3px 10px; border: 1px solid #d1d5db; border-radius: 6px; background: #fff; color: #374151; font-size: 12px; cursor: pointer; }
#page-paste-classify .bi-btn:hover { background: #f9fafb; }
#page-paste-classify .bi-btn-primary { border-color: #2563eb; background: #2563eb; color: #fff; }
#page-paste-classify .bi-btn:disabled { opacity: .5; cursor: default; }
#page-paste-classify .bi-list { display: flex; flex-direction: column; gap: 6px; }
#page-paste-classify .bi-list-row { display: flex; align-items: center; gap: 6px; }
#page-paste-classify .bi-list-row .bi-input { flex: 1; }
#page-paste-classify .bi-add-row { margin-top: 6px; }
#page-paste-classify .bi-msg { font-size: 12px; }
#page-paste-classify .bi-msg-ng { color: #b91c1c; }

@media (max-width: 640px) {
  #page-paste-classify .bi-field { grid-template-columns: 1fr; gap: 2px; }
  #page-paste-classify .bi-field-label { color: #6b7280; }
}
