:root{--p:#c52f6f;--l:#efb7cf;--i:#251520}*{box-sizing:border-box}body{margin:0;background:#fff8fb;color:var(--i);font-family:Arial,sans-serif}button,input{font:inherit}.shell{max-width:960px;margin:auto;padding:32px 20px 64px}header,.parthead{display:flex;justify-content:space-between;align-items:center}h1{margin:0;font-size:30px}.eyebrow{margin:0 0 4px;color:var(--p);font-weight:700;font-size:14px}.badge{border:1px solid var(--l);border-radius:99px;padding:7px 12px;color:#9f2558;font-size:14px}.intro,.card,.result{background:#fff;border:1px solid var(--l);border-radius:18px;padding:18px}.intro{display:flex;gap:30px;align-items:end;margin:24px 0 14px}.intro label{min-width:250px;font-weight:700}.intro p{color:#725062;margin:0;font-size:14px}.intro input,.long{width:100%;display:block;margin-top:7px;border:1px solid var(--l);border-radius:10px;padding:10px}.rules,.scoregrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card b,.card span,.card small{display:block}.card b,.part h2{color:var(--p)}.card small{color:#725062;margin-top:3px}.part{margin-top:28px}.parthead{border-bottom:1px solid var(--l);padding-bottom:8px;margin-bottom:14px}.part h2{margin:0;font-size:20px}.parthead span{color:#9e4a70;font-size:14px}.noun-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 60px}.noun-grid label{display:grid;grid-template-columns:100px 1fr;align-items:center}.noun-grid input,.fix input{border:0;border-bottom:2px solid #e9aac5;background:transparent;padding:6px;outline:0}.option{display:flex;gap:10px;align-items:center;margin:10px 0}.option button{border:1px solid var(--l);background:#fff;border-radius:10px;padding:7px 12px}.option button.active{background:#fff0f6;border-color:var(--p);color:#9d2257;font-weight:700}.fix{display:block;margin:14px 0;color:#705061}.fix input{display:block;width:100%;margin-top:6px;color:var(--i)}.long{margin:10px 0}.submit,.result button{border:0;background:var(--p);color:#fff;border-radius:12px;padding:12px 18px;font-weight:700;margin-top:16px}.submit:disabled{opacity:.45}.result{max-width:600px;margin:60px auto}.result h1{font-size:52px}.result h1 span{font-size:20px;color:#725062}.scoregrid{grid-template-columns:repeat(4,1fr);margin-top:22px}.scoregrid div{background:#fff0f6;border-radius:14px;padding:14px}.scoregrid b,.scoregrid strong{display:block}.scoregrid b{color:#a52a60;font-size:14px}.scoregrid strong{font-size:20px}@media(max-width:640px){.intro{display:block}.intro p{margin-top:14px}.rules,.noun-grid,.scoregrid{grid-template-columns:1fr}.noun-grid{gap:10px}.part h2{font-size:18px}}
