/* ショートコードを置いたページだけ、Livedoor Trend Radarと同系統のワイド画面にします。 */
body.gpc-tool-page #breadcrumb,
body.gpc-tool-page #mainEntity > .entry-title,
body.gpc-tool-page #mainEntity .entry-title,
body.gpc-tool-page #mainEntity .post-title,
body.gpc-tool-page #mainEntity > header.entry-header,
body.gpc-tool-page #mainEntity > .post-title,
body.gpc-tool-page #main > article > .entry-title,
body.gpc-tool-page #main > article > header > .entry-title,
body.gpc-tool-page #mainEntity > .meta,
body.gpc-tool-page #mainEntity > .post-meta,
body.gpc-tool-page #mainEntity > aside,
body.gpc-tool-page #mainEntity > .toc,
body.gpc-tool-page #mainEntity > #toc_container,
body.gpc-tool-page #mainEntity > .next-prev { display: none !important; }
body.gpc-tool-page .container {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1600px !important;
  width: calc(100% - 24px) !important;
}
body.gpc-tool-page #primary,
body.gpc-tool-page #main,
body.gpc-tool-page #main > article,
body.gpc-tool-page #mainEntity {
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
}
body.gpc-tool-page #primary { margin-top: 12px !important; }
body.gpc-tool-page #main,
body.gpc-tool-page #main > article { background: transparent !important; border: 0 !important; box-shadow: none !important; }
body.gpc-tool-page #mainEntity { padding-top: 0 !important; }

