body{background:#ff91ab}
#home{width:min(100%,480px);padding:0 14px 28px;overflow:hidden;background:linear-gradient(180deg,#ff91ab 0,#ff9bb1 52%,#fff5f6 100%)}
#home .visual{height:min(109vw,525px);margin:0 -14px -24px;overflow:hidden;background:#eaa2ba}
#home .visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
#home .match-form{position:relative;z-index:2;margin:0;padding:0 14px 18px;border:0;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(156,44,75,.2)}
#home .match-form h2{margin:0 -14px 16px;padding:14px 8px;border-radius:22px 22px 16px 16px;background:linear-gradient(90deg,#ff728d,#ee3d69);color:#fff;text-align:center;font-size:18px}
#home .name-row{display:grid;grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr);align-items:center;gap:6px}
#home .match-form label{display:block;margin:0;border:1px solid #f5c6d0;border-radius:14px;overflow:hidden;background:#fff7f8}
#home .match-form label span{display:block;padding:9px 5px;background:#ffe0e8;color:#dc5274;text-align:center;font-size:14px;font-weight:700}
#home .match-form label:last-child span{background:#e3ecff;color:#527ccf}
#home .match-form input{width:100%;min-width:0;padding:13px 4px;border:0;border-radius:0;background:#fff;text-align:center;font-size:15px;box-shadow:none}
#home .heart-link{width:46px;height:46px;padding-top:6px;border-radius:50%;background:linear-gradient(145deg,#ff7694,#ed416a);color:#fff;text-align:center;font-size:18px;box-shadow:0 5px 12px rgba(235,65,106,.28)}
#home .heart-link small{display:block;margin-top:-2px;color:#fff;font-size:10px}
#home .privacy{display:block;margin:14px 0 12px;color:#b89099;text-align:center;font-size:12px}
#home .match-form button{min-height:56px;border-radius:30px;background:linear-gradient(180deg,#fff5b9,#ffd74d);color:#e73c5d;box-shadow:0 8px 18px rgba(232,60,95,.28);font-size:20px;font-weight:800}
#home .report-preview{margin:18px 0 0;padding:20px 14px;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(156,44,75,.17)}
#home .report-preview>h2{margin:0 0 18px;color:#e54866;text-align:center;font-size:20px}
#home .gender-cards{display:grid;grid-template-columns:1fr 54px 1fr;align-items:center;margin-bottom:16px}
#home .gender{min-height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:15px}
#home .gender b{font-size:42px;line-height:1}
#home .gender span{margin-top:10px;font-size:13px;font-weight:700}
#home .gender.female{background:#ffe6eb;color:#dd5575}
#home .gender.male{background:#e4efff;color:#527dce}
#home .match-heart{width:54px;height:54px;padding-top:8px;border-radius:50%;background:#fb7190;color:#fff;text-align:center;font-size:22px;box-shadow:0 0 0 8px rgba(251,113,144,.18)}
#home .match-heart small{display:block;margin-top:-5px;color:#fff;font-size:10px}
#home .report-card{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;margin:12px 0;padding:15px;border-radius:16px;background:#fff7f8;border:1px solid #ffe2e8}
#home .report-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#ff7893,#ef416b);color:#fff;font-size:22px;box-shadow:0 6px 14px rgba(239,65,107,.2)}
#home .report-card:nth-of-type(3) .report-icon,#home .report-card:nth-of-type(5) .report-icon{background:linear-gradient(145deg,#8198ed,#a489df)}
#home .report-card h3{margin:0 0 5px;color:#d94768;font-size:17px}
#home .report-card p{margin:0;color:#765e65;font-size:14px;line-height:1.65}
#home .disclaimer{margin:18px 5px 2px;color:#8f7179;text-align:center;font-size:12px;line-height:1.8}
@media(min-width:700px){#home{margin-top:18px;border-radius:24px}#home .visual{height:525px}}
