:root{--pink:#d85686;--blue:#4f86d9;--bg:#f7f4f6;--dark:#302a2d;--card:#fff;--border:#e6dde2}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--bg);color:var(--dark)}a{color:#7b3150;text-decoration:none}.topbar{background:#fff;border-bottom:1px solid var(--border);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px;position:sticky;top:0;z-index:5}.brand{font-size:20px;font-weight:700}.nav{display:flex;gap:8px;flex-wrap:wrap}.nav a{padding:8px 10px;border-radius:8px}.nav a:hover{background:#f4e8ed}.container{max-width:1250px;margin:24px auto;padding:0 18px}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:18px;box-shadow:0 3px 12px rgba(0,0,0,.04)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}label{display:block;font-weight:600;margin-bottom:5px}input,select,textarea,button{width:100%;padding:10px;border:1px solid #ccbfc5;border-radius:8px;font:inherit}textarea{min-height:80px}button,.btn{background:#7b3150;color:#fff;border:0;cursor:pointer;display:inline-block;width:auto;padding:10px 15px;border-radius:8px}.btn.secondary{background:#5a6268}.btn.danger{background:#a52e2e}.stats{font-size:28px;font-weight:700}.muted{color:#786e73}.flash{padding:12px;border-radius:8px;margin-bottom:15px;background:#dff2e5}.flash.error{background:#f8d7da}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--border);vertical-align:top}.selected{border-left:6px solid #60a56f}.person{border:1px solid var(--border);padding:10px;border-radius:9px;margin:8px 0}.person.male{border-left:7px solid var(--blue);background:#f1f6ff}.person.female{border-left:7px solid var(--pink);background:#fff1f6}.household{border:1px dashed #b9adb3;padding:14px;border-radius:12px;margin:12px 0}.actions{display:flex;gap:8px;flex-wrap:wrap}.login-box{max-width:430px;margin:8vh auto}.countdown{font-size:38px;font-weight:800;color:#7b3150}.price{font-weight:700;white-space:nowrap}@media(max-width:700px){.topbar{align-items:flex-start;flex-direction:column}.countdown{font-size:30px}}
