.page-toolbar{justify-content:center}.page-toolbar h1{margin:1rem 0 1rem}.rp-filters{display:flex;flex-wrap:wrap;gap:.6rem .9rem;align-items:flex-end;margin:0 0 1rem}.rp-filters .form-select,.rp-filters .form-control{box-sizing:border-box;height:2.4rem;min-width:10rem;width:auto;font-size:.9rem}.rp-field{display:flex;flex-direction:column;gap:.3rem}.rp-field label{font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--vc-muted, #6b7280)}@media (max-width:560px){.rp-field{flex:1 1 100%}.rp-field .form-select,.rp-field .form-control{width:100%}}.rp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;justify-content:flex-end;margin-left:auto}.rp-actions .btn{height:2.4rem}.rp-updating{display:inline-flex;align-items:center;gap:.4rem;color:var(--vc-muted, #6b7280);font-size:.9rem}.rp-updating .material-symbols-outlined{font-size:1.1rem}.rp-range-nav{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border:1px solid #e8eaf0;border-radius:10px;background:#fff}.rp-range{margin:0;color:var(--vc-muted, #6b7280);font-size:.9rem;font-weight:600}.rp-content{transition:opacity .15s ease}.rp-content.is-busy{opacity:.5;pointer-events:none}.rp-kpis{display:grid;grid-template-columns:repeat(auto-fit, minmax(10rem, 1fr));gap:1rem;margin:0 0 1.25rem}.rp-kpi{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.25rem;border:1px solid #e8eaf0;border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(31,41,51,0.05)}.rp-kpi-label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--vc-muted, #6b7280)}.rp-kpi-dot{display:inline-block;width:.55rem;height:.55rem;margin-right:.4rem;border-radius:50%}.rp-kpi-dot.rp-kpi-dot-billable{background:#16a34a}.rp-kpi-dot.rp-kpi-dot-nonbillable{background:#94a3b8}.rp-kpi-value{font-size:1.4rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--vc-text, #2b2b2b)}.rp-kpi.rp-kpi-accent{border-color:#bbf7d0;background:#f0fdf4}.rp-kpi.rp-kpi-accent .rp-kpi-value{color:#16a34a}.rp-delta{align-self:flex-start;margin-top:.1rem;font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.rp-delta.is-better{color:#16a34a}.rp-delta.is-worse{color:#dc2626}.rp-delta.is-flat{color:var(--vc-muted, #6b7280)}.rp-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:1rem;margin:0 0 2rem}.rp-card{display:flex;flex-direction:column;padding:1.1rem 1.25rem 1.25rem;border:1px solid #e8eaf0;border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(31,41,51,0.05)}.rp-card-wide{grid-column:1 / -1}.rp-card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1rem}.rp-card-head h2{margin:0;font-size:1.05rem;font-weight:700;color:var(--vc-text, #2b2b2b)}.rp-card-note{margin:.85rem 0 0;text-align:center;line-height:1.5;color:var(--vc-muted, #6b7280);font-size:.9rem}.rp-toggle{display:inline-flex;border:1px solid #e8eaf0;border-radius:999px;overflow:hidden;background:#f7f8ff}.rp-toggle-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;border:0;background:transparent;color:var(--vc-muted, #6b7280);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.rp-toggle-btn .material-symbols-outlined{font-size:1.1rem}.rp-toggle-btn.is-active{background:#ff6a00;color:#fff}@media (max-width:480px){.rp-toggle-text{display:none}}.rp-legend{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center;margin:.85rem 0 0;font-size:.85rem;color:var(--vc-muted, #6b7280)}.rp-legend-item{display:inline-flex;align-items:center;gap:.4rem}.rp-swatch{display:inline-block;width:.85rem;height:.85rem;border-radius:3px}.rp-swatch.rp-swatch-billable{background:#16a34a}.rp-swatch.rp-swatch-nonbillable{background:#94a3b8}.rp-trend-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.25rem;margin-top:.85rem}.rp-trend-foot .rp-legend{margin:0;justify-content:flex-start}.rp-line-swatch{display:inline-block;width:1.1rem;height:0;border-top:3px solid #ff6a00}.rp-line-swatch.rp-line-swatch-previous{border-top:3px dashed #94a3b8}.rp-compare-line{display:inline-flex;align-items:center;gap:.45rem;color:var(--vc-text, #2b2b2b);font-size:.85rem;cursor:pointer;user-select:none}.rp-compare-line input{width:.95rem;height:.95rem;accent-color:#ff6a00;cursor:pointer}.chart{margin:0}.chart-caption{margin:.6rem 0 0;text-align:center;color:var(--vc-muted, #6b7280);font-size:.85rem}.chart-empty{margin:1.5rem 0;text-align:center;color:var(--vc-muted, #6b7280);font-size:.9rem}.chart-donut{display:flex;flex-direction:column;align-items:center}.chart-donut-ring{position:relative;width:160px;max-width:100%}.chart-donut-svg{display:block;width:100%;height:auto;transform:rotate(0deg)}.chart-donut-track{fill:none;stroke:#eef0f4;stroke-width:3.4}.chart-donut-value{fill:none;stroke:#ff6a00;stroke-width:3.4;stroke-linecap:round;transition:stroke-dasharray .4s ease}.chart-donut-billable .chart-donut-value{stroke:#16a34a}.chart-donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.chart-donut-figure{font-size:1.9rem;font-weight:700;line-height:1;color:var(--vc-text, #2b2b2b)}.chart-donut-caption{margin-top:.2rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--vc-muted, #6b7280)}.chart-bars-list{display:flex;flex-direction:column;gap:.6rem}.chart-bar-row{display:grid;grid-template-columns:minmax(6rem, 11rem) 1fr auto;align-items:center;gap:.75rem}.chart-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;color:var(--vc-text, #2b2b2b)}.chart-bar-track{position:relative;height:.85rem;border-radius:999px;background:#eef0f4;overflow:hidden}.chart-bar-fill{position:absolute;top:0;bottom:0;left:0;display:flex;border-radius:999px;overflow:hidden;transition:width .4s ease}.chart-bar-seg{height:100%}.chart-bar-seg-primary{background:linear-gradient(90deg, #ff8a3d, #ff6a00)}.chart-bar-seg-secondary{background:#94a3b8}.chart-bars-split .chart-bar-seg-primary{background:#16a34a}.chart-bar-value{font-size:.9rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--vc-text, #2b2b2b)}@media (max-width:520px){.chart-bar-row{grid-template-columns:1fr auto}.chart-bar-track{grid-column:1 / -1;order:3}}.chart-columns-svg,.chart-line-svg{display:block;width:100%;height:auto}.chart-axis{stroke:#e8eaf0;stroke-width:1}.chart-grid{stroke:#eef0f4;stroke-width:1}.chart-axis-label{fill:#6b7280;font-size:18px;font-family:inherit}.chart-col-primary{fill:#16a34a}.chart-col-secondary{fill:#94a3b8}.chart-col-label{fill:#6b7280;font-size:20px;font-family:inherit}.chart-line-stroke{fill:none;stroke:#ff6a00;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.chart-line-area{fill:rgba(255,106,0,0.12);stroke:none}.chart-line-dot{fill:#fff;stroke:#ff6a00;stroke-width:2.5}.chart-line-compare{fill:none;stroke:#94a3b8;stroke-width:2.5;stroke-dasharray:6 5;stroke-linejoin:round;stroke-linecap:round}.rp-empty{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:540px;margin:2rem auto;padding:clamp(2rem, 5vw, 3.5rem) 1.5rem;border:1px solid #e8eaf0;border-radius:16px;background:linear-gradient(180deg, #ffffff 0%, #f9faff 100%)}.rp-empty-icon{display:flex;align-items:center;justify-content:center;width:4.5rem;height:4.5rem;margin-bottom:1.25rem;border-radius:50%;background:#fff3e8;color:var(--vc-accent, #ff6a00);font-size:2.4rem}.rp-empty p{margin:0;max-width:42ch;line-height:1.6;color:var(--vc-muted, #6b7280)}.rp-notice{display:flex;align-items:flex-start;gap:.85rem;max-width:720px;margin:0 auto 1.5rem;padding:20px;border:1px solid #ffd9b3;border-left:4px solid var(--vc-accent, #ff6a00);border-radius:10px;background-color:#fff7f0}.rp-notice-icon{color:var(--vc-accent, #ff6a00);font-size:1.6rem;line-height:1.4}.rp-notice p{margin:0;line-height:1.55;color:var(--vc-text, #2b2b2b)}.rp-intro-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem auto 40px;padding:30px;border-radius:10px;justify-content:center;align-items:center;border:solid 1px #ccc;max-width:700px;background-color:#f7f8ff}.rp-intro{max-width:760px;margin:0 auto}.rp-intro .rp-intro-lead{font-size:1.4rem;font-weight:500}.rp-intro p{margin:0 0 1.1rem;max-width:70ch;line-height:1.65;color:var(--vc-text, #2b2b2b);font-size:1.2rem}.rp-faqs{margin-top:clamp(2.5rem, 6vw, 4rem)}