/*
 * =========================================================
 * DEWPOINT - OWNER STAFF / TEAM ACCOUNTS
 * =========================================================
 *
 * Dedicated styles for:
 * Owner > Management > Staff
 *
 * 7B-5B1:
 * Copy-only modularization stage.
 *
 * Original shared CSS remains unchanged until
 * browser verification is complete.
 * =========================================================
 */

/* =========================================================
   BASE OWNER TEAM / STAFF STYLES
   Source: dewpoint-app.css
   ========================================================= */

/* ===== OWNER TEAM / STAFF ===== */

.owner-team-page .booking-page-head>button{
    background:#fff;
    color:#087e41;
}

.owner-team-kpis article:nth-child(2){
    background:#effbf4;
    border-color:#57d487;
}

.owner-team-kpis article:nth-child(3){
    background:#f7faf9;
}

.team-form-panel{
    max-width:980px;
}

.team-member-form{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:14px;
}

.team-member-form label{
    display:flex;
    flex-direction:column;
    gap:6px;
    font-size:9px;
    font-weight:800;
}

.team-member-form input,
.team-member-form select{
    border:1px solid var(--line);
    background:#fff;
    border-radius:8px;
    padding:11px;
    font-size:10px;
}

.team-member-form input:focus,
.team-member-form select:focus{
    outline:2px solid #31cc72;
    outline-offset:1px;
}

.team-member-form .primary{
    grid-column:1/-1;
    max-width:320px;
    margin:5px 0 0;
}

.team-account-list{
    display:flex;
    flex-direction:column;
    margin-top:14px;
}

.team-account-list article{
    display:grid;
    grid-template-columns:46px minmax(180px,1fr) 90px auto;
    align-items:center;
    gap:13px;
    border-top:1px solid var(--line);
    padding:14px 4px;
}

.team-account-list article.disabled{
    opacity:.62;
    background:#fafbfb;
}

.team-avatar{
    width:42px!important;
    height:42px!important;
    flex:none;
}

.team-account-main{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:4px;
}

.team-account-main>div{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
}

.team-account-main b{
    font-size:11px;
}

.team-account-main span,
.team-account-main small{
    color:var(--muted);
    font-size:8px;
}

.team-account-main em{
    border-radius:20px;
    padding:4px 7px;
    font-size:7px;
    font-style:normal;
    font-weight:900;
}

.team-account-main em.manager{
    color:#4b58a3;
    background:#edf0ff;
}

.team-account-main em.staff{
    color:#087e40;
    background:#e5f9ec;
}

.team-status{
    justify-self:start;
    border-radius:20px;
    padding:6px 9px;
    font-size:7px;
    font-weight:900;
}

.team-status.active{
    color:#078d43;
    background:#e5faed;
}

.team-status.inactive{
    color:#7c8783;
    background:#edf1ef;
}

.team-account-actions{
    display:flex;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:6px;
}

.team-account-actions button{
    border:1px solid var(--line);
    color:#31534a;
    background:#fff;
    border-radius:7px;
    padding:7px 9px;
    font-size:7px;
    font-weight:900;
}

.team-account-actions button.disable{
    color:#bc4f38;
    border-color:#f0b6a7;
    background:#fff1ed;
}

.team-account-actions button.activate{
    color:#078d43;
    border-color:#50d083;
    background:#ecfbf2;
}

.team-empty{
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    padding:42px 20px;
}

.team-empty>span{
    width:58px;
    height:58px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#e5f9ec;
    color:#08a64a;
    font-size:25px;
}

.team-empty h3{
    margin:13px 0 4px;
    font-size:15px;
}

.team-empty p{
    color:var(--muted);
    font-size:9px;
}

.team-empty .primary{
    width:auto;
}

@media (max-width:800px){
    .team-account-list article{
        grid-template-columns:42px 1fr auto;
    }

    .team-account-actions{
        grid-column:2/-1;
        justify-content:flex-start;
    }
}

