.product-page {min-width:0}
.product-back {display:inline-flex;margin-bottom:18px;color:var(--muted);font-size:14px;text-decoration:none}
.product-back:hover {color:var(--ink)}
.product-page-heading {display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}
.product-page-heading h1 {margin:0;max-width:1040px;font-size:clamp(23px,2.1vw,32px);line-height:1.3;letter-spacing:-.6px;overflow-wrap:anywhere}
.product-page-heading p {display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0;color:var(--muted);font-size:14px}
.product-page-heading>.button {flex-shrink:0}
.product-page-filters {display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;padding:16px;margin-bottom:18px;overflow:visible;position:relative;z-index:8}
.product-page-filters>label,.product-cabinet-field {display:flex;flex-direction:column;gap:7px;font-size:12px;color:var(--muted)}
.product-page-filters select,.product-page-filters input[type=month],.product-cabinet-picker>summary {min-height:42px;border:1px solid var(--line);border-radius:8px;background:var(--surface-subtle);color:var(--ink);font:inherit;font-size:14px;padding:9px 12px}
.product-page-filters select {min-width:130px;max-width:220px}
.product-page-filters input[type=month] {max-width:178px}
.product-page-filters>.form-error:empty {display:none}
.product-page-filters>.form-error {width:100%;margin:0}
.product-cabinet-picker {position:relative;min-width:180px}
.product-cabinet-picker>summary {display:flex;justify-content:space-between;align-items:center;gap:14px;cursor:pointer;list-style:none}
.product-cabinet-picker>summary::-webkit-details-marker {display:none}
.product-cabinet-options {position:absolute;top:calc(100% + 7px);left:0;z-index:10;min-width:240px;max-height:320px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 12px 32px var(--theme-shadow-color,#0007)}
.product-cabinet-options>label {display:flex;align-items:center;gap:10px;min-height:38px;padding:8px 10px;border-radius:6px;color:var(--ink);font-size:14px;cursor:pointer}
.product-cabinet-options>label:hover {background:var(--surface-subtle)}
.product-cabinet-options>label[hidden] {display:none}
.product-cabinet-options input {accent-color:var(--accent);width:16px;height:16px}
.product-page-kpis {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.product-page-kpis>div {display:flex;flex-direction:column;gap:10px;min-width:0;padding:17px 18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.product-page-kpis span {font-size:13px;color:var(--muted)}
.product-page-kpis strong {font-size:clamp(18px,1.65vw,26px);line-height:1.3;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;letter-spacing:-.4px}
.product-calculation-status {display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0;font-size:14px;color:var(--muted)}
.product-sheet-panel {overflow:hidden;margin-bottom:20px}
.product-sheet-tabs {display:flex;gap:20px;padding:0 20px;border-bottom:1px solid var(--line)}
.product-sheet-tabs button {padding:16px 0;border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);font:inherit;font-size:14px;cursor:pointer}
.product-sheet-tabs button.active {color:var(--ink);border-bottom-color:var(--accent)}
.product-sheet-scroll {max-width:100%;height:clamp(340px,60vh,690px);overflow:auto;scrollbar-gutter:stable;overscroll-behavior:contain;isolation:isolate;scroll-padding-top:48px;scroll-padding-left:246px}
.product-sheet-scroll:focus-visible {outline:2px solid var(--accent);outline-offset:-2px}
.data-table.product-sheet {width:100%;border-collapse:separate;border-spacing:0;font-size:14px}
.data-table.product-sheet th,.data-table.product-sheet td {padding:12px 16px;min-width:170px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);line-height:1.4}
.data-table.product-sheet th {color:var(--ink)}
.data-table.product-sheet thead th {position:sticky;top:0;z-index:3;height:48px;white-space:nowrap;background:var(--theme-surface-raised,#2b2934);font-size:13px;font-weight:600;box-shadow:0 1px 0 var(--line)}
.data-table.product-sheet tr>th:first-child {position:sticky;left:0;z-index:2;width:245px;min-width:245px;max-width:245px;white-space:normal;text-align:left;box-shadow:1px 0 0 var(--line)}
.data-table.product-sheet thead>tr>th:first-child {z-index:4;background:var(--theme-surface-raised,#2b2934)}
.data-table.product-sheet tbody th {font-size:14px;font-weight:400;height:auto}
.data-table.product-sheet tr.group>th {font-weight:600}
.data-table.product-sheet tr.result>* {background:var(--theme-surface-raised,#302b3e);color:var(--theme-ink,#f4eeff);font-weight:600}
.data-table.product-sheet .product-sheet-total {background:var(--theme-surface-raised,#272530);font-weight:600}
.data-table.product-sheet tr.result>.product-sheet-total {background:var(--theme-surface-raised,#383044)}
.data-table.product-sheet tbody tr:hover>* {background:var(--theme-surface-raised,#302e3b)}
.data-table.product-allocation-sheet td:last-child {min-width:250px}
.product-sheet-foot {padding:13px 18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.6}
.product-sheet-empty {padding:50px 24px;color:var(--muted);font-size:15px}
.product-page-details {padding:12px 20px}
.product-page-details>.details {padding:10px 0}
.product-page-details .details p {line-height:1.6;max-width:1050px}
@media(max-width:1050px){.product-page-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.product-page-heading{flex-wrap:wrap;gap:16px}.product-page-kpis strong{font-size:22px}}
@media(max-width:600px){.product-page-filters{gap:10px;padding:14px}.product-page-filters>label{flex:1;min-width:125px}.product-page-filters select,.product-page-filters input[type=month]{width:100%;max-width:none}.product-page-heading h1{font-size:23px}.product-page-kpis{gap:10px}.product-page-kpis>div{padding:14px}.product-page-kpis strong{font-size:18px}.data-table.product-sheet tr>th:first-child{min-width:180px;max-width:180px;width:180px}.data-table.product-sheet td,.data-table.product-sheet thead th{min-width:155px;padding:11px 12px}.product-sheet-tabs{gap:16px;padding:0 14px}.product-sheet-tabs button{font-size:13px}.product-sheet-scroll{scroll-padding-left:181px}}
