/* Pontaj GPS: /pontare (the big Intrare / Ieșire button) and /pontaj-gps (reports). Classes `.pg-*`. */
.pg-card { display: flex; flex-direction: column; align-items: center; gap: .8rem; text-align: center; }
.pg-button {
    width: min(100%, 22rem); min-height: 9rem; border-radius: 28px; border: none; cursor: pointer;
    font-size: 2.4rem; font-weight: 700; letter-spacing: .02em; color: #fff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
}
.pg-button.in { background: linear-gradient(135deg, #16a34a, #22c55e); }
.pg-button.out { background: linear-gradient(135deg, #ea580c, #f97316); }
.pg-button:disabled { opacity: .7; cursor: progress; font-size: 1.3rem; }
.pg-today { font-size: 1.15rem; margin: 0; }
.pg-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: .45rem; }
.pg-punch { display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .7rem; padding: .45rem .2rem; border-bottom: 1px solid var(--line); }
.pg-controls { align-items: flex-end; margin: .4rem 0 1rem; }
.pg-bad { background: rgba(251, 113, 133, .22); font-weight: 700; }
.pg-grid td.pg-day, .pg-grid th.pg-day { text-align: center; min-width: 2.6rem; padding-left: .2rem; padding-right: .2rem; }
.pg-grid .pg-weekend { background: rgba(148, 163, 184, .12); }
.pg-grid .pg-weekend.pg-bad { background: rgba(251, 113, 133, .22); }
.pg-link { margin-top: .3rem; align-items: center; }
.pg-link select { max-width: 14rem; }
.pg-import { margin-top: 1.2rem; }
@media print { .pg-import, .pg-controls { display: none; } }
