@media (max-width: 768px) {
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .module-workspace { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .module-workspace-right { order: 0; width: 100%; min-width: 0; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard { order: 1; box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; min-height: 0; padding: 12px; border-radius: 18px; overflow: visible; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-quick { order: 2; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .module-workspace-left { order: 3; width: 100%; min-width: 0; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceControlCard { padding: 0; border: 0; background: transparent; box-shadow: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-control-grid { grid-template-columns: 1fr; gap: 0; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-control-branch { padding: 0; border: 0; background: transparent; box-shadow: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-control-branch .workspace-section-title { font-size: 12px; margin: 0 0 6px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-control-branch .workspace-section-note { display: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-control-branch-bar { display: flex; gap: 8px; overflow-x: auto; margin: 0; padding: 0; scrollbar-width: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-control-branch-bar::-webkit-scrollbar { display: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-control-branch-bar .attendance-branch-chip { flex: 1 0 145px; min-height: 52px; padding: 8px 10px; border-radius: 12px; gap: 3px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-branch-chip strong { font-size: 12px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-branch-chip .branch-count { font-size: 10px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard .attendance-board-toolbar { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-areas: 'title title' 'month badge' 'refresh tools'; gap: 8px !important; margin: 0 0 12px !important; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard .attendance-board-heading { grid-area: title; min-width: 0 !important; overflow: visible; margin-bottom: 3px !important; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardTitle { font-size: 14px; line-height: 1.5; white-space: normal; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceMonthCloseBadge { grid-area: badge; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceMatrixRefreshBtn { grid-area: refresh; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBulkExportMenu { grid-area: export; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceMonthlyBoardBtn { grid-area: full; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #parkingSaveBtn { grid-area: parking; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard .attendance-toolbar-secondary > .vi-month-picker,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #matrixMonth { grid-area: month; width: 100% !important; max-width: none; min-width: 0 !important; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .vi-month-picker > #matrixMonth { width: 1px !important; height: 1px !important; padding: 0 !important; border: 0 !important; pointer-events: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard #attendanceMonthCloseBadge,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard #attendanceMatrixRefreshBtn,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard #attendanceMonthlyBoardBtn,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard #parkingSaveBtn,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard .attendance-bulk-export-trigger,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard .vi-month-picker-button { width: 100% !important; min-height: 44px !important; max-height: none; max-width: none; padding: 8px !important; font-size: 11px !important; line-height: 1.4; white-space: normal; gap: 5px; justify-content: center; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard .attendance-bulk-export-menu { width: 100% !important; max-width: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard .attendance-bulk-export-trigger > span { display: inline; white-space: normal; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard .attendance-bulk-export-trigger .attendance-bulk-export-chevron { display: inline; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .attendance-bulk-export-popover { right: 0; width: min(320px, calc(100vw - 44px)); max-width: none; z-index: 30; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-actions-menu { grid-area: tools; position: relative; min-width: 0; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-actions-menu > summary { box-sizing: border-box; display: flex; align-items: center; justify-content: center; min-height: 44px; border: 1px solid #d7bd9c; border-radius: 12px; background: #fcf5eb; color: #7a532c; font-size: 12px; font-weight: 650; cursor: pointer; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-actions-menu > summary::-webkit-details-marker { display: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-actions-panel { position: absolute; right: 0; top: calc(100% + 6px); box-sizing: border-box; width: min(300px, calc(100vw - 44px)); max-height: 65dvh; overflow-y: auto; padding: 10px; border: 1px solid #e3d4c1; border-radius: 14px; background: #fff; box-shadow: 0 10px 30px #35291b26; z-index: 60; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-actions-panel > * + * { margin-top: 8px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-actions-panel .attendance-bulk-export-popover { position: static; width: 100% !important; max-height: none; margin-top: 6px; box-shadow: none; border: 0; padding: 0; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-fold { border: 1px solid #e6dccf; border-radius: 13px; background: #fff; min-width: 0; overflow: hidden; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-fold > summary { box-sizing: border-box; min-height: 44px; padding: 12px; color: #6e4c29; font-size: 12px; font-weight: 700; cursor: pointer; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-legend { margin: 0 0 10px; background: #fcfaf6; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-legend .attendance-legend { padding: 0 12px 12px; margin: 0; border: 0; gap: 6px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-legend .legend-pill { font-size: 10px; line-height: 1.5; white-space: normal; padding: 6px 8px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-fold .attendance-quick-card,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-fold .attendance-sync-card { border: 0; margin: 0; box-shadow: none; border-radius: 0; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-tools { display: grid; grid-template-columns: minmax(0, 1fr) 78px; gap: 8px; margin-bottom: 10px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-tools label { min-width: 0; font-size: 10px; font-weight: 600; color: #857666; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-tools label > span { display: block; margin: 0 0 5px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-tools input,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-tools select { box-sizing: border-box; width: 100%; min-height: 44px; min-width: 0; padding: 8px 10px; border: 1px solid #e2d5c5; border-radius: 11px; background: #fffcf8; font-size: 16px; color: #40372d; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-scroll-hint,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-result-count { grid-column: 1 / -1; margin: 0; font-size: 10px; line-height: 1.5; color: #8a7c6a; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-result-count { color: #655443; font-weight: 600; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #matrixContainer { padding: 0 !important; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #matrixScrollWrapper { min-height: 0; max-height: min(58dvh, 520px); border-radius: 12px; scrollbar-gutter: auto; overscroll-behavior: contain; touch-action: pan-x pan-y; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-employee-cell { width: 128px; min-width: 128px; max-width: 128px; padding: 8px; white-space: normal; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-employee-name { font-size: 12px; line-height: 1.45; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-employee-meta { font-size: 9px; line-height: 1.45; margin-top: 3px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-day-cell,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-day-head,
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-day-weekday { width: 46px; min-width: 46px; max-width: 46px; padding: 6px 3px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-day-cell { height: 52px; font-size: 13px; cursor: pointer; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-day-cell:focus-visible { outline: 2px solid #ae7c41; outline-offset: -3px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .attendance-cell-marker { font-size: 9px; right: 4px; bottom: 4px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-export-cell { position: relative; right: auto; width: 86px; min-width: 86px; max-width: 86px; box-shadow: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .row-export-btn { min-height: 44px; max-width: none; font-size: 11px; padding: 8px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-summary-cell { min-width: 90px; font-size: 11px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-dept-row td { font-size: 11px; padding: 10px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager.mobile-board-ready .cell-popover { display: none !important; pointer-events: none !important; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-filtered { display: none; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-fold[hidden],
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-tools[hidden],
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-actions-menu[hidden] { display: none; }
    body.mobile-board-detail-open { overflow: hidden; }
    .mobile-board-day-overlay { box-sizing: border-box; position: fixed; inset: 0; z-index: 100010; display: flex; align-items: flex-end; background: #2b21185e; }
    .mobile-board-day-overlay[hidden] { display: none; }
    .mobile-board-day-sheet { box-sizing: border-box; width: 100%; max-height: 86dvh; display: flex; flex-direction: column; border-radius: 22px 22px 0 0; background: #fffcf8; color: #40362b; overflow: hidden; box-shadow: 0 -12px 45px #2b211824; }
    .mobile-board-day-header { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px 6px; gap: 8px; }
    .mobile-board-day-header h2 { margin: 0; font-size: 14px; font-weight: 700; }
    .mobile-board-day-close { min-width: 44px; min-height: 44px; border: 1px solid #e4d6c5; border-radius: 12px; background: #fff; font-size: 24px; color: #76624b; }
    .mobile-board-day-identity { padding: 0 16px; }
    .mobile-board-day-name { font-size: 19px; }
    .mobile-board-day-meta { margin: 6px 0 12px; font-size: 11px; line-height: 1.6; color: #8b7d6d; }
    .mobile-board-day-navigation { display: flex; justify-content: space-between; gap: 10px; padding: 0 16px 12px; }
    .mobile-board-day-navigation button { min-height: 44px; flex: 1; border: 1px solid #e4d6c5; border-radius: 11px; background: #f7f1e8; color: #76532c; font-size: 12px; font-weight: 600; }
    .mobile-board-day-navigation button:disabled { opacity: .45; }
    .mobile-board-day-body { padding: 0 16px 16px; overflow-y: auto; overscroll-behavior: contain; }
    .mobile-board-day-credit { border-radius: 13px; background: #f1e6d4; margin: 0 0 12px; padding: 12px; font-size: 16px; font-weight: 700; color: #76532c; }
    .mobile-board-day-list { list-style: none; border: 1px solid #eadfce; border-radius: 13px; padding: 0 12px; margin: 0 0 12px; background: #fff; }
    .mobile-board-day-list li { padding: 10px 0; border-bottom: 1px solid #f1e9df; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
    .mobile-board-day-list li:last-child { border-bottom: 0; }
    .mobile-board-day-month { border: 1px solid #e9dece; border-radius: 12px; padding: 0 12px; background: #fff; }
    .mobile-board-day-month summary { min-height: 44px; align-content: center; font-size: 12px; color: #7c664c; font-weight: 600; }
    .mobile-board-day-totals { margin: 0 0 12px; }
    .mobile-board-day-totals > div { display: flex; justify-content: space-between; gap: 8px; border-top: 1px solid #f1e9df; padding: 9px 0; font-size: 12px; }
    .mobile-board-day-totals dt { color: #8b7d6d; }
    .mobile-board-day-totals dd { margin: 0; font-weight: 650; text-align: right; }
    .mobile-board-day-actions { display: flex; flex-wrap: wrap; gap: 8px; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid #eadfce; background: #fff; }
    .mobile-board-day-actions:empty { padding-top: 0; border: 0; }
    .mobile-board-day-actions .attendance-day-restore-btn,
    .mobile-board-day-actions .row-export-btn { min-height: 44px; flex: 1 1 140px; margin: 0; border: 1px solid #d2b18a; padding: 9px 12px; border-radius: 12px; font-size: 12px; color: #7d5528; background: #fcf5e9; box-shadow: none; justify-content: center; }
    .mobile-board-day-actions .attendance-day-restore-btn::after { display: none; }
    .mobile-board-day-actions .row-export-btn { background: #ae7c41; color: #fff; }
}
@media (max-width: 480px) {
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager #attendanceBoardCard { padding: 10px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-employee-cell { width: 120px; min-width: 120px; max-width: 120px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .matrix-table .matrix-employee-name { font-size: 11px; }
    body.hc-mobile-mode.hc-module-attendance-manager #moduleAttendanceManager .mobile-board-tools { grid-template-columns: minmax(0, 1fr) 70px; }
    .mobile-board-day-identity, .mobile-board-day-body { padding-left: 12px; padding-right: 12px; }
}
