.attendance-nav-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;margin-left:auto;border-radius:999px;background:#b3261e;color:#fff;font-size:11px}.attendance-clock{display:flex;align-items:baseline;gap:14px;padding:8px 2px 14px}.attendance-clock b{font-size:34px;letter-spacing:.03em;color:#12263f}.attendance-clock small,.attendance-clock span{color:#66717e}.attendance-punch-card{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;border:1px solid #cfd9e4;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#edf5fd);box-shadow:0 8px 25px #243a5710}.attendance-punch-card.working{border-color:#5d9f73;background:linear-gradient(135deg,#f5fff8,#e5f6ea)}.attendance-punch-card h3{margin:4px 0;font-size:24px}.attendance-punch-card p{margin:4px 0;color:#526172}.attendance-punch-card>button{min-width:150px;padding:16px 20px;border-radius:14px;font-size:17px;font-weight:800}.attendance-punch-card .clock-in{background:#1769aa;color:#fff}.attendance-punch-card .clock-out{background:#b2473f;color:#fff}.attendance-punch-card button:disabled{background:#cdd4dc;color:#68717d}.attendance-integrity-note{padding:7px 10px;color:#697585;font-size:12px}.attendance-section-head{display:flex;justify-content:space-between;align-items:center;margin:20px 0 8px}.attendance-section-head h3{margin:0}.attendance-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:9px}.attendance-team-card{display:grid;grid-template-columns:8px 1fr auto;gap:10px;align-items:center;padding:12px;border:1px solid #dbe2e9;border-radius:12px;background:#fff}.attendance-team-card>span{width:8px;height:44px;border-radius:8px;background:#9ba5b1}.attendance-team-card.working>span{background:#2b8a57}.attendance-team-card.done>span{background:#3278b8}.attendance-team-card div{display:flex;flex-direction:column}.attendance-team-card small{color:#6c7682}.attendance-team-card p{margin:4px 0 0;font-size:12px}.attendance-team-card strong{font-size:12px;color:#536170}.attendance-ledger-panel,#attendanceApprovalPanel{margin-top:20px;padding:17px;border:1px solid #d8e0e8;border-radius:15px;background:#fff}.attendance-ledger-tools{display:flex;align-items:end;gap:9px;flex-wrap:wrap}.attendance-ledger-tools label{display:grid;gap:4px}.attendance-ledger-tools button:first-of-type{margin-left:auto}.attendance-summary{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin:14px 0}.attendance-summary>div{display:flex;flex-direction:column;padding:11px 13px;border-radius:10px;background:#f1f5f9}.attendance-summary small{color:#6c7682}.attendance-summary b{font-size:19px}.attendance-table-wrap{overflow-x:auto}.attendance-table{width:100%;white-space:nowrap}.attendance-table th{background:#e8eef5}.attendance-table .attention{color:#b3261e}.attendance-adjustment-list{display:grid;gap:9px}.attendance-adjustment{padding:13px;border:1px solid #d9e0e8;border-radius:12px;background:#f9fbfd}.attendance-adjustment.申請中{border-left:5px solid #d58b16;background:#fff9ec}.attendance-adjustment.承認{border-left:5px solid #2b8a57}.attendance-adjustment.差戻し{border-left:5px solid #b2473f}.attendance-adjustment header{display:flex;justify-content:space-between}.attendance-adjustment header span{padding:3px 8px;border-radius:999px;background:#e9edf2;font-size:12px}.attendance-change{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:9px 0}.attendance-change span{padding:7px 9px;border-radius:8px;background:#eef3f8}.attendance-adjustment>div:last-child{display:flex;justify-content:flex-end;gap:7px}.attendance-dialog{width:min(520px,94vw)}.attendance-dialog form{display:grid;gap:12px}.attendance-dialog label{display:grid;gap:5px}.attendance-dialog-time{padding:14px;border-radius:10px;background:#eff5fb;text-align:center;font-size:23px;font-weight:800}.attendance-break-presets{display:flex;gap:5px;margin-top:5px}.attendance-break-presets button{padding:6px 9px}
@media(max-width:720px){.attendance-clock{display:grid;gap:2px}.attendance-punch-card{align-items:stretch;flex-direction:column}.attendance-punch-card>button{width:100%}.attendance-summary{grid-template-columns:repeat(2,1fr)}.attendance-ledger-tools button:first-of-type{margin-left:0}.attendance-change{display:grid}.attendance-team-grid{grid-template-columns:1fr}}
