*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Hiragino Sans','Yu Gothic',Meiryo,sans-serif;background:#f6f7fb;color:#202234}a{color:#8a35cc;text-decoration:none}input,textarea,select{width:100%;padding:12px;border:1px solid #ddd;border-radius:12px;background:#fff;font-size:16px}textarea{min-height:130px}button{border:0;border-radius:999px;background:linear-gradient(135deg,#8a35cc,#ff6ea8);color:#fff;padding:11px 22px;font-weight:700;cursor:pointer}label{display:block;margin:12px 0;font-weight:700}.hero{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:34px 6vw;background:linear-gradient(135deg,#2b1846,#8a35cc 55%,#ff6ea8);color:#fff}.hero h1{font-size:clamp(28px,5vw,48px);margin:0 0 10px}.notice{background:rgba(255,255,255,.16);padding:12px;border-radius:14px}.stats{min-width:190px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:18px;text-align:center}.stats span{display:block;font-size:30px;font-weight:900;margin:4px 0 12px}.nav{display:flex;gap:8px;flex-wrap:wrap;padding:12px 6vw;background:#fff;box-shadow:0 2px 15px #0001;position:sticky;top:0;z-index:5}.nav a{padding:9px 14px;background:#f3eafa;border-radius:999px;font-weight:700}.wrap{display:grid;grid-template-columns:minmax(0,1fr)320px;gap:24px;max-width:1180px;margin:24px auto;padding:0 16px}.card{background:#fff;border-radius:22px;padding:20px;box-shadow:0 10px 30px #1d113012;margin-bottom:18px;border:1px solid #eee}.postform h2{margin-top:0}.search{display:flex;gap:10px;margin:16px 0}.post .meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;color:#666}.post .meta b{color:#202234}.post .meta span{background:#f3eafa;color:#8a35cc;padding:4px 10px;border-radius:999px}.post p{line-height:1.85}.photo{max-width:100%;border-radius:16px;margin:12px 0}.video{width:100%;aspect-ratio:16/9;border:0;border-radius:16px;background:#000}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags a{background:#f2f3f8;padding:7px 10px;border-radius:999px}.adbox{min-height:120px;border:2px dashed #d6bee9;border-radius:16px;display:grid;place-items:center;background:#fbf7ff;color:#8a35cc;font-weight:700}.ok{background:#e9fff1;color:#08642c;border:1px solid #b8efca;padding:13px;border-radius:14px;margin:12px 0}.err{background:#fff1f1;color:#9c1b1b;border:1px solid #ffc9c9;padding:13px;border-radius:14px;margin:12px 0}.gate{max-width:560px;margin:10vh auto;padding:24px}.adminhead{display:flex;justify-content:space-between;align-items:center;padding:18px 6vw;background:#202234;color:#fff}.adminhead a{color:#fff;margin-left:16px}.adminwrap{max-width:1200px;margin:24px auto;padding:0 16px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dash{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.dash p{background:#f6f7fb;border-radius:16px;padding:18px;text-align:center}.dash b{font-size:30px}.line{display:flex;gap:10px;align-items:center;justify-content:space-between;border-top:1px solid #eee;padding:10px 0;margin:0}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{border-bottom:1px solid #eee;padding:10px;text-align:left;vertical-align:top}th{background:#f6f7fb}footer{text-align:center;padding:30px;color:#777}@media(max-width:850px){.hero{display:block}.stats{margin-top:16px}.wrap{grid-template-columns:1fr}.grid2,.dash{grid-template-columns:1fr}.adminhead{display:block}.search{display:block}.search button{margin-top:8px;width:100%}}