@media (max-width:600px){
    .team-member-form{
        grid-template-columns:1fr;
    }

    .team-member-form .primary{
        grid-column:auto;
        max-width:none;
    }

    .team-account-list article{
        grid-template-columns:42px 1fr;
        align-items:start;
    }

    .team-status{
        grid-column:2;
    }

    .team-account-actions{
        grid-column:1/-1;
    }

    .team-account-actions button{
        flex:1;
    }
}


/* =========================================================
   DEWPOINT TEAM THEME OVERRIDES
   Source: dewpoint-dashboard.css
   ========================================================= */

/* =========================================================
   DEWPOINT TEAM / STAFF PAGE
   VENUE ACCESS HERO THEME
   ========================================================= */


/* Main Venue Access hero */
.owner-team-page .booking-page-head{
    background:
        linear-gradient(
            115deg,
            var(--dp-sidebar),
            var(--dp-accent)
        ) !important;

    border:1px solid
        color-mix(
            in srgb,
            var(--dp-accent) 35%,
            transparent
        ) !important;

    box-shadow:
        0 14px 32px
        color-mix(
            in srgb,
            var(--dp-accent) 12%,
            transparent
        ) !important;
}


/* VENUE ACCESS overline */
.owner-team-page .booking-page-head > div > small{
    color:
        color-mix(
            in srgb,
            var(--dp-accent-2) 35%,
            white
        ) !important;
}


/* Team / Staff Accounts title */
.owner-team-page .booking-page-head h2{
    color:#fff !important;
}


/* Subtitle */
.owner-team-page .booking-page-head p{
    color:rgba(255,255,255,.82) !important;
}


/* + Add Team Member */
.owner-team-page .booking-page-head > button{
    color:var(--dp-accent-text) !important;
    background:#fff !important;

    border:
        1px solid
        rgba(255,255,255,.65) !important;

    box-shadow:
        0 7px 18px
        rgba(15,23,42,.12) !important;
}


/* Button hover */
.owner-team-page .booking-page-head > button:hover{
    background:var(--dp-theme-soft) !important;
    border-color:#fff !important;
}


/* =========================================================
   SMALL TEAM PAGE ACCENTS
   ========================================================= */

/* KPI helper text */
.owner-team-page .owner-team-kpis article em{
    color:var(--dp-accent-text) !important;
}


/* Selected/emphasized KPI border if one is highlighted */
.owner-team-page .owner-team-kpis article:hover{
    border-color:var(--dp-theme-border) !important;
}


/* Team Directory overline */
.owner-team-page .title small{
    color:var(--dp-accent-text) !important;
}


/* Empty-state icon */
.owner-team-page .team-empty > span{
    color:var(--dp-accent-text) !important;
    background:var(--dp-theme-soft) !important;
}


/* Add First Team Member */
.owner-team-page .team-empty > button.primary{
    background:
        linear-gradient(
            90deg,
            var(--dp-accent),
            var(--dp-accent-2)
        ) !important;

    color:#fff !important;
}


/* Create/Save account */
.owner-team-page .team-member-form > button.primary{
    background:
        linear-gradient(
            90deg,
            var(--dp-accent),
            var(--dp-accent-2)
        ) !important;

    color:#fff !important;
}


/* Form focus */
.owner-team-page .team-member-form input:focus,
.owner-team-page .team-member-form select:focus{
    border-color:var(--dp-accent) !important;

    box-shadow:
        0 0 0 3px
        color-mix(
            in srgb,
            var(--dp-accent) 12%,
            transparent
        ) !important;

    outline:none !important;
}


/* Smooth theme switching */
.owner-team-page .booking-page-head,
.owner-team-page .booking-page-head > button,
.owner-team-page .team-empty > span,
.owner-team-page .team-empty > button{
    transition:
        background .18s ease,
        color .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}
