
/* Module: app_layout */
.app-layout-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:24px;
    align-items:start;
}
.color-control{
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    gap:8px;
}
.color-control input[type="color"]{
    height:44px;
    padding:3px;
}
.app-preview-wrapper{
    position:sticky;
    top:24px;
}
.app-preview{
    --preview-primary:#0f4c81;
    --preview-secondary:#176aa4;
    --preview-background:#f3f6fa;
    --preview-surface:#ffffff;
    --preview-text:#172033;
    --preview-muted:#64748b;
    --preview-success:#16a34a;
    --preview-radius:16px;
    overflow:hidden;
    border:1px solid #d1d5db;
    border-radius:28px;
    background:var(--preview-background);
    color:var(--preview-text);
    box-shadow:0 20px 50px rgba(15,23,42,.18);
}
.preview-header{
    padding:18px;
    background:var(--preview-primary);
    color:#fff;
    font-weight:800;
}
.preview-content{
    padding:18px;
}
.preview-welcome-title{
    margin-bottom:5px;
}
.preview-welcome-subtitle{
    color:var(--preview-muted);
}
.preview-member-card{
    margin:16px 0;
    padding:18px;
    border-radius:var(--preview-radius);
    background:linear-gradient(135deg,var(--preview-primary),var(--preview-secondary));
    color:#fff;
}
.preview-member-card p{
    margin:10px 0;
}
.preview-valid{
    display:inline-flex;
    padding:5px 9px;
    border-radius:999px;
    background:var(--preview-success);
    color:#fff;
    font-size:12px;
    font-weight:700;
}
.preview-surface{
    margin:12px 0;
    padding:15px;
    border-radius:var(--preview-radius);
    background:var(--preview-surface);
}
.preview-surface p{
    margin:7px 0 0;
    color:var(--preview-muted);
}
@media(max-width:1100px){
    .app-layout-grid{
        grid-template-columns:1fr;
    }
    .app-preview-wrapper{
        position:static;
    }
}


/* Module: attendance */
.response-yes{color:#166534}.response-no{color:#b91c1c}

/* Module: departments */

.module-management-grid{
    align-items:start;
}
.team-checkbox-groups{
    display:grid;
    gap:14px;
}
.team-checkbox-group{
    border:1px solid var(--border);
    border-radius:12px;
    padding:14px;
    background:#fbfdff;
}
.team-checkbox-group h4{
    margin:0 0 10px;
}
.team-checkbox-list{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:8px;
}
.team-checkbox-list label{
    display:flex;
    gap:8px;
    align-items:center;
    font-weight:600;
}
.team-checkbox-list input{
    width:auto;
}


/* Module: member_documents */

.member-documents-section{
    margin-top:18px;
}
.member-document-upload{
    align-items:end;
}
.document-file-field{
    grid-column:1 / span 1;
}
.document-upload-action{
    display:flex;
    align-items:flex-end;
}
.member-document-list{
    padding:0 22px 22px;
}
.member-document-list h3{
    margin:0 0 14px;
}
.document-actions{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    align-items:center;
}
@media(max-width:820px){
    .document-file-field{
        grid-column:auto;
    }
}


/* Module: polls */
.poll-result{height:8px;background:#dbeafe;border-radius:999px}

/* Module: team_events */
.event-type{font-weight:700}

/* Module: team_tasks */
.task-open{border-left:4px solid #2563eb}

/* Module: teams */
.team-badge{display:inline-block;padding:4px 9px;border-radius:999px;background:#dbeafe;color:#1d4ed8}
