*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP",sans-serif;color:#222;background:#faf8f5;line-height:1.8}
a{color:#8a3b5c}
header{background:#2b2230;color:#fff;padding:14px 20px}
header a{color:#fff;text-decoration:none;font-weight:700;font-size:1.2rem}
header nav{margin-top:6px;font-size:.9rem}
header nav a{font-weight:400;font-size:.9rem;margin-right:14px;color:#e8dbe6}
.notice{background:#fff3cd;border-bottom:1px solid #e6d28a;padding:8px 20px;font-size:.85rem}
main{max-width:760px;margin:0 auto;padding:24px 20px 48px}
h1{font-size:1.5rem;line-height:1.4}
h2{font-size:1.2rem;margin-top:2em;border-left:4px solid #8a3b5c;padding-left:10px}
.card{background:#fff;border:1px solid #e5dfe6;border-radius:10px;padding:16px 18px;margin:14px 0}
.src{background:#fff;border:1px solid #d9d0da;border-radius:8px;padding:10px 14px;font-size:.9rem;margin:16px 0}
.meta{color:#777;font-size:.85rem}
label{display:block;margin:10px 0 4px;font-weight:600}
input{width:100%;max-width:240px;padding:8px;font-size:1rem;border:1px solid #ccc;border-radius:6px}
.result{margin-top:14px;padding:12px;border-radius:8px;background:#f3eef4;font-weight:600}
footer{border-top:1px solid #e5dfe6;padding:20px;font-size:.85rem;color:#666;text-align:center}
footer a{margin:0 8px;color:#666}
