.ess-app,.ess-app *{box-sizing:border-box}.ess-app{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1f2937;max-width:100%;overflow-x:hidden}.ess-layout{display:grid;grid-template-columns:minmax(300px,420px) minmax(0,1fr);gap:20px;max-width:100%}.ess-panel{background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 4px 14px rgba(0,0,0,.05);max-width:100%}font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1f2937}.ess-layout{display:grid;grid-template-columns:minmax(300px,420px) minmax(0,1fr);gap:20px}.ess-panel{background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 4px 14px rgba(0,0,0,.05)}.ess-card-body{padding:20px}.ess-panel h3{margin:0 0 14px;font-size:22px}.ess-sub{font-size:13px;color:#6b7280}.ess-field{margin-bottom:14px}.ess-field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}.ess-field input[type=text],.ess-field input[type=number],.ess-field input[type=month]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:12px;box-sizing:border-box;font-size:15px}.ess-grid{display:grid;gap:12px}.ess-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ess-grid-2 > .ess-field{min-width:0}.ess-field input[type=month]{display:block;min-width:0;max-width:100%;width:100%;-webkit-appearance:none;appearance:none}.ess-fieldset{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.ess-field-inline{display:flex;flex-wrap:wrap;gap:14px;font-size:14px}.ess-toggle-row{display:flex;justify-content:flex-start}.ess-toggle-btn,.ess-btn{appearance:none;border:1px solid #cbd5e1;background:#fff;padding:10px 14px;border-radius:12px;font-size:14px;cursor:pointer}.ess-btn-primary{background:#0f62fe;border-color:#0f62fe;color:#fff}.ess-actions{display:grid;gap:10px;margin-top:16px}.ess-parts-collapsed{margin-top:12px}.ess-part-row{border:1px solid #e5e7eb;border-radius:14px;padding:14px;margin-bottom:12px;background:#fafafa}.ess-part-title{font-weight:700;margin-bottom:10px}.ess-headline-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.ess-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.ess-kpi-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ess-kpi-box{border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#f8fafc}.ess-kpi-accent{background:#ecfdf5;border-color:#b7e4c7}.ess-kpi-label{font-size:11px;color:#6b7280;margin-bottom:6px;white-space:nowrap;word-break:keep-all;letter-spacing:-0.01em}.ess-kpi-value{font-size:clamp(22px,2.2vw,30px);font-weight:800;line-height:1.15;white-space:nowrap;word-break:keep-all;letter-spacing:-0.02em}.ess-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.ess-note-box{background:#e0f2fe;border:1px solid #7dd3fc;border-radius:12px;padding:14px;font-size:14px;line-height:1.6}.ess-note-box-alt{background:#fef3c7;border-color:#fcd34d}.ess-chart-card{position:relative;border:1px solid #e5e7eb;border-radius:16px;padding:12px;background:#fff;min-height:320px}.ess-chart-card canvas{width:100%!important;height:340px!important}.ess-summary-table-wrap{margin-top:16px;overflow:auto}.ess-summary-table{width:100%;border-collapse:collapse;font-size:14px}.ess-summary-table th,.ess-summary-table td{border:1px solid #e5e7eb;padding:10px;text-align:left;word-break:break-word}.ess-summary-table th{width:34%;background:#f8fafc}.ess-event-legend-wrap{margin-top:16px}.ess-event-title{font-size:13px;font-weight:700;margin-bottom:6px}.ess-event-legend{font-size:13px;color:#6b7280;line-height:1.7}.ess-chart-modal{position:fixed;inset:0;display:none;z-index:99999}.ess-chart-modal.is-open{display:block}.ess-chart-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.56)}.ess-chart-modal-dialog{position:relative;margin:2vh auto;background:#fff;border-radius:18px;max-width:1200px;width:min(96vw,1200px);padding:14px;max-height:96vh;overflow:auto}.ess-modal-topbar{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}.ess-modal-title{font-size:20px;font-weight:800}.ess-modal-property{font-size:13px;color:#374151;margin-top:4px}.ess-modal-actions{display:flex;gap:8px;flex-wrap:wrap}.ess-modal-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:8px}.ess-modal-kpi{border:1px solid #e5e7eb;border-radius:14px;padding:8px 10px;background:#f8fafc;min-height:72px}.ess-modal-kpi-accent{background:#ecfdf5;border-color:#b7e4c7}.ess-modal-kpi-label{font-size:10px;color:#6b7280;margin-bottom:4px;white-space:nowrap;word-break:keep-all;letter-spacing:-0.01em}.ess-modal-kpi-value{font-size:clamp(15px,1.4vw,18px);font-weight:800;line-height:1.2;white-space:nowrap;word-break:keep-all;letter-spacing:-0.02em}.ess-chart-modal-canvas-wrap{border:1px solid #e5e7eb;border-radius:16px;padding:8px;background:#fff}.ess-chart-modal-canvas-wrap canvas{width:100%!important;height:56vh!important;min-height:280px}.ess-print-hide{}@media (max-width: 1024px){.ess-layout{grid-template-columns:1fr}.ess-panel-form{order:2}.ess-panel{order:1}}@media (max-width: 767px){.ess-grid-2,.ess-kpi-grid,.ess-kpi-grid-4,.ess-note-grid{grid-template-columns:1fr}.ess-kpi-value{font-size:24px}.ess-modal-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (orientation:landscape) and (max-width: 1024px){.ess-chart-modal-dialog{padding:10px}.ess-modal-kpis{gap:6px}.ess-modal-kpi{padding:7px 8px;min-height:62px}.ess-modal-kpi-label{font-size:10px}.ess-modal-kpi-value{font-size:16px}.ess-chart-modal-canvas-wrap canvas{height:64vh!important}} 

.ess-history-panel{margin-top:12px;border:1px solid #e5e7eb;border-radius:14px;padding:12px;background:#fff}
.ess-history-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.ess-history-title{font-weight:800;font-size:16px}.ess-history-actions{display:flex;gap:8px;flex-wrap:wrap}.ess-history-list{display:grid;gap:10px}
.ess-history-item{display:flex;gap:10px;align-items:flex-start;border:1px solid #e5e7eb;border-radius:12px;padding:10px;background:#f8fafc;cursor:pointer}.ess-history-item input{margin-top:4px}
.ess-history-item-title{font-weight:700;margin-bottom:4px}.ess-history-item-meta{font-size:12px;color:#6b7280;margin-bottom:6px}.ess-history-item-kpis{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:#374151}.ess-history-empty{font-size:13px;color:#6b7280;padding:8px 0}
.ess-chart-card,.ess-chart-modal-canvas-wrap,.ess-summary-table-wrap,.ess-history-panel{max-width:100%;overflow-x:hidden}
.ess-note-grid > [hidden]{display:none!important}
.ess-history-item{display:grid;grid-template-columns:auto 1fr auto;align-items:flex-start}
.ess-history-item-main{min-width:0}.ess-history-item-side{display:flex;align-items:center}
@media (max-width: 767px){.ess-card-body{padding:16px}.ess-history-item{grid-template-columns:auto 1fr}.ess-history-item-side{grid-column:2;justify-content:flex-end;margin-top:8px}.ess-modal-kpi-value,.ess-kpi-value{font-size:clamp(20px,6vw,24px)} .ess-kpi-label,.ess-modal-kpi-label{font-size:10px}}


.ess-optional{font-size:11px;color:#6b7280;font-weight:500}
.ess-grid-3-lite{grid-template-columns:repeat(3,minmax(0,1fr))}
.ess-chart-marker-note{font-size:12px;color:#4b5563;margin:6px 0 10px;line-height:1.6}
.ess-chart-marker-note-modal{margin:2px 0 8px}
@media (max-width: 900px){.ess-grid-3-lite{grid-template-columns:1fr}}

.ess-result-controls{margin:10px 0 12px;align-items:center;gap:12px}.ess-control-sep{color:#9ca3af}.ess-control-label{font-size:13px;color:#4b5563;font-weight:700}.ess-result-controls label{font-size:14px}.ess-summary-table th{white-space:nowrap}.ess-chart-card .chartjs-render-monitor{max-width:100%}
