.attendance-main{max-width:1180px;margin:auto;padding:0 5% 60px}.attendance-main .feature-breadcrumb{padding-left:0}.attendance-main .login{max-width:480px}.attendance-main .feature-title{font-size:36px}
.attendance-time{padding:20px 24px;border:1px dashed #cfb1c5;background:#fff4f9;border-radius:20px;margin:20px 0}.attendance-time strong{font-size:20px;color:#9b5881}.attendance-time p{margin:7px 0;font-size:14px}.attendance-time p:last-child{font-size:12px;color:#8b7485}
.attendance-counts{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.attendance-count{padding:7px 12px;background:#f1e8f7;border:1px solid #e1d0e7;border-radius:20px;font-size:12px}.attendance-count[data-status=unmarked]{background:#fff1d9;border-color:#ead19f}.attendance-count[data-status=present]{background:#e5f1e9;border-color:#b9d9c6}.attendance-count[data-status=late]{background:#fff0df;border-color:#e7c599}.attendance-count[data-status=absent]{background:#fae3e9;border-color:#e6b6c4}
.attendance-scroll{overflow-x:auto;margin:18px 0}.attendance-table{border-collapse:collapse;width:100%;font-size:13px;background:#fffdf9}.attendance-table th{background:#f3e3ee;font-weight:600;text-align:left;white-space:pre-line}.attendance-table th,.attendance-table td{padding:12px 10px;border:1px solid #e5d3de;vertical-align:middle}.attendance-table th:first-child,.attendance-table td:first-child{width:55px;text-align:center}.attendance-table td:nth-child(2){min-width:180px}.attendance-table select{min-width:125px;margin:0;font-size:14px}.attendance-table select[data-status=present]{background:#eef7f0}.attendance-table select[data-status=late]{background:#fff1de}.attendance-table select[data-status=absent]{background:#ffedf1}.attendance-id{display:block;font-size:11px;color:#96808f;font-weight:400;margin-top:3px}
.attendance-actions{display:flex;flex-wrap:wrap;gap:8px}.attendance-savebar{position:sticky;bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d7b4cd;border-radius:16px;background:#fff8fbee;padding:12px 18px;box-shadow:0 4px 14px #70566b15;z-index:3}.attendance-savebar p{font-size:12px;margin:0}.attendance-savebar .button:disabled{opacity:.5}
.attendance-history{border-top:1px dashed #ddc4d4;margin-top:24px;padding-top:18px}.attendance-history summary{cursor:pointer;padding:8px 0;font:21px Itim;color:#926080}.attendance-history form{max-width:440px;margin-top:20px}.attendance-week{min-width:800px}.attendance-week td:nth-child(n+3){text-align:center;min-width:105px}.attendance-week th:nth-child(n+3){text-align:center}.attendance-signature{height:65px;font-size:11px;color:#8e7686}.attendance-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:20px 0}.attendance-filters label{flex:1;min-width:180px;margin:0}.attendance-filters button{margin:0;min-height:44px}.attendance-calendar-form{padding:18px;background:#fff7e8;border:1px dashed #e2cda7;border-radius:14px;margin:20px 0}.attendance-calendar-form label{margin-bottom:12px}
.attendance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.attendance-room-summary{display:flex;flex-direction:column;gap:6px;background:#fff9fc;border:1px solid #e3cdda;border-radius:14px;padding:14px;text-align:left;color:#795872;cursor:pointer}.attendance-room-summary small{font-size:11px}.attendance-room-summary:hover{background:#f9e8f1}.attendance-credential p{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:700px){.attendance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-main{padding-left:4%;padding-right:4%}.attendance-table th,.attendance-table td{padding:10px 7px}.attendance-table:not(.attendance-week) td:nth-child(2){min-width:130px}.attendance-table:not(.attendance-week) select{min-width:105px;font-size:13px}.attendance-table:not(.attendance-week) td:first-child{width:36px}.attendance-savebar{padding:10px}.attendance-savebar .button{font-size:13px;padding:12px 15px}.attendance-main .admin-top{gap:0}.attendance-main .feature-title{font-size:30px}}
@media print{@page{size:A4 landscape;margin:10mm}body.attendance-print{background:white!important;color:black}.attendance-print>header,.attendance-print>footer,.attendance-print #login-panel,.attendance-print #admin-status,.attendance-print #dashboard>:not(#attendance-panel),.attendance-print #attendance-panel>:not(#attendance-week-report){display:none!important}.attendance-print #dashboard,.attendance-print #attendance-panel{display:block!important}.attendance-print .admin-main,.attendance-print #attendance-panel{margin:0;padding:0;border:0;max-width:none;background:white}.attendance-print #attendance-week-report{overflow:visible;margin:0}.attendance-print #attendance-week-report h3{font-size:18px;line-height:1.2;margin:0 0 10px}.attendance-print .attendance-week{min-width:0;font-size:10px;line-height:1.1}.attendance-print .attendance-table th,.attendance-print .attendance-table td{padding:1px 4px;min-width:0}.attendance-print .attendance-table td:nth-child(2){min-width:180px}.attendance-print .attendance-signature{height:40px}.attendance-print thead{display:table-header-group}.attendance-print tr{break-inside:avoid}.attendance-print .privacy{font-size:9px;line-height:1.2;color:#555;margin:8px 0}}
