/* TS WhatsApp UI Foundation 11.7.7 — safe layout polish */
:root{--ux-radius:12px;--ux-focus:#27cba2;--ux-gap:14px}
*,*::before,*::after{box-sizing:border-box}
.app-body .content{min-width:0}
.app-body .content > *{min-width:0}
.app-body .page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.app-body .page-heading h1{font-size:clamp(19px,1.6vw,25px);letter-spacing:-.035em;line-height:1.25;margin:0 0 6px}
.app-body .page-heading p{line-height:1.5;margin:0}
.app-body .sidebar .nav-item{display:flex;align-items:center;gap:11px;min-width:0}
.app-body .sidebar .nav-icon{flex:0 0 auto;display:grid;place-items:center}
.app-body .sidebar .nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.app-body .topbar{min-width:0;gap:10px}
.app-body .topbar > *{min-width:0}
.app-body .topbar-search{min-width:110px}
.app-body .topbar-search input{width:100%;min-width:0}
.app-body input:not([type=checkbox]):not([type=radio]),.app-body textarea,.app-body select{max-width:100%;min-width:0;line-height:1.4}
.app-body textarea{resize:vertical}
.app-body button,.app-body .btn,.app-body a.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;vertical-align:middle;line-height:1.35;max-width:100%;text-align:center;white-space:normal}
.app-body button:disabled,.app-body .btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}
.app-body button:focus-visible,.app-body a:focus-visible,.app-body select:focus-visible,.app-body input:focus-visible,.app-body textarea:focus-visible,.app-body [tabindex]:focus-visible{outline:2px solid var(--ux-focus)!important;outline-offset:2px!important}
.app-body button svg,.app-body a.btn svg{width:1.1em;height:1.1em;flex:0 0 auto}
.app-body .notice{overflow-wrap:anywhere;line-height:1.55}
.app-body table{border-collapse:separate;border-spacing:0}
.app-body th{vertical-align:middle;white-space:nowrap}
.app-body td{vertical-align:middle;overflow-wrap:anywhere}
.app-body :is(.table-wrap,.table-responsive,.table-scroll,.source-table-wrap){max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
.app-body :is(.card,.panel,.source-card,.modal,.dialog){min-width:0}
.app-body :is(.card,.panel,.source-card) :is(h2,h3){line-height:1.32;overflow-wrap:anywhere}
.app-body .account-trigger{min-width:0}
.app-body .user-copy{min-width:0}
.app-body .user-copy b,.app-body .user-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.app-body .ux-validation-note{display:block;font-size:12px;line-height:1.4;margin-top:5px;color:#e8a05b}
@media(max-width:900px){.app-body .topbar{flex-wrap:wrap}.app-body .topbar-search{flex:1 1 180px}.app-body .page-heading{align-items:flex-start}.app-body .content{padding-inline:clamp(12px,3vw,20px)}}
@media(max-width:600px){.app-body .page-heading{gap:8px}.app-body :is(.card,.panel,.source-card){max-width:100%}.app-body .topbar-search{order:4;flex-basis:100%}.app-body .content{padding-inline:12px}.app-body button,.app-body .btn{min-height:34px}}
@media(prefers-reduced-motion:reduce){.app-body *, .app-body *::before,.app-body *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
