body{max-width:720px;margin:0 auto;padding:24px 16px 56px;font-family:serif;line-height:1.65;color:#111;background:#fff}
h1{font-size:2rem;margin:0 0 .4em}
h2{font-size:1.35rem;margin-top:2.2em;border-top:1px solid #000;padding-top:.8em}
h3{font-size:1.05rem;margin-top:1.4em}
a{color:#00e;text-decoration:underline}
ul{padding-left:1.3em}
label{display:block;font-weight:bold;margin-top:1em;margin-bottom:.25em}
input,select,button{font:inherit}
input,select{width:100%;box-sizing:border-box;padding:.55em;border:1px solid #999;background:#fff}
button{margin-top:1em;padding:.55em .8em;border:1px solid #000;background:#eee;color:#111;cursor:pointer}
button+button{margin-left:.4em}
.result,.support{white-space:pre-wrap;border:1px solid #000;padding:1em;margin-top:1em;background:#fafafa;overflow-wrap:anywhere}
.adbox{border:1px dotted #777;padding:1em;margin:1em 0;background:#fff}
.hidden{display:none}
.note{color:#444;font-size:.9rem}
details{margin-top:1em;border:1px dotted #999;padding:.8em;background:#fff}
summary{cursor:pointer;font-weight:bold}
.group{margin-top:1.4em;padding-top:.4em;border-top:1px dotted #999}
@media(max-width:480px){body{font-size:16px;padding:18px 13px 44px}h1{font-size:1.75rem}button{width:100%;margin-left:0!important;margin-top:.7em}}


/* v0.17 Support page 広告枠 */
.ad-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin:16px 0;
}
.adbox p{
  margin:.45em 0;
}
.adbox a{
  display:inline-block;
  margin-top:.35em;
}
@media(min-width:640px){
  .ad-grid{
    grid-template-columns:1fr 1fr;
  }
}


/* v0.19 読みやすさ調整 */
.result,.support{
  white-space:pre-wrap;
  line-height:1.8;
}


/* v0.45 楽天アフィリエイトカード */
.rakuten-affiliate-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  margin:12px 0;
  padding:10px;
  border:1px solid #ddd;
  border-radius:12px;
  background:#fff;
}
.rakuten-affiliate-title{
  font-weight:bold;
  margin:0 0 8px;
}


/* v0.45 注意書き：線で区切るレイアウト */
.notice-separator{
  border:0;
  border-top:1px solid #333;
  margin:28px 0 24px;
}
.note p{
  margin:0 0 22px;
}
.note p:last-child{
  margin-bottom:0;
}


/* v0.45 結果下の詳しい版ボタン */
#longResultButton{
  margin-top:16px;
  margin-bottom:28px;
}
