/* Japanese Zodiac / Birth Sign Tool */
.jpz-container{max-width:840px;margin:24px auto;padding:8px;}
.jpz-title{font-size:1.6rem;margin:0 0 12px;color:#111}
.jpz-card{background:#fff;border-radius:16px;box-shadow:0 10px 25px rgba(0,0,0,.06);padding:18px;border:1px solid #eee}
.jpz-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}
.jpz-label{font-weight:600;color:#333}
.jpz-date{padding:10px 12px;border:1px solid #ddd;border-radius:10px;width:100%}
.jpz-check{grid-column:span 2;display:flex;gap:10px;align-items:center;color:#444}
.jpz-btn{justify-self:start;background:linear-gradient(135deg,#0ea5e9,#22c55e);border:none;color:#fff;padding:10px 16px;border-radius:12px;font-weight:700;cursor:pointer;transition:.2s}
.jpz-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(0,0,0,.08)}
.jpz-output{margin-top:16px;min-height:40px}
.jpz-loading{padding:10px 12px;color:#555}
.jpz-error .jpz-error-msg{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca;padding:10px 12px;border-radius:10px}
.jpz-result{display:flex;flex-direction:column;gap:14px}
.jpz-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.jpz-col{background:#fafafa;border:1px solid #f1f1f1;border-radius:12px;padding:12px}
.jpz-pill{display:inline-block;font-size:.8rem;font-weight:700;background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;padding:4px 8px;border-radius:999px;margin-bottom:6px}
.jpz-val{font-size:1.05rem;color:#111}
.jpz-eto{font-size:1.6rem;font-weight:800;letter-spacing:.08em}
.jpz-sub{color:#444;margin-top:4px}
.jpz-emoji{font-size:1.6rem}
.jpz-traits-wrap{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.jpz-traits{margin:6px 0 0 18px}
.jpz-alert{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:10px 12px;border-radius:12px}
.jpz-note{font-size:.9rem;color:#555;margin-top:8px}
@media (max-width:680px){
  .jpz-inputs{grid-template-columns:1fr}
  .jpz-check{grid-column:span 1}
  .jpz-row{grid-template-columns:1fr}
  .jpz-traits-wrap{grid-template-columns:1fr}
}
