/**
 * ATTENDANCE MODULE STYLES (V1.0 — MVC Refactor)
 * Page-specific styles for the Attendance Entry module only.
 * Loaded ONLY on attendance pages — not globally.
 * Extracted from: asset/unified_styles.css lines 610-865.
 * DEPENDS ON: core/variables.css and core/base.css being loaded first.
 */

/* MULTISELECT TRIGGER */
.attendance-container .ms-options-wrap>button { background:white !important; border:1px solid var(--border) !important; border-radius:var(--radius-sm) !important; color:var(--text) !important; height:42px !important; font-size:0.875rem !important; padding:0 32px 0 12px !important; display:flex !important; align-items:center !important; position:relative !important; width:100% !important; text-align:left !important; box-shadow:none !important; transition:var(--transition) !important; }
.attendance-container .ms-options-wrap>button:hover { border-color:#cbd5e1 !important; }
.attendance-container .ms-options-wrap>button:after { content:'' !important; position:absolute !important; right:12px !important; top:50% !important; transform:translateY(-50%) !important; border-left:5px solid transparent !important; border-right:5px solid transparent !important; border-top:5px solid var(--muted) !important; pointer-events:none !important; }
.attendance-container .ms-options-wrap>.ms-options { background:white !important; border:1px solid var(--border) !important; border-radius:10px !important; box-shadow:var(--shadow-lg) !important; }

/* LOADING */
#loading img { width:40px; margin:20px 0; }
#show_report { margin-top:40px; }

/* FORM LABELS in attendance context */
.attendance-container .form-group label { display:flex; align-items:center; gap:8px; font-size:0.75rem; font-weight:700; color:var(--muted); text-transform:uppercase; letter-spacing:0.05em; margin-bottom:10px; }
.attendance-container .form-group label svg { width:16px; height:16px; stroke-width:2.5; }

/* FLOATING SUBMIT FOOTER */
.submit-footer { position:fixed; bottom:25px; left:50%; transform:translateX(-50%); background:rgba(255,255,255,0.9); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); padding:12px 24px; border-radius:20px; border:1px solid rgba(226,232,240,0.8); box-shadow:var(--shadow-xl); display:flex; justify-content:center; z-index:1050; width:auto; min-width:320px; }
@media (max-width: 767px) { .submit-footer { width:92%; bottom:15px; min-width:auto; padding:10px; } }

/* STATUS PILLS */
.status-pill { display:inline-flex; align-items:center; gap:8px; padding:6px 12px; border-radius:30px; font-size:0.6875rem; font-weight:800; cursor:pointer; transition:var(--transition); border:1.5px solid transparent; text-transform:uppercase; letter-spacing:0.5px; }
.pill-present    { color:#059669; border-color:#d1fae5; background:#ecfdf5; }
.pill-permission { color:var(--primary); border-color:#dbeafe; background:var(--info-bg); }
.pill-absent     { color:#dc2626; border-color:#fee2e2; background:var(--danger-bg); }

input[type="radio"]:checked.radio-present+.status-pill    { background:#059669; color:#fff; }
input[type="radio"]:checked.radio-permission+.status-pill { background:var(--primary); color:#fff; }
input[type="radio"]:checked.radio-absent+.status-pill     { background:#dc2626; color:#fff; }

/* MOBILE TABLE */
@media (max-width: 768px) {
    .hide-mobile { display:none !important; }
    #attendanceTable th, #attendanceTable td { padding:10px 6px !important; font-size:0.75rem !important; vertical-align:middle !important; }
    .col-adm    { width:25%; font-weight:800; color:var(--text); }
    .col-name   { width:35%; font-weight:700; color:#475569; overflow:hidden; text-overflow:ellipsis; }
    .col-status { width:40%; text-align:right !important; }
    .m-status-wrap { display:flex !important; flex-direction:column !important; gap:6px !important; align-items:flex-end; }
    .status-pill { padding:6px 4px; font-size:0.625rem; width:100px; justify-content:center; }
    input[type="radio"] { width:16px; height:16px; margin:0; }
}

/* RESPONSIVE REPORT TABLE */
@media (max-width: 767px) {
    #show_report { overflow-x:hidden !important; margin-bottom:20px; }
    #example { width:100% !important; min-width:auto !important; font-size:0.8125rem !important; }
    #example th:nth-child(1), #example td:nth-child(1) { display:none; }
    #example th:nth-child(2), #example td:nth-child(2) { width:85px !important; }
    #example th:nth-child(3), #example td:nth-child(3) { min-width:110px !important; }
    #example th:nth-child(4), #example td:nth-child(4) { width:120px !important; text-align:left !important; }
    #example th, #example td { padding:10px 4px !important; vertical-align:middle !important; }
    #example td:last-child { white-space:normal !important; padding-left:10px !important; }
}