.gpc-dashboard {
  --gpc-blue: #00a67e;
  --gpc-blue-dark: #173a32;
  --gpc-blue-soft: #edf8f4;
  --gpc-border: #d7e8e3;
  --gpc-text: #24332f;
  --gpc-muted: #63756f;
  color: var(--gpc-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Yu Gothic", Meiryo, sans-serif;
  line-height: 1.6;
  margin: 0 0 24px;
}
.gpc-dashboard *, .gpc-dashboard *::before, .gpc-dashboard *::after { box-sizing: border-box; }
.gpc-dashboard [hidden] { display: none !important; }
.gpc-app-header {
  align-items: center;
  background: linear-gradient(115deg, #008d72 0%, #00a67e 58%, #00b38b 100%);
  border-bottom: 4px solid #baf4df;
  box-shadow: 0 4px 16px rgba(0,111,90,.24);
  color: #fff;
  display: flex;
  gap: 14px;
  margin-bottom: 18px;
  padding: 12px 18px;
}
.gpc-app-header img { background: rgba(255,255,255,.13); border-radius: 12px; flex: 0 0 auto; height: 52px; width: 52px; }
.gpc-app-header div { display: grid; line-height: 1.35; }
.gpc-app-header strong { color: #fff; font-size: clamp(18px, 2.5vw, 23px); font-weight: 800; }
.gpc-app-header span { color: rgba(255,255,255,.9); font-size: 12px; font-weight: 600; }
.gpc-main-tabs {
  background: var(--gpc-blue-soft);
  border: 1px solid var(--gpc-border);
  border-radius: 12px;
  display: flex;
  gap: 7px;
  margin: 0 0 14px;
  padding: 7px;
}
.gpc-main-tabs button {
  background: transparent !important;
  border: 0 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  color: #315b50 !important;
  cursor: pointer;
  flex: 1 1 0;
  font: 800 15px/1.4 inherit !important;
  margin: 0 !important;
  min-height: 45px;
  padding: 8px 14px !important;
  text-shadow: none !important;
}
.gpc-main-tabs button:hover { background: rgba(255,255,255,.7) !important; }
.gpc-main-tabs button.is-active { background: #fff !important; box-shadow: 0 3px 12px rgba(0,111,90,.13) !important; color: var(--gpc-blue) !important; }
.gpc-tab-count { background: #dff4ec; border-radius: 999px; color: #087158; display: inline-block; font-size: 11px; margin-left: 3px; min-width: 20px; padding: 1px 6px; text-align: center; }
.gpc-panel {
  background: #fff;
  border: 1px solid var(--gpc-border);
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0,111,90,.08);
  margin-bottom: 16px;
  padding: 22px;
}
.gpc-dashboard .gpc-heading h2,
.gpc-dashboard .gpc-results-head h3 {
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--gpc-blue-dark) !important;
  display: block !important;
  font-family: inherit !important;
  font-style: normal !important;
  font-weight: 700 !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  text-shadow: none !important;
  transform: none !important;
}
.gpc-dashboard .gpc-heading h2::before,
.gpc-dashboard .gpc-heading h2::after,
.gpc-dashboard .gpc-results-head h3::before,
.gpc-dashboard .gpc-results-head h3::after { content: none !important; display: none !important; }
.gpc-dashboard .gpc-heading h2 { font-size: clamp(22px, 3vw, 28px) !important; }
.gpc-dashboard .gpc-results-head h3 { font-size: 20px !important; }
.gpc-heading p, .gpc-results-head p { color: var(--gpc-muted); margin: 4px 0 0; }
.gpc-url-row { align-items: end; display: grid; gap: 10px; grid-template-columns: 1fr auto; margin-top: 20px; }
.gpc-url-row label, .gpc-detected-grid label, .gpc-prompt-editor-body label {
  color: #455f57;
  display: grid;
  font-size: 13px;
  font-weight: 700;
  gap: 5px;
}
.gpc-dashboard input[type="url"],
.gpc-dashboard input[type="text"],
.gpc-dashboard textarea {
  background: #fff;
  border: 1px solid #b9d6cd;
  border-radius: 8px;
  color: #24332f;
  font: 15px/1.55 inherit;
  margin: 0;
  padding: 10px 12px;
  width: 100%;
}
.gpc-dashboard input[type="url"], .gpc-dashboard input[type="text"] { min-height: 44px; }
.gpc-dashboard input:focus, .gpc-dashboard textarea:focus { border-color: var(--gpc-blue); box-shadow: 0 0 0 2px rgba(0,166,126,.15); outline: 0; }
.gpc-dashboard input[readonly] { background: #f5f9f7; color: #526a63; }
.gpc-detected-grid { display: grid; gap: 12px; grid-template-columns: minmax(220px, .8fr) minmax(320px, 1.2fr); margin-top: 14px; }
.gpc-command-field { border: 1px solid #dcebe6 !important; border-radius: 11px !important; margin: 16px 0 0 !important; padding: 14px !important; }
.gpc-command-field legend { background: none !important; border: 0 !important; color: #455f57 !important; float: none !important; font-size: 13px !important; font-weight: 800 !important; line-height: 1.5 !important; margin: 0 !important; padding: 0 7px !important; width: auto !important; }
.gpc-command-list { display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gpc-command-list label { align-items: center; background: #f5fbf8; border: 1px solid #d5e9e2; border-radius: 8px; color: #315b50; cursor: pointer; display: flex; font-size: 13px; font-weight: 700; gap: 7px; min-height: 42px; padding: 8px 10px; }
.gpc-command-list label:has(input:checked) { background: #e7f8f2; border-color: #75cbb5; color: #087158; }
.gpc-command-list input { accent-color: var(--gpc-blue); flex: 0 0 auto; height: 18px; margin: 0; width: 18px; }
.gpc-select-actions { display: flex; gap: 7px; margin-top: 10px; }
.gpc-select-actions button { background: #fff !important; border: 1px solid #a9cfc4 !important; border-radius: 999px !important; color: #315b50 !important; cursor: pointer; font: 700 12px/1.4 inherit !important; margin: 0 !important; min-height: 31px; padding: 4px 12px !important; }
.gpc-primary-button, .gpc-secondary-button, .gpc-danger-button, .gpc-reset-button {
  border-radius: 8px !important;
  cursor: pointer;
  font: 700 14px/1.4 inherit !important;
  margin: 0 !important;
  min-height: 42px;
  padding: 8px 16px !important;
  text-shadow: none !important;
}
.gpc-primary-button { background: var(--gpc-blue) !important; border: 1px solid var(--gpc-blue) !important; color: #fff !important; }
.gpc-secondary-button { background: #fff !important; border: 1px solid #00a67e !important; color: #087158 !important; }
.gpc-danger-button, .gpc-reset-button { background: #fff1f0 !important; border: 1px solid #d65b52 !important; color: #a5281f !important; }
.gpc-primary-button:hover { background: #008f6d !important; }
.gpc-secondary-button:hover { background: #edfbf6 !important; }
.gpc-danger-button:hover, .gpc-reset-button:hover { background: #ffe5e3 !important; }
.gpc-dashboard button:disabled { cursor: wait; opacity: .55; }
.gpc-status { background: #edfbf6; border: 1px solid #b9e6d8; border-radius: 9px; color: #45645b; font-size: 13px; margin: 14px 0 0; padding: 9px 12px; }
.gpc-status.is-success { background: #eaf8f1; border-color: #a9dfc8; color: #147254; }
.gpc-status.is-error { background: #fff1f0; border-color: #efb3ae; color: #a5281f; }
.gpc-loading .gpc-status::before { animation: gpc-spin .75s linear infinite; border: 2px solid #bfe8db; border-radius: 50%; border-top-color: var(--gpc-blue); content: ""; display: inline-block; height: 14px; margin-right: 7px; vertical-align: -2px; width: 14px; }
@keyframes gpc-spin { to { transform: rotate(360deg); } }
.gpc-progress { background: #dcefe9; border-radius: 999px; height: 5px; margin-top: 14px; overflow: hidden; }
.gpc-progress span { animation: gpc-progress 1.1s ease-in-out infinite; background: var(--gpc-blue); border-radius: inherit; display: block; height: 100%; width: 38%; }
@keyframes gpc-progress { from { transform: translateX(-110%); } to { transform: translateX(300%); } }
.gpc-results-head { align-items: center; display: flex; gap: 16px; justify-content: space-between; }
.gpc-results-head > span { background: #eef8f4; border-radius: 999px; color: #315b50; font-size: 12px; font-weight: 800; padding: 4px 10px; }
.gpc-quick-actions { background: #f4fbf8; border: 1px solid #c9e9df; border-radius: 11px; display: grid; gap: 9px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 16px; padding: 12px; }
.gpc-quick-item { display: flex; flex-wrap: wrap; gap: 6px; }
.gpc-quick-item .gpc-primary-button { flex: 1 1 180px; }
.gpc-quick-item .gpc-secondary-button { flex: 0 1 auto; }
.gpc-results { display: grid; gap: 11px; margin-top: 16px; }
.gpc-empty { border: 1px dashed #bddbd2; border-radius: 10px; color: var(--gpc-muted); padding: 34px 18px; text-align: center; }
.gpc-result-card, .gpc-prompt-editor { border: 1px solid #d5e3ed; border-radius: 10px; overflow: hidden; }
.gpc-result-card > summary, .gpc-prompt-editor > summary { align-items: center; background: #f7fbf9; color: #315b50; cursor: pointer; display: flex; font-size: 14px; font-weight: 800; gap: 12px; justify-content: space-between; list-style-position: inside; padding: 12px 14px; }
.gpc-result-card > summary span, .gpc-prompt-editor > summary small { color: var(--gpc-muted); font-size: 12px; font-weight: 600; }
.gpc-result-actions { display: flex; flex-wrap: wrap; gap: 7px; padding: 12px 12px 0; }
.gpc-result-card > textarea { border-radius: 7px; font-family: Consolas, Monaco, "Courier New", monospace; font-size: 13px; line-height: 1.65; margin: 12px; min-height: 420px; resize: vertical; width: calc(100% - 24px); }
.gpc-variable-help { background: #edfbf6; border-left: 4px solid var(--gpc-blue); color: #315b50; font-size: 13px; margin: 16px 0; padding: 9px 12px; }
.gpc-variable-help code { background: #fff; border: 1px solid #cfe1ef; border-radius: 4px; padding: 1px 4px; }
.gpc-prompt-editors { display: grid; gap: 10px; }
.gpc-prompt-editor-body { display: grid; gap: 13px; padding: 15px; }
.gpc-prompt-editor-body textarea { font-family: Consolas, Monaco, "Courier New", monospace; font-size: 13px; line-height: 1.6; min-height: 360px; resize: vertical; }
.gpc-editor-actions { display: flex; justify-content: flex-end; }
.gpc-settings-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 16px; }
.gpc-history-head { align-items: flex-start; display: flex; gap: 18px; justify-content: space-between; }
.gpc-history-head-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.gpc-history-head-actions > span { background: #e7f8f2; border: 1px solid #b9e6d8; border-radius: 999px; color: #087158; font-size: 12px; font-weight: 800; padding: 5px 10px; }
.gpc-history-list { display: grid; gap: 10px; margin-top: 14px; }
.gpc-history-card { align-items: center; background: #fff; border: 1px solid #d7e8e3; border-left: 5px solid #00a67e; border-radius: 10px; display: grid; gap: 13px; grid-template-columns: auto minmax(0, 1fr) auto; margin: 0; padding: 13px 14px; }
.gpc-history-number { align-items: center; background: #e7f8f2; border-radius: 50%; color: #087158; display: flex; flex: 0 0 auto; font-size: 12px; font-weight: 800; height: 30px; justify-content: center; width: 30px; }
.gpc-history-content { min-width: 0; }
.gpc-history-meta { align-items: center; display: flex; flex-wrap: wrap; gap: 7px; }
.gpc-history-meta time { color: #71827d; font-size: 11px; }
.gpc-history-meta span { background: #f0f8f5; border-radius: 999px; color: #45645b; font-size: 11px; font-weight: 700; padding: 2px 8px; }
.gpc-dashboard .gpc-history-content h3 { background: none !important; border: 0 !important; color: #173a32 !important; font: 700 15px/1.45 inherit !important; margin: 4px 0 2px !important; padding: 0 !important; }
.gpc-dashboard .gpc-history-content h3::before, .gpc-dashboard .gpc-history-content h3::after { content: none !important; display: none !important; }
.gpc-history-content > a { color: #087158; display: block; font-size: 11px; overflow: hidden; text-decoration: underline; text-overflow: ellipsis; white-space: nowrap; }
.gpc-history-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }
.gpc-history-tags span { background: #f7faf9; border: 1px solid #d7e8e3; border-radius: 5px; color: #526a63; font-size: 10px; padding: 2px 6px; }
.gpc-history-actions { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; max-width: 310px; }
.gpc-history-actions button { font-size: 12px !important; min-height: 35px; padding: 6px 10px !important; }
.gpc-history-delete { background: transparent !important; border: 0 !important; color: #a5281f !important; cursor: pointer; font: 700 12px/1.4 inherit !important; text-decoration: underline; }
.gpc-access-message { background: #fff7df; border: 1px solid #f0d37d; border-radius: 8px; padding: 12px 15px; }

@media (max-width: 900px) {
  .gpc-command-list, .gpc-quick-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  body.gpc-tool-page .container { width: calc(100% - 12px) !important; }
  .gpc-panel { border-radius: 10px; padding: 16px; }
  .gpc-url-row, .gpc-detected-grid, .gpc-command-list, .gpc-quick-actions { grid-template-columns: 1fr; }
  .gpc-url-row .gpc-primary-button { width: 100%; }
  .gpc-main-tabs button { font-size: 13px !important; padding-left: 7px !important; padding-right: 7px !important; }
  .gpc-app-header { border-radius: 8px 8px 0 0; padding: 10px 12px; }
  .gpc-app-header img { height: 44px; width: 44px; }
  .gpc-history-head { display: grid; }
  .gpc-history-head-actions { justify-content: flex-start; }
  .gpc-history-card { align-items: start; grid-template-columns: auto minmax(0, 1fr); }
  .gpc-history-actions { grid-column: 1 / -1; justify-content: flex-start; max-width: none; }
  .gpc-result-card > textarea { min-height: 320px; }
  .gpc-settings-actions > button { width: 100%; }
}
