/* Shared layout safeguards for dense business screens. */
.app-shell,.main-content,.kd-grid>*,.ep-charts-grid>*,.ep-fields>*,.form-grid>*,.panel,.ep-panel,.kd-section{min-width:0}
.app-body .sidebar>*{flex-shrink:0}
.sidebar .company-selector select{max-width:100%;min-width:0;text-overflow:ellipsis}
.sidebar .sidebar-workspace{width:100%}
.sidebar .sidebar-workspace strong,.sidebar .user-details{min-width:0;overflow:hidden}
.sidebar .nav-link{min-width:0;min-height:44px}
.sidebar .nav-link span,.ep-nav-group summary span{overflow-wrap:anywhere;line-height:1.45}
.topbar .breadcrumb{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.topbar>.test-badge{flex-shrink:0}
.ep-page-heading{align-items:flex-start}
.ep-page-heading>div:first-child{min-width:0}
.ep-page-heading h1,.page-heading h1{overflow-wrap:anywhere;line-height:1.2}
.ep-heading-actions{justify-content:flex-end;flex-shrink:0}
.ep-panel-head{flex-wrap:wrap}
.ep-panel-head>div:first-child{min-width:0;flex:1 1 180px}
.ep-search{flex:0 1 240px;min-width:170px}
.ep-legend{min-width:0}
.ep-ranking>div{min-width:0}
.ep-ranking .ep-rank-no,.ep-ranking .ep-account-icon{flex-shrink:0}
.ep-ranking b{font-size:clamp(12px,1vw,15px)}
.ep-fields input,.ep-fields select,.ep-fields textarea,.kd-section input,.kd-section select{max-width:100%;min-width:0}
.ep-field select,.field select{overflow:hidden;text-overflow:ellipsis;padding-right:30px}
.ep-field textarea{width:100%;min-height:90px;border:1px solid #b6bcb9;border-radius:8px;padding:12px;font:inherit;resize:vertical}
.ep-fields p,.kd-section p{overflow-wrap:anywhere}
.ep-filter{row-gap:16px}
.ep-filter .ep-field{flex:0 1 215px}
.ep-filter .button{flex-shrink:0}
.ep-form-footer{flex-wrap:wrap}
.ep-inline{margin:0}
.ep-row-actions{white-space:normal!important}
.ep-row-actions .ep-action{min-height:44px}
.ep-table:not(.ep-line-editor .ep-table){min-width:720px}
.ep-table th,.ep-table td{word-break:normal;overflow-wrap:break-word}
.ep-table td:not(.ep-num):not(.ep-row-actions){min-width:105px}
.ep-scroll,.table-scroll{width:100%;max-width:100%;overscroll-behavior-x:contain}
.ep-table-footer{gap:12px;flex-wrap:wrap}
.kd-filter{gap:16px;align-items:flex-end}
.kd-filter .field{min-width:180px;flex:1 1 180px}
.kd-grid{align-items:start}
.kd-section .stack-form{min-width:0}
.kd-table{min-width:700px}
.kd-table input,.kd-table select{width:100%}
input,select,textarea{scroll-margin-top:24px}
summary,button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #35628b;outline-offset:3px}
[hidden]{display:none!important}
@media(max-width:1050px){.ep-page-heading{flex-wrap:wrap}.ep-heading-actions{justify-content:flex-start}.ep-form{padding:20px}.ep-kpi>strong{font-size:clamp(22px,3vw,30px)}}
@media(max-width:560px){.ep-search{flex-basis:100%;min-width:0;max-width:none}.ep-heading-actions{flex-shrink:1}.ep-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-kpi>div{align-items:flex-start}.ep-kpi>div>span{line-height:1.5}.ep-kpi i{flex-shrink:0}.ep-operating-strip a{align-items:flex-start;flex-wrap:wrap;line-height:1.65}.ep-filter .ep-field{flex:1 1 40%;min-width:0}.ep-panel-head>div:first-child{flex-basis:100%}.ep-ranking>div:not(.ep-empty){flex-wrap:wrap}.ep-ranking>div>div{flex-basis:calc(100% - 52px)}.ep-ranking b{margin-left:41px}.ep-table-footer>div{margin-left:auto}.ep-form{padding:16px}.kd-filter .field{min-width:0;flex-basis:100%}.kd-filter .button{width:100%}.kd-section .button-row{align-items:stretch}.kd-section .button-row>*{flex:1 1 100%}.ep-fields input[type=file]{font-size:13px}.ep-form-panel>summary strong{line-height:1.5}}
@media print{.ep-table:not(.ep-line-editor .ep-table),.kd-table{min-width:0}.ep-row-actions{display:none!important}}
