/* フェーズ3C: 発見マップと特集。CSSは専用ファイルに分離して保守性を確保。 */
.discovery-section{padding:20px 18px;margin:0 0 21px;background:linear-gradient(150deg,#e6f6fe,#fff 75%);border:1px solid #cfe7f3;border-radius:18px;scroll-margin-top:16px}
.discovery-kicker{margin:0;color:#14658c;font-size:10px;font-weight:900;letter-spacing:.17em}
.discovery-section h3{font-size:1.17rem;line-height:1.45;color:#173f5b;margin:5px 0 8px}
.discovery-lead{font-size:.82rem;line-height:1.75;color:#476b7e;margin:0 0 15px}
.discovery-random{display:grid;grid-template-columns:1fr;gap:8px;padding:15px;background:#fff;border:1px solid #d8e8f1;border-radius:14px}
.discovery-random label{font-size:.78rem;font-weight:800;color:#254b62}
.discovery-random select{width:100%;min-height:43px;border:1px solid #afccdc;border-radius:10px;background:#fff;color:#1b465e;font:inherit;padding:8px 11px}
.discovery-action{border:0;border-radius:10px;min-height:45px;background:#185c7b;color:white;font-size:.89rem;font-weight:850;cursor:pointer;transition:background .2s}
.discovery-action:hover{background:#287fa2}.discovery-mini{margin:8px 0 12px;color:#41687f;font-size:.76rem}
.discovery-region-choices{display:flex;flex-wrap:wrap;gap:6px;max-height:170px;overflow:auto}
.discovery-choice-label{width:100%;font-size:.75rem;font-weight:800;color:#245a76}
.discovery-region-choices button{border:1px solid #c2deeb;border-radius:100px;padding:5px 9px;background:#fff;color:#195575;font-size:.76rem;cursor:pointer}
.discovery-region-choices button:hover{background:#dff2fb}
.discovery-themes-heading{margin:19px 0 10px}.discovery-themes-heading h4{font-size:1rem;color:#214d65;margin:0 0 5px}.discovery-themes-heading p{font-size:.74rem;color:#547485;line-height:1.6;margin:0}
.discovery-topic-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:12px}
.discovery-topic{border:1px solid #bad8e8;border-radius:10px;padding:9px 2px;font-size:.77rem;font-weight:800;background:#fff;color:#245673;cursor:pointer}
.discovery-topic.active{border-color:#145b80;background:#1b6283;color:#fff}
.discovery-topic-content{border:1px solid #d7e7ef;background:white;border-radius:13px;padding:14px}
.discovery-topic-content h5{font-size:.96rem;color:#173f5b;margin:0 0 5px}.discovery-topic-content>p{font-size:.77rem;color:#4f7387;margin:0 0 12px;line-height:1.7}
.discovery-spot-list{display:grid;grid-template-columns:1fr;gap:8px}.discovery-spot{padding:10px 12px;border:1px solid #e1eef4;border-radius:11px;background:#f8fcff;display:flex;flex-direction:column;gap:2px}
.discovery-spot-town{width:fit-content;text-align:left;border:0;padding:0;color:#165c82;font-size:.9rem;font-weight:900;cursor:pointer;background:none}
.discovery-spot-town:hover{text-decoration:underline}.discovery-spot-name{font-size:.8rem;color:#294f63}.discovery-source{font-size:.7rem;color:#285e7c;text-underline-offset:3px;overflow-wrap:anywhere}
.discovery-disclaimer{margin:12px 0 0;font-size:.7rem;line-height:1.7;color:#506e7f}
.discovery-again{width:100%;margin-top:10px;min-height:42px;background:white;border:1px solid #8cbacf;border-radius:11px;color:#145977;font-weight:850;cursor:pointer}
.region-ranking-item{width:100%;text-align:left}.region-ranking-item .rank-info{min-width:0;flex:1}
.discovery-count-bar{display:block;height:7px;margin-top:5px;border-radius:100px;background:#dcecf4;overflow:hidden}
.discovery-count-bar>span{display:block;height:100%;border-radius:100px;background:linear-gradient(90deg,#47b7d8,#1d6688)}
.homepage-discovery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.homepage-discovery-card{display:flex;flex-direction:column;gap:8px;min-height:158px;padding:22px 18px;border:1px solid #d3e6f0;border-radius:19px;background:linear-gradient(130deg,#fff,#e6f5fc);box-shadow:0 8px 22px rgba(23,67,95,.05);text-decoration:none;transition:transform .2s,border-color .2s}
.homepage-discovery-card:hover{transform:translateY(-3px);border-color:#64b1d3}.homepage-discovery-card>span{font-size:27px}
.homepage-discovery-card>strong{color:#194b68;font-size:16px}.homepage-discovery-card>small{color:#5b798c;font-size:12px;line-height:1.5}
.discovery-home-note{margin:12px 0 0;color:#5d7a8b;font-size:12px}
@media(max-width:850px){.homepage-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.discovery-section{padding:17px 14px}.discovery-topic-tabs{gap:5px}.discovery-topic{font-size:.75rem;padding:9px 1px}.homepage-discovery-grid{gap:10px}.homepage-discovery-card{padding:16px 13px;min-height:155px}.homepage-discovery-card>strong{font-size:14px}}

/* 推測を含む雑学クイズから、マスター基準の179問へ */
.quiz-option{padding:11px 13px;border:1px solid #cfe3ec;border-radius:10px;background:#fff;color:#1d4a63;font-weight:800;text-align:left;cursor:pointer}
.quiz-option:hover:not(:disabled){background:#e4f4fb}.quiz-option.correct{background:#dbf5e5;border-color:#80b89c;color:#1a633a}
.quiz-option:disabled{cursor:default;opacity:.8}.quiz-option.correct:disabled{opacity:1}
.quiz-feedback{padding:12px;border-radius:10px;background:#e6f5fc;border:1px solid #bcdce9;color:#1d516b;font-size:.85rem;line-height:1.7}
.quiz-actions{display:grid;gap:8px;margin-top:10px}.quiz-actions .discovery-again{margin-top:0}.quiz-actions .discovery-action{width:100%}
.quiz-actions[hidden],.quiz-feedback[hidden]{display:none!important}
