:root{--bg:#fffdf8;--ivory:#fffaf0;--pink:#eecfd0;--beige:#e7d7c9;--text:#5c4b4b}
body{font-family:"Hiragino Kaku Gothic ProN",sans-serif;background:linear-gradient(180deg,var(--bg),var(--ivory));color:var(--text);margin:0}
.container{max-width:680px;margin:0 auto;padding:16px}
.card{background:#fff;border:1px solid #f0e3dc;border-radius:18px;padding:16px;margin:12px 0;box-shadow:0 6px 16px #eecfd055}
h1,h2,h3{margin-top:0}.grid1{display:grid;gap:10px}
input,textarea,button{width:100%;padding:12px;border-radius:12px;border:1px solid #dbc8bf;font-size:16px;box-sizing:border-box}
button,.btn{display:inline-block;background:var(--pink);border:none;text-decoration:none;color:#4f3f3f;font-weight:700;padding:12px 14px;border-radius:14px;text-align:center;cursor:pointer}
.btn.secondary{background:var(--beige)}
.menu{display:grid;gap:10px}.item{background:#fffbf8;border-radius:12px;padding:10px;margin:8px 0}
footer{text-align:center;padding:16px;color:#7d6969;font-size:13px}
.alert{padding:10px;border-radius:10px;margin-bottom:10px}.alert.error{background:#ffe3e3}
@media (max-width:640px){.container{padding:10px}}
