.risoris-ui{max-width:980px;margin:18px auto;padding:18px;border:1px solid rgba(0,0,0,.10);border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.risoris-ui__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin-bottom:10px}
.risoris-ui__title h3{margin:0;font-size:20px;line-height:1.25}
.risoris-ui__title p{margin:6px 0 0;font-size:13px;opacity:.75}
.risoris-ui__badge{display:inline-block;padding:4px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.12);font-size:12px;letter-spacing:.02em;margin-bottom:6px}
.risoris-ui__state{margin-top:8px;font-size:12px;opacity:.7}

.risoris-form{margin-top:12px}
.risoris-grid{display:grid;grid-template-columns:1fr 1fr 1fr 2fr;gap:12px;align-items:end} /* gap slightly larger */
.risoris-field{display:flex;flex-direction:column;gap:6px}
.risoris-field label{font-size:13px;opacity:.85}
.risoris-field input,.risoris-field select{height:46px;border-radius:12px;border:1px solid rgba(0,0,0,.18);padding:0 12px;outline:none;background:#fff} /* a bit taller */
.risoris-field input:focus,.risoris-field select:focus{border-color:rgba(0,0,0,.45);box-shadow:0 0 0 4px rgba(0,0,0,.06)}
.risoris-actions{display:flex;gap:10px;margin-top:14px} /* more vertical space */
.risoris-btn{height:46px;padding:0 14px;border-radius:12px;border:1px solid rgba(0,0,0,.18);cursor:pointer;font-weight:600;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.risoris-btn--primary{background:#111;color:#fff;border-color:#111}
.risoris-btn--primary:hover{filter:brightness(.95)}
.risoris-btn--ghost{background:#fff;color:#111}
.risoris-btn--ghost:hover{background:rgba(0,0,0,.04)}
.risoris-hint{margin-top:10px;font-size:12px;opacity:.75}

.risoris-results{margin-top:16px;border-top:1px solid rgba(0,0,0,.08);padding-top:14px}
.risoris-results__meta{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:10px}
.risoris-results__meta .count{font-weight:700}
.risoris-results__list{display:grid;grid-template-columns:1fr;gap:10px}
.risoris-card{border:1px solid rgba(0,0,0,.10);border-radius:14px;padding:12px 14px;background:#fff}
.risoris-card h4{margin:0 0 6px;font-size:16px;line-height:1.35}
.risoris-card h4 a{text-decoration:none}
.risoris-card h4 a:hover{text-decoration:underline}
.risoris-card .meta{font-size:12px;opacity:.75;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}
.risoris-card .excerpt{margin:0;font-size:13px;opacity:.9}
.risoris-pager{margin-top:12px}
.risoris-pager .page-numbers{display:inline-block;margin:0 4px 6px 0;padding:8px 10px;border:1px solid rgba(0,0,0,.15);border-radius:10px;text-decoration:none}
.risoris-pager .current{background:#111;color:#fff;border-color:#111}

/* Header / form-only variant: keep form but remove box look; add breathing room + mobile side padding */
.risoris-ui--formonly{
  max-width:1100px;
  margin:16px auto;            /* ✅ ① 上下の余白 */
  padding:0 16px;              /* ✅ ② スマホ左右の余白 */
  border:0;
  box-shadow:none;
  background:transparent
}
.risoris-ui--formonly .risoris-ui__head{display:none}
.risoris-ui--formonly .risoris-results{display:none}

@media (max-width:900px){
  .risoris-grid{grid-template-columns:1fr;gap:12px}
  .risoris-actions{flex-direction:column}
  .risoris-btn{width:100%}
  .risoris-ui__head{flex-direction:column;align-items:flex-start}
  .risoris-ui{margin:12px auto}
}
