/* ==========================================================
   Participant Page
========================================================== */

.participant-page{

    max-width:900px;

    margin:0 auto;

}

.participant-card{

    background:#ffffff;

    border-radius:14px;

    box-shadow:0 8px 24px rgba(0,0,0,.08);

    padding:40px;

}

.participant-card h2{

    margin:0 0 35px;

    text-align:center;

    font-size:30px;

    color:#222;

}

/* ==========================================================
   Sections
========================================================== */

.profile-section{

    padding:28px 0;

    border-top:1px solid #ececec;

}

.profile-section:first-of-type{

    border-top:none;

    padding-top:0;

}

.profile-section h3{

    margin:0 0 20px;

    font-size:20px;

    color:#333;

}

/* ==========================================================
   Form
========================================================== */

.form-group{

    margin-bottom:20px;

}

.form-group label{

    display:block;

    margin-bottom:8px;

    font-weight:600;

    color:#444;

}

.form-group input{

    width:100%;

    padding:12px 14px;

    border:1px solid #cccccc;

    border-radius:8px;

    font-size:15px;

    transition:.2s;

}

.form-group input:focus{

    border-color:#0b75ff;

    outline:none;

    box-shadow:0 0 0 3px rgba(11,117,255,.15);

}

/* ==========================================================
   Mail
========================================================== */

.mail-address{

    margin:0 0 20px;

    font-size:18px;

    font-weight:600;

    color:#222;

    word-break:break-word;

}

/* ==========================================================
   Status
========================================================== */

.status{

    display:inline-block;

    padding:8px 18px;

    border-radius:999px;

    font-size:14px;

    font-weight:700;

}

.status.verified{

    background:#dcfce7;

    color:#15803d;

}

.status.unverified{

    background:#fee2e2;

    color:#b91c1c;

}

/* ==========================================================
   Events
========================================================== */

.event-list{

    margin:0;

    padding:0;

    list-style:none;

}

.event-list li{

    padding:15px;

    margin-bottom:12px;

    border:1px solid #e5e7eb;

    border-radius:8px;

    background:#fafafa;

}

.event-list strong{

    display:block;

    margin-bottom:5px;

    color:#222;

}

.empty{

    color:#888;

    font-style:italic;

}

/* ==========================================================
   Buttons
========================================================== */

.actions{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:15px;

    flex-wrap:wrap;

}

.actions form{

    margin:0;

}

.btn{

    display:inline-block;

    padding:12px 22px;

    border:none;

    border-radius:8px;

    cursor:pointer;

    text-decoration:none;

    font-size:15px;

    transition:.2s;

}

.btn-primary{

    background:#0b75ff;

    color:#ffffff;

}

.btn-primary:hover{

    background:#005ad9;

}

.btn-secondary{

    background:#f0f0f0;

    color:#333;

}

.btn-secondary:hover{

    background:#dddddd;

}

/* ==========================================================
   Alert
========================================================== */

.alert{

    padding:14px 16px;

    border-radius:8px;

    margin-bottom:25px;

}

.alert-success{

    background:#e8f8ec;

    color:#15803d;

}

.alert-error{

    background:#ffecec;

    color:#c62828;

}

.alert-info{

    background:#eef6ff;

    color:#0b75ff;

}

/* ==========================================================
   Responsive
========================================================== */

@media (max-width:768px){

    .participant-card{

        padding:25px;

    }

    .participant-card h2{

        font-size:24px;

    }

    .profile-section h3{

        font-size:18px;

    }

    .actions{

        flex-direction:column;

        align-items:stretch;

    }

    .actions .btn{

        width:100%;

        text-align:center;

    }

    .actions form{

        width:100%;

    }

    .actions form button{

        width:100%;

    }

}