/* ParkAtlas 2.0 – Phase 4: Tarif-Einzüge */
.pa-phase4-admin{display:grid;gap:22px}.pa-phase4-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding:30px;border-radius:24px;background:linear-gradient(135deg,#071d36 0%,#0b3154 58%,#0e7490 145%);color:#fff;box-shadow:0 22px 55px rgba(7,29,54,.16)}.pa-phase4-hero h1{margin:.2rem 0 .55rem;font-size:clamp(2rem,4vw,3.35rem);color:#fff}.pa-phase4-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.78);font-size:1.02rem}.pa-phase4-mode{min-width:260px;padding:18px 20px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px)}.pa-phase4-mode small,.pa-phase4-mode span{display:block;color:rgba(255,255,255,.72)}.pa-phase4-mode strong{display:block;margin:5px 0 7px;font-size:1.05rem}.pa-phase4-mode.is-safe strong{color:#99f6e4}.pa-phase4-mode.is-live strong{color:#fde68a}
.pa-phase4-safety{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pa-phase4-safety>div{display:flex;gap:12px;align-items:flex-start;padding:17px;border:1px solid #dbe7ee;border-radius:18px;background:#fff;box-shadow:0 9px 25px rgba(7,29,54,.06)}.pa-phase4-safety>div>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:11px;background:#e6fffb;color:#0f766e;font-weight:800}.pa-phase4-safety strong,.pa-phase4-safety p{display:block}.pa-phase4-safety p{margin:4px 0 0;color:#66788a;font-size:.88rem;line-height:1.45}
.pa-phase4-controls{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:18px 20px}.pa-phase4-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.pa-phase4-filter label{display:grid;gap:6px;font-size:.82rem;font-weight:700;color:#30485d}.pa-phase4-filter input,.pa-phase4-filter select{min-height:44px;padding:0 13px;border:1px solid #cad8e3;border-radius:12px;background:#fff;color:#102a43}.pa-phase4-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.pa-phase4-kpis article{padding:18px;border:1px solid #dce7ee;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(7,29,54,.06)}.pa-phase4-kpis small,.pa-phase4-kpis span{display:block;color:#708395}.pa-phase4-kpis strong{display:block;margin:7px 0 4px;font-size:1.7rem;color:#08253f}.pa-phase4-kpis span{font-size:.82rem}
.pa-phase4-job-list{display:grid;gap:13px}.pa-phase4-job{display:grid;grid-template-columns:minmax(240px,1.25fr) minmax(220px,1fr) minmax(120px,.45fr) minmax(170px,.55fr);gap:16px;align-items:center;padding:17px;border:1px solid #dbe6ed;border-left:5px solid #94a3b8;border-radius:18px;background:#fff;box-shadow:0 7px 22px rgba(7,29,54,.05)}.pa-phase4-job.status-ready{border-left-color:#0e7490}.pa-phase4-job.status-approved{border-left-color:#2563eb}.pa-phase4-job.status-submitted,.pa-phase4-job.status-processing{border-left-color:#7c3aed}.pa-phase4-job.status-paid{border-left-color:#16a34a}.pa-phase4-job.status-failed,.pa-phase4-job.status-blocked{border-left-color:#dc2626}.pa-phase4-job-main{display:flex;align-items:center;gap:12px;min-width:0}.pa-phase4-company-mark{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:13px;background:#eaf6f8;color:#0e7490;font-weight:900}.pa-phase4-job-main>div{min-width:0}.pa-phase4-job-main strong,.pa-phase4-job-main small,.pa-phase4-job-main span{display:block}.pa-phase4-job-main strong{font-size:1rem;color:#0b2a43;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pa-phase4-job-main small,.pa-phase4-job-main span{margin-top:3px;color:#718497;font-size:.8rem}.pa-phase4-job-status{display:grid;gap:5px}.pa-phase4-job-status small{color:#728397;font-size:.78rem;line-height:1.4}.pa-phase4-job-status .is-error{color:#b91c1c}.pa-pay-status{display:inline-flex;width:max-content;align-items:center;padding:6px 10px;border-radius:999px;background:#eef2f6;color:#475569;font-size:.76rem;font-weight:800}.pa-pay-status.status-ready{background:#e6fffb;color:#0f766e}.pa-pay-status.status-approved{background:#dbeafe;color:#1d4ed8}.pa-pay-status.status-processing,.pa-pay-status.status-submitted{background:#ede9fe;color:#6d28d9}.pa-pay-status.status-paid{background:#dcfce7;color:#15803d}.pa-pay-status.status-failed,.pa-pay-status.status-blocked{background:#fee2e2;color:#b91c1c}.pa-pay-status.status-cancelled{background:#f1f5f9;color:#64748b}.pa-phase4-job-amount{text-align:right}.pa-phase4-job-amount small,.pa-phase4-job-amount a{display:block}.pa-phase4-job-amount small{color:#7a8b9a}.pa-phase4-job-amount strong{display:block;margin:4px 0;color:#0b2a43;font-size:1.25rem}.pa-phase4-job-amount a{font-size:.8rem}.pa-phase4-job-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.pa-phase4-job-actions form{margin:0}.pa-phase4-job-actions .btn{min-height:38px;padding:8px 12px;font-size:.8rem}.pa-text-button{border:0;background:transparent;color:#617487;text-decoration:underline;cursor:pointer;font:inherit;font-size:.76rem;padding:7px}
.pa-phase4-upgrade{padding:30px;border:1px solid #dbe7ee;border-radius:24px;background:#fff;box-shadow:0 20px 50px rgba(7,29,54,.08)}.pa-phase4-upgrade h1{margin:.25rem 0 .6rem}.pa-phase4-message-list{display:grid;gap:8px;margin:20px 0;padding:0;list-style:none}.pa-phase4-message-list li{padding:12px 14px;border-radius:12px;background:#f4f8fb;color:#29435a}.pa-phase4-inline-link{margin-top:14px}
.pa-phase4-partner-payment{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid #cfe5e8;border-radius:18px;background:linear-gradient(135deg,#f0fdfa,#f8fbff)}.pa-phase4-partner-payment>div{display:flex;align-items:center;gap:13px}.pa-phase4-partner-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#0e7490;color:#fff;font-size:1.2rem;font-weight:900}.pa-phase4-partner-payment strong,.pa-phase4-partner-payment p{display:block}.pa-phase4-partner-payment p{margin:4px 0 0;color:#5f7385}.pa-statement-payment-status{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px 0;padding:15px 17px;border:1px solid #d9e6ed;border-radius:15px;background:#f8fbfd}.pa-statement-payment-status small,.pa-statement-payment-status strong,.pa-statement-payment-status span{display:block}.pa-statement-payment-status strong{margin:3px 0;color:#0b2a43}.pa-statement-payment-status.status-paid{border-color:#bbf7d0;background:#f0fdf4}.pa-statement-payment-status.status-failed,.pa-statement-payment-status.status-blocked{border-color:#fecaca;background:#fff7f7}
@media(max-width:1180px){.pa-phase4-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.pa-phase4-job{grid-template-columns:1fr 1fr}.pa-phase4-job-amount{text-align:left}.pa-phase4-job-actions{justify-content:flex-start}.pa-phase4-safety{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.pa-phase4-hero,.pa-phase4-controls,.pa-phase4-partner-payment,.pa-statement-payment-status{align-items:stretch;flex-direction:column}.pa-phase4-mode{min-width:0}.pa-phase4-safety,.pa-phase4-kpis{grid-template-columns:1fr}.pa-phase4-filter{display:grid;grid-template-columns:1fr;width:100%}.pa-phase4-filter label,.pa-phase4-filter input,.pa-phase4-filter select,.pa-phase4-filter .btn{width:100%}.pa-phase4-job{grid-template-columns:1fr}.pa-phase4-job-amount{text-align:left}.pa-phase4-job-actions{justify-content:flex-start}.pa-phase4-job-actions form,.pa-phase4-job-actions .btn{width:100%}.pa-phase4-job-actions .btn{justify-content:center}.pa-phase4-partner-payment .btn{width:100%;text-align:center}}
@media print{.pa-phase4-admin .site-header,.pa-phase4-admin .pa-admin-nav,.pa-phase4-job-actions{display:none!important}}
