.rc-panel{margin:24px 0 30px;padding:24px 26px 18px;border:1px solid #d5e0d9;border-radius:16px;background:#fff;box-shadow:0 3px 14px #29443d04;min-width:0;position:relative;overflow:hidden}
.rc-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.rc-heading h2{display:flex;align-items:center;gap:10px;margin:0;color:var(--ink,#29443d);font-size:19px;font-weight:650;letter-spacing:-.35px;line-height:1.35}
.rc-heading h2 svg{width:22px;height:22px;fill:none;stroke:#276659;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.rc-controls{margin-bottom:24px}
.rc-ranges{display:inline-flex;gap:3px;padding:4px;border:1px solid #e1e9e4;border-radius:10px;background:#f4f7f5;max-width:100%;flex-wrap:wrap}
.rc-ranges button{padding:8px 13px;min-height:36px;border:0;border-radius:7px;background:transparent;box-shadow:none;color:#60756b;font-size:12px;font-weight:550;white-space:nowrap;line-height:1.4;transition:background .15s,color .15s}
.rc-ranges button:hover{background:#e7eee9;color:#244e40}
.rc-ranges button.is-active{background:#fff;color:#205f4e;box-shadow:0 1px 5px #234d3614}
.rc-panel button:focus-visible,.rc-plot:focus-visible{outline:2px solid #276659;outline-offset:3px}
.rc-range-mobile{display:none}
.rc-custom{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin:-8px 0 24px;padding:14px 16px;border:1px solid #e0e8e2;border-radius:10px;background:#fafcfb}
.rc-custom label{flex:1 1 140px;max-width:220px;min-width:0;color:#52695f;font-size:11px;font-weight:600}
.rc-custom input{display:block;min-width:0;width:100%;box-sizing:border-box;margin-top:6px;min-height:40px;padding:8px 9px;font:inherit;font-size:13px;background:#fff;color:var(--ink,#29443d)}
.rc-custom button,.rc-message button{min-height:40px;border:1px solid #b7ccc0;background:#eaf3ee;color:#276659;font-size:12px;padding:9px 16px;border-radius:8px;font-weight:650}
.rc-form-error{flex-basis:100%;color:#a33d34;margin:0;font-size:12px;line-height:1.5}
.rc-summary{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 20px;min-width:0}
.rc-summary>div:first-child{min-width:0}
.rc-total-label{display:block;color:#62776c;font-size:12px;margin-bottom:5px;line-height:1.5}
.rc-total{display:block;font-size:36px;font-weight:600;letter-spacing:-1.3px;line-height:1.15;color:#245d4d;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.rc-period{display:block;font-size:11px;color:#6d7e74;line-height:1.5;margin-top:9px}
.rc-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:50%;padding-bottom:2px}
.rc-badge{display:inline-block;padding:5px 8px;background:#f2f5ed;border:1px solid #e1e6d9;color:#697454;font-size:10px;border-radius:6px;line-height:1.4}
.rc-badge-muted{background:#f5f7f6;border-color:#e4e9e6;color:#697b70}
.rc-plot{position:relative;min-width:0;outline:none;border-radius:6px;touch-action:pan-y}
.rc-svg-host{width:100%;line-height:0}
.rc-svg{width:100%;height:auto;display:block;overflow:visible}
.rc-gridline{stroke:#e8eee9;stroke-width:1}
.rc-baseline{stroke:#d8e3dc}
.rc-axis-label{font-family:inherit;font-size:10px;fill:#6c7f73;font-weight:400}
.rc-missing-label{font-family:inherit;font-size:10px;fill:#85948a}
.rc-line{stroke:#2d7b61;stroke-width:2.6;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rc-single-point{fill:#2d7b61;stroke:#fff;stroke-width:1.5}
.rc-endpoint{fill:#2d7b61;stroke:#fff;stroke-width:1.5}
.rc-cursor-line{stroke:#99b2a5;stroke-width:1;stroke-dasharray:3 4}
.rc-cursor-dot{fill:#fff;stroke:#276659;stroke-width:2.5}
.rc-tooltip{position:absolute;z-index:2;min-width:130px;max-width:180px;padding:11px 13px;border-radius:10px;background:#fff;border:1px solid #d8e4dd;box-shadow:0 5px 22px #173d2920;pointer-events:none;color:#284b3b}
.rc-tooltip span{display:block;font-size:10px;color:#6b7f72;line-height:1.4}
.rc-tooltip strong{display:block;margin-top:4px;font-size:16px;font-weight:650;white-space:nowrap;letter-spacing:-.35px;font-variant-numeric:tabular-nums}
.rc-tooltip small{display:block;font-size:10px;margin-top:3px;color:#6b7f72;line-height:1.4}
.rc-legend{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding-top:12px;border-top:1px solid #edf1ed;font-size:10px;color:#728378;line-height:1.5}
.rc-legend>span:first-child{display:flex;align-items:center;gap:7px}
.rc-legend i{display:inline-block;width:16px;height:3px;border-radius:3px;background:#2d7b61}
.rc-message{display:flex;min-height:220px;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:24px 16px;color:#657a6d;gap:10px}
.rc-message p{max-width:330px;font-size:12px;line-height:1.7;margin:0}
.rc-message svg{width:38px;height:38px;fill:none;stroke:#a7bbad;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;margin-bottom:4px}
.rc-state-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid #d2dfd6;border-radius:50%;color:#657e6d;font-size:18px;font-family:Georgia,serif}
.rc-message button{margin-top:4px}
.rc-skeleton{background:linear-gradient(100deg,#edf3ef 20%,#f8faf8 45%,#edf3ef 70%);background-size:240% 100%;border-radius:5px;animation:rc-shimmer 1.6s ease-in-out infinite}
.rc-skeleton-total{width:180px;height:34px;margin:10px 0 12px}
.rc-skeleton-date{width:140px;height:11px}
.rc-loading-plot{height:250px;display:flex;flex-direction:column;justify-content:space-between;padding:30px 0 24px;position:relative;margin-left:42px;overflow:hidden}
.rc-loading-plot span{border-bottom:1px solid #edf1ed;display:block}
.rc-loading-plot i{position:absolute;inset:30px 0 24px;background:linear-gradient(0deg,#f1f7f35c,transparent);clip-path:polygon(0 80%,12% 76%,24% 82%,38% 50%,50% 63%,64% 36%,76% 44%,89% 20%,100% 27%,100% 100%,0 100%)}
.rc-sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;border:0!important;clip:rect(0,0,0,0)!important;overflow:hidden!important;white-space:nowrap!important}
@keyframes rc-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media(min-width:1350px){.rc-heading{padding-right:560px;min-height:44px;margin-bottom:12px}.rc-controls{position:absolute;right:26px;top:22px;margin:0}.rc-custom{margin:2px 0 20px}.rc-summary{margin-top:12px}}
@media(max-width:639px){
 .rc-panel{padding:19px 16px 15px;border-radius:13px;margin:22px 0 26px}
 .rc-heading{margin-bottom:14px}.rc-heading h2{font-size:18px;gap:8px}.rc-heading h2 svg{width:20px;height:20px}
 .rc-controls{margin-bottom:22px}.rc-ranges{display:none}.rc-range-mobile{display:block}.rc-range-mobile select{margin:0;width:100%;min-height:42px;padding:9px 12px;font-size:14px;font-weight:550;background:#f6f9f7;border:1px solid #dce6de;border-radius:8px;color:#35634e}
 .rc-summary{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:15px}.rc-total{font-size:32px;letter-spacing:-1px}.rc-total-label{font-size:11px}.rc-period{font-size:10px}
 .rc-badges{max-width:100%;justify-content:flex-start}.rc-badge{font-size:9px;padding:4px 7px}
 .rc-custom{gap:10px;padding:12px;margin-top:-9px}.rc-custom label{flex:1 1 calc(50% - 5px);max-width:none;font-size:10px}.rc-custom input{font-size:16px;padding:8px 6px;min-height:42px;width:100%}.rc-custom button{width:100%;min-height:40px}
 .rc-legend{font-size:9px;margin-top:5px;padding-top:10px}.rc-loading-plot{height:228px}.rc-message{min-height:210px;padding:20px 8px}
}
@media(max-width:359px){.rc-panel{padding:17px 12px 13px}.rc-total{font-size:29px}.rc-custom{padding:10px 8px;gap:8px}.rc-custom label{flex-basis:100%}.rc-heading h2{font-size:17px}}
@media(prefers-reduced-motion:reduce){.rc-skeleton{animation:none}.rc-ranges button{transition:none}}

/* The chart uses the same field and button height as the rest of the workspace. */
.rc-ranges button,.rc-range-mobile select,.rc-custom input,.rc-custom button,.rc-message button{min-height:var(--control-height,44px)}
.rc-custom{gap:16px;align-items:flex-end}
.rc-axis-label,.rc-missing-label,.rc-badge,.rc-period,.rc-custom input{font-variant-numeric:tabular-nums lining-nums}
.rc-legend{flex-wrap:wrap}
.rc-legend>span{min-width:0}
@media(min-width:1350px){.rc-heading{min-height:54px}}
@media(max-width:639px){.rc-custom{gap:12px}.rc-range-mobile select{font-size:16px}.rc-custom button{min-height:var(--control-height,44px)}}
