/* ProjektZeit · Responsive Web-App, keine externen Bibliotheken */
.pz-app, .pz-app *, .pz-app *::before, .pz-app *::after { box-sizing:border-box; font-family:Arial,Helvetica,sans-serif!important; }
.pz-app { --pz-ink:#18233a; --pz-muted:#748099; --pz-line:#e8edf4; --pz-purple:#4f46e5; --pz-bg:#f5f7fc; --pz-shadow:0 5px 22px rgba(30,51,91,.04); background:var(--pz-bg); color:var(--pz-ink); font-family:Arial,Helvetica,sans-serif; font-size:14px; line-height:1.55; width:100%; border:1px solid #e8edf4; border-radius:18px; overflow:clip; min-height:680px; }
.pz-app h1,.pz-app h2,.pz-app h3,.pz-app p {padding:0; margin:0; color:inherit; text-wrap:pretty;}
.pz-app button, .pz-app input, .pz-app select, .pz-app textarea {font-family:inherit;font-size:14px;}
.pz-app button {cursor:pointer;}
.pz-app button:focus-visible,.pz-app input:focus-visible,.pz-app select:focus-visible,.pz-app textarea:focus-visible {outline:3px solid #b5b3ff;outline-offset:2px;}
.pz-app svg {vertical-align:middle; flex-shrink:0;}
.pz-loading {min-height:400px;display:flex;align-items:center;justify-content:center;gap:12px;color:#596782;font-weight:600;}
.pz-spinner {border:3px solid #dddafa;border-top-color:var(--pz-purple);width:26px;height:26px;border-radius:50%;animation:pz-spin .75s linear infinite;}
@keyframes pz-spin {to {transform:rotate(360deg);}}
.pz-app-shell {display:grid;grid-template-columns:238px minmax(0,1fr);min-height:680px;background:#fff;}
.pz-sidebar {display:flex;flex-direction:column;gap:18px;min-width:0;padding:19px 12px;background:linear-gradient(180deg,#f4e7f8 0%,#ead8f0 100%);color:#5e4a68;}
.pz-sidebar-brand {display:flex;align-items:center;gap:11px;min-width:0;padding:3px 8px 13px;color:#2c2734;font-size:19px;font-weight:800;overflow-wrap:anywhere;}
.pz-sidebar-brand .pz-logo {width:39px;height:39px;flex:none;background:#7628a6;box-shadow:none;border-radius:11px;}
.pz-side-nav {display:grid;gap:4px;}
.pz-app .pz-side-link {width:100%;min-width:0;display:flex;align-items:center;gap:11px;padding:10px 11px;border:0;border-radius:9px;background:transparent;color:#62566d;text-align:left;font-size:13px;font-weight:650;line-height:1.25;white-space:normal;}
.pz-app .pz-side-link svg {width:19px;height:19px;flex:none;}
.pz-app .pz-side-link:hover {background:#f0e2f5;color:#632286;}
.pz-app .pz-side-link.is-active {background:#e8cbed;color:#632286;font-weight:800;}
.pz-sidebar-user {display:flex;align-items:center;gap:9px;min-width:0;margin-top:auto;padding:12px 7px 2px;border-top:1px solid #ddc9e5;color:#4e4058;font-size:12px;font-weight:700;overflow-wrap:anywhere;}
.pz-sidebar-user .pz-avatar {flex:none;background:#d8b7e5;color:#602582;}
.pz-workspace {min-width:0;background:#fff;}
.pz-header {background:#fff;border-bottom:1px solid var(--pz-line);}
.pz-top {display:flex;justify-content:space-between;align-items:center;min-height:78px;padding:16px 32px;gap:16px;}
.pz-header-title {display:block;color:#242130;font-size:16px;font-weight:750;}
.pz-brand {display:flex;align-items:center;gap:13px;}
.pz-logo {background:#4f46e5;color:white;display:grid;place-items:center;width:43px;height:43px;border-radius:13px;box-shadow:0 6px 13px #4f46e53b;}
.pz-logo svg {width:23px;height:23px;stroke-width:2.2;}
.pz-brand-name {font-size:23px;letter-spacing:-.9px;font-weight:800;line-height:1.12;}
.pz-brand-name span {color:var(--pz-purple);}
.pz-brand-sub {color:#8a94a8;font-size:11px;letter-spacing:.4px;margin-top:5px;font-weight:650;}
.pz-account {display:flex;align-items:center;gap:10px;font-size:13px;font-weight:650;color:#4a5670;}
.pz-avatar {display:grid;place-items:center;background:#e9e7ff;color:var(--pz-purple);border-radius:50%;font-weight:800;width:37px;height:37px;font-size:12px;}
.pz-tabs {padding:0 34px;display:flex;align-items:center;gap:8px;min-height:56px;overflow-x:auto;scrollbar-width:none;}
.pz-tabs::-webkit-scrollbar {display:none;}
.pz-app .pz-tab {border:none;background:transparent;color:#738199;white-space:nowrap;border-bottom:3px solid transparent;padding:16px 16px 13px;display:flex;align-items:center;gap:9px;font-weight:700;font-size:13px;transition:color .15s ease;}
.pz-app .pz-tab:hover {color:var(--pz-purple);}
.pz-app .pz-tab.is-active {color:var(--pz-purple);border-bottom-color:var(--pz-purple);}
.pz-main {padding:34px 36px 42px;max-width:1500px;margin:auto;}
.pz-pagehead {display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px;}
.pz-eyebrow {font-weight:800;font-size:10px;letter-spacing:1.55px;color:#7e8ca5;text-transform:uppercase;display:block;margin-bottom:7px;}
.pz-pagehead h1 {font-size:clamp(28px,3vw,38px);font-weight:800;letter-spacing:-1.4px;line-height:1.18;}
.pz-pagehead p {color:#77849b;margin-top:7px;font-size:14px;}
.pz-app .pz-btn {appearance:none;border:1px solid #e4e9f1;border-radius:10px;padding:11px 16px;min-height:42px;display:inline-flex;justify-content:center;align-items:center;gap:8px;font-weight:750;color:#44536a;line-height:1.25;white-space:nowrap;text-decoration:none;background:#fff;box-shadow:none;transition:background .12s,transform .12s,box-shadow .12s;}
.pz-app .pz-btn:hover {background:#f3f5fa;transform:translateY(-1px);}
.pz-app .pz-btn-primary {background:var(--pz-purple);border-color:var(--pz-purple);color:#fff;box-shadow:0 5px 11px #4f46e52a;}
.pz-app .pz-btn-primary:hover {background:#4038ce;color:#fff;}
.pz-app .pz-btn-danger {background:#fff2f3;border-color:#fbd7de;color:#bc3e57;}
.pz-app .pz-btn-danger:hover {background:#fce4e8;color:#b52945;}
.pz-app .pz-btn-icon {border-color:transparent;background:transparent;box-shadow:none;padding:8px;min-height:34px;color:#8290a5;}
.pz-app .pz-btn-icon:hover {color:#5a4ee7;background:#f0eeff;}
.pz-metrics {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:21px;}
.pz-metric {background:#fff;padding:23px 22px;border:1px solid var(--pz-line);border-radius:15px;box-shadow:var(--pz-shadow);min-width:0;}
.pz-metric-link {appearance:none;width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;}
.pz-metric-link:hover {transform:translateY(-2px);border-color:#c9c6ff;box-shadow:0 8px 24px rgba(30,51,91,.09);}
.pz-metric-top {display:flex;justify-content:space-between;align-items:center;gap:9px;color:#7d8aa0;font-weight:700;font-size:12px;}
.pz-metric-symbol {display:grid;place-items:center;background:#f0efff;color:#635bea;width:34px;height:34px;border-radius:9px;}
.pz-metric strong {display:block;font-size:25px;line-height:1.35;letter-spacing:-1px;margin-top:13px;font-weight:800;color:#1a2540;white-space:nowrap;}
.pz-metric small {display:block;color:#929caf;margin-top:5px;font-size:11px;}
.pz-week-metric .pz-week-balance {font-weight:800;}
.pz-week-metric .pz-week-balance.is-overtime {color:#14775c;}
.pz-week-metric .pz-week-balance.is-under {color:#a15b17;}
.pz-week-metric .pz-week-balance.is-balanced {color:#4f46e5;}
.pz-columns {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:19px;align-items:stretch;}
.pz-card {background:white;border:1px solid var(--pz-line);border-radius:15px;padding:25px;box-shadow:var(--pz-shadow);min-width:0;}
.pz-section-title {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:23px;}
.pz-section-title h2 {font-size:18px;line-height:1.3;letter-spacing:-.4px;font-weight:800;}
.pz-section-title .pz-eyebrow {margin-bottom:5px;}
.pz-title-icon {display:grid;place-items:center;width:38px;height:38px;background:#f4f3ff;border-radius:10px;color:#776ff4;}
.pz-timer-fields {display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.pz-app label {font-size:12px;font-weight:700;color:#65718a;display:block;min-width:0;}
.pz-app label input,.pz-app label select,.pz-app label textarea,.pz-app .pz-select {display:block;width:100%;margin-top:7px;min-height:43px;background:#fff;border:1px solid #dee5f0;border-radius:9px;padding:10px 12px;color:#27344d;max-width:none;box-shadow:none;letter-spacing:normal;line-height:1.3;}
.pz-app label textarea {min-height:95px;resize:vertical;}
.pz-app label input::placeholder,.pz-app label textarea::placeholder {color:#a1aabe;}
.pz-app .pz-full {grid-column:1/-1;}
.pz-app .pz-optional {font-weight:500;color:#9aa4b5;}
.pz-app .pz-required {color:#d14c68;}
.pz-app .pz-start {margin-top:20px;width:100%;height:49px;font-size:14px;}
.pz-link {border:0;background:transparent;color:var(--pz-purple);font-weight:800;font-size:12px;display:flex;gap:5px;align-items:center;white-space:nowrap;padding:6px;}
.pz-link:hover {color:#3430a8;}
.pz-link svg {width:15px;height:15px;}
.pz-recent-list {display:grid;gap:0;}
.pz-recent-item {display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #f0f3f7;}
.pz-recent-item:last-child {border:0;}
.pz-color-dot {width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0;}
.pz-recent-item>div {flex:1;min-width:0;}
.pz-recent-item strong {display:block;font-size:12px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pz-recent-item small {display:block;color:#8793a6;font-size:11px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pz-recent-item b {font-size:12px;white-space:nowrap;letter-spacing:-.1px;}
.pz-empty {padding:25px 10px 36px;min-height:200px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;}
.pz-empty-icon {display:grid;place-items:center;border-radius:15px;color:#766deb;background:#f0effe;width:48px;height:48px;margin-bottom:14px;}
.pz-empty strong {display:block;font-size:15px;font-weight:800;}
.pz-empty p {max-width:280px;color:#8793a6;margin:6px 0 14px;font-size:12px;}
.pz-empty-timer {min-height:238px;padding:12px;}
.pz-active-banner {display:flex;align-items:center;gap:9px;background:#edf9f6;border:1px solid #d1eee5;color:#247c6a;font-size:12px;font-weight:800;padding:10px 12px;border-radius:9px;flex-wrap:wrap;}
.pz-live-dot {width:9px;height:9px;border-radius:50%;background:#15b894;box-shadow:0 0 0 4px #15b89422;animation:pz-blink 2s ease-in-out infinite;flex-shrink:0;}
.pz-live-dot.is-paused {background:#eb9f42;box-shadow:none;animation:none;}
@keyframes pz-blink {50% {opacity:.55;}}
.pz-time-counter {font-size:clamp(38px,5vw,61px);font-weight:800;letter-spacing:1px;margin:13px 0 4px;font-variant-numeric:tabular-nums;color:#222d46;}
.pz-active-details {display:flex;gap:4px;flex-direction:column;color:#8995a9;font-size:12px;margin-bottom:20px;}
.pz-location-notice {margin:12px 0;color:#748099;font-size:11px;line-height:1.5;}
.pz-active-details strong {color:#33415b;font-size:14px;}
.pz-timer-actions {display:flex;gap:10px;flex-wrap:wrap;}
.pz-project-badge {display:inline-flex;gap:7px;align-items:center;max-width:100%;min-width:0;}
.pz-project-badge i {display:inline-block;width:9px;height:9px;border-radius:50%;flex-shrink:0;}
.pz-project-badge span {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pz-table-card {padding:0;overflow:hidden;}
.pz-table-top {padding:20px 23px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;}
.pz-filters {display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;}
.pz-filters label {min-width:165px;}
.pz-filters .pz-select {margin-top:5px;min-height:41px;}
.pz-export-buttons {display:flex;gap:8px;flex-wrap:wrap;}
.pz-table-summary {display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;border-top:1px solid var(--pz-line);background:#fafbfe;padding:13px 23px;font-size:12px;color:#718099;}
.pz-table-summary strong,.pz-table-summary b {color:#303e58;}
.pz-table-wrap {overflow-x:auto;}
.pz-table {width:100%;border-collapse:collapse;font-size:12px;min-width:670px;}
.pz-table th {text-align:left;background:#fff;color:#8893a6;letter-spacing:.35px;font-size:10px;text-transform:uppercase;font-weight:800;border-bottom:1px solid #e9edf4;padding:16px 17px;}
.pz-table td {border-bottom:1px solid #eff2f7;padding:16px 17px;vertical-align:middle;color:#485670;max-width:260px;}
.pz-table tr:last-child td {border-bottom:0;}
.pz-table td strong {color:#303c54;font-weight:800;font-size:12px;}
.pz-table td small {display:block;color:#929dae;font-size:11px;margin-top:3px;}
.pz-table .pz-note {max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pz-table .pz-duration {white-space:nowrap;}
.pz-row-actions {white-space:nowrap;text-align:right;}
.pz-row-actions .pz-btn {margin-left:0;}
.pz-admin-only-note {color:#8a94a8;font-size:11px;white-space:nowrap;}
.pz-project-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;}
.pz-project-card {padding:23px;background:#fff;border:1px solid #e5eaf3;border-radius:15px;box-shadow:var(--pz-shadow);display:flex;flex-direction:column;min-height:226px;}
.pz-project-top {display:flex;justify-content:space-between;gap:10px;margin-bottom:20px;}
.pz-project-monogram {display:grid;place-items:center;width:46px;height:46px;border-radius:12px;font-weight:850;letter-spacing:-.5px;font-size:16px;}
.pz-status {border-radius:100px;padding:4px 9px;height:fit-content;font-size:10px;font-weight:800;}
.pz-status-active {background:#e8f8f0;color:#238a62;}
.pz-status-archived {background:#f0f2f5;color:#7b8897;}
.pz-project-card>strong {font-size:16px;font-weight:800;overflow-wrap:anywhere;}
.pz-project-card>small {font-size:12px;color:#98a2b4;margin:2px 0 18px;}
.pz-project-stats {border-top:1px solid #eff2f7;padding-top:14px;display:flex;justify-content:space-between;gap:9px;font-size:12px;color:#8290a6;margin-top:auto;}
.pz-project-stats b {color:#303e56;}
.pz-project-foot {display:flex;justify-content:space-between;gap:8px;padding-top:18px;}
.pz-project-foot .pz-btn-secondary {flex:1;}
.pz-report-filter {margin-bottom:19px;padding:16px 20px;}
.pz-report-summary {background:linear-gradient(110deg,#4f46e5,#7166ef);color:white;border-radius:16px;min-height:158px;padding:30px 31px;margin-bottom:19px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 9px 28px #4f46e527;}
.pz-report-summary>div {display:flex;flex-direction:column;}
.pz-report-summary small {font-weight:800;font-size:11px;letter-spacing:1.2px;color:#dfdcff;}
.pz-report-summary strong {font-size:42px;letter-spacing:-1.2px;line-height:1.35;}
.pz-report-summary span {font-size:12px;color:#e0dfff;}
.pz-report-icon {color:#fff;opacity:.5;}
.pz-report-icon svg {width:73px;height:73px;stroke-width:.8;}
.pz-bar-row {margin:19px 0 24px;}
.pz-bar-label {display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:9px;}
.pz-bar-label>span {display:flex;align-items:center;gap:9px;color:#4c5a72;font-size:12px;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;}
.pz-bar-label>strong {font-size:12px;white-space:nowrap;}
.pz-bar-track {height:9px;border-radius:9px;background:#f0f1f8;overflow:hidden;}
.pz-bar-fill {height:100%;border-radius:9px;}
.pz-report-buttons {display:flex;gap:10px;flex-wrap:wrap;margin-top:23px;}
.pz-pause-notice {display:block!important;color:#b45309;font-weight:700;background:#fff7ed;padding:8px 10px;border-radius:8px;margin-top:6px;}
.pz-compliance-notice {margin:18px 0;padding:14px 16px;border:1px solid #f59e0b;background:#fffbeb;color:#92400e;border-radius:12px;font-size:14px;}
.pz-footer {border-top:1px solid #e9edf4;padding:15px 36px;font-size:11px;color:#96a2b4;display:flex;justify-content:space-between;gap:10px;background:#fff;}
.pz-backdrop {position:fixed;z-index:999999;inset:0;background:#18223ba8;display:flex;align-items:center;justify-content:center;padding:22px;overflow:auto;}
.pz-modal {background:#fff;width:min(100%,540px);max-height:min(94vh,850px);overflow:auto;box-shadow:0 18px 70px #101a3a3d;border-radius:17px;padding:26px 28px;position:relative;}
.pz-modal-header {display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:19px;border-bottom:1px solid var(--pz-line);margin-bottom:21px;}
.pz-modal-header h2 {font-size:22px;letter-spacing:-.6px;font-weight:800;}
.pz-form-grid {display:grid;grid-template-columns:1fr 1fr;gap:17px;}
.pz-modal .pz-form-grid label input,.pz-modal .pz-form-grid label select,.pz-modal .pz-form-grid label textarea {margin-top:7px;}
.pz-color-field>span {font-size:12px;font-weight:750;}
.pz-color-palette {display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;}
.pz-color-choice {position:relative;cursor:pointer;}
.pz-color-choice input {position:absolute;width:1px!important;height:1px!important;opacity:0;}
.pz-color-choice span {display:block;width:31px;height:31px;border-radius:50%;border:3px solid white;box-shadow:0 0 0 1px #d8deea;}
.pz-color-choice input:checked+span {box-shadow:0 0 0 2px #30394f,0 0 0 5px white;}
.pz-color-choice input:focus-visible+span {outline:3px solid #aba6ff;outline-offset:4px;}
.pz-form-tip {font-size:11px;color:#9aa5b7;margin-top:13px!important;}
.pz-modal-footer {display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:21px;border-top:1px solid var(--pz-line);}
.pz-toast {position:fixed;z-index:1000001;right:22px;bottom:23px;max-width:min(440px,calc(100vw - 44px));padding:14px 18px;border-radius:11px;color:#fff;background:#293951;box-shadow:0 12px 30px #17244144;font:600 13px/1.4 Arial,Helvetica,sans-serif;}
.pz-toast-error {background:#af324b;}
.pz-auth,.pz-login {box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;color:#18233a;}
.pz-auth *, .pz-auth *::before, .pz-auth *::after {box-sizing:border-box;font-family:inherit!important;}
.pz-auth {max-width:980px;margin:30px auto;padding:32px;background:#f5f7fc;border:1px solid #e8edf4;border-radius:18px;}
.pz-auth>header {text-align:center;margin-bottom:24px;}
.pz-auth>header strong {font-size:25px;font-weight:800;}
.pz-auth>header p {margin:6px 0 0;color:#748099;}
.pz-auth-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;}
.pz-auth-card {display:grid;gap:14px;padding:23px;background:#fff;border:1px solid #e8edf4;border-radius:14px;box-shadow:0 5px 22px rgba(30,51,91,.04);}
.pz-auth-card h2 {margin:0;font-size:19px;color:#18233a;}
.pz-auth-card p {margin:0;color:#748099;font-size:13px;}
.pz-auth-card label {display:block;font-size:12px;font-weight:700;color:#65718a;}
.pz-auth-card input {display:block;width:100%;min-height:43px;margin-top:7px;padding:10px 12px;border:1px solid #dee5f0;border-radius:9px;background:#fff;color:#27344d;font-size:14px;}
.pz-auth-card button {min-height:44px;padding:10px 16px;border:0;border-radius:9px;background:#4f46e5;color:#fff;font-size:14px;font-weight:700;cursor:pointer;}
.pz-auth-card button:hover {background:#4038ce;}
.pz-auth-card>a {color:#4f46e5;font-size:13px;text-align:center;text-decoration:none;}
.pz-auth-notice {margin:0 0 18px;padding:12px 15px;border:1px solid #f0c7cc;border-radius:9px;background:#fff2f3;color:#9d3040;}
.pz-auth-notice.is-success {border-color:#bde6d7;background:#edf9f4;color:#247c6a;}
.pz-auth-foot {margin:18px 0 0;text-align:center;color:#8793a6;font-size:12px;}
.pz-auth-trap {position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;}
.pz-admin-front {box-sizing:border-box;width:100%;max-width:1500px;margin:0 auto;padding:clamp(16px,3vw,34px);border:1px solid #e8edf4;border-radius:18px;background:#f5f7fc;color:#18233a;font:14px/1.55 Arial,Helvetica,sans-serif;}
.pz-admin-front *,.pz-admin-front *::before,.pz-admin-front *::after {box-sizing:border-box;font-family:Arial,Helvetica,sans-serif!important;}
.pz-admin-front-head {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;}
.pz-admin-front-head h2 {margin:0;font-size:clamp(24px,3vw,34px);line-height:1.2;color:#18233a;}
.pz-admin-front-head p {margin:6px 0 0;color:#748099;}
.pz-admin-eyebrow {display:block;margin-bottom:7px;color:#4f46e5;font-size:10px;font-weight:800;letter-spacing:1.4px;}
.pz-admin-count {flex:none;padding:8px 12px;border-radius:99px;background:#eeedff;color:#4f46e5;font-size:12px;font-weight:700;}
.pz-admin-filter {display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:16px;background:#fff;border:1px solid #e8edf4;border-radius:12px;}
.pz-admin-filter label,.pz-promote-card label {min-width:150px;flex:1;color:#65718a;font-size:12px;font-weight:700;}
.pz-admin-filter input,.pz-promote-card input {display:block;width:100%;min-height:42px;margin-top:6px;padding:9px 11px;border:1px solid #dee5f0;border-radius:8px;background:#fff;color:#27344d;font-size:14px;}
.pz-admin-filter button,.pz-promote-card button {min-height:42px;padding:10px 16px;border:0;border-radius:8px;background:#4f46e5;color:#fff;font-size:14px;font-weight:700;cursor:pointer;}
.pz-admin-filter button:hover,.pz-promote-card button:hover {background:#4038ce;}
.pz-front-absence-card {margin:15px 0 19px;padding:18px;background:#fff;border:1px solid #e8edf4;border-radius:12px;}
.pz-front-absence-card>header {display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;}
.pz-front-absence-card h3 {margin:0;color:#18233a;font-size:17px;}
.pz-front-absence-card>header span {padding:5px 10px;border-radius:20px;background:#fff1d8;color:#986416;font-size:11px;font-weight:700;}
.pz-front-absence-list {display:grid;gap:9px;}
.pz-front-absence-list article {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:15px;padding:12px 0;border-top:1px solid #edf0f5;}
.pz-front-absence-list article>div {display:grid;gap:3px;min-width:0;}
.pz-front-absence-list article>div strong {color:#263249;font-size:13px;}
.pz-front-absence-list article>div span {color:#748099;font-size:12px;}
.pz-front-absence-list form {display:grid;grid-template-columns:minmax(120px,1fr) auto auto;gap:7px;align-items:center;}
.pz-front-absence-list input {width:100%;min-height:37px;padding:7px 9px;border:1px solid #dee5f0;border-radius:7px;}
.pz-front-absence-list button {min-height:37px;padding:7px 11px;border:0;border-radius:7px;background:#4f46e5;color:#fff;font-weight:700;cursor:pointer;}
.pz-front-absence-list button.is-reject {background:#f1eff4;color:#514b58;}
.pz-front-absence-empty {margin:5px 0;color:#748099;font-size:13px;}
.pz-admin-summary {display:flex;justify-content:space-between;gap:12px;align-items:center;margin:14px 0;padding:15px 17px;background:#fff;border:1px solid #e8edf4;border-radius:12px;color:#748099;}
.pz-admin-summary strong {color:#18233a;font-size:20px;}
.pz-admin-table-wrap {overflow-x:auto;background:#fff;border:1px solid #e8edf4;border-radius:12px;}
.pz-admin-table {width:100%;border-collapse:collapse;text-align:left;font-size:13px;}
.pz-admin-table th,.pz-admin-table td {padding:12px 14px;border-bottom:1px solid #edf0f5;vertical-align:top;}
.pz-admin-table th {color:#748099;background:#fafbfe;font-size:11px;text-transform:uppercase;letter-spacing:.35px;}
.pz-admin-table tr:last-child td {border-bottom:0;}
.pz-admin-table td strong {white-space:nowrap;}
.pz-admin-empty {padding:24px!important;text-align:center;color:#748099;}
.pz-admin-small {margin:8px 2px 20px;color:#8994a8;font-size:11px;}
.pz-admin-table td a {display:inline-block;margin:1px 0;color:#4f46e5;font-size:11px;overflow-wrap:anywhere;}
.pz-promote-card {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px;padding:20px;background:#fff;border:1px solid #e8edf4;border-radius:12px;}
.pz-promote-card h3 {margin:0;font-size:18px;color:#18233a;}
.pz-promote-card p {margin:7px 0 0;color:#748099;font-size:13px;}
.pz-promote-card form {display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;}
.pz-error,.pz-login {padding:40px;border:1px solid #e5eaf2;background:#fbfcff;border-radius:12px;text-align:center;color:#35425b;}
.pz-error strong,.pz-login strong {font-size:20px;}
.pz-error p,.pz-login p {margin:10px 0 16px;color:#65718a;}
.pz-absence-head {align-items:center;margin-bottom:17px;}
.pz-absence-head .pz-btn {background:#8f37bc;border-color:#8f37bc;}
.pz-absence-tabs {display:flex;gap:25px;align-items:center;overflow-x:auto;border-bottom:1px solid #e9e7ed;margin:-2px 0 20px;scrollbar-width:none;}
.pz-absence-tabs::-webkit-scrollbar {display:none;}
.pz-app .pz-absence-tabs button {flex:none;padding:13px 2px 11px;border:0;border-bottom:2px solid transparent;background:transparent;color:#5f5d67;font-size:13px;font-weight:650;white-space:nowrap;}
.pz-app .pz-absence-tabs button:hover,.pz-app .pz-absence-tabs button.is-active {color:#8f37bc;}
.pz-app .pz-absence-tabs button.is-active {border-bottom-color:#a83cc5;}
.pz-absence-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:20px;}
.pz-personio-card {min-width:0;padding:20px;border:1px solid #eeeaf1;border-radius:17px;background:#fff;box-shadow:0 4px 15px rgba(36,28,48,.045);}
.pz-personio-card-title {margin-bottom:14px;color:#39343f;font-size:13px;font-weight:750;}
.pz-personio-card>strong {display:block;color:#23212b;font-size:24px;line-height:1.3;letter-spacing:-.4px;}
.pz-personio-card>strong small {font-size:13px;font-weight:600;letter-spacing:0;color:#77717e;}
.pz-personio-card>p {margin-top:8px;color:#827c88;font-size:12px;}
.pz-calendar-card {padding:0;overflow:hidden;}
.pz-calendar-toolbar {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid #f0edf2;color:#807987;font-size:12px;}
.pz-calendar-controls {display:flex;align-items:center;gap:8px;min-width:0;}
.pz-calendar-controls strong {padding-left:8px;color:#312d38;font-size:15px;}
.pz-app .pz-calendar-controls button {min-width:36px;height:34px;padding:5px 10px;border:1px solid #e9e5eb;border-radius:9px;background:#fff;color:#514b58;font-weight:650;}
.pz-app .pz-calendar-controls button:hover {border-color:#d9b7e4;color:#7f2da5;}
.pz-calendar-grid {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));}
.pz-calendar-weekdays {background:#fbfafc;border-bottom:1px solid #eeebf0;}
.pz-calendar-weekdays span {padding:9px;text-align:center;color:#77717e;font-size:11px;font-weight:700;}
.pz-calendar-day {min-width:0;min-height:83px;padding:7px;border-right:1px solid #f0edf2;border-bottom:1px solid #f0edf2;overflow:hidden;}
.pz-calendar-number {display:block;margin-bottom:4px;color:#494550;font-size:11px;font-weight:700;}
.pz-calendar-day.is-outside {background:#fbfafc;}
.pz-calendar-day.is-outside .pz-calendar-number {color:#b9b4bd;}
.pz-calendar-day.is-today .pz-calendar-number {display:inline-grid;place-items:center;width:23px;height:23px;margin:-4px 0 1px;border-radius:50%;background:#8f37bc;color:#fff;}
.pz-calendar-event {display:block;margin:3px 0;padding:3px 5px;border-radius:5px;background:#f2e4f7;color:#702697;font-size:9px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pz-calendar-event.is-other {background:#eef4ff;color:#3c5d9b;}
.pz-calendar-more {display:block;color:#7c7481;font-size:9px;}
.pz-absence-list {margin-top:17px;padding:0;overflow:hidden;}
.pz-absence-list h2 {font-size:16px;color:#302b37;}
.pz-absence-list-head {display:flex;justify-content:space-between;align-items:center;gap:10px;padding:17px 20px;border-bottom:1px solid #eeeaf1;}
.pz-absence-list-head span {color:#7e7784;font-size:12px;}
.pz-absence-empty {padding:28px 20px;color:#89828f;text-align:center;font-size:13px;}
.pz-absence-table {min-width:660px;}
.pz-status-pill {display:inline-block;padding:4px 10px;border-radius:20px;background:#f2eff5;color:#6d6572;font-size:11px;font-weight:700;white-space:nowrap;}
.pz-status-pill.is-approved {background:#dcf5e7;color:#24734b;}
.pz-status-pill.is-pending {background:#fff1d8;color:#986416;}
.pz-status-pill.is-rejected {background:#fde5e8;color:#9b3e4a;}
.pz-absence-table td:last-child .pz-btn {padding:6px 9px;min-height:30px;font-size:11px;}
#pz-print-sheet {display:none;}
@media (max-width:1050px) {
 .pz-app-shell {grid-template-columns:205px minmax(0,1fr);}.pz-main {padding:27px 23px 34px;} .pz-top {padding:16px 24px;}
 .pz-metrics {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;} .pz-metric {padding:18px 15px;} .pz-metric strong {font-size:21px;}
 .pz-card {padding:21px;}.pz-table-card {padding:0;}.pz-project-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .pz-columns {grid-template-columns:1fr;}.pz-absence-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}.pz-absence-metrics .pz-personio-card:last-child {grid-column:1/-1;}
}
@media (max-width:750px) {
 .pz-auth {margin:16px auto;padding:18px;}.pz-auth-grid {grid-template-columns:1fr;gap:13px;}.pz-auth-card {padding:18px;}
 .pz-admin-front-head {align-items:flex-start;flex-direction:column;gap:9px;}.pz-admin-filter {align-items:stretch;flex-direction:column;}.pz-admin-filter label {width:100%;}.pz-admin-filter button {width:100%;}
 .pz-promote-card,.pz-promote-card form {grid-template-columns:1fr;}.pz-promote-card button {width:100%;}
 .pz-front-absence-list article,.pz-front-absence-list form {grid-template-columns:1fr;}.pz-front-absence-list button {width:100%;}
 .pz-admin-table-wrap {overflow:visible;background:transparent;border:0;}.pz-admin-table,.pz-admin-table tbody {display:block;width:100%;}.pz-admin-table thead {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}.pz-admin-table tr {display:block;margin:0 0 11px;padding:8px 13px;border:1px solid #e8edf4;border-radius:10px;background:#fff;}.pz-admin-table td {display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid #f0f2f6;text-align:right;overflow-wrap:anywhere;}.pz-admin-table td::before {content:attr(data-label);flex:0 0 38%;color:#748099;font-weight:700;text-align:left;}.pz-admin-table td:last-child {border-bottom:0;}.pz-admin-table td[colspan] {display:block;text-align:center;}.pz-admin-table td[colspan]::before {display:none;}
 .pz-app {width:100%;max-width:100%;min-width:0;border-radius:12px;} .pz-app-shell {grid-template-columns:minmax(0,1fr);}.pz-shell,.pz-main {min-width:0;}.pz-top {padding:14px 17px;min-height:68px;}
 .pz-sidebar {padding:10px 10px 7px;gap:5px;}.pz-sidebar-brand {padding:0 4px 5px;font-size:16px;}.pz-sidebar-brand .pz-logo {width:32px;height:32px;border-radius:9px;}.pz-sidebar-brand .pz-logo svg {width:19px;height:19px;}
 .pz-side-nav {grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;}.pz-app .pz-side-link {justify-content:center;flex-direction:column;gap:3px;padding:7px 2px;font-size:10px;text-align:center;line-height:1.1;}.pz-app .pz-side-link svg {width:17px;height:17px;}.pz-sidebar-user {display:none;}
 .pz-brand {min-width:0;}.pz-brand-name {overflow-wrap:anywhere;}.pz-account>span:last-child {display:none;}
 .pz-tabs {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 7px;gap:2px;min-height:54px;overflow:visible;}
 .pz-app .pz-tab {justify-content:center;white-space:normal;text-align:center;flex-direction:column;padding:8px 3px;font-size:11px;gap:3px;min-width:0;} .pz-app .pz-tab svg {width:16px;height:16px;}
 .pz-main {padding:23px 14px 33px;} .pz-pagehead {align-items:stretch;flex-direction:column;margin-bottom:21px;gap:11px;}
 .pz-pagehead h1 {font-size:29px;}.pz-pagehead p {font-size:12px;}
 .pz-pagehead>.pz-btn {font-size:14px;padding:12px;width:100%;}.pz-pagehead>.pz-btn svg {width:19px;height:19px;}
 .pz-metrics {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;}
 .pz-metric {padding:15px;}.pz-metric-top {font-size:11px;}.pz-metric strong {font-size:22px;}
 .pz-columns {grid-template-columns:1fr;gap:14px;}.pz-card {padding:18px;}.pz-section-title {margin-bottom:16px;}
 .pz-timer-fields {gap:12px;}.pz-table-card {padding:0;}.pz-table-top {padding:16px;}
 .pz-project-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
 .pz-project-card {padding:16px;}.pz-project-stats {flex-direction:column;gap:2px;}
 .pz-filters {width:100%;}.pz-filters label {flex:1;min-width:130px;}.pz-export-buttons {width:100%;}.pz-export-buttons>.pz-btn {flex:1;}
 .pz-footer {padding:15px 14px;}.pz-report-summary strong {font-size:34px;}
 .pz-modal {width:100%;padding:20px;max-height:94dvh;}.pz-form-grid {grid-template-columns:1fr;}.pz-backdrop {padding:12px;}
 .pz-absence-metrics {grid-template-columns:1fr;gap:10px;}.pz-absence-metrics .pz-personio-card:last-child {grid-column:auto;}.pz-personio-card {padding:16px;}.pz-personio-card>strong {font-size:21px;}
 .pz-calendar-toolbar {align-items:flex-start;flex-direction:column;}.pz-calendar-controls {gap:5px;}.pz-calendar-controls strong {font-size:13px;}.pz-calendar-day {min-height:67px;padding:4px;}.pz-calendar-event {font-size:8px;padding:3px 3px;}
 .pz-absence-tabs {gap:18px;}
}
@media (max-width:400px) {
 .pz-brand-name {font-size:20px;}.pz-tabs {justify-content:stretch;}
 .pz-app .pz-tab {gap:2px;padding:8px 2px 9px;font-size:10px;}.pz-app .pz-side-link {font-size:9px;}
 .pz-metric strong {font-size:19px;}.pz-metric-top {font-size:10px;}.pz-metric-symbol {width:28px;height:28px;}
 .pz-timer-fields,.pz-metrics {grid-template-columns:1fr;}.pz-timer-actions .pz-btn {width:100%;}
 .pz-project-grid {grid-template-columns:1fr;}.pz-filters {flex-direction:column;align-items:stretch;}
 .pz-report-summary {padding:23px;}.pz-report-summary strong {font-size:30px;}
 .pz-form-grid {gap:12px;}
}
@media print {
 @page {size:A4;margin:15mm;}
 body>*:not(#pz-print-sheet) {display:none!important;}
 #pz-print-sheet {display:block!important;font:10px/1.45 Arial,Helvetica,sans-serif!important;color:#171b2a!important;}
 #pz-print-sheet .pz-print-header {display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:14px;border-bottom:2px solid #303761;}
 #pz-print-sheet h1 {font-size:25px;margin:0;}
 #pz-print-sheet .pz-print-header p {margin:2px 0;}
 #pz-print-sheet .pz-print-header>div:last-child {text-align:right;}
 #pz-print-sheet .pz-print-meta {display:flex;justify-content:space-between;gap:8px;padding:15px 0;}
 #pz-print-sheet table {border-collapse:collapse;width:100%;table-layout:fixed;}
 #pz-print-sheet td,#pz-print-sheet th {text-align:left;vertical-align:top;border:1px solid #d9dce3;padding:6px 5px;overflow-wrap:anywhere;}
 #pz-print-sheet th {background:#edf0f8;}
 #pz-print-sheet tr {break-inside:avoid;}
 #pz-print-sheet small {color:#6b7587;}
 #pz-print-sheet .pz-print-total {text-align:right;font-weight:bold;margin-top:16px;font-size:13px;}
}