/* 管理画面：設定ごとの分割レイアウト */
.adminlayout{display:grid;grid-template-columns:230px 1fr;gap:18px;align-items:start}
.adminmenu{position:sticky;top:12px;background:#fff;border:1px solid #eadce7;border-radius:18px;padding:14px;box-shadow:0 6px 24px rgba(80,20,60,.06)}
.adminmenu .menutitle{font-weight:800;color:#8b2c66;margin:0 0 10px}
.adminmenu a{display:block;text-decoration:none;color:#513049;padding:10px 12px;border-radius:12px;margin:4px 0;font-weight:700;background:#fff7fc;border:1px solid transparent}
.adminmenu a:hover,.adminmenu a.active{background:#9b2b72;color:#fff;border-color:#9b2b72}
.admincontent .card{margin-top:0}
.inlineform{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.inlineform input{flex:1;min-width:220px}
.note{color:#755069;background:#fff8fc;border-left:4px solid #d66aae;padding:10px;border-radius:10px}
.checklist{line-height:1.9;background:#fff8fc;border-radius:14px;padding:16px 16px 16px 34px}
@media(max-width:760px){.adminlayout{grid-template-columns:1fr}.adminmenu{position:static}.adminmenu a{display:inline-block;margin:4px}.admincontent{min-width:0}}

/* 広告表示：PC専用・スマホ専用 */
.ad-area{max-width:1180px;margin:16px auto;padding:0 16px}
.pc-only{display:block}.sp-only{display:none}
.pc-ad,.sp-ad{width:100%}
.side .card.pc-only{display:block}
@media(max-width:850px){.pc-only,.side .card.pc-only{display:none!important}.sp-only{display:block}.ad-area{margin:12px auto}.adbox{min-height:90px}}

/* SEO/広告管理の長い入力欄 */
.admincontent textarea[name="seo_extra_head"],.admincontent textarea[name^="ad_"]{min-height:100px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}


/* 追加広告枠 */
.infeed.ad-area{padding-left:0;padding-right:0;max-width:100%}
.sp-sticky-ad{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:8px 10px;background:rgba(255,255,255,.96);box-shadow:0 -6px 18px #0002}
.sp-sticky-ad:empty{display:none!important}
@media(max-width:850px){body{padding-bottom:90px}.sp-sticky-ad .adbox{min-height:60px}}

/* PC/スマホ広告の出し分けを強化 */
/* PC幅ではスマホ専用広告を完全非表示 */
@media (min-width:851px){
  .sp-only,
  .sp-sticky-ad,
  .ad-area.sp-only,
  .sp-ad{
    display:none!important;
    visibility:hidden!important;
  }
  .pc-only,
  .ad-area.pc-only,
  .pc-ad{
    display:block!important;
    visibility:visible!important;
  }
}
/* スマホ幅ではPC専用広告を完全非表示 */
@media (max-width:850px){
  .pc-only,
  .ad-area.pc-only,
  .side .card.pc-only,
  .pc-ad{
    display:none!important;
    visibility:hidden!important;
  }
  .sp-only,
  .ad-area.sp-only,
  .sp-sticky-ad,
  .sp-ad{
    display:block!important;
    visibility:visible!important;
  }
}


/* トップページ専用：カテゴリーと広告を分かりやすく表示 */
.top-ad{margin-top:18px;margin-bottom:18px}
.top-categories{max-width:1180px;margin:24px auto 0;padding:0 16px}
.section-title{display:flex;justify-content:space-between;gap:12px;align-items:end;margin:0 0 12px}
.section-title span{font-size:24px;font-weight:900;color:#202234;border-left:7px solid #8a35cc;padding-left:12px}
.section-title small{color:#777;font-weight:700}
.catgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.catcard{display:block;background:#fff;border:1px solid #eadcf4;border-radius:20px;padding:18px;box-shadow:0 10px 24px #1d11300e;transition:.15s transform,.15s box-shadow}
.catcard:hover{transform:translateY(-2px);box-shadow:0 14px 30px #1d113018}
.catcard b{display:block;font-size:20px;color:#552078;margin-bottom:8px}
.catcard span{display:inline-block;background:#f3eafa;color:#8a35cc;border-radius:999px;padding:5px 10px;font-weight:800;margin-bottom:10px}
.catcard em{display:block;font-style:normal;color:#666;font-weight:700}
@media(max-width:850px){.section-title{display:block}.section-title span{font-size:21px}.section-title small{display:block;margin-top:6px}.catgrid{grid-template-columns:1fr}.catcard{padding:16px}}
.imagegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:14px}.imageitem{border:1px solid #ead6df;border-radius:14px;padding:10px;background:#fff}.imageitem img{width:100%;height:130px;object-fit:cover;border-radius:10px}.imageitem p{font-size:13px;line-height:1.6;word-break:break-all}.imageitem button{width:100%}
small{color:#777;display:block;margin-top:4px}

/* おもらし専門コミュニティ風オリジナルデザイン */
body{background:radial-gradient(circle at top left,#fff3fb 0,#f7f8ff 34%,#eef7ff 100%)}
.hero{background:linear-gradient(135deg,#1d2748,#7557d8 52%,#ff7ab8);border-bottom:6px solid rgba(255,255,255,.35)}
.hero h1:before{content:'💧 ';}.hero h1:after{content:' ✨'}
.card{border:1px solid #efe5ff;box-shadow:0 14px 38px rgba(55,42,98,.10)}
.post{position:relative;overflow:hidden}.post:before{content:'';position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#7557d8,#ff7ab8,#70d7ff)}
.post-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px;padding-top:12px;border-top:1px dashed #eadcec}
.post-actions form{display:flex;gap:8px;align-items:center;margin:0}.post-actions button{padding:9px 14px;font-size:14px}
.ranklist{margin:0;padding-left:22px}.ranklist li{margin:9px 0}.ranklist small{display:block;color:#777}
.image-rank{display:grid;grid-template-columns:1fr 1fr;gap:8px}.image-rank img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;border:1px solid #eee}
.tags span,.tags a small{background:#fff;border-radius:999px;padding:2px 6px;color:#7d4bb0}
.imagegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-top:16px}.imageitem{border:1px solid #eee;border-radius:16px;padding:10px;background:#fff}.imageitem img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px}.imageitem p{font-size:13px;line-height:1.6}.imageitem button{width:100%;font-size:13px}
.g-recaptcha{margin:12px 0;max-width:100%;overflow:hidden}
@media(max-width:650px){.post-actions,.post-actions form{display:block}.post-actions button{width:100%;margin-top:6px}.image-rank{grid-template-columns:repeat(4,1fr)}}

.deleted-row{opacity:.55;background:#f7f7f7}.deleted-row td{text-decoration:line-through;color:#777}
