.eco-pt{--green:#063c32;--orange:#f16a25;--muted:#6b7781;--line:#e2e8e7;color:#172d32;font-family:inherit}.eco-pt *{box-sizing:border-box}.eco-pt__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.eco-pt__head>div>span{color:var(--orange);font-size:12px;font-weight:700}.eco-pt__head h2{margin:2px 0 1px;font-size:21px;color:var(--green)}.eco-pt__head small{color:var(--muted)}.eco-pt__tools{display:flex;gap:9px}.eco-pt__tools select,.eco-pt__search{height:42px;border:1px solid #d5e0dd;border-radius:9px;background:#fff}.eco-pt__tools select{width:175px;padding:0 10px;color:#42585d;font:inherit;font-size:12px}.eco-pt__search{position:relative;display:flex;align-items:center;width:230px}.eco-pt__search span{position:absolute;right:11px;color:#758984;font-size:20px}.eco-pt__search input{width:100%;height:100%;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:0 36px 0 10px!important;font:inherit;font-size:12px}.eco-pt__quick{display:flex;gap:8px;overflow:auto;padding:2px 0 13px;scrollbar-width:thin}.eco-pt__quick a{flex:0 0 auto;display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#425c60;font-size:11px;text-decoration:none}.eco-pt__quick a:hover{border-color:var(--green);color:var(--green)}.eco-pt__quick small{background:#edf4f1;border-radius:10px;padding:0 6px}.eco-pt__group{scroll-margin-top:100px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:18px;box-shadow:0 5px 20px rgba(6,60,50,.035)}.eco-pt__group-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;background:#eaf3ef;border-bottom:1px solid #d5e3de}.eco-pt__group-title h3{margin:0;color:var(--green);font-size:14px}.eco-pt__group-title span{color:var(--muted);font-size:10px}.eco-pt__table-wrap{overflow:auto}.eco-pt table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:11px}.eco-pt th{padding:12px 10px;background:#f7f9f8;color:#496366;text-align:right;font-weight:600;border-bottom:1px solid var(--line)}.eco-pt td{padding:12px 10px;border-bottom:1px solid var(--line);color:#405852;vertical-align:middle}.eco-pt tbody tr:last-child td{border-bottom:0}.eco-pt tbody tr:hover{background:#fbfdfc}.eco-pt td strong{display:block;color:#173b35;font-size:11px}.eco-pt td>small{display:block;color:#84938f;font-size:9px}.eco-pt__price{color:var(--green)!important;font-weight:700}.eco-pt__price span{color:#9a641f}.eco-pt__order{display:flex;align-items:center;gap:7px}.eco-pt__qty{display:grid;grid-template-columns:25px 48px 25px;height:32px;border:1px solid #ccd9d5;border-radius:7px;overflow:hidden;background:#fff}.eco-pt__qty button{border:0;background:#edf4f1;color:var(--green);cursor:pointer;font-size:15px}.eco-pt__qty input{min-width:0;width:100%;border:0!important;border-radius:0!important;padding:0 3px!important;text-align:center;font:inherit;box-shadow:none!important;-moz-appearance:textfield}.eco-pt__qty input::-webkit-inner-spin-button{appearance:none}.eco-pt__add{height:32px;border:0;border-radius:7px;background:var(--green);color:#fff;padding:0 10px;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.eco-pt__add:hover{background:#0a5143}.eco-pt__details{display:inline-block;color:var(--orange);font-size:10px;font-weight:600;text-decoration:none}.eco-pt__empty,.eco-pt__no-match{padding:35px;text-align:center;background:#fff;border:1px dashed #bacbc6;border-radius:10px;color:var(--muted)}
@media(max-width:767px){.eco-pt__head{display:block}.eco-pt__tools{margin-top:13px}.eco-pt__search{flex:1;width:auto}.eco-pt__tools select{width:145px}.eco-pt__table-wrap{overflow:visible}.eco-pt table,.eco-pt tbody{display:block}.eco-pt thead{display:none}.eco-pt tr{display:grid;grid-template-columns:1fr 1fr;padding:13px 14px;border-bottom:1px solid var(--line);gap:7px 12px}.eco-pt tr:last-child{border-bottom:0}.eco-pt td{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0;border:0!important;white-space:normal;text-align:left;min-width:0}.eco-pt td:before{content:attr(data-label);color:#82918d;font-size:9px;text-align:right}.eco-pt td:first-child{grid-column:1/-1;display:block;padding-bottom:8px;border-bottom:1px dashed #dce5e2!important;text-align:right}.eco-pt td:first-child:before{display:none}.eco-pt td:nth-last-child(2),.eco-pt td:last-child{grid-column:1/-1}.eco-pt__order{width:100%;justify-content:flex-end}.eco-pt__details{padding:7px 10px;background:#fff4ec;border-radius:6px}.eco-pt__group-title{padding:11px 14px}}
@media(max-width:480px){.eco-pt__tools{display:grid;grid-template-columns:1fr}.eco-pt__tools select,.eco-pt__search{width:100%}.eco-pt tr{grid-template-columns:1fr}.eco-pt td,.eco-pt td:nth-last-child(2),.eco-pt td:last-child{grid-column:1}.eco-pt td:first-child{grid-column:1}.eco-pt__order{justify-content:space-between}.eco-pt__qty{grid-template-columns:28px 55px 28px}.eco-pt__add{flex:1}}

/* Stable table sizing and chart modal. */
.eco-pt table{min-width:1050px}.eco-pt__name-col,.eco-pt__name{width:260px;min-width:260px;white-space:normal}.eco-pt__order-col,.eco-pt__order-cell{width:125px;min-width:125px}.eco-pt__unit-col{width:65px}.eco-pt__price-col{width:120px}.eco-pt__chart-col{width:115px}.eco-pt__add,.eco-pt__details{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;min-width:82px;border-radius:7px;padding:0 10px;font:inherit;font-size:10px;font-weight:700;white-space:nowrap;cursor:pointer;transition:background .16s,color .16s,border-color .16s}.eco-pt__add{border:1px solid var(--green);background:var(--green);color:#fff}.eco-pt__details{border:1px solid #d7e2de;background:#fff;color:var(--green)}.eco-pt__add span,.eco-pt__details span{font-size:13px;line-height:1}.eco-pt__add:hover{background:#0a5143}.eco-pt__details:hover{border-color:var(--orange);color:var(--orange);background:#fff8f3}
.eco-pt__modal{width:min(900px,94vw);max-height:90vh;border:0;border-radius:16px;padding:25px;overflow:auto;color:#172d32;box-shadow:0 22px 90px rgba(6,60,50,.25)}.eco-pt__modal::backdrop{background:rgba(10,38,34,.62);backdrop-filter:blur(2px)}.eco-pt__modal-close{position:absolute;left:17px;top:16px;width:34px;height:34px;border:0;border-radius:50%;background:#edf3f1;color:var(--green);font-size:22px;cursor:pointer}.eco-pt__modal-head span{color:var(--orange);font-size:11px;font-weight:700}.eco-pt__modal-head h3{margin:2px 0 13px;padding-left:45px;color:var(--green);font-size:18px}.eco-pt__periods{display:inline-flex;gap:3px;padding:4px;background:#eef4f2;border-radius:9px}.eco-pt__periods button{border:0;border-radius:7px;background:transparent;color:#49635e;padding:7px 14px;font:inherit;font-size:11px;cursor:pointer}.eco-pt__periods button.is-active{background:var(--green);color:#fff}.eco-pt__chart-summary{min-height:30px;padding-top:10px;color:var(--muted);font-size:11px}.eco-pt__chart-summary strong{color:var(--green);font-size:13px}.eco-pt__chart{min-height:300px;direction:ltr}.eco-pt__chart svg{display:block;width:100%;height:auto;min-height:280px}.eco-pt__chart line{stroke:#e2e8e7}.eco-pt__chart text{fill:#6b7781;font-size:11px;text-anchor:end}.eco-pt__chart text.date{text-anchor:middle}.eco-pt__chart path.line{fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.eco-pt__chart circle{fill:var(--orange);stroke:#fff;stroke-width:2}.eco-pt__chart-state{height:280px;display:grid;place-items:center;background:#f7faf9;border-radius:10px;color:var(--muted)}.eco-pt__chart-state.is-error{color:#9a3253}.eco-pt__product-link{display:block;border-top:1px solid var(--line);padding-top:12px;color:var(--orange);font-size:11px;text-decoration:none}
@media(max-width:767px){.eco-pt table,.eco-pt tbody{min-width:0!important}.eco-pt td{width:auto;min-width:0}.eco-pt td.eco-pt__name{grid-column:1/-1;display:block;width:auto;min-width:0;padding-bottom:8px;border-bottom:1px dashed #dce5e2!important;text-align:right}.eco-pt td.eco-pt__name:before{display:none}.eco-pt__order-cell{grid-column:1/-1}.eco-pt__order{width:100%;min-width:0}.eco-pt__modal{padding:20px 15px}.eco-pt__chart{min-height:245px}.eco-pt__chart svg{min-height:225px}}

/* Unified section appearance. */
.eco-pt{background:#fff;border:1px solid var(--line);border-radius:15px;padding:24px;box-shadow:0 7px 28px rgba(6,60,50,.045);overflow:hidden}.eco-pt__head{padding-bottom:18px;border-bottom:1px solid var(--line)}.eco-pt__head h2{font-size:23px;line-height:1.55}.eco-pt__quick{padding:15px 0}.eco-pt__quick a{background:#f3f7f5;border-color:#dce7e3;color:var(--green);font-weight:700}.eco-pt__group{border-color:#d6e3df;box-shadow:none;margin-bottom:20px}.eco-pt__group:last-of-type{margin-bottom:0}.eco-pt__group-title{padding:15px 18px;background:linear-gradient(90deg,#edf7f3,#e5f1ed);border-bottom:2px solid var(--green)}.eco-pt__group-title h3{font-size:15px;font-weight:800}.eco-pt__group-title span{display:inline-flex;align-items:center;gap:4px;color:#526b65;font-size:12px;font-weight:600}.eco-pt__group-title span b{color:var(--green);font-size:14px;font-weight:800}.eco-pt th{height:48px;background:var(--green);color:#fff;font-size:11px;font-weight:700;text-align:center;border:0}.eco-pt td{text-align:center;height:62px;padding:12px;border-color:#dfe8e5}.eco-pt tbody tr:nth-child(odd){background:#fff}.eco-pt tbody tr:nth-child(even){background:#f0faf6}.eco-pt tbody tr:hover{background:#e8f6f0}.eco-pt__name{text-align:right!important}.eco-pt__price{font-size:12px}.eco-pt__qty{border-color:#b9cec7}.eco-pt__qty button{background:#e4f0ec;font-weight:800}.eco-pt__add{box-shadow:0 3px 9px rgba(6,60,50,.13)}
@media(max-width:767px){.eco-pt{padding:16px;border-radius:12px}.eco-pt__head h2{font-size:20px}.eco-pt__group-title{align-items:flex-start;flex-direction:column;padding:12px 14px}.eco-pt__group-title span{font-size:11px}.eco-pt__group-title span b{font-size:13px}.eco-pt tbody tr:nth-child(even){background:#f0faf6}.eco-pt td{height:auto;text-align:left}.eco-pt td.eco-pt__name{text-align:right!important}}
@media(max-width:480px){.eco-pt__add,.eco-pt__details{flex:0 0 auto;min-width:78px;height:29px;padding:0 9px}}
