:root{
    font-family:system-ui,-apple-system,Segoe UI,sans-serif;
    color:#15251d;
    background:#edf3ef
}

*{
    box-sizing:border-box
}

body{
    margin:0;
    padding:18px
}

.card{
    width:100%;
    max-width:650px;
    margin:auto;
    background:#fff;
    border-radius:18px;
    padding:24px;
    box-shadow:0 8px 28px #15331c1a
}

.admin-card{
    max-width:900px
}

header{
    border-bottom:3px solid #e5a400;
    margin-bottom:20px
}

h1{
    margin:0;
    color:#126039;
    font-size:2rem
}

header p{
    margin:4px 0 15px;
    color:#536158
}

label,fieldset{
    display:block;
    margin:15px 0;
    font-weight:650
}

label span,legend span{
    color:#b12121
}

input,select,textarea{
    width:100%;
    margin-top:6px;
    border:1px solid #aebbb1;
    border-radius:8px;
    padding:11px;
    font:inherit;
    background:#fff
}

.two{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:12px
}

fieldset{
    border:0;
    padding:0
}

legend{
    padding:0
}

.choice{
    display:inline-block;
    margin:7px 18px 0 0;
    font-weight:400
}

.choice input{
    width:auto;
    margin-right:6px
}

button{
    width:100%;
    background:#126039;
    color:#fff;
    border:0;
    border-radius:9px;
    padding:13px;
    font-size:1rem;
    font-weight:700;
    cursor:pointer
}

.notice{
    border-radius:9px;
    padding:12px
}

.error{
    background:#fff0f0;
    color:#821616
}

.success{
    background:#e9f8ee;
    color:#164a2c
}

.privacy{
    font-size:.88rem;
    color:#536158;
    background:#f4f7f4;
    padding:10px;
    border-radius:8px
}

/* Admin report cards */

.report-card{
    margin-bottom:14px
}

.report-form{
    margin:0
}

.status-row{
    display:flex;
    align-items:center;
    gap:18px;
    margin-top:6px
}

.status-row select{
    flex:0 0 240px;
    margin-top:0
}

.details-link{
    white-space:nowrap;
    font-weight:600
}

.report-form textarea{
    margin-top:10px
}

@media(max-width:700px){

    body{
        padding:8px
    }

    .card{
        max-width:none;
        padding:16px;
        border-radius:14px
    }

    .admin-card{
        width:100%
    }

    .two{
        grid-template-columns:1fr
    }

    .status-row{
        gap:12px
    }

    .status-row select{
        flex:1 1 auto;
        min-width:0
    }

    .details-link{
        flex:0 0 auto
    }
}

@media(max-width:440px){

    body{
        padding:4px
    }

    .card{
        padding:14px
    }

    .status-row{
        gap:10px
    }

    .status-row select{
        max-width:58%
    }
}

[hidden]{
    display:none !important
}/* Admin report controls */
.status-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 12px;
}

.status-row select {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
}

.details-link {
    flex: 0 0 auto;
    white-space: nowrap;
    font-weight: 600;
    padding: 8px 0;
}

@media (max-width: 600px) {
    .status-row {
        gap: 24px;
    }

    .details-link {
        padding: 10px 0;
    }
}