*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5;color:#333;background-color:#f5f5f5}#root{height:100%}.wordpress-embed-mode{margin:0;padding:0;background:transparent}.wordpress-embed-mode body{background:#fff;margin:0;padding:0;overflow-x:hidden}@media (max-width: 768px){.wordpress-embed-mode .ant-layout-sider{position:fixed!important;z-index:1000;height:100vh;transform:translate(-100%);transition:transform .3s}.wordpress-embed-mode .ant-layout-sider.mobile-visible{transform:translate(0)}.wordpress-embed-mode .ant-layout-content{margin-left:0!important}}.wordpress-iframe-container{border:none;width:100%;height:100vh;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.ant-layout{min-height:100vh}.ant-layout-header{padding:0 24px;display:flex;align-items:center;justify-content:space-between}.ant-layout-content{margin:24px;padding:24px;background:#fff;border-radius:8px;box-shadow:0 1px 2px #00000008}.ant-layout-sider{box-shadow:2px 0 8px #1d23290d}.loading-container{display:flex;justify-content:center;align-items:center;height:200px;flex-direction:column;gap:16px}.error-container{display:flex;justify-content:center;align-items:center;height:200px;flex-direction:column;gap:16px;color:#ff4d4f}.empty-container{display:flex;justify-content:center;align-items:center;height:300px;flex-direction:column;gap:16px;color:#8c8c8c}.stats-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:24px;color:#fff;box-shadow:0 4px 12px #0000001a}.stats-card .ant-statistic-title{color:#ffffffd9}.stats-card .ant-statistic-content{color:#fff}.page-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.page-header h1{margin:0;font-size:24px;font-weight:600;color:#262626}.page-header .description{margin-top:8px;color:#8c8c8c;font-size:14px}.action-buttons{display:flex;gap:8px;flex-wrap:wrap}.action-buttons .ant-btn{border-radius:6px}.table-container{margin-top:16px}.table-container .ant-table{border-radius:8px;overflow:hidden}.table-container .ant-table-thead>tr>th{background:#fafafa;font-weight:600}.search-filters{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap;align-items:end}.search-filters .ant-input,.search-filters .ant-select{min-width:200px}.ant-modal-header{border-radius:8px 8px 0 0}.ant-modal-content{border-radius:8px;overflow:hidden}.form-container{max-width:600px}.form-container .ant-form-item{margin-bottom:24px}.required-label:before{content:"*";color:#ff4d4f;margin-right:4px}@media (max-width: 768px){.ant-layout-content{margin:16px;padding:16px}.search-filters{flex-direction:column;align-items:stretch}.search-filters .ant-input,.search-filters .ant-select{min-width:auto;width:100%}.action-buttons{justify-content:center}}@media (max-width: 576px){.ant-layout-header{padding:0 16px}.page-header h1{font-size:20px}.ant-table-wrapper{overflow-x:auto}}.ant-table-row-success,.ant-table-row-success:hover td{background-color:#f6ffed!important}.ant-table-row-warning,.ant-table-row-warning:hover td{background-color:#fffbe6!important}.ant-table-row-error,.ant-table-row-error:hover td{background-color:#fff2f0!important}.attendance-status-card{transition:all .3s ease;cursor:pointer}.attendance-status-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.attendance-status-present{background:linear-gradient(135deg,#f6ffed,#d9f7be);border:1px solid #b7eb8f}.attendance-status-late{background:linear-gradient(135deg,#fffbe6,#fff1b8);border:1px solid #ffe58f}.attendance-status-absent{background:linear-gradient(135deg,#fff2f0,#ffccc7);border:1px solid #ffccc7}.attendance-status-unchecked{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border:1px solid #d9d9d9}.qr-scan-area{border:2px dashed #d9d9d9;border-radius:12px;padding:40px 20px;text-align:center;background:#fafafa;transition:all .3s ease}.qr-scan-area.active{border-color:#1890ff;background:#f0f7ff}.monitoring-dashboard{background:linear-gradient(135deg,#1890ff,#722ed1);border-radius:16px;padding:24px;color:#fff;margin-bottom:24px}.monitoring-dashboard .ant-statistic{color:#fff}.monitoring-dashboard .ant-statistic-title{color:#ffffffd9}.monitoring-dashboard .ant-statistic-content{color:#fff}.attendance-progress{background:#fff3}.attendance-progress .ant-progress-bg{background:linear-gradient(90deg,#52c41a,#a0d911)}.attendance-check-buttons{display:flex;gap:4px;flex-wrap:wrap}.attendance-check-buttons .ant-btn{border-radius:6px;font-weight:500;transition:all .2s ease}.attendance-check-buttons .ant-btn:disabled{opacity:.5}.room-card{border-radius:12px;transition:all .3s ease;cursor:pointer}.room-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.room-card .ant-card-head{background:#fafafa;border-bottom:1px solid #f0f0f0}.detail-drawer .ant-drawer-body{padding:16px}.detail-drawer .ant-card{margin-bottom:16px;border-radius:8px;box-shadow:0 2px 8px #0000000f}.detail-drawer .ant-btn{border-radius:8px;font-weight:500;height:44px;font-size:15px}.bulk-modal .ant-radio-wrapper{display:block;height:40px;line-height:40px;margin-bottom:8px;padding:0 16px;border:1px solid #d9d9d9;border-radius:8px;transition:all .2s ease}.bulk-modal .ant-radio-wrapper:hover{border-color:#1890ff;background:#f0f7ff}.bulk-modal .ant-radio-wrapper-checked{border-color:#1890ff;background:#e6f7ff}.attendance-list-print{font-family:Noto Sans KR,Arial,sans-serif}.attendance-list-print table{border-collapse:collapse;width:100%;font-size:12px}.attendance-list-print th,.attendance-list-print td{border:1px solid #000;padding:8px 6px;text-align:center}.attendance-list-print th{background-color:#f0f0f0;font-weight:700}.qr-modal .ant-modal-body{text-align:center;padding:32px}.qr-modal img{border-radius:8px;box-shadow:0 4px 12px #00000026}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.pulsing{animation:pulse 2s infinite}@media print{.ant-layout-sider,.ant-layout-header,.action-buttons,.search-filters{display:none!important}.ant-layout-content{margin:0;padding:20px;box-shadow:none}.page-header{border-bottom:2px solid #000;margin-bottom:20px}.ant-table-row-success,.ant-table-row-warning,.ant-table-row-error{background-color:transparent!important;-webkit-print-color-adjust:exact}}
